UNPKG

@doegis/core

Version:

DOE GIS API

3 lines (1 loc) 3.04 kB
import{_ as e}from"../chunks/tslib.es6.js";import{property as t}from"../core/accessorSupport/decorators/property.js";import{cast as s}from"../core/accessorSupport/decorators/cast.js";import"../core/arrayUtils.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import a from"./Widget.js";import o from"./BasemapToggle/BasemapToggleViewModel.js";import{CSS as l}from"./BasemapToggle/css.js";import{accessibleHandler as r}from"./support/decorators/accessibleHandler.js";import{messageBundle as n}from"./support/decorators/messageBundle.js";import{tsx as c}from"./support/jsxFactory.js";import"./support/widgetUtils.js";function p(e){const t=o.getThumbnailUrl(e);return t?{backgroundImage:"url("+t+")"}:{backgroundImage:""}}const m={title:!1};let d=class extends a{constructor(e,t){super(e,t),this.messages=null,this.viewModel=new o,this.visibleElements={...m}}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-scrim.js")])}get activeBasemap(){return this.viewModel.activeBasemap}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get nextBasemap(){return this.viewModel.nextBasemap}set nextBasemap(e){this.viewModel.nextBasemap=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}castVisibleElements(e){return{...m,...e}}toggle(){return this.viewModel.toggle()}render(){const e=this.viewModel,t="disabled"===e.state?null:e.activeBasemap,s="disabled"===e.state?null:e.nextBasemap,i="loading"===e.state,a="incompatible-next-basemap"===e.state,o=s?s.title:"",r=s&&"loaded"!==s.loadStatus;let n;const m=this.visibleElements.title&&o,d=a;return(m||d)&&(n=c("div",{class:l.overlay,key:"overlay"},m?c("span",{class:l.title,title:o},o):null,d?c("calcite-scrim",{class:l.overlayScrim,title:this.messages.incompatibleSpatialReference},c("calcite-icon",{icon:"exclamation-mark-triangle"})):null)),c("div",{class:this.classes(l.base,a?l.disabled:null),role:"button","data-basemap-id":s?s.id:"",bind:this,onclick:this._toggle,onkeydown:this._toggle,tabIndex:a?-1:0,title:this.label},c("div",{class:this.classes(l.container,l.secondaryBasemapImage)},c("div",{class:l.image,styles:p(t)})),c("div",{class:l.container},c("div",{class:this.classes(l.image,r?l.imageLoading:null),styles:p(s)},r||i?c("calcite-scrim",null,c("span",{"aria-hidden":"true",role:"presentation",class:l.loaderAnimation})):null),n))}_toggle(){this.toggle()}};e([t({readOnly:!0})],d.prototype,"activeBasemap",null),e([t()],d.prototype,"label",null),e([t(),n("esri/widgets/BasemapToggle/t9n/BasemapToggle")],d.prototype,"messages",void 0),e([t()],d.prototype,"nextBasemap",null),e([t()],d.prototype,"view",null),e([t({type:o})],d.prototype,"viewModel",void 0),e([t()],d.prototype,"visibleElements",void 0),e([s("visibleElements")],d.prototype,"castVisibleElements",null),e([r()],d.prototype,"_toggle",null),d=e([i("esri.widgets.BasemapToggle")],d);const g=d;export{g as default};