// All material copyright ESRI, All Rights Reserved, unless otherwise specified.// See https://js.arcgis.com/4.6/esri/copyright.txt for details.//>>builtdefine("require exports ../core/tsSupport/declareExtendsHelper ../core/tsSupport/decorateHelper ./support/widget ../core/accessorSupport/decorators ./Widget ../core/promiseUtils ../core/watchUtils ./support/AnchorElementViewModel".split(" "),function(p,q,k,e,f,d,l,m,n,g){returnfunction(h){functionb(a){a=h.call(this)||this;a._animationDelay=500;a._animationPromise=null;a.location=null;a.view=null;a.visible=!1;a.viewModel=newg;returna}k(b,h);b.prototype.postInitialize=function(){vara=this;this.own([n.watch(this,"visible",function(b){returna._visibleChange(b)})])};b.prototype.destroy=function(){this._cancelAnimationPromise()};b.prototype.show=function(a){varb=this,c=a.location;a=a.promise;c&&(this.viewModel.location=c);this.visible=!0;a&&a.always(function(){returnb.hide()})};b.prototype.hide=function(){this.visible=!1};b.prototype.render=function(){vara=this.visible,b=!!this.viewModel.screenLocation,a=(c={},c["esri-spinner--start"]=a&&b,c["esri-spinner--finish"]=!a&&b,c),c=this._getPositionStyles();returnf.tsx("div",{class:"esri-spinner",classes:a,styles:c});varc};b.prototype._cancelAnimationPromise=function(){this._animationPromise&&(this._animationPromise.cancel(),this._animationPromise=null)};b.prototype._visibleChange=function(a){varb=this;a?this.viewModel.screenLocationEnabled=!0:(this._cancelAnimationPromise(),this._animationPromise=m.after(this._animationDelay).then(function(){b.viewModel.screenLocationEnabled=!1;b._animationPromise=null}))};b.prototype._getPositionStyles=function(){vara=this.viewModel.screenLocation;returna?{left:a.x+"px",top:a.y+"px"}:{}};e([d.aliasOf("viewModel.location")],b.prototype,"location",void0);e([d.aliasOf("viewModel.view")],b.prototype,"view",void0);e([d.property(),f.renderable()],b.prototype,"visible",void0);e([d.property({type:g}),f.renderable(["viewModel.screenLocation","viewModel.screenLocationEnabled"])],b.prototype,"viewModel",void0);returnb=e([d.subclass("esri.widgets.Spinner")],b)}(d.declared(l))});