/*! All material copyright Esri, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
v4.34.7 */
import{C as c,d as o,fa as R,i as f,k as m}from"./W65VYONU.js";import{a as d}from"./VFBMFZYP.js";import{g as h}from"./HVSQINGB.js";var n=class extends c{constructor(){super(...arguments),Object.defineProperty(this,"ix",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"iy",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_generator",{enumerable:!0,configurable:!0,writable:!0,value:R()})}_getTooltipPoint(){let i=this.get("tooltipX"),t=this.get("tooltipY"),s=0,a=0;h(i)&&(s=i),h(t)&&(a=t);let r=this.get("radius",0),e=this.get("innerRadius",0),l=this.get("dRadius",0),u=this.get("dInnerRadius",0);return r+=l,e+=u,e<0&&(e=r+e),i instanceof d&&(s=this.ix*(e+(r-e)*i.value)),t instanceof d&&(a=this.iy*(e+(r-e)*t.value)),this.get("arc")>=360&&e==0&&(s=0,a=0),{x:s,y:a}}_beforeChanged(){super._beforeChanged(),(this.isDirty("radius")||this.isDirty("arc")||this.isDirty("innerRadius")||this.isDirty("startAngle")||this.isDirty("dRadius")||this.isDirty("dInnerRadius")||this.isDirty("cornerRadius")||this.isDirty("shiftRadius"))&&(this._clear=!0)}_changed(){if(super._changed(),this._clear){let i=this.get("startAngle",0),t=this.get("arc",0),s=this._generator;t<0&&(i=i+t,t=t*-1),t>.1&&s.cornerRadius(this.get("cornerRadius",0)),s.context(this._display);let a=this.get("radius",0),r=this.get("innerRadius",0),e=this.get("dRadius",0),l=this.get("dInnerRadius",0);a+=e,r+=l,r<0&&(r=a+r),s({innerRadius:r,outerRadius:a,startAngle:(i+90)*o,endAngle:(i+t+90)*o});let u=i+t/2;this.ix=m(u),this.iy=f(u);let g=this.get("shiftRadius",0);this.setRaw("dx",this.ix*g),this.setRaw("dy",this.iy*g),this.markDirtyPosition()}}};Object.defineProperty(n,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Slice"});Object.defineProperty(n,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:c.classNames.concat([n.className])});export{n as a};
