2 lines
4.0 KiB
JavaScript
2 lines
4.0 KiB
JavaScript
"use strict";(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[7806],{25422:(e,t,n)=>{t.transformPoint=t.translationMatrix=t.scalingMatrix=t.rotationMatrix=void 0;var i=n(86441);t.rotationMatrix=function(e){var t=Math.cos(e),n=Math.sin(e);return[[t,-n,0],[n,t,0],[0,0,1]]},t.scalingMatrix=function(e,t){return[[e,0,0],[0,t,0],[0,0,1]]},t.translationMatrix=function(e,t){return[[1,0,e],[0,1,t],[0,0,1]]},t.transformPoint=function(e,t){for(var n=[t.x,t.y,1],o=[0,0,0],r=0;r<3;r++)for(var s=0;s<3;s++)o[r]+=n[s]*e[r][s];return new i.Point(o[0],o[1])}},15510:(e,t,n)=>{n.r(t),n.d(t,{LineToolIcon:()=>x});var i=n(928),o=n(12027),r=n(22329),s=n(9343),a=n(90054),l=n(16738),c=n(19625),u=n(38039),h=n(31229),g=n(32679),d=n(6590),p=n(73305);const P=(0,c.getHexColorByName)("color-tv-blue-500"),f={intervalsVisibilities:{...h.intervalsVisibilitiesDefaults},color:P,size:40},v={icon:61720,angle:.5*Math.PI},C=(0,g.extractAllPropertiesKeys)(f),m=(0,g.extractAllPropertiesKeys)(v),_=[...new Set([...m,...C,...d.commonLineToolPropertiesStateKeys])];class w extends u.LineDataSourceProperty{constructor(e){super(e),this.addChild("backgroundsColors",new p.LineToolColorsProperty([this.childs().color]))}static create(e,t,n){return new this({defaultName:"linetoolicon",factoryDefaultsSupplier:()=>(0,a.default)(f),nonThemedDefaultsKeys:C,themedDefaultsKeys:[],state:(0,l.default)({},v,{icon:n},t??{}),allStateKeys:_,theme:e})}}const y=(0,s.getLogger)("Chart.LineToolIcon");var S;!function(e){e[e.Version=1]="Version"}(S||(S={}));class x extends r.LineToolSvgIconBase{constructor(e,t,n,i){super(e,t??x.createProperties(e.backgroundTheme().spawnOwnership()),n,i),this.version=1,this._loadViews()}name(){return"Icon"}template(){return this._properties.template()}static createProperties(e,t){const n=w.create(e,t,i.iconTool.value());return this._configureProperties(n),n}_getPropertyDefinitionsViewModelClass(){return Promise.all([n.e(3401),n.e(3889),n.e(8009),n.e(6204),n.e(1963),n.e(8537)]).then(n.bind(n,19532)).then((e=>e.IconsDefinitionsViewModel))}async _loadViews(){const[{getSvgContentForCharCode:e,getSvgRenderer:t},{IconPaneView:i}]=await Promise.all([n.e(7987).then(n.bind(n,25482)),Promise.all([n.e(2870),n.e(2211),n.e(1583)]).then(n.bind(n,11735))]);if(!this._isDestroyed){const n=this._properties.childs().icon.value();this._svgContent=e(n),this._onIconChanged.fire();const r=t(o.svgRenderer,n);null===r&&y.logWarn(`Couldn't create svg renderer for icon ${n}`),this._setPaneViews([new i(this,this._model,r)])}}}},22329:(e,t,n)=>{n.d(t,{LineToolSvgIconBase:()=>u});var i,o=n(50151),r=n(86441),s=n(25422),a=n(52033),l=n(29875),c=n(64147);!function(e){e[e.AnchorLimit=80]="AnchorLimit"}(i||(i={}));class u extends l.LineDataSource{constructor(e,t,n,i){super(e,t,n,i),this._onIconChanged=new a.Delegate,this._svgContent=null,this._hasEditableCoordinates=new c.WatchedValue(!1),this._changePointData=null,this._loadViews()}pointsCount(){return 1}getAnchorLimit(){return 80}getChangePointForSync(e){return null}startChanging(e,t){const n=(0,
|
|
o.ensureNotNull)(this.pointToScreenPoint(this._points[0])),i=this.properties().childs(),a=i.size.value();let l;if(t)l=(0,o.ensureNotNull)(this.pointToScreenPoint(t));else{let e=new r.Point(0,Math.max(80,a)/2);const t=(0,s.rotationMatrix)(i.angle.value());e=(0,s.transformPoint)(t,e),l=n.add(e)}const c=n.subtract(l).length();this._changePointData={centerPoint:n,initialLength:c,initialSize:a},super.startChanging(e,t)}setPoint(e,t,n){const{centerPoint:i,initialLength:r,initialSize:s}=(0,o.ensureNotNull)(this._changePointData),a=(0,o.ensureNotNull)(this.pointToScreenPoint(t)),l=this.properties().childs();if(0===e||1===e){const t=a.subtract(i).normalized();let n=Math.acos(-t.x);Math.asin(t.y)>0&&(n=2*Math.PI-n),0===e&&(n+=Math.PI),l.angle.setValue(n)}else{const e=s*(i.subtract(a).length()/r);l.size.setValue(e)}}getSourceIcon(){const e=this.svgContent();return null===e?null:{type:"svgContent",content:e}}onSourceIconChanged(){return this._onIconChanged}svgContent(){return this._svgContent}static _configureProperties(e){super._configureProperties(e),e.addExcludedKey("angle",1)}}}}]); |