/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
import{B as x,C,E as d,H as v,g as f,i as z,j as m}from"./NRTJ53CF.js";export default $arcgis.t(([w])=>{var M=f`:host{display:block;block-size:30px;inline-size:100%}:host([layout="vertical"]){writing-mode:vertical-lr}.hidden{display:none!important}svg{stroke-width:var(--calcite-border-width-sm);stroke:var(--calcite-color-border-input);margin:0;display:block;block-size:100%;inline-size:100%;padding:0}svg .background{fill:#e0e0e0}`,u=class{constructor(i,s,e,a){this.color=i,this.ratio=s,this.opacity=e,this.sizeRatio=a}},D=new w([0,0,0,.5]),I=class extends x{constructor(){super(...arguments),this._minSizeRatio=.2,this._rampStops=[],this._containerDimensions=[0,0],this.layout="horizontal",this.min=0,this.max=1,this.stops=[]}static{this.properties={_containerDimensions:16,layout:3,min:9,max:9,stops:0}}static{this.styles=M}willUpdate(i){if(super.willUpdate(i),i.has("min")||i.has("max")||i.has("stops")){let{stops:s,min:e,max:a}=this,r=a-e,o=s.map(n=>n.size??0),c=Math.min(...o),l=Math.max(...o)-c,t=s.map(n=>{let{color:h,value:g,size:$}=n,y=h instanceof w?h:w.fromString(h)??D,b=(g-e)/r;return new u(y.toCss(),b,y.a,$?($-c)/l:void 0)});if(t[0].ratio!==0){let{color:n,opacity:h,sizeRatio:g}=t[0];t.unshift(new u(n,0,h,g))}if(t[t.length-1].ratio!==0){let{color:n,opacity:h,sizeRatio:g}=t[t.length-1];t.push(new u(n,1,h,g))}this._rampStops=t}}loaded(){let i=new ResizeObserver(a=>{for(let r of a){let{width:o,height:c}=r.contentRect;this._containerDimensions=[o,c]}}),{width:s,height:e}=this.el.getBoundingClientRect();this._containerDimensions=[s,e],i.observe(this.el)}render(){let i=this._rampStops,[s,e]=this._containerDimensions,a=this.layout==="horizontal",r="rampFillId",o="rampBackgroundFillId",c=R(i),l=[];if(s>0&&e>0)if(c){let t=S(this.layout,s,e,i,this._minSizeRatio);l.push(m`<path fill=${`url(#${o})`} d=${t??d} />`,m`<path fill=${`url(#${r})`} d=${t??d} />`)}else l.push(m`<rect fill=${`url(#${o})`} height=100% width=100% x=0 y=0 />`,m`<rect fill=${`url(#${r})`} height=100% width=100% x=0 y=0 />`);return z`<svg xmlns=http://www.w3.org/2000/svg>${m`<defs><linearGradient id=${r} x1=0 x2=${a?1:0} y1=${a?0:1} y2=0>${i.map(({ratio:t,color:n,opacity:h})=>m`<stop offset=${`${(t*100).toFixed(2)}%`} stop-color=${n??d} stop-opacity=${h??d} />`)}</linearGradient><pattern height=15 id=${o} patternUnits=userSpaceOnUse width=15 x=0 y=0><image height=15 href=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2Ij48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNjY2MiIC8+PHBhdGggZD0iTTAgMCBMOCAwIEw4IDggTDAgOCBaIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLDgpIiAvPjxwYXRoIGQ9Ik0wIDAgTDggMCBMOCA4IEwwIDggWiIgZmlsbD0iI2NjYyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCw4KSIgLz48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDgsMCkiIC8+PC9zdmc+ width=15 x=0 y=0 /></pattern></defs><rect class=${C({background:!0})} height=100% width=100% x=0 y=0 />${l}`}</svg>`}};function R(p){return p.every(i=>i.sizeRatio!==void 0)}function S(p,i,s,e,a){let r=o=>(1-a)*o+a;if(p==="horizontal"){let o=e.map(({ratio:c,sizeRatio:l})=>{let t=c*i,n=s-r(l)*s;return`L ${t} ${n}`});return`M 0 ${s} ${o.join(" ")} L ${i} ${s} Z`}else{let o=e.map(({ratio:c,sizeRatio:l})=>{let t=s-c*s;return`L ${r(l)*i} ${t}`});return`M 0 ${s} ${o.join(" ")} L 0 0 Z`}}v("arcgis-ramp-color",I);return I},"Color")