@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 3.62 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{pt2px as e}from"../../../../core/screenUtils.js";import"../../../../libs/maquette/projection.js";import{createProjector as t}from"../../../../libs/maquette/projector.js";import{renderColorRampPreviewHTML as i}from"../../../../symbols/support/symbolUtils.js";import"../../../support/widgetUtils.js";import{tsx as o}from"../../../support/jsxFactory.js";const l=t(),n=10,r=20,s=10,a=20,c={univariateAboveAndBelowSymbol:"esri-univariate-above-and-below-ramp__symbol",colorRamp:"esri-legend__color-ramp"};function f(e="vertical"){const t="stroke:rgb(200, 200, 200);stroke-width:1";return"vertical"===e?o("svg",{height:"4",width:"10"},o("line",{style:t,x1:"0",x2:"10",y1:"2",y2:"2"})):o("svg",{height:"10",width:"10"},o("line",{style:t,x1:"5",x2:"5",y1:"0",y2:"10"}))}function p(e,t="vertical"){const i=document.createElement("div");return i.style.height=`${r}px`,i.className=c.univariateAboveAndBelowSymbol,null!=e&&(i.style.opacity=e.toString()),l.append(i,f.bind(null,t)),i}function m(t,i,o="vertical",l){t.infos.forEach(((t,n)=>{if(l&&2===n)t.preview=p(i,o);else{const i=e(t.size)+("horizontal"===o?a:s),l=t.preview,n="div"===l?.tagName.toLowerCase(),r=n?l:document.createElement("div");r.className=c.univariateAboveAndBelowSymbol,"horizontal"===o?r.style.width=`${i}px`:r.style.height=`${i}px`,!n&&l&&r.appendChild(l),t.preview=r}}))}function u(t,i="classic"){const o=t.infos;return"classic"===i?(e(o[0].size)+s)/2:(e(o[0].size)-e(o[o.length-1].size))/2}function h(e,t){if(!e)return null;const o=e.infos.map((e=>e.color)),l=i("full"===t.type?o:"above"===t.type?o.slice(0,3):o.slice(2,5),{width:t.width,height:t.height,align:t.rampAlignment,effectList:t.effectList,ariaLabel:t.ariaLabel});return l.className=c.colorRamp,null!=t.opacity&&(l.style.opacity=t.opacity.toString()),l}function v(t,i,o,l="vertical"){let c=0;const f=t.infos,p=Math.floor(f.length/2),m="full"===i||"above"===i?0:p,u="full"===i||"below"===i?f.length-1:p;for(let h=m;h<=u;h++)if(o&&h===p)c+="horizontal"===l?n:r;else{c+=e(f[h].size)+("horizontal"===l?a:s)}return Math.round(c)}function d(t,i,o,l="vertical"){const c=v(t,i,o,l),f=t.infos,p=Math.floor(f.length/2),m="full"===i||"above"===i?0:p,u="full"===i||"below"===i?f.length-1:p,h="full"===i?f[m].size+f[u].size:"above"===i?f[m].size:f[u].size,d=o?"vertical"===l?r:n:0,y="vertical"===l?s*("full"===i?2:1):a*("full"===i?2:1);return Math.round(c-(e(h)/2+d/2+y/2))}function y(e,t,i="vertical"){const o=e.infos;let l=o.find((({type:e})=>"size-ramp"===e)),n=o.find((({type:e})=>"color-ramp"===e));return l&&(l={...l},l.infos=[...l.infos],m(l,t,i,!0)),n&&(n={...n},n.infos=[...n.infos]),"horizontal"===i&&(l?.infos.reverse(),n?.infos.reverse()),{sizeRampElement:l,colorRampElement:n}}function b(e,t="vertical"){const i=e.infos;let o=i.find((({type:e})=>"size-ramp"===e)),l=i.find((({type:e})=>"color-ramp"===e));return o&&(o={...o},o.infos=[...o.infos],m(o,null,t,!1)),l&&(l={...l},l.infos=[...l.infos]),"horizontal"===t&&(o?.infos.reverse(),l?.infos.reverse()),{sizeRampElement:o,colorRampElement:l}}const g={marginLeft:"3px"},z={display:"table-cell",verticalAlign:"middle"},w={display:"flex",alignItems:"flex-start"};export{y as getUnivariateAboveAndBelowRampElements,u as getUnivariateColorRampMargin,h as getUnivariateColorRampPreview,d as getUnivariateColorRampSize,b as getUnivariateColorSizeRampElements,v as getUnivariateSizeRampSize,g as univariateColorRampContainerStyles,z as univariateColorRampStyles,w as univariateRampContainerStyles};