(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[1583],{66291:(e,t,i)=>{"use strict";i.d(t,{splitThousands:()=>r});var n=i(50335);function r(e,t=" "){let i=e+"";-1!==i.indexOf("e")&&(i=function(e){return(0,n.fixComputationError)(e).toFixed(10).replace(/\.?0+$/,"")}(Number(e)));const r=i.split(".");return r[0].replace(/\B(?=(\d{3})+(?!\d))/g,t)+(r[1]?"."+r[1]:"")}},77340:(e,t,i)=>{"use strict";i.r(t),i.d(t,{Pattern5pointsPaneView:()=>_});var n=i(53479),r=i(85113),s=i(29639),a=i(44381),o=i(66467),l=i(9933),d=i(34657),h=i(14888),c=i(98930),u=i(4754),p=i(17364);class _ extends u.LineSourcePaneView{constructor(e,t){super(e,t),this._abRetracement=NaN,this._bcRetracement=NaN,this._cdRetracement=NaN,this._xdRetracement=NaN,this._numericFormatter=new d.NumericFormatter,this._bcRetracementTrend=new l.TrendLineRenderer,this._xdRetracementTrend=new l.TrendLineRenderer,this._xbTrend=new l.TrendLineRenderer,this._bdTrend=new l.TrendLineRenderer,this._polylineRenderer=new c.PolygonRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT)),this._mainTriangleRenderer=new o.TriangleRenderer,this._triangleRendererPoints234=new o.TriangleRenderer,this._xbLabelRenderer=new a.TextRenderer,this._acLabelRenderer=new a.TextRenderer,this._bdLabelRenderer=new a.TextRenderer,this._xdLabelRenderer=new a.TextRenderer,this._textRendererALabel=new a.TextRenderer,this._textRendererBLabel=new a.TextRenderer,this._textRendererCLabel=new a.TextRenderer,this._textRendererDLabel=new a.TextRenderer,this._textRendererXLabel=new a.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._updateBaseData(),this._renderer=null,this._points.length<2)return;const e=this._source.properties().childs(),t=new s.CompositeRenderer,i=(t,i)=>({points:[t],text:i,color:e.textcolor.value(),vertAlign:"middle",horzAlign:"center",font:p.CHART_FONT_FAMILY,offsetX:0,offsetY:0,bold:e.bold&&e.bold.value(),italic:e.italic&&e.italic.value(),fontsize:e.fontsize.value(),backgroundColor:e.color.value(),backgroundRoundRect:4}),a=(t,i)=>({points:[t,i],color:e.color.value(),linewidth:1,linestyle:n.LINESTYLE_DOTTED,extendleft:!1,extendright:!1,leftend:r.LineEnd.Normal,rightend:r.LineEnd.Normal}),[o,l,d,h,c]=this._points,u={points:[o,l,this._points.length<3?l:d],color:"rgba(0, 0, 0, 0)",linewidth:e.linewidth.value(),backcolor:e.backgroundColor.value(),fillBackground:e.fillBackground.value(),transparency:e.transparency.value()};if(this._mainTriangleRenderer.setData(u),t.append(this._mainTriangleRenderer),this._points.length>3){const i={points:[d,h,5===this._points.length?c:h],color:"rgba(0, 0, 0, 0)",linewidth:e.linewidth.value(),backcolor:e.backgroundColor.value(),fillBackground:e.fillBackground.value(),transparency:e.transparency.value()};this._triangleRendererPoints234.setData(i),t.append(this._triangleRendererPoints234)}const _={points:this._points,color:e.color.value(),linewidth:e.linewidth.value(),backcolor:e.backgroundColor.value(),fillBackground:!1, linestyle:n.LINESTYLE_SOLID,filled:!1};if(this._polylineRenderer.setData(_),t.append(this._polylineRenderer),this._points.length>=3){const e=i(o.add(d).scaled(.5),this._numericFormatter.format(this._abRetracement));this._xbLabelRenderer.setData(e),t.append(this._xbLabelRenderer),this._xbTrend.setData(a(o,d)),t.append(this._xbTrend)}if(this._points.length>=4){this._bcRetracementTrend.setData(a(l,h)),t.append(this._bcRetracementTrend);const e=i(l.add(h).scaled(.5),this._numericFormatter.format(this._bcRetracement));this._acLabelRenderer.setData(e),t.append(this._acLabelRenderer)}if(this._points.length>=5){const e=i(d.add(c).scaled(.5),this._numericFormatter.format(this._cdRetracement));this._bdLabelRenderer.setData(e),t.append(this._bdLabelRenderer),this._xdRetracementTrend.setData(a(o,c)),t.append(this._xdRetracementTrend);const n=i(o.add(c).scaled(.5),this._numericFormatter.format(this._xdRetracement));this._xdLabelRenderer.setData(n),t.append(this._xdLabelRenderer),this._bdTrend.setData(a(d,c)),t.append(this._bdTrend)}const g=i(o,"X");l.y>o.y?(g.vertAlign="bottom",g.offsetY=5):(g.vertAlign="top",g.offsetY=5),this._textRendererXLabel.setData(g),t.append(this._textRendererXLabel);const f=i(l,"A");if(l.y2){const e=i(d,"B");d.y3){const e=i(h,"C");h.y4){const e=i(c,"D");c.y=3){const[e,t,i]=this._source.points();this._abRetracement=Math.round(1e3*Math.abs((i.price-t.price)/(t.price-e.price)))/1e3}if(this._source.points().length>=4){const[,e,t,i]=this._source.points();this._bcRetracement=Math.round(1e3*Math.abs((i.price-t.price)/(t.price-e.price)))/1e3}if(this._source.points().length>=5){const[e,t,i,n,r]=this._source.points();this._cdRetracement=Math.round(1e3*Math.abs((r.price-n.price)/(n.price-i.price)))/1e3,this._xdRetracement=Math.round(1e3*Math.abs((r.price-t.price)/(t.price-e.price)))/1e3}}}},33662:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ABCDPaneView:()=>p});var n=i(53479),r=i(29639),s=i(34657),a=i(9933),o=i(44381),l=i(85113),d=i(98930),h=i(14888),c=i(4754),u=i(17364);class p extends c.LineSourcePaneView{constructor(){super(...arguments),this._numericFormatter=new s.NumericFormatter,this._abRetracementTrend=new a.TrendLineRenderer,this._cdRetracementTrend=new a.TrendLineRenderer,this._polylineRenderer=new d.PolygonRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT)), this._abLabelRenderer=new o.TextRenderer,this._cdLabelRenderer=new o.TextRenderer,this._textRendererALabel=new o.TextRenderer,this._textRendererBLabel=new o.TextRenderer,this._textRendererCLabel=new o.TextRenderer,this._textRendererDLabel=new o.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._points.length<2)return void(this._renderer=null);const e=this._source.properties().childs(),t=new r.CompositeRenderer,i=(t,i)=>({points:[t],text:i,color:e.textcolor.value(),vertAlign:"middle",horzAlign:"center",font:u.CHART_FONT_FAMILY,offsetX:0,offsetY:0,bold:e.bold&&e.bold.value(),italic:e.italic&&e.italic.value(),fontsize:e.fontsize.value(),backgroundColor:e.color.value(),backgroundRoundRect:4}),s=(t,i)=>({points:[t,i],color:e.color.value(),linewidth:e.linewidth.value(),linestyle:n.LINESTYLE_DOTTED,extendleft:!1,extendright:!1,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal}),[a,o,d,h]=this._points,c={points:this._points,color:e.color.value(),linewidth:e.linewidth.value(),linestyle:n.LINESTYLE_SOLID,fillBackground:!1,filled:!1,backcolor:"rgba(0, 0, 0, 0)"};this._polylineRenderer.setData(c),t.append(this._polylineRenderer);const p=i(a,"A");o.y>a.y?(p.vertAlign="bottom",p.offsetY=5):(p.vertAlign="top",p.offsetY=5),this._textRendererALabel.setData(p),t.append(this._textRendererALabel);const _=i(o,"B");if(o.y2){const e=i(d,"C");d.y3){const e=i(h,"D");h.y=3){this._abRetracementTrend.setData(s(a,d)),t.append(this._abRetracementTrend);const e=a.add(d).scaled(.5),[n,r,o]=this._source.points(),l=Math.round(1e3*Math.abs((o.price-r.price)/(r.price-n.price)))/1e3,h=i(e,this._numericFormatter.format(l));this._abLabelRenderer.setData(h),t.append(this._abLabelRenderer)}if(this._points.length>=4){this._cdRetracementTrend.setData(s(o,h)),t.append(this._cdRetracementTrend);const e=o.add(h).scaled(.5),[,n,r,a]=this._source.points(),l=Math.round(1e3*Math.abs((a.price-r.price)/(r.price-n.price)))/1e3,d=i(e,this._numericFormatter.format(l));this._cdLabelRenderer.setData(d),t.append(this._cdLabelRenderer)}this.addAnchors(t),this._renderer=t}}},20575:(e,t,i)=>{"use strict";i.d(t,{AlertableLineSourcePaneView:()=>r});var n=i(4754);class r extends n.LineSourcePaneView{_addAlertRenderer(e,t){}_getAlertRenderer(e,t=this._source.properties().linecolor.value(),i){return null}}},47734:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ArcPaneView:()=>_});var n=i(4652),r=i(86441),s=i(25422),a=i(6947),o=i(29639),l=i(4754),d=i(38031),h=i(14888),c=i(86216),u=i(55014) ;class p extends c.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data={...e,angleFrom:0,angleTo:Math.PI,clockwise:!1}}hitTest(e){if(null===this._data||this._data.points.length<3)return null;const t=(0,u.interactionTolerance)().curve,i=this._data.points[0],a=this._data.points[1];let o=this._data.points[2],l=(0,n.distanceToLine)(i,a,o).distance;if(l<1)return l=(0,n.distanceToLine)(i,a,e).distance,l=0?new r.Point(_.x,_.y):new r.Point(m.x,m.y);P.data=2,d.push(P);const S=[a.PaneCursorType.Default,a.PaneCursorType.Default,(0,l.thirdPointCursorType)(h,u)];i.append(this.createLineAnchor({points:d,pointsCursorType:S},0))}}},68962:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ArrowMarkPaneView:()=>u});var n=i(17364),r=i(4754),s=i(29639),a=i(53074),o=i(44381),l=i(14888),d=i(34026),h=i(91031);class c{constructor(){this._data=null}setData(e){this._data=e}draw(e,t){if(null!==this._data){switch(e.save(),e.fillStyle=this._data.color,this._data.direction){case"up":case"down":!function(e,t,i,n){const r=Math.max(1,Math.floor(n))%2?.5:0,s="up"===i?1:-1,a=s*Math.round(12*n),o=(0,h.ceiledEven)(19.5*n)/2+r,l=s*Math.round(10*n),d=(0,h.ceiledEven)(10*n)/2+r,c=Math.round(t.x*n)+r,u=Math.round(t.y*n);e.beginPath(),e.moveTo(c,u),e.lineTo(c+o,u+a),e.lineTo(c+d,u+a),e.lineTo(c+d,u+a+l),e.lineTo(c-d,u+a+l),e.lineTo(c-d,u+a),e.lineTo(c-o,u+a),e.moveTo(c,u),e.fill()}(e,this._data.point,this._data.direction,t.pixelRatio);break;case"left":case"right":!function(e,t,i,n){const r=Math.max(1,Math.floor(n))%2?.5:0,s="left"===i?1:-1,a=s*Math.round(12*n)+r,o=(0,h.ceiledEven)(19.5*n)/2+r,l=s*Math.round(22*n)+r,d=(0,h.ceiledEven)(10*n)/2+r,c=Math.round(t.x*n)+r,u=Math.round(t.y*n)+r;e.beginPath(),e.moveTo(c,u),e.lineTo(c+a,u+o),e.lineTo(c+a,u+d),e.lineTo(c+l,u+d),e.lineTo(c+l,u-d),e.lineTo(c+a,u-d),e.lineTo(c+a,u-o),e.moveTo(c,u),e.fill()}(e,this._data.point,this._data.direction,t.pixelRatio)}e.restore()}}hitTest(e){if(null===this._data)return null;let t,i,n,r;switch(this._data.direction){case"up":t=this._data.point.x-9.75,n=t+19.5,i=this._data.point.y,r=i+12+10;break;case"down":t=this._data.point.x-9.75,n=t+19.5,r=this._data.point.y,i=r-12-10;break;case"left":t=this._data.point.x,n=t+12+10,i=this._data.point.y-9.75,r=i+19.5;break;case"right":n=this._data.point.x,t=n-12-10,i=this._data.point.y-9.75,r=i+19.5}return e.xn||e.yr?null:new l.HitTestResult(l.HitTestResult.MOVEPOINT)}doesIntersectWithBox(e){return null!==this._data&&(0,d.pointInBox)(this._data.point,e)}}class u extends r.LineSourcePaneView{constructor(){super(...arguments),this._arrowMarkRenderer=new c,this._textRenderer=new o.TextRenderer,this._renderer=null,this._anchorsOffset=null}renderer(e,t){return this._invalidated&&this._updateImpl(), this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,1!==this._points.length)return;const e=this._getSource(),t=e.properties().childs(),i=this._getModel();this._arrowMarkRenderer.setData({point:this._points[0],direction:e.direction(),color:t.arrowColor.value()}),this._renderer=new s.CompositeRenderer,this._renderer.append(this._arrowMarkRenderer),""!==t.text.value()&&t.showLabel.value()&&(this._textRenderer.setData({points:this._points,font:n.CHART_FONT_FAMILY,bold:t.bold.value(),italic:t.italic.value(),fontSize:t.fontsize.value(),text:t.text.value(),color:t.color.value(),...e.textAlignParams()}),this._renderer.append(this._textRenderer));const r=[this._anchorsOffset?this._points[0].add(this._anchorsOffset):this._points[0].clone()];this._renderer.append(new a.SelectionRenderer({points:r,bgColors:this._lineAnchorColors(r),visible:this.areAnchorsVisible(),barSpacing:i.timeScale().barSpacing(),hittestResult:l.HitTestResult.MOVEPOINT}))}}},73006:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ArrowMarkerPaneView:()=>_});var n=i(4754),r=i(29639),s=i(44381),a=i(86441),o=i(86216),l=i(14888),d=i(55014);function h(e){if(e<92)return 18;let t=.25*e;return t=Math.min(t,106),t=Math.max(t,18),t=Math.min(t,.9*e),t}class c extends o.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=e}setData(e){this._data=e}hitTest(e){if(this._data.points.length<2)return null;let t=this._data.points[0],i=this._data.points[1].subtract(t);const n=i.length();i=this._data.points[1].subtract(this._data.points[0]);i.length()<22&&(t=this._data.points[1].addScaled(i.normalized(),-22),i=this._data.points[1].subtract(t));const r=e.subtract(t),s=i.dotProduct(r)/n;if(s<0||s>n)return null;const a=i.scaled(1/n),o=t.addScaled(a,s),h=e.subtract(o),c=(0,d.interactionTolerance)().line,u=this._hittestGeometry(n);for(let e=u.length-2;e>=0;e--){const t=u[e];if(s>=t.x){const i=u[e+1],n=i.x-t.x,r=i.y-t.y,a=(s-t.x)/n,o=t.y+r*a;return h.length()<=o+c?new l.HitTestResult(l.HitTestResult.MOVEPOINT):null}}return h.length()<3?new l.HitTestResult(l.HitTestResult.MOVEPOINT):null}_drawImpl(e){if(this._data.points.length<2)return;const t=e.context;t.fillStyle=this._data.color,t.strokeStyle=this._data.color,t.lineJoin="round",t.lineCap="round";let i=this._data.points[1].subtract(this._data.points[0]);const n=i.length();let r=this._data.points[0];n<22&&(r=this._data.points[1].addScaled(i.normalized(),-22),i=this._data.points[1].subtract(r));const s=new a.Point(i.y,-i.x).normalized(),o=this._arrowGeometry(i.length()),l=i.normalized();t.lineWidth=function(e){let t=Math.round(.02*e);return t=Math.min(t,5),t=Math.max(t,2),t}(i.length()),t.beginPath(),t.moveTo(r.x,r.y);for(let e=0;e=0;e--){const i=o[e],n=r.addScaled(l,i.x).addScaled(s,-i.y);t.lineTo(n.x,n.y)}t.lineTo(r.x,r.y),t.stroke(),t.fill()}_arrowGeometry(e){const t=h(e),i=[],n=e>=35?.1:0;return i.push(new a.Point(0,0)), i.push(new a.Point(e-t+t*n,1.22*t/4)),i.push(new a.Point(e-t,1.22*t/2)),i.push(new a.Point(e,0)),i}_hittestGeometry(e){const t=h(e),i=[];return i.push(new a.Point(0,0)),i.push(new a.Point(e-t,1.22*t/4)),i.push(new a.Point(e-t,1.22*t/2)),i.push(new a.Point(e,0)),i}}var u=i(99829),p=i(17364);class _ extends n.LineSourcePaneView{constructor(e,t){super(e,t),this._textRendererData={text:"",color:"",vertAlign:"middle",horzAlign:"center",font:"",offsetX:10,offsetY:10,points:[],forceTextAlign:!0},this._arrowRendererData={points:[],color:""},this._ellipseRendererData={color:"",linewidth:0,points:[],fillBackground:!0,backcolor:"",noHitTestOnBackground:!0},this._drawAsCircle=!1,this._textRenderer=new s.TextRenderer(this._textRendererData),this._arrowRenderer=new c(this._arrowRendererData),this._ellipseRenderer=new u.EllipseRendererSimple(this._ellipseRendererData)}renderer(e,t){this._invalidated&&this._updateImpl();const i=new r.CompositeRenderer;this._drawAsCircle?i.append(this._ellipseRenderer):i.append(this._arrowRenderer);const n=this._getSource().properties().childs();return this._textRendererData.points&&this._textRendererData.points.length>0&&n.showLabel.value()&&(this._textRenderer.setData({...this._textRendererData}),i.append(this._textRenderer)),this.addAnchors(i),i}_updateImpl(){super._updateImpl();const e=this._getPoints(),t=this._getSource().properties().childs();if(this._arrowRendererData.color=t.backgroundColor.value(),this._arrowRendererData.points=e,this._textRendererData.text=t.text.value(),this._textRendererData.color=t.textColor.value(),this._textRendererData.font=p.CHART_FONT_FAMILY,this._textRendererData.bold=t.bold.value(),this._textRendererData.italic=t.italic.value(),this._textRendererData.fontsize=t.fontsize.value(),e.length>=2){const i=this._getSource().points(),n=i[0].index-i[1].index,r=i[0].price-i[1].price;if(this._drawAsCircle=0===n&&Math.abs(r)<1e-8,this._textRendererData.points=[e[0]],this._drawAsCircle){this._textRendererData.horzAlign="left",this._textRendererData.vertAlign="middle";const i=new a.Point(e[0].x-9,e[0].y-9),n=new a.Point(e[0].x+9,e[0].y+9);this._ellipseRendererData.points=[i,n],this._ellipseRendererData.backcolor=t.backgroundColor.value(),this._ellipseRendererData.color=t.backgroundColor.value()}else{const t=e[1].subtract(e[0]);Math.abs(t.x)>=Math.abs(t.y)?(e[1].x>e[0].x?this._textRendererData.horzAlign="right":this._textRendererData.horzAlign="left",this._textRendererData.vertAlign="middle"):(e[1].y>e[0].y?this._textRendererData.vertAlign="bottom":this._textRendererData.vertAlign="top",this._textRendererData.horzAlign="center")}}}}},25800:(e,t,i)=>{"use strict";i.r(t),i.d(t,{BalloonPaneView:()=>f});var n=i(95242),r=i(38031),s=i(17364),a=i(4754),o=i(86441),l=i(34026),d=i(80142),h=i(83499),c=i(86216),u=i(14888);class p extends c.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._geometryCache={innerHeight:NaN,textHorizontalPadding:NaN,innerWidth:NaN,paddingLeft:NaN},this._geomertryCacheInvalidated=!0,this._data=null}setData(e){this._data=e, this._geomertryCacheInvalidated=!0}hitTest(e,t){if(null===this._data||0===this._data.points.length)return null;const i=this._data.points[0].x-(this._geometryCache.paddingLeft+20),n=this._data.points[0].y-(this._geometryCache.innerHeight+9),r=(0,o.box)(new o.Point(i,n),new o.Point(i+this._geometryCache.innerWidth,n+this._geometryCache.innerHeight));return(0,l.pointInBox)(e,r)?new u.HitTestResult(u.HitTestResult.MOVEPOINT,{areaName:u.AreaName.Text}):null}_drawImpl(e){if(null===this._data||0===this._data.points.length)return;const t=e.context;t.font=this._data.font;const i=this._measureInfo(t,this._data.label,this._data.fontSize),{paddingLeft:n,innerHeight:r,innerWidth:s,textHorizontalPadding:a}=i;t.textAlign=(0,d.isRtl)()?"right":"left";const o=this._data.points[0].x-(n+20),l=this._data.points[0].y-(r+9);t.translate(o,l),t.beginPath(),t.moveTo(24,r),t.lineTo(15,r),t.arcTo(-1e3,0,1e3,0,r/2),t.lineTo(s-15,0),t.arcTo(1e3,r,-1e3,r,r/2),t.lineTo(33,r),t.quadraticCurveTo(33,r+4,35,r+9),t.quadraticCurveTo(27,r+6,24,r),t.fillStyle=this._data.backgroundColor,t.fill(),t.strokeStyle=this._data.borderColor,t.lineWidth=2,t.stroke(),t.closePath(),t.textBaseline="middle",t.fillStyle=this._data.color,t.fillText(this._data.label,n+a,r/2)}_measureInfo(e,t,i){if(this._geomertryCacheInvalidated){const n=e.measureText(t),r=i,s=15,a=Math.round(r/1.3),o=n.width+2*s,l=r+2*a,d=(0,h.calcTextHorizontalShift)(e,n.width);this._geometryCache={paddingLeft:s,innerWidth:o,innerHeight:l,textHorizontalPadding:d},this._geomertryCacheInvalidated=!1}return this._geometryCache}}var _=i(29639),g=i(53074);class f extends a.LineSourcePaneView{constructor(e,t){super(e,t),this._balloonRenderer=new p,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(e,t){super._updateImpl(e,t);const i=this._source.properties().childs(),a={points:this._points,color:i.color.value(),borderColor:i.borderColor.value(),backgroundColor:(0,r.generateColor)(i.backgroundColor.value(),i.transparency.value()),font:(0,n.makeFont)(i.fontsize.value(),s.CHART_FONT_FAMILY),fontSize:i.fontsize.value(),label:i.text.value()};if(this._balloonRenderer.setData(a),1===a.points.length){const e=new _.CompositeRenderer;return e.append(this._balloonRenderer),e.append(new g.SelectionRenderer({points:a.points,bgColors:this._lineAnchorColors(a.points),visible:this.areAnchorsVisible(),barSpacing:this._model.timeScale().barSpacing(),hittestResult:u.HitTestResult.MOVEPOINT})),void(this._renderer=e)}this._renderer=this._balloonRenderer}}},82133:(e,t,i)=>{"use strict";i.r(t),i.d(t,{BarsPatternPaneView:()=>x});var n=i(86441),r=i(7394),s=i(53479),a=i(38031),o=i(14888),l=i(29639),d=i(85113),h=i(76078),c=i(26740),u=i(9933),p=i(6612),_=i(4754),g=i(57693);const f=r.colorsPalette["color-cold-gray-500"],v={[g.LineToolBarsPatternMode.Bars]:e=>[e[2],e[3]],[g.LineToolBarsPatternMode.Line]:e=>e[4],[g.LineToolBarsPatternMode.OpenClose]:e=>[e[1],e[4]],[g.LineToolBarsPatternMode.LineOpen]:e=>e[1],[g.LineToolBarsPatternMode.LineHigh]:e=>e[2], [g.LineToolBarsPatternMode.LineLow]:e=>e[3],[g.LineToolBarsPatternMode.LineHL2]:e=>(e[2]+e[3])/2};class x extends _.LineSourcePaneView{constructor(){super(...arguments),this._vertLineRenderer1=new p.VerticalLineRenderer,this._vertLineRenderer2=new p.VerticalLineRenderer,this._medianRenderer=new u.TrendLineRenderer,this._renderer=null}renderer(){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e,t;if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const i=this._source.priceScale(),r=null!==(t=null===(e=this._source.ownerSource())||void 0===e?void 0:e.firstValue())&&void 0!==t?t:null;if(!i||i.isEmpty()||null===r)return;const u=this._source.points(),p=this._source.pattern(),_=p.length,x=new l.CompositeRenderer;if(_>0&&2===u.length){const e=this._source.properties().childs(),t=e.mode.value(),l=e.color.value(),d=Math.abs((this._points[0].x-this._points[1].x)/(_-1)),f=this._source.getScale(),m=e=>i.priceToCoordinate(e,r)*f,[{index:R},{index:w}]=u,y=Rnew n.Point(i+(2*t-1),Math.round(m(e))+b))),s=new c.RectangleRenderer;s.setData({points:r,color:l,backcolor:l,linewidth:1,fillBackground:!0,transparency:10,extendLeft:!1,extendRight:!1}),x.append(s)}x.append(this.createLineAnchor({points:this._points},0))}else{const e=v[t],i=p.map(((t,i)=>new n.Point(T+i*d,m(e(t))+b)));x.append(new h.PaneRendererLine({barSpacing:d,items:i,lineColor:(0,a.generateColor)(l,10),lineStyle:s.LINESTYLE_SOLID,lineWidth:2,hittest:new o.HitTestResult(o.HitTestResult.MOVEPOINT),simpleMode:!0,withMarkers:!1})),x.append(this.createLineAnchor({points:this._points},1))}}else this._vertLineRenderer1.setData({x:this._points[0].x,color:f,linewidth:1,linestyle:s.LINESTYLE_SOLID}),x.append(this._vertLineRenderer1),this._vertLineRenderer2.setData({x:this._points[1].x,color:f,linewidth:1,linestyle:s.LINESTYLE_SOLID}),x.append(this._vertLineRenderer2),this._medianRenderer.setData({points:this._points,color:f,linewidth:1,linestyle:s.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:d.LineEnd.Normal,rightend:d.LineEnd.Normal}),x.append(this._medianRenderer);this._renderer=x}}},89730:(e,t,i)=>{"use strict";i.r(t),i.d(t,{BezierCubicPaneView:()=>v});var n=i(38031),r=i(4754),s=i(86216),a=i(14888),o=i(64673),l=i(9933),d=i(85113),h=i(91375),c=i(55014),u=i(9740);class p extends s.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=e||null}setData(e){this._data=e}hitTest(e,t){const i=this._data;if(null===i)return null;if(4===i.points.length){const t=(0,c.interactionTolerance)().curve,[n,r,s,l]=i.points,d=l.subtract(n),u=s.subtract(d.scaled(.25)),p=s.add(d.scaled(.25)),_=r.subtract(s),g=l.subtract(_.scaled(.25)),f=l.add(_.scaled(.25));if((0,o.quadroBezierHitTest)(s,n,u,e,t)||(0,o.cubicBezierHitTest)(s,l,p,g,e,t)||(0, o.quadroBezierHitTest)(l,r,f,e,t))return new a.HitTestResult(a.HitTestResult.MOVEPOINT);let v=(0,h.hitTestExtendedPoints)(e,t,i.extendLeftPoints);return null===v&&(v=(0,h.hitTestExtendedPoints)(e,t,i.extendRightPoints)),v}return null}_drawImpl(e){if(null===this._data)return;const t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.lineWidth,(0,u.setLineStyle)(t,this._data.lineStyle);const i=this._data.points[0],n=this._data.points[1];if(2===this._data.points.length)t.beginPath(),t.moveTo(i.x,i.y),t.lineTo(n.x,n.y),t.stroke(),this._data.leftEnd===d.LineEnd.Arrow&&(0,l.drawArrow)(n,i,t,t.lineWidth,1),this._data.rightEnd===d.LineEnd.Arrow&&(0,l.drawArrow)(i,n,t,t.lineWidth,1);else{const e=this._data.points[2],r=this._data.points[3],s=r.subtract(i),a=e.subtract(s.scaled(.25)),o=e.add(s.scaled(.25)),c=n.subtract(e),u=r.subtract(c.scaled(.25)),p=r.add(c.scaled(.25));this._data.fillBack&&this._data.points.length>2&&(t.fillStyle=this._data.backColor,t.beginPath(),t.moveTo(i.x,i.y),t.quadraticCurveTo(a.x,a.y,e.x,e.y),t.bezierCurveTo(o.x,o.y,u.x,u.y,r.x,r.y),t.quadraticCurveTo(p.x,p.y,n.x,n.y),t.fill()),t.beginPath(),(0,h.buildExtendedSegments)(t,this._data.extendLeftPoints),t.moveTo(i.x,i.y),t.quadraticCurveTo(a.x,a.y,e.x,e.y),t.bezierCurveTo(o.x,o.y,u.x,u.y,r.x,r.y),t.quadraticCurveTo(p.x,p.y,n.x,n.y),(0,h.buildExtendedSegments)(t,this._data.extendRightPoints),t.stroke(),this._data.leftEnd===d.LineEnd.Arrow&&(0,l.drawArrow)(a,i,t,t.lineWidth,1),this._data.rightEnd===d.LineEnd.Arrow&&(0,l.drawArrow)(p,n,t,t.lineWidth,1)}}}var _=i(29639),g=i(11875),f=i(50151);class v extends r.LineSourcePaneView{constructor(){super(...arguments),this._bezierCubicRenderer=new p,this._renderer=null,this._extendedSegmentLeftCache=null,this._extendedSegmentRightCache=null}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){if(super._updateImpl(e,t),this._renderer=null,this._points.length<2)return;const i=this._source.properties().childs();let r=[],s=[];if(4===this._source.points().length){const n=(0,f.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[0])),a=(0,f.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[1])),o=(0,f.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[2])),l=(0,f.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[3])),d=l.subtract(n),h=o.subtract(d.scaled(.25)),c=a.subtract(o),u=l.add(c.scaled(.25));i.extendLeft.value()&&(r=this._extendSegmentLeft(o,n,h,t,e)),i.extendRight.value()&&(s=this._extendSegmentRight(l,a,u,t,e))}const a=this._points.slice(),o=this._source.controlPoints();null!==o&&(a.push((0,f.ensureNotNull)(this._source.pointToScreenPoint(o[0]))),a.push((0,f.ensureNotNull)(this._source.pointToScreenPoint(o[1]))));const l={points:a,color:i.linecolor.value(),lineWidth:i.linewidth.value(),lineStyle:i.linestyle.value(),leftEnd:i.leftEnd.value(),rightEnd:i.rightEnd.value(),fillBack:i.fillBackground.value(),backColor:(0, n.generateColor)(i.backgroundColor.value(),i.transparency.value()),extendLeftPoints:r,extendRightPoints:s};this._bezierCubicRenderer.setData(l);const d=new _.CompositeRenderer;d.append(this._bezierCubicRenderer),this.addAnchors(d),this._renderer=d}_extendSegmentLeft(e,t,i,n,r){return(0,g.cacheIsValid)(this._extendedSegmentLeftCache,e,t,i,n,r)||(this._extendedSegmentLeftCache={p1:e,p2:t,p3:i,width:n,height:r,segment:(0,o.extendQuadroBezier)(e,t,i,n,r)}),(0,f.ensureNotNull)(this._extendedSegmentLeftCache).segment}_extendSegmentRight(e,t,i,n,r){return(0,g.cacheIsValid)(this._extendedSegmentRightCache,e,t,i,n,r)||(this._extendedSegmentRightCache={p1:e,p2:t,p3:i,width:n,height:r,segment:(0,o.extendQuadroBezier)(e,t,i,n,r)}),(0,f.ensureNotNull)(this._extendedSegmentRightCache).segment}}},11875:(e,t,i)=>{"use strict";i.r(t),i.d(t,{cacheIsValid:()=>d,BezierQuadroPaneView:()=>h});var n=i(50151),r=i(38031),s=i(4754),a=i(29639),o=i(64673),l=i(91375);function d(e,t,i,n,r,s){return null!==e&&e.p1.x===t.x&&e.p1.y===t.y&&e.p2.x===i.x&&e.p2.y===i.y&&e.p3.x===n.x&&e.p3.y===n.y&&e.width===r&&e.height===s}class h extends s.LineSourcePaneView{constructor(){super(...arguments),this._bezierQuadroRenderer=new l.BezierQuadroRenderer,this._renderer=null,this._extendedSegmentLeftCache=null,this._extendedSegmentRightCache=null}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){if(super._updateImpl(e,t),this._renderer=null,this._points.length<2)return;const i=this._source.properties().childs();let s=[],o=[];if(3===this._source.points().length){const r=(0,n.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[0])),a=(0,n.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[1])),l=(0,n.ensureNotNull)(this._source.pointToScreenPoint(this._source.points()[2])),d=a.subtract(r),h=l.subtract(d.scaled(.25)),c=l.add(d.scaled(.25));i.extendLeft.value()&&(s=this._extendSegmentLeft(l,r,h,t,e)),i.extendRight.value()&&(o=this._extendSegmentRight(l,a,c,t,e))}const l=this._points.slice(),d=this._source.controlPoint();null!==d&&l.push((0,n.ensureNotNull)(this._source.pointToScreenPoint(d)));const h={points:l,color:i.linecolor.value(),lineWidth:i.linewidth.value(),lineStyle:i.linestyle.value(),leftEnd:i.leftEnd.value(),rightEnd:i.rightEnd.value(),fillBack:i.fillBackground.value(),backColor:(0,r.generateColor)(i.backgroundColor.value(),i.transparency.value()),extendLeftSegments:s,extendRightSegments:o};this._bezierQuadroRenderer.setData(h);const c=new a.CompositeRenderer;c.append(this._bezierQuadroRenderer),this.addAnchors(c),this._renderer=c}_extendSegmentLeft(e,t,i,r,s){return d(this._extendedSegmentLeftCache,e,t,i,r,s)||(this._extendedSegmentLeftCache={p1:e,p2:t,p3:i,width:r,height:s,segment:(0,o.extendQuadroBezier)(e,t,i,r,s)}),(0,n.ensureNotNull)(this._extendedSegmentLeftCache).segment}_extendSegmentRight(e,t,i,r,s){return d(this._extendedSegmentRightCache,e,t,i,r,s)||(this._extendedSegmentRightCache={p1:e,p2:t,p3:i,width:r,height:s,segment:(0,o.extendQuadroBezier)(e,t,i,r,s)}),(0, n.ensureNotNull)(this._extendedSegmentRightCache).segment}}},91375:(e,t,i)=>{"use strict";i.d(t,{hitTestExtendedPoints:()=>c,buildExtendedSegments:()=>u,BezierQuadroRenderer:()=>p});var n=i(4652),r=i(86216),s=i(85113),a=i(14888),o=i(64673),l=i(9933),d=i(55014),h=i(9740);function c(e,t,i){for(const r of i)for(let i=1;i2&&(r.fillStyle=this._data.backColor,r.beginPath(),r.moveTo(t.x,t.y),r.quadraticCurveTo(a.x,a.y,n.x,n.y),r.quadraticCurveTo(o.x,o.y,i.x,i.y),r.fill()),r.beginPath(),u(r,this._data.extendLeftSegments),r.moveTo(t.x,t.y),r.quadraticCurveTo(a.x,a.y,n.x,n.y),r.quadraticCurveTo(o.x,o.y,i.x,i.y),u(r,this._data.extendRightSegments),r.stroke(),this._data.leftEnd===s.LineEnd.Arrow&&(0,l.drawArrow)(a,t,r,r.lineWidth,1),this._data.rightEnd===s.LineEnd.Arrow&&(0,l.drawArrow)(o,i,r,r.lineWidth,1)}}}},52377:(e,t,i)=>{"use strict";i.d(t,{BrushBasePaneView:()=>d});var n=i(86441),r=i(98930),s=i(53074),a=i(29639),o=i(14888),l=i(4754);class d extends l.LineSourcePaneView{constructor(){super(...arguments),this._polygonRenderer=new r.PolygonRenderer,this._renderer=new a.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl();const e=Math.max(1,this._source.smooth()),t=this._points;if(0===t.length)return void this._renderer.clear();const i=[t[0]];for(let n=1;n0){ const t=1!==e?[n.points[0],n.points[e-1]]:[n.points[0]],i=new s.SelectionRenderer({points:t,bgColors:this._lineAnchorColors(t),visible:this.areAnchorsVisible(),hittestResult:o.HitTestResult.REGULAR,barSpacing:this._getModel().timeScale().barSpacing()});this._renderer.append(i)}}}_smoothArray(e,t){if(1===e.length)return e;const i=new Array(e.length);for(let r=0;r{"use strict";i.r(t),i.d(t,{BrushPaneView:()=>s});var n=i(53479),r=i(52377);class s extends r.BrushBasePaneView{_createPolygonRendererData(){const e=this._source.properties().childs(),t={points:this._points,color:e.linecolor.value(),linewidth:e.linewidth.value(),linestyle:n.LINESTYLE_SOLID,linecap:"round",skipClosePath:!0,leftend:e.leftEnd.value(),rightend:e.rightEnd.value(),filled:!1,fillBackground:!1,backcolor:e.backgroundColor.value()};return e.fillBackground.value()&&this._model.lineBeingCreated()!==this._source&&(t.filled=!0,t.fillBackground=!0,t.transparency=e.transparency.value()),t}}},36400:(e,t,i)=>{"use strict";i.r(t),i.d(t,{CalloutPaneView:()=>v});var n=i(86441),r=i(50151),s=i(95242),a=i(29639),o=i(17364),l=i(80142),d=i(38031),h=i(83499),c=i(86216),u=i(14888);class p extends c.MediaCoordinatesPaneRenderer{constructor(){super(),this._data=null,this._textSizeCache={totalHeight:NaN,totalWidth:NaN}}setData(e){this._data=e}hitTest(e){if(null===this._data||this._data.points.length<2)return null;const t=this._data.points[0],i=this._data.points[1];if(t.subtract(e).length()<3)return new u.HitTestResult(u.HitTestResult.CHANGEPOINT);const n=i.x-this._textSizeCache.totalWidth/2,r=i.y-this._textSizeCache.totalHeight/2;return e.x>=n&&e.x<=n+this._textSizeCache.totalWidth&&e.y>=r&&e.y<=r+this._textSizeCache.totalHeight?new u.HitTestResult(u.HitTestResult.MOVEPOINT,{areaName:u.AreaName.Text}):null}_drawImpl(e){if(null===this._data||this._data.points.length<2)return;const t=this._data.points[0].clone(),i=this._data.points[1].clone(),n=e.context;n.lineCap="butt",n.strokeStyle=this._data.bordercolor,n.lineWidth=this._data.linewidth,n.textBaseline="bottom",n.font=this._data.textData.font;const r=this._data.textData.fontSize*this._data.textData.lines.length,s=this._data.textData.maxWidth,a=s+20,o=r+20;this._textSizeCache.totalWidth=a,this._textSizeCache.totalHeight=o;let c=i.x-a/2,u=i.y-o/2,p=0;const _=s+4>16,g=r+4>16;n.textAlign=(0,l.isRtl)()?"right":"left";const f=(0,h.calcTextHorizontalShift)(n,s);t.x>c+a?p=20:t.x>c&&(p=10),t.y>u+o?p+=2:t.y>u&&(p+=1),n.translate(c,u),t.x-=c,t.y-=u,i.x-=c,i.y-=u,n.beginPath(),n.moveTo(8,0),10===p?_?(n.lineTo(i.x-8,0),n.lineTo(t.x,t.y),n.lineTo(i.x+8,0),n.lineTo(a-8,0)):(n.lineTo(t.x,t.y),n.lineTo(a-8,0)):n.lineTo(a-8,0),20===p?(n.lineTo(t.x,t.y),n.lineTo(a,8)):n.arcTo(a,0,a,8,8),21===p?g?(n.lineTo(a,i.y-8),n.lineTo(t.x,t.y),n.lineTo(a,i.y+8),n.lineTo(a,o-8)):(n.lineTo(t.x,t.y),n.lineTo(a,o-8)):n.lineTo(a,o-8), 22===p?(n.lineTo(t.x,t.y),n.lineTo(a-8,o)):n.arcTo(a,o,a-8,o,8),12===p?_?(n.lineTo(i.x+8,o),n.lineTo(t.x,t.y),n.lineTo(i.x-8,o),n.lineTo(8,o)):(n.lineTo(t.x,t.y),n.lineTo(8,o)):n.lineTo(8,o),2===p?(n.lineTo(t.x,t.y),n.lineTo(0,o-8)):n.arcTo(0,o,0,o-8,8),1===p?g?(n.lineTo(0,i.y+8),n.lineTo(t.x,t.y),n.lineTo(0,i.y-8),n.lineTo(0,8)):(n.lineTo(t.x,t.y),n.lineTo(0,8)):n.lineTo(0,8),0===p?(n.lineTo(t.x,t.y),n.lineTo(8,0)):n.arcTo(0,0,8,0,8),n.stroke(),n.fillStyle=(0,d.generateColor)(this._data.backcolor,this._data.transparency),n.fill(),n.fillStyle=this._data.color,u=10+this._data.textData.fontSize,c=10+f;for(const e of this._data.textData.lines)n.fillText(e,c,u),u+=this._data.textData.fontSize}}var _=i(4754),g=i(44381);let f=null;class v extends _.LineSourcePaneView{constructor(e,t){super(e,t),this._calloutRenderer=new p,this._renderer=new a.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._source.calculatePoint2(),this._renderer.clear(),!this._points[0])return;if(this._points.length<2)return;const e=this._source.properties().childs(),t=this._points[0],i=t.x+this._source.getBarOffset()*this._model.timeScale().barSpacing(),s=new n.Point(i,this._points[1].y),a=this._fontStyle(),o=e.wordWrap.value()?e.wordWrapWidth.value():void 0,l=(0,g.wordWrap)(e.text.value(),a,o);let d;d=void 0!==o?o:l.reduce(((e,t)=>Math.max(e,function(e,t){if(null===f){const e=document.createElement("canvas");e.width=0,e.height=0,f=(0,r.ensureNotNull)(e.getContext("2d"))}return f.font=t,f.measureText(e).width}(t,a))),0);const h={points:[t,s],color:e.color.value(),linewidth:e.linewidth.value(),backcolor:e.backgroundColor.value(),transparency:e.transparency.value(),textData:{lines:l,maxWidth:d,font:a,fontSize:e.fontsize.value()},bordercolor:e.bordercolor.value()};if(this._calloutRenderer.setData(h),this._renderer.append(this._calloutRenderer),this._renderer.append(this.createLineAnchor({points:[t]},0)),void 0!==o){const e=h.points[1],t=new n.Point(e.x+o/2+8+2,e.y);t.data=1,this._renderer.append(this.createLineAnchor({points:[t]},1))}}_fontStyle(){const e=this._source.properties().childs(),t=(e.bold.value()?"bold ":"")+(e.italic.value()?"italic ":""),i=e.fontsize.value();return(0,s.makeFont)(i,o.CHART_FONT_FAMILY,t)}}},95007:(e,t,i)=>{"use strict";var n=i(86441).Point,r=i(4754).LineSourcePaneView,s=i(6612).VerticalLineRenderer,a=i(9933).TrendLineRenderer,o=i(14888).HitTestResult,l=i(29639).CompositeRenderer,d=i(85113).LineEnd;t.LineToolCircleLinesPaneView=class extends r{constructor(e,t){super(e,t),this._lines=[],this._trendRenderer=new a,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,!(this._source.points().length<2)){var e=this._model.timeScale();if(this._source.priceScale()&&!this._source.priceScale().isEmpty()&&!e.isEmpty()){var t=this._source.points()[0],i=this._source.points()[1],r=i?i.index-t.index:1;if(this._lines=[],0!==r){var a=e.visibleBarsStrictRange();if(r>0)for(var h=t.index;h<=a.lastBar();h+=r)this._lines.push({ x:e.indexToCoordinate(h)});else for(h=t.index;h>=a.firstBar();h+=r)this._lines.push({x:e.indexToCoordinate(h)});if(!(this._points.length<2)){var c=new l,u=this._source.properties(),p={points:[t,i],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:u.trendline.color.value(),linewidth:u.trendline.linewidth.value(),linestyle:u.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:d.Normal,rightend:d.Normal};this._trendRenderer.setData(p),c.append(this._trendRenderer);var _=this._model.timeScale().width(),g=this._source.priceScale().height();for(h=0;h{"use strict";i.r(t),i.d(t,{CirclePaneView:()=>c});var n=i(17364),r=i(44381),s=i(29639),a=i(4754),o=i(14888),l=i(34026),d=i(55014);class h{constructor(e){this._data=null!=e?e:null}setData(e){this._data=e}draw(e,t){if(null===this._data)return;const{center:i,radius:n,lineWidth:r,color:s,fillBackground:a,backColor:o}=this._data;e.save();const l=t.pixelRatio,d=Math.max(1,Math.floor(l)),h=d%2/2,c=Math.round(i.x*l)+h,u=Math.round(i.y*l)+h,p=Math.round(c+n*l),_=Math.max(1,Math.floor(r*l)),g=p-c-_;a&&g>0&&(e.fillStyle=o,e.beginPath(),e.moveTo(c+g,u),e.arc(c,u,g,0,2*Math.PI,!1),e.fill());const f=Math.max(d/2,p-c-_/2);e.strokeStyle=s,e.lineWidth=_,e.beginPath(),e.moveTo(c+f,u),e.arc(c,u,f,0,2*Math.PI,!1),e.stroke(),e.restore()}hitTest(e,t){if(null===this._data)return null;const{center:i,radius:n}=this._data,r=(0,d.interactionTolerance)().curve;if(!(0,l.pointInCircle)(e,i,n+r))return null;const s=n>r&&(0,l.pointInCircle)(e,i,n-r)?o.HitTestResult.MOVEPOINT_BACKGROUND:o.HitTestResult.MOVEPOINT;return new o.HitTestResult(s)}}class c extends a.LineSourcePaneView{constructor(){super(...arguments),this._circleRenderer=new h,this._textRenderer=new r.TextRenderer,this._renderer=new s.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e;if(super._updateImpl(),this._renderer.clear(),this._points.length<2)return;const t=this._source.properties().childs(),[i,n]=this._points;this._circleRenderer.setData({center:i,radius:Math.sqrt((n.x-i.x)**2+(n.y-i.y)**2),color:t.color.value(),lineWidth:t.linewidth.value(),backColor:t.backgroundColor.value(),fillBackground:t.fillBackground.value()}),this._renderer.append(this._circleRenderer),t.showLabel.value()&&(null===(e=t.text)||void 0===e?void 0:e.value())&&(this._updateTextRenderer(),this._renderer.append(this._textRenderer)),this.addAnchors(this._renderer,{ hittestResult:[o.HitTestResult.MOVEPOINT,o.HitTestResult.CHANGEPOINT]})}_updateTextRenderer(){const{text:e,textColor:t,fontSize:i,bold:r,italic:s}=this._source.properties().childs(),[a,o]=this._points,l=a.subtract(o).length()*Math.sqrt(2),d={points:[a],text:e.value(),color:t.value(),fontSize:i.value(),font:n.CHART_FONT_FAMILY,bold:r.value(),italic:s.value(),wordWrapWidth:l,maxHeight:l,offsetX:0,offsetY:0,horzAlign:"center",vertAlign:"middle",forceTextAlign:!0};this._textRenderer.setData(d)}}},17269:(e,t,i)=>{"use strict";i.r(t),i.d(t,{CommentPaneView:()=>f});var n=i(95242),r=i(38031),s=i(17364),a=i(4754),o=i(29639),l=i(86441),d=i(34026),h=i(80142),c=i(83499),u=i(86216),p=i(14888),_=i(9740);class g extends u.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._geometryCache={innerHeight:NaN,textHorizontalPadding:NaN,innerWidth:NaN,paddingLeft:NaN},this._geomertryCacheInvalidated=!0,this._data=null}setData(e){this._data=e,this._geomertryCacheInvalidated=!0}hitTest(e,t){if(null===this._data||0===this._data.points.length)return null;const i=this._data.points[0].x,n=this._data.points[0].y-this._geometryCache.innerHeight,r=(0,l.box)(new l.Point(i,n),new l.Point(i+this._geometryCache.innerWidth,n+this._geometryCache.innerHeight));return(0,d.pointInBox)(e,r)?new p.HitTestResult(p.HitTestResult.MOVEPOINT,{areaName:p.AreaName.Text}):null}_drawImpl(e){if(null===this._data||0===this._data.points.length)return;const t=e.context;t.font=this._data.font,t.textAlign=(0,h.isRtl)()?"right":"left";const i=this._measureInfo(t,this._data.label,this._data.fontSize),{paddingLeft:n,innerHeight:r,innerWidth:s,textHorizontalPadding:a}=i,o=Math.min(s,r)/2,l=this._data.points[0].x,d=this._data.points[0].y-r;t.translate(l,d),(0,_.drawRoundRect)(t,0,0,s,r,[o,o,o,2]),t.fillStyle=this._data.backgroundColor,t.fill(),t.strokeStyle=this._data.borderColor,t.lineWidth=2,t.stroke(),t.closePath(),t.textBaseline="middle",t.fillStyle=this._data.color,t.fillText(this._data.label,n+a,r/2)}_measureInfo(e,t,i){if(this._geomertryCacheInvalidated){const n=e.measureText(t),r=i,s=12,a=Math.round(r/1.3),o=n.width+2*s,l=r+2*a,d=(0,c.calcTextHorizontalShift)(e,n.width);this._geometryCache={paddingLeft:s,innerWidth:o,innerHeight:l,textHorizontalPadding:d},this._geomertryCacheInvalidated=!1}return this._geometryCache}}class f extends a.LineSourcePaneView{constructor(e,t){super(e,t),this._commentRenderer=new g,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(e,t){super._updateImpl(e,t);const i=this._source.properties().childs(),a={points:this._points,color:i.color.value(),borderColor:i.borderColor.value(),backgroundColor:(0,r.generateColor)(i.backgroundColor.value(),i.transparency.value()),font:(0,n.makeFont)(i.fontsize.value(),s.CHART_FONT_FAMILY),fontSize:i.fontsize.value(),label:i.text.value()};if(this._commentRenderer.setData(a),1===a.points.length){const e=new o.CompositeRenderer;return e.append(this._commentRenderer),e.append(this.createLineAnchor({points:a.points},0)),void(this._renderer=e)} this._renderer=this._commentRenderer}}},4332:(e,t,i)=>{"use strict";i.r(t),i.d(t,{CrossLinePaneView:()=>l});var n=i(4754),r=i(2945),s=i(6612),a=i(29639),o=i(14888);class l extends n.LineSourcePaneView{constructor(e,t){super(e,t),this._renderer=null,this._horizLineRenderer=new r.HorizontalLineRenderer,this._vertLineRenderer=new s.VerticalLineRenderer,this._horizLineRenderer.setHitTest(new o.HitTestResult(o.HitTestResult.MOVEPOINT))}update(){this._invalidated=!0}renderer(){return this._invalidated&&(this._updateImpl(),this._invalidated=!1),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const e=this._getPoints();if(0===e.length)return;const t={color:this._getSource().lineColor(),linestyle:this._getSource().lineStyle(),linewidth:this._getSource().lineWidth(),x:e[0].x,y:e[0].y};this._horizLineRenderer.setData(t),this._horizLineRenderer.setHitTest(new o.HitTestResult(o.HitTestResult.MOVEPOINT,{snappingPrice:this._source.points()[0].price})),this._vertLineRenderer.setData(t),this._vertLineRenderer.setHitTest(new o.HitTestResult(o.HitTestResult.MOVEPOINT,{snappingIndex:this._source.points()[0].index}));const i=new a.CompositeRenderer;i.append(this._horizLineRenderer),i.append(this._vertLineRenderer),this.addAnchors(i),this._renderer=i}}},92238:(e,t,i)=>{"use strict";i.r(t),i.d(t,{CypherPaneView:()=>r});var n=i(77340);class r extends n.Pattern5pointsPaneView{_updateBaseData(){if(this._source.points().length>=3){const[e,t,i]=this._source.points();this._abRetracement=Math.round(1e3*Math.abs((i.price-t.price)/(t.price-e.price)))/1e3}if(this._source.points().length>=4){const[e,t,,i]=this._source.points();this._bcRetracement=Math.round(1e3*Math.abs((i.price-e.price)/(t.price-e.price)))/1e3}if(this._source.points().length>=5){const[e,,t,i,n]=this._source.points();this._cdRetracement=Math.round(1e3*Math.abs((n.price-i.price)/(i.price-t.price)))/1e3,this._xdRetracement=Math.round(1e3*Math.abs((n.price-i.price)/(e.price-i.price)))/1e3}}}},64484:(e,t,i)=>{"use strict";i.d(t,{DateAndPriceRangeBasePaneView:()=>o});var n=i(86441),r=i(17364),s=i(44381),a=i(4754);class o extends a.LineSourcePaneView{constructor(){super(...arguments),this._customTextrenderer=new s.TextRenderer}_updateCustomTextRenderer(e,t){const i=this._source.properties().childs().customText.childs();if(i.visible.value()&&i.text.value().length>0){const[a,o]=this._points,l=Math.round((a.y+o.y)/2),d=new n.Point(a.x,l),h=new n.Point(o.x,l),c=d.x{"use strict";i.r(t),i.d(t,{ DateAndPriceRangePaneView:()=>b});var n=i(50151),r=i(86441),s=i(44352),a=i(80142),o=i(44381),l=i(26740),d=i(9933),h=i(29639),c=i(18766),u=i(53479),p=i(85113),_=i(45063),g=i(68336),f=i(48566),v=i(17364),x=i(64484);const m=new _.TimeSpanFormatter,R=new c.PercentageFormatter,w=new f.VolumeFormatter,y=s.t(null,void 0,i(33355)),T=s.t(null,{context:"study"},i(32819));class b extends x.DateAndPriceRangeBasePaneView{constructor(){super(...arguments),this._distanceLineRenderer=new d.TrendLineRenderer,this._distancePriceRenderer=new d.TrendLineRenderer,this._backgroundRenderer=new l.RectangleRenderer,this._borderRenderer=new l.RectangleRenderer,this._textRenderer=new o.TextRenderer,this._renderer=new h.CompositeRenderer,this._pipFormatter=null,this._lastSymbolInfo=null}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;if(super._updateImpl(),this._renderer.clear(),this._points.length<2||this._source.points().length<2)return;const s=this._source.properties().childs();s.fillBackground&&s.fillBackground.value()&&(this._backgroundRenderer.setData({points:this._points,color:"white",linewidth:0,backcolor:s.backgroundColor.value(),fillBackground:!0,transparency:s.backgroundTransparency.value(),extendLeft:!1,extendRight:!1}),this._renderer.append(this._backgroundRenderer));const[l,d]=this._points;s.drawBorder.value()&&(this._borderRenderer.setData({points:this._points,color:s.borderColor.value(),linewidth:s.borderWidth.value(),fillBackground:!1,extendLeft:!1,extendRight:!1,backcolor:""}),this._renderer.append(this._borderRenderer));const h=s.drawBorder.value()?s.borderWidth.value()/2:0,c=this._updateCustomTextRenderer(e,t),_=Math.round((l.y+d.y)/2),f=new r.Point(l.x+Math.sign(d.x-l.x)*h,_),x=new r.Point(d.x+Math.sign(l.x-d.x)*h,_);this._distanceLineRenderer.setData({points:[f,x],color:s.linecolor.value(),linewidth:s.linewidth.value(),linestyle:u.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:p.LineEnd.Normal,rightend:Math.abs(l.x-d.x)>=25*s.linewidth.value()?p.LineEnd.Arrow:p.LineEnd.Normal,excludeBoundaries:null!=c?c:void 0}),this._renderer.append(this._distanceLineRenderer);const b=Math.round((l.x+d.x)/2),L=new r.Point(b,l.y+Math.sign(d.y-l.y)*h),P=new r.Point(b,d.y+Math.sign(l.y-d.y)*h);this._distancePriceRenderer.setData({points:[L,P],color:s.linecolor.value(),linewidth:s.linewidth.value(),linestyle:u.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:p.LineEnd.Normal,rightend:Math.abs(L.y-P.y)>=25*s.linewidth.value()?p.LineEnd.Arrow:p.LineEnd.Normal,excludeBoundaries:null!=c?c:void 0}),this._renderer.append(this._distancePriceRenderer);const S=this._source.points()[0].price,C=this._source.points()[1].price,M=C-S,I=100*M/Math.abs(S),N=this._source.points()[0].index,A=this._source.points()[1].index,k=A-N,D=(0,a.forceLTRStr)(k+""),E=this._model.timeScale().indexToUserTime(N),B=this._model.timeScale().indexToUserTime(A);let z="";if(E&&B){const e=(B.valueOf()-E.valueOf())/1e3;z=", "+(0,a.startWithLTR)(m.format(e))}const O=this._model.mainSeries().symbolInfo() ;O&&O!==this._lastSymbolInfo&&(this._pipFormatter=new g.PipFormatter(O.pricescale,O.minmov,O.type,O.minmove2),this._lastSymbolInfo=O);const H=(0,n.ensureNotNull)(this._source.ownerSource()).formatter().format(M)+" ("+R.format(Math.round(100*I)/100)+") "+(this._pipFormatter?this._pipFormatter.format(M):"");let V=(0,a.forceLTRStr)(H)+"\n"+y.format({count:D})+z;const W=this._source.volume();let F;Number.isNaN(W)||(V+=`\n${T} ${w.format(W)}`),F=C>S?new r.Point(.5*(l.x+d.x),d.y-2*s.fontsize.value()):new r.Point(.5*(l.x+d.x),d.y+.7*s.fontsize.value());const Y={x:0,y:10},j=s.fontsize.value(),U={points:[F],text:V,color:s.textcolor.value(),font:v.CHART_FONT_FAMILY,offsetX:Y.x,offsetY:Y.y,padding:8,vertAlign:"middle",horzAlign:"center",fontsize:j,backgroundRoundRect:4,backgroundHorzInflate:.4*j,backgroundVertInflate:.2*j};(null===(i=s.fillLabelBackground)||void 0===i?void 0:i.value())&&(U.boxShadow={shadowColor:s.shadow.value(),shadowBlur:4,shadowOffsetY:1},U.backgroundColor=s.labelBackgroundColor.value()),this._textRenderer.setData(U);const q=this._textRenderer.measure(),Q=(0,o.calculateLabelPosition)(q,l,d,Y,e);this._textRenderer.setPoints([Q]),this._renderer.append(this._textRenderer),this._renderer.append(this._customTextrenderer),this.addAnchors(this._renderer)}_needLabelExclusionPath(e){return e.getLinesInfo().lines.length>0}}},4061:(e,t,i)=>{"use strict";i.r(t),i.d(t,{DateRangePaneView:()=>m});var n=i(86441),r=i(44352),s=i(80142),a=i(44381),o=i(26740),l=i(9933),d=i(29639),h=i(53479),c=i(85113),u=i(45063),p=i(48566),_=i(17364),g=i(64484);const f=new p.VolumeFormatter,v=r.t(null,void 0,i(33355)),x=r.t(null,{context:"study"},i(32819));class m extends g.DateAndPriceRangeBasePaneView{constructor(){super(...arguments),this._leftBorderRenderer=new l.TrendLineRenderer,this._rightBorderRenderer=new l.TrendLineRenderer,this._distancePriceRenderer=new l.TrendLineRenderer,this._backgroundRenderer=new o.RectangleRenderer,this._textRenderer=new a.TextRenderer,this._renderer=new d.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;if(super._updateImpl(),this._renderer.clear(),this._points.length<2||this._source.points().length<2)return;const r=this._source.properties().childs(),o=r.extendTop.value(),l=r.extendBottom.value(),[d,p]=this._points,g=o?0:Math.min(d.y,p.y),m=l?this._height():Math.max(d.y,p.y);r.fillBackground.value()&&(this._backgroundRenderer.setData({points:[new n.Point(d.x,g),new n.Point(p.x,m)],color:"white",linewidth:0,backcolor:r.backgroundColor.value(),fillBackground:!0,transparency:r.backgroundTransparency.value(),extendLeft:!1,extendRight:!1}),this._renderer.append(this._backgroundRenderer));const R=(e,t,i)=>{e.setData({points:[t,i],color:r.linecolor.value(),linewidth:r.linewidth.value(),linestyle:h.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:c.LineEnd.Normal,rightend:c.LineEnd.Normal}),this._renderer.append(e)};R(this._leftBorderRenderer,new n.Point(d.x,g),new n.Point(d.x,m)), R(this._rightBorderRenderer,new n.Point(p.x,g),new n.Point(p.x,m));const w=Math.round((d.y+p.y)/2),y=new n.Point(d.x,w),T=new n.Point(p.x,w),b=this._updateCustomTextRenderer(e,t);this._distancePriceRenderer.setData({points:[y,T],color:r.linecolor.value(),linewidth:r.linewidth.value(),linestyle:h.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:c.LineEnd.Normal,rightend:Math.abs(y.x-T.x)>=15*r.linewidth.value()?c.LineEnd.Arrow:c.LineEnd.Normal,excludeBoundaries:null!=b?b:void 0}),this._renderer.append(this._distancePriceRenderer);const L=this._source.points()[0].index,P=this._source.points()[1].index,S=P-L,C=this._model.timeScale().indexToUserTime(L),M=this._model.timeScale().indexToUserTime(P);let I="";if(C&&M){const e=(M.valueOf()-C.valueOf())/1e3;I=", "+(0,s.startWithLTR)((new u.TimeSpanFormatter).format(e))}const N=this._source.volume(),A=Number.isNaN(N)?"":`\n${x} ${f.format(N)}`,k=v.format({count:(0,s.forceLTRStr)(S.toString())})+I+A,D={x:0,y:10},E=r.fontsize.value(),B={text:k,color:r.textcolor.value(),font:_.CHART_FONT_FAMILY,offsetX:D.x,offsetY:D.y,padding:8,vertAlign:"middle",horzAlign:"center",fontsize:E,backgroundRoundRect:4,backgroundHorzInflate:.4*E,backgroundVertInflate:.2*E};(null===(i=r.fillLabelBackground)||void 0===i?void 0:i.value())&&(B.boxShadow={shadowColor:r.shadow.value(),shadowBlur:4,shadowOffsetY:1},B.backgroundColor=r.labelBackgroundColor.value()),this._textRenderer.setData(B);const z=this._textRenderer.measure(),O=(0,a.calculateLabelPosition)(z,d,p,D,e);this._textRenderer.setPoints([O]),this._renderer.append(this._textRenderer),this._renderer.append(this._customTextrenderer),this.addAnchors(this._renderer)}}},71841:(e,t,i)=>{"use strict";var n=i(4112).DisjointChannelRenderer,r=i(9933).TrendLineRenderer,s=i(44381).TextRenderer,a=i(29639).CompositeRenderer,o=i(6947).PaneCursorType,l=i(17364),d=i(20575).AlertableLineSourcePaneView,h=[o.Default,o.Default,o.VerticalResize,o.Default];t.DisjointChannelPaneView=class extends d{constructor(e,t){super(e,t),this._label=null,this._trendLineRendererPoints12=new r,this._trendLineRendererPoints43=new r,this._disjointChannelRenderer=new n,this._p1LabelRenderer=new s,this._p2LabelRenderer=new s,this._p3LabelRenderer=new s,this._p4LabelRenderer=new s,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._label=null,!(this._source.points().length<2)&&this._source.priceScale()){var e=this._source.points()[0],t=this._source.points()[1],i=this._source.ownerSource().firstValue();if(this._price1=this._source.priceScale().formatPrice(e.price,i),this._price2=this._source.priceScale().formatPrice(t.price,i),3===this._source.points().length){var n=this._source.points()[2];this._price3=this._source.priceScale().formatPrice(n.price,i);var r=t.price-e.price;this._price4=this._source.priceScale().formatPrice(n.price+r,i)}if(!(this._points.length<2)){var s,o=new a,d=(e=this._points[0],t=this._points[1],this._source.properties()),c=this._model,u=this._source;if(this._points.length>=3){(n=this._points[2]).x=t.x,n.square=!0;var p=t.y-e.y ;if((s=e.clone()).y=n.y+p,s.data=3,d.fillBackground.value()){var _=c.timeScale().width(),g=u.priceScale().height(),f=d.extendLeft.value(),v=d.extendRight.value();this._disjointChannelRenderer.setData({width:_,height:g,extendleft:f,extendright:v,points:[e,t,n,s],backcolor:d.backgroundColor.value(),transparency:d.transparency.value(),hittestOnBackground:TradingView.isMobile.any()}),o.append(this._disjointChannelRenderer)}}var x=function(e,t){return{points:[e,t],width:c.timeScale().width(),height:u.priceScale().height(),color:d.linecolor.value(),linewidth:d.linewidth.value(),linestyle:d.linestyle.value(),extendleft:d.extendLeft.value(),extendright:d.extendRight.value(),leftend:d.leftEnd.value(),rightend:d.rightEnd.value()}},m=this,R=function(e,t,i,n,r,s){if(m._source.properties().showPrices.value()){var a={points:[i],text:r,color:m._source.properties().textcolor.value(),horzAlign:i.x>n.x?"left":"right",vertAlign:"middle",font:l.CHART_FONT_FAMILY,offsetX:6,offsetY:0,boxPadding:0,bold:m._source.properties().bold.value(),italic:m._source.properties().italic.value(),fontsize:m._source.properties().fontsize.value(),forceTextAlign:!0};e.setData(a),o.append(e);a={points:[n],text:s,color:m._source.properties().textcolor.value(),horzAlign:i.x{"use strict";i.r(t),i.d(t,{ElliottLabelsPaneView:()=>v});var n=i(4754),r=i(29639),s=i(91031),a=i(38031),o=i(53479),l=i(14888),d=i(86441),h=i(34026),c=i(83499),u=i(95242);class p{constructor(e,t){this._data=e,this._hitTestResult=t}hitTest(e){const t=this._center(),i=this._data.circleRadius,n={min:new d.Point(t.x-i,t.y-i),max:new d.Point(t.x+i,t.y+i)};return(0,h.pointInBox)(e,n)?this._hitTestResult:null}draw(e,t){e.save();const i=t.pixelRatio,n=Math.max(1,Math.floor(i))%2/2,r=this._center(),s=Math.round(r.x*i)+n,a=Math.round(r.y*i)+n;if(this._data.showCircle){const t=Math.round(s+this._data.circleRadius*i)-s-this._data.circleBorderWidth*i/2;e.strokeStyle=this._data.color,e.lineWidth=this._data.circleBorderWidth*i,e.beginPath(),e.moveTo(s+t,a),e.arc(s,a,t,0,2*Math.PI,!1),e.stroke()}e.font=(0, u.makeFont)(this._data.fontSize,this._data.font,this._data.bold?"bold":void 0),e.textBaseline="middle",e.textAlign="center",e.fillStyle=this._data.color,(0,c.drawScaled)(e,i,(()=>{e.fillText(this._data.letter,s/i,a/i+.05*this._data.fontSize)})),e.restore()}_center(){const e="bottom"===this._data.vertAlign?-1:1,t=this._data.point.y+e*this._data.yOffset+e*this._data.circleRadius,i=this._data.point.x;return new d.Point(i,t)}}var _=i(17364),g=i(98930);const f={4:{font:24,circle:36,circleBorderWidth:1,bold:!0},3:{font:20,circle:28,circleBorderWidth:1,bold:!1},2:{font:18,circle:22,circleBorderWidth:1,bold:!1},1:{font:16,circle:22,circleBorderWidth:1,bold:!1},0:{font:11,circle:14,circleBorderWidth:1,bold:!0}};class v extends n.LineSourcePaneView{constructor(e,t){super(e,t),this._renderer=null,this._polylineRenderer=new g.PolygonRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e;super._updateImpl(),this._renderer=null;const t=this._source.properties().childs(),i=this._source.priceScale(),n=this._model.timeScale(),d=null===(e=this._source.ownerSource())||void 0===e?void 0:e.firstValue();if(!i||i.isEmpty()||n.isEmpty()||null==d)return;const h=new r.CompositeRenderer;if(t.showWave.value()){const e={points:this._points,color:(0,a.generateColor)(t.color.value(),0),linewidth:t.linewidth.value(),linestyle:o.LINESTYLE_SOLID,fillBackground:!1,filled:!1,backcolor:"rgba(0, 0, 0, 0)",linejoin:"round"};this._polylineRenderer.setData(e),h.append(this._polylineRenderer)}const c=this.areAnchorsVisible()?0:1;let u=1;if(this._points.length>2){const e=this._points[2],t=this._points[1];u=(0,s.sign)(e.y-t.y)}let g=0;this._model.lineBeingCreated()===this._source&&(g=1);const v=(0,a.resetTransparency)(t.color.value());for(let e=0;e{"use strict";i.r(t),i.d(t,{EllipsePaneView:()=>v});var n=i(4652),r=i(86441),s=i(5531),a=i(17364),o=i(44381),l=i(6947),d=i(29639),h=i(4754),c=i(25422),u=i(38031),p=i(14888),_=i(86216),g=i(55014);class f extends _.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data={...e,angleFrom:0,angleTo:2*Math.PI,clockwise:!1}}hitTest(e){if(null===this._data||this._data.points.length<3)return null;const t=this._data.points[0],i=this._data.points[1];let s=this._data.points[2];const a=(0, n.distanceToLine)(t,i,s).distance,o=i.subtract(t),l=t.add(i).scaled(.5),d=new r.Point(-o.y,o.x).normalized();s=l.add(d.scaled(a));const h=o.length(),u=o.x/h,_=o.y/h;let f=Math.acos(u);_<0&&(f=-f);let v=(0,c.translationMatrix)(-l.x,-l.y);e=(0,c.transformPoint)(v,e);let x=(0,c.transformPoint)(v,this._data.points[2]);v=(0,c.rotationMatrix)(-f),e=(0,c.transformPoint)(v,e),x=(0,c.transformPoint)(v,x),v=(0,c.scalingMatrix)(1,h/(2*a)),e=(0,c.transformPoint)(v,e),x=(0,c.transformPoint)(v,x);const m=e.length(),R=(0,g.interactionTolerance)().curve;return Math.abs(m-.5*h)<=R?new p.HitTestResult(p.HitTestResult.MOVEPOINT):this._data.fillBackground&&!this._data.noHitTestOnBackground&&m<=.5*h?new p.HitTestResult(p.HitTestResult.MOVEPOINT_BACKGROUND):null}_drawImpl(e){if(null===this._data||this._data.points.length<2)return;const t=this._data.points[0],i=this._data.points[1],s=e.context;if(this._data.points.length<3)return s.strokeStyle=this._data.color,s.lineWidth=this._data.linewidth,s.beginPath(),s.moveTo(t.x,t.y),s.lineTo(i.x,i.y),void s.stroke();let a=this._data.points[2];const o=(0,n.distanceToLine)(t,i,a).distance;if(o<1)return s.strokeStyle=this._data.color,s.lineWidth=this._data.linewidth,s.beginPath(),s.moveTo(t.x,t.y),s.lineTo(i.x,i.y),void s.stroke();const l=i.subtract(t),d=t.add(i).scaled(.5),h=new r.Point(-l.y,l.x).normalized();a=d.add(h.scaled(o)),s.strokeStyle=this._data.color,s.lineWidth=this._data.linewidth;const p=l.length(),_=l.x/p,g=l.y/p;let f=Math.acos(_);g<0&&(f=-f);let v=this._data.points[2],x=(0,c.translationMatrix)(-d.x,-d.y);v=(0,c.transformPoint)(x,v),x=(0,c.rotationMatrix)(-f),v=(0,c.transformPoint)(x,v),x=(0,c.scalingMatrix)(1,p/(2*o)),v=(0,c.transformPoint)(x,v),v.y<0?this._data.clockwise=!0:this._data.clockwise=!1,s.save(),s.beginPath(),s.translate(d.x,d.y),s.rotate(f),s.scale(1,2*o/p),s.arc(0,0,.5*p,this._data.angleFrom,this._data.angleTo,this._data.clockwise),s.restore(),s.stroke(),this._data.fillBackground&&(s.fillStyle=(0,u.generateColor)(this._data.backcolor,this._data.transparency),s.fill())}}class v extends h.LineSourcePaneView{constructor(){super(...arguments),this._ellipseRenderer=new f,this._textRenderer=new o.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e;if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const t=this._source.properties().childs(),i={points:this._points,color:t.color.value(),linewidth:t.linewidth.value(),backcolor:t.backgroundColor.value(),fillBackground:t.fillBackground.value(),transparency:t.transparency.value(),noHitTestOnBackground:!1};this._ellipseRenderer.setData(i);const s=new d.CompositeRenderer;s.append(this._ellipseRenderer);const a=i.points[0],o=i.points[1];if(2===this._points.length)return this.addAnchors(s),void(this._renderer=s);let c=i.points[2];const u=(0,n.distanceToLine)(a,o,c).distance,p=o.subtract(a),_=a.add(o).scaled(.5),g=new r.Point(-p.y,p.x).normalized();c=_.add(g.scaled(u));const f=_.add(g.scaled(-u)),v=new r.Point(a.x,a.y);v.data=0 ;const x=new r.Point(o.x,o.y);x.data=1;const m=new r.Point(c.x,c.y);m.data=2;const R=new r.Point(f.x,f.y);R.data=3,t.showLabel.value()&&(null===(e=t.text)||void 0===e?void 0:e.value())&&this._updateTextRenderer(v,x,m,R)&&s.append(this._textRenderer);const w=(0,h.thirdPointCursorType)(v,x),y=[l.PaneCursorType.Default,l.PaneCursorType.Default,w,w];s.append(this.createLineAnchor({points:[v,x,m,R],pointsCursorType:y},0)),this._renderer=s}_updateTextRenderer(e,t,i,n){if(t.subtract(e).length()<1e-5||n.subtract(i).length()<1e-5)return!1;const o=(0,s.intersectLines)((0,r.lineThroughPoints)(e,t),(0,r.lineThroughPoints)(i,n));if(!o)return!1;const{text:l,textColor:d,fontSize:h,bold:c,italic:u}=this._source.properties().childs(),p=Math.sqrt(2),_={points:[o],text:l.value(),color:d.value(),fontSize:h.value(),font:a.CHART_FONT_FAMILY,bold:c.value(),italic:u.value(),wordWrapWidth:e.subtract(t).length()/p,maxHeight:n.subtract(i).length()/p,angle:Math.atan((e.y-t.y)/(e.x-t.x)),offsetX:0,offsetY:0,horzAlign:"center",vertAlign:"middle",forceTextAlign:!0};return this._textRenderer.setData(_),!0}}},11365:(e,t,i)=>{"use strict";i.r(t),i.d(t,{EmojiPaneView:()=>r});var n=i(99585);class r extends n.SvgIconPaneView{_iconColor(){return null}}},57108:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ExecutionPaneView:()=>d});var n=i(86441),r=i(4754),s=i(14888),a=i(86216);class o extends a.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=null!=e?e:null}hitTest(e,t){if(null===this._data)return null;const i=Math.round(this._data.point.x),n=Math.round(this._data.point.y),r=this._data.arrowHeight;let a,o;if("buy"===this._data.direction?(a=n,o=n+r):(a=n-r,o=n),e.x>=i-2&&e.x<=i+2&&e.y>=a&&e.y<=o){const e=this._data.tooltip;return new s.HitTestResult(s.HitTestResult.CUSTOM,{tooltip:""!==e?{text:e,rect:{x:i,y:a,w:2,h:o-a}}:void 0})}return null}setData(e){this._data=e}_drawImpl(e){const t=e.context;if(null===this._data)return;const i=Math.round(this._data.point.x),n=Math.round(this._data.point.y);!function(e,t,i,n,r,s){e.save(),e.strokeStyle=n,e.fillStyle=n,e.translate(t-2,i),"buy"!==r&&(e.rotate(Math.PI),e.translate(-4,0)),e.beginPath(),e.moveTo(2,s),e.lineTo(2,0),e.moveTo(0,2),e.lineTo(2,0),e.lineTo(4,2),e.stroke(),e.restore()}(t,i,n,this._data.arrowColor,this._data.direction,this._data.arrowHeight);const{arrowHeight:r,arrowSpacing:s,fontHeight:a,direction:o,text:l,font:d,textColor:h}=this._data,c=function(e,t,i){if(0===t.length)return 0;e.save(),e.font=i;const n=e.measureText(t).width;return e.restore(),5+n}(t,l,d);if(0!==c){const e="buy"===o?n+r+s:n-r-s-a;!function(e,t,i,n,r,s,a,o){if(!s)return;e.save(),e.textAlign="center",e.textBaseline="middle",e.font=a,e.fillStyle=o;const l=t+n/2,d=i+r/2;e.fillText(s,l,d-1),e.restore()}(t,Math.round(i+.5-c/2),e,c,a,l,d,h)}}}var l=i(88620);class d extends r.LineSourcePaneView{constructor(){super(...arguments),this._executionRenderer=new o,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;super._updateImpl(e,t),this._renderer=null ;const r=this._source,s=r.points();if(0===s.length)return;const a=r.adapter(),o=r.model().timeScale(),d=null===(i=r.model().paneForSource(r))||void 0===i?void 0:i.executionsPositionController();if(!d)return;const h=d.getXYCoordinate(a,o,s[0].index);!isFinite(h.y)||h.y<0||h.y>e||h.x<0||(this._executionRenderer.setData({point:new n.Point(h.x,h.y),arrowColor:a.getArrowColor(),arrowHeight:a.getArrowHeight(),direction:a.getDirection(),tooltip:a.getTooltip(),arrowSpacing:a.getArrowSpacing(),fontHeight:l.fontHeight(a.getFont()),text:a.getText(),textColor:a.getTextColor(),font:a.getFont()}),this._renderer=this._executionRenderer)}}},70529:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FibChannelPaneView:()=>u});var n=i(50151),r=i(38031),s=i(85113),a=i(29639),o=i(8440),l=i(9933),d=i(45306),h=i(44381);class c extends o.ParallelChannelRenderer{constructor(){super(...arguments),this._data=null}_getColor(){const e=(0,n.ensureNotNull)(this._data);return(0,r.generateColor)(e.backcolor,e.transparency,!0)}_extendAndDrawLineSegment(e,t,i,n){var r;const s=null===(r=this._data)||void 0===r?void 0:r.excludeBoundaries;if(void 0!==s){e.save(),e.beginPath(),e.rect(0,0,n.width,n.height);for(let t=0;t=1;e--){if((0,n.ensureDefined)(this._source.properties().child("level"+e)).childs().visible.value()){x=e;break}}if(null!==x){const i=(0,n.ensureDefined)(this._source.properties().child("level"+x)).childs();if(i.visible.value()){const n=v.scaled(i.coeff.value()),r=_.add(n),a=g.add(n),c=l.coordinateToPrice(r.y,d),f=this._updateLabelForLevel({i:x-1,levelIndex:x,leftPoint:r,rightPoint:a,price:c,color:i.color.value(),horzAlign:p.horzLabelsAlign.value(),vertAlign:p.vertLabelsAlign.value()});let m;null!==f&&(u.append(f),m=null!==(o=(0,h.getTextBoundaries)(f,t,e))&&void 0!==o?o:void 0);const R={points:[r,a],color:i.color.value(),linewidth:p.levelsStyle.childs().linewidth.value(),linestyle:p.levelsStyle.childs().linestyle.value(),extendleft:p.extendLeft.value(),extendright:p.extendRight.value(),leftend:s.LineEnd.Normal,rightend:s.LineEnd.Normal,excludeBoundaries:m};this._lastLevelTrendRenderer.setData(R),u.append(this._lastLevelTrendRenderer)}}this.addAnchors(u),this._renderer=u}}},19651:(e,t,i)=>{"use strict";var n=i(86441).Point;const{LineToolPaneViewFibWithLabels:r}=i(45306);var s=i(9933).TrendLineRenderer,a=i(14888).HitTestResult,o=i(29639).CompositeRenderer,l=i(99829).EllipseRendererSimple,d=i(85113).LineEnd;t.FibCirclesPaneView=class extends r{constructor(e,t){super(e,t),this._trendLineRenderer=new s,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,!(this._source.points().length<2||this._points.length<2)&&this._source.priceScale()&&!this._source.priceScale().isEmpty()&&!this._model.timeScale().isEmpty()){var e=this._points[0],t=this._points[1];this._center=e.add(t).scaled(.5);var i=Math.abs(t.x-e.x),r=Math.abs(t.y-e.y);this._levels=[];for(var s=this._source.properties(),h=this._source.levelsCount(),c=1;c<=h;c++){var u=s["level"+c];if(u.visible.value()){var p=u.coeff.value(),_=u.color.value(),g=[];g.push(new n(this._center.x-.5*i*p,this._center.y-.5*r*p)),g.push(new n(this._center.x+.5*i*p,this._center.y+.5*r*p));var f=new n(this._center.x,this._center.y+.5*r*p);this._levels.push({color:_,points:g,labelPoint:f,linewidth:u.linewidth.value(),linestyle:u.linestyle.value(),index:c})}}if(!(this._points.length<2)){ var v=new o,x=s.fillBackground.value(),m=s.transparency.value();for(c=0;c0&&(w.wholePoints=this._levels[c-1].points),w.fillBackground=x,w.transparency=m;var y=new a(a.MOVEPOINT,null,R.index);v.append(new l(w,y));const e=this._updateLabelForLevel({i:c,levelIndex:R.index,color:R.color,price:0,vertAlign:"middle",horzAlign:"left",leftPoint:this._levels[c].labelPoint,rightPoint:this._levels[c].labelPoint});null!==e&&v.append(e)}if(s.trendline.visible.value()){var T={points:[this._points[0],this._points[1]],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:s.trendline.color.value(),linewidth:s.trendline.linewidth.value(),linestyle:s.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:d.Normal,rightend:d.Normal};this._trendLineRenderer.setData(T),v.append(this._trendLineRenderer)}this.addAnchors(v),this._renderer=v}}}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}}},38265:(e,t,i)=>{"use strict";i.d(t,{fibLevelCoordinate:()=>r,fibLevelPrice:()=>s});var n=i(50151);function r(e,t,i,r,s,a){if(a)return Math.round((0,n.ensureDefined)(e.coordinate)+(0,n.ensureDefined)(t.coordinate)*i);const o=e.price+t.price*i;return r.priceToCoordinate(o,s)}function s(e,t,i,r,s,a){if(!a)return e.price+t.price*i;const o=(0,n.ensureDefined)(e.coordinate)+(0,n.ensureDefined)(t.coordinate)*i;return r.coordinateToPrice(o,s)}},33026:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FibRetracementPaneView:()=>u});var n=i(86441),r=i(26740),s=i(9933),a=i(44381),o=i(14888),l=i(29639),d=i(85113),h=i(38265),c=i(45306);class u extends c.LineToolPaneViewFibWithLabels{constructor(e,t){super(e,t),this._trendLineRenderer=new s.TrendLineRenderer,this._renderer=new l.CompositeRenderer,this._levels=[]}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i,l;if(super._updateImpl(),this._renderer.clear(),this._source.points().length<2)return;const c=this._source.priceScale();if(!c||c.isEmpty()||this._model.timeScale().isEmpty())return;const u=null===(i=this._source.ownerSource())||void 0===i?void 0:i.firstValue();if(null==u)return;const[p,_]=this._source.points(),g=this._source.properties().childs(),f=g.reverse.value();if(this._points.length<2)return;const v=this._points[0],x=this._points[1],m=Math.min(v.x,x.x),R=Math.max(v.x,x.x),w=g.fillBackground.value(),y=g.transparency.value(),T=g.extendLinesLeft.value(),b=g.extendLines.value(),L=c.isLog()&&g.fibLevelsBasedOnLogScale.value(),P=!(m>t&&!T||R<0&&!b);this._levels=[];const S=f?p.price:_.price,C=f?_.price:p.price,M=C-S,I=c.priceToCoordinate(S,u),N={price:S,coordinate:I},A={price:M,coordinate:c.priceToCoordinate(C,u)-I},k=this._source.levelsCount();for(let e=1;e<=k;e++){const t=g["level"+e].childs();if(!t||!t.visible.value())continue;const i=t.coeff.value(),n=(0,h.fibLevelCoordinate)(N,A,i,c,u,L),r=(0,h.fibLevelPrice)(N,A,i,c,u,L);this._levels.push({color:t.color.value(),y:n,price:r, linewidth:g.levelsStyle.childs().linewidth.value(),linestyle:g.levelsStyle.childs().linestyle.value(),index:e})}if(w&&P)for(let e=0;e0&&w){const t=this._levels[e-1],i={points:[new n.Point(m,this._levels[e].y),new n.Point(R,t.y)],color:this._levels[e].color,linewidth:0,backcolor:this._levels[e].color,fillBackground:!0,transparency:y,extendLeft:T,extendRight:b},s=new r.RectangleRenderer(void 0,void 0,!0);s.setData(i),this._renderer.append(s)}let D=m,E=R;D===E&&(T&&(D-=1),b&&(E+=1));for(let i=0;i{"use strict";i.r(t),i.d(t,{FibSpeedResistanceArcsPaneView:()=>_});var n=i(86441),r=i(91031),s=i(14888),a=i(29639),o=i(85113),l=i(9933),d=i(38031),h=i(55014),c=i(86216);class u extends c.MediaCoordinatesPaneRenderer{constructor(e,t,i){super(),this._data=e,this._hittest=t||new s.HitTestResult(s.HitTestResult.MOVEPOINT),this._backHittest=i||new s.HitTestResult(s.HitTestResult.MOVEPOINT_BACKGROUND)}hitTest(e){const t=this._data;if(null===t)return null;if((0,r.sign)(e.y-t.center.y)!==t.dir&&!t.fullCircles)return null;const i=e.subtract(t.center).length(),n=(0,h.interactionTolerance)().curve;return Math.abs(i-t.radius)0?i.arc(0,0,t.radius,0,Math.PI,!1):i.arc(0,0,t.radius,Math.PI,0,!1),i.stroke(),t.fillBackground&&(t.radius2&&(t.fullCircles?i.arc(0,0,t.radius2,2*Math.PI,0,!0):t.dir>0?i.arc(0,0,t.radius2,Math.PI,0,!0):i.arc(0,0,t.radius2,0,Math.PI,!0)), i.fillStyle=(0,d.generateColor)(t.color,t.transparency,!0),i.fill())}}var p=i(45306);class _ extends p.LineToolPaneViewFibWithLabels{constructor(){super(...arguments),this._trendLineRenderer=new l.TrendLineRenderer,this._renderer=null,this._levels=[]}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e;if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const t=this._source.priceScale();if(!t||t.isEmpty()||this._model.timeScale().isEmpty())return;if(null==(null===(e=this._source.ownerSource())||void 0===e?void 0:e.firstValue()))return;const i=this._points[0],l=this._points[1],d=i.subtract(l).length();this._levels=[];const h=this._source.properties().childs(),c=this._source.levelsCount();for(let e=1;e<=c;e++){const t="level"+e,s=this._source.properties().child(t).childs();if(!s.visible.value())continue;const a=s.coeff.value(),o=s.color.value(),h=l.subtract(i).length()*a,c=(0,r.sign)(l.y-i.y),u=new n.Point(i.x,i.y+c*d*a);this._levels.push({color:o,radius:h,dir:c,labelPoint:u,linewidth:s.linewidth.value(),linestyle:s.linestyle.value(),index:e})}if(this._points.length<2)return;const p=new a.CompositeRenderer,_=h.fillBackground.value(),g=h.transparency.value();for(let e=0;e0?this._levels[e-1].radius:void 0},r=new s.HitTestResult(s.HitTestResult.MOVEPOINT,void 0,t.index);p.append(new u(n,r));const a=this._updateLabelForLevel({i:e,levelIndex:this._levels[e].index,leftPoint:this._levels[e].labelPoint,rightPoint:this._levels[e].labelPoint,price:0,color:this._levels[e].color,horzAlign:"left",vertAlign:"middle"});null!==a&&p.append(a)}const f=h.trendline.childs();if(f.visible.value()){const e={points:[this._points[0],this._points[1]],color:f.color.value(),linewidth:f.linewidth.value(),linestyle:f.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._trendLineRenderer.setData(e),p.append(this._trendLineRenderer)}this.addAnchors(p),this._renderer=p}}},83305:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FibSpeedResistanceFanPaneView:()=>_});var n=i(50151),r=i(86441),s=i(34657),a=i(14888),o=i(30967),l=i(29639),d=i(85113),h=i(44381),c=i(9933),u=i(4754),p=i(17364);class _ extends u.LineSourcePaneView{constructor(){super(...arguments),this._numericFormatter=new s.NumericFormatter,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._source.points().length<2)return;const e=this._source.priceScale(),t=(0,n.ensureNotNull)(this._source.ownerSource()).firstValue();if(null===t||!e||e.isEmpty()||this._model.timeScale().isEmpty())return;if(this._points.length<2)return ;const i=this._source.points()[0],s=this._source.points()[1],u=this._source.properties().childs(),_=u.reverse.value(),g=[],f=_?s.price-i.price:i.price-s.price,v=_?i.price:s.price;for(let i=1;i<=7;i++){const n="hlevel"+i,r=this._source.properties().child(n).childs();if(!r.visible.value())continue;const s=r.coeff.value(),a=r.color.value(),o=v+s*f,l=e.priceToCoordinate(o,t);g.push({coeff:s,color:a,y:l,index:i})}const x=[],m=_?s.index-i.index:i.index-s.index,R=_?i.index:s.index;for(let e=1;e<=7;e++){const t="vlevel"+e,i=this._source.properties().child(t).childs();if(!i.visible.value())continue;const n=i.coeff.value(),r=i.color.value(),s=Math.round(R+n*m),a=this._model.timeScale().indexToCoordinate(s);x.push({coeff:n,color:r,x:a,index:e})}const w=new l.CompositeRenderer,y=this._points[0],T=this._points[1],b=Math.min(y.x,T.x),L=Math.min(y.y,T.y),P=Math.max(y.x,T.x),S=Math.max(y.y,T.y),C=u.grid.childs().color.value(),M=u.grid.childs().linewidth.value(),I=u.grid.childs().linestyle.value();for(let e=0;e0&&N){const i={p1:y,p2:t,p3:y,p4:new r.Point(T.x,g[e-1].y),color:g[e].color,transparency:A,hittestOnBackground:!0,extendLeft:!1},n=new o.ChannelRenderer;n.setData(i),w.append(n)}{const i={points:[y,t],color:g[e].color,linewidth:u.linewidth.value(),linestyle:u.linestyle.value(),extendleft:!1,extendright:!0,leftend:d.LineEnd.Normal, rightend:d.LineEnd.Normal},n=new c.TrendLineRenderer;n.setData(i),n.setHitTest(new a.HitTestResult(a.HitTestResult.MOVEPOINT,void 0,{type:"h",index:g[e].index})),w.append(n)}}for(let e=0;e0&&N){const i={p1:y,p2:t,p3:y,p4:new r.Point(x[e-1].x,T.y),color:x[e].color,transparency:A,hittestOnBackground:!0,extendLeft:!1},n=new o.ChannelRenderer;n.setData(i),w.append(n)}{const i={points:[y,t],color:x[e].color,linewidth:u.linewidth.value(),linestyle:u.linestyle.value(),extendleft:!1,extendright:!0,leftend:d.LineEnd.Normal,rightend:d.LineEnd.Normal},n=new c.TrendLineRenderer;n.setData(i),n.setHitTest(new a.HitTestResult(a.HitTestResult.MOVEPOINT,void 0,{type:"v",index:x[e].index})),w.append(n)}}this.addAnchors(w),this._renderer=w}}},66395:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FibSpiralPaneView:()=>p});var n=i(29639),r=i(85113),s=i(9933),a=i(4754),o=i(14888),l=i(9740),d=i(55014),h=i(86216);const c=[0,1,2,3,5,8,13,21,34,55,89];class u extends h.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e){if(null===this._data||this._data.points.length<2)return null;const t=this._data.points[0],i=this._data.points[1].subtract(t),n=e.subtract(t),r=i.normalized(),s=r.transposed(),a=n.normalized();let l=Math.acos(r.dotProduct(a));Math.asin(s.dotProduct(a))<0&&(l=2*Math.PI-l);const h=this._data.counterclockwise?-1:1,c=n.length(),u=(0,d.interactionTolerance)().curve;for(let e=0;e<4;e++){const t=h*l/(.5*Math.PI);let n=this._continiusFib(t+4*e);if(null!==n&&(n=n*i.length()/5,Math.abs(n-c)=c.length)return null;let n=e-t;n=Math.pow(n,1.15);return c[t]+(c[i]-c[t])*n}}class p extends a.LineSourcePaneView{constructor(){super(...arguments),this._trendLineRenderer=new s.TrendLineRenderer,this._spiralRenderer=new u,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const e=new n.CompositeRenderer,t=this._source.properties().childs();{const i={points:[this._points[0],this._points[1]],color:t.linecolor.value(),linewidth:t.linewidth.value(),linestyle:t.linestyle.value(),extendleft:!1,extendright:!0, leftend:r.LineEnd.Normal,rightend:r.LineEnd.Normal};this._trendLineRenderer.setData(i),e.append(this._trendLineRenderer)}{const i={points:this._points,color:t.linecolor.value(),linewidth:t.linewidth.value(),linestyle:t.linestyle.value(),counterclockwise:t.counterclockwise.value()};this._spiralRenderer.setData(i),e.append(this._spiralRenderer)}this.addAnchors(e),this._renderer=e}}},44041:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FibTimeZonePaneView:()=>p});var n=i(86441),r=i(6612),s=i(44381),a=i(26740),o=i(9933),l=i(14888),d=i(29639),h=i(85113),c=i(17364),u=i(4754);class p extends u.LineSourcePaneView{constructor(e,t){super(e,t),this._levels=[],this._trendRenderer=new o.TrendLineRenderer,this._renderer=new d.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;if(super._updateImpl(),this._renderer.clear(),this._source.points().length<1)return;const o=this._model.timeScale();if(o.isEmpty())return;const[d,u]=this._source.points(),p=this._source.properties().childs(),_=d.index;if(null===o.visibleBarsStrictRange())return;this._levels=[];const g=u?u.index-d.index:1;for(let e=1;e<=11;e++){const t=p["level"+e].childs();if(!t.visible.value())continue;const i=Math.round(_+t.coeff.value()*g),n={index:e,x:o.indexToCoordinate(i),color:t.color.value(),width:t.linewidth.value(),style:t.linestyle.value(),text:String(t.coeff.value())};this._levels.push(n)}if(p.fillBackground.value()){const t=p.transparency.value();for(let i=1;i0&&this._renderer.append(this.createLineAnchor({points:[new n.Point(this._points[0].x,e/2)],hittestResult:l.HitTestResult.MOVEPOINT},0))}_needLabelExclusionPath(e){return"center"===this._source.properties().childs().horzLabelsAlign.value()}}},39484:(e,t,i)=>{"use strict";const{LineToolPaneViewFibWithLabels:n}=i(45306);var r=i(86441).Point,s=i(9933).TrendLineRenderer,a=i(14888).HitTestResult,o=i(29639).CompositeRenderer,l=i(56456).ArcWedgeRenderer,d=i(85113).LineEnd;t.FibWedgePaneView=class extends n{constructor(e,t){super(e,t),this._levels=[],this._baseTrendRenderer=new s,this._edgeTrendRenderer=new s,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._levels=[],this._points.length<3)this._updateRenderer();else{var e=this._points,t=e[0],i=e[1],n=e[2],s=i.subtract(t).normalized(),a=n.subtract(t).normalized(),o=new r(1,0),l=new r(0,1),d=Math.acos(s.dotProduct(o));s.dotProduct(l)<0&&(d=2*Math.PI-d),this._edge1=d;var h=Math.acos(a.dotProduct(o));a.dotProduct(l)<0&&(h=2*Math.PI-h),this._edge2=h,dMath.PI&&(this._edge1=Math.min(d,h),this._edge2=Math.max(d,h)-2*Math.PI);for(var c=this._source.properties(),u=1;u<=this._source.levelsCount();u++){var p=c["level"+u];if(p.visible.value()){var _=p.coeff.value(),g=p.color.value(),f=i.subtract(t).length()*_,v=s.add(a).scaled(.5).normalized().scaled(f),x=t.add(v);this._levels.push({coeff:_,color:g,radius:f,labelPoint:x,p1:t.add(s.scaled(f)),p2:t.add(a.scaled(f)),linewidth:p.linewidth.value(),linestyle:p.linestyle.value(),index:u})}}this._points.length<2||this._updateRenderer()}}_updateRenderer(){if(!((v=this._points).length<2)){var e=new o,t=this._source.properties(),i=v[0],n=v[1],r={points:[i,n],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:t.trendline.color.value(),linewidth:t.trendline.visible.value()?t.trendline.linewidth.value():0,linestyle:t.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:d.Normal,rightend:d.Normal};if(this._baseTrendRenderer.setData(r),e.append(this._baseTrendRenderer),v.length<3)return this.addAnchors(e),void(this._renderer=e);var s=v[2],h=s.data,c=n.subtract(i).length(),u=s.subtract(i).normalized();(s=i.add(u.scaled(c))).data=h,r={points:[i,s],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:t.trendline.color.value(),linewidth:t.trendline.visible.value()?t.trendline.linewidth.value():0,linestyle:t.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:d.Normal,rightend:d.Normal},this._edgeTrendRenderer.setData(r),e.append(this._edgeTrendRenderer);for(var p=this._levels.length-1;p>=0;p--){var _=this._levels[p],g={};g.center=this._points[0],g.radius=_.radius,g.prevRadius=p>0?this._levels[p-1].radius:0,g.edge=this._edge,g.color=_.color, g.linewidth=_.linewidth,g.edge1=this._edge1,g.edge2=this._edge2,g.p1=_.p1,g.p2=_.p2,g.fillBackground=t.fillBackground.value(),g.transparency=t.transparency.value();var f=new l;f.setData(g),f.setHitTest(new a(a.MOVEPOINT,null,_.index)),e.append(f);const i=this._updateLabelForLevel({i:p,levelIndex:_.index,color:_.color,leftPoint:_.labelPoint,rightPoint:_.labelPoint,price:0,horzAlign:"left",vertAlign:"middle"});null!==i&&e.append(i)}var v=[i,n];this._model.lineBeingCreated()!==this._source&&v.push(s),e.append(this.createLineAnchor({points:v},0)),this._renderer=e}}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}}},52429:(e,t,i)=>{"use strict";i.r(t),i.d(t,{FlagMarkPaneView:()=>c});var n=i(4754),r=i(29639),s=i(53074),a=i(14888),o=i(34026),l=i(9740),d=i(86216);class h extends d.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e){if(null===this._data)return null;const{x:t,y:i}=this._data.point;return e.xt+20||e.yi?null:new a.HitTestResult(a.HitTestResult.MOVEPOINT)}doesIntersectWithBox(e){return null!==this._data&&(0,o.pointInBox)(this._data.point,e)}_drawImpl(e){if(null===this._data)return;const t=e.context;t.translate(Math.round(this._data.point.x)-.5,Math.round(this._data.point.y-22)-.5),t.fillStyle="#434651",(0,l.drawRoundRect)(t,0,0,2,22,1),t.fill(),t.fillStyle=this._data.color,t.beginPath(),t.moveTo(6.87,0),t.bezierCurveTo(5.62,0,4.46,.23,3.32,.69),t.bezierCurveTo(3.26,.71,3.2,.75,3.15,.8),t.bezierCurveTo(3.06,.89,3,1.02,3,1.16),t.lineTo(3,1.19),t.lineTo(3,12.5),t.bezierCurveTo(3,12.8,3.3,13.02,3.59,12.93),t.bezierCurveTo(4.61,12.64,5.94,12.44,6.87,12.44),t.bezierCurveTo(8.5,12.44,10.09,12.83,11.63,13.21),t.bezierCurveTo(13.19,13.6,14.79,14,16.45,14),t.bezierCurveTo(17.59,14,18.65,13.81,19.69,13.43),t.bezierCurveTo(19.88,13.36,20,13.18,20,12.98),t.lineTo(20,1.19),t.bezierCurveTo(20,1.06,19.83,.93,19.66,.99),t.bezierCurveTo(18.63,1.38,17.58,1.56,16.45,1.56),t.bezierCurveTo(14.82,1.56,13.23,1.17,11.69,.79),t.bezierCurveTo(10.14,.4,8.53,0,6.87,0),t.closePath(),t.fill()}}class c extends n.LineSourcePaneView{constructor(){super(...arguments),this._flagMarkRenderer=new h,this._renderer=null,this._anchorsOffset=null}setAnchors(e){this._anchorsOffset=e}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,1!==this._points.length)return;this._flagMarkRenderer.setData({point:this._points[0],color:this._getSource().properties().childs().flagColor.value()});const e=this._getModel();this._renderer=new r.CompositeRenderer,this._renderer.append(this._flagMarkRenderer);const t=[this._anchorsOffset?this._points[0].add(this._anchorsOffset):this._points[0].clone()];this._renderer.append(new s.SelectionRenderer({points:t,bgColors:this._lineAnchorColors(t),visible:this.areAnchorsVisible(),barSpacing:e.timeScale().barSpacing(),hittestResult:a.HitTestResult.MOVEPOINT}))}}},98404:(e,t,i)=>{"use strict" ;var n=i(4112).DisjointChannelRenderer,r=i(9933).TrendLineRenderer,s=i(44381).TextRenderer,a=i(29639).CompositeRenderer,o=i(17364),l=i(20575).AlertableLineSourcePaneView;t.FlatBottomPaneView=class extends l{constructor(e,t){super(e,t),this._label1=null,this._label2=null,this._trendLineRendererPoints12=new r,this._trendLineRendererPoints43=new r,this._disjointChannelRenderer=new n,this._p1LabelRenderer=new s,this._p2LabelRenderer=new s,this._p3LabelRenderer=new s,this._p4LabelRenderer=new s,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._label1=null,this._label2=null,!(this._source.points().length<2)&&this._source.priceScale()){var e=this._source.points()[0],t=this._source.points()[1],i=this._source.ownerSource().firstValue();if(this._price1=this._source.priceScale().formatPrice(e.price,i),this._price2=this._source.priceScale().formatPrice(t.price,i),3===this._source.points().length){var n=this._source.points()[2];this._price3=this._source.priceScale().formatPrice(n.price,i)}if(!(this._points.length<2)){var r,s=new a,l=(e=this._points[0],t=this._points[1],this._source.properties()),d=this._model,h=this._source;if(3===this._points.length&&((n=this._points[2]).x=t.x,(r=e.clone()).y=n.y,r.data=3,l.fillBackground.value())){var c=d.timeScale().width(),u=h.priceScale().height(),p=l.extendLeft.value(),_=l.extendRight.value();this._disjointChannelRenderer.setData({width:c,height:u,extendleft:p,extendright:_,points:[e,t,n,r],backcolor:l.backgroundColor.value(),transparency:l.transparency.value(),hittestOnBackground:TradingView.isMobile.any()}),s.append(this._disjointChannelRenderer)}var g=function(e,t){return{points:[e,t],width:d.timeScale().width(),height:h.priceScale().height(),color:l.linecolor.value(),linewidth:l.linewidth.value(),linestyle:l.linestyle.value(),extendleft:l.extendLeft.value(),extendright:l.extendRight.value(),leftend:l.leftEnd.value(),rightend:l.rightEnd.value()}};if(this._trendLineRendererPoints12.setData(g(e,t)),s.append(this._trendLineRendererPoints12),2===this._points.length)return this.addAnchors(s),void(this._renderer=s);var f=this,v=function(e,t,i,n,r,a){if(f._source.properties().showPrices.value()){var l={points:[i],text:r,color:f._source.properties().textcolor.value(),horzAlign:i.x>n.x?"left":"right",vertAlign:"middle",font:o.CHART_FONT_FAMILY,offsetX:6,offsetY:0,boxPadding:0,bold:f._source.properties().bold.value(),italic:f._source.properties().italic.value(),fontsize:f._source.properties().fontsize.value(),forceTextAlign:!0};e.setData(l),s.append(e);l={points:[n],text:a,color:f._source.properties().textcolor.value(),horzAlign:i.x{"use strict";i.d(t,{GannArcRenderer:()=>o});var n=i(86441),r=i(38031),s=i(14888),a=i(86216);class o extends a.MediaCoordinatesPaneRenderer{constructor(){super(),this._data=null}setData(e){this._data=e}hitTest(e){if(null===this._data)return null;e=e.subtract(this._data.center);const t=this._data.edge.subtract(this._data.center),i=t.y/t.x;e=new n.Point(e.x,e.y/i);let r=this._data.point.subtract(this._data.center);r=new n.Point(r.x,r.y/i);const a=r.length(),o=e.length();let l=this._data.prevPoint.subtract(this._data.center);l=new n.Point(l.x,l.y/i);const d=l.length();return Math.abs(o-a)<5&&t.x*e.x>=0&&t.y*e.y>=0?new s.HitTestResult(s.HitTestResult.MOVEPOINT):this._data.fillBack&&o>=d&&o<=a&&t.x*e.x>=0&&t.y*e.y>=0?new s.HitTestResult(s.HitTestResult.MOVEPOINT_BACKGROUND):null}_drawImpl(e){if(null===this._data)return;const t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,t.translate(this._data.center.x,this._data.center.y);const i=this._data.edge.subtract(this._data.center),s=i.y/i.x;let a=this._data.point.subtract(this._data.center);a=new n.Point(a.x,a.y/s);let o=a.length(),l=this._data.prevPoint.subtract(this._data.center);l=new n.Point(l.x,l.y/s);let d=l.length();t.scale(1,s);const h=Math.abs(this._data.edge.x-this._data.center.x);if(Math.abs(o)>h){const e=Math.sign(this._data.edge.x-this._data.center.x)*h;t.rect(0,0,e,e),t.clip()}this._data.fillBack&&(this._data.point.xthis._data.center.x?t.arc(0,0,Math.abs(o),0,Math.PI/2,!1):t.arc(0,0,Math.abs(o),-Math.PI/2,-Math.PI,!0),t.scale(1,1/s),t.stroke()}}},82528:(e,t,i)=>{"use strict";i.r(t),i.d(t,{GannComplexPaneView:()=>u});var n=i(86441),r=i(4754),s=i(9933),a=i(44381),o=i(29639),l=i(85113),d=i(53479),h=i(94122),c=i(80142);class u extends r.LineSourcePaneView{constructor(e,t){super(e,t),this._verticalLevelsRenderers=[],this._horizontalLevelsRenderers=[],this._fanRenderers=[],this._arcRenderers=[],this._priceDiffTextRenderer=new a.TextRenderer,this._indexDiffTextRenderer=new a.TextRenderer,this._ratioTextRenderer=new a.TextRenderer,this._renderer=null,this._initRenderers()}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const e=new o.CompositeRenderer,t=this._getPoints();if(t.length<2)return this.addAnchors(e),void(this._renderer=e);let[i,n]=t;const r=this._getSource(),s=r.isReversed();s&&([n,i]=t) ;const a=n.x-i.x,l=n.y-i.y,d=i,h=n,c=this._getModel(),u={barsCoordsRange:a,priceCoordsRange:l,startPoint:d,endPoint:h,p1:i,p2:n,isLabelsVisible:r.isLabelsVisible(),reversed:s};this._prepareLevels(e,u),this._prepareFanLines(e,u),this._prepareArcs(e,u),this._prepareLabels(e,u);const p=[i,n];c.lineBeingCreated()===r&&p.pop(),e.append(this.createLineAnchor({points:p},0)),this._renderer=e}_initRenderers(){const e=this._getSource(),t=e.levelsCount();for(let e=0;ec){u=s.x;const e=c/h;p=r.y+e*o}else{p=s.y;const e=h/c;u=r.x+e*a}const _={points:[i,new n.Point(u,p)],color:t.color,linewidth:t.width,linestyle:d.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal},g=this._fanRenderers[t.index];g.setData(_),e.append(g)}}_prepareArcs(e,t){const{p1:i,startPoint:r,endPoint:s,barsCoordsRange:a,priceCoordsRange:o}=t;let l=i;const d=this._getSource(),h=d.isArcsBackgroundFilled(),c=d.arcsBackgroundTransparency(),u=d.arcs();for(const t of u){if(!t.visible)continue;const i=t.x/5,d=t.y/5,u=r.x+i*a,p=r.y+d*o,_={center:r,point:new n.Point(u,p),edge:s,color:t.color,linewidth:t.width,fillBack:h,transparency:c,prevPoint:l},g=this._arcRenderers[t.index];g.setData(_),e.append(g),l=_.point}}_prepareLabels(e,t){const{p1:i,p2:r,isLabelsVisible:s,reversed:a}=t;if(!s)return;const o=this._getSource(),l=o.ownerSource();let d=o.getPriceDiff(),h=o.getIndexDiff();if(null===d||null===h||null===l)return;a&&(d=-d,h=-h);const u=new n.Point(i.x,r.y),p=(0,c.forceLTRStr)(l.formatter().format(d)),_=this._getLabelData(u,p);_.horzAlign=h>0?"right":"left",_.vertAlign=d>0?"bottom":"top",_.offsetX=10,_.offsetY=d>0?8:10,_.forceTextAlign=!0,this._priceDiffTextRenderer.setData(_),e.append(this._priceDiffTextRenderer);const g=new n.Point(r.x,i.y),f=(0,c.forceLTRStr)(h.toString()),v=this._getLabelData(g,f) ;v.horzAlign=h>0?"left":"right",v.vertAlign=d>0?"top":"bottom",v.offsetX=10,v.offsetY=d>0?10:8,v.forceTextAlign=!0,this._indexDiffTextRenderer.setData(v),e.append(this._indexDiffTextRenderer);const x=o.getScaleRatio();if(null===x)return;const m=o.getScaleRatioFormatter(),R=(0,c.forceLTRStr)(m.format(x)),w=this._getLabelData(r,R);w.horzAlign=h>0?"left":"right",w.vertAlign=d>0?"bottom":"top",w.offsetX=10,w.offsetY=d>0?8:10,w.forceTextAlign=!0,this._ratioTextRenderer.setData(w),e.append(this._ratioTextRenderer)}_getLabelData(e,t){const i=this._getSource(),{textColor:n,font:r,fontSize:s,bold:a,italic:o}=i.getLabelsStyle();return{points:[e],backgroundColor:"transparent",text:t,font:r,bold:a,italic:o,fontsize:s,color:n,vertAlign:"top",horzAlign:"center",offsetX:0,offsetY:0,backgroundRoundRect:4}}}},15592:(e,t,i)=>{"use strict";i.r(t),i.d(t,{GannFanPaneView:()=>u});var n=i(86441),r=i(14888),s=i(30967),a=i(29639),o=i(85113),l=i(44381),d=i(9933),h=i(4754),c=i(17364);class u extends h.LineSourcePaneView{constructor(){super(...arguments),this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._source.points().length<2)return;const e=this._source.priceScale();if(!e||e.isEmpty()||this._model.timeScale().isEmpty())return;if(this._points.length<2)return;const t=this._points[0],i=this._points[1],h=[],u=i.x-t.x,p=i.y-t.y,_=this._source.properties().childs();for(let e=1;e<=9;e++){const n="level"+e,r=this._source.properties().child(n).childs();if(!r.visible.value())continue;const s=r.coeff1.value(),a=r.coeff2.value(),o=s/a,l=r.color.value(),d=s+"/"+a;let c,_;s>a?(c=i.x,_=t.y+p/o):(c=t.x+u*o,_=i.y),h.push({label:d,color:l,x:c,y:_,linewidth:r.linewidth.value(),linestyle:r.linestyle.value(),index:e})}const g=new a.CompositeRenderer,f=_.fillBackground.value(),v=_.transparency.value();for(let e=0;e4&&e>0){const r={p1:t,p2:i,p3:t,p4:new n.Point(h[e-1].x,h[e-1].y),color:h[e].color,transparency:v,hittestOnBackground:!0,extendLeft:!1},a=new s.ChannelRenderer;a.setData(r),g.append(a)}{const n={points:[t,i],color:h[e].color,linewidth:h[e].linewidth,linestyle:h[e].linestyle,extendleft:!1,extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},s=new d.TrendLineRenderer;s.setData(n),s.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,h[e].index)),g.append(s)}if(_.showLabels.value()){const t={points:[i],text:h[e].label,color:h[e].color,vertAlign:"middle",horzAlign:"left",font:c.CHART_FONT_FAMILY,offsetX:0,offsetY:5,fontsize:12};g.append(new l.TextRenderer(t))}}this.addAnchors(g),this._renderer=g}}},80934:(e,t,i)=>{"use strict";i.r(t),i.d(t,{GannFixedPaneView:()=>h});var n=i(86441),r=i(4754),s=i(9933),a=i(29639),o=i(85113),l=i(53479),d=i(94122) ;class h extends r.LineSourcePaneView{constructor(e,t){super(e,t),this._verticalLevelsRenderers=[],this._horizontalLevelsRenderers=[],this._fanRenderers=[],this._arcRenderers=[],this._renderer=null,this._initRenderers()}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const e=this._getSource(),t=this._getPoints(),i=e.getScreenPoints();if(t.length<2||i.length<2)return;const[n,r]=i;t[1]=n,t[1].data=1,t[2]=r;const s=this._getPoints(),o=new a.CompositeRenderer;if(s.length<2)return this.addAnchors(o),void(this._renderer=o);const l=s[0],d=3===s.length?s[2]:s[1],h=d.x-l.x,c=d.y-l.y,u=l,p=d,_=this._getModel(),g={barsCoordsRange:h,priceCoordsRange:c,startPoint:u,endPoint:p,p1:l,p2:d};this._prepareLevels(o,g),this._prepareFanLines(o,g),this._prepareArcs(o,g);const f=[l,s[1]];_.lineBeingCreated()===e&&f.pop(),o.append(this.createLineAnchor({points:f},0)),this._renderer=o}_initRenderers(){const e=this._getSource(),t=e.levelsCount();for(let e=0;ec){u=s.x;const e=c/h;p=r.y+e*d}else{p=s.y;const e=h/c;u=r.x+e*a}const _={points:[i,new n.Point(u,p)],color:t.color,linewidth:t.width,linestyle:l.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},g=this._fanRenderers[t.index];g.setData(_),e.append(g)}}_prepareArcs(e,t){const{p1:i,startPoint:r,endPoint:s,barsCoordsRange:a,priceCoordsRange:o}=t;let l=i;const d=this._getSource(),h=d.isArcsBackgroundFilled(),c=d.arcsBackgroundTransparency(),u=d.arcs();for(const t of u){if(!t.visible)continue;const i=t.x/5,d=t.y/5,u=r.x+i*a,p=r.y+d*o,_={center:r,point:new n.Point(u,p),edge:s,color:t.color,linewidth:t.width,fillBack:h,transparency:c,prevPoint:l},g=this._arcRenderers[t.index];g.setData(_),e.append(g),l=_.point}}}},1498:(e,t,i)=>{"use strict" ;var n=i(86441).Point,r=i(4754).LineSourcePaneView,s=i(44381).TextRenderer,a=i(26740).RectangleRenderer,o=i(9933).TrendLineRenderer,l=i(29639).CompositeRenderer,d=i(34657).NumericFormatter,h=i(85113).LineEnd,c=i(17364);t.GannSquarePaneView=class extends r{constructor(e,t){super(e,t),this._numericFormatter=new d,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,!(this._source.points().length<2)&&this._source.priceScale()&&!this._source.priceScale().isEmpty()&&!this._model.timeScale().isEmpty()){var e=this._source.points()[0],t=this._source.points()[1],i=(C=this._source.properties()).reverse&&C.reverse.value();this._hlevels=[];for(var r=i?e.price-t.price:t.price-e.price,d=i?t.price:e.price,u=this._source.ownerSource().firstValue(),p=1;p<=7;p++){if((R=C["hlevel"+p]).visible.value()){var _=R.coeff.value(),g=R.color.value(),f=d+_*r,v=this._source.priceScale().priceToCoordinate(f,u);this._hlevels.push({coeff:_,color:g,y:v})}}this._vlevels=[];var x=i?e.index-t.index:t.index-e.index,m=i?t.index:e.index;for(p=1;p<=7;p++){var R;if((R=C["vlevel"+p]).visible.value()){_=R.coeff.value(),g=R.color.value();var w=Math.round(m+_*x),y=this._model.timeScale().indexToCoordinate(w);this._vlevels.push({coeff:_,color:g,x:y})}}if(this._hfans=[],this._vfans=[],C.fans.visible.value())for(p=1;p<=7;p++){w=Math.round(m+C["hlevel"+p].coeff.value()*x),f=d+C["vlevel"+p].coeff.value()*r;this._hfans.push(this._model.timeScale().indexToCoordinate(w)),this._vfans.push(this._source.priceScale().priceToCoordinate(f,u))}var T=new l;if(this._points.length<2)return this.addAnchors(T),void(this._renderer=T);e=this._points[0],t=this._points[1];var b=Math.min(e.x,t.x),L=Math.min(e.y,t.y),P=Math.max(e.x,t.x),S=Math.max(e.y,t.y),C=this._source.properties(),M=this._source.properties().fillHorzBackground.value(),I=this._source.properties().horzTransparency.value(),N=this._source.properties().fillVertBackground.value(),A=this._source.properties().vertTransparency.value();for(p=0;p0&&M){var k=this._hlevels[p-1];e=new n(b,this._hlevels[p].y),t=new n(P,k.y);(z={}).points=[e,t],z.color=this._hlevels[p].color,z.linewidth=0,z.backcolor=this._hlevels[p].color,z.fillBackground=!0,z.transparency=I,z.extendLeft=!1,z.extendRight=!1,(H=new a(void 0,void 0,!0)).setData(z),T.append(H)}var D={points:[e=new n(b,this._hlevels[p].y),t=new n(P,this._hlevels[p].y)],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:this._hlevels[p].color,linewidth:C.linewidth.value(),linestyle:C.linestyle.value(),extendleft:!1,extendright:!1,leftend:h.Normal,rightend:h.Normal};if((H=new o).setData(D),T.append(H),C.showLeftLabels.value()){var E={points:[e],text:this._numericFormatter.format(this._hlevels[p].coeff),color:this._hlevels[p].color,vertAlign:"middle",horzAlign:"right",font:c.CHART_FONT_FAMILY,offsetX:5,offsetY:0,fontsize:12,forceTextAlign:!0};T.append(new s(E))}if(C.showRightLabels.value()){var B={points:[t], text:this._numericFormatter.format(this._hlevels[p].coeff),color:this._hlevels[p].color,vertAlign:"middle",horzAlign:"left",font:c.CHART_FONT_FAMILY,offsetX:5,offsetY:0,fontsize:12};T.append(new s(B))}}for(p=0;p0&&N){k=this._vlevels[p-1];var z,O=new n(k.x,L);(z={}).points=[O,t],z.color=this._vlevels[p].color,z.linewidth=0,z.backcolor=this._vlevels[p].color,z.fillBackground=!0,z.transparency=A,z.extendLeft=!1,z.extendRight=!1,(H=new a(void 0,void 0,!0)).setData(z),T.append(H)}var H;D={points:[e,t],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:this._vlevels[p].color,linewidth:C.linewidth.value(),linestyle:C.linestyle.value(),extendleft:!1,extendright:!1,leftend:h.Normal,rightend:h.Normal};if((H=new o).setData(D),T.append(H),C.showTopLabels.value()){var V={points:[e],text:this._numericFormatter.format(this._vlevels[p].coeff),color:this._vlevels[p].color,vertAlign:"bottom",horzAlign:"center",font:c.CHART_FONT_FAMILY,offsetX:0,offsetY:3,fontsize:12};T.append(new s(V))}if(C.showBottomLabels.value()){var W={points:[t],text:this._numericFormatter.format(this._vlevels[p].coeff),color:this._vlevels[p].color,vertAlign:"top",horzAlign:"center",font:c.CHART_FONT_FAMILY,offsetX:0,offsetY:5,fontsize:12};T.append(new s(W))}}var F=this;U(T,this._hfans,!0),U(T,this._vfans,!1);var Y=new n(this._points[0].x,this._points[1].y);Y.data=2;var j=new n(this._points[1].x,this._points[0].y);j.data=3,T.append(this.createLineAnchor({points:[...this._points,Y,j]},0)),this._renderer=T}function U(e,t,i){var r=new n(b,L),s=new n(P,L),a=new n(b,S),l=new n(P,S),d={width:F._model.timeScale().width(),height:F._source.priceScale().height(),color:C.fans.color.value(),linewidth:C.linewidth.value(),linestyle:C.linestyle.value(),extendleft:!1,extendright:!1,leftend:h.Normal,rightend:h.Normal};function c(t){var i=new o;i.setData(Object.assign({},d,{points:t})),e.append(i)}for(var u=0;u{"use strict";i.r(t),i.d(t,{GhostFeedPaneView:()=>_});var n=i(7394),r=i(53479),s=i(65665),a=i(14888),o=i(29639),l=i(55014),d=i(85113),h=i(9933),c=i(59386),u=i(4754);const p=n.colorsPalette["color-cold-gray-500"];class _ extends u.LineSourcePaneView{constructor(){super(...arguments),this._renderer=null,this._segments=[]}renderer(){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){var e,t;super._updateImpl(),this._renderer=null,this._segments=[];const i=this._source.priceScale(),n=null!==(t=null===(e=this._source.ownerSource())||void 0===e?void 0:e.firstValue())&&void 0!==t?t:null;if(this._points.length<2||null===i||i.isEmpty()||null===n)return;const u=this._source.points(),_=this._source.properties().childs(),g=_.candleStyle.childs();this._segments=this._source.segments().map(((e,t)=>{if(t>=this._points.length-1)return null ;const r=this._points[t].x,s=u[t].price,a=u[t+1].price,o=i.priceToCoordinate(s,n),l=i.priceToCoordinate(a,n),d=u[t+1].index-u[t].index,h=this._model.timeScale().barSpacing()*Math.sign(d),c=(l-o)/(e.bars().length-1),p=g.upColor.value(),_=g.downColor.value(),f=g.borderUpColor.value(),v=g.borderDownColor.value();return{bars:e.bars().map(((e,t)=>{const s=o+t*c,a=i.coordinateToPrice(s,n),l=e.c>=e.o;return{time:r+t*h,exactTime:r+t*h,open:i.priceToCoordinate(a+e.o,n),high:i.priceToCoordinate(a+e.h,n),low:i.priceToCoordinate(a+e.l,n),close:i.priceToCoordinate(a+e.c,n),color:l?p:_,borderColor:l?f:v,hollow:!1}}))}})).filter(s.notNull);const f=new o.CompositeRenderer;for(let e=1;e{"use strict";i.r(t),i.d(t,{LineToolHeadAndShouldersPaneView:()=>g});var n=i(5531),r=i(44352),s=i(53479),a=i(9933),o=i(66467),l=i(44381),d=i(29639),h=i(85113),c=i(98930),u=i(4754),p=i(17364);const _={leftShoulder:r.t(null,void 0,i(68589)),rightShoulder:r.t(null,void 0,i(78934)),head:r.t(null,void 0,i(63706))};class g extends u.LineSourcePaneView{constructor(){super(...arguments),this._trendLineRenderer=new a.TrendLineRenderer,this._triangleRendererPoints234=new o.TriangleRenderer,this._intersect1Renderer=new o.TriangleRenderer,this._intersect2Renderer=new o.TriangleRenderer,this._polyLineRenderer=new c.PolygonRenderer,this._leftShoulderLabelRenderer=new l.TextRenderer,this._headLabelRenderer=new l.TextRenderer,this._rightShoulderLabelRenderer=new l.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){let e,t;super._updateImpl(),this._renderer=null;const[i,r,a,o,l,c,u]=this._points;if(this._points.length>=5){const s=(0,n.intersectLineSegments)(a,l,i,r);if(null!==s){const t=l.subtract(a);e=a.add(t.scaled(s))}if(7===this._points.length){const e=(0,n.intersectLineSegments)(a,l,c,u);if(null!==e){const i=l.subtract(a);t=a.add(i.scaled(e))}}}if(this._points.length<2)return;const g=this._source.properties().childs(),f=new d.CompositeRenderer,v=(e,t)=>({points:[e],text:t,color:g.textcolor.value(),horzAlign:"center",vertAlign:"middle",font:p.CHART_FONT_FAMILY,offsetX:0,offsetY:0,bold:g.bold&&g.bold.value(), italic:g.italic&&g.italic.value(),fontsize:g.fontsize.value(),backgroundColor:g.color.value(),backgroundRoundRect:4}),x=(e,t,i)=>({points:[e,t,i],color:"rgba(0, 0, 0, 0)",linewidth:0,backcolor:g.backgroundColor.value(),fillBackground:g.fillBackground.value(),transparency:g.transparency.value()}),m={points:this._points,color:g.color.value(),linewidth:g.linewidth.value(),linestyle:s.LINESTYLE_SOLID,backcolor:"rgba(0, 0, 0, 0)",fillBackground:!1,filled:!1};if(this._polyLineRenderer.setData(m),f.append(this._polyLineRenderer),this._points.length>=5){let i,n,r=!1,d=!1;e?i=e:(i=a,r=!0),t?n=t:(n=l,d=!0);const c={points:[i,n],color:g.color.value(),linewidth:g.linewidth.value(),linestyle:s.LINESTYLE_DOTTED,extendleft:!1,extendright:!1,leftend:h.LineEnd.Normal,rightend:h.LineEnd.Normal};c.extendleft=r,c.extendright=d,this._trendLineRenderer.setData(c),f.append(this._trendLineRenderer);const u=x(a,o,l);this._triangleRendererPoints234.setData(u),f.append(this._triangleRendererPoints234)}if(e){const t=x(e,r,a);this._intersect1Renderer.setData(t),f.append(this._intersect1Renderer)}if(t){const e=x(l,c,t);this._intersect2Renderer.setData(e),f.append(this._intersect2Renderer)}if(this._points.length>=2){const e=v(r,_.leftShoulder);r.y=4){const e=v(o,_.head);o.y=6){const e=v(c,_.rightShoulder);c.y{"use strict";i.r(t),i.d(t,{HighlighterPaneView:()=>s});var n=i(53479),r=i(52377);class s extends r.BrushBasePaneView{_createPolygonRendererData(){const e=this._source.properties().childs();return{points:this._points,color:e.linecolor.value(),linewidth:20,backcolor:"rgba(0, 0, 0, 0)",fillBackground:!1,linestyle:n.LINESTYLE_SOLID,linecap:"round",linejoin:"round",filled:!1,transparency:e.transparency.value()}}}},15557:(e,t,i)=>{"use strict";i.r(t),i.d(t,{HorzLinePaneView:()=>u});var n=i(86441),r=i(14888),s=i(6947),a=i(44381),o=i(2945),l=i(29639),d=i(17364),h=i(20575);const c=[s.PaneCursorType.VerticalResize];class u extends h.AlertableLineSourcePaneView{constructor(e,t){super(e,t),this._renderer=null,this._labelRenderer=new a.TextRenderer,this._lineRenderer=new o.HorizontalLineRenderer,this._lineRenderer.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT))}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;if(super._updateImpl(e,t),this._renderer=null,0===this._points.length)return;const s=this._source.properties().childs(),o=new l.CompositeRenderer;let h,u=!0;if(s.showLabel.value()&&1===this._points.length&&s.text.value().length>0){ const r=s.vertLabelsAlign.value(),l=s.horzLabelsAlign.value();let c=0,p=0;"left"===l?p=3:"right"===l?(p=this._model.timeScale().width(),c=3):p=this._model.timeScale().width()/2;const _={points:[new n.Point(p,this._points[0].y)],text:s.text.value(),color:s.textcolor.value(),vertAlign:r,horzAlign:l,font:d.CHART_FONT_FAMILY,offsetX:c,offsetY:0,bold:s.bold.value(),italic:s.italic.value(),fontsize:s.fontsize.value(),forceTextAlign:!0};this._labelRenderer.setData(_),o.append(this._labelRenderer),this._needLabelExclusionPath(this._labelRenderer)&&(h=null!==(i=(0,a.getTextBoundaries)(this._labelRenderer,t,e))&&void 0!==i?i:void 0),u=this._labelRenderer.isOutOfScreen(t,e)}const p={y:this._points[0].y,color:s.linecolor.value(),linewidth:s.linewidth.value(),linestyle:s.linestyle.value(),excludeBoundaries:h};this._lineRenderer.setData(p),this._lineRenderer.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,{snappingPrice:this._source.points()[0].price}));const _=p.linewidth/2+1;if(u=u&&(p.y<-_||p.y>e+_),o.append(this._lineRenderer),!u){if(1===this._points.length){const e=new n.Point(t/2,this._points[0].y);e.data=0,e.square=!0,o.append(this.createLineAnchor({points:[e],pointsCursorType:c},0))}if(1===this._points.length){const e=new n.Point(this._model.timeScale().width()/2,this._points[0].y);this._addAlertRenderer(o,[e])}this._renderer=o}}}},64019:(e,t,i)=>{"use strict";i.r(t),i.d(t,{HorzRayPaneView:()=>p});var n=i(86441),r=i(29639),s=i(44381),a=i(17364),o=i(14888),l=i(20575),d=i(9740),h=i(55014),c=i(83499);class u{constructor(){this._data=null,this._data=null}setData(e){this._data=e}draw(e,t){if(null===this._data||0===this._data.points.length)return;const i=t.pixelRatio,n=t.physicalWidth,r=this._data.points[0].y,s=Math.max(0,this._data.points[0].x),a=Math.max(n,this._data.points[0].x);e.lineCap="butt",e.strokeStyle=this._data.color,e.lineWidth=Math.max(1,Math.floor(this._data.linewidth*i)),void 0!==this._data.linestyle&&(0,d.setLineStyle)(e,this._data.linestyle);const o=this._data.excludeBoundaries;void 0!==o&&(e.save(),(0,c.addExclusionArea)(e,t,o)),(0,d.drawHorizontalLine)(e,Math.round(r*i),Math.round(s*i),Math.round(a*i)),void 0!==o&&e.restore()}hitTest(e){if(null===this._data||0===this._data.points.length)return null;if(e.x=t?c=c.add((0,n.point)(e+3,0)):(c=(0,n.point)(t,c.y),p=3)}else"center"===o&&(c=(0,n.point)((c.x+this._model.timeScale().width())/2,c.y));const m={points:[c],text:_,color:l.textcolor.value(),vertAlign:r,horzAlign:o,font:v,offsetX:p,offsetY:u,bold:g,italic:f,fontsize:x,forceTextAlign:!0};this._labelRenderer.setData(m),d.append(this._labelRenderer),this._needLabelExclusionPath(this._labelRenderer)&&(h=null!==(i=(0,s.getTextBoundaries)(this._labelRenderer,t,e))&&void 0!==i?i:void 0)}const u={points:this._points,color:l.linecolor.value(),linewidth:l.linewidth.value(),linestyle:l.linestyle.value(),hitTestResult:o.HitTestResult.MOVEPOINT,snappingPrice:this._source.points()[0].price,excludeBoundaries:h};this._horzRayRenderer.setData(u),d.append(this._horzRayRenderer),this.addAnchors(d),1===this._points.length&&this._addAlertRenderer(d,[u.points[0]]),this._renderer=d}}},57850:(e,t,i)=>{"use strict";i.r(t),i.d(t,{IconPaneView:()=>r});var n=i(99585);class r extends n.SvgIconPaneView{_iconColor(){return this._source.properties().childs().color.value()}}},4754:(e,t,i)=>{"use strict";i.d(t,{thirdPointCursorType:()=>u,LineSourcePaneView:()=>p});var n=i(7394),r=i(50151),s=i(78996),a=i(14888),o=i(53074),l=i(80856),d=i(6947);const h=n.colorsPalette["color-tv-blue-600"];var c;function u(e,t){const i=t.x-e.x,n=t.y-e.y,r=Math.abs(Math.atan2(i,n));return r>Math.PI/4&&r<3*Math.PI/4?d.PaneCursorType.VerticalResize:d.PaneCursorType.HorizontalResize}!function(e){e[e.RegularAnchorRadius=6]="RegularAnchorRadius",e[e.TouchAnchorRadius=13]="TouchAnchorRadius",e[e.RegularStrokeWidth=1]="RegularStrokeWidth",e[e.TouchStrokeWidth=3]="TouchStrokeWidth",e[e.RegularSelectedStrokeWidth=3]="RegularSelectedStrokeWidth",e[e.TouchSelectedStrokeWidth=0]="TouchSelectedStrokeWidth"}(c||(c={}));class p{constructor(e,t){this._invalidated=!0,this._points=[],this._middlePoint=null,this._selectionRenderers=[],this._lineAnchorRenderers=[],this._source=e,this._model=t}priceToCoordinate(e){const t=this._source.priceScale();if(null===t)return null;const i=this._source.ownerSource(),n=null!==i?i.firstValue():null;return null===n?null:t.priceToCoordinate(e,n)}currentPoint(){return this._model.crossHairSource().currentPoint()}anchorColor(){return h}isHoveredSource(){return this._source===this._model.hoveredSource()}isSelectedSource(){return this._model.selection().isSelected(this._source)}isBeingEdited(){return this._model.lineBeingEdited()===this._source}isEditMode(){return!this._model.isSnapshot()}areAnchorsVisible(){return(this.isHoveredSource()&&!this.isLocked()||this.isSelectedSource())&&this.isEditMode()}update(){this._invalidated=!0}isLocked(){return Boolean(this._source.isLocked&&this._source.isLocked())}addAnchors(e,t){let i=this._points ;this._model.lineBeingCreated()===this._source&&(i=i.slice(0,-1));const n=i.map(((e,t)=>{const i=this._source.points()[t],n=e;return n.snappingPrice=null==i?void 0:i.price,n.snappingIndex=null==i?void 0:i.index,n}));e.append(this.createLineAnchor({...null!=t?t:{},points:n},0))}createLineAnchor(e,t){var i;if(this.isLocked()){const i=this._getSelectionRenderer(t);return i.setData({bgColors:this._lineAnchorColors(e.points),points:e.points,visible:this.areAnchorsVisible(),hittestResult:a.HitTestResult.REGULAR,barSpacing:this._model.timeScale().barSpacing()}),i}const n=(0,s.lastMouseOrTouchEventInfo)().isTouch,r=this._getLineAnchorRenderer(t);return r.setData({...e,color:this.anchorColor(),backgroundColors:this._lineAnchorColors(e.points),currentPoint:this.currentPoint(),linePointBeingEdited:this.isBeingEdited()?this._model.linePointBeingEdited():null,hittestResult:null!==(i=e.hittestResult)&&void 0!==i?i:a.HitTestResult.CHANGEPOINT,radius:this._anchorRadius(),strokeWidth:n?c.TouchStrokeWidth:c.RegularStrokeWidth,selected:this.isSelectedSource(),selectedStrokeWidth:n?c.TouchSelectedStrokeWidth:c.RegularSelectedStrokeWidth,visible:this.areAnchorsVisible()}),r}_anchorRadius(){return(0,s.lastMouseOrTouchEventInfo)().isTouch?c.TouchAnchorRadius:c.RegularAnchorRadius}_lineAnchorColors(e){const t=(0,r.ensureNotNull)(this._model.paneForSource(this._source)).height();return e.map((e=>this._model.backgroundColorAtYPercentFromTop(e.y/t)))}_updateImpl(e,t){this._points=[];if(this._model.timeScale().isEmpty())return;if(!this._validatePriceScale())return;const i=this._source.points();for(let e=0;e{"use strict";i.r(t),i.d(t,{LineToolBeingCreatedPaneView:()=>c});var n=i(7394),r=i(4754),s=i(53479),a=i(85113),o=i(29639),l=i(6612),d=i(9933);const h=n.colorsPalette["color-cold-gray-500"];class c extends r.LineSourcePaneView{constructor(){super(...arguments),this._lineRenderer1=new l.VerticalLineRenderer, this._lineRenderer2=new l.VerticalLineRenderer,this._medianRenderer=new d.TrendLineRenderer,this._renderer=null}renderer(){return this._invalidated&&(this._updateImpl(),this._invalidated=!1),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const e=this._getPoints();if(e.length<1)return;this._renderer=new o.CompositeRenderer;const[t,i]=e;this._lineRenderer1.setData({x:t.x,color:h,linewidth:1,linestyle:s.LINESTYLE_SOLID}),this._renderer.append(this._lineRenderer1),e.length>1&&(this._lineRenderer2.setData({x:i.x,color:h,linewidth:1,linestyle:s.LINESTYLE_SOLID}),this._medianRenderer.setData({points:[t,i],color:h,linewidth:1,linestyle:s.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:a.LineEnd.Normal,rightend:a.LineEnd.Normal}),this._renderer.append(this._lineRenderer2),this._renderer.append(this._medianRenderer))}}},45306:(e,t,i)=>{"use strict";i.r(t),i.d(t,{LineToolPaneViewFibWithLabels:()=>d});var n=i(86441),r=i(4754),s=i(44381),a=i(34657),o=i(18766),l=i(17364);class d extends r.LineSourcePaneView{constructor(e,t){super(e,t),this._labelsRenderers={};for(let t=0;tthis._model.timeScale().width()&&!h||r.x<0&&!c);let b,L,P=o;switch(P){case"left":L=i.y,h?b=T?0:r.x:(b=i.x,P="right");break;case"right":L=r.y,c?b=T?this._model.timeScale().width():i.x:(b=r.x,P="left");break;default:b=(i.x+r.x)/2,L=(i.y+r.y)/2}const S=m["level"+t].coeff.value();let C="";if(R){C+=null!==(f=null===(g=m.coeffsAsPercents)||void 0===g?void 0:g.value())&&void 0!==f&&f?this._percentageFormatter.format(100*S,!1,2):this._numericFormatter.format(S)}return w&&(C+="("+x.formatPrice(s,y)+")"),v.setData({points:[new n.Point(b,L)],text:C,color:a,vertAlign:d,horzAlign:P,offsetX:4,offsetY:0,font:l.CHART_FONT_FAMILY,fontSize:m.labelFontSize?m.labelFontSize.value():12}),v}}},63261:(e,t,i)=>{"use strict";i.r(t),i.d(t,{NotePaneView:()=>m});var n=i(50151),r=i(4754),s=i(29639),a=i(53074),o=i(14888),l=i(17364),d=i(44381),h=i(38031),c=i(80142),u=i(83499),p=i(10773),_=i(27714),g=i(86441),f=i(34026);class v{constructor(e){this._data=null,this._sourceCanvas=null,this._translate=new g.Point(0,0),this._renderParams=e}destroy(){var e;null===(e=this._sourceCanvas)||void 0===e||e.remove()}renderParams(){return this._renderParams}update(e){var t,i;t=this._data,i=e, (null===t||t.markerColor!==i.markerColor||t.borderColor!==i.borderColor||t.width!==i.width||t.height!==i.height)&&this._createSource(e.width,e.height,e.markerColor),this._data=e}drawOn(e){const t=(0,n.ensureNotNull)(this._data),i=new g.Point(Math.round(t.point.x),Math.round(t.point.y)).add(this._translate);e.drawImage((0,n.ensureNotNull)(this._sourceCanvas),Math.round(i.x*this._renderParams.pixelRatio),Math.round(i.y*this._renderParams.pixelRatio),Math.round(t.width*this._renderParams.pixelRatio),Math.round(t.height*this._renderParams.pixelRatio))}hasPoint(e){const t=(0,n.ensureNotNull)(this._data),i=t.point.add(this._translate),r=new g.Point(t.point.x-this._translate.x,t.point.y);return(0,f.pointInBox)(e,(0,g.box)(i,r))}_createSource(e,t,i){this._sourceCanvas=(0,u.createDisconnectedCanvas)(document,(0,_.size)({width:e,height:t}),this._renderParams.pixelRatio),this._translate=new g.Point(-e/2,.5-t),this._translate.x%1==0&&(this._translate=new g.Point(this._translate.x+.5,this._translate.y));const r=(0,n.ensureNotNull)(this._sourceCanvas.getContext("2d"));(0,u.drawScaled)(r,this._renderParams.pixelRatio,(()=>{const n=.6*e;r.fillStyle=i,r.beginPath(),r.moveTo(e/2,t),r.quadraticCurveTo(e,e/1.15,e,e/2),r.arc(e/2,e/2,e/2,0,Math.PI,!0),r.quadraticCurveTo(0,e/1.15,e/2,t),r.fill(),r.globalCompositeOperation="destination-out",r.beginPath(),r.moveTo((e-n)/2,e/2),r.arc(e/2,e/2,n/2,0,2*Math.PI),r.fill()}))}}class x{constructor(){this._source=null,this._data=null}setData(e){this._data=e,this._source&&this._source.update(e)}draw(e,t){var i;if(null===this._data)return;null!==this._source&&(0,p.areEqualPaneRenderParams)(this._source.renderParams(),t)||(null===(i=this._source)||void 0===i||i.destroy(),this._source=new v(t),this._source.update(this._data));this._source.drawOn(e),this._data.tooltipVisible&&this._drawTooltipOn(e,t)}hitTest(e){return null!==this._data&&null!==this._source&&this._source.hasPoint(e)?new o.HitTestResult(o.HitTestResult.MOVEPOINT):null}_drawTooltipOn(e,t){e.save(),e.translate(.5,.5);const i=(0,n.ensureNotNull)(this._data),r=String(i.text).replace(/^\s+|\s+$/g,"");e.font=(i.bold?"bold ":"")+(i.italic?"italic ":"")+i.fontSize+"px "+i.font;const s=i.tooltipWidth-2*i.tooltipPadding,a=(0,d.wordWrap)(r,e.font,s),o=i.point,l=i.tooltipLineSpacing;let p=i.tooltipWidth,_=a.length*i.fontSize+2*i.tooltipPadding;a.length>1&&(_+=(a.length-1)*l);let g=Math.round(o.x-p/2),f=Math.round(o.y-i.height-_-8);const v=o.x<20||o.x+20>i.vpWidth;let x=v?null:"top",m=v?0:Math.round(o.x);f<10?f=o.y+13:x="bottom",g<10?g+=Math.abs(g-10):g+p+10>i.vpWidth&&(g-=g+p+10-i.vpWidth),e.fillStyle=(0,h.generateColor)(i.backgroundColor,i.backgroundTransparency),e.strokeStyle=i.borderColor,e.lineWidth=1,e.beginPath();const R=Math.round(g*t.pixelRatio),w=Math.round(f*t.pixelRatio);m=Math.round(m*t.pixelRatio),_=Math.round(_*t.pixelRatio),p=Math.round(p*t.pixelRatio);const y=Math.round(7*t.pixelRatio);e.moveTo(R,w),v||"top"!==x||(e.lineTo(m-y,w),e.lineTo(m,w-y),e.lineTo(m+y,w)),e.lineTo(R+p,w),e.lineTo(R+p,w+_),v||"bottom"!==x||(e.lineTo(m+y,w+_), e.lineTo(m,w+_+y),e.lineTo(m-y,w+_)),e.lineTo(R,w+_),e.closePath(),e.fill(),e.stroke(),e.textBaseline="middle",e.fillStyle=i.textColor,e.textAlign=(0,c.isRtl)()?"right":"left";const T=(0,u.calcTextHorizontalShift)(e,s),b=g+i.tooltipPadding+T;let L=f+i.tooltipPadding+i.fontSize/2;(0,u.drawScaled)(e,t.pixelRatio,(()=>{for(let t=0;t{"use strict";i.r(t),i.d(t,{OrderPaneView:()=>v});var n=i(86441),r=i(4754),s=i(29639),a=i(44352),o=i(66291),l=i(9740),d=i(86216),h=i(14888),c=i(86339),u=i(88620);const p=a.t(null,void 0,i(33241)),_=a.t(null,void 0,i(16075));class g extends d.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=null,this._cache={},this._data=null,this._adapter=e}setData(e){this._data=e}hitTest(e,t){if(null===this._data||0===this._data.points.length)return null;const i=this._cache;if(e.yi.bottom)return null;if(this._adapter.getBlocked()&&e.x>=i.left&&e.x=i.left&&e.x=i.bodyRight&&e.x=i.quantityRight&&e.x0){const t=this._points[0].y,i=e-3.5-1,r=this._adapter.hasMoveCallback()?h.HitTestResult.MOVEPOINT:h.HitTestResult.REGULAR,s=[new n.Point(i,t)];this._selectionData={barSpacing:this._model.timeScale().barSpacing(),points:s,bgColors:this._lineAnchorColors(s),hittestResult:r,visible:!0}}this._orderRenderer.setData({points:this._points}),this._selectionRenderer.setData(this._selectionData)}}},59121:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ParallelChannelPaneView:()=>d});var n=i(86441),r=i(6947),s=i(29639),a=i(8440),o=i(20575);const l=[r.PaneCursorType.Default,r.PaneCursorType.Default,r.PaneCursorType.Default,r.PaneCursorType.Default,r.PaneCursorType.VerticalResize,r.PaneCursorType.VerticalResize];class d extends o.AlertableLineSourcePaneView{constructor(){super(...arguments),this._channelRenderer=new a.ParallelChannelRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const e=this._source.priceScale();if(!e||e.isEmpty())return;if(0===this._source.points().length)return;let t=null,i=null;if(3===this._points.length){const e=this._points[0],r=this._points[1],s=this._points[2].y-this._points[0].y;t=e.add((0,n.point)(0,s)),i=r.add((0,n.point)(0,s))}if(this._points.length<=1)return ;const r=this._source.properties(),a={points:this._points.length>2&&null!==t&&null!==i?[this._points[0],this._points[1],t,i]:[this._points[0],this._points[1]],color:r.childs().linecolor.value(),linewidth:r.childs().linewidth.value(),linestyle:r.childs().linestyle.value(),extendleft:r.childs().extendLeft.value(),extendright:r.childs().extendRight.value(),fillBackground:r.childs().fillBackground.value(),backcolor:r.childs().backgroundColor.value(),transparency:r.childs().transparency.value(),showMidline:r.childs().showMidline.value(),midlinewidth:r.childs().midlinewidth.value(),midlinestyle:r.childs().midlinestyle.value(),midcolor:r.childs().midlinecolor.value(),hittestOnBackground:!0};this._channelRenderer.setData(a);const o=new s.CompositeRenderer;o.append(this._channelRenderer);const d=[];if(this._points[0]&&d.push(this._points[0]),this._points[1]&&d.push(this._points[1]),t&&i){const e=t;e.data=2,d.push(e);const n=i;n.data=3,d.push(n);const r=t.add(i).scaled(.5);r.data=4,r.square=!0,d.push(r);const s=d[0].add(d[1]).scaled(.5);s.data=5,s.square=!0,d.push(s)}const h=3===this._points.length&&!t;if(this._model.lineBeingCreated()!==this._source||h||(d.pop(),d.pop()),o.append(this.createLineAnchor({points:d,pointsCursorType:l},0)),this._points.length>=2){const e=this._points;this._addAlertRenderer(o,[e[0],e[1]])}this._renderer=o}}},20694:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PathPaneView:()=>a});var n=i(98930),r=i(29639),s=i(4754);class a extends s.LineSourcePaneView{constructor(e,t){super(e,t),this._polygonRenderer=new n.PolygonRenderer,this._renderer=new r.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer.clear();const e=this._source.properties().childs(),t={points:this._points,color:e.lineColor.value(),linewidth:e.lineWidth.value(),linestyle:e.lineStyle.value(),leftend:e.leftEnd.value(),rightend:e.rightEnd.value(),filled:!1,backcolor:"",fillBackground:!1,transparency:0};this._polygonRenderer.setData(t),this._renderer.append(this._polygonRenderer),this.addAnchors(this._renderer)}}},33199:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PitchfanLinePaneView:()=>d});var n=i(14888),r=i(30967),s=i(29639),a=i(85113),o=i(9933),l=i(4754);class d extends l.LineSourcePaneView{constructor(){super(...arguments),this._medianRenderer=new o.TrendLineRenderer,this._sideRenderer=new o.TrendLineRenderer,this._renderer=null,this._medianPoint=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,0===this._points.length)return;if(3===this._points.length?(this._medianPoint=this._points[1].add(this._points[2]).scaled(.5),this._medianPoint.data=3):2===this._points.length?(this._medianPoint=this._points[1].clone(),this._medianPoint.data=3):(this._medianPoint=this._points[0].clone(),this._medianPoint.data=3),this._points.length<2)return;if(!this._medianPoint)return;const e=new s.CompositeRenderer,t=this._source.properties().childs(),i=t.median.childs(),l={ points:[this._points[0],this._medianPoint],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!0,leftend:a.LineEnd.Normal,rightend:a.LineEnd.Normal};if(this._medianRenderer.setData(l),e.append(this._medianRenderer),this._points.length<3)return this.addAnchors(e),void(this._renderer=e);const d={points:[this._points[1],this._points[2]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1,leftend:a.LineEnd.Normal,rightend:a.LineEnd.Normal};this._sideRenderer.setData(d),e.append(this._sideRenderer);let h=0;const c=this._points[2].subtract(this._points[1]).scaled(.5),u=t.fillBackground.value(),p=t.transparency.value();for(let t=0;t<=8;t++){const i="level"+t,s=this._source.properties().child(i);if(s.childs().visible.value()){const i=this._medianPoint.addScaled(c,s.childs().coeff.value()),l=this._medianPoint.addScaled(c,-s.childs().coeff.value());if(u){{const t={p1:this._points[0],p2:i,p3:this._points[0],p4:this._medianPoint.addScaled(c,h),color:s.childs().color.value(),transparency:p,hittestOnBackground:!0,extendLeft:!1},n=new r.ChannelRenderer;n.setData(t),e.append(n)}{const t={p1:this._points[0],p2:l,p3:this._points[0],p4:this._medianPoint.addScaled(c,-h),color:s.childs().color.value(),transparency:p,hittestOnBackground:!0,extendLeft:!1},i=new r.ChannelRenderer;i.setData(t),e.append(i)}}h=s.childs().coeff.value();{const r={points:[this._points[0],i],color:s.childs().color.value(),linewidth:s.childs().linewidth.value(),linestyle:s.childs().linestyle.value(),extendleft:!1,extendright:!0,leftend:a.LineEnd.Normal,rightend:a.LineEnd.Normal},l=new o.TrendLineRenderer;l.setData(r),l.setHitTest(new n.HitTestResult(n.HitTestResult.MOVEPOINT,void 0,t)),e.append(l)}{const i={points:[this._points[0],l],color:s.childs().color.value(),linewidth:s.childs().linewidth.value(),linestyle:s.childs().linestyle.value(),extendleft:!1,extendright:!0,leftend:a.LineEnd.Normal,rightend:a.LineEnd.Normal},r=new o.TrendLineRenderer;r.setData(i),r.setHitTest(new n.HitTestResult(n.HitTestResult.MOVEPOINT,void 0,t)),e.append(r)}}}this.addAnchors(e),this._renderer=e}}},19563:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PitchforkLinePaneView:()=>h,SchiffPitchforkLinePaneView:()=>c,SchiffPitchfork2LinePaneView:()=>u,InsidePitchforkLinePaneView:()=>p});var n=i(86441),r=i(14888),s=i(30967),a=i(29639),o=i(85113),l=i(9933),d=i(4754);class h extends d.LineSourcePaneView{constructor(){super(...arguments),this._medianRenderer=new l.TrendLineRenderer,this._sideRenderer=new l.TrendLineRenderer,this._renderer=null,this._medianPoint=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null,0!==this._points.length&&(3===this._points.length?(this._medianPoint=this._points[1].add(this._points[2]).scaled(.5),this._medianPoint.data=3):2===this._points.length?(this._medianPoint=this._points[1].clone(),this._medianPoint.data=3):(this._medianPoint=this._points[0].clone(), this._medianPoint.data=3),this._updateRenderer())}_updateRenderer(){if(this._points.length<2)return;if(!this._medianPoint)return;const e=this._source.properties(),t=e.childs().median.childs(),i=new a.CompositeRenderer,n={points:[this._points[0],this._medianPoint],color:t.color.value(),linewidth:t.linewidth.value(),linestyle:t.linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};if(this._medianRenderer.setData(n),i.append(this._medianRenderer),this._points.length<3)return this.addAnchors(i),void(this._renderer=i);const d={points:[this._points[1],this._points[2]],color:t.color.value(),linewidth:t.linewidth.value(),linestyle:t.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._sideRenderer.setData(d),i.append(this._sideRenderer);const h=this._points[2].subtract(this._points[1]).scaled(.5),c=this._medianPoint.subtract(this._points[0]);let u=0;const p=e.childs().fillBackground.value(),_=e.childs().transparency.value();for(let t=0;t<=8;t++){const n="level"+t,a=e.childs()[n];if(a.childs().visible.value()){const n=this._medianPoint.addScaled(h,a.childs().coeff.value()),d=n.add(c),g=this._medianPoint.addScaled(h,-a.childs().coeff.value()),f=g.add(c);if(p){{const t=this._medianPoint.addScaled(h,u),r={p1:n,p2:d,p3:t,p4:t.add(c),color:a.childs().color.value(),transparency:_,hittestOnBackground:!0,extendLeft:e.childs().extendLines.value()},o=new s.ChannelRenderer;o.setData(r),i.append(o)}{const t=this._medianPoint.addScaled(h,-u),n={p1:g,p2:f,p3:t,p4:t.add(c),color:a.childs().color.value(),transparency:_,hittestOnBackground:!0,extendLeft:e.childs().extendLines.value()},r=new s.ChannelRenderer;r.setData(n),i.append(r)}}u=a.childs().coeff.value();const v={points:[n,d],color:a.childs().color.value(),linewidth:a.childs().linewidth.value(),linestyle:a.childs().linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},x=new l.TrendLineRenderer;x.setData(v),x.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,t)),i.append(x);const m={points:[g,f],color:a.childs().color.value(),linewidth:a.childs().linewidth.value(),linestyle:a.childs().linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},R=new l.TrendLineRenderer;R.setData(m),R.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,t)),i.append(R)}}this.addAnchors(i),this._renderer=i}}class c extends h{constructor(){super(...arguments),this._modifiedBase=null,this._backSideRenderer=new l.TrendLineRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateRenderer(){if(this._points.length<2)return;this._calcMofifiedBase();const e=this._source.properties(),t=new a.CompositeRenderer,i=e.childs().median.childs();{const e={points:[this._points[0],this._points[1]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1, leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};if(this._backSideRenderer.setData(e),t.append(this._backSideRenderer),!this._medianPoint||!this._modifiedBase)return this.addAnchors(t),void(this._renderer=t)}{const n={points:[this._modifiedBase,this._medianPoint],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};if(this._medianRenderer.setData(n),t.append(this._medianRenderer),this._points.length<3)return this.addAnchors(t),void(this._renderer=t)}{const e={points:[this._points[1],this._points[2]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._sideRenderer.setData(e),t.append(this._sideRenderer)}{const i=this._points[2].subtract(this._points[1]).scaled(.5),n=this._medianPoint.subtract(this._modifiedBase);let a=0;const d=e.childs().fillBackground.value(),h=e.childs().transparency.value();for(let c=0;c<=8;c++){const u="level"+c,p=e.child(u);if(p.childs().visible.value()){const u=this._medianPoint.addScaled(i,p.childs().coeff.value()),_=u.add(n),g=this._medianPoint.addScaled(i,-p.childs().coeff.value()),f=g.add(n);if(d){const r=this._medianPoint.addScaled(i,a);{const i={p1:u,p2:_,p3:r,p4:r.add(n),color:p.childs().color.value(),transparency:h,hittestOnBackground:!0,extendLeft:e.childs().extendLines.value()},a=new s.ChannelRenderer;a.setData(i),t.append(a)}{const r=this._medianPoint.addScaled(i,-a),o={p1:g,p2:f,p3:r,p4:r.add(n),color:p.childs().color.value(),transparency:h,hittestOnBackground:!0,extendLeft:e.childs().extendLines.value()},l=new s.ChannelRenderer;l.setData(o),t.append(l)}}a=p.childs().coeff.value();const v={points:[u,_],color:p.childs().color.value(),linewidth:p.childs().linewidth.value(),linestyle:p.childs().linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},x=new l.TrendLineRenderer;x.setData(v),x.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,c)),t.append(x);const m={points:[g,f],color:p.childs().color.value(),linewidth:p.childs().linewidth.value(),linestyle:p.childs().linestyle.value(),extendleft:e.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},R=new l.TrendLineRenderer;R.setData(m),R.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,c)),t.append(R)}}}this.addAnchors(t),this._renderer=t}_calcMofifiedBase(){this._points.length>1&&(this._modifiedBase=this._points[0].add(this._points[1]).scaled(.5))}}class u extends c{_calcMofifiedBase(){if(this._points.length>2){const e=this._points[0].x,t=.5*(this._points[0].y+this._points[1].y),i=new n.Point(e,t);this._modifiedBase=i}}}class p extends h{constructor(){super(...arguments),this._backSideRenderer=new l.TrendLineRenderer,this._centerRenderer=new l.TrendLineRenderer,this._modifiedBase=null}renderer(e,t){ return this._invalidated&&this._updateImpl(),this._renderer}_updateRenderer(){if(this._points.length>1&&(this._modifiedBase=this._points[0].add(this._points[1]).scaled(.5)),this._points.length<2)return;const e=new a.CompositeRenderer;if(!this._medianPoint||!this._modifiedBase)return void this.addAnchors(e);const t=this._source.properties(),i=t.childs().median.childs();if(3===this._points.length){const t={points:[this._modifiedBase,this._points[2]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._medianRenderer.setData(t),e.append(this._medianRenderer)}{const t={points:[this._points[0],this._points[1]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};if(this._backSideRenderer.setData(t),e.append(this._backSideRenderer),this._points.length<3)return this.addAnchors(e),void(this._renderer=e)}{const t={points:[this._points[1],this._points[2]],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._sideRenderer.setData(t),e.append(this._sideRenderer)}{const n=this._points[2].subtract(this._points[1]).scaled(.5),a=this._points[2].subtract(this._modifiedBase);let d=0;const h=t.childs().fillBackground.value(),c=t.childs().transparency.value(),u={points:[this._medianPoint,this._medianPoint.add(a)],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),extendleft:t.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal};this._centerRenderer.setData(u),e.append(this._centerRenderer);for(let i=0;i<=8;i++){const u="level"+i,p=t.child(u).childs();if(p.visible.value()){const u=this._medianPoint.addScaled(n,p.coeff.value()),_=u.add(a),g=this._medianPoint.addScaled(n,-p.coeff.value()),f=g.add(a);if(h){{const i=this._medianPoint.addScaled(n,d),r={p1:u,p2:_,p3:i,p4:i.add(a),color:p.color.value(),transparency:c,hittestOnBackground:!0,extendLeft:t.childs().extendLines.value()},o=new s.ChannelRenderer;o.setData(r),e.append(o)}{const i=this._medianPoint.addScaled(n,-d),r={p1:g,p2:f,p3:i,p4:i.add(a),color:p.color.value(),transparency:c,hittestOnBackground:!0,extendLeft:t.childs().extendLines.value()},o=new s.ChannelRenderer;o.setData(r),e.append(o)}}d=p.coeff.value();const v={points:[u,_],color:p.color.value(),linewidth:p.linewidth.value(),linestyle:p.linestyle.value(),extendleft:t.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},x=new l.TrendLineRenderer;x.setData(v),x.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,i)),e.append(x);const m={points:[g,f],color:p.color.value(),linewidth:p.linewidth.value(),linestyle:p.linestyle.value(),extendleft:t.childs().extendLines.value(),extendright:!0,leftend:o.LineEnd.Normal,rightend:o.LineEnd.Normal},R=new l.TrendLineRenderer ;R.setData(m),R.setHitTest(new r.HitTestResult(r.HitTestResult.MOVEPOINT,void 0,i)),e.append(R)}}}this.addAnchors(e),this._renderer=e}}},62127:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PolylinePaneView:()=>a});var n=i(98930),r=i(29639),s=i(4754);class a extends s.LineSourcePaneView{constructor(e,t){super(e,t),this._polygonRenderer=new n.PolygonRenderer,this._renderer=new r.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer.clear();const e=this._source.properties().childs(),t={points:this._points,color:e.linecolor.value(),linewidth:e.linewidth.value(),linestyle:e.linestyle.value(),filled:e.filled.value(),backcolor:e.backgroundColor.value(),fillBackground:e.fillBackground.value(),transparency:e.transparency.value()};this._polygonRenderer.setData(t),this._renderer.append(this._polygonRenderer),this.addAnchors(this._renderer)}}},72948:(e,t,i)=>{"use strict";var n=i(4754).LineSourcePaneView,r=i(88620),s=i(14888).HitTestResult,a=i(66291).splitThousands,o=i(80142),l=i(86339).appendEllipsis,d=i(86216).MediaCoordinatesPaneRenderer;const{setLineStyle:h,drawLine:c,drawPoly:u}=i(9740),{LINESTYLE_SOLID:p}=i(53479);class _ extends d{constructor(e,t){super(),this._data=null,this._cache=e,this._adapter=t}setData(e){this._data=e}_height(){return Math.max(20,1+Math.max(r.fontHeight(this._adapter.getBodyFont()),r.fontHeight(this._adapter.getQuantityFont())))}_bodyWidth(e){if(0===this._adapter.getText().length)return 0;e.save(),e.font=this._adapter.getBodyFont();var t=e.measureText(this._adapter.getText()).width;return e.restore(),Math.round(10+t)}_getQuantity(){var e=this._adapter.getQuantity();return isNaN(e)?e:a(this._adapter.getQuantity()," ")}_quantityWidth(e){if(0===this._getQuantity().length)return 0;e.save(),e.font=this._adapter.getQuantityFont();var t=e.measureText(this._getQuantity()).width;return e.restore(),Math.round(Math.max(this._height(),10+t))}_reverseButtonWidth(){return this._adapter.isOnReverseCallbackPresent()?this._height():0}_closeButtonWidth(){return this._adapter.isOnCloseCallbackPresent()?this._height():0}_drawLines(e,t,i,n,r){e.save(),e.strokeStyle=this._adapter.getLineColor(),e.lineStyle=this._adapter.getLineStyle(),e.lineWidth=this._adapter.getLineWidth(),c(e,i,n,r,n),this._adapter.getExtendLeft()&&c(e,0,n,t,n),e.restore()}_drawBody(e,t,i){e.strokeStyle=this._adapter.getBodyBorderColor(),e.fillStyle=this._adapter.getBodyBackgroundColor();var n=this._bodyWidth(e),r=this._height();e.fillRect(t+.5,i+.5,n-1,r-1),e.strokeRect(t,i,n,r)}_drawBodyText(e,t,i){e.save(),e.textAlign="center",e.textBaseline="middle",e.font=this._adapter.getBodyFont(),e.fillStyle=this._adapter.getBodyTextColor();var n=t+this._bodyWidth(e)/2,r=i+this._height()/2;e.fillText(this._adapter.getText(),n,r),e.restore()}_drawQuantity(e,t,i){e.strokeStyle=this._adapter.getQuantityBorderColor(),e.fillStyle=this._adapter.getQuantityBackgroundColor();var n=this._quantityWidth(e),r=this._height();e.fillRect(t+.5,i+.5,n-1,r-1),e.strokeRect(t,i,n,r)} _drawQuantityText(e,t,i){e.save(),e.textAlign="center",e.textBaseline="middle",e.font=this._adapter.getQuantityFont(),e.fillStyle=this._adapter.getQuantityTextColor();var n=t+this._quantityWidth(e)/2,r=i+this._height()/2;e.fillText(o.startWithLTR(this._getQuantity()+""),n,r),e.restore()}_drawReverseButton(e,t,i){e.save(),e.strokeStyle=this._adapter.getReverseButtonBorderColor(),e.fillStyle=this._adapter.getReverseButtonBackgroundColor();var n=this._reverseButtonWidth(),r=this._height();e.fillRect(t+.5,i+.5,n-1,r-1),e.strokeRect(t,i,n,r),e.strokeStyle=this._adapter.getReverseButtonIconColor();var s=function(e,t){h(e,p),c(e,0,0,0,t),c(e,-1,1,1,1),c(e,-2,2,2,2)},a=t+Math.round((this._reverseButtonWidth()-6)/2),o=i+5;e.save(),e.translate(a,o),s(e,10),e.translate(6,10),e.rotate(Math.PI),s(e,10),e.restore(),this._adapter._blocked&&(e.fillStyle="rgba(140, 140, 140, 0.75)",e.fillRect(t+.5,i+.5,n-1,r-1)),e.restore()}_drawCloseButton(e,t,i){e.save(),e.strokeStyle=this._adapter.getCloseButtonBorderColor(),e.fillStyle=this._adapter.getCloseButtonBackgroundColor();var n=this._closeButtonWidth(),r=this._height();e.fillRect(t+.5,i+.5,n-1,r-1),e.strokeRect(t,i,n,r);var s=t+n,a=i+r;e.strokeStyle=this._adapter.getCloseButtonIconColor();var o=(this._closeButtonWidth()-8)/2,l=(this._height()-8)/2;u(e,[{x:t+o,y:i+l},{x:s-o,y:a-l}],!0),u(e,[{x:s-o,y:i+l},{x:t+o,y:a-l}],!0),this._adapter._blocked&&(e.fillStyle="rgba(140, 140, 140, 0.75)",e.fillRect(t+.5,i+.5,n-1,r-1)),e.restore()}_drawImpl(e){if(null!==this._data&&this._data.points&&!(this._data.points.length<1)){var t=e.context,i=this._data.width,n=this._bodyWidth(t),r=this._quantityWidth(t),s=this._reverseButtonWidth(t),a=n+r+s+this._closeButtonWidth(),o=i-a,l=Math.max(this._adapter.getLineLength()/100*i,1),d=Math.round(i-Math.min(o,l)),h=d-a,c=Math.round(this._data.points[0].y),u=Math.round(c-(this._height()+1)/2);this._cache.bodyRight=h+n,this._cache.quantityRight=this._cache.bodyRight+r,this._cache.reverseButtonRight=this._cache.quantityRight+s,this._cache.top=u,this._cache.bottom=u+this._height(),this._cache.left=h,this._cache.right=d,this._drawLines(t,h,d,c,i),0!==n&&(this._drawBody(t,h,u),this._drawBodyText(t,h,u)),0!==r&&(this._drawQuantity(t,this._cache.bodyRight,u),this._drawQuantityText(t,this._cache.bodyRight,u)),0!==s&&this._drawReverseButton(t,this._cache.quantityRight,u),0!==this._closeButtonWidth()&&this._drawCloseButton(t,this._cache.reverseButtonRight,u)}}hitTest(e){return null===this._data||0===this._data.points.length||e.ythis._cache.bottom||e.x=this._cache.bodyRight&&e.x=this._cache.quantityRight&&e.x=this._cache.reverseButtonRight&&e.x{"use strict";var n=i(86441).Point,r=i(4754).LineSourcePaneView,s=i(578).Interval,a=i(14888).HitTestResult,o=i(29639).CompositeRenderer,l=i(28866).getImage,d=i(91031),h=i(18766).PercentageFormatter,c=i(86985).DateFormatter,u=i(78831).TimeFormatter,p=i(78831).hourMinuteFormat,_=i(78831).hourMinuteSecondFormat,g=i(45063).TimeSpanFormatter,f=i(38031),v=i(69960),x=i(83499).calcTextHorizontalShift,m=i(80142).isRtl,R=i(9740).drawRoundRect,w=i(95242).makeFont,y=i(86216).MediaCoordinatesPaneRenderer,T=i(80142),b=T.forceLTRStr,L=T.startWithLTR,P=i(17364).CHART_FONT_FAMILY;class S extends y{constructor(){super(),this._data=null,this._font=P,this._targetFontSize1=14,this._targetFontSize2=11,this._sourceFontSize1=12,this._sourceFontSize2=10,this._arrowOffset=6,this._arrowWidth=5,this._arrowHeight=5,this._radius=3,this._sourceWidth=void 0,this._sourceHeight=void 0,this._sourceRectLeftOffset=void 0,this._targetWidth=void 0,this._targetHeight=void 0,this._targetRectLeftOffset=void 0}setData(e){this._data=e}drawBalloon(e,t,i,r,s,a){var o=a||20;if(e.beginPath(),"down"===s){var l=new n(t.x-o,t.y-this._arrowOffset-this._arrowHeight-r);return e.moveTo(l.x+this._radius,l.y),e.lineTo(l.x+i-this._radius,l.y),e.arcTo(l.x+i,l.y,l.x+i,l.y+this._radius,this._radius),e.lineTo(l.x+i,l.y+r-this._radius),e.arcTo(l.x+i,l.y+r,l.x+i-this._radius,l.y+r,this._radius),e.lineTo(l.x+o+this._arrowWidth,l.y+r),e.lineTo(l.x+o,l.y+r+this._arrowHeight),e.lineTo(l.x+o-this._arrowWidth,l.y+r),e.lineTo(l.x+this._radius,l.y+r),e.arcTo(l.x,l.y+r,l.x,l.y+r-this._radius,this._radius),e.lineTo(l.x,l.y+this._radius), e.arcTo(l.x,l.y,l.x+this._radius,l.y,this._radius),l}var d=new n(t.x-o,t.y+this._arrowOffset+this._arrowHeight+r);return e.moveTo(d.x+this._radius,d.y),e.lineTo(d.x+i-this._radius,d.y),e.arcTo(d.x+i,d.y,d.x+i,d.y-this._radius,this._radius),e.lineTo(d.x+i,d.y-r+this._radius),e.arcTo(d.x+i,d.y-r,d.x+i-this._radius,d.y-r,this._radius),e.lineTo(d.x+o+this._arrowWidth,d.y-r),e.lineTo(d.x+o,d.y-r-this._arrowHeight),e.lineTo(d.x+o-this._arrowWidth,d.y-r),e.lineTo(d.x+this._radius,d.y-r),e.arcTo(d.x,d.y-r,d.x,d.y-r+this._radius,this._radius),e.lineTo(d.x,d.y-this._radius),e.arcTo(d.x,d.y,d.x+this._radius,d.y,this._radius),new n(d.x,d.y-r)}drawTargetLabel(e){e.save(),e.translate(.5,.5);var t=w(this._targetFontSize1,this._font,"normal"),n=w(this._targetFontSize2,this._font,"normal"),r=this._data.targetLine1,s=this._data.targetLine2,a=this._data.targetLine3,o=this._data.targetLine4;e.font=t;var l=e.measureText(r).width,d=e.measureText(s).width,h=e.measureText(" ").width;e.font=n;var c=e.measureText(a).width,u=e.measureText(o).width,p=e.measureText(" ").width,_=this._data.clockWhite&&this._data.clockWhite.width||0;this._targetWidth=Math.max(l+d+h,c+u+_+2*p)+8+4,this._targetHeight=this._targetFontSize1+this._targetFontSize2+9+4;var g=this._data.points[1],y=g.x+this._targetWidth-e.canvas.width+5;this._targetRectLeftOffset=Math.max(20,Math.min(this._targetWidth-15,y));var T="up"===this._data.direction?"down":"up",b=this.drawBalloon(e,g,this._targetWidth,this._targetHeight,T,this._targetRectLeftOffset);e.fillStyle=f.generateColor(this._data.targetBackColor,this._data.transparency),e.fill(),e.lineWidth=2,e.strokeStyle=f.generateColor(this._data.targetStrokeColor,this._data.transparency),e.stroke();e.beginPath(),e.arc(g.x,g.y,3,0,2*Math.PI,!1),e.fillStyle=this._data.centersColor,e.fill(),e.textBaseline="top",e.fillStyle=this._data.targetTextColor;var L=2+b.x+4,P=2+b.y+3,S=this._targetWidth-8-4;e.font=t,e.textAlign=m()?"right":"left";var C=x(e,S-d-h);e.fillText(r,L+C,P);var M=x(e,S-l);e.fillText(s,L+l+h+M,P),e.font=n;var I=P+this._targetFontSize1+3,N=x(e,S-u-_-p);e.fillText(a,L+N,I);var A=x(e,S-c-p-_-u);this._data.clockWhite&&e.drawImage(this._data.clockWhite,L+c+p+A,I+1);var k=x(e,S-c-_);if(e.fillText(o,L+c+_+2*p+k,I),this._data.status){var D,E,B,z;switch(e.font=w(this._targetFontSize1,this._font,"bold"),this._data.status){case v.AlertStatus.Success:D=i(44352).t(null,void 0,i(26787)),E=f.generateColor(this._data.successBackground,this._data.transparency),B=this._data.successTextColor,z=this._data.successIcon;break;case v.AlertStatus.Failure:D=i(44352).t(null,void 0,i(968)),E=f.generateColor(this._data.failureBackground,this._data.transparency),B=this._data.failureTextColor,z=this._data.failureIcon}var O=this._targetFontSize1+4,H=e.measureText(D).width,V=Math.round((this._targetWidth-H)/2),W=x(e,H);e.fillStyle=E,"up"===this._data.direction?(R(e,b.x-1,b.y-O-2,this._targetWidth+2,O,5),e.fill(),e.fillStyle=B,e.fillText(D,b.x+V+W,b.y-O+1), z&&e.drawImage(z,b.x+V-z.width-4,b.y-O-2+Math.abs(O-z.height)/2)):(R(e,b.x-1,b.y+this._targetHeight+2,this._targetWidth+2,O,5),e.fill(),e.fillStyle=B,e.fillText(D,b.x+V+W,b.y+this._targetHeight+5),z&&e.drawImage(z,b.x+V-z.width-4,b.y+this._targetHeight+10-Math.abs(O-z.height)/2)),e.restore()}else e.restore()}drawStartLabel(e){e.save(),e.translate(.5,.5);var t=w(this._sourceFontSize1,this._font,"normal"),i=w(this._sourceFontSize2,this._font,"normal");e.font=t;var n=e.measureText(this._data.sourceLine1).width;e.font=i;var r=e.measureText(this._data.sourceLine2).width;this._sourceWidth=Math.max(n,r)+6+4,this._sourceHeight=this._sourceFontSize1+this._sourceFontSize2+6+4;var s=this._data.points[0],a=s.x+this._sourceWidth-e.canvas.width+5;this._sourceRectLeftOffset=Math.max(20,Math.min(this._sourceWidth-15,a));var o=this.drawBalloon(e,s,this._sourceWidth,this._sourceHeight,this._data.direction,this._sourceRectLeftOffset);e.fillStyle=f.generateColor(this._data.sourceBackColor,this._data.transparency),e.fill(),e.lineWidth=2,e.strokeStyle=f.generateColor(this._data.sourceStrokeColor,this._data.transparency),e.stroke(),e.textAlign=m()?"right":"left",e.textBaseline="top",e.fillStyle=this._data.sourceTextColor;var l=x(e,this._sourceWidth-6-4),d=2+o.x+3+l,h=2+o.y+2;e.font=t,e.fillText(this._data.sourceLine1,d,h),e.font=i,e.fillText(this._data.sourceLine2,d,h+this._sourceFontSize1+2);e.beginPath(),e.arc(s.x,s.y,3,0,2*Math.PI,!1),e.fillStyle=this._data.centersColor,e.fill(),e.restore()}_drawImpl(e){if(!(null===this._data||this._data.points.length<2)){var t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,t.lineStyle=this._data.linestyle;var i=this._data.points[0],n=this._data.points[1],r=n.subtract(i);Math.abs(r.x)<1||Math.abs(r.y)<1?(t.beginPath(),t.moveTo(i.x,i.y),t.lineTo(n.x,n.y),t.stroke()):(t.save(),t.beginPath(),t.translate(i.x,i.y),t.scale(1,r.y/r.x),t.moveTo(0,0),t.arcTo(r.x,0,r.x,r.x,Math.abs(r.x)),t.lineTo(r.x,r.x),t.restore(),t.stroke()),this.drawTargetLabel(t),this.drawStartLabel(t);var s=Math.max(8,4*this._data.linewidth);t.fillStyle=this._data.color;var a=r.y<0?1:-1;if(Math.abs(r.x)<1||Math.abs(r.y)<1)var o=Math.atan(r.x/r.y);else{var l,d,h=Math.abs(r.x),c=Math.abs(r.y),u=0,p=Math.PI/2,_=(u+p)/2;if(r.length()>s)for(;;){l=h*Math.sin(_),d=c*(1-Math.cos(_));var g=Math.sqrt((l-h)*(l-h)+(d-c)*(d-c));if(Math.abs(g-s)<1)break;g>s?u=_:p=_,_=(u+p)/2}o=Math.atan((h-l)/(c-d)),r.x*r.y<0&&(o=-o)}t.save(),t.beginPath(),t.translate(n.x,n.y),t.rotate(-o),t.moveTo(0,0),t.lineTo(-s/2,a*s),t.lineTo(s/2,a*s),t.lineTo(0,0),t.restore(),t.fill()}}targetLabelHitTest(e){if(void 0===this._targetWidth||void 0===this._targetHeight||void 0===this._targetRectLeftOffset)return null;var t=this._targetHeight+this._arrowHeight;this._data.status&&(t+=this._targetFontSize1+10);var i="up"===this._data.direction?-1:1,n=this._radius,r=this._data.points[1],s=r.x-this._targetRectLeftOffset,o=r.y+i*n,l=r.y+i*(t+n),d=Math.min(o,l),h=Math.max(o,l) ;return e.x>=s&&e.x<=s+this._targetWidth&&e.y>=d&&e.y<=h?new a(a.MOVEPOINT):null}sourceLabelHitTest(e){if(void 0===this._sourceHeight||void 0===this._sourceWidth||void 0===this._sourceRectLeftOffset)return null;var t="up"===this._data.direction?1:-1,i=this._radius,n=this._data.points[0],r=n.x-this._sourceRectLeftOffset,s=n.y+i*t,o=n.y+(i+this._sourceHeight+this._arrowHeight)*t,l=Math.min(s,o),d=Math.max(s,o);return e.x>=r&&e.x<=r+this._sourceWidth&&e.y>=l&&e.y<=d?new a(a.MOVEPOINT):null}hitTest(e){if(null===this._data||this._data.points.length<2)return null;var t=this._data.points[0],i=this._data.points[1],n=i.subtract(t),r=(n=i.subtract(t),e.subtract(t)),s=Math.abs(n.x),o=Math.abs(n.y),l=d.sign(n.y)*(o-o*Math.sqrt(1-r.x*r.x/(s*s)));if(Math.abs(l-r.y)<3)return new a(a.MOVEPOINT);var h=this.targetLabelHitTest(e);return h||this.sourceLabelHitTest(e)}}t.PredictionPaneView=class extends r{constructor(e,t){super(e,t),this._pendingIcons=3;var n=this;function r(){n._pendingIcons-=1,0===n._pendingIcons&&n._source.model().updateSource(n._source)}this._clockWhite=null,this._successIcon=null,this._failureIcon=null,l("prediction-clock-white",i(99620)).then((function(e){n._clockWhite=e,r()})),l("prediction-success-white",i(14012)).then((function(e){n._successIcon=e,r()})),l("prediction-failure-white",i(88249)).then((function(e){n._failureIcon=e,r()})),this._percentageFormatter=new h,this._predictionRenderer=new S,this._renderer=null}iconsReady(){return 0===this._pendingIcons}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if((super._updateImpl(),this._renderer=null,this._targetLine1="",this._targetLine2="",this._targetLine3="",this._targetLine4="",!(this._source.points().length<2))&&this._source.priceScale()){var e=this._source.ownerSource().formatter(),t=this._source.points()[1],n=this._source.points()[0];this._targetLine3=b(e.format(t.price));var r=t.price-n.price,a=r/Math.abs(n.price)*100;this._targetLine1=b(e.format(r)+" ("+this._percentageFormatter.format(a)+")");var l=this._model.timeScale().indexToUserTime(n.index),d=this._model.timeScale().indexToUserTime(t.index);n.time&&t.time&&(l=TradingView.isString(n.time)?new Date(Date.parse(n.time)):n.time,d=TradingView.isString(t.time)?new Date(Date.parse(t.time)):t.time);var h=this._model.mainSeries().isDWM(),f=s.parse(this._model.mainSeries().interval()),x=f.isSeconds()||f.isTicks();if(d&&l){this._targetLine4=(new c).format(d),h||(this._targetLine4=this._targetLine4+" "+new u(x?_:p).format(d));var m=(d.valueOf()-l.valueOf())/1e3;this._targetLine2=i(44352).t(null,{context:"dates"},i(91481))+" "+L((new g).format(m))}this._sourceLine1=e.format(n.price),this._sourceLine2="";var R=this._model.timeScale().indexToUserTime(n.index);R&&(this._sourceLine2=(new c).format(R),h||(this._sourceLine2=this._sourceLine2+" "+new u(x?_:p).format(R))),this._direction=this._source.direction()===v.Direction.Up?"up":"down", this._finished=this._model.lineBeingCreated()!==this._source&&this._model.lineBeingEdited()!==this._source&&!this._model.sourcesBeingMoved().includes(this._source);var w={};w.points=this._points,w.color=this._source.properties().linecolor.value(),w.linewidth=this._source.properties().linewidth.value(),w.targetLine1=this._targetLine1,w.targetLine2=this._targetLine2,w.targetLine3=this._targetLine3,w.targetLine4=this._targetLine4,w.status=this._source.properties().status.value(),w.transparency=this._source.properties().transparency.value(),w.targetBackColor=this._source.properties().targetBackColor.value(),w.targetStrokeColor=this._source.properties().targetStrokeColor.value(),w.targetTextColor=this._source.properties().targetTextColor.value(),w.sourceBackColor=this._source.properties().sourceBackColor.value(),w.sourceStrokeColor=this._source.properties().sourceStrokeColor.value(),w.sourceTextColor=this._source.properties().sourceTextColor.value(),w.successBackground=this._source.properties().successBackground.value(),w.successTextColor=this._source.properties().successTextColor.value(),w.failureBackground=this._source.properties().failureBackground.value(),w.failureTextColor=this._source.properties().failureTextColor.value(),w.intermediateBackColor=this._source.properties().intermediateBackColor.value(),w.intermediateTextColor=this._source.properties().intermediateTextColor.value(),w.sourceLine1=this._sourceLine1,w.sourceLine2=this._sourceLine2,w.direction=this._direction,w.clockWhite=this._clockWhite,w.successIcon=this._successIcon,w.failureIcon=this._failureIcon,w.finished=this._finished,w.centersColor=this._model.backgroundCounterColor(),this._predictionRenderer.setData(w);var y=new o;y.append(this._predictionRenderer),this.addAnchors(y),this._renderer=y}}}},65409:(e,t,i)=>{"use strict";var n=i(86441),r=n.Point,s=n.box,a=i(34026).pointInBox,o=i(4754).LineSourcePaneView,l=i(53074).SelectionRenderer,d=i(14888).HitTestResult,h=i(29639).CompositeRenderer,c=i(38031),u=i(83499).calcTextHorizontalShift,p=i(80142).isRtl,_=i(86216).MediaCoordinatesPaneRenderer,g=i(17364);class f extends _{constructor(e,t){super(),this._data=null,this._measureCache=e,this._chartModel=t,this._points=null}setData(e){this._data=e,this._points=e.points}_drawImpl(e){if(null!==this._data&&null!==this._points&&0!==this._points.length){var t=e.context;t.font=[this._data.fontWeight,this._data.fontSize+"px",this._data.fontFamily].join(" ");var i=t.measureText(this._data.label);i.height=this._data.fontSize;var n=10,r=5,s=i.width+2*n,a=i.height+2*r,o=this._points[0].x- -9,l=this._points[0].y-(a+15);t.textAlign=p()?"right":"left";var d=u(t,i.width);this._measureCache&&Object.assign(this._measureCache,{innerWidth:s,innerHeight:a,tailLeft:-9,tailHeight:15}),t.translate(.5+o,.5+l),t.beginPath(),t.moveTo(12,a),t.lineTo(-9,a+15),t.lineTo(-10,a+15-1),t.lineTo(5,a),t.lineTo(3,a),t.arcTo(0,a,0,0,3),t.lineTo(0,3),t.arcTo(0,0,s,0,3),t.lineTo(s-3,0),t.arcTo(s,0,s,a,3),t.lineTo(s,a-3),t.arcTo(s,a,0,a,3),t.lineTo(12,a), t.fillStyle=c.generateColor(this._data.backgroundColor,this._data.transparency),t.fill(),t.strokeStyle=this._data.borderColor,t.lineWidth=2,t.stroke(),t.closePath(),t.textBaseline="alphabetic",t.fillStyle=this._data.color,t.fillText(this._data.label,n+d,a/2+Math.floor(.35*this._data.fontSize)),t.translate(-.5,-.5),t.beginPath(),t.arc(-9,a+15,2.5,0,2*Math.PI,!1),t.fillStyle=c.generateColor(this._data.borderColor,this._data.transparency),t.fill(),t.strokeStyle=this._chartModel.backgroundColor().value(),t.lineWidth=1,t.stroke(),t.closePath()}}hitTest(e){if(null===this._data||null===this._points||0===this._points.length)return null;var t=this._points[0].x-this._measureCache.tailLeft,i=this._points[0].y-(this._measureCache.innerHeight+this._measureCache.tailHeight),n=s(new r(t,i),new r(t+this._measureCache.innerWidth,i+this._measureCache.innerHeight));return a(e,n)?new d(d.MOVEPOINT):null}}t.PriceLabelPaneView=class extends o{constructor(e,t,i){super(e,t),this._rendererCache={},this._priceLabelRenderer=new f(this._rendererCache,t),this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._source.points().length>0){var e=this._source.points()[0].price,t=this._source.priceScale();if(!t||t.isEmpty())return;var i=this._source.ownerSource().firstValue();this._priceLabel=t.formatPrice(e,i)}var n={};if(n.points=this._points,n.borderColor=this._source.properties().borderColor.value(),n.backgroundColor=this._source.properties().backgroundColor.value(),n.color=this._source.properties().color.value(),n.fontWeight=this._source.properties().fontWeight.value(),n.fontSize=this._source.properties().fontsize.value(),n.fontFamily=g.CHART_FONT_FAMILY,n.transparency=this._source.properties().transparency.value(),n.label=this._priceLabel,this._priceLabelRenderer.setData(n),1===n.points.length){var r=new h;return r.append(this._priceLabelRenderer),r.append(new l({points:n.points,bgColors:this._lineAnchorColors(n.points),visible:this.areAnchorsVisible()})),void(this._renderer=r)}this._renderer=this._priceLabelRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}}},55681:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PriceNotePaneView:()=>m});var n=i(50151),r=i(86441),s=i(7394),a=i(29639),o=i(44381),l=i(4754),d=i(4652),h=i(53479),c=i(83499),u=i(17364),p=i(78996),_=i(14888),g=i(9740),f=i(55014);function v(e){let t,i;return e>=-135&&e<=-45?(t="center",i="bottom"):e>-45&&e<45?(t="left",i="middle"):e>=45&&e<=135?(t="center",i="top"):(t="right",i="middle"),{horzAlign:t,vertAlign:i}}class x{constructor(){this._data=null,this._priceLabelRenderer=new o.TextRenderer(void 0,new _.HitTestResult(_.HitTestResult.MOVEPOINT,{areaName:_.AreaName.Style,activeItem:1})),this._hittest=new _.HitTestResult(_.HitTestResult.MOVEPOINT,{areaName:_.AreaName.Style})}setData(e){this._data=e;const t=e.points[0],i=e.points[1],n=Math.round(180*Math.atan2(i.y-t.y,i.x-t.x)/Math.PI);this._priceLabelRenderer.setData({...v(n),points:[i],text:e.text,color:e.textColor,font:u.CHART_FONT_FAMILY,fontSize:e.fontSize,bold:e.bold,italic:e.italic, offsetX:0,offsetY:0,borderColor:e.borderColor,borderWidth:1,backgroundColor:e.backgroundColor,backgroundRoundRect:4,boxPaddingVert:6,boxPaddingHorz:8})}setHitTest(e){this._hittest=e}draw(e,t){const i=this._data;if(null===i||i.points.length<2)return;e.save();const n=t.pixelRatio,r=Math.round(i.points[0].x*n),s=Math.round(i.points[0].y*n),a=Math.round(i.points[1].x*n),o=Math.round(i.points[1].y*n);e.lineCap="butt",(0,g.setLineStyle)(e,h.LINESTYLE_SOLID),e.strokeStyle=i.lineColor,e.fillStyle=i.lineColor,e.lineWidth=Math.round(1*n);const l=(0,f.fillScaledRadius)(2,n);(0,g.createCircle)(e,r,s,l),e.fill(),void 0!==i.excludeBoundaries&&(e.save(),(0,c.addExclusionArea)(e,t,i.excludeBoundaries)),(0,g.drawLine)(e,r,s,a,o),void 0!==i.excludeBoundaries&&e.restore(),this._priceLabelRenderer.draw(e,t);const d=1*n;e.strokeStyle=i.circleBorderColor,e.lineWidth=d;const u=l+d/2;(0,g.createCircle)(e,r,s,u),e.stroke(),e.restore()}hitTest(e){const t=this._data;if(null===t)return null;const i=(0,p.lastMouseOrTouchEventInfo)().isTouch?20:3;return(0,d.distanceToSegment)(t.points[0],t.points[1],e).distance<=i?this._hittest:this._priceLabelRenderer.hitTest(e)}}class m extends l.LineSourcePaneView{constructor(){super(...arguments),this._renderer=new a.CompositeRenderer,this._priceNoteRenderer=new x,this._customLabelRenderer=new o.TextRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;super._updateImpl(),this._renderer.clear();const a=this._source.priceScale();if(!a||a.isEmpty())return;const l=this._points;if(l.length<2)return;const d=(0,n.ensureNotNull)(this._source.ownerSource()).firstValue();if(null===d)return;const h=this._source.properties().childs(),c=this._model.isDark()?s.colorsPalette["color-cold-gray-900"]:s.colorsPalette["color-white"],p=this._source.points()[0].price,_={text:a.formatPrice(p,d),points:l,lineColor:h.lineColor.value(),circleBorderColor:c,backgroundColor:h.priceLabelBackgroundColor.value(),borderColor:h.priceLabelBorderColor.value(),textColor:h.priceLabelTextColor.value(),fontSize:h.priceLabelFontSize.value(),bold:h.priceLabelBold.value(),italic:h.priceLabelItalic.value()};if(h.showLabel&&h.showLabel.value()){const n=l[0],s=l[1],a=n.x{"use strict";i.r(t),i.d(t,{ PriceRangePaneView:()=>v});var n=i(50151),r=i(86441),s=i(80142),a=i(44381),o=i(26740),l=i(9933),d=i(29639),h=i(18766),c=i(53479),u=i(85113),p=i(68336),_=i(17364),g=i(64484);const f=new h.PercentageFormatter;class v extends g.DateAndPriceRangeBasePaneView{constructor(){super(...arguments),this._topBorderRenderer=new l.TrendLineRenderer,this._bottomBorderRenderer=new l.TrendLineRenderer,this._distanceRenderer=new l.TrendLineRenderer,this._backgroundRenderer=new o.RectangleRenderer,this._labelRenderer=new a.TextRenderer,this._renderer=new d.CompositeRenderer,this._pipFormatter=null,this._lastSymbolInfo=null}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;if(super._updateImpl(),this._renderer.clear(),this._points.length<2||this._source.points().length<2)return;const o=this._source.properties().childs(),l=o.extendLeft.value(),d=o.extendRight.value(),[h,g]=this._points,v=Math.min(h.x,g.x),x=Math.max(h.x,g.x);o.fillBackground.value()&&(this._backgroundRenderer.setData({points:[new r.Point(v,h.y),new r.Point(x,g.y)],color:"white",linewidth:0,backcolor:o.backgroundColor.value(),fillBackground:!0,transparency:o.backgroundTransparency.value(),extendLeft:l,extendRight:d}),this._renderer.append(this._backgroundRenderer));const m=(e,t,i)=>{e.setData({points:[t,i],color:o.linecolor.value(),linewidth:o.linewidth.value(),linestyle:c.LINESTYLE_SOLID,extendleft:l,extendright:d,leftend:u.LineEnd.Normal,rightend:u.LineEnd.Normal}),this._renderer.append(e)};let R=v,w=x;R===w&&(l&&(R-=1),d&&(w+=1)),m(this._topBorderRenderer,new r.Point(R,h.y),new r.Point(w,h.y)),m(this._bottomBorderRenderer,new r.Point(R,g.y),new r.Point(w,g.y));const y=Math.round((h.x+g.x)/2),T=new r.Point(y,h.y),b=new r.Point(y,g.y),L=this._updateCustomTextRenderer(e,t);this._distanceRenderer.setData({points:[T,b],color:o.linecolor.value(),linewidth:o.linewidth.value(),linestyle:c.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:u.LineEnd.Normal,rightend:Math.abs(T.y-b.y)>=15*o.linewidth.value()?u.LineEnd.Arrow:u.LineEnd.Normal,excludeBoundaries:null!=L?L:void 0}),this._renderer.append(this._distanceRenderer);const P=this._source.points()[0].price,S=this._source.points()[1].price,C=S-P,M=100*C/Math.abs(P),I=this._model.mainSeries().symbolInfo();I&&I!==this._lastSymbolInfo&&(this._pipFormatter=new p.PipFormatter(I.pricescale,I.minmov,I.type,I.minmove2),this._lastSymbolInfo=I);const N=(0,s.forceLTRStr)((0,n.ensureNotNull)(this._source.ownerSource()).formatter().format(C)+" ("+f.format(M)+") "+(this._pipFormatter?this._pipFormatter.format(C):""));let A;A=S>P?new r.Point(.5*(h.x+g.x),g.y-2*o.fontsize.value()):new r.Point(.5*(h.x+g.x),g.y+.7*o.fontsize.value());const k={x:0,y:10},D=o.fontsize.value(),E={points:[A],text:N,color:o.textcolor.value(),font:_.CHART_FONT_FAMILY,offsetX:k.x,offsetY:k.y,padding:8,vertAlign:"middle",horzAlign:"center",fontsize:D,backgroundRoundRect:4,backgroundHorzInflate:.4*D,backgroundVertInflate:.2*D};(null===(i=o.fillLabelBackground)||void 0===i?void 0:i.value())&&(E.boxShadow={ shadowColor:o.shadow.value(),shadowBlur:4,shadowOffsetY:1},E.backgroundColor=o.labelBackgroundColor.value()),this._labelRenderer.setData(E);const B=this._labelRenderer.measure(),z=(0,a.calculateLabelPosition)(B,h,g,k,e);this._labelRenderer.setPoints([z]),this._renderer.append(this._labelRenderer),this._renderer.append(this._customTextrenderer),this.addAnchors(this._renderer)}_needLabelExclusionPath(e){return e.getLinesInfo().lines.length>0}}},4898:(e,t,i)=>{"use strict";var n=i(56456).ArcWedgeRenderer,r=i(39484).FibWedgePaneView,s=i(9933).TrendLineRenderer,a=i(29639).CompositeRenderer,o=i(85113).LineEnd;t.ProjectionLinePaneView=class extends r{constructor(e,t){super(e,t),this._baseTrendRenderer=new s,this._edgeTrendRenderer=new s,this._arcWedgeRenderer=new n}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateRenderer(){if(!(this._points.length<2)){var e=new a,t=this._source.properties(),i=this._points,n=i[0],r=i[1],s={points:[n,r],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:t.trendline.color.value(),linewidth:t.linewidth.value(),linestyle:t.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.Normal,rightend:o.Normal};if(this._baseTrendRenderer.setData(s),e.append(this._baseTrendRenderer),this._points.length<3)return this.addAnchors(e),void(this._renderer=e);var l=i[2],d=l.data,h=r.subtract(n).length(),c=l.subtract(n).normalized();(l=n.add(c.scaled(h))).data=d,s={points:[n,l],width:this._model.timeScale().width(),height:this._source.priceScale().height(),color:t.trendline.color.value(),linewidth:t.linewidth.value(),linestyle:t.trendline.linestyle.value(),extendleft:!1,extendright:!1,leftend:o.Normal,rightend:o.Normal},this._edgeTrendRenderer.setData(s),e.append(this._edgeTrendRenderer);var u=this._levels[0],p={};p.center=this._points[0],p.radius=u.radius,p.prevRadius=0,p.edge=this._edge,p.color=t.trendline.color.value(),p.color1=t.color1.value(),p.color2=t.color2.value(),p.linewidth=t.linewidth.value(),p.edge1=this._edge1,p.edge2=this._edge2,p.p1=u.p1,p.p2=u.p2,p.fillBackground=t.fillBackground.value(),p.transparency=t.transparency.value(),p.gradient=!0,this._arcWedgeRenderer.setData(p),e.append(this._arcWedgeRenderer),this.addAnchors(e),this._renderer=e}}}},69138:(e,t,i)=>{"use strict";i.r(t),i.d(t,{RectanglePaneView:()=>h});var n=i(86441),r=i(17364),s=i(26740),a=i(29639),o=i(44381),l=i(4754),d=i(6947);class h extends l.LineSourcePaneView{constructor(e,t){super(e,t),this._rectangleRenderer=new s.RectangleRenderer,this._textRenderer=new o.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const e=this._getSource().properties().childs(),t={points:this._points,color:e.color.value(),linewidth:e.linewidth.value(),backcolor:e.backgroundColor.value(),fillBackground:e.fillBackground.value(),transparency:e.transparency.value(),extendLeft:e.extendLeft.value(),extendRight:e.extendRight.value(), includeRightEdge:!0};this._rectangleRenderer.setData(t);const i=new a.CompositeRenderer;i.append(this._rectangleRenderer);const s=this._points[0],o=this._points[1];if(e.showLabel.value()){const t=Math.min(s.x,o.x),a=Math.max(s.x,o.x),l=Math.min(s.y,o.y),d=Math.max(s.y,o.y);let h,c,u,p;const _=e.fontSize.value()/3;let g,f,v=0;switch(e.vertLabelsAlign.value()){case"middle":p=(l+d)/2,c="middle",v=_;break;case"top":p=d,c="top";break;case"bottom":p=l,c="bottom"}switch(e.horzLabelsAlign.value()){case"center":u=(t+a)/2,h="center";break;case"left":u=t,h="left";break;case"right":u=a,h="right"}"middle"===c&&(g=a-t-2*v,f=d-l);const x={points:[new n.Point(u,p)],text:e.text.value(),fontSize:e.fontSize.value(),font:r.CHART_FONT_FAMILY,bold:e.bold.value(),italic:e.italic.value(),horzAlign:h,vertAlign:c,color:e.textColor.value(),wordWrapWidth:g,maxHeight:f,offsetX:0,offsetY:0,boxPaddingVert:_,boxPaddingHorz:v,forceTextAlign:!0};this._textRenderer.setData(x),i.append(this._textRenderer)}this._addAnchors(s,o,i),this._renderer=i}_addAnchors(e,t,i){const r=new n.Point(e.x,t.y);r.data=2;const s=new n.Point(t.x,e.y);s.data=3;const a=new n.Point(e.x,.5*(e.y+t.y));a.data=4;const o=new n.Point(t.x,.5*(e.y+t.y));o.data=5;const l=new n.Point(.5*(e.x+t.x),e.y);l.data=6;const h=new n.Point(.5*(e.x+t.x),t.y);h.data=7,[a,o,l,h].forEach((e=>e.square=!0));const c=e.x-t.x,u=e.y-t.y,p=Math.sign(c*u),_=[p<0?d.PaneCursorType.DiagonalNeSwResize:d.PaneCursorType.DiagonalNwSeResize,p<0?d.PaneCursorType.DiagonalNeSwResize:d.PaneCursorType.DiagonalNwSeResize,p>0?d.PaneCursorType.DiagonalNeSwResize:d.PaneCursorType.DiagonalNwSeResize,p>0?d.PaneCursorType.DiagonalNeSwResize:d.PaneCursorType.DiagonalNwSeResize,d.PaneCursorType.HorizontalResize,d.PaneCursorType.HorizontalResize,d.PaneCursorType.VerticalResize,d.PaneCursorType.VerticalResize];i.append(this.createLineAnchor({points:[e,t,r,s,a,o,l,h],pointsCursorType:_},0))}}},80021:(e,t,i)=>{"use strict";i.r(t),i.d(t,{RegressionTrendPaneView:()=>g});var n=i(50151),r=i(38031),s=i(14888),a=i(29639),o=i(8440),l=i(44381),d=i(9933),h=i(53074),c=i(86441),u=i(85113),p=i(17364);var _=i(4754);class g extends _.LineSourcePaneView{constructor(e,t){super(e,t),this._data=null,this._pearsonsLabelRenderer=new l.TextRenderer,this._renderer=null,this._renderer=null}renderer(){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._data=function(e,t){const i={lines:[],pearsons:null};if(!t.properties().visible.value())return i;const r=e.timeScale(),s=t.priceScale(),a=e.mainSeries().firstBar();if(!s||s.isEmpty()||r.isEmpty()||!a)return i;const o=t.startIndex(),l=t.endIndex();if(null===o||null===l)return i;const d=[t.baseLine(),t.downLine(),t.upLine()],h=Math.round(r.indexToCoordinate(o)),_=Math.round(r.indexToCoordinate(l)),g=t.properties(),f=[g.styles.baseLine,g.styles.downLine,g.styles.upLine],v=a[4];for(let r=0;r!!e)),l=this._source.properties().childs().styles.childs().transparency.value();for(let t=1;t=1&&e.append(new h.SelectionRenderer({points:t,bgColors:this._lineAnchorColors(t),visible:this.areAnchorsVisible(),hittestResult:s.HitTestResult.REGULAR,barSpacing:this._model.timeScale().barSpacing()})),this._renderer=e}_getTransparencyResetLines(){return(0,n.ensureNotNull)(this._data).lines.map((e=>({...e,color:(0,r.resetTransparency)(e.color)})))}}},69973:(e,t,i)=>{"use strict";i.r(t),i.d(t,{RiskRewardPaneView:()=>N});var n=i(86441),r=i(50151),s=i(44352),a=i(4754),o=i(9933),l=i(44381),d=i(26740),h=i(14888),c=i(29639),u=i(18766),p=i(34657),_=i(68336),g=i(38031),f=i(85113),v=i(31943),x=i(80142),m=i(6947),R=i(1930),w=i(17364),y=i(53479);const T=[m.PaneCursorType.Default,m.PaneCursorType.HorizontalResize,m.PaneCursorType.VerticalResize,m.PaneCursorType.VerticalResize],b=s.t(null,void 0,i(72892)),L=s.t(null,{context:"line_tool_position"},i(50140)),P=s.t(null,{context:"line_tool_position"},i(44143)),S=s.t(null,void 0,i(53115)),C=s.t(null,void 0,i(438)),M=s.t(null,void 0,i(15166)),I=s.t(null,void 0,i(87061));class N extends a.LineSourcePaneView{constructor(){super(...arguments),this._percentageFormatter=new u.PercentageFormatter,this._numericFormatter=new p.NumericFormatter, this._pipFormatter=null,this._lastSymbolInfo=null,this._entryLineRenderer=new o.TrendLineRenderer,this._stopLineRenderer=new o.TrendLineRenderer,this._targetLineRenderer=new o.TrendLineRenderer,this._positionLineRenderer=new o.TrendLineRenderer,this._fullStopBgRenderer=new d.RectangleRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT),new h.HitTestResult(h.HitTestResult.MOVEPOINT)),this._stopBgRenderer=new d.RectangleRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT),new h.HitTestResult(h.HitTestResult.MOVEPOINT)),this._fullTargetBgRenderer=new d.RectangleRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT),new h.HitTestResult(h.HitTestResult.MOVEPOINT)),this._targetBgRenderer=new d.RectangleRenderer(new h.HitTestResult(h.HitTestResult.MOVEPOINT),new h.HitTestResult(h.HitTestResult.MOVEPOINT)),this._stopLabelRenderer=new l.TextRenderer,this._middleLabelRenderer=new l.TextRenderer,this._profitLabelRenderer=new l.TextRenderer,this._renderer=new c.CompositeRenderer}isLabelVisible(){return this.isHoveredSource()||this.isSelectedSource()||this._source.properties().childs().alwaysShowStats.value()}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){super._updateImpl(e,t),this._renderer.clear();const i=this._model.timeScale(),s=this._source.priceScale();if(!s||s.isEmpty()||i.isEmpty())return;const a=this._source.points();if(a.length<2||this._points.length<2)return;const o=(0,r.ensureNotNull)(this._source.ownerSource()),l=null==o?void 0:o.barsProvider().bars();if(!l||l.isEmpty())return;if(null===l.last())return;const d=4===a.length,h=this._source.lastBarData();if(!h)return;const c=this._source.stopPrice(),u=this._source.profitPrice(),p=this._source.calculatePL(h.closePrice),g=o.symbolSource().symbolInfo();if(!g)return;const f=o.firstValue();if(null===f)return;const x=this._points[v.RiskRewardPointIndex.Entry].y,m=s.priceToCoordinate(c,f),R=s.priceToCoordinate(u,f),w=s.priceToCoordinate(h.closePrice,f),y=i.indexToCoordinate(h.index),b=this._points[v.RiskRewardPointIndex.Entry].x,L=this._points[v.RiskRewardPointIndex.ActualEntry]?this._points[v.RiskRewardPointIndex.ActualEntry].x:this._points[v.RiskRewardPointIndex.Close].x,P=this._points[v.RiskRewardPointIndex.ActualClose]?this._points[v.RiskRewardPointIndex.ActualClose].x:this._points[v.RiskRewardPointIndex.Close].x,S=this._points[v.RiskRewardPointIndex.Close].x,C=this._source.entryPrice(),M=this._source.stopPrice(),I=this._source.profitPrice(),N={pl:p,isClosed:d,entryLevel:x,stopLevel:m,profitLevel:R,closeLevel:w,closeBar:y,left:b,entryX:L,right:P,edge:S,entryPrice:C,stopPrice:M,profitPrice:I};let A=S<-5||b>t+5;if(this._createBackgroundRenderers(N,this._renderer),this._createLinesRenderers(N,this._renderer),this._createLabelsRenderers(N,this._renderer,g),g!==this._lastSymbolInfo&&(this._pipFormatter=new _.PipFormatter(g.pricescale,g.minmov,g.type,g.minmove2),this._lastSymbolInfo=g),A=[this._profitLabelRenderer,this._stopLabelRenderer,this._middleLabelRenderer].reduce(((i,n)=>i&&n.isOutOfScreen(t,e)),A),A)return ;const k=this._points[0].clone();k.data=0,k.snappingPrice=C;const D=new n.Point(b,m);D.data=2,D.square=!0,D.snappingPrice=M;const E=new n.Point(b,R);E.data=3,E.square=!0,E.snappingPrice=I;const B=new n.Point(S,k.y);B.data=1,B.square=!0,B.snappingIndex=h.index;const z={points:[k,B,D,E],pointsCursorType:T};this._renderer.append(this.createLineAnchor(z,0))}_createBackgroundRenderers(e,t){const i=this._source.properties().childs();{const t={points:[new n.Point(e.left,e.entryLevel),new n.Point(e.edge,e.stopLevel)],color:"white",linewidth:0,backcolor:i.stopBackground.value(),fillBackground:!0,transparency:i.stopBackgroundTransparency.value(),extendLeft:!1,extendRight:!1};this._fullStopBgRenderer.setData(t),this._renderer.append(this._fullStopBgRenderer)}if(e.pl<0&&e.entryX!==e.right){const t=new n.Point(e.entryX,e.entryLevel),r=new n.Point(e.right,e.closeLevel),s=.01*i.stopBackgroundTransparency.value(),a=100-100*(1-s*s*s),o={points:[t,r],color:"white",linewidth:0,backcolor:i.stopBackground.value(),fillBackground:!0,transparency:a,extendLeft:!1,extendRight:!1};this._stopBgRenderer.setData(o),this._renderer.append(this._stopBgRenderer)}{const t={points:[new n.Point(e.left,e.entryLevel),new n.Point(e.edge,e.profitLevel)],color:"white",linewidth:0,backcolor:i.profitBackground.value(),fillBackground:!0,transparency:i.profitBackgroundTransparency.value(),extendLeft:!1,extendRight:!1};this._fullTargetBgRenderer.setData(t),this._renderer.append(this._fullTargetBgRenderer)}if(e.pl>0&&e.entryX!==e.right){const t=new n.Point(e.entryX,e.entryLevel),r=new n.Point(e.right,e.closeLevel),s=.01*i.profitBackgroundTransparency.value(),a=100-100*(1-s*s*s),o={points:[t,r],color:"white",linewidth:0,backcolor:i.profitBackground.value(),fillBackground:!0,transparency:a,extendLeft:!1,extendRight:!1};this._targetBgRenderer.setData(o),this._renderer.append(this._targetBgRenderer)}}_createLinesRenderers(e,t){const i=this._source.properties().childs(),r=(e,t,n,r)=>{const s={points:[t,n],color:null!=r?r:i.linecolor.value(),linewidth:i.linewidth.value(),linestyle:y.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:f.LineEnd.Normal,rightend:f.LineEnd.Normal};e.setData(s),this._renderer.append(e)};if(this._points[v.RiskRewardPointIndex.ActualEntry]){const t={points:[this._points[v.RiskRewardPointIndex.ActualEntry],e.isClosed?this._points[v.RiskRewardPointIndex.ActualClose]:new n.Point(e.closeBar,e.closeLevel)],color:this._source.properties().childs().linecolor.value(),linewidth:1,linestyle:y.LINESTYLE_DASHED,extendleft:!1,extendright:!1,leftend:f.LineEnd.Normal,rightend:f.LineEnd.Arrow};this._positionLineRenderer.setData(t),this._renderer.append(this._positionLineRenderer)}{const t=new n.Point(e.left,this._points[v.RiskRewardPointIndex.Entry].y),i=new n.Point(e.edge,this._points[v.RiskRewardPointIndex.Entry].y);r(this._entryLineRenderer,t,i)}{const t=new n.Point(e.left,e.stopLevel),s=new n.Point(e.edge,e.stopLevel);r(this._stopLineRenderer,t,s,i.stopBackground.value())}{const t=new n.Point(e.left,e.profitLevel),s=new n.Point(e.edge,e.profitLevel) ;r(this._targetLineRenderer,t,s,i.profitBackground.value())}}_addCenterLabel(e,t,i){const n=this._source.properties().childs(),r={font:w.CHART_FONT_FAMILY,offsetX:3,horzAlign:"center",backgroundRoundRect:4,backgroundHorzInflate:4,points:[i.p],text:i.txt,color:n.textcolor.value(),offsetY:i.offsetY,vertAlign:i.vertAlign,backgroundColor:(0,g.resetTransparency)(i.color),fontsize:n.fontsize.value(),borderColor:i.border};return t.setData(r),e.append(t),r}_creareMiddleLabel(e,t,i){const s=Math.abs(e.entryPrice-e.profitPrice)/Math.abs(e.entryPrice-e.stopPrice),a=this._source.properties().childs(),o=(0,r.ensureNotNull)(this._source.ownerSource()),l=new n.Point((e.left+e.edge)/2,Math.round(this._points[0].y));let d="",h="";const c=this._numericFormatter.format(Math.round(100*s)/100);this._points[1]&&(h=o.formatter().format(e.pl));const u=a.qty.value()/a.lotSize.value(),p="futures"===i.type||(0,R.isCryptoSymbol)(i)?Math.round(1e3*u)/1e3:Math.floor(u);if(a.compact.value())d+=h?h+" ~ ":"",d+=p+"\n",d+=c;else{const t=e.isClosed?P:L;d+=h?b.format({status:t,pnl:h})+", ":"",d+=I.format({qty:""+p})+"\n",d+=S.format({ratio:c})+" "}let _=a.linecolor.value();return e.pl<0?_=a.stopBackground.value():e.pl>0&&(_=a.profitBackground.value()),this._addCenterLabel(t,this._middleLabelRenderer,{p:l,txt:d,color:_,vertAlign:"middle",offsetY:0,border:"white"})}_createStopLabel(e,t){const i=this._source.properties().childs(),s=(0,r.ensureNotNull)(this._source.ownerSource()),a=Math.abs(e.stopPrice-e.entryPrice),o=Math.round(1e4*a/e.entryPrice)/100,l=new n.Point((e.left+e.edge)/2,e.stopLevel);let d="";const h=s.formatter().format(a),c=this._percentageFormatter.format(o);return d=i.compact.value()?h+" ("+c+") "+i.amountStop.value():C.format({stopChange:(0,x.forceLTRStr)(s.formatter().format(a)),stopChangePercent:(0,x.forceLTRStr)(this._percentageFormatter.format(o)),stopChangePip:this._pipFormatter?(0,x.forceLTRStr)(this._pipFormatter.format(a)):"",amount:(0,x.forceLTRStr)(""+i.amountStop.value())}),this._addCenterLabel(t,this._stopLabelRenderer,{p:l,txt:d,color:i.stopBackground.value(),vertAlign:e.entryPriceMath.max(e,t.measure().width)),0),h=e.edge-e.left,c=this._anchorRadius();if(h-d-c<=8&&(l&&(l.offsetY+=c+8,this._profitLabelRenderer.setData(l)),o&&(o.offsetY+=c+8,this._stopLabelRenderer.setData(o)),a)){let t;if(null===(s=this._source.priceScale())||void 0===s?void 0:s.isLog()){const i=Math.abs(this._points[0].y-e.stopLevel);t=Math.abs(this._points[0].y-e.profitLevel)>i?-1:1}else{const i=Math.abs(e.stopPrice-e.entryPrice);t=Math.abs(e.profitPrice-e.entryPrice)>i?-1:1}const i=e.profitLevel{"use strict";var n=i(86441).Point,r=i(4652).distanceToLine,s=i(4754).LineSourcePaneView,a=i(4754).thirdPointCursorType,o=i(9933).TrendLineRenderer,l=i(98930).PolygonRenderer,d=i(29639).CompositeRenderer,h=i(85113).LineEnd,c=i(6947).PaneCursorType;const{LINESTYLE_SOLID:u}=i(53479);t.RotatedRectanglePaneView=class extends s{constructor(e,t){super(e,t),this._poligonRenderer=new l,this._renderer=null}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._distance=0,3===this._points.length&&(this._distance=r(this._points[0],this._points[1],this._points[2]).distance),0!==this._points.length){var e,t,i,s,l=new d,p=this._source.properties(),_=this._points[0],g=this._points[1];if(2===this._points.length){(v={}).points=this._points,v.floatPoints=this._floatPoints,v.width=this._model.timeScale().width(),v.height=this._source.priceScale().height(),v.color=p.color.value(),v.linewidth=1,v.linestyle=u,v.extendleft=!1,v.extendright=!1,v.leftend=h.Normal,v.rightend=h.Normal;var f=new o;f.setData(v),l.append(f)}else if(3===this._points.length){var v,x=g.subtract(_),m=new n(x.y,-x.x).normalized().scaled(this._distance),R=m.scaled(-1);e=_.add(m),t=g.add(m),i=_.add(R),s=g.add(R),(v={}).points=[e,t,s,i],v.color=p.color.value(),v.linewidth=this._source.properties().linewidth.value(),v.linestyle=u,v.filled=!0,v.backcolor=p.backgroundColor.value(),v.fillBackground=p.fillBackground.value(),v.transparency=p.transparency.value(),this._poligonRenderer.setData(v),l.append(this._poligonRenderer)}var w=[];w.push(_),this._points.length>=2&&w.push(g);var y=[c.Default,c.Default];if(3===this._points.length){e.data=2,i.data=2,t.data=2,s.data=2,w.push(e,i,t,s);var T=a(_,g);y.push(T,T,T,T)}l.append(this.createLineAnchor({points:w,pointsCursorType:y},0)),this._renderer=l}}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}}},3793:(e,t,i)=>{"use strict";i.r(t),i.d(t,{SignpostPaneView:()=>P});var n=i(86441),r=i(7394),s=i(29639),a=i(6947),o=i(14888),l=i(4754),d=i(83990),h=i(17364),c=i(4652),u=i(34026),p=i(50151),_=i(78996),g=i(44381),f=i(55014);function v(e){return void 0===e?0:e.poleTailHeight+2*e.circleRadius}function x(e){return e.poleStartY}function m(e){ return e.inverseAnchorPosition?e.anchorY:e.anchorY+(e.labelHeight+v(e.plate))*e.direction}function R(e){return e.inverseAnchorPosition?e.anchorY+v(e.plate)*e.direction:e.anchorY+e.labelHeight*e.direction}class w{constructor(e,t){this._data=null,this._hitTestResult=e,this._phantomMode=Boolean(t)}setData(e){if(null===e)return void(this._data=null);this._data={...e,labelHeight:0,labelRenderer:new g.TextRenderer};const t=this._data,i=t.label,r={offsetX:0,offsetY:0,points:[new n.Point(t.x,t.anchorY)],forceCalculateMaxLineWidth:!0,vertAlign:-1===i.labelDirection?"bottom":"top",horzAlign:"center",horzTextAlign:"center",font:i.labelFont,fontSize:i.labelFontSize,bold:i.labelFontBold,italic:i.labelFontItalic,backgroundRoundRect:i.labelBorderRadius,padding:i.labelPadding,boxPaddingVert:i.labelBoxPaddingVert,boxPaddingHorz:i.labelBoxPaddingHorz,wordWrapWidth:i.labelWordWrapWidth,color:i.labelColor,borderColor:i.labelBorderColor,borderWidth:1,backgroundColor:i.labelBackgroundColor,text:i.text};if(t.labelRenderer.setData(r),this._data.labelHeight=this._data.labelRenderer.measure().height,t.inverseAnchorPosition){const e=(0,p.ensureDefined)(r.points);r.points=[new n.Point(e[0].x,R(t))]}else{const e=1===t.direction?Math.min(t.poleStartY-this._data.labelHeight,t.anchorY):Math.max(t.poleStartY+this._data.labelHeight,t.anchorY);t.anchorY!==e&&(t.anchorY=e,r.points=[new n.Point(t.x,e)])}t.labelRenderer.setData(r)}itemAnchorY(){return null===this._data?null:this._data.anchorY}hitTest(e,t){if(null===this._data)return null;const[i,r,s]=function(e,t){const i=(0,_.lastMouseOrTouchEventInfo)().isTouch?20:3,r=e.x,s=e.plate,a=(0,c.distanceToSegment)(new n.Point(r,x(e)),new n.Point(r,m(e)),t).distance0&&(0,u.pointInCircle)(t,new n.Point(r,a),s.circleRadius+i)}return[a,o,!a&&!o&&null!==e.labelRenderer.hitTest(t)]}(this._data,e);if(i||r||s){const e={hideCrosshairLinesOnHover:!0,activeItem:i||r?this._data.itemIndex:this._data.label.labelIndex};return s?e.areaName=o.AreaName.Text:r&&(e.areaName=o.AreaName.Style),new o.HitTestResult(this._hitTestResult,e)}return null}draw(e,t){if(null===this._data)return;e.save(),this._phantomMode&&(e.globalAlpha=.5);const{poleColor:i,emojiRadius:n}=this._data,r=t.pixelRatio,s=Math.max(1,Math.floor(r)),a=s%2?.5:0;e.beginPath(),e.strokeStyle=i,e.lineWidth=s;const o=Math.round(this._data.x*r)+a;e.moveTo(o,Math.round(x(this._data)*r)),e.lineTo(o,Math.round(m(this._data)*r)),void 0!==this._data.plate&&0!==this._data.plate.poleTailHeight&&(e.moveTo(o,Math.round(R(this._data)*r)),e.lineTo(o,Math.round(function(e){var t,i;const n=null!==(i=null===(t=e.plate)||void 0===t?void 0:t.poleTailHeight)&&void 0!==i?i:0;return e.inverseAnchorPosition?R(e)-n*e.direction:R(e)+n*e.direction}(this._data)*r))),e.stroke(),void 0!==this._data.plate&&function(e,t,i,n,r){ const s=r.pixelRatio,{circleRadius:a,poleTailHeight:o,circleBorderColor:l,circleBackgroundColor:d}=i;e.strokeStyle=l,e.fillStyle=d;const h=(0,f.fillScaledRadius)(a,s),c=Math.round(t.x*s),u=t.inverseAnchorPosition?Math.round(t.anchorY*s)+Math.round(a*s)*t.direction:Math.round(t.anchorY*s)+Math.round((t.labelHeight+o+a)*s)*t.direction,p=Math.max(1,Math.floor(s))%2/2,_=c+p,g=u+p;if(e.shadowOffsetY=1,e.shadowColor=i.shadowColor,e.shadowBlur=4,e.beginPath(),e.arc(_,g,h,0,2*Math.PI,!0),e.closePath(),e.fill(),e.shadowColor="transparent",t.svgRenderer){const i=2*(0,f.fillScaledRadius)(n,s);t.svgRenderer.render(e,{targetViewBox:{x:_-i/2,y:g-i/2,width:i,height:i}})}const v=Math.round(i.circleBorderWidth*s),x=(0,f.strokeScaledRadius)(a,s,v);if(e.lineWidth=v,e.beginPath(),e.arc(_,g,x,0,2*Math.PI,!0),e.closePath(),e.stroke(),i.outsideBorderWidth){e.save();const t=Math.round(i.outsideBorderWidth*s),n=x+v/2+t/2;e.lineWidth=t,e.strokeStyle=i.outsideBorderColor,e.beginPath(),e.arc(_,g,n,0,2*Math.PI,!0),e.closePath(),e.stroke(),e.restore()}}(e,this._data,this._data.plate,n,t),this._data.labelRenderer.draw(e,t),e.restore()}}var y=i(5692),T=i(93043);const b={circleBorderColor:(0,r.getHexColorByName)("color-cold-gray-900"),labelBackgroundColor:(0,r.getHexColorByName)("color-cold-gray-900"),labelBorderColor:(0,r.getHexColorByName)("color-cold-gray-800"),labelTextColor:(0,r.getHexColorByName)("color-cold-gray-200"),poleColor:(0,r.getHexColorByName)("color-cold-gray-500"),shadowColor:"rgba(0,0,0,0.4)",selectionColor:(0,r.getHexColorByName)("color-tv-blue-500")},L={circleBorderColor:(0,r.getHexColorByName)("color-white"),labelBackgroundColor:(0,r.getHexColorByName)("color-white"),labelBorderColor:(0,r.getHexColorByName)("color-cold-gray-150"),labelTextColor:(0,r.getHexColorByName)("color-cold-gray-900"),poleColor:(0,r.getHexColorByName)("color-cold-gray-500"),shadowColor:"rgba(0,0,0,0.2)",selectionColor:(0,r.getHexColorByName)("color-tv-blue-500")};class P extends l.LineSourcePaneView{constructor(e,t){super(e,t),this._renderer=new s.CompositeRenderer,this._emojiCache=null,this._destroyed=!1,this._signpostRenderer=new w(o.HitTestResult.MOVEPOINT,e.isPhantom()),e.properties().childs().emoji.subscribe(this,this._updateEmoji),this._updateEmoji()}destroy(){this._source.properties().childs().emoji.unsubscribeAll(this),this._destroyed=!0}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){if(super._updateImpl(),this._renderer.clear(),!this._updateTimelineRenderer(e))return;if(this._renderer.append(this._signpostRenderer),this._source.isPhantom())return;const i=this._itemAnchorY();if(null===i)return;const r=this._points[0],s=new n.Point(r.x,i);s.data=r.data,s.square=!0,this._renderer.append(this.createLineAnchor({points:[s],pointsCursorType:[a.PaneCursorType.VerticalResize]},0))}_itemAnchorY(){return this._signpostRenderer.itemAnchorY()}_updateTimelineRenderer(e){var t;const i=this._source.ownerSource();if(null===i)return!1;const n=this._model.timeScale(),r=i.priceScale(),s=i.firstValue() ;if(n.isEmpty()||null===r||r.isEmpty()||null===s)return!1;const a=this._model.isDark()?b:L,o=this._model.mainSeries(),l=this._source.properties().childs(),c=l.position.value(),u=this._source.customEvent(),p=i===o?(0,d.getSeriesPosition)(o,u):(0,d.getNoDataPosition)(u,r,s);if(null===p)return!1;const _=n.indexToCoordinate(p.index),g=r.priceToCoordinate(p.price,s),f=l.showImage.value();let v=(0,d.positionToCoordinate)(c,e,g,p.positionPointDirection);v>=-1e-10&&v<=e+1e-10&&(v=Math.min(e-2,Math.max(2,v)));const x=p.visualDirection!==p.positionPointDirection,m=p.visualDirection,R={emojiRadius:16,poleColor:a.poleColor,svgRenderer:null===(t=this._emojiCache)||void 0===t?void 0:t.emojiSvgRenderer,itemIndex:1,label:{labelIndex:1,labelDirection:p.positionPointDirection,labelFont:h.CHART_FONT_FAMILY,labelFontSize:l.fontSize.value(),labelFontBold:l.bold.value(),labelFontItalic:l.italic.value(),labelBorderRadius:4,labelPadding:3,labelBoxPaddingVert:6,labelBoxPaddingHorz:8,labelWordWrapWidth:134,labelColor:a.labelTextColor,labelBorderColor:a.labelBorderColor,labelBackgroundColor:a.labelBackgroundColor,text:l.text.value()},x:_,anchorY:v,poleStartY:p.poleStartY,direction:m*(x?-1:1),inverseAnchorPosition:x};return f&&(R.plate={circleBackgroundColor:l.backgroundsColors.value(),outsideBorderWidth:0,circleBorderColor:a.circleBorderColor,circleBorderWidth:1,poleTailHeight:l.text.value()?10:0,circleRadius:35,shadowColor:a.shadowColor,outsideBorderColor:a.selectionColor}),this._signpostRenderer.setData(R),!0}async _updateEmoji(){var e;const t=this._source.properties().childs().emoji.value();if(null!==this._emojiCache&&this._emojiCache.emoji===t)return;null!==this._emojiCache&&(null===(e=this._emojiCache.abortController)||void 0===e||e.abort(),this._emojiCache.abortController=void 0);const n=(0,y.getTwemojiUrl)(t,"svg"),r=new AbortController,s=(0,T.fetch)(n,{signal:r.signal}).then((e=>e.text())),a={emoji:t,abortController:r};this._emojiCache=a;const[o,{svgRenderer:l}]=await Promise.all([s,i.e(2616).then(i.bind(i,33268))]);!this._destroyed&&a.abortController&&(a.emojiSvgRenderer=l(o),this._model.updateSource(this._source))}}},71586:(e,t,i)=>{"use strict";i.r(t),i.d(t,{SineLinePaneView:()=>h});var n=i(86441),r=i(4754),s=i(29639),a=i(86216),o=i(14888),l=i(9740);class d extends a.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=e}hitTest(e,t){const i=(e.x-this._data.point.x)*Math.PI/this._data.width;let n=Math.sin(i-Math.PI/2)*this._data.height/2;return n=this._data.point.y+n+this._data.height/2,Math.abs(n-e.y)<=3?new o.HitTestResult(o.HitTestResult.MOVEPOINT):null}_drawImpl(e){const t=e.context;t.strokeStyle=this._data.color,t.lineWidth=this._data.lineWidth,(0,l.setLineStyle)(t,this._data.lineStyle),t.beginPath(),t.moveTo(this._data.point.x,this._data.point.y);const i=Math.max(1,this._data.width/30),n=e.mediaSize.width-this._data.point.x+i;for(let e=1;e<=n;e+=i){const i=e*Math.PI/this._data.width,n=Math.sin(i-Math.PI/2)*this._data.height/2;t.lineTo(this._data.point.x+e,this._data.point.y+n+this._data.height/2)}t.stroke()}} class h extends r.LineSourcePaneView{constructor(e,t){super(e,t),this._renderer=new s.CompositeRenderer}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){if(super._updateImpl(),this._renderer.clear(),this._points.length<2)return;const[i,r]=this._source.points();if(0===2*Math.abs(i.index-r.index))return void this.addAnchors(this._renderer);const[s,a]=this._points,o=Math.abs(s.x-a.x),l=a.y-s.y,h=this._source.properties().childs(),c=h.linewidth.value();if(s.y<-c&&a.y<-c||s.y>e+c&&a.y>e+c)return;const u=2*o,p=s.x>0?s.x-Math.ceil(s.x/u)*u:s.x+Math.floor(-s.x/u)*u,_={point:new n.Point(p,s.y),width:o,height:l,color:h.linecolor.value(),lineWidth:h.linewidth.value(),lineStyle:h.linestyle.value()};this._renderer.append(new d(_)),this.addAnchors(this._renderer)}}},90596:(e,t,i)=>{"use strict";i.r(t),i.d(t,{StudyLineDataSourceAnchorsPaneView:()=>r});var n=i(4754);class r extends n.LineSourcePaneView{renderer(){return this._invalidated&&(this._updateImpl(),this._invalidated=!1),this.createLineAnchor({points:this._getPoints()},0)}}},99585:(e,t,i)=>{"use strict";i.d(t,{SvgIconPaneView:()=>g});var n=i(86441),r=i(25422),s=i(50151),a=i(38031),o=i(29639),l=i(6947),d=i(4754),h=i(7394),c=i(86216),u=i(14888);const p=(0,h.getHexColorByName)("color-tv-blue-600");class _ extends c.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e,t){if(null===this._data)return null;const{size:i,angle:n,point:s}=this._data,a=(0,r.rotationMatrix)(-n),o=(0,r.transformPoint)(a,e.subtract(s));return Math.abs(o.y)<=i/2&&Math.abs(o.x)<=i/2?new u.HitTestResult(u.HitTestResult.MOVEPOINT):null}isOutOfScreen(e,t){if(null===this._data)return!0;const{size:i,point:n,angle:r}=this._data;let s;return s=r%(Math.PI/2)==0?i/2:Math.sqrt(i**2*2)/2,n.x+s<0||n.x-s>t||n.y+s<0||n.y-s>e}_drawImpl(e){if(null===this._data)return;const{size:t,svg:i,point:n,angle:r,color:s,background:a,selected:o}=this._data,l=e.context;l.translate(n.x,n.y);const d=r-Math.PI/2;l.rotate(d);const h=t/2;o&&(l.fillStyle=a,l.strokeStyle=p,l.beginPath(),l.rect(-h,-h,t,t),l.closePath(),l.fill(),l.stroke()),i&&(l.translate(-h,-h),null!==s&&(l.fillStyle=s),i.render(l,{targetViewBox:{x:0,y:0,width:t,height:t},doNotApplyColors:null!==s}))}}class g extends d.LineSourcePaneView{constructor(e,t,i){super(e,t),this._iconRenderer=new _,this._renderer=new o.CompositeRenderer,this._svg=i}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){if(super._updateImpl(),this._renderer.clear(),this._points.length<1)return;const i=this._source.properties().childs(),s=i.size.value(),a={point:this._points[0],color:this._iconColor(),size:s,svg:this._svg,angle:i.angle.value(),selected:this.areAnchorsVisible(),background:this._calculateBackgroundColor()};this._iconRenderer.setData(a),this._iconRenderer.isOutOfScreen(e,t)||this._renderer.append(this._iconRenderer);const o=this._points[0],h=this._source.getAnchorLimit();let c=new n.Point(Math.max(h,s)/2,0),u=new n.Point(0,Math.max(h,s)/2) ;const p=(0,r.rotationMatrix)(i.angle.value());c=(0,r.transformPoint)(p,c),u=(0,r.transformPoint)(p,u);const _=o.add(c);_.data=0;const g=o.subtract(c);g.data=1;const f=o.add(u);f.data=2,f.square=!0;const v=o.subtract(u);v.data=3,v.square=!0;const x=(0,d.thirdPointCursorType)(_,g),m=[l.PaneCursorType.Default,l.PaneCursorType.Default,x,x];this._renderer.append(this.createLineAnchor({points:[_,g,f,v],pointsCursorType:m},0))}_calculateBackgroundColor(){return(0,a.generateColor)(this._model.backgroundColorAtYPercentFromTop(this._points[0].y/(0,s.ensureNotNull)(this._model.paneForSource(this._source)).height()),60,!0)}}},9880:(e,t,i)=>{"use strict";i.r(t),i.d(t,{TextPaneView:()=>_});var n=i(50151),r=i(86441),s=i(17364),a=i(6947),o=i(44381),l=i(29639),d=i(53074),h=i(1194),c=i(14888),u=i(4754);const p=[a.PaneCursorType.HorizontalResize];class _ extends u.LineSourcePaneView{constructor(e,t,i,n,r,s,a,l){super(e,t),this._textRenderer=new o.TextRenderer,this._noSelection=!1,this._renderer=null,this._offsetX=i,this._offsetY=n,this._vertAlign=r,this._horzAlign=s,this._forceTextAlign=Boolean(a),this._noSelection=!1,this._renderer=null,this._recalculateSourcePointsOnFirstUpdate=l}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}disableSelection(){this._noSelection=!0}isEditMode(){return!this._getModel().readOnly()}_updateImpl(e,t){super._updateImpl(e,t),this._renderer=null;const i=this._getSource(),a=i.priceScale();if(!a||a.isEmpty())return;const o=i.properties().childs(),u=this._getModel(),_={text:o.text.value(),color:o.color.value(),fontSize:o.fontsize.value(),boxPadding:o.fontsize.value()/6,font:s.CHART_FONT_FAMILY,vertAlign:this._vertAlign||"top",horzAlign:this._horzAlign||"left",offsetX:this._offsetX||0,offsetY:this._offsetY||0,forceTextAlign:this._forceTextAlign};if(_.points=i.isFixed()?[(0,n.ensureDefined)(i.fixedPoint())]:this._points,o.fillBackground&&o.fillBackground.value()&&(_.backgroundColor=o.backgroundColor.value()),o.drawBorder&&o.drawBorder.value()&&(_.borderColor=o.borderColor.value()),o.wordWrap&&o.wordWrap.value()&&(_.wordWrapWidth=o.wordWrapWidth.value()),_.bold=o.bold&&o.bold.value(),_.italic=o.italic&&o.italic.value(),_.highlightBorder=u.selection().isSelected(i),!i.isFixed()&&o.fixedSize&&!o.fixedSize.value()){_.scaleX=u.timeScale().barSpacing()/i.barSpacing();const e=(0,n.ensureNotNull)(a.priceRange());let t=a.height()/e.length();const r=a.logFormula();i.isPriceDencityLog()&&!a.isLog()&&(t=a.height()/((0,h.toLog)(e.maxValue(),r)-(0,h.toLog)(e.minValue(),r))),!i.isPriceDencityLog()&&a.isLog()&&(t=a.height()/((0,h.fromLog)(e.maxValue(),r)-(0,h.fromLog)(e.minValue(),r)));const s=i.priceDencity();void 0!==s&&(_.scaleY=t/s),(void 0===s||void 0===_.scaleY||_.scaleY<=0)&&delete _.scaleY}if(this._textRenderer.setData(_),this._textRenderer.isOutOfScreen(t,e))return;const g=1===_.points.length;if(g&&void 0!==this._recalculateSourcePointsOnFirstUpdate){this._renderer=null;const e=this._textRenderer.measure();return this._recalculateSourcePointsOnFirstUpdate(e.width,e.height), void(this._recalculateSourcePointsOnFirstUpdate=void 0)}if(g&&!this._noSelection){const e=new l.CompositeRenderer;e.append(this._textRenderer);const t=_.points[0].clone(),i=this._textRenderer.measure(),n=i.width,s=i.height;if(_.wordWrapWidth){const i=new r.Point(t.x+n,t.y+s/2);i.data=1,e.append(this.createLineAnchor({points:[i],pointsCursorType:p},1))}const a=new r.Point(t.x+n/2,t.y+s);return a.data=0,e.append(new d.SelectionRenderer({points:[a],bgColors:this._lineAnchorColors([a]),visible:this.areAnchorsVisible(),hittestResult:c.HitTestResult.MOVEPOINT,barSpacing:u.timeScale().barSpacing()})),void(this._renderer=e)}this._renderer=this._textRenderer}}},52982:(e,t,i)=>{"use strict";i.r(t),i.d(t,{LineToolThreeDrivesPaneView:()=>u});var n=i(53479),r=i(29639),s=i(44381),a=i(34657),o=i(9933),l=i(85113),d=i(98930),h=i(4754),c=i(17364);class u extends h.LineSourcePaneView{constructor(){super(...arguments),this._numericFormatter=new a.NumericFormatter,this._retrace1LabelRenderer=new s.TextRenderer,this._retrace12LabelRenderer=new s.TextRenderer,this._polyLineRenderer=new d.PolygonRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;let e=NaN,t=NaN;if(this._source.points().length>=4){const[,t,i,n]=this._source.points();e=Math.round(100*Math.abs((n.price-i.price)/(i.price-t.price)))/100}if(this._source.points().length>=6){const[,,,e,i,n]=this._source.points();t=Math.round(100*Math.abs((n.price-i.price)/(i.price-e.price)))/100}if(this._points.length<2)return;const i=this._source.properties().childs(),s=new r.CompositeRenderer,a=(e,t)=>({points:[e],text:t,color:i.textcolor.value(),vertAlign:"middle",horzAlign:"center",font:c.CHART_FONT_FAMILY,offsetX:0,offsetY:0,bold:i.bold&&i.bold.value(),italic:i.italic&&i.italic.value(),fontsize:i.fontsize.value(),backgroundColor:i.color.value(),backgroundRoundRect:4}),d=(e,t)=>({points:[e,t],color:i.color.value(),linewidth:i.linewidth.value(),linestyle:n.LINESTYLE_DOTTED,extendleft:!1,extendright:!1,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal}),h={points:this._points,color:i.color.value(),linewidth:i.linewidth.value(),linestyle:n.LINESTYLE_SOLID,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal,backcolor:"rgba(0, 0, 0, 0)",fillBackground:!1,filled:!1};if(this._polyLineRenderer.setData(h),s.append(this._polyLineRenderer),!isNaN(e)){const t=new o.TrendLineRenderer;t.setData(d(this._points[1],this._points[3])),s.append(t);const i=a(this._points[1].add(this._points[3]).scaled(.5),this._numericFormatter.format(e));this._retrace1LabelRenderer.setData(i),s.append(this._retrace1LabelRenderer)}if(!isNaN(t)){const e=new o.TrendLineRenderer;e.setData(d(this._points[3],this._points[5])),s.append(e);const i=a(this._points[5].add(this._points[3]).scaled(.5),this._numericFormatter.format(t));this._retrace12LabelRenderer.setData(i),s.append(this._retrace12LabelRenderer)}this.addAnchors(s),this._renderer=s}}},81336:(e,t,i)=>{"use strict";i.r(t),i.d(t,{TimeCyclesPaneView:()=>c}) ;var n=i(86441),r=i(29639),s=i(4754),a=i(38031),o=i(14888),l=i(9740),d=i(86216);class h extends d.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e){if(null===this._data||e.y>this._data.point.y)return null;if(e.xthis._data.point.x+this._data.width)return null;const t=new n.Point(this._data.point.x+this._data.width/2,this._data.point.y);let i=e.subtract(t);const r=this._data.height/this._data.width;i=new n.Point(i.x,i.y/r);const s=i.length();return Math.abs(s-this._data.width/2)<3?new o.HitTestResult(o.HitTestResult.MOVEPOINT):null}_drawImpl(e){if(null===this._data)return;const t=e.context;t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,(0,l.setLineStyle)(t,this._data.linestyle),t.save(),t.translate(this._data.point.x+1,this._data.point.y),t.scale(this._data.width,this._data.height),t.beginPath(),t.arc(.5,0,.5,Math.PI,0,!1),t.restore(),t.stroke(),this._data.fillBackground&&(t.fillStyle=(0,a.generateColor)(this._data.backcolor,this._data.transparency),t.fill())}}class c extends s.LineSourcePaneView{constructor(){super(...arguments),this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){if(super._updateImpl(),this._renderer=null,this._points.length<2)return;const e=this._source.points(),t=e[0],i=e[1],s=Math.min(t.index,i.index),a=Math.max(t.index,i.index),o=a-s,l=this._points[0],d=this._points[1],c=Math.abs(l.x-d.x),u=new r.CompositeRenderer,p=this._source.properties().childs(),_=this._model.timeScale();if(0===o)return;let g=Math.min(l.x,d.x);const f=[];for(let e=s;g>-c;e-=o)g=_.indexToCoordinate(e),f.push(g);g=Math.max(l.x,d.x);for(let e=a;g<_.width();e+=o)g=_.indexToCoordinate(e),f.push(g);for(let e=0;e{"use strict";i.r(t),i.d(t,{TrendAnglePaneView:()=>b});var n=i(50151),r=i(86441),s=i(44352),a=i(80142),o=i(18766),l=i(68336),d=i(14888),h=i(29639),c=i(85113),u=i(44381),p=i(9933),_=i(14594),g=i(53074),f=i(17364),v=i(10773),x=i(71145),m=i(86216);class R extends m.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e){return null}_drawImpl(e){if(null===this._data)return;const t=e.context;t.translate(this._data.point.x,this._data.point.y),t.strokeStyle=this._data.color,t.setLineDash([1,2]);const i=this._data.size;t.beginPath(),t.moveTo(0,0),t.lineTo(i,0),t.arc(0,0,i,0,-this._data.angle,this._data.angle>0),t.stroke()}}var w=i(6124),y=i(30739),T=i(20575);class b extends T.AlertableLineSourcePaneView{constructor(e,t){super(e,t),this._secondPoint=null,this._label=null,this._labelData=null,this._percentageFormatter=new o.PercentageFormatter,this._pipFormatter=null, this._lastSymbolInfo=null,this._trendRenderer=new p.TrendLineRenderer,this._angleRenderer=new R,this._angleLabelRenderer=new u.TextRenderer,this._renderer=new h.CompositeRenderer,this._cache=null,this._cacheDrawParams=null,this._cacheInvalidated=!0,this._statCache=null,this._iconsReady=!1,_.iconsContainer.onAllIconsReady().subscribe(this,(()=>{this._cache&&(this._cache.destroy(),this._cache=null),this._iconsReady=!0,t.lightUpdate()}))}destroy(){this._cache&&(this._cache.destroy(),this._cache=null),_.iconsContainer.onAllIconsReady().unsubscribeAll(this)}iconsReady(){return this._iconsReady}update(){super.update(),this._cacheInvalidated=!0}getCacheCanvas(e){return this._createCacheIfRequired(e).canvas()}getCacheRects(e,t){const i=this._createCacheIfRequired(e),r=(0,n.ensureNotNull)(this._statCache),s=(0,n.ensureNotNull)(this._middlePoint),a=(0,n.ensureNotNull)(this._secondPoint),o=this._source.properties().childs().statsPosition.value(),l=this._source.getPointByPosition(o,this._points[0],s,a),d={left:0,top:i.topByRow(r.rowIndex),width:i.rowWidth(r.rowIndex),height:i.rowHeight(r.rowIndex)},h={left:Math.floor(l.x),top:Math.floor(l.y),width:d.width,height:d.height};return h.left+=w.LabelSettings.paddingLeftRight,this._points[1].ythis._points[0].y&&this._points[1].x>this._points[0].x?h.top-=w.LabelSettings.paddingLeftRight+h.height:h.top+=w.LabelSettings.paddingLeftRight,{cacheRect:d,targetRect:h}}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_createCacheIfRequired(e){return null!==this._cache&&null!==this._cacheDrawParams&&(0,v.areEqualPaneRenderParams)(e,this._cacheDrawParams)||(this._cache&&this._cache.destroy(),this._cache=new y.TrendLineStatsCache(e),this._statCache=this._cache.updateSource(this._source,(()=>this._statLabelData())),this._cacheDrawParams=e,this._cacheInvalidated=!1),this._cacheInvalidated&&(this._statCache=this._cache.updateSource(this._source,(()=>this._statLabelData())),this._cacheInvalidated=!1),this._cache}_updateImpl(e,t){var i;this._renderer.clear(),super._updateImpl();const n=this._source.angle();if(this._points.length>0&&null!==n){const e=this._points[0],t=Math.cos(n),i=-Math.sin(n),s=new r.Point(t,i);this._secondPoint=e.addScaled(s,this._source.distance()),this._middlePoint=this._source.calcMiddlePoint(this._points[0],this._secondPoint)}this._invalidated=!1;const s=this._source.priceScale(),o=this._model.timeScale();if(!s||s.isEmpty()||o.isEmpty())return;if(null===this._model.timeScale().visibleBarsStrictRange())return;if(this._source.points().length<2)return;if(this._points.length<2||null===this._secondPoint)return;const l=this._source.properties().childs(),h=l.showBarsRange.value();l.showPriceRange.value()||h||(this._label=null,this._labelData&&(this._labelData.text=""));const u=l.linecolor.value(),p={points:[this._points[0],this._secondPoint],color:u,linewidth:l.linewidth.value(),linestyle:l.linestyle.value(),extendleft:l.extendLeft.value(),extendright:l.extendRight.value(), leftend:c.LineEnd.Normal,rightend:c.LineEnd.Normal};this._trendRenderer.setData(p),this._renderer.append(this._trendRenderer);const _=this.isHoveredSource()||this.isSelectedSource()||l.alwaysShowStats.value(),v=(this.isHoveredSource()||this.isSelectedSource())&&l.showMiddlePoint.value();if(_&&2===this._points.length){const e=new x.PaneRendererCachedImage(this,0);this._renderer.append(e)}this._middlePoint&&this._renderer.append(new g.SelectionRenderer({points:[this._middlePoint],bgColors:this._lineAnchorColors([this._middlePoint]),color:u,visible:v&&this.areAnchorsVisible(),hittestResult:d.HitTestResult.REGULAR,barSpacing:0}));const m={point:this._points[0],angle:null!==(i=this._source.angle())&&void 0!==i?i:0,color:l.linecolor.value(),size:50};this._angleRenderer.setData(m),this._renderer.append(this._angleRenderer);const R=Math.round(180*m.angle/Math.PI)+"º",w={points:[new r.Point(this._points[0].x+50,this._points[0].y)],text:(0,a.forceLTRStr)(R),color:l.textcolor.value(),horzAlign:"left",font:f.CHART_FONT_FAMILY,offsetX:5,offsetY:0,bold:l.bold.value(),italic:l.italic.value(),fontsize:l.fontsize.value(),vertAlign:"middle"};this._angleLabelRenderer.setData(w),this._renderer.append(this._angleLabelRenderer),p.points.length>=2&&this._addAlertRenderer(this._renderer,p.points);const y=new r.Point(this._secondPoint.x,this._secondPoint.y);y.data=1,this._renderer.append(this.createLineAnchor({points:[this._points[0],y]},0))}_statLabelData(){const e=this._source.points(),t=e[0],r=e[1],o=this._source.properties().childs(),d=[];let h,c,u;const p=o.showPriceRange.value(),_=(0,n.ensureNotNull)(this._source.ownerSource());if(p&&this._source.priceScale()){const e=r.price-t.price,i=e/Math.abs(t.price);h=_.formatter().format(e)+" ("+this._percentageFormatter.format(100*i)+")";const n=this._model.mainSeries().symbolInfo();n&&n!==this._lastSymbolInfo&&(this._pipFormatter=new l.PipFormatter(n.pricescale,n.minmov,n.type,n.minmove2),this._lastSymbolInfo=n),h+=this._pipFormatter?", "+this._pipFormatter.format(e):"",d.push("priceRange")}const g=o.showBarsRange.value();g&&(c="",g&&(u=r.index-t.index,c+=s.t(null,void 0,i(33355)).format({count:(0,a.forceLTRStr)(String(u))})),c&&d.push("barsRange")),this._label=[(0,a.forceLTRStr)(h),c].filter((e=>null!=e)).join("\n")||null;const v=this._model.isDark(),x=v?w.LabelSettings.bgColorDark:w.LabelSettings.bgColorLight,m=v?w.LabelSettings.textColorDark:w.LabelSettings.textColorLight,R=o.statsPosition.value(),y={points:[this._source.getPointByPosition(R,this._points[0],(0,n.ensureNotNull)(this._middlePoint),(0,n.ensureNotNull)(this._secondPoint))],text:this._label,color:m,isDark:v,font:f.CHART_FONT_FAMILY,fontSize:w.LabelSettings.fontSize,lineSpacing:w.LabelSettings.lineSpacing,backgroundColor:x,backgroundRoundRect:w.LabelSettings.rectRadius,paddingLeft:w.LabelSettings.paddingLeftRight,paddingRight:w.LabelSettings.paddingLeftRight,paddingTop:w.LabelSettings.paddingTopBottom,paddingBottom:w.LabelSettings.paddingTopBottom,textPadding:w.LabelSettings.textPadding,doNotAlignText:!0,icons:d,bold:!1, italic:!1,lines:[],wordWrapWidth:0};return this._points[1].y{"use strict";i.r(t),i.d(t,{TrendBasedFibExtensionPaneView:()=>u});var n=i(86441),r=i(26740),s=i(9933),a=i(14888),o=i(29639),l=i(85113),d=i(38265),h=i(44381),c=i(45306);class u extends c.LineToolPaneViewFibWithLabels{constructor(e,t){super(e,t),this._trendLineRendererPoints12=new s.TrendLineRenderer,this._trendLineRendererPoints23=new s.TrendLineRenderer,this._rectangleRenderers={},this._hlevelLineRenderers={},this._renderer=new o.CompositeRenderer,this._levels=[]}renderer(e,t){return this._invalidated&&this._updateImpl(t,e),this._renderer}_updateImpl(e,t){var i,o;if(super._updateImpl(),this._renderer.clear(),this._points.length<2)return;const[c,u]=this._points,p=this._source.properties().childs();if(3===this._source.points().length){const e=this._source.priceScale();if(!e||e.isEmpty()||this._model.timeScale().isEmpty())return;const t=null===(i=this._source.ownerSource())||void 0===i?void 0:i.firstValue();if(null==t)return;const[n,r,s]=this._source.points();let a=!1;p.reverse&&p.reverse.value()&&(a=p.reverse.value()),this._levels=[];const o=a?n.price:r.price,l=a?r.price:n.price,h=o-l;let c,u,_;const g=e.isLog()&&p.fibLevelsBasedOnLogScale.value();if(g){c=e.priceToCoordinate(o,t);u=c-e.priceToCoordinate(l,t),_=e.priceToCoordinate(s.price,t)}const f={price:s.price,coordinate:_},v={price:h,coordinate:u},x=this._source.levelsCount();for(let i=1;i<=x;i++){const n=p["level"+i].childs();if(!n.visible.value())continue;const r=n.coeff.value(),s=n.color.value(),a=(0,d.fibLevelCoordinate)(f,v,r,e,t,g),o=(0,d.fibLevelPrice)(f,v,r,e,t,g);this._levels.push({color:s,price:o,y:a,linewidth:p.levelsStyle.childs().linewidth.value(),linestyle:p.levelsStyle.childs().linestyle.value(),index:i})}}const _=p.trendline.childs();if(_.visible.value()){const e={points:[c,u],color:_.color.value(),linewidth:_.linewidth.value(),linestyle:_.linestyle.value(),extendleft:!1,extendright:!1,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal};this._trendLineRendererPoints12.setData(e),this._renderer.append(this._trendLineRendererPoints12)}if(this._points.length<3)return void this.addAnchors(this._renderer);const g=this._points[2];if(_.visible.value()){const e={points:[u,g],color:_.color.value(),linewidth:_.linewidth.value(),linestyle:_.linestyle.value(),extendleft:!1,extendright:!1,leftend:l.LineEnd.Normal,rightend:l.LineEnd.Normal};this._trendLineRendererPoints23.setData(e),this._renderer.append(this._trendLineRendererPoints23)}const f=Math.min(g.x,u.x),v=Math.max(g.x,u.x),x=p.fillBackground.value(),m=p.transparency.value(),R=p.extendLinesLeft.value(),w=p.extendLines.value();if(x)for(let e=0;e0&&x){const t=this._levels[e-1],i={points:[new n.Point(f,this._levels[e].y),new n.Point(v,t.y)],color:this._levels[e].color,linewidth:0,backcolor:this._levels[e].color,fillBackground:!0,transparency:m,extendLeft:R,extendRight:w} ;this._rectangleRenderers.hasOwnProperty(e)||(this._rectangleRenderers[e]=new r.RectangleRenderer(void 0,void 0,!0));const s=this._rectangleRenderers[e];s.setData(i),this._renderer.append(s)}let y=f,T=v;y===T&&(R&&(y-=1),w&&(T+=1));for(let i=0;i{"use strict";i.r(t),i.d(t,{TrendBasedFibTimePaneView:()=>p});var n=i(86441),r=i(6612),s=i(44381),a=i(26740),o=i(9933),l=i(14888),d=i(29639),h=i(85113),c=i(17364),u=i(4754);class p extends u.LineSourcePaneView{constructor(e,t){super(e,t),this._trendLineRendererPoints12=new o.TrendLineRenderer,this._trendLineRendererPoints23=new o.TrendLineRenderer,this._renderer=new d.CompositeRenderer,this._levels=[]}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_updateImpl(e,t){var i;super._updateImpl(),this._renderer.clear();const o=this._source.properties().childs();if(3===this._source.points().length){const e=this._model.timeScale();if(e.isEmpty())return;const[t,i,n]=this._source.points();if(this._levels=[],i.index===t.index)return;const r=i.index-t.index,s=n.index;if(null===e.visibleBarsStrictRange())return;for(let t=1;t<=11;t++){const i=o["level"+t].childs();if(!i.visible.value())continue;const n=i.coeff.value(),a=i.color.value(),l=Math.round(s+n*r),d={x:e.indexToCoordinate(l),coeff:n,color:a,linewidth:i.linewidth.value(),linestyle:i.linestyle.value(),index:t,text:String(n)};this._levels.push(d)}}if(this._points.length<2)return;const u=new d.CompositeRenderer,[p,_]=this._points,g=o.trendline.childs();if(g.visible.value()){const e={points:[p,_],color:g.color.value(),linewidth:g.linewidth.value(),linestyle:g.linestyle.value(),extendleft:!1,extendright:!1,leftend:h.LineEnd.Normal,rightend:h.LineEnd.Normal};this._trendLineRendererPoints12.setData(e),u.append(this._trendLineRendererPoints12)}if(this._points.length<3)return this.addAnchors(u),void(this._renderer=u);const f=this._points[2];if(g.visible.value()){const e={points:[_,f],color:g.color.value(),linewidth:g.linewidth.value(),linestyle:g.linestyle.value(), extendleft:!1,extendright:!1,leftend:h.LineEnd.Normal,rightend:h.LineEnd.Normal};this._trendLineRendererPoints23.setData(e),u.append(this._trendLineRendererPoints23)}if(o.fillBackground.value()){const t=o.transparency.value();for(let i=1;i{"use strict";var n;i.d(t,{LabelSettings:()=>n}),function(e){e.offset=8,e.fontSize=12,e.lineSpacing=16,e.rectRadius=4,e.bgColorLight="rgba(227,242,253,0.9)",e.bgColorDark="rgba(67,70,81,0.9)",e.textColorLight="#2A2E39",e.textColorDark="#F8F9FD",e.textPadding=10,e.paddingTopBottom=13,e.paddingLeftRight=10}(n||(n={}))},84070:(e,t,i)=>{"use strict";i.r(t),i.d(t,{TrendLinePaneView:()=>T});var n=i(50151),r=i(86441),s=i(44352),a=i(80142),o=i(71145),l=i(29639),d=i(44381),h=i(18766),c=i(34657),u=i(45063),p=i(68336),_=i(53074),g=i(9933),f=i(10773),v=i(14594),x=i(17364),m=i(14888),R=i(20575),w=i(6124),y=i(30739);class T extends R.AlertableLineSourcePaneView{constructor(e,t){super(e,t),this._label=null,this._labelData=null,this._percentageFormatter=new h.PercentageFormatter,this._numericFormatter=new c.NumericFormatter,this._pipFormatter=null,this._lastSymbolInfo=null,this._trendRenderer=new g.TrendLineRenderer,this._labelRenderer=new d.TextRenderer,this._renderer=new l.CompositeRenderer,this._cache=null,this._cacheDrawParams=null,this._cacheInvalidated=!0,this._statCache=null,this._iconsReady=!1,v.iconsContainer.onAllIconsReady().subscribe(this,(()=>{this._cache&&(this._cache.destroy(),this._cache=null),this._iconsReady=!0,t.lightUpdate()}))}destroy(){this._cache&&(this._cache.destroy(),this._cache=null),v.iconsContainer.onAllIconsReady().unsubscribeAll(this)}iconsReady(){return this._iconsReady} update(){super.update(),this._cacheInvalidated=!0}getCacheCanvas(e){return this._createCacheIfRequired(e).canvas()}getCacheRects(e,t){const i=this._createCacheIfRequired(e),r=(0,n.ensureNotNull)(this._statCache),s=(0,n.ensureNotNull)(this._middlePoint),a=this._source.properties().childs().statsPosition.value(),o=this._source.getPointByPosition(a,this._points[0],s,this._points[1]),l={left:0,top:i.topByRow(r.rowIndex),width:i.rowWidth(r.rowIndex),height:i.rowHeight(r.rowIndex)},d={left:Math.floor(o.x),top:Math.floor(o.y),width:l.width,height:l.height};return d.left+=w.LabelSettings.paddingLeftRight,this._points[1].ythis._points[0].y&&this._points[1].x>this._points[0].x?d.top-=w.LabelSettings.paddingLeftRight+d.height:d.top+=w.LabelSettings.paddingLeftRight,{cacheRect:l,targetRect:d}}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_createCacheIfRequired(e){return null!==this._cache&&null!==this._cacheDrawParams&&(0,f.areEqualPaneRenderParams)(e,this._cacheDrawParams)||(this._cache&&this._cache.destroy(),this._cache=new y.TrendLineStatsCache(e),this._statCache=this._cache.updateSource(this._source,(()=>this._statLabelData())),this._cacheDrawParams=e,this._cacheInvalidated=!1),this._cacheInvalidated&&(this._statCache=this._cache.updateSource(this._source,(()=>this._statLabelData())),this._cacheInvalidated=!1),this._cache}_updateImpl(e,t){var i;this._renderer.clear(),this._invalidated=!1;const n=this._source.priceScale(),s=this._model.timeScale();if(!n||n.isEmpty()||s.isEmpty())return;const a=this._model.timeScale().visibleBarsStrictRange();if(null===a)return;const l=this._source.points();if(l.length<2)return;const h=l[0],c=l[1],u=this._source.properties().childs();if(h.index0){const n=this._points[0],s=this._points[1],a=n.x=2&&this._addAlertRenderer(this._renderer,T.points)}_statLabelData(){const e=this._source.points(),t=e[0],r=e[1],o=this._source.properties().childs(),l=[];let d,h,c,_,g,f,v;const m=o.showPriceRange.value(),R=(0,n.ensureNotNull)(this._source.ownerSource());if(m&&this._source.priceScale()){_=r.price-t.price;const e=_/Math.abs(t.price);d=R.formatter().format(_)+" ("+this._percentageFormatter.format(100*e)+")";const i=this._model.mainSeries().symbolInfo();i&&i!==this._lastSymbolInfo&&(this._pipFormatter=new p.PipFormatter(i.pricescale,i.minmov,i.type,i.minmove2),this._lastSymbolInfo=i),d+=this._pipFormatter?", "+this._pipFormatter.format(_):"",l.push("priceRange")}const y=o.showBarsRange.value(),T=o.showDateTimeRange.value(),b=o.showDistance.value(),L=o.showAngle.value();if(L||b){const e=(0,n.ensureNotNull)(this._source.pointToScreenPoint(t));f=(0,n.ensureNotNull)(this._source.pointToScreenPoint(r)).subtract(e),v=Math.round(1e5*f.length())/1e5}if(y||T||b){if(h="",y&&(g=r.index-t.index,h+=s.t(null,void 0,i(33355)).format({count:(0,a.forceLTRStr)(String(g))})),T){const e=this._model.timeScale().indexToUserTime(t.index),i=this._model.timeScale().indexToUserTime(r.index);if(e&&i){const t=(i.valueOf()-e.valueOf())/1e3,n=(0,a.startWithLTR)((new u.TimeSpanFormatter).format(t));n&&(h+=y?" ("+n+")":n)}}b&&(h&&(h+=", "),h+=s.t(null,void 0,i(26273)).format({number:(0,a.forceLTRStr)(this._numericFormatter.format(Math.round(Number(v))))})),h&&l.push("barsRange")}if(L){let e;void 0!==v&&v>0&&void 0!==f&&(f=f.normalized(),e=Math.acos(f.x),f.y>0&&(e=-e)),"number"!=typeof e||isNaN(e)||(c=Math.round(180*e/Math.PI)+"º",l.push("angle"))}this._label=[(0,a.forceLTRStr)(d),h,c].filter((e=>null!=e)).join("\n")||null;const P=this._model.isDark(),S=P?w.LabelSettings.bgColorDark:w.LabelSettings.bgColorLight,C=P?w.LabelSettings.textColorDark:w.LabelSettings.textColorLight,M={points:[this._points[1]],text:this._label,color:C,isDark:P,font:x.CHART_FONT_FAMILY,fontSize:w.LabelSettings.fontSize,lineSpacing:w.LabelSettings.lineSpacing,backgroundColor:S,backgroundRoundRect:w.LabelSettings.rectRadius,paddingLeft:w.LabelSettings.paddingLeftRight,paddingRight:w.LabelSettings.paddingLeftRight,paddingTop:w.LabelSettings.paddingTopBottom,paddingBottom:w.LabelSettings.paddingTopBottom, textPadding:w.LabelSettings.textPadding,doNotAlignText:!0,icons:l,bold:!1,italic:!1,lines:[],wordWrapWidth:0};return this._points[1].y{"use strict";i.d(t,{TrendLineStatsCache:()=>g});var n=i(50151),r=i(86441),s=i(98351),a=i(14594),o=i(17364),l=i(6124),d=i(83499),h=l.LabelSettings.fontSize,c=l.LabelSettings.lineSpacing,u=l.LabelSettings.paddingTopBottom;const p=(0,s.getLogger)("Chart.LineToolTrendLine");function _(e,t){return!(!e&&!t)&&(!(!e||t)||(!(e||!t)||(e.index!==t.index||e.price!==t.price)))}class g{constructor(e){this._sourcesToRow=new Map,this._rowsToSources=new Map,this._currentWidth=400,this._actualCapacity=1,this._currentSymbol="",this._params=e;const t=c,i=h+t;this._maxRowHeight=3*i-t+2*u+2,this._recreateCanvas()}destroy(){delete this._canvas,delete this._ctx}canvas(){return this._canvas}topByRow(e){return e*this._maxRowHeight}rowHeight(e){const t=(0,n.ensureDefined)(this._rowsToSources.get(e)),i=(0,n.ensureDefined)(this._sourcesToRow.get(t)).effectiveState;return null!==i?i.realRowHeight:this._maxRowHeight}rowWidth(e){const t=(0,n.ensureDefined)(this._rowsToSources.get(e));return(0,n.ensureDefined)(this._sourcesToRow.get(t)).width}currentWidth(){return this._currentWidth}updateSource(e,t){const i=e.properties().symbol.value();this._currentSymbol!==i&&(p.logDebug("TrendLineCache. Clearing canvas because of changing symbol from "+this._currentSymbol+" to "+i),this._currentSymbol=i,this._sourcesToRow.clear(),this._rowsToSources.clear());const n=e.id();let r=this._sourcesToRow.get(n);if(void 0===r){const e=this._findEmptyRow(n);r={effectiveState:null,rowIndex:e,width:0},this._sourcesToRow.set(n,r),this._rowsToSources.set(e,n)}const s=r.effectiveState,a=this._effectiveState(e);if(!this._effectiveStatesEquals(s,a)){const e=t();this._repaintSource(n,r.rowIndex,e),r.effectiveState=a}return r}_findEmptyRow(e){let t=0;for(;void 0!==this._rowsToSources.get(t);)t++;return this._rowsToSources.set(t,e),t>=this._actualCapacity&&(this._actualCapacity++,this._recreateCanvas()),t}_effectiveState(e){const t=e.properties(),i=t.showBarsRange&&t.showBarsRange.value(),r=t.showDateTimeRange&&t.showDateTimeRange.value(),s=t.showDistance&&t.showDistance.value(),a=t.showPriceRange&&t.showPriceRange.value(),o=t.showAngle&&t.showAngle.value();let l=0;(i||r||s)&&l++,o&&l++,a&&l++;const d=(h+c)*l-c+2*u+2;return{p1:Object.assign({},e.points()[0]),p2:Object.assign({},e.points()[1]),props:e.properties(),showBars:i,showTimeRange:r,showDistance:s,showPriceRange:a,showAngle:o,dark:e.model().isDark(),priceRange:(0,n.ensureNotNull)((0,n.ensureNotNull)(e.priceScale()).priceRange()).state(),barSpacing:e.model().timeScale().barSpacing(),realRowHeight:d}}_effectiveStatesEquals(e,t){if(null!==e&&null===t)return!1;if(null===e&&null!==t)return!1;const i=(0,n.ensureNotNull)(e),r=(0,n.ensureNotNull)(t);if(_(i.p1,r.p1))return!1;if(_(i.p2,r.p2))return!1;if(i.dark!==r.dark)return!1;if(i.showBars!==r.showBars)return!1 ;if(i.showTimeRange!==r.showTimeRange)return!1;if(i.showDistance!==r.showDistance)return!1;if(i.showPriceRange!==r.showPriceRange)return!1;if(i.showAngle!==r.showAngle)return!1;if(i.showAngle||i.showDistance){if(i.priceRange.min!==r.priceRange.min)return!1;if(i.priceRange.max!==r.priceRange.max)return!1;if(i.barSpacing!==r.barSpacing)return!1}return!0}_repaintSource(e,t,i){i.points[0]=new r.Point(0,0),delete i.horzAlign,delete i.vertAlign,(0,d.drawScaled)(this._ctx,this._params.pixelRatio,(()=>{this._ctx.translate(.5,this.topByRow(t)+.5),this._ctx.clearRect(0,0,this._currentWidth,this._maxRowHeight);const r=new a.TrendLineStatsRenderer(i,{widths:[]}).draw(this._ctx,this._params);(0,n.ensureDefined)(this._sourcesToRow.get(e)).width=r.width}))}_recreateCanvas(){this._canvas=(0,n.ensureNotNull)(document.createElement("canvas")),this._canvas.width=this._currentWidth*this._params.pixelRatio,this._canvas.height=this._maxRowHeight*this._actualCapacity*this._params.pixelRatio,this._ctx=(0,n.ensureNotNull)(this._canvas.getContext("2d")),this._ctx.font=`${h}px ${o.CHART_FONT_FAMILY}`,this._sourcesToRow.clear(),this._rowsToSources.clear()}}},42032:(e,t,i)=>{"use strict";i.r(t),i.d(t,{LineToolTrianglePatternPaneView:()=>p});var n=i(50151),r=i(86441),s=i(53479),a=i(29639),o=i(9933),l=i(66467),d=i(44381),h=i(85113),c=i(4754),u=i(17364);class p extends c.LineSourcePaneView{constructor(){super(...arguments),this._trendLineRendererPoints01=new o.TrendLineRenderer,this._trendLineRendererPoints12=new o.TrendLineRenderer,this._trendLineRendererPoints23=new o.TrendLineRenderer,this._intersectionRenderer=new l.TriangleRenderer,this._aLabelRenderer=new d.TextRenderer,this._bLabelRenderer=new d.TextRenderer,this._cLabelRenderer=new d.TextRenderer,this._dLabelRenderer=new d.TextRenderer,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;const[e,t,i,o]=this._points;let l,d,c;if(4===this._points.length){if(Math.abs(i.x-e.x)<1||Math.abs(o.x-t.x)<1)return;let n=Math.min(e.x,t.x);n=Math.min(n,i.x),n=Math.min(n,o.x);const s=(i.y-e.y)/(i.x-e.x),a=e.y+(n-e.x)*s,h=(o.y-t.y)/(o.x-t.x),u=t.y+(n-t.x)*h;if(Math.abs(s-h)<1e-6)return;d=new r.Point(n,a),c=new r.Point(n,u);const p=(t.y-e.y+(e.x*s-t.x*h))/(s-h);if(p({points:[e],text:t,color:p.textcolor.value(),vertAlign:"middle",horzAlign:"center",font:u.CHART_FONT_FAMILY,offsetX:0,offsetY:0,bold:p.bold&&p.bold.value(),italic:p.italic&&p.italic.value(),fontsize:p.fontsize.value(),backgroundColor:p.color.value(),backgroundRoundRect:4}),f=(e,t)=>({points:[e,t],color:p.color.value(),linewidth:p.linewidth.value(),linestyle:s.LINESTYLE_SOLID,extendleft:!1,extendright:!1,leftend:h.LineEnd.Normal,rightend:h.LineEnd.Normal}) ;if(this._trendLineRendererPoints01.setData(f(e,t)),_.append(this._trendLineRendererPoints01),this._points.length>=3&&(this._trendLineRendererPoints12.setData(f(t,i)),_.append(this._trendLineRendererPoints12)),4===this._points.length&&(this._trendLineRendererPoints23.setData(f(i,o)),_.append(this._trendLineRendererPoints23),l)){const e={points:[(0,n.ensureDefined)(d),(0,n.ensureDefined)(c),l],color:p.color.value(),linewidth:p.linewidth.value(),backcolor:p.backgroundColor.value(),fillBackground:p.fillBackground.value(),transparency:p.transparency.value(),linestyle:s.LINESTYLE_DOTTED};this._intersectionRenderer.setData(e),_.append(this._intersectionRenderer)}const v=g(e,"A");t.y>e.y?(v.vertAlign="bottom",v.offsetY=5):(v.vertAlign="top",v.offsetY=5),this._aLabelRenderer.setData(v),_.append(this._aLabelRenderer);const x=g(t,"B");if(t.y2){const e=g(i,"C");i.y3){const e=g(o,"D");o.y{"use strict";var n=i(4754).LineSourcePaneView,r=i(29639).CompositeRenderer,s=i(66467).TriangleRenderer;t.TrianglePaneView=class extends n{constructor(e,t){super(e,t),this._triangleRenderer=new s,this._renderer=null}renderer(e,t){return this._invalidated&&this._updateImpl(),this._renderer}_updateImpl(){super._updateImpl(),this._renderer=null;var e={};e.points=this._points,e.color=this._source.properties().color.value(),e.linewidth=this._source.properties().linewidth.value(),e.backcolor=this._source.properties().backgroundColor.value(),e.fillBackground=this._source.properties().fillBackground.value(),e.transparency=this._source.properties().transparency.value(),this._triangleRenderer.setData(e);var t=new r;t.append(this._triangleRenderer),this.addAnchors(t),this._renderer=t}}},23743:(e,t,i)=>{"use strict";i.r(t),i.d(t,{VertLinePaneView:()=>u});var n=i(86441),r=i(29639),s=i(44381),a=i(6947),o=i(6612),l=i(17364),d=i(14888),h=i(20575);const c=[a.PaneCursorType.HorizontalResize];class u extends h.AlertableLineSourcePaneView{constructor(e,t,i){super(e,t),this._lineRenderer=new o.VerticalLineRenderer,this._labelRenderer=new s.TextRenderer,this._renderer=null,this._pane=i}renderer(e,t){return this._invalidated&&this._updateImpl(e,t),this._renderer}_validatePriceScale(){return!0}_updateImpl(e,t){var i;if(super._updateImpl(),this._renderer=null,0===this._points.length)return;const a=this._source.properties().childs(),o=new r.CompositeRenderer;let h,u=!0;if(1===this._points.length){const t=new n.Point(this._points[0].x,e/2);this._addAlertRenderer(o,[t])}if(a.showLabel.value()&&a.text.value().length>0&&this._source.model().paneForSource(this._source)===this._pane){ let r=0,d=5,c="center",p="middle";const _=this._points[0].x;let g=0;switch(a.vertLabelsAlign.value()){case"top":g=e;break;case"middle":g=e/2;break;case"bottom":g=0}if("horizontal"===a.textOrientation.value()){switch(a.horzLabelsAlign.value()){case"left":c="right";break;case"right":c="left";break;case"center":c="center"}switch(a.vertLabelsAlign.value()){case"top":p="bottom";break;case"middle":p="middle";break;case"bottom":p="top"}}else{switch(r=-Math.PI/2,d=0,a.horzLabelsAlign.value()){case"left":p="bottom";break;case"right":p="top";break;case"center":p="middle"}switch(a.vertLabelsAlign.value()){case"top":c="left";break;case"middle":c="center";break;case"bottom":c="right"}}const f={points:[new n.Point(_,g)],text:a.text.value(),color:a.textcolor.value(),vertAlign:p,horzAlign:c,font:l.CHART_FONT_FAMILY,offsetX:d,offsetY:0,bold:a.bold.value(),italic:a.italic.value(),fontsize:a.fontsize.value(),forceTextAlign:!0,angle:r};this._labelRenderer.setData(f),o.append(this._labelRenderer),this._needLabelExclusionPath(this._labelRenderer)&&(h=null!==(i=(0,s.getTextBoundaries)(this._labelRenderer,t,e))&&void 0!==i?i:void 0),u=this._labelRenderer.isOutOfScreen(t,e)}const p={x:this._points[0].x,color:a.linecolor.value(),linewidth:a.linewidth.value(),linestyle:a.linestyle.value(),excludeBoundaries:h},_=p.linewidth/2+1;if(u=u&&(p.x<-_||p.x>t+_),this._lineRenderer.setData(p),this._lineRenderer.setHitTest(new d.HitTestResult(d.HitTestResult.MOVEPOINT,{snappingIndex:this._source.points()[0].index})),o.append(this._lineRenderer),!u){if(1===this._points.length){const t=new n.Point(this._points[0].x,e/2);t.data=0,t.square=!0,t.snappingIndex=this._source.points()[0].index,o.append(this.createLineAnchor({points:[t],pointsCursorType:c},0))}this._renderer=o}}_needLabelExclusionPath(e){const t=this._source.properties().childs(),i="horizontal"===t.textOrientation.value(),n=t.text.value();if(i)return""!==n.trim();if("center"!==t.horzLabelsAlign.value())return!1;const r=e.getLinesInfo().lines;if(""===r[r.length-1]&&r.pop(),r.length%2==0)return!1;if(""===r[Math.floor(r.length/2)].trim())return!1;return!0}}},71145:(e,t,i)=>{"use strict";i.d(t,{PaneRendererCachedImage:()=>a});var n=i(86441),r=i(34026),s=i(14888);class a{constructor(e,t){this._cacheRect=null,this._targetRect=null,this._cacheProvider=e,this._index=t}draw(e,t){const i=this._cacheProvider.getCacheRects(t,this._index);if(null===i)return this._cacheRect=null,void(this._targetRect=null);if(this._cacheRect=i.cacheRect,this._targetRect=i.targetRect,0===this._cacheRect.width||0===this._cacheRect.height||0===this._targetRect.width||0===this._targetRect.height)return;e.save(),e.setTransform(1,0,0,1,0,0);const n=t.pixelRatio,r=this._cacheProvider.getCacheCanvas(t);e.drawImage(r,Math.round(this._cacheRect.left*n),Math.round(this._cacheRect.top*n),this._cacheRect.width*n,this._cacheRect.height*n,Math.round(this._targetRect.left*n),Math.round(this._targetRect.top*n),this._targetRect.width*n,this._targetRect.height*n),e.restore()}hitTest(e){if(null===this._targetRect)return null ;const t=new n.Point(this._targetRect.left,this._targetRect.top),i=t.add(new n.Point(this._targetRect.width,this._targetRect.height));return(0,r.pointInBox)(e,(0,n.box)(t,i))?new s.HitTestResult(s.HitTestResult.REGULAR):null}}},56456:(e,t,i)=>{"use strict";i.d(t,{ArcWedgeRenderer:()=>a});var n=i(14888),r=i(38031),s=i(86216);class a extends s.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null,this._hitTest=new n.HitTestResult(n.HitTestResult.MOVEPOINT),this._backHitTest=new n.HitTestResult(n.HitTestResult.MOVEPOINT_BACKGROUND)}setData(e){this._data=e}setHitTest(e){this._hitTest=e}hitTest(e){if(null===this._data)return null;const t=e.subtract(this._data.center),i=t.length();if(Math.abs(i-this._data.radius)<=4){const t=e.subtract(this._data.p1).length(),i=e.subtract(this._data.p2).length();if(Math.max(t,i)<=this._data.p1.subtract(this._data.p2).length())return this._hitTest}if(this._data.fillBackground&&i<=this._data.radius){const e=this._data.p1.subtract(this._data.center).normalized(),i=this._data.p2.subtract(this._data.center).normalized(),n=t.normalized(),r=e.dotProduct(i),s=n.dotProduct(e),a=n.dotProduct(i);if(s>=r&&a>=r)return this._backHitTest}return null}_drawImpl(e){if(null===this._data)return;const t=e.context;if(t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,t.beginPath(),t.arc(this._data.center.x,this._data.center.y,this._data.radius,this._data.edge1,this._data.edge2,!0),t.stroke(),this._data.fillBackground){if(t.arc(this._data.center.x,this._data.center.y,this._data.prevRadius,this._data.edge2,this._data.edge1,!1),this._data.gradient){const e=t.createRadialGradient(this._data.center.x,this._data.center.y,this._data.prevRadius,this._data.center.x,this._data.center.y,this._data.radius);e.addColorStop(0,(0,r.generateColor)(this._data.color1,this._data.transparency)),e.addColorStop(1,(0,r.generateColor)(this._data.color2,this._data.transparency)),t.fillStyle=e}else t.fillStyle=(0,r.generateColor)(this._data.color,this._data.transparency,!0);t.fill()}}}},64673:(e,t,i)=>{"use strict";i.d(t,{quadroBezierHitTest:()=>r,cubicBezierHitTest:()=>s,extendQuadroBezier:()=>a});var n=i(4652);function r(e,t,i,r,s){const a=i.subtract(e).length()+i.subtract(t).length(),o=Math.max(3/a,.02);let l;for(let a=0;;a+=o){a>1&&(a=1);const o=e.scaled((1-a)*(1-a)),d=i.scaled(2*a*(1-a)),h=t.scaled(a*a),c=o.add(d).add(h);if(void 0!==l){if((0,n.distanceToSegment)(c,l,r).distance1&&(o=1);const l=e.scaled((1-o)*(1-o)*(1-o)),h=i.scaled(3*(1-o)*(1-o)*o),c=r.scaled(3*(1-o)*o*o),u=t.scaled(o*o*o),p=l.add(h).add(c).add(u);if(void 0!==d){if((0,n.distanceToSegment)(p,d,s).distance=0&&o<=n&&s.push(a[r])}const d=o(e.x,t.x,i.x,0).concat(o(e.x,t.x,i.x,n));for(let n=0;n=0&&a<=r&&s.push(d[n])}return s}(e,t,i,n,r).filter((e=>e>1)).sort(((e,t)=>e-t));t.x>=0&&t.x<=n&&t.y>=0&&t.y<=r&&a.unshift(1);const d=3/s,h=[];for(let n=0;n0){l[l.length-1].subtract(h).length()<2&&(o+=r,r*=2)}l.push(h),s+=r}l.length>0&&h.push(l)}return h}function o(e,t,i,n){const r=[],s=e-2*i+t,a=2*i-2*e,o=e-n;if(Math.abs(s)>1e-8){const e=a*a-4*s*o;e>=0&&(r.push((-a+Math.sqrt(e))/(2*s)),r.push((-a-Math.sqrt(e))/(2*s)))}else r.push(-o/a);return r}function l(e,t,i,n){return(1-n)*(1-n)*e+2*(1-n)*n*i+n*n*t}},30967:(e,t,i)=>{"use strict";i.d(t,{ChannelRenderer:()=>u});var n=i(27714),r=i(50151),s=i(86441),a=i(34026),o=i(4652),l=i(5531),d=i(14888),h=i(38031),c=i(86216);class u extends c.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e,t){if(null===this._data||!this._data.hittestOnBackground)return null;const i=this._visiblePolygon((0,n.size)({width:t.cssWidth,height:t.cssHeight}));return null!==i&&(0,a.pointInPolygon)(e,i)?new d.HitTestResult(d.HitTestResult.MOVEPOINT_BACKGROUND):null}_drawImpl(e){if(null===this._data)return;const t=e.context,i=this._visiblePolygon(e.mediaSize);if(null!==i){t.beginPath(),t.moveTo(i[0].x,i[0].y);for(let e=1;e{"use strict";i.d(t,{DisjointChannelRenderer:()=>_});var n=i(27714),r=i(50151),s=i(86441),a=i(34026),o=i(4652),l=i(5531),d=i(53479),h=i(14888),c=i(8440),u=i(38031),p=i(86216);class _{constructor(){this._parallelChannelRenderer=new c.ParallelChannelRenderer,this._disjointChannelIntersectionRenderer=new g,this._selectedRenderer=this._disjointChannelIntersectionRenderer}setData(e){if(e.points.length<4)return;const[t,i,n,r]=e.points;if((0,s.equalPoints)(t,i)||(0,s.equalPoints)(n,r)||(0,o.distanceToLine)(t,i,n).distance<1e-6&&(0,o.distanceToLine)(t,i,r).distance<1e-6)this._selectedRenderer=null;else{ null!==(0,l.intersectLines)((0,s.lineThroughPoints)(t,i),(0,s.lineThroughPoints)(n,r))?(this._disjointChannelIntersectionRenderer.setData(e),this._selectedRenderer=this._disjointChannelIntersectionRenderer):(this._parallelChannelRenderer.setData({extendleft:e.extendleft,extendright:e.extendright,points:[t,i,r,n],fillBackground:!0,backcolor:e.backcolor,transparency:e.transparency,color:"rgba(0,0,0,0)",linestyle:d.LINESTYLE_SOLID,linewidth:0,showMidline:!1,hittestOnBackground:e.hittestOnBackground}),this._selectedRenderer=this._parallelChannelRenderer)}}hitTest(e,t){return null!==this._selectedRenderer?this._selectedRenderer.hitTest(e,t):null}draw(e,t){null!==this._selectedRenderer&&this._selectedRenderer.draw(e,t)}}class g extends p.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e,t){if(null===this._data||!this._data.hittestOnBackground)return null;for(const i of this._visiblePolygons((0,n.size)({width:t.cssWidth,height:t.cssHeight})))if((0,a.pointInPolygon)(e,i))return new h.HitTestResult(h.HitTestResult.MOVEPOINT_BACKGROUND);return null}_drawImpl(e){if(null===this._data||this._data.points.length<4)return;const t=e.context;t.fillStyle=(0,u.generateColor)(this._data.backcolor,this._data.transparency);for(const i of this._visiblePolygons(e.mediaSize)){t.beginPath(),t.moveTo(i[0].x,i[0].y);for(let e=1;e{"use strict";i.d(t,{EllipseRendererSimple:()=>d});var n=i(14888),r=i(91031),s=i(86441),a=i(38031),o=i(86216),l=i(9740);class d extends o.MediaCoordinatesPaneRenderer{constructor(e,t,i){super(),this._data=e,this._hitTest=t||new n.HitTestResult(n.HitTestResult.MOVEPOINT),this._backgroundHitTest=i||new n.HitTestResult(n.HitTestResult.MOVEPOINT_BACKGROUND)}hitTest(e){if(this._data.points.length<2)return null;const t=this._data.points[0],i=this._data.points[1],n=.5*Math.abs(t.x-i.x),a=Math.abs(t.x-i.x),o=Math.abs(t.y-i.y),l=t.add(i).scaled(.5) ;let d=e.subtract(l);if(a<1||o<1)return null;const h=(i.y-t.y)/(i.x-t.x);d=new s.Point(d.x,d.y/h);let c=d.x*d.x+d.y*d.y-n*n;return c=(0,r.sign)(c)*Math.sqrt(Math.abs(c/n)),Math.abs(c)<3?this._hitTest:this._data.fillBackground&&!this._data.noHitTestOnBackground&&c<3?this._backgroundHitTest:null}_drawImpl(e){const t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,void 0!==this._data.linestyle&&(0,l.setLineStyle)(t,this._data.linestyle);const i=this._data.points[0],n=this._data.points[1],r=Math.abs(i.x-n.x),s=Math.abs(i.y-n.y),o=i.add(n).scaled(.5);if(r<1||s<1)return;let d=0;if(this._data.wholePoints){const e=this._data.wholePoints[0],t=this._data.wholePoints[1];d=Math.abs(e.x-t.x)}t.save(),t.translate(o.x,o.y),t.scale(1,s/r),t.beginPath(),t.arc(0,0,r/2,0,2*Math.PI,!1),t.restore(),t.stroke(),this._data.fillBackground&&(this._data.wholePoints&&(t.translate(o.x,o.y),t.scale(1,s/r),t.arc(0,0,d/2,0,2*Math.PI,!0)),t.fillStyle=(0,a.generateColor)(this._data.backcolor,this._data.transparency,!0),t.fill())}}},80856:(e,t,i)=>{"use strict";i.d(t,{LineAnchorRenderer:()=>v});var n=i(86441),r=i(34026),s=i(9740),a=i(65665),o=i(14888),l=i(6947),d=i(55014),h=i(50151);class c extends n.Point{constructor(e,t,i,n){super(e,t),this.data=i,this.square=n}}function u(e,t,i,n){const r=i+n/2;(0,s.drawRoundRect)(e,t.x-r,t.y-r,2*r,2*r,(i+n)/2),e.closePath(),e.lineWidth=n}function p(e,t,i,n){e.globalAlpha=.2,u(e,t,i,n),e.stroke(),e.globalAlpha=1}function _(e,t,i,n){u(e,t,i-n,n),e.fill(),e.stroke()}function g(e,t,i,n){e.globalAlpha=.2,e.beginPath(),e.arc(t.x,t.y,i+n/2,0,2*Math.PI,!0),e.closePath(),e.lineWidth=n,e.stroke(),e.globalAlpha=1}function f(e,t,i,n){e.beginPath(),e.arc(t.x,t.y,i-n/2,0,2*Math.PI,!0),e.closePath(),e.lineWidth=n,e.fill(),e.stroke()}class v{constructor(e){this._data=null!=e?e:null}setData(e){this._data=e}draw(e,t){if(null===this._data||!this._data.visible)return;const i=[],n=[],r=[],s=[];for(let e=0;e(0,r.pointInBox)(t,e)))}_drawPoints(e,t,i,n,r,s){const o=(0,h.ensureNotNull)(this._data),l=o.currentPoint,u=o.radius;let p=Math.max(1,Math.floor((o.strokeWidth||2)*t)) ;o.selected&&(p+=Math.max(1,Math.floor(t/2)));const _=Math.max(1,Math.floor(t));let g=Math.round(u*t*2);g%2!=_%2&&(g+=1);const f=_%2/2,v=(0,d.interactionTolerance)().anchor;for(let d=0;d{"use strict";i.d(t,{ParallelChannelRenderer:()=>p});var n=i(27714),r=i(50151),s=i(86441),a=i(4652),o=i(5531),l=i(14888),d=i(55014),h=i(38031),c=i(86216),u=i(9740);class p extends c.MediaCoordinatesPaneRenderer{constructor(e,t){super(),this._data=null,this._hittestResult=e||new l.HitTestResult(l.HitTestResult.MOVEPOINT),this._backHittestResult=t||new l.HitTestResult(l.HitTestResult.MOVEPOINT_BACKGROUND)}setData(e){this._data=e}hitTest(e,t){if(null===this._data||this._data.points.length<2)return null;const i=(0,n.size)({width:t.cssWidth,height:t.cssHeight}),[r,s]=this._data.points,a=this._extendAndHitTestLineSegment(e,r,s,i);if(null!==a)return a;if(4===this._data.points.length&&!this._data.skipTopLine){const[,,t,n]=this._data.points,a=this._extendAndHitTestLineSegment(e,t,n,i);if(null!==a)return a;if(this._data.showMidline&&!this._data.skipLines){const a=r.add(t).scaled(.5),o=s.add(n).scaled(.5),l=this._extendAndHitTestLineSegment(e,a,o,i);if(null!==l)return l}}return this._data.hittestOnBackground&&this._data.fillBackground?this._hitTestBackground(e):null}_drawImpl(e){if(null===this._data||this._data.points.length<2)return;const t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,(0,u.setLineStyle)(t,this._data.linestyle);const[i,n]=this._data.points;if(this._data.points.some((e=>!isFinite(e.y))))this._extendAndDrawLineSegment(t,i,n,e.mediaSize);else if(this._data.skipLines||this._extendAndDrawLineSegment(t,i,n,e.mediaSize),4===this._data.points.length){const[,,r,s]=this._data.points;if(this._data.skipLines||this._data.skipTopLine||this._extendAndDrawLineSegment(t,r,s,e.mediaSize),this._data.fillBackground&&this._drawBackground(t,this._data.points,e.mediaSize),this._data.showMidline&&!this._data.skipLines){t.strokeStyle=this._data.midcolor,t.lineWidth=this._data.midlinewidth,(0,u.setLineStyle)(t,this._data.midlinestyle);const a=i.add(r).scaled(.5),o=n.add(s).scaled(.5);this._extendAndDrawLineSegment(t,a,o,e.mediaSize)}}}_getColor(){const e=(0,r.ensureNotNull)(this._data);return(0,h.generateColor)(e.backcolor,e.transparency)}_extendAndDrawLineSegment(e,t,i,n){const r=this._extendAndClipLineSegment(t,i,n);null!==r&&(0,u.drawLine)(e,r[0].x,r[0].y,r[1].x,r[1].y)}_extendAndHitTestLineSegment(e,t,i,n){const r=this._extendAndClipLineSegment(t,i,n);if(null!==r){if((0,a.distanceToSegment)(r[0],r[1],e).distance<=3)return this._hittestResult}return null} _extendAndClipLineSegment(e,t,i){const n=(0,r.ensureNotNull)(this._data);return(0,d.extendAndClipLineSegment)(e,t,i.width,i.height,n.extendleft,n.extendright)}_drawBackground(e,t,i){const n=(0,r.ensureNotNull)(this._data),[o,l,d,h]=t;if((0,s.equalPoints)(o,l)||(0,s.equalPoints)(d,h)||(0,a.distanceToLine)(o,l,d).distance<1e-6||(0,a.distanceToLine)(o,l,h).distance<1e-6)return;if(i.width<=0||i.height<=0)return;let c=[new s.Point(0,0),new s.Point(i.width,0),new s.Point(i.width,i.height),new s.Point(0,i.height)];if(c=_(c,o,l,h),n.extendright||(c=_(c,l,h,d)),c=_(c,h,d,o),n.extendleft||(c=_(c,d,o,l)),null!==c){e.beginPath(),e.moveTo(c[0].x,c[0].y);for(let t=1;tu?null:e.y>=h&&e.y<=d?this._backHittestResult:null}}function _(e,t,i,n){return null!==e?(0,o.intersectPolygonAndHalfplane)(e,(0,s.halfplaneThroughPoint)((0,s.lineThroughPoints)(t,i),n)):null}},98930:(e,t,i)=>{"use strict";i.d(t,{PolygonRenderer:()=>u});var n=i(34026),r=i(4652),s=i(9933),a=i(85113),o=i(14888),l=i(38031),d=i(86216),h=i(55014),c=i(9740);class u extends d.MediaCoordinatesPaneRenderer{constructor(e){super(),this._data=null,this._backHittest=new o.HitTestResult(o.HitTestResult.MOVEPOINT_BACKGROUND),this._points=[],this._hittest=null!=e?e:new o.HitTestResult(o.HitTestResult.MOVEPOINT)}setData(e){this._data=e,this._points=e.points}hitTest(e){if(null===this._data||void 0!==this._data.mouseTouchable&&!this._data.mouseTouchable)return null;const t=Math.max((0,h.interactionTolerance)().line,Math.ceil(this._data.linewidth/2)),i=this._points.length;if(1===i){return(0,n.pointInCircle)(e,this._points[0],t)?this._hittest:null}for(let n=1;n0){const n=this._points[0],s=this._points[i-1];if((0,r.distanceToSegment)(n,s,e).distance<=t)return this._hittest}return this._data.filled&&this._data.fillBackground&&(0,n.pointInPolygon)(e,this._data.points)?this._backHittest:null}_drawImpl(e){var t,i;const n=e.context,r=this._points.length;if(null===this._data||0===r)return;if(1===r)return void this._drawPoint(n,this._points[0],this._data.linewidth/2,this._data.color);n.beginPath();const o=null!==(t=this._data.linecap)&&void 0!==t?t:"butt";n.lineCap=o,n.strokeStyle=this._data.color,n.lineWidth=this._data.linewidth,n.lineJoin=null!==(i=this._data.linejoin)&&void 0!==i?i:"miter",(0,c.setLineStyle)(n,this._data.linestyle);const d=this._points[0];n.moveTo(d.x,d.y);for(const e of this._points)n.lineTo(e.x,e.y);if(this._data.filled&&this._data.fillBackground&&(n.fillStyle=(0,l.generateColor)(this._data.backcolor,this._data.transparency),n.fill()), this._data.filled&&!this._data.skipClosePath&&n.closePath(),this._data.linewidth>0&&n.stroke(),r>1){if("butt"!==o&&(n.lineCap="butt"),this._data.leftend===a.LineEnd.Arrow){const e=this._correctArrowPoints(this._points[1],this._points[0],n.lineWidth,o);(0,s.drawArrow)(e[0],e[1],n,n.lineWidth,1)}if(this._data.rightend===a.LineEnd.Arrow){const e=this._correctArrowPoints(this._points[r-2],this._points[r-1],n.lineWidth,o);(0,s.drawArrow)(e[0],e[1],n,n.lineWidth,1)}}}_drawPoint(e,t,i,n){0!==i&&(e.beginPath(),e.fillStyle=n,e.arc(t.x,t.y,i,0,2*Math.PI,!0),e.fill(),e.closePath())}_correctArrowPoints(e,t,i,n){const r=t.subtract(e),s=r.length();if("butt"===n||s<1)return[e,t];const a=s+i/2;return[e,r.scaled(a/s).add(e)]}}},14594:(e,t,i)=>{"use strict";i.d(t,{TrendLineStatsRenderer:()=>R,iconsContainer:()=>x});var n=i(27714),r=i(86441),s=i(34026),a=i(50151),o=i(49483),l=i(44381),d=i(14888),h=i(9740),c=i(65665),u=i(83499),p=i(26867),_=i.n(p);class g{constructor(e,t,i){this._ready=!1,this._img=function(e,t,i){const n=new Image;return n.width=t,n.height=t,n.onload=i,n.src=e,n}(e,t,(()=>{this._ready=!0,i()}))}ready(){return this._ready}image(){return this._img}}let f=null;const v=18,x=new class{constructor(e,t){this._icons=new Map,this._onAllIconsLoaded=new(_()),this._pendingLoading=e.length;const i=()=>{0==--this._pendingLoading&&this._onAllIconsLoaded.fire()};e.forEach((e=>{const n=this._icons.get(e.name)||new Map;n.set(e.theme,new g(e.imageData,t,i)),this._icons.set(e.name,n)}))}getIcon(e,t){return(0,a.ensureDefined)((0,a.ensureDefined)(this._icons.get(e)).get(t))}onAllIconsReady(){return this._onAllIconsLoaded}}([{name:"angle",theme:"dark",imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zLjQ5OTk5IDE1SDIuNjU3NzFMMy4wNjEwNCAxNC4yNjA2TDkuMDYxMDQgMy4yNjA1N0w5LjMwMDQ2IDIuODIxNjJMMTAuMTc4NCAzLjMwMDQ4TDkuOTM4OTMgMy43Mzk0Mkw3LjUxMzg1IDguMTg1NDJDMTAuNTYyMSA5LjY3MjA1IDEwLjk0NTEgMTIuNjI2MSAxMC45OTMxIDE0SDE0LjVIMTVWMTVIMTQuNUgzLjQ5OTk5Wk05Ljk5MTk3IDE0QzkuOTQyMzYgMTIuNzI1OSA5LjU4NjI5IDEwLjI4OCA3LjAzNDM1IDkuMDY0NDlMNC4zNDIyNiAxNEg5Ljk5MTk3WiIgZmlsbD0iI0Y4RjlGRCIvPgo8L3N2Zz4K"},{name:"angle",theme:"light",imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMy40OTk5OSAxNUgyLjY1NzcxTDMuMDYxMDQgMTQuMjYwNkw5LjA2MTA0IDMuMjYwNTdMOS4zMDA0NiAyLjgyMTYyTDEwLjE3ODQgMy4zMDA0OEw5LjkzODkzIDMuNzM5NDJMNy41MTM4NSA4LjE4NTQyQzEwLjU2MjEgOS42NzIwNSAxMC45NDUxIDEyLjYyNjEgMTAuOTkzMSAxNEgxNC41SDE1VjE1SDE0LjVIMy40OTk5OVpNOS45OTE5NyAxNEM5Ljk0MjM2IDEyLjcyNTkgOS41ODYyOSAxMC4yODggNy4wMzQzNSA5LjA2NDQ5TDQuMzQyMjYgMTRIOS45OTE5N1oiIGZpbGw9IiMyQTJFMzkiLz4NCjwvc3ZnPg0K"},{name:"barsRange",theme:"dark", imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMiAzVjMuNVY1SDFWNlYxM1YxNEgyVjE1LjVWMTZIM1YxNS41VjE0SDRWMTNWNlY1SDNWMy41VjNIMlpNOC4yMDcxMSA3LjVMNy44NTM1NSA3Ljg1MzU1TDYuNzA3MTEgOUgxMS4yOTI5TDEwLjE0NjQgNy44NTM1NUw5Ljc5Mjg5IDcuNUwxMC41IDYuNzkyODlMMTAuODUzNiA3LjE0NjQ1TDEyLjg1MzYgOS4xNDY0NUwxMy4yMDcxIDkuNUwxMi44NTM2IDkuODUzNTVMMTAuODUzNiAxMS44NTM2TDEwLjUgMTIuMjA3MUw5Ljc5Mjg5IDExLjVMMTAuMTQ2NCAxMS4xNDY0TDExLjI5MjkgMTBINi43MDcxMUw3Ljg1MzU1IDExLjE0NjRMOC4yMDcxMSAxMS41TDcuNSAxMi4yMDcxTDcuMTQ2NDUgMTEuODUzNkw1LjE0NjQ1IDkuODUzNTVMNC43OTI4OSA5LjVMNS4xNDY0NSA5LjE0NjQ1TDcuMTQ2NDUgNy4xNDY0NUw3LjUgNi43OTI4OUw4LjIwNzExIDcuNVpNMyA2SDJWMTNIM1Y2Wk0xNSAzLjVWM0gxNlYzLjVWNUgxN1Y2VjEzVjE0SDE2VjE1LjVWMTZIMTVWMTUuNVYxNEgxNFYxM1Y2VjVIMTVWMy41Wk0xNSA2SDE2VjEzSDE1VjZaIiBmaWxsPSIjRjhGOUZEIi8+DQo8L3N2Zz4NCg=="},{name:"barsRange",theme:"light",imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMiAzVjMuNVY1SDFWNlYxM1YxNEgyVjE1LjVWMTZIM1YxNS41VjE0SDRWMTNWNlY1SDNWMy41VjNIMlpNOC4yMDcxMSA3LjVMNy44NTM1NSA3Ljg1MzU1TDYuNzA3MTEgOUgxMS4yOTI5TDEwLjE0NjQgNy44NTM1NUw5Ljc5Mjg5IDcuNUwxMC41IDYuNzkyODlMMTAuODUzNiA3LjE0NjQ1TDEyLjg1MzYgOS4xNDY0NUwxMy4yMDcxIDkuNUwxMi44NTM2IDkuODUzNTVMMTAuODUzNiAxMS44NTM2TDEwLjUgMTIuMjA3MUw5Ljc5Mjg5IDExLjVMMTAuMTQ2NCAxMS4xNDY0TDExLjI5MjkgMTBINi43MDcxMUw3Ljg1MzU1IDExLjE0NjRMOC4yMDcxMSAxMS41TDcuNSAxMi4yMDcxTDcuMTQ2NDUgMTEuODUzNkw1LjE0NjQ1IDkuODUzNTVMNC43OTI4OSA5LjVMNS4xNDY0NSA5LjE0NjQ1TDcuMTQ2NDUgNy4xNDY0NUw3LjUgNi43OTI4OUw4LjIwNzExIDcuNVpNMyA2SDJWMTNIM1Y2Wk0xNSAzLjVWM0gxNlYzLjVWNUgxN1Y2VjEzVjE0SDE2VjE1LjVWMTZIMTVWMTUuNVYxNEgxNFYxM1Y2VjVIMTVWMy41Wk0xNSA2SDE2VjEzSDE1VjZaIiBmaWxsPSIjMkEyRTM5Ii8+DQo8L3N2Zz4NCg=="},{name:"priceRange",theme:"dark",imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMyAySDMuNUgxMy41SDE0VjNIMTMuNUgzLjVIM1YyWk04LjUgMy43OTI4OUw4Ljg1MzU1IDQuMTQ2NDVMMTAuODUzNiA2LjE0NjQ1TDExLjIwNzEgNi41TDEwLjUgNy4yMDcxMUwxMC4xNDY0IDYuODUzNTVMOSA1LjcwNzExVjEyLjI5MjlMMTAuMTQ2NCAxMS4xNDY0TDEwLjUgMTAuNzkyOUwxMS4yMDcxIDExLjVMMTAuODUzNiAxMS44NTM2TDguODUzNTUgMTMuODUzNkw4LjUgMTQuMjA3MUw4LjE0NjQ1IDEzLjg1MzZMNi4xNDY0NSAxMS44NTM2TDUuNzkyODkgMTEuNUw2LjUgMTAuNzkyOUw2Ljg1MzU1IDExLjE0NjRMOCAxMi4yOTI5VjUuNzA3MTFMNi44NTM1NSA2Ljg1MzU1TDYuNSA3LjIwNzExTDUuNzkyODkgNi41TDYuMTQ2NDUgNi4xNDY0NUw4LjE0NjQ1IDQuMTQ2NDVMOC41IDMuNzkyODlaTTMuNSAxNkgzVjE1SDMuNUgxMy41SDE0VjE2SDEzLjVIMy41WiIgZmlsbD0iI0Y4RjlGRCIvPg0KPC9zdmc+DQo="},{name:"priceRange",theme:"light", imageData:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMyAySDMuNUgxMy41SDE0VjNIMTMuNUgzLjVIM1YyWk04LjUgMy43OTI4OUw4Ljg1MzU1IDQuMTQ2NDVMMTAuODUzNiA2LjE0NjQ1TDExLjIwNzEgNi41TDEwLjUgNy4yMDcxMUwxMC4xNDY0IDYuODUzNTVMOSA1LjcwNzExVjEyLjI5MjlMMTAuMTQ2NCAxMS4xNDY0TDEwLjUgMTAuNzkyOUwxMS4yMDcxIDExLjVMMTAuODUzNiAxMS44NTM2TDguODUzNTUgMTMuODUzNkw4LjUgMTQuMjA3MUw4LjE0NjQ1IDEzLjg1MzZMNi4xNDY0NSAxMS44NTM2TDUuNzkyODkgMTEuNUw2LjUgMTAuNzkyOUw2Ljg1MzU1IDExLjE0NjRMOCAxMi4yOTI5VjUuNzA3MTFMNi44NTM1NSA2Ljg1MzU1TDYuNSA3LjIwNzExTDUuNzkyODkgNi41TDYuMTQ2NDUgNi4xNDY0NUw4LjE0NjQ1IDQuMTQ2NDVMOC41IDMuNzkyODlaTTMuNSAxNkgzVjE1SDMuNUgxMy41SDE0VjE2SDEzLjVIMy41WiIgZmlsbD0iIzJBMkUzOSIvPg0KPC9zdmc+DQo="}],v),m=new Map;class R{constructor(e,t,i){this._fontSize=0,this._preRendered=!1,this._boundingBox=null,this._rect=null,this._padding=null,this._textPoint=null,this._textSizeCache=t,this._data=e,this._fontSize=e.fontSize?e.fontSize:12,this._lineSpacing=(0,c.isNumber)(this._data.lineSpacing)&&this._data.lineSpacing?this._data.lineSpacing:0,e.lines=this._lines=null===e.text?[]:(0,l.wordWrap)(e.text,this.fontStyle(),e.wordWrapWidth),this._hittest=i||new d.HitTestResult(d.HitTestResult.MOVEPOINT)}fontStyle(){return`${this._data.bold?"bold ":""}${this._data.italic?"italic ":""}${this._fontSize}px ${this._data.font}`}draw(e,t){if(0===this._data.points.length||null===this._data.text)return{width:0};this._preRender();const i=this._fontSize+this._lineSpacing;e.textBaseline="top",e.font=this.fontStyle();const n=(0,a.ensureNotNull)(this._rect);if(this._rect){if("right"!==this._data.horzAlign&&"center"!==this._data.horzAlign||!0!==this._data.doNotAlignText&&(e.textAlign="right"===this._data.horzAlign?"end":"center"),this._data.backgroundRoundRect?((0,h.drawRoundRect)(e,n.x,n.y,n.w,n.h,this._data.backgroundRoundRect),e.fillStyle=this._data.backgroundColor,e.fill(),e.globalAlpha=1):(e.fillStyle=this._data.backgroundColor,e.fillRect(n.x,n.y,n.w,n.h),e.globalAlpha=1),this._data.icons){let r=0;const s=Math.ceil((v-this._fontSize)/2),o=(0,a.ensureNotNull)(this._padding);for(const a of this._data.icons){const l=Math.round(n.x+o.left),d=Math.round(n.y+o.top+i*r-s);this._drawIcon(e,l,d,a,Boolean(this._data.isDark),t),r+=1}}}else"right"===this._data.horzAlign?e.textAlign="end":"center"===this._data.horzAlign&&(e.textAlign="center");const r=(0,a.ensureNotNull)(this._textPoint),s=r.x;let o=r.y;e.fillStyle=this._data.color;for(const t of this._lines)e.fillText(t,s,o),o+=i;return{width:n.w+2}}hitTest(e){return 0===this._data.points.length?null:(this._preRender(),this._boundingBox&&(0,s.pointInBox)(e,this._boundingBox)?this._hittest:null)}_preRender(){if(this._preRendered)return;const e=function(){if(null!==f)return f;const e=(0,u.createDisconnectedCanvas)(document,(0,n.size)({width:0,height:0}));return f=(0,u.getPrescaledContext2D)(e),f}(),t=this._data.points[0].x;let i=t;const s=this._data.points[0].y ;let a=s;const o=this._fontSize,l=this._lineSpacing,d=(o+l)*this._lines.length-l;e.textBaseline="top",e.font=this.fontStyle();const h=[];let c;if(this._data.wordWrapWidth){c=this._data.wordWrapWidth;for(let e=0;e{"use strict";i.d(t,{TriangleRenderer:()=>h});var n=i(4652),r=i(34026),s=i(86216),a=i(14888),o=i(38031),l=i(55014),d=i(9740);class h extends s.MediaCoordinatesPaneRenderer{constructor(){super(...arguments),this._data=null}setData(e){this._data=e}hitTest(e){if(null===this._data||this._data.points.length<2)return null;const[t,i]=this._data.points;let s=(0,n.distanceToSegment)(t,i,e);const o=(0,l.interactionTolerance)().line;if(s.distance<=o)return new a.HitTestResult(a.HitTestResult.MOVEPOINT);if(3!==this._data.points.length)return null;const d=this._data.points[2];return s=(0,n.distanceToSegment)(i,d,e),s.distance<=o?new a.HitTestResult(a.HitTestResult.MOVEPOINT):(s=(0,n.distanceToSegment)(d,t,e),s.distance<=o?new a.HitTestResult(a.HitTestResult.MOVEPOINT):this._data.fillBackground&&(0,r.pointInTriangle)(e,t,i,d)?new a.HitTestResult(a.HitTestResult.MOVEPOINT_BACKGROUND):null)}_drawImpl(e){if(null===this._data||this._data.points.length<2)return;const t=e.context;t.lineCap="butt",t.strokeStyle=this._data.color,t.lineWidth=this._data.linewidth,void 0!==this._data.linestyle&&(0,d.setLineStyle)(t,this._data.linestyle) ;const[i,n]=this._data.points,r=2===this._data.points.length?n:this._data.points[2];t.beginPath(),t.moveTo(i.x,i.y),t.lineTo(n.x,n.y),t.lineTo(r.x,r.y),t.lineTo(i.x,i.y),this._data.fillBackground&&(t.fillStyle=(0,o.generateColor)(this._data.backcolor,this._data.transparency),t.fill()),t.stroke()}}},99620:(e,t,i)=>{"use strict";e.exports=i.p+"prediction-clock-white.c4675d37769f1df4c9ec.png"},88249:(e,t,i)=>{"use strict";e.exports=i.p+"prediction-failure-white.a838a6689f951970e715.png"},14012:(e,t,i)=>{"use strict";e.exports=i.p+"prediction-success-white.2fb9966b4c0f3529a2ea.png"},91481:e=>{e.exports={ar:"in",ca_ES:"in",cs:["za"],de:"in",el:["σε"],en:"in",es:["en"],fa:"in",fr:["en"],he_IL:["בתוך"],hu_HU:["-ban/ben"],id_ID:["dalam"],it:"in",ja:[":"],ko:"in",ms_MY:["dalam"],nl_NL:"in",pl:["w"],pt:["em"],ro:"in",ru:["за"],sv:"in",th:["ใน"],tr:["za"],vi:["trong"],zh:["在"],zh_TW:["內"]}},44143:e=>{e.exports={ar:["أغلقت"],ca_ES:["Tancat"],cs:["Zavřený"],de:["Geschlossen"],el:"Closed",en:"Closed",es:["Cerrado"],fa:["سود/زیان"],fr:["Fermé"],he_IL:["נסגר"],hu_HU:["Záró"],id_ID:["Tutup"],it:["Chiuso"],ja:["確定"],ko:["포지션청산"],ms_MY:["Tutup"],nl_NL:["Gesloten"],pl:["Zamknięte"],pt:["Fechado"],ro:"Closed",ru:["Закр. поз."],sv:"Closed",th:["ปิด"],tr:["Kapalı"],vi:["Đóng"],zh:["已平仓"],zh_TW:["已平倉"]}},50140:e=>{e.exports={ar:["مفتوح"],ca_ES:["Obertura"],cs:["Otevřený"],de:["Offener"],el:["Opened"],en:"Open",es:["Apertura"],fa:["سود/زیان"],fr:["Ouverture"],he_IL:["נפתח"],hu_HU:["Nyitva"],id_ID:["Pembukaan"],it:["Aperto"],ja:["未確定"],ko:["포지션보유"],ms_MY:["Buka"],nl_NL:["Opened"],pl:["Otwarte"],pt:["Aberto"],ro:"Open",ru:["Откр. поз."],sv:"Open",th:["เปิด"],tr:["Açık"],vi:["Mở"],zh:["开仓"],zh_TW:["未平倉"]}},16075:e=>{e.exports={ar:["إلغاء أمر"],ca_ES:["Cancel·lar ordre"],cs:"Cancel Order",de:["Auftrag abbrechen"],el:"Cancel Order",en:"Cancel Order",es:["Cancelar orden"],fa:"Cancel Order",fr:["Annuler Ordre"],he_IL:["בטל פקודה"],hu_HU:["Megbízás Törlése"],id_ID:["Batalkan Order"],it:["Annulla ordine"],ja:["注文をキャンセル"],ko:["주문 취소"],ms_MY:["Batalkan Pesanan"],nl_NL:"Cancel Order",pl:["Anuluj zlecenie"],pt:["Cancelar ordem"],ro:"Cancel Order",ru:["Отменить заявку"],sv:["Avbryt order"],th:["ยกเลิกคำสั่ง"],tr:["Emir İptal"],vi:["Hủy Lệnh"],zh:["取消订单"],zh_TW:["取消報單"]}},37431:e=>{e.exports={ar:["إغلاق صفقة"],ca_ES:"Close Position",cs:"Close Position",de:["Position Schließen"],el:"Close Position",en:"Close Position",es:["Cerrar posición"],fa:"Close Position",fr:["Fermer la Position"],he_IL:["סגור פוזיציה"],hu_HU:["Záró Pozíció"],id_ID:["Tutup Posisi"],it:["Chiudi posizione"],ja:["ポジション決済"],ko:["포지션 닫기"],ms_MY:["Kedudukan Penutup"],nl_NL:"Close Position",pl:["Zamknij pozycję"],pt:["Fechar Posição"],ro:"Close Position",ru:["Закрыть позицию"],sv:["Stäng position"],th:["ปิดสถานะ"],tr:["Pozisyonu Kapat"],vi:["Đóng Trạng thái"],zh:["平仓"],zh_TW:["平倉"]}},968:e=>{e.exports={ar:["لم تنجح"],ca_ES:"FAILURE",cs:["SELHÁNÍ"],de:["FEHLER"],el:["ΑΠΟΤΥΧΙΑ"],en:"FAILURE",es:["FALLO"],fa:["شکست"],fr:["ÉCHEC"],he_IL:["כישלון"],hu_HU:["VESZTESÉG"],id_ID:["KEGAGALAN"], it:["OPERAZIONE NON RIUSCITA"],ja:["失敗"],ko:["실패"],ms_MY:["KEGAGALAN"],nl_NL:["Mislukt!"],pl:["PORAŻKA"],pt:["FALHA"],ro:"FAILURE",ru:["НЕУДАЧА"],sv:["MISSLYCKANDE"],th:["ล้มเหลว"],tr:["BAŞARISIZ"],vi:["THẤT BẠI"],zh:["失败"],zh_TW:["失敗"]}},63706:e=>{e.exports={ar:["رأس"],ca_ES:["Cap"],cs:"Head",de:["Kopf"],el:"Head",en:"Head",es:["Cabeza"],fa:"Head",fr:["Tête"],he_IL:["ראש"],hu_HU:["Fej"],id_ID:"Head",it:["Testa"],ja:["ヘッド"],ko:["머리"],ms_MY:["Kepala"],nl_NL:"Head",pl:["Głowa"],pt:["Cabeça"],ro:"Head",ru:["Голова"],sv:["Huvud"],th:["หัว"],tr:["Baş"],vi:["Đầu"],zh:["头部"],zh_TW:["頭"]}},68589:e=>{e.exports={ar:["الكتف الأيسر"],ca_ES:["Espatlla esquerra"],cs:"Left Shoulder",de:["Linke Schulter"],el:"Left Shoulder",en:"Left Shoulder",es:["Hombro izquierdo"],fa:"Left Shoulder",fr:["Épaule gauche"],he_IL:["כתף שמאל"],hu_HU:["Bal Váll"],id_ID:"Left Shoulder",it:["Spalla sinistra"],ja:["左ショルダー"],ko:["왼어깨"],ms_MY:["Bahu Kiri"],nl_NL:"Left Shoulder",pl:["Lewe ramię"],pt:["Ombro Esquerdo"],ro:"Left Shoulder",ru:["Левое плечо"],sv:["Vänster skuldra"],th:["ไหล่ซ้าย"],tr:["Sol Omuz"],vi:["Vai trái"],zh:["左肩"],zh_TW:["左肩"]}},33241:e=>{e.exports={ar:["تعديل الأمر"],ca_ES:["Modifica ordre"],cs:"Modify Order",de:["Order modifizieren"],el:"Modify Order",en:"Modify Order",es:["Modificar orden"],fa:"Modify Order",fr:["Modifier l'ordre"],he_IL:["שנה הוראה"],hu_HU:"Modify Order",id_ID:["Memodifikasi Order"],it:["Modifica ordine"],ja:["注文の変更"],ko:["오더 고치기"],ms_MY:["Ubah Suai Pesanan"],nl_NL:"Modify Order",pl:["Modyfikuj zlecenie"],pt:["Modificar ordem"],ro:"Modify Order",ru:["Изменить заявку"],sv:["Ändra order"],th:["แก้ไขออเดอร์"],tr:["Emir Değiştir"],vi:["Chỉnh Lệnh"],zh:["修改订单"],zh_TW:["修改訂單"]}},26787:e=>{e.exports={ar:["نجاح"],ca_ES:"SUCCESS",cs:["ÚSPĚCH"],de:["ERFOLG"],el:["ΕΠΙΤΥΧΙΑ"],en:"SUCCESS",es:["ÉXITO"],fa:["موفقیت"],fr:["SUCCÈS"],he_IL:["הצלחה"],hu_HU:["NYERESÉG"],id_ID:["SUKSES"],it:["OPERAZIONE RIUSCITA"],ja:["成功"],ko:["성공"],ms_MY:["BERJAYA"],nl_NL:["Succes!"],pl:["SUKCES"],pt:["SUCESSO"],ro:"SUCCESS",ru:["УСПЕХ"],sv:["FRAMGÅNG"],th:["สำเร็จ"],tr:["BAŞARILI"],vi:["THÀNH CÔNG"],zh:["成功"],zh_TW:["成功"]}},438:e=>{e.exports={ar:["وقف:{stopChange} ({stopChangePercent}) {stopChangePip}، الكمية:‎{amount}‎"],ca_ES:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Import: {amount}"],cs:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",de:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Betrag: {amount}"],el:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",en:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",es:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Importe: {amount}"],fa:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",fr:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Montant: {amount}"],he_IL:["סטופ: {stopChange} ({stopChangePercent}) {stopChangePip}, סכום: {amount}"],hu_HU:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Összeg: {amount}"], id_ID:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Jumlah: {amount}"],it:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Quantità: {amount}"],ja:["ストップ: {stopChange} ({stopChangePercent}) {stopChangePip}, 金額: {amount}"],ko:["스탑: {stopChange} ({stopChangePercent}) {stopChangePip}, 금액: {amount}"],ms_MY:["Berhenti: {stopChange} ({stopChangePercent}) {stopChangePip}, Amaun: {amount}"],nl_NL:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",pl:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Kwota: {amount}"],pt:["Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Quantidade: {amount}"],ro:"Stop: {stopChange} ({stopChangePercent}) {stopChangePip}, Amount: {amount}",ru:["Стоп: {stopChange} ({stopChangePercent}) {stopChangePip}, Сумма: {amount}"],sv:["Stopp: {stopChange} ({stopChangePercent}) {stopChangePip}, belopp: {amount}"],th:["หยุด: {stopChange} ({stopChangePercent}) {stopChangePip}, จำนวน: {amount}"],tr:["Durdurma: {stopChange} ({stopChangePercent}) {stopChangePip}, Miktar: {amount}"],vi:["Dừng: {stopChange} ({stopChangePercent}) {stopChangePip}, Số tiền: {amount}"],zh:["止损:{stopChange} ({stopChangePercent}) {stopChangePip}, 账户: {amount}"],zh_TW:["停損:{stopChange} ({stopChangePercent}) {stopChangePip},賬戶:{amount}"]}},11810:e=>{e.exports={ar:["حماية المركز"],ca_ES:"Protect Position",cs:"Protect Position",de:["Position absichern"],el:"Protect Position",en:"Protect Position",es:["Proteger posición"],fa:"Protect Position",fr:["Protéger la position"],he_IL:["הגן על הפוזיציה."],hu_HU:"Protect Position",id_ID:["Lindungi Posisi"],it:["Proteggi posizione"],ja:["ポジション保護"],ko:["프로텍트 포지션"],ms_MY:["Melindungi Kedudukan"],nl_NL:"Protect Position",pl:["Zabezpiecz pozycję"],pt:["Proteger a posição"],ro:"Protect Position",ru:["Защитить позицию"],sv:["Skydda position"],th:["ป้องกันโพซิชั่น"],tr:["Pozisyonu Koru"],vi:["Bảo vệ Vị thế"],zh:["保护持仓"],zh_TW:["保護倉位"]}},87061:e=>{e.exports={ar:["كمية:‎{qty}‎"],ca_ES:["Quantitat: {qty}"],cs:"Qty: {qty}",de:["Anz: {qty}"],el:"Qty: {qty}",en:"Qty: {qty}",es:["Cantidad: {qty}"],fa:"Qty: {qty}",fr:["Qté: {qty}"],he_IL:["כמות: {qty}"],hu_HU:["Menny.: {qty}"],id_ID:["Kuant: {qty}"],it:["Q.tà: {qty}"],ja:["数量: {qty}"],ko:["수량: {qty}"],ms_MY:["Kuantiti: {qty}"],nl_NL:"Qty: {qty}",pl:["Ilość: {qty}"],pt:["Qtde: {qty}"],ro:"Qty: {qty}",ru:["Кол-во: {qty}"],sv:["Kvt: {qty}"],th:["จำนวน: {qty}"],tr:["Mik: {qty}"],vi:["S.Lg: {qty}"],zh:["仓量:{qty}"],zh_TW:["數量:{qty}"]}},19780:e=>{e.exports={ar:["عكس الصفقة"],ca_ES:"Reverse Position",cs:"Reverse Position",de:["Position Umkehren"],el:"Reverse Position",en:"Reverse Position",es:["Revertir posición"],fa:"Reverse Position",fr:["Inverser la Position"],he_IL:["הפוך פוזיציה"],hu_HU:["Fordított Pozíció"],id_ID:["Membalik Posisi"],it:["Inverti posizione"],ja:["ポジションを反転"],ko:["리버스 포지션"],ms_MY:["Kedudukan Terbalik"],nl_NL:"Reverse Position",pl:["Odwróć pozycje"],pt:["Reverter Posição"],ro:"Reverse Position",ru:["Перевернуть позицию"],sv:["Omvänd position"],th:["ตำแหน่งการย้อนกลับ"], tr:["Karşıt Pozisyon"],vi:["Vị thế Đảo ngược"],zh:["平仓反手"],zh_TW:["平倉反手"]}},78934:e=>{e.exports={ar:["الكتف الأيمن"],ca_ES:["Espatlla dreta"],cs:"Right Shoulder",de:["Rechte Schulter"],el:"Right Shoulder",en:"Right Shoulder",es:["Hombro derecho"],fa:"Right Shoulder",fr:["Epaule droite"],he_IL:["כתף ימין"],hu_HU:["Jobb Váll"],id_ID:"Right Shoulder",it:["Spalla destra"],ja:["右ショルダー"],ko:["오른어깨"],ms_MY:["Bahu Kanan"],nl_NL:"Right Shoulder",pl:["Prawe ramię"],pt:["Ombro Direito"],ro:"Right Shoulder",ru:["Правое плечо"],sv:["Höger skuldra"],th:["ไหล่ขวา"],tr:["Sağ Omuz"],vi:["Vai Phải"],zh:["右肩"],zh_TW:["右肩"]}},53115:e=>{e.exports={ar:["نسبة المخاطرة/العائد: {ratio}"],ca_ES:["Ràtio risc/benefici: {ratio}"],cs:["Poměr rizika / odměny: {ratio}"],de:["Chance/Risiko Verhältnis: {ratio}"],el:"Risk/Reward Ratio: {ratio}",en:"Risk/Reward Ratio: {ratio}",es:["Relación riesgo/beneficio: {ratio}"],fa:["‫نسبت ریسک به سود: {ratio}"],fr:["Ratio Risque/Récompense: {ratio}"],he_IL:["יחס סיכוי/סיכון: {ratio}"],hu_HU:["Kockázat/Nyereség Arány: {ratio}"],id_ID:["Rasio Risiko/Perolehan: {ratio}"],it:["Rapporto rischio/rendimento: {ratio}"],ja:["リスク/リワード比: {ratio}"],ko:["위험/보상율: {ratio}"],ms_MY:["Nisbah Risiko/Ganjaran: {ratio}"],nl_NL:["Risico/opbrengst ratio: {ratio}"],pl:["Współczynnik Ryzyko/Zysk: {ratio}"],pt:["Razão risco/retorno: {ratio}"],ro:"Risk/Reward Ratio: {ratio}",ru:["Соотношение риск/прибыль: {ratio}"],sv:["Risk/reward-kvot: {ratio}"],th:["ความเสี่ยง/ผลตอบแทน : {ratio}"],tr:["Risk/Ödül Oranı: {ratio}"],vi:["Tỷ lệ Rủi ro/Lợi nhuận: {ratio}"],zh:["盈亏比: {ratio}"],zh_TW:["風險/報酬比:{ratio}"]}},15166:e=>{e.exports={ar:["هدف:{profitChange} ({profitChangePercent}) {profitChangePip}، الكمية:‎{amount}‎"],ca_ES:["Objectiu: {profitChange} ({profitChangePercent}) {profitChangePip}, Import: {amount}"],cs:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",de:["Ziel: {profitChange} ({profitChangePercent}) {profitChangePip}, Betrag: {amount}"],el:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",en:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",es:["Objetivo: {profitChange} ({profitChangePercent}) {profitChangePip}, Importe: {amount}"],fa:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",fr:["Cible: {profitChange} ({profitChangePercent}) {profitChangePip},Montant: {amount}"],he_IL:["יעד: {profitChange} ({profitChangePercent}) {profitChangePip}, סכום: {amount}"],hu_HU:["Cél: {profitChange} ({profitChangePercent}) {profitChangePip}, Összeg: {amount}"],id_ID:["Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Jumlah: {amount}"],it:["Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Quantità: {amount}"],ja:["ターゲット: {profitChange} ({profitChangePercent}) {profitChangePip}, 金額: {amount}"],ko:["타겟: {profitChange} ({profitChangePercent}) {profitChangePip}, 금액: {amount}"],ms_MY:["Sasaran: {profitChange} ({profitChangePercent}) {profitChangePip}, Amaun: {amount}"], nl_NL:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",pl:["Cel: {profitChange} ({profitChangePercent}) {profitChangePip}, Kwota: {amount}"],pt:["Alvos: {profitChange} ({profitChangePercent}) {profitChangePip}, Quantidade: {amount}"],ro:"Target: {profitChange} ({profitChangePercent}) {profitChangePip}, Amount: {amount}",ru:["Цель: {profitChange} ({profitChangePercent}) {profitChangePip}, Сумма: {amount}"],sv:["Mål: {profitChange} ({profitChangePercent}) {profitChangePip}, Belopp: {amount}"],th:["เป้าหมาย: {profitChange} ({profitChangePercent}) {profitChangePip}, จำนวน: {amount}"],tr:["Hedef: {profitChange} ({profitChangePercent}) {profitChangePip}, Miktar: {amount}"],vi:["Mục tiêu: {profitChange} ({profitChangePercent}) {profitChangePip}, Số tiền: {amount}"],zh:["目标: {profitChange} ({profitChangePercent}) {profitChangePip}, 账户: {amount}"],zh_TW:["目標:{profitChange} ({profitChangePercent}) {profitChangePip},賬戶:{amount}"]}},26273:e=>{e.exports={ar:["مسافة: {number} px"],ca_ES:["distància: {number} px"],cs:["Vzdálenost: {number} px"],de:["Abstand: {number} px"],el:["απόσταση: {number} px"],en:"distance: {number} px",es:["distancia: {number} px"],fa:["{number} px :فاصله مختصات"],fr:"distance: {number} px",he_IL:["מרחק: {number} px"],hu_HU:["távolság: {number} px"],id_ID:["jarak: {number} px"],it:["distanza {number} px"],ja:["距離: {number} px"],ko:["거리: {number} px"],ms_MY:["jarak: {number} px"],nl_NL:["afstand: {number} px"],pl:["dystans: {number} px"],pt:["distância: {number} px"],ro:"distance: {number} px",ru:["Расстояние: {number} пк"],sv:["avstånd: {number} px"],th:["ระยะ: {number} px"],tr:["mesafe: {number} px"],vi:["khoảng cách: {number} px"],zh:["距离: {number} px"],zh_TW:["距離:{number} px"]}},72892:e=>{e.exports={ar:["‎{status}‎ الهدف والخسارة:‎{pnl}‎"],ca_ES:["{status} PiG: {pnl}"],cs:["{status} Z&Z: {pnl}"],de:["{status} G&V: {pnl}"],el:"{status} P&L: {pnl}",en:"{status} P&L: {pnl}",es:["{status} PyG: {pnl}"],fa:["‎{status} P&L {pnl}‎"],fr:["{status} Gains&Pertes: {pnl}"],he_IL:["{status} רווח/הפסד: {pnl}"],hu_HU:"{status} P&L: {pnl}",id_ID:"{status} P&L: {pnl}",it:"{status} P&L: {pnl}",ja:["{status}損益: {pnl}"],ko:["{status} 손익: {pnl}"],ms_MY:"{status} P&L: {pnl}",nl_NL:["{status} winst & verlies: {pnl}"],pl:"{status} P&L: {pnl}",pt:["{status} L&P: {pnl}"],ro:"{status} P&L: {pnl}",ru:["ПР/УБ {status}: {pnl}"],sv:"{status} P&L: {pnl}",th:["{status} กำไร&ขาดทุน: {pnl}"],tr:["{status} Kar/Zarar: {pnl}"],vi:["{status} Lợi nhuận & Thua lỗ: {pnl}"],zh:["{status} 盈利&亏损: {pnl}"],zh_TW:["{status}損益表:{pnl}"]}}}]);