(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[4073],{25432:(t,e,i)=>{"use strict";i.d(e,{commonLineToolPropertiesStateKeys:()=>n});const n=["symbolStateVersion","zOrderVersion","frozen","title","interval","symbol","currencyId","unitId","metricId","visible","adjustedToSplitTime","intervalsVisibilities.ticks","intervalsVisibilities.seconds","intervalsVisibilities.secondsFrom","intervalsVisibilities.secondsTo","intervalsVisibilities.minutes","intervalsVisibilities.minutesFrom","intervalsVisibilities.minutesTo","intervalsVisibilities.hours","intervalsVisibilities.hoursFrom","intervalsVisibilities.hoursTo","intervalsVisibilities.days","intervalsVisibilities.daysFrom","intervalsVisibilities.daysTo","intervalsVisibilities.weeks","intervalsVisibilities.weeksFrom","intervalsVisibilities.weeksTo","intervalsVisibilities.months","intervalsVisibilities.monthsFrom","intervalsVisibilities.monthsTo","intervalsVisibilities.ranges"];var o,s,r;!function(t){t[t.NotShared=0]="NotShared",t[t.SharedInLayout=1]="SharedInLayout",t[t.GloballyShared=2]="GloballyShared"}(o||(o={})),function(t){t.BeforeAllAction="BeforeAll",t.CustomAction="CustomAction"}(s||(s={})),function(t){t.FloatingToolbarButton="FloatingToolbarButton",t.Default="Default"}(r||(r={}))},86371:(t,e,i)=>{"use strict";i.d(e,{LineDataSourceProperty:()=>l});var n=i(57600),o=i(35558),s=i(85842),r=i(93445),a=i(47895);class l extends r.DefaultProperty{constructor({templateKeys:t,factoryDefaultsSupplier:e,...i}){let n=e;e&&(n=()=>{const t=e();return(0,a.applyDefaultsOverrides)(t,void 0,void 0,i.defaultName),t}),super({saveNonDefaultUserPreferencesOnly:!0,factoryDefaultsSupplier:n,...i}),this._templateKeys=(0,s.ensureDefined)(t||this._allDefaultsKeys)}template(){return(0,r.extractState)(this.state(),this._templateKeys,[])}applyTemplate(t){this.mergeAndFire((0,r.extractState)((0,o.default)((0,n.default)(this._factoryDefaultsSupplier()),t),this._templateKeys))}}},16965:(t,e,i)=>{"use strict";i.d(e,{LineToolTextRenderer:()=>o});var n=i(61208);class o extends n.TextRenderer{getTextInfo(){const t=this._getInternalData(),e=this.fontStyle(),i=this._getFontInfo();return{...t,lineHeight:this.lineHeight(),lineSpacing:this.lineSpacing(),font:e,fontSize:i.fontSize,centerRotation:this.centerTextRotation()??void 0}}setCursorType(t){this._hitTest.data()?.cursorType!==t&&this._hitTest.mergeData({cursorType:t})}}},35428:(t,e,i)=>{"use strict";i.d(e,{TrendToolWithStatsPaneView:()=>N});var n=i(85842),o=i(78792),s=i(57415),r=i(91599),a=i(81458),l=i(95385),h=i(99680),d=i(34192),c=i(15384),u=i(35433),g=i(91069),p=i(11284),f=i(31048),m=i(665),v=i(83077),_=i(51946),x=i(91903),w=i(57268),S=i(64333),R=i(63519),T=i(85297),y=i(19403);let b=null;const P=(0,p.getHexColorByName)("color-cold-gray-50"),M=(0,p.getHexColorByName)("color-cold-gray-800"),D={angle:(0,S.svgRenderer)(R),priceRange:(0,S.svgRenderer)(T),barsRange:(0,S.svgRenderer)(y)},V=18;class F{constructor(t){this._data=null,this._preRenderedData=null,this._textWidthCache=new w.TextWidthCache,this._wordWrap=(0,m.wordWrapCached)(), this._hittest=t||new v.HitTestResult(v.HitTarget.MovePoint)}setData(t){this._data=t,this._preRenderedData=null}draw(t,e){if(!this._data||null===this._data.text)return;const i=this._preRender();if(!i)return;const{horizontalPixelRatio:n,verticalPixelRatio:o}=e,{point:s,horzAlign:r,doNotAlignText:a,backgroundRoundRect:h,backgroundColor:d,color:c,lineSpacing:u,icons:g,isDark:p}=this._data,{font:f,lineHeight:m,lines:v,padding:w}=i,S=Math.round(s.x*n),R=Math.round(s.y*o),T=Math.round(i.rectSize.width*n),y=Math.round(i.rectSize.height*o);if(r!==l.HorizontalAlign.Right&&r!==l.HorizontalAlign.Center||!0!==a&&(t.textAlign=r===l.HorizontalAlign.Right?"end":"center"),h?((0,_.drawRoundRect)(t,S,R,T,y,h*n),t.fillStyle=d,t.fill(),t.globalAlpha=1):(t.fillStyle=d,t.fillRect(S,R,T,y),t.globalAlpha=1),g){const i=Math.max(0,(m-V)/2),r=Math.round((s.x+w.left)*n);let a=s.y+w.top+i;for(const i of g){const n=Math.round(a*o);this._drawIcon(t,r,n,D[i],Boolean(p),e),a+=m+u}}const b=i.textPointOffset,P=s.x+b.x;let M=s.y+b.y;t.fillStyle=c,t.textBaseline="middle",t.font=f;const F=Math.round(m/2);(0,x.drawScaled)(t,n,o,(()=>{for(const e of v)t.fillText(e,P,M+F),M+=m+u}))}hitTest(t){const e=this._data,i=this._preRender();if(!e||!i)return null;const n=(0,s.point)(e.point.x+i.rectSize.width,e.point.y+i.rectSize.height);return(0,g.pointInBox)(t,(0,s.box)(e.point,n))?this._hittest:null}rectSize(){const t=this._preRender();return t?(0,u.size)({width:t.rectSize.width,height:t.rectSize.height}):null}updatePoint(t){this._data&&(this._data.point=t)}_preRender(){if(!this._data)return null;if(this._preRenderedData)return this._preRenderedData;const{fontSize:t=12,text:e,wordWrapWidth:i,paddingBottom:n,paddingTop:o,paddingLeft:s,paddingRight:r,icons:a,bold:l,italic:h,lineSpacing:d}=this._data,c=(0,f.makeFont)(t,this._data.font,h?"italic":void 0,l?"bold":void 0),g=function(){if(null!==b)return b;const t=(0,x.createDisconnectedCanvas)(document,(0,u.size)({width:0,height:0}));return b=(0,x.getPrescaledContext2D)(t),b}(),p={x:0,y:0};g.textBaseline="middle",g.font=c;const m=null===e?[]:this._wordWrap(e,c,this._textWidthCache,!0,i).map((t=>t.text));let v=0;if(i)v=i;else for(const t of m)v=Math.max(v,g.measureText(t).width);const _={top:o,right:r,bottom:n,left:s},w=Math.max(t,a?.length?V:0),S=w*m.length+d*(m.length-1),R={width:v+_.left+_.right,height:S+_.top+_.bottom};if(p.x+=_.left,p.y+=_.top,a){const e=void 0!==this._data.textPadding?this._data.textPadding:t/2;p.x+=V+e,R.width+=V+e}return R.width%2!=0&&R.width++,this._preRenderedData={rectSize:R,padding:_,textPointOffset:p,lines:m,lineHeight:w,font:c},this._preRenderedData}_drawIcon(t,e,i,n,o,s){t.fillStyle=o?P:M,n.render(t,{targetViewBox:{x:e,y:i,width:Math.round(V*s.horizontalPixelRatio),height:Math.round(V*s.verticalPixelRatio)},doNotApplyColors:!0})}}var z,A,L,C=i(14491),B=i(45124),H=i(7919);!function(t){t[t.Offset=8]="Offset",t[t.FontSize=12]="FontSize",t[t.LineSpacing=8]="LineSpacing",t[t.RectRadius=4]="RectRadius",t[t.TextPadding=12]="TextPadding",t[t.PaddingTopBottom=12]="PaddingTopBottom", t[t.PaddingLeftRight=12]="PaddingLeftRight"}(z||(z={})),function(t){t.Background="#f2f2f2e6",t.Text="#0f0f0f"}(A||(A={})),function(t){t.Background="#464646e6",t.Text="#FFFFFF"}(L||(L={}));class N extends H.InplaceTextLineSourcePaneView{constructor(){super(...arguments),this._renderer=new h.CompositeRenderer,this._labelData=null,this._label=null,this._statsRenderer=new F}renderer(t){return this._invalidated&&this._updateImpl(t),this._renderer}_updateAndReturnStatsRenderer(t){this._statsRenderer.setData(this._statLabelData());const e=this._statsRenderer.rectSize();if(null!==e){const i=this._targetRect(t,e);this._statsRenderer.updatePoint((0,s.point)(i.left,i.top))}return this._statsRenderer}_targetRect(t,e){const i=this._source.properties().childs().statsPosition.value(),n=this._getPointsForStats(),r=i===B.StatsPosition.Auto?B.StatsPosition.Center:i;let a=n[r].x+12,l=n[r].y;const h=this._points[1].ythis._points[0].y&&this._points[1].x>this._points[0].x;h?l-=12+e.height:l+=12;const{mediaSize:d}=t;return i!==B.StatsPosition.Auto||(0,s.equalPoints)(n[B.StatsPosition.Left],n[B.StatsPosition.Right])||(a<0?a=0:a+e.width>d.width&&(a=d.width-e.width),l<0?l=0:l+e.height>d.height&&(l=d.height-e.height),(0,o.intersectLineSegmentAndBox)((0,s.lineSegment)(n[B.StatsPosition.Left],n[B.StatsPosition.Right]),(0,s.box)((0,s.point)(a,l),(0,s.point)(a+e.width,l+e.height)))&&(l=h?n[r].y+12:n[r].y-12-e.height,a=Math.min(n[B.StatsPosition.Center].x,d.width)-e.width)),{left:Math.floor(a),top:Math.floor(l),width:e.width,height:e.height}}_priceRange(){const[t,e]=this._source.points(),i=this._source.properties().childs(),o=i.showPriceRange.value(),s=i.showPercentPriceRange.value(),r=i.showPipsPriceRange.value(),a=(0,n.ensureNotNull)(this._getOwnerSource());let l;if(a.priceScale()&&(o||s||r)){const i=[],n=e.price-t.price;if(o||s){const r=n/Math.abs(t.price),l=[];if(o){const i=a.formatter(),o=i.formatChange?.(e.price,t.price)??i.format(n);l.push(o)}if(s){const t=(0,d.getPercentageFormatter)().format(100*r);l.push(o?`(${t})`:t)}i.push(l.join(" "))}const h=this._model.mainSeries().symbolInfo(),c=h&&(0,d.getPipFormatter)(h);r&&c&&i.push(c.format(n)),l=i.join(", ")}return l}_statLabelData(){const[t,e]=this._source.points(),o=this._source.properties().childs(),s=[];let h,u,g,p,f;const m=this._priceRange();void 0!==m&&s.push("priceRange");const v=o.showBarsRange.value(),_=o.showDateTimeRange&&o.showDateTimeRange.value(),x=o.showDistance&&o.showDistance.value(),w=o.showAngle&&o.showAngle.value(),S=(0,n.ensureNotNull)(this._getOwnerSource());if(w||x){const i=(0,n.ensureNotNull)(this._source.pointToScreenPoint(t,S));p=(0,n.ensureNotNull)(this._source.pointToScreenPoint(e,S)).subtract(i),f=Math.round(1e5*p.length())/1e5}if(v||_||x){if(h="",v&&(g=e.index-t.index,h+=r.t(null,void 0,i(38093)).format({count:(0,a.forceLTRStr)(String(g))})),_){const i=this._model.timeScale().indexToUserTime(t.index),n=this._model.timeScale().indexToUserTime(e.index);if(i&&n){ const t=(n.valueOf()-i.valueOf())/1e3,e=(0,a.startWithLTR)((new c.TimeSpanFormatter).format(t));e&&(h+=v?" ("+e+")":e)}}x&&(h&&(h+=", "),h+=r.t(null,void 0,i(44597)).format({number:(0,a.forceLTRStr)((0,d.getNumericFormatter)().format(Math.round(Number(f))))})),h&&s.push("barsRange")}if(w){let t;if(void 0!==f&&f>0&&void 0!==p&&(p=p.normalized(),t=Math.acos(p.x),p.y>0&&(t=-t)),"number"==typeof t&&!isNaN(t)){const e=180*t/Math.PI;u=Math.round(100*e)/100+"ยบ",s.push("angle")}}this._label=[(0,a.forceLTRStr)(m),h,u].filter((t=>null!=t)).join("\n")||null;const R=this._model.dark().value(),T=R?"#464646e6":"#f2f2f2e6",y=R?"#FFFFFF":"#0f0f0f",b={point:this._points[1],text:this._label,color:y,isDark:R,font:C.CHART_FONT_FAMILY,fontSize:12,lineSpacing:8,backgroundColor:T,backgroundRoundRect:4,paddingLeft:12,paddingRight:12,paddingTop:12,paddingBottom:12,textPadding:12,doNotAlignText:!0,icons:s,bold:!1,italic:!1,lines:[],wordWrapWidth:0};return this._points[1].y{"use strict";i.d(e,{PlusTextRendererDecorator:()=>o});var n=i(61208);class o{geometry(t){const e=(0,n.fontSize)(t);return{decoratorAndTextMargin:e/3,width:Math.round(.8*e),ignoreRtl:!1}}draw(t,e,i,n){const{horizontalPixelRatio:o,verticalPixelRatio:s}=e,r=Math.max(1,Math.round(o*n.decoratorWidth/8)),a=r%2/2,l=Math.round((n.textTop+n.textBottom)/2*s)+a,h=Math.round((n.decoratorLeft+n.decoratorWidth/2)*o)+a,d=Math.round(n.decoratorWidth*o);t.strokeStyle=i.color,t.lineWidth=r;let c=d/2;h%2/2!=c%2/2&&(c+=.5),t.beginPath(),t.moveTo(h-c,l),t.lineTo(h+c,l),t.moveTo(h,l-c),t.lineTo(h,l+c),t.stroke()}static instance(){return this._instance=this._instance??new o,this._instance}}o._instance=null},17567:(t,e,i)=>{"use strict";i.d(e,{factoryDefaultsForCurrentTheme:()=>l});var n=i(35558),o=i(57600),s=i(85842),r=i(49841),a=i(47097);function l(t,e){const i=r.watchedTheme.value()??a.StdTheme.Light,l=(0,o.default)(t);return(0,n.default)(l,(0,s.ensureDefined)(e.get(i))),l}},63519:t=>{t.exports=''},19403:t=>{t.exports=''},85297:t=>{ t.exports=''}}]);