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 e}from"../../chunks/tslib.es6.js";import t from"../../Color.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import{cast as i}from"../../core/accessorSupport/decorators/cast.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as o}from"./SmartMappingSliderBase.js";import a from"./OpacitySlider/OpacitySliderViewModel.js";import"../support/widgetUtils.js";import{messageBundle as l}from"../support/decorators/messageBundle.js";import{tsx as n}from"../support/jsxFactory.js";var d;const p={base:"esri-opacity-slider",rampElement:"esri-opacity-slider__ramp",sliderContainer:"esri-opacity-slider__slider-container",histogramContainer:"esri-opacity-slider__histogram-container",track:"esri-opacity-slider--interactive-track",esriWidget:"esri-widget",esriWidgetPanel:"esri-widget--panel",widgetIcon:"esri-icon-edit",disabled:"esri-disabled"},c={trackFillColor:new t([0,121,193])};let m=d=class extends o{constructor(e,t){super(e,t),this._bgFillId=null,this._rampFillId=null,this.messages=null,this.style={...c},this.viewModel=new a,this._rampFillId=`${this.id}-ramp-fill`,this._bgFillId=`${this.id}-bg-fill`}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}castStyle(e){return{...c,...e}}static fromVisualVariableResult(e,t){const{visualVariable:{stops:s},statistics:i}=e,{avg:r,max:o,min:a,stddev:l}=i;return new d({max:o,min:a,stops:s,histogramConfig:{average:r,standardDeviation:l,bins:t?t.bins:[]}})}updateFromVisualVariableResult(e,t){const{visualVariable:{stops:s},statistics:i}=e,{avg:r,max:o,min:a,stddev:l}=i;this.set({max:o,min:a,stops:s,histogramConfig:{average:r,standardDeviation:l,bins:t?t.bins:[]}})}render(){const{state:e,label:t,visibleElements:s}=this,i="disabled"===e,r=this.classes(p.base,p.esriWidget,p.esriWidgetPanel,{[p.disabled]:i,[p.track]:s.interactiveTrack});return n("div",{"aria-label":t,class:r},i?null:this.renderContent(this.renderRamp(),p.sliderContainer,p.histogramContainer))}renderRamp(){const{_bgFillId:e,_rampFillId:t,style:{trackFillColor:s},viewModel:i,zoomOptions:r}=this,o=i.getStopInfo(s);return n("div",{class:p.rampElement},n("svg",{xmlns:"http://www.w3.org/2000/svg"},n("defs",null,this.renderRampFillDefinition(t,o),this.renderBackgroundFillDefinition(e)),n("rect",{x:"0",y:"0",fill:`url(#${e})`,height:"100%",width:"100%"}),n("rect",{x:"0",y:"0",fill:`url(#${t})`,height:"100%",width:"100%"})),r?this.renderZoomCaps():null)}};e([s()],m.prototype,"label",null),e([s(),l("esri/widgets/smartMapping/OpacitySlider/t9n/OpacitySlider")],m.prototype,"messages",void 0),e([s()],m.prototype,"stops",null),e([s()],m.prototype,"style",void 0),e([i("style")],m.prototype,"castStyle",null),e([s()],m.prototype,"viewModel",void 0),m=d=e([r("esri.widgets.smartMapping.OpacitySlider")],m);const g=m;export{g as default};
|