Home.js 2.6 KB

12345
  1. /*
  2. All material copyright ESRI, All Rights Reserved, unless otherwise specified.
  3. See https://js.arcgis.com/4.25/esri/copyright.txt for details.
  4. */
  5. import{_ as e}from"../chunks/tslib.es6.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/accessorSupport/ensureType.js";import{subclass as s}from"../core/accessorSupport/decorators/subclass.js";import t from"./Widget.js";import i from"./Home/HomeViewModel.js";import{accessibleHandler as r}from"./support/decorators/accessibleHandler.js";import{messageBundle as n}from"./support/decorators/messageBundle.js";import{vmEvent as l}from"./support/decorators/vmEvent.js";import{tsx as a}from"./support/jsxFactory.js";import"./support/widgetUtils.js";const d={base:"esri-home esri-widget--button esri-widget",esriIcon:"esri-icon",loadingIcon:"esri-icon-loading-indicator",rotatingIcon:"esri-rotating",widgetIcon:"esri-icon-home",disabled:"esri-disabled"};let c=class extends t{constructor(e,o){super(e,o),this.iconClass=d.widgetIcon,this.messages=null,this.messagesCommon=null,this.viewModel=new i}get goToOverride(){return this.viewModel.goToOverride}set goToOverride(e){this.viewModel.goToOverride=e}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get viewpoint(){return this.viewModel.viewpoint}set viewpoint(e){this.viewModel.viewpoint=e}cancelGo(){this.viewModel.cancelGo()}go(){return this.viewModel.go()}render(){const e=this.viewModel?.state,{messagesCommon:o,messages:s}=this,t={[d.disabled]:"disabled"===e};return a("div",{bind:this,class:this.classes(d.base,t),role:"button",tabIndex:0,onclick:this._go,onkeydown:this._go,"aria-label":s.widgetLabel,title:"going-home"===e?o.cancel:s.title},this.renderIcon())}renderIcon(){const e=this.viewModel?.state,o={[d.esriIcon]:!0,[this.iconClass]:"going-home"!==e,[d.loadingIcon]:"going-home"===e,[d.rotatingIcon]:"going-home"===e};return a("span",{"aria-hidden":"true",class:this.classes(o)})}_go(){const{viewModel:e}=this;"going-home"===e.state?e.cancelGo():e.go()}};e([o()],c.prototype,"goToOverride",null),e([o()],c.prototype,"iconClass",void 0),e([o()],c.prototype,"label",null),e([o(),n("esri/widgets/Home/t9n/Home")],c.prototype,"messages",void 0),e([o(),n("esri/t9n/common")],c.prototype,"messagesCommon",void 0),e([o()],c.prototype,"uiStrings",void 0),e([o()],c.prototype,"view",null),e([o({type:i}),l("go")],c.prototype,"viewModel",void 0),e([o()],c.prototype,"viewpoint",null),e([r()],c.prototype,"_go",null),c=e([s("esri.widgets.Home")],c);const p=c;export{p as default};