{"version":3,"sources":["node_modules/@arcgis/core/widgets/support/globalCss.js","node_modules/@arcgis/core/widgets/support/Heading.js","node_modules/@arcgis/core/widgets/Legend/styles/support/relationshipUtils.js","node_modules/@arcgis/core/renderers/support/numberUtils.js","node_modules/@arcgis/core/widgets/Legend/support/utils.js","node_modules/@arcgis/core/widgets/Legend/support/colorRampUtils.js","node_modules/@arcgis/core/widgets/Legend/support/heatmapRampUtils.js","node_modules/@arcgis/core/widgets/Legend/support/relationshipRampUtils.js","node_modules/@arcgis/core/symbols/support/symbolUtils.js","node_modules/@arcgis/core/renderers/support/utils.js"],"sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nconst e = {\n anchor: \"esri-widget__anchor\",\n anchorDisabled: \"esri-widget__anchor--disabled\",\n button: \"esri-button\",\n buttonDisabled: \"esri-button--disabled\",\n buttonHalf: \"esri-button--half\",\n buttonSecondary: \"esri-button--secondary\",\n buttonSmall: \"esri-button--small\",\n buttonTertiary: \"esri-button--tertiary\",\n buttonThird: \"esri-button--third\",\n disabled: \"esri-disabled\",\n disabledElement: \"esri-disabled-element\",\n empty: \"esri-widget__content--empty\",\n emptyIllustration: \"esri-widget__content-illustration--empty\",\n heading: \"esri-widget__heading\",\n hidden: \"esri-hidden\",\n input: \"esri-input\",\n interactive: \"esri-interactive\",\n loader: \"esri-widget__loader\",\n loaderAnimation: \"esri-widget__loader-animation\",\n loaderText: \"esri-widget__loader-text\",\n menu: \"esri-menu\",\n menuHeader: \"esri-menu__header\",\n menuItem: \"esri-menu__list-item\",\n menuItemActive: \"esri-menu__list-item--active\",\n menuItemFocus: \"esri-menu__list-item--focus\",\n menuList: \"esri-menu__list\",\n noBookmarksIcon: \"esri-widget__no-bookmark-icon\",\n panel: \"esri-widget--panel\",\n panelHeightOnly: \"esri-widget--panel-height-only\",\n primaryTick: \"primary-tick\",\n primaryTickAmPm: \"primary-tick__ampm\",\n primaryTickLabel: \"primary-tick__label\",\n rotating: \"esri-rotating\",\n secondaryTick: \"secondary-tick\",\n select: \"esri-select\",\n table: \"esri-widget__table\",\n widget: \"esri-widget\",\n widgetButton: \"esri-widget--button\",\n widgetButtonActive: \"esri-widget--button-active\",\n widgetDisabled: \"esri-widget--disabled\"\n};\nexport { e as globalCss };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { clamp as r } from \"../../core/mathUtils.js\";\nimport { globalCss as t } from \"./globalCss.js\";\nimport { classes as o } from \"./widgetUtils.js\";\nimport { tsx as i } from \"./jsxFactory.js\";\nfunction e({\n level: r,\n class: e,\n ...n\n}, l) {\n const a = s(r);\n return i(`h${a}`, {\n ...n,\n \"aria-level\": String(a),\n class: o(t.heading, e),\n role: \"heading\"\n }, l);\n}\nfunction s(t) {\n return r(Math.ceil(t), 1, 6);\n}\nfunction n(r, t = 1) {\n return s(r + t);\n}\nexport { e as Heading, n as incrementHeadingLevel };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { generateFillAttributes as e, generateStrokeAttributes as l, renderDef as a, renderShape as r, getBoundingBox as t, computeBBox as s, getTransformMatrix as o } from \"../../../../symbols/support/svgUtils.js\";\nimport { getCSSFilterFromEffectList as i } from \"../../../../symbols/support/utils.js\";\nimport { isRTL as n, classes as d } from \"../../../support/widgetUtils.js\";\nimport { tsx as m } from \"../../../support/jsxFactory.js\";\nconst b = \"esri-relationship-ramp\",\n u = `${b}--diamond`,\n c = `${b}--square`,\n f = \"http://www.w3.org/2000/svg\",\n p = {\n diamondContainer: `${u}__container`,\n diamondLeftCol: `${u}__left-column`,\n diamondRightCol: `${u}__right-column`,\n diamondMidCol: `${u}__middle-column`,\n diamondMidColLabel: `${u}__middle-column--label`,\n diamondMidColRamp: `${u}__middle-column--ramp`,\n squareTable: `${c}__table`,\n squareTableRow: `${c}__table-row`,\n squareTableCell: `${c}__table-cell`,\n squareTableLabel: `${c}__table-label`,\n squareTableLabelLeftBottom: `${c}__table-label--left-bottom`,\n squareTableLabelRightBottom: `${c}__table-label--right-bottom`,\n squareTableLabelLeftTop: `${c}__table-label--left-top`,\n squareTableLabelRightTop: `${c}__table-label--right-top`\n };\nfunction h(e, l, a = {}) {\n const {\n focus: r,\n labels: t\n } = e,\n s = !!r,\n o = T(e, l, a),\n i = {\n justifyContent: \"center\"\n },\n b = n();\n return s ? m(\"div\", {\n class: p.diamondContainer,\n styles: i\n }, m(\"div\", {\n class: p.diamondLeftCol\n }, b ? t.right : t.left), m(\"div\", {\n class: p.diamondMidCol\n }, m(\"div\", {\n class: p.diamondMidColLabel\n }, t.top), o, m(\"div\", {\n class: p.diamondMidColLabel\n }, t.bottom)), m(\"div\", {\n class: p.diamondRightCol\n }, b ? t.left : t.right)) : m(\"div\", {\n class: p.squareTable\n }, m(\"div\", {\n class: p.squareTableRow\n }, m(\"div\", {\n class: d(p.squareTableCell, p.squareTableLabel, p.squareTableLabelRightBottom)\n }, b ? t.top : t.left), m(\"div\", {\n class: p.squareTableCell\n }), m(\"div\", {\n class: d(p.squareTableCell, p.squareTableLabel, p.squareTableLabelLeftBottom)\n }, b ? t.left : t.top)), m(\"div\", {\n class: p.squareTableRow\n }, m(\"div\", {\n class: p.squareTableCell\n }), o, m(\"div\", {\n class: p.squareTableCell\n })), m(\"div\", {\n class: p.squareTableRow\n }, m(\"div\", {\n class: d(p.squareTableCell, p.squareTableLabel, p.squareTableLabelRightTop)\n }, b ? t.right : t.bottom), m(\"div\", {\n class: p.squareTableCell\n }), m(\"div\", {\n class: d(p.squareTableCell, p.squareTableLabel, p.squareTableLabelLeftTop)\n }, b ? t.bottom : t.right)));\n}\nfunction k(e, l, a) {\n const r = `${a}_arrowStart`,\n t = `${a}_arrowEnd`,\n s = \"left\" === e,\n o = {\n markerStart: null,\n markerEnd: null\n };\n switch (l) {\n case \"HL\":\n s ? o.markerStart = `url(#${t})` : o.markerEnd = `url(#${r})`;\n break;\n case \"LL\":\n o.markerStart = `url(#${t})`;\n break;\n case \"LH\":\n s ? o.markerEnd = `url(#${r})` : o.markerStart = `url(#${t})`;\n break;\n default:\n o.markerEnd = `url(#${r})`;\n }\n return o;\n}\nfunction T(n, d, b = {}) {\n const {\n focus: u,\n numClasses: c,\n colors: h,\n rotation: T\n } = n,\n {\n opacity: _,\n effectList: q,\n ariaLabel: L\n } = b,\n g = b.size ?? 60,\n $ = !!u,\n C = Math.sqrt(g ** 2 + g ** 2) + ($ ? 0 : 5),\n v = [],\n w = [],\n y = [],\n x = (g || 75) / c;\n for (let s = 0; s < c; s++) {\n const o = s * x;\n for (let i = 0; i < c; i++) {\n const n = i * x,\n d = e(h[s][i]),\n m = l(null),\n b = {\n type: \"rect\",\n x: n,\n y: o,\n width: x,\n height: x\n },\n u = a(d);\n u && v.push(u);\n const c = r(b, d.fill, m, null);\n c && w.push(c), y.push(t(b));\n }\n }\n const R = 10,\n E = 15,\n M = 15,\n S = 10;\n let j = null;\n $ || (j = \"margin: -15px -15px -18px -15px\");\n const B = k(\"left\", u, d),\n H = k(\"right\", u, d),\n U = s(y),\n W = o(U, C, C, 0, !1, T, !1),\n X = o(U, C, C, 0, !1, $ ? -45 : null, !1),\n Y = {\n filter: i(q) ?? void 0,\n opacity: null == _ ? \"\" : `${_}`\n };\n return m(\"div\", {\n class: $ ? p.diamondMidColRamp : p.squareTableCell,\n styles: Y\n }, m(\"svg\", {\n \"aria-labelledBy\": L,\n focusable: !1,\n height: C,\n role: \"image\",\n style: j,\n width: C,\n xmlns: f\n }, m(\"defs\", null, m(\"marker\", {\n id: `${d}_arrowStart`,\n markerHeight: \"10\",\n markerUnits: \"strokeWidth\",\n markerWidth: \"10\",\n orient: \"auto\",\n refX: \"5\",\n refY: \"5\"\n }, m(\"polyline\", {\n fill: \"none\",\n points: \"0,0 5,5 0,10\",\n stroke: \"#555555\",\n \"stroke-width\": \"1\"\n })), m(\"marker\", {\n id: `${d}_arrowEnd`,\n markerHeight: \"10\",\n markerUnits: \"strokeWidth\",\n markerWidth: \"10\",\n orient: \"auto\",\n refX: \"0\",\n refY: \"5\"\n }, m(\"polyline\", {\n fill: \"none\",\n points: \"5,0 0,5 5,10\",\n stroke: \"#555555\",\n \"stroke-width\": \"1\"\n })), v), m(\"g\", {\n transform: W\n }, w), m(\"g\", {\n transform: X\n }, m(\"line\", {\n fill: \"none\",\n \"marker-end\": B.markerEnd,\n \"marker-start\": B.markerStart,\n stroke: \"#555555\",\n \"stroke-width\": \"1\",\n x1: -R,\n x2: -R,\n y1: g - E,\n y2: E\n }), m(\"line\", {\n fill: \"none\",\n \"marker-end\": H.markerEnd,\n \"marker-start\": H.markerStart,\n stroke: \"#555555\",\n \"stroke-width\": \"1\",\n x1: M,\n x2: g - M,\n y1: g + S,\n y2: g + S\n }))));\n}\nexport { h as renderRelationshipRamp };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport \"../../intl.js\";\nimport { formatNumber as t } from \"../../intl/number.js\";\nconst n = /^-?(\\d+)(\\.(\\d+))?$/i;\nfunction e(t, n) {\n return t - n;\n}\nfunction r(t, n) {\n let e, r;\n return e = Number(t.toFixed(n)), e < t ? r = e + 1 / 10 ** n : (r = e, e -= 1 / 10 ** n), e = Number(e.toFixed(n)), r = Number(r.toFixed(n)), [e, r];\n}\nfunction o(t, n, e, r, o) {\n const i = l(t, n, e, r),\n u = null == i.previous || i.previous <= o,\n s = null == i.next || i.next <= o;\n return u && s || i.previous + i.next <= 2 * o;\n}\nfunction i(t) {\n const e = String(t),\n r = e.match(n);\n if (r && r[1]) return {\n integer: r[1].split(\"\").length,\n fractional: r[3] ? r[3].split(\"\").length : 0\n };\n if (e.toLowerCase().includes(\"e\")) {\n const t = e.split(\"e\"),\n n = t[0],\n r = t[1];\n if (n && r) {\n const t = Number(n);\n let e = Number(r);\n const o = e > 0;\n o || (e = Math.abs(e));\n const l = i(t);\n return o ? (l.integer += e, e > l.fractional ? l.fractional = 0 : l.fractional -= e) : (l.fractional += e, e > l.integer ? l.integer = 1 : l.integer -= e), l;\n }\n }\n return {\n integer: 0,\n fractional: 0\n };\n}\nfunction l(t, n, e, r) {\n const o = {\n previous: null,\n next: null\n };\n if (null != e) {\n const r = t - e,\n i = n - e - r;\n o.previous = Math.floor(Math.abs(100 * i / r));\n }\n if (null != r) {\n const e = r - t,\n i = r - n - e;\n o.next = Math.floor(Math.abs(100 * i / e));\n }\n return o;\n}\nfunction u(t, n = {}) {\n const l = t.slice(0),\n {\n tolerance: u = 2,\n strictBounds: s = !1,\n indexes: c = l.map((t, n) => n)\n } = n;\n c.sort(e);\n for (let e = 0; e < c.length; e++) {\n const t = c[e],\n n = l[t],\n a = 0 === t ? null : l[t - 1],\n f = t === l.length - 1 ? null : l[t + 1],\n m = i(n).fractional;\n if (m) {\n let i,\n c = 0,\n g = !1;\n for (; c <= m && !g;) {\n const t = r(n, c);\n i = s && 0 === e ? t[1] : t[0], g = o(n, i, a, f, u), c++;\n }\n g && (l[t] = i);\n }\n }\n return l;\n}\nconst s = {\n maximumFractionDigits: 20\n};\nfunction c(n) {\n return t(n, s);\n}\nexport { c as format, i as numDigits, l as percentChange, u as round };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport \"../../../symbols.js\";\nimport { format as A } from \"../../../renderers/support/numberUtils.js\";\nimport { formatAnyDate as t } from \"../../../smartMapping/support/utils.js\";\nimport l from \"../../../symbols/SimpleLineSymbol.js\";\nconst i = \"<\",\n a = \">\";\nfunction r(l, r, s, o) {\n let n = \"\";\n 0 === r ? n = `${i} ` : r === s && (n = `${a} `);\n return n + (o ? t(l, o) : A(l));\n}\nconst s = [\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAAAAAAAAAHqZRakAAAANUlEQVQ4jWPMy8v7z0BFwMLAwMAwcdIkqhiWn5fHwEQVk5DAqIGjBo4aOGrgqIEQwEjtKgAATl0Hu6JrzFUAAAAASUVORK5CYII=\", \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAAAAAAAAAHqZRakAAAANUlEQVQ4jWPMy8v7z0BFwMLAwMAwaeIkqhiWl5/HwEQVk5DAqIGjBo4aOGrgqIEQwEjtKgAATl0Hu6sKxboAAAAASUVORK5CYII=\", \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAAAAAAAAAHqZRakAAAANUlEQVQ4jWPMy8v7z0BFwMLAwMAwadJEqhiWl5fPwEQVk5DAqIGjBo4aOGrgqIEQwEjtKgAATl0Hu75+IUcAAAAASUVORK5CYII=\"];\nasync function o(A) {\n if (!(\"visualVariables\" in A) || !A.visualVariables) return null;\n const t = A.visualVariables.find(A => \"color\" === A.type);\n if (!t) return null;\n let l = null,\n i = null;\n if (t.stops) {\n if (1 === t.stops.length) return t.stops[0].color;\n l = t.stops[0].value, i = t.stops[t.stops.length - 1].value;\n }\n const a = null != l && null != i ? l + (i - l) / 2 : 0,\n {\n getColor: r\n } = await import(\"../../../renderers/visualVariables/support/visualVariableUtils.js\");\n return r(t, a) ?? null;\n}\nasync function n(A, t) {\n const i = A.trailCap,\n a = A.trailWidth || 1,\n r = t || (await o(A)) || A.color;\n return new l({\n cap: i,\n color: r,\n width: a\n });\n}\nfunction e(A) {\n return null != A && \"object\" == typeof A && \"min\" in A && \"max\" in A;\n}\nexport { r as createStopLabel, o as getMedianColor, n as getSymbolForFlowRenderer, e as isRasterBandStatistics, s as rgbImgSource, a as specialCharsGreaterThan, i as specialCharsLessThan };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport l from \"../../../Color.js\";\nimport { createStopLabel as e } from \"./utils.js\";\nconst o = new l([64, 64, 64]);\nfunction n(l, o) {\n const n = [],\n r = l.length - 1;\n return 5 === l.length ? n.push(0, 2, 4) : n.push(0, r), l.map((l, t) => n.includes(t) ? e(l, t, r, o) : null);\n}\nasync function r(l, e, o) {\n let r = !1,\n a = [],\n u = [];\n if (l.stops) {\n const e = l.stops;\n a = e.map(l => l.value), r = e.some(l => !!l.label), r && (u = e.map(l => l.label));\n }\n const s = a[0],\n i = a[a.length - 1];\n if (null == s && null == i) return null;\n const c = r ? null : n(a, o);\n return (await Promise.all(a.map(async (o, n) => ({\n value: o,\n color: \"opacity\" === l.type ? await t(o, l, e) : (await import(\"../../../renderers/visualVariables/support/visualVariableUtils.js\")).getColor(l, o),\n label: r ? u[n] : c?.[n] ?? \"\"\n })))).reverse();\n}\nasync function t(e, n, r) {\n const t = new l(r ?? o),\n a = (await import(\"../../../renderers/visualVariables/support/visualVariableUtils.js\")).getOpacity(n, e);\n return null != a && (t.a = a), t;\n}\nfunction a(l) {\n let e = !1,\n o = [],\n r = [];\n o = l.map(l => l.value), e = l.some(l => !!l.label), e && (r = l.map(l => l.label ?? \"\"));\n const t = o[0],\n a = o[o.length - 1];\n if (null == t && null == a) return null;\n const s = e ? null : n(o);\n return o.map((o, n) => ({\n value: o,\n color: u(o, l),\n label: e ? r[n] : s?.[n] ?? \"\"\n })).reverse();\n}\nfunction u(e, o) {\n const {\n startIndex: n,\n endIndex: r,\n weight: t\n } = s(e, o);\n if (n === r) return o[n].color;\n const a = l.blendColors(o[n].color, o[r].color, t);\n return new l(a);\n}\nfunction s(l, e) {\n let o = 0,\n n = e.length - 1;\n return e.some((e, r) => l < e.value ? (n = r, !0) : (o = r, !1)), {\n startIndex: o,\n endIndex: n,\n weight: (l - e[o].value) / (e[n].value - e[o].value)\n };\n}\nfunction i(e, o) {\n let n = [];\n if (e && \"multipart\" === e.type) e.colorRamps.reverse().forEach((r, t) => {\n 0 === t ? n.push({\n value: o.max,\n color: new l(r.toColor),\n label: \"high\"\n }) : n.push({\n value: null,\n color: new l(r.toColor),\n label: \"\"\n }), t === e.colorRamps.length - 1 ? n.push({\n value: o.min,\n color: new l(r.fromColor),\n label: \"low\"\n }) : n.push({\n value: null,\n color: new l(r.fromColor),\n label: \"\"\n });\n });else {\n let r, t;\n e && \"algorithmic\" === e.type ? (r = e.fromColor, t = e.toColor) : (r = [0, 0, 0, 1], t = [255, 255, 255, 1]), n = [{\n value: o.max,\n color: new l(t),\n label: \"high\"\n }, {\n value: o.min,\n color: new l(r),\n label: \"low\"\n }];\n }\n return n;\n}\nexport { u as getColorFromPointCloudStops, r as getRampStops, a as getRampStopsForPointCloud, i as getStrectchRampStops };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport o from \"../../../renderers/support/HeatmapColorStop.js\";\nfunction r(r) {\n if (!r.colorStops) return [];\n const e = [...r.colorStops].filter(o => o.color?.a > 0);\n let t = e.length - 1;\n if (e && e[0]) {\n const r = e[t];\n r && 1 !== r.ratio && (e.push(new o({\n ratio: 1,\n color: r.color\n })), t++);\n }\n return e.map((o, e) => {\n let l = \"\";\n return 0 === e ? l = r.legendOptions?.minLabel || \"low\" : e === t && (l = r.legendOptions?.maxLabel || \"high\"), {\n color: o.color,\n label: l,\n ratio: o.ratio\n };\n }).reverse();\n}\nexport { r as getHeatmapRampStops };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { clone as t } from \"../../../core/lang.js\";\nimport { getStroke as o, getFill as e } from \"../../../symbols/support/gfxUtils.js\";\nimport { getSymbolLayerFill as r } from \"../../../symbols/support/previewSymbol3D.js\";\nconst s = {\n HH: 315,\n HL: 45,\n LL: 135,\n LH: 225\n },\n l = {\n 2: [[\"HL\", \"HH\"], [\"LL\", \"LH\"]],\n 3: [[\"HL\", \"HM\", \"HH\"], [\"ML\", \"MM\", \"MH\"], [\"LL\", \"LM\", \"LH\"]],\n 4: [[\"HL\", \"HM1\", \"HM2\", \"HH\"], [\"M2L\", \"M2M1\", \"M2M2\", \"M2H\"], [\"M1L\", \"M1M1\", \"M1M2\", \"M1H\"], [\"LL\", \"LM1\", \"LM2\", \"LH\"]]\n };\nfunction n(t) {\n if (!t) return;\n const {\n type: s\n } = t;\n if (s.includes(\"3d\")) return r(t.symbolLayers.at(0));\n if (\"simple-line\" === s) {\n const e = o(t);\n return e && e.color;\n }\n if (\"simple-marker\" === t.type && (\"x\" === t.style || \"cross\" === t.style)) {\n const e = o(t);\n return e && e.color;\n }\n return e(t);\n}\nfunction H(t, o) {\n const e = o.HH.label,\n r = o.LL.label,\n s = o.HL.label,\n l = o.LH.label;\n switch (t) {\n case \"HH\":\n default:\n return {\n top: e,\n bottom: r,\n left: s,\n right: l\n };\n case \"HL\":\n return {\n top: s,\n bottom: l,\n left: r,\n right: e\n };\n case \"LL\":\n return {\n top: r,\n bottom: e,\n left: l,\n right: s\n };\n case \"LH\":\n return {\n top: l,\n bottom: s,\n left: e,\n right: r\n };\n }\n}\nfunction L(o, e) {\n const r = [],\n s = o.length ** .5,\n l = t(o),\n n = (e || \"HH\").split(\"\"),\n H = n[0],\n L = \"H\" === n[1];\n for (; l.length;) {\n const t = [];\n for (; t.length < s;) t.push(l.shift());\n L && t.reverse(), r.push(t);\n }\n return \"L\" === H && r.reverse(), r;\n}\nfunction i(t) {\n const {\n focus: o,\n infos: e,\n numClasses: r\n } = t,\n s = l[r],\n L = {};\n e.forEach(t => {\n L[t.value] = {\n label: t.label,\n fill: n(t.symbol)\n };\n });\n const i = [];\n for (let l = 0; l < r; l++) {\n const t = [];\n for (let o = 0; o < r; o++) {\n const e = L[s[l][o]];\n t.push(e.fill);\n }\n i.push(t);\n }\n return {\n type: \"relationship-ramp\",\n numClasses: r,\n focus: o,\n colors: i,\n labels: H(o, L),\n rotation: u(o)\n };\n}\nfunction u(t) {\n let o = s[t];\n return t && null == o && (o = s.HH), o || 0;\n}\nexport { L as getRelationshipRampColors2D, i as getRelationshipRampElement, u as getRotationAngleForFocus };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport \"../../core/has.js\";\nimport { loadArcade as e } from \"../../support/arcadeOnDemand.js\";\nimport { getStroke as t } from \"./gfxUtils.js\";\nimport { SymbolSizeDefaults as l } from \"./previewUtils.js\";\nimport { renderSymbol as i, renderOnce as r } from \"./renderUtils.js\";\nimport { getCSSFilterFromEffectList as a, fetchWebStyleSymbol as s, applyColorToSymbol as n, applySizesToSymbol as o, applyRotationToSymbol as c, getColorFromSymbol as u, applyOpacityToColor as f } from \"./utils.js\";\nimport { renderRelationshipRamp as p } from \"../../widgets/Legend/styles/support/relationshipUtils.js\";\nimport { getRelationshipRampElement as h } from \"../../widgets/Legend/support/relationshipRampUtils.js\";\nlet y = null;\nconst d = [255, 255, 255];\nfunction m(e, t) {\n return Math.floor(Math.random() * (t - e + 1) + e);\n}\nfunction b(e, t, i) {\n const {\n backgroundColor: r,\n outline: a,\n dotSize: s\n } = e,\n n = i?.swatchSize || l.size,\n o = .8,\n c = Math.round(n * n / s ** 2 * o),\n u = window.devicePixelRatio,\n f = document.createElement(\"canvas\"),\n p = n * u;\n f.width = p, f.height = p, f.style.width = f.width / u + \"px\", f.style.height = f.height / u + \"px\";\n const h = f.getContext(\"2d\");\n if (r && (h.fillStyle = r.toCss(!0), h.fillRect(0, 0, p, p), h.fill()), h.fillStyle = t?.toCss(!0) ?? \"\", y && y.length / 2 === c) for (let l = 0; l < 2 * c; l += 2) {\n const e = y[l],\n t = y[l + 1];\n h.fillRect(e, t, s * u, s * u), h.fill();\n } else {\n y = [];\n for (let e = 0; e < 2 * c; e += 2) {\n const e = m(0, p),\n t = m(0, p);\n y.push(e, t), h.fillRect(e, t, s * u, s * u), h.fill();\n }\n }\n a && (a.color && (h.strokeStyle = a.color.toCss(!0)), h.lineWidth = a.width, h.strokeRect(0, 0, p, p));\n const d = new Image(n, n);\n return d.src = f.toDataURL(), d.ariaLabel = i?.ariaLabel ?? null, d.alt = i?.ariaLabel ?? \"\", d;\n}\nfunction g(e, l = {}) {\n const r = l.radius || 40,\n a = 2 * Math.PI * r,\n s = e.length,\n n = a / s,\n o = [],\n c = t(l.outline);\n null != c?.width && (c.width *= 2), (c || l.backgroundColor) && o.push({\n shape: {\n type: \"circle\",\n cx: r,\n cy: r,\n r\n },\n fill: l.backgroundColor,\n stroke: c,\n offset: [0, 0]\n });\n const u = l.values,\n f = u && u.length === s && 100 === u.reduce((e, t) => e + t, 0),\n p = [0];\n for (let t = 0; t < s; t++) {\n let l = null;\n f && (l = u[t] * a / 100, p.push(l + p[t])), o.push({\n shape: {\n type: \"circle\",\n cx: r,\n cy: r,\n r: r / 2\n },\n fill: [0, 0, 0, 0],\n stroke: {\n width: r,\n dashArray: `${(l ?? n) / 2} ${a}`,\n dashoffset: \"-\" + (f ? p[t] / 2 : t * (n / 2)),\n color: e[t]\n },\n offset: [0, 0]\n });\n }\n let h = null;\n const y = 2 * r + (c?.width || 0),\n m = l.holePercentage;\n if (m) {\n c && o.push({\n shape: {\n type: \"circle\",\n cx: r,\n cy: r,\n r: r * m\n },\n fill: null,\n stroke: c,\n offset: [0, 0]\n });\n const e = y / 2;\n h = [[{\n shape: {\n type: \"circle\",\n cx: e,\n cy: e,\n r: e\n },\n fill: d,\n stroke: c ? {\n ...c,\n color: d\n } : null,\n offset: [0, 0]\n }, {\n shape: {\n type: \"circle\",\n cx: e,\n cy: e,\n r: r * m\n },\n fill: [0, 0, 0],\n stroke: null,\n offset: [0, 0]\n }]];\n }\n return i([o], [y, y], {\n effectView: l.effectList,\n ignoreStrokeWidth: !0,\n masking: h,\n rotation: -90,\n ariaLabel: l.ariaLabel\n });\n}\nfunction w(e, t = {}) {\n const l = e?.authoringInfo;\n if (!(\"relationship\" === l?.type) || !l?.numClasses || !e.uniqueValueInfos) return null;\n const {\n focus: i,\n numClasses: a\n } = l,\n s = h({\n focus: i,\n numClasses: a,\n infos: e.uniqueValueInfos\n }),\n n = t?.node || document.createElement(\"div\");\n return r(n, () => p(s, t.id || \"relationship\", {\n opacity: t.opacity || 1,\n effectList: t.effectList,\n ariaLabel: t.ariaLabel\n })), n;\n}\nfunction v(e, t = {}) {\n const l = 24,\n i = 75,\n r = \"horizontal\" === t.align,\n a = r ? i : l,\n s = r ? l : i,\n n = t.width ?? a,\n o = t.height ?? s,\n c = t.gradient ?? !0,\n u = window.devicePixelRatio,\n f = n * u,\n p = o * u,\n h = document.createElement(\"canvas\");\n h.width = f, h.height = p, h.ariaLabel = t.ariaLabel ?? null, h.style.width = `${n}px`, h.style.height = `${o}px`;\n const y = h.getContext(\"2d\"),\n d = r ? f : 0,\n m = r ? 0 : p;\n if (c) {\n const t = y.createLinearGradient(0, 0, d, m),\n l = e.length,\n i = 1 === l ? 0 : 1 / (l - 1);\n e.forEach((e, l) => t.addColorStop(l * i, e.toString())), y.fillStyle = t, y.fillRect(0, 0, f, p);\n } else {\n const t = r ? f / e.length : f,\n l = r ? p : p / e.length;\n let i = 0,\n a = 0;\n for (const s of e) y.fillStyle = s.toString(), y.fillRect(i, a, t, l), i = r ? i + t : 0, a = r ? 0 : a + l;\n }\n const b = document.createElement(\"div\");\n return b.style.width = `${n}px`, b.style.height = `${o}px`, S(b, t?.effectList), b.appendChild(h), b;\n}\nfunction S(e, t) {\n if (!t) return;\n e.style.filter = a(t);\n const l = t.effects;\n if (l) for (const i of l) if (\"drop-shadow\" === i?.type) {\n i.offsetX < 0 ? e.style.marginLeft = `${Math.abs(i.offsetX)}px` : e.style.marginRight = `${i.offsetX}px`;\n break;\n }\n}\nasync function V(e, t) {\n switch (e.type) {\n case \"web-style\":\n {\n const {\n previewWebStyleSymbol: l\n } = await import(\"./previewWebStyleSymbol.js\");\n return l(e, V, t);\n }\n case \"label-3d\":\n case \"line-3d\":\n case \"mesh-3d\":\n case \"point-3d\":\n case \"polygon-3d\":\n {\n const {\n previewSymbol3D: l\n } = await import(\"./previewSymbol3D.js\");\n return l(e, t);\n }\n case \"simple-marker\":\n case \"simple-line\":\n case \"simple-fill\":\n case \"picture-marker\":\n case \"picture-fill\":\n case \"text\":\n {\n const {\n previewSymbol2D: l\n } = await import(\"./previewSymbol2D.js\");\n return l(e, t);\n }\n case \"cim\":\n {\n const {\n previewCIMSymbol: l\n } = await import(\"./previewCIMSymbol.js\");\n return l(e, t);\n }\n default:\n return;\n }\n}\nfunction x(e) {\n return e && \"opacity\" in e ? e.opacity * x(e.parent) : 1;\n}\nasync function L(t, l) {\n if (!t) return;\n const i = t.sourceLayer,\n r = (null != l && l.useSourceLayer ? i : t.layer) ?? i,\n a = x(r);\n if (null != t.symbol && (null == l || !0 !== l.ignoreGraphicSymbol)) {\n const e = \"web-style\" === t.symbol.type ? await s(t.symbol, {\n ...l,\n cache: null != l ? l.webStyleCache : null\n }) : t.symbol.clone();\n return n(e, null, a), e;\n }\n const u = (null != l ? l.renderer : null) ?? (r && \"renderer\" in r ? r.renderer : null);\n let f = u && \"getSymbolAsync\" in u ? await u.getSymbolAsync(t, l) : null;\n if (!f) return;\n if (f = \"web-style\" === f.type ? await f.fetchSymbol({\n ...l,\n cache: null != l ? l.webStyleCache : null\n }) : f.clone(), !u || !(\"visualVariables\" in u) || !u.visualVariables?.length) return n(f, null, a), f;\n if (\"arcadeRequiredForVisualVariables\" in u && u.arcadeRequiredForVisualVariables && null == l?.arcade) {\n const t = {\n ...l\n };\n t.arcade = await e(), l = t;\n }\n const {\n getColor: p,\n getOpacity: h,\n getAllSizes: y,\n getRotationAngle: d\n } = await import(\"../../renderers/visualVariables/support/visualVariableUtils.js\"),\n m = [],\n b = [],\n g = [],\n w = [];\n for (const e of u.visualVariables) switch (e.type) {\n case \"color\":\n m.push(e);\n break;\n case \"opacity\":\n b.push(e);\n break;\n case \"rotation\":\n w.push(e);\n break;\n case \"size\":\n e.target || g.push(e);\n }\n const v = !!m.length && m[m.length - 1],\n S = v ? p(v, t, l) : null,\n V = !!b.length && b[b.length - 1];\n let L = V ? h(V, t, l) : null;\n if (null != a && (L = null != L ? L * a : a), n(f, S, L), g.length) {\n const e = y(g, t, l);\n await o(f, e);\n }\n for (const e of w) c(f, d(e, t, l), e.axis);\n return f;\n}\nasync function k(t, l) {\n if (!t) return;\n const i = t.layer,\n r = t.sourceLayer,\n a = x(i ?? r);\n if (null != t.symbol && (null == l || !0 !== l.ignoreGraphicSymbol)) {\n const e = \"web-style\" === t.symbol.type ? await s(t.symbol, l) : t.symbol.clone();\n return u(e, a);\n }\n const n = l?.renderer || (i && \"renderer\" in i ? i.renderer : void 0) || (r && \"renderer\" in r ? r.renderer : void 0);\n let o = n && \"getSymbolAsync\" in n ? await n.getSymbolAsync(t, l) : void 0;\n if (!o) return;\n o = \"web-style\" === o.type ? await s(o, l) : o.clone();\n const c = u(o, a);\n if (!n || !(\"visualVariables\" in n) || \"visualVariables\" in n && !n.visualVariables || \"visualVariables\" in n && !n.visualVariables?.length) return c;\n if (\"arcadeRequiredForVisualVariables\" in n && n.arcadeRequiredForVisualVariables && null == l?.arcade) {\n const t = {\n ...l\n };\n t.arcade = await e(), l = t;\n }\n const {\n getColor: p,\n getOpacity: h\n } = await import(\"../../renderers/visualVariables/support/visualVariableUtils.js\"),\n y = [],\n d = [];\n for (const e of n.visualVariables) switch (e.type) {\n case \"color\":\n y.push(e);\n break;\n case \"opacity\":\n d.push(e);\n }\n const m = y.length > 0 ? y[y.length - 1] : null,\n b = m ? p(m, t, l) : c,\n g = d.length > 0 ? d[d.length - 1] : null;\n let w = g ? h(g, t, l) : null;\n return null != a && (w = null != w ? w * a : a), b ? f(b, w) : null;\n}\nexport { k as getDisplayedColor, L as getDisplayedSymbol, v as renderColorRampPreviewHTML, b as renderDotDensityPreviewHTML, g as renderPieChartPreviewHTML, V as renderPreviewHTML, w as renderRelationshipRampPreviewHTML };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { unique as e, isSome as l } from \"../../core/arrayUtils.js\";\nimport t from \"../../core/Logger.js\";\nimport { getOrCreateMapValue as i } from \"../../core/MapUtils.js\";\nimport { convertDateFormatToIntlOptions as o, formatDate as a } from \"../../intl/date.js\";\nimport { isTimeOnlyField as n } from \"../../layers/support/fieldUtils.js\";\nimport { format as s, round as r } from \"./numberUtils.js\";\nimport u from \"../visualVariables/support/ColorStop.js\";\nimport { isAnyDateField as f, formatAnyDate as d } from \"../../smartMapping/support/utils.js\";\nimport { getColorFromSymbol as p } from \"../../symbols/support/utils.js\";\nimport { getRampStops as m } from \"../../widgets/Legend/support/colorRampUtils.js\";\nimport { getHeatmapRampStops as c } from \"../../widgets/Legend/support/heatmapRampUtils.js\";\nconst y = t.getLogger(\"esri.renderers.support.utils\"),\n g = {\n lte: \"<=\",\n gte: \">=\",\n lt: \"<\",\n gt: \">\",\n pct: \"%\",\n ld: \"–\"\n },\n h = {\n millisecond: 0,\n second: 1,\n minute: 2,\n hour: 3,\n day: 4,\n month: 5,\n year: 6\n },\n b = {\n millisecond: \"long-month-day-year-long-time\",\n second: \"long-month-day-year-long-time\",\n minute: \"long-month-day-year-short-time\",\n hour: \"long-month-day-year-short-time\",\n day: \"long-month-day-year\",\n month: \"long-month-day-year\",\n year: \"year\"\n },\n v = o(\"short-date\");\nasync function w(e, l, t) {\n i(e, l, () => []).push(...t);\n}\nasync function x(l) {\n const t = new Map();\n if (!l) return t;\n if (\"visualVariables\" in l && l.visualVariables) {\n const e = l.visualVariables.filter(e => \"color\" === e.type);\n for (const l of e) {\n const e = ((await m(l)) ?? []).map(e => e.color);\n await w(t, l.field || l.valueExpression, e);\n }\n }\n if (\"heatmap\" === l.type) {\n const e = c(l).map(e => e.color);\n await w(t, l.field || l.valueExpression, e);\n } else if (\"pie-chart\" === l.type) {\n for (const e of l.attributes) await w(t, e.field || e.valueExpression, [e.color]);\n await w(t, \"default\", [l?.othersCategory?.color, p(l.backgroundFillSymbol, null)]);\n } else if (\"dot-density\" === l.type) {\n for (const e of l.attributes) await w(t, e.field || e.valueExpression, [e.color]);\n await w(t, \"default\", [l.backgroundColor]);\n } else if (\"unique-value\" === l.type) {\n if (\"predominance\" === l.authoringInfo?.type) for (const e of l.uniqueValueInfos ?? []) await w(t, e.value.toString(), [p(e.symbol, null)]);else {\n const e = (l.uniqueValueInfos ?? []).map(e => p(e.symbol, null)),\n {\n field: i,\n field2: o,\n field3: a,\n valueExpression: n\n } = l;\n (i || n) && (await w(t, i || n, e)), o && (await w(t, o, e)), a && (await w(t, a, e));\n }\n } else if (\"class-breaks\" === l.type) {\n const e = l.classBreakInfos.map(e => p(e.symbol, null)),\n {\n field: i,\n valueExpression: o\n } = l;\n await w(t, i ?? o, e);\n } else \"simple\" === l.type && (await w(t, \"default\", [p(l.symbol, null)]));\n return \"defaultSymbol\" in l && l.defaultSymbol && (await w(t, \"default\", [p(l.defaultSymbol, null)])), t.forEach((l, i) => {\n const o = e(l.filter(Boolean), (e, l) => JSON.stringify(e) === JSON.stringify(l));\n t.set(i, o);\n }), t;\n}\nasync function V(e, l, t) {\n const o = i(e, l, () => new Map());\n for (const i of t) o.set(i.value, i.color);\n}\nasync function E(e) {\n const l = new Map();\n if (!e) return l;\n if (\"unique-value\" !== e.type || e.authoringInfo?.type) {\n if (\"class-breaks\" === e.type) {\n const t = e.classBreakInfos.map(e => ({\n value: e.minValue,\n color: p(e.symbol, null)\n })).reverse(),\n {\n field: i,\n valueExpression: o\n } = e;\n await V(l, i ?? o, t);\n } else \"simple\" === e.type && (await V(l, \"default\", [{\n value: \"default\",\n color: p(e.symbol, null)\n }]));\n } else {\n const t = (e.uniqueValueInfos ?? []).map(e => ({\n value: e.value,\n color: p(e.symbol, null)\n })),\n {\n field: i,\n field2: o,\n field3: a,\n valueExpression: n,\n fieldDelimiter: s\n } = e,\n r = [i, o, a].filter(Boolean).join(s || \"\");\n (r || n) && (await V(l, r || n, t));\n }\n if (\"defaultSymbol\" in e && e.defaultSymbol && (await V(l, \"default\", [{\n value: \"default\",\n color: p(e.defaultSymbol, null)\n }])), \"visualVariables\" in e && e.visualVariables) {\n const t = e.visualVariables.filter(e => \"color\" === e.type);\n for (const e of t) {\n const t = (await m(e)) ?? [];\n await V(l, e.field || e.valueExpression, t);\n }\n }\n return l;\n}\nfunction F(e, l, t) {\n let i = \"\";\n return 0 === l ? i = g.lt + \" \" : l === t && (i = g.gt + \" \"), i + e;\n}\nfunction z(e) {\n const {\n values: l,\n colors: t,\n labelIndexes: i,\n isDate: o\n } = e;\n return l.map((e, n) => {\n let r = null;\n if (!i || i.includes(n)) {\n const t = o ? a(e) : s(e);\n t && (r = F(t, n, l.length - 1));\n }\n return new u({\n value: e,\n color: t[n],\n label: r\n });\n });\n}\nfunction S(e) {\n let l = e.minValue,\n t = e.maxValue;\n const i = e.isFirstBreak ? \"\" : g.gt + \" \",\n o = \"percent-of-total\" === e.normalizationType ? g.pct : \"\";\n return l = null == l ? \"\" : s(l), t = null == t ? \"\" : s(t), i + l + o + \" \" + g.ld + \" \" + t + o;\n}\nfunction k(e) {\n const l = e.classBreakInfos,\n t = e.normalizationType;\n let i = [];\n if (l?.length) if (\"standard-deviation\" !== e.classificationMethod) {\n if (e.round) {\n i.push(l[0].minValue);\n for (const e of l) i.push(e.maxValue);\n i = r(i), l.forEach((e, l) => {\n e.label = S({\n minValue: 0 === l ? i[0] : i[l],\n maxValue: i[l + 1],\n isFirstBreak: 0 === l,\n normalizationType: t\n });\n });\n } else l.forEach((e, l) => {\n e.label = S({\n minValue: e.minValue,\n maxValue: e.maxValue,\n isFirstBreak: 0 === l,\n normalizationType: t\n });\n });\n } else y.warn(\"setLabelsForClassBreaks\", \"cannot set labels for class breaks generated using 'standard-deviation' method.\");\n}\nfunction j(e) {\n const l = e.map(e => new Date(e)),\n t = l.length;\n let i = 1 / 0,\n o = null;\n for (let a = 0; a < t - 1; a++) {\n const e = l[a];\n let n = 1 / 0,\n s = null;\n for (let i = a + 1; i < t; i++) {\n const t = l[i],\n o = (e.getFullYear() !== t.getFullYear() ? \"year\" : e.getMonth() !== t.getMonth() && \"month\") || e.getDate() !== t.getDate() && \"day\" || e.getHours() !== t.getHours() && \"hour\" || e.getMinutes() !== t.getMinutes() && \"minute\" || e.getSeconds() !== t.getSeconds() && \"second\" || \"millisecond\",\n a = h[o];\n a < n && (n = a, s = o);\n }\n n < i && (i = n, o = s);\n }\n return o;\n}\nfunction I(e) {\n const {\n value: l,\n domain: t,\n fieldInfo: i,\n dateFormatOptions: o\n } = e;\n let a = String(l);\n const r = t && \"codedValues\" in t && t.codedValues ? t.getName(l) : null;\n return r ? a = r : null != l && i && (f(i) || n(i)) ? a = d(l, o ?? {\n fieldType: i.type\n }) : \"number\" == typeof l && (a = s(l)), a;\n}\nfunction M(e, l) {\n return \"normalizationField\" in e && e.normalizationField ? q(e.field, e.normalizationField) : \"field\" in e && e.field ? B(e.field) : \"valueExpression\" in e && e.valueExpression ? T(e.valueExpression, e.valueExpressionTitle, l) : null;\n}\nfunction B(e) {\n return {\n type: \"field\",\n field: e\n };\n}\nfunction q(e, l) {\n return {\n type: \"normalized-field\",\n field: e,\n normalizationField: l\n };\n}\nfunction T(e, l, t) {\n return {\n type: \"expression\",\n expression: e,\n title: l,\n returnType: t\n };\n}\nfunction U(t, i) {\n const o = [];\n if (\"class-breaks\" === t.type || \"heatmap\" === t.type) o.push(M(t, \"number\"));else if (\"unique-value\" === t.type) {\n const e = t.authoringInfo;\n if (e && \"relationship\" === e.type) {\n if (e.field1 && e.field2) {\n const l = e.field1.field,\n t = e.field2.field,\n i = e.field1.normalizationField,\n a = e.field2.normalizationField;\n o.push(M({\n field: l,\n normalizationField: i\n })), o.push(M({\n field: t,\n normalizationField: a\n }));\n }\n } else {\n const e = t.uniqueValueInfos?.[0];\n let l = null;\n if (e?.value) {\n const t = typeof e.value;\n \"string\" !== t && \"number\" !== t || (l = t);\n }\n o.push(M(t, l)), [t.field2, t.field3].forEach(e => e && o.push(B(e)));\n }\n } else \"attributes\" in t && t.attributes?.forEach(e => o.push(M(e, \"number\")));\n const a = i ? i(t) : \"visualVariables\" in t ? t.visualVariables : null;\n return a && a.forEach(e => o.push(M(e, \"number\"))), e(o.filter(l), (e, l) => \"field\" === e.type && \"field\" === l.type ? e.field === l.field : \"normalized-field\" === e.type && \"normalized-field\" === l.type ? e.field === l.field && e.normalizationField === l.normalizationField : \"expression\" === e.type && \"expression\" === l.type && e.expression === l.expression);\n}\nexport { j as calculateDateFormatInterval, S as createClassBreakLabel, z as createColorStops, I as createUniqueValueLabel, b as dateFormatIntervalOptions, M as getAttribute, U as getAttributes, E as getColorsForRendererValues, x as getColorsFromRenderer, k as setLabelsForClassBreaks, v as timelineDateFormatOptions };"],"mappings":"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","names":["e","l","r","n","a","s","t","u","f","h","e","l","a","r","t","s","o","T","i","b","k","n","d","c","q","L","g","$","v","w","y","x","m","R","E","M","S","j","H","n","e","t","r","o","i","l","u","s","c","a","f","m","g","i","a","r","l","s","o","n","c","A","t","e","o","u","n","l","r","t","e","a","s","i","c","r","e","o","t","l","s","l","n","t","e","o","r","i","t","o","e","r","s","l","L","n","u","y","m","e","t","b","i","r","a","s","n","o","c","u","f","p","h","l","d","g","v","e","t","l","i","r","a","s","n","o","c","u","f","p","h","y","d","m","b","V","N","g","w","S","L","y","s","v","w","e","l","t","x","r","i","o","a","n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}