import{a1 as C,A as v,bV as I,B as g,C as S,a6 as B,z as F}from"./index-b5c8f851.js";const q=new C({esriClassifyEqualInterval:"equal-interval",esriClassifyManual:"manual",esriClassifyNaturalBreaks:"natural-breaks",esriClassifyQuantile:"quantile",esriClassifyStandardDeviation:"standard-deviation",esriClassifyDefinedInterval:"defined-interval"}),w=new C({esriNormalizeByLog:"log",esriNormalizeByPercentOfTotal:"percent-of-total",esriNormalizeByField:"field"});let V=class extends B{constructor(s){super(s),this.type="class-breaks-definition",this.breakCount=null,this.classificationField=null,this.classificationMethod=null,this.normalizationField=null,this.normalizationType=null}set standardDeviationInterval(s){this.classificationMethod==="standard-deviation"&&this._set("standardDeviationInterval",s)}set definedInterval(s){this.classificationMethod==="defined-interval"&&this._set("definedInterval",s)}};v([I({classBreaksDef:"class-breaks-definition"})],V.prototype,"type",void 0),v([g({json:{write:!0}})],V.prototype,"breakCount",void 0),v([g({json:{write:!0}})],V.prototype,"classificationField",void 0),v([g({type:String,json:{read:q.read,write:q.write}})],V.prototype,"classificationMethod",void 0),v([g({json:{write:!0}})],V.prototype,"normalizationField",void 0),v([g({json:{read:w.read,write:w.write}})],V.prototype,"normalizationType",void 0),v([g({value:null,json:{write:!0}})],V.prototype,"standardDeviationInterval",null),v([g({value:null,json:{write:!0}})],V.prototype,"definedInterval",null),V=v([S("esri.rest.support.ClassBreaksDefinition")],V);const O=V,N=F.getLogger("esri.rest.support.generateRendererUtils");function M(n,s){return Number(n.toFixed(s))}function P(n){const{normalizationTotal:s}=n;return{classBreaks:j(n),normalizationTotal:s}}function j(n){const s=n.definition,{classificationMethod:a,normalizationType:i,definedInterval:h}=s,f=s.breakCount??1,u=[];let l=n.values;if(l.length===0)return[];l=l.sort((o,c)=>o-c);const d=l[0],m=l[l.length-1];if(a==="equal-interval")if(l.length>=f){const o=(m-d)/f;let c=d;for(let t=1;t{u.push({minValue:o,maxValue:o,label:b(o,o,i)})});else if(a==="natural-breaks"){const o=D(l),c=n.valueFrequency||o.valueFrequency,t=$(o.uniqueValues,c,f);let e=d;for(let r=1;rr){const p=M(o.uniqueValues[t[r]],6);u.push({minValue:e,maxValue:p,label:b(e,p,i)}),e=p}u.push({minValue:e,maxValue:m,label:b(e,m,i)})}else if(a==="quantile")if(l.length>=f&&d!==m){let o=d,c=Math.ceil(l.length/f),t=0;for(let e=1;el.length&&(r=l.length-1),r<0&&(r=0),u.push({minValue:o,maxValue:l[r],label:b(o,l[r],i)}),o=l[r],t+=c,c=Math.ceil((l.length-t)/(f-e))}u.push({minValue:o,maxValue:m,label:b(o,m,i)})}else{let o=-1;for(let c=0;c=1;y--){const k=M(o-(y-.5)*t,6);u.push({minValue:r,maxValue:k,label:b(r,k,i)}),r=k,e++}let p=M(o+.5*t,6);u.push({minValue:r,maxValue:p,label:b(r,p,i)}),r=p,e++;for(let y=1;y<=f;y++)p=e===2*f?m:M(o+(y+.5)*t,6),u.push({minValue:r,maxValue:p,label:b(r,p,i)}),r=p,e++}}else if(a==="defined-interval"){if(!h)return u;const o=l[0],c=l[l.length-1],t=Math.ceil((c-o)/h);let e=o;for(let r=1;ri&&(a=i);for(let u=0;u0&&r!==n[e+1]&&Math.abs(o-d[e])>Math.abs(o-d[e-1]))n[e]=r;else if(eMath.abs(o-d[e+1])){n[e+1]=r-1;break}c=l,l=0,f=[],u=[];for(let e=0;ec){for(let e=0;e0;t--)for(;a[t]!==a[t-1]+1;){a[t]=a[t]-1;const e=x(t-1,a,i,h);d=e.sbMean,u=e.sbSdcm;const r=x(t,a,i,h);if(m=r.sbMean,l=r.sbSdcm,!(u+l=1?1:f>=.5?.5:.25,f}function L(n){let s=0;for(let a=0;a