UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

6 lines (5 loc) 1.95 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import{_ as e}from"../../chunks/tslib.es6.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import"../support/widgetUtils.js";import{tsx as r}from"../support/jsxFactory.js";import o from"./ValuePickerBaseComponent.js";const i="esri-value-picker__label",l={border:`${i}-border`,text:`${i}-text`};let a=class extends o{constructor(e,t){super(e,t),this.items=null,this.type="label"}get canNext(){return!(!this.items||!this.viewModel)&&this.items.findIndex((({value:e})=>e===this.viewModel.values?.[0]))!==this.items.length-1}get canPlay(){return null!=this.viewModel&&!!this.items?.length}get canPrevious(){const{items:e,viewModel:t}=this;return!(!e||!t)&&0!==e.findIndex((({value:e})=>e===t.values?.[0]))}render(){const{viewModel:e}=this;if(null==e)return r("div",null);const t=this.items?.find((({value:t})=>t===e.values?.[0]));return r("div",{class:i},r("div",{class:l.border},r("div",{class:l.text},t?.label)))}animate(e){this._step(1,e)}next(){this._step(1)}previous(){this._step(-1)}_step(e,t=!1){const{viewModel:s,items:r}=this;if(!r?.length||!s)return;if(!s.values)return void(s.values=[r[0].value]);const o=r.findIndex((({value:e})=>e===s.values[0]));if(-1===o)return void(s.values=[r[0].value]);const i=o+e;i<0||i>=r.length?s.loop||t?s.values=[r[1===e?0:r.length-1].value]:"playing"===s.state&&s.pause():s.values=[r[i].value]}};e([t()],a.prototype,"canNext",null),e([t()],a.prototype,"canPlay",null),e([t()],a.prototype,"canPrevious",null),e([t()],a.prototype,"items",void 0),e([t()],a.prototype,"type",void 0),a=e([s("esri.widgets.ValuePicker.ValuePickerLabel")],a);const n=a;export{n as default};