12345 |
- /*
- All material copyright ESRI, All Rights Reserved, unless otherwise specified.
- See https://js.arcgis.com/4.24/esri/copyright.txt for details.
- */
- import{_ as o}from"../chunks/tslib.es6.js";import{aliasOf as t}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import{subclass as e}from"../core/accessorSupport/decorators/subclass.js";import i from"./Widget.js";import"./support/widgetUtils.js";import{messageBundle as r}from"./support/decorators/messageBundle.js";import{tsx as n}from"./support/jsxFactory.js";import a from"./Zoom/IconButton.js";import m from"./Zoom/ZoomViewModel.js";const l={base:"esri-zoom esri-widget",horizontalLayout:"esri-zoom--horizontal",zoomInIcon:"esri-icon-plus",zoomOutIcon:"esri-icon-minus",widgetIcon:"esri-icon-zoom-in-magnifying-glass"};let u=class extends i{constructor(o,t){super(o,t),this.iconClass=l.widgetIcon,this.label=void 0,this.messages=null,this.view=null,this.viewModel=new m}initialize(){this._zoomInButton=new a({action:this.zoomIn.bind(this),iconClass:l.zoomInIcon}),this._zoomOutButton=new a({action:this.zoomOut.bind(this),iconClass:l.zoomOutIcon})}destroy(){this._zoomInButton.destroy(),this._zoomOutButton.destroy(),this._zoomInButton=null,this._zoomOutButton=null}set layout(o){"horizontal"!==o&&(o="vertical"),this._set("layout",o)}render(){const o=this.viewModel,t={[l.horizontalLayout]:"horizontal"===this.layout};return this._zoomInButton.enabled="ready"===o.state&&o.canZoomIn,this._zoomOutButton.enabled="ready"===o.state&&o.canZoomOut,this._zoomInButton.title=this.messages.zoomIn,this._zoomOutButton.title=this.messages.zoomOut,n("div",{class:this.classes(l.base,t)},this._zoomInButton.render(),this._zoomOutButton.render())}zoomIn(){return this.viewModel.zoomIn()}zoomOut(){return this.viewModel.zoomOut()}};o([s()],u.prototype,"iconClass",void 0),o([s({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],u.prototype,"label",void 0),o([s({value:"vertical"})],u.prototype,"layout",null),o([s(),r("esri/widgets/Zoom/t9n/Zoom")],u.prototype,"messages",void 0),o([t("viewModel.view")],u.prototype,"view",void 0),o([s({type:m})],u.prototype,"viewModel",void 0),u=o([e("esri.widgets.Zoom")],u);const c=u;export{c as default};
|