UNPKG

@arcgis/core

Version:

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

6 lines (5 loc) 2.14 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import t from"../../../Color.js";import{formatDate as n}from"../../../intl/date.js";import{formatNumber as i}from"../../../intl/number.js";import{timelineDateFormatOptions as o}from"../../../renderers/support/utils.js";import e from"../../../renderers/visualVariables/SizeVariable.js";function r(t){return n(new Date(t),o)}function s(t){const n=2,o=Math.floor(Math.log10(Math.abs(t)))+1,e=o<4||o>6?4:o,r=1e6,s=Math.abs(t)>=r?"compact":"standard";return i(t,{notation:s,minimumSignificantDigits:n,maximumSignificantDigits:e})}function a(t,n,i){if(null==n||null==t)return[];const o=[];for(let e=-1*i;e<=i;e++)0!==e&&o.push(n+e*t);return o}function u(t){const{max:n,min:i,padding:o,pathHeight:e,pathWidth:r,stops:s}=t,a=n-i;let u,h=`M0 0 L${r} 0 `;const m=3===s.length?[s[0],s[1],s[2]]:[s[0],s[2],s[4]],f=Math.min.apply(Math,m.map((t=>t.size))),l=Math.max(Math.abs(m[0].size-m[1].size),Math.abs(m[2].size-m[1].size));return m.reverse(),m.forEach((({size:t,value:n},s)=>{const m=Math.round((t-f)/l*100)/100,c=Math.round(e-(n-i)/a*e);u=m*r,0===u&&(u=o*r),0===s&&(h+=`L${u} 0 `),h+=`L${u} ${c} `})),h+=`L${u} ${e} L0 ${e} L0 0 Z`,h}function h(t){const{bottomValue:n,bottomWidth:i,max:o,min:e,pathHeight:r,pathWidth:s,topValue:a,topWidth:u}=t,h=u*s,m=i*s,f=o-e,l=Math.round(r-(n-e)/f*r);return`M${h} 0 L${h} ${Math.round(r-(a-e)/f*r)} L${m} ${l} L${m} ${r} L0 ${r} L0 0 Z`}function m(t){let n=t.maxSize,i=t.minSize;return n instanceof e&&(n=n.stops[0].size),i instanceof e&&(i=i.stops[0].size),[n,i]}function f(t,n,i){const o=i.length-1;if(o<0)return[];const e=i[0],r=i[o]-e,s=n-t,a=[];for(let u=1;u<o;u++){const n=(i[u]-e)/r*s+t;a.push({index:u,value:n})}return a.unshift({index:0,value:t}),a.push({index:o,value:n}),a}function l(n){return n instanceof t?n.toCss(!0):t.fromString(n??"").toCss(!0)}export{r as formatDateLabel,s as formatNumberLabel,a as getDeviationValues,u as getDynamicPathForSizeStops,l as getFillFromColor,h as getPathForSizeStops,m as getSizesFromVariable,f as getStopChanges};