12345 |
- /*
- All material copyright ESRI, All Rights Reserved, unless otherwise specified.
- See https://js.arcgis.com/4.25/esri/copyright.txt for details.
- */
- import{_ as t}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 e}from"../core/accessorSupport/decorators/subclass.js";import s from"./Widget.js";import i from"./NavigationToggle/NavigationToggleViewModel.js";import{accessibleHandler as a}from"./support/decorators/accessibleHandler.js";import{messageBundle as r}from"./support/decorators/messageBundle.js";import{tsx as n}from"./support/jsxFactory.js";import"./support/widgetUtils.js";const l={base:"esri-navigation-toggle esri-widget",button:"esri-navigation-toggle__button esri-widget--button",activeButton:"esri-navigation-toggle__button--active",panButton:"esri-navigation-toggle__button--pan",rotateButton:"esri-navigation-toggle__button--rotate",isLayoutHorizontal:"esri-navigation-toggle--horizontal",rotationIcon:"esri-icon-rotate",panIcon:"esri-icon-pan",widgetIcon:"esri-icon-pan2",disabled:"esri-disabled"};let g=class extends s{constructor(t,o){super(t,o),this.iconClass=l.widgetIcon,this.messages=null,this.viewModel=new i}get label(){return this.messages?.widgetLabel??""}set label(t){this._overrideIfSome("label",t)}set layout(t){"horizontal"!==t&&(t="vertical"),this._set("layout",t)}get view(){return this.viewModel.view}set view(t){this.viewModel.view=t}toggle(){return this.viewModel.toggle()}render(){const t="disabled"===this.get("viewModel.state"),o="pan"===this.get("viewModel.navigationMode"),e={[l.disabled]:t,[l.isLayoutHorizontal]:"horizontal"===this.layout},s={[l.activeButton]:o},i={[l.activeButton]:!o},a=t?-1:0,r=this.messages.toggle;return n("div",{bind:this,class:this.classes(l.base,e),onclick:this._toggle,onkeydown:this._toggle,tabIndex:a,"aria-label":r,title:r},n("div",{class:this.classes(l.button,l.panButton,s)},n("span",{class:l.panIcon})),n("div",{class:this.classes(l.button,l.rotateButton,i)},n("span",{class:l.rotationIcon})))}_toggle(){this.toggle()}};t([o()],g.prototype,"iconClass",void 0),t([o()],g.prototype,"label",null),t([o({value:"vertical"})],g.prototype,"layout",null),t([o(),r("esri/widgets/NavigationToggle/t9n/NavigationToggle")],g.prototype,"messages",void 0),t([o()],g.prototype,"view",null),t([o({type:i})],g.prototype,"viewModel",void 0),t([a()],g.prototype,"_toggle",null),g=t([e("esri.widgets.NavigationToggle")],g);const p=g;export{p as default};
|