123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504 |
- import {
- c,
- f,
- i,
- l as l3,
- s,
- u as u2
- } from "./chunk-TRK7CKWP.js";
- import {
- e as e2
- } from "./chunk-7IKYLNB5.js";
- import {
- c as c2,
- l as l4,
- x
- } from "./chunk-EN7YGJWG.js";
- import {
- l as l2
- } from "./chunk-7XXXCK2A.js";
- import {
- i as i2
- } from "./chunk-GJXW4HL5.js";
- import {
- u
- } from "./chunk-WEMIK25H.js";
- import {
- l
- } from "./chunk-IR4PV7VK.js";
- import {
- n
- } from "./chunk-WJ3OEUD3.js";
- import {
- a as a2
- } from "./chunk-MXB2XLKV.js";
- import {
- U
- } from "./chunk-VNFRAYHO.js";
- import {
- a,
- e,
- r,
- t
- } from "./chunk-GZT4BVFP.js";
- // node_modules/@arcgis/core/symbols/support/cimSymbolUtils.js
- function i3(e4) {
- const s3 = c(e4);
- if (s3.type === "CIMTextSymbol")
- return s3.height;
- let n2 = 0;
- if (s3.symbolLayers)
- for (const t2 of s3.symbolLayers)
- l3(t2) && t2.size > n2 ? n2 = t2.size : u2(t2) && t2.width > n2 ? n2 = t2.width : s(t2);
- return n2;
- }
- function c3(e4, o, a4) {
- const r2 = c(e4), s3 = i3(e4);
- if (s3 === 0)
- return void f2(r2, o);
- l5(r2, o / s3, false, a4);
- }
- function f2(e4, t2) {
- if (e4.type !== "CIMTextSymbol") {
- if (e4.symbolLayers)
- for (const o of e4.symbolLayers)
- switch (o.type) {
- case "CIMPictureMarker":
- case "CIMVectorMarker":
- o.size = t2;
- break;
- case "CIMPictureStroke":
- case "CIMSolidStroke":
- o.width = t2;
- }
- } else
- e4.height = t2;
- }
- function l5(e4, t2, o, a4) {
- if (e4.type !== "CIMTextSymbol") {
- if (o && e4.effects)
- for (const o2 of e4.effects)
- C(o2, t2);
- if (e4.symbolLayers)
- for (const o2 of e4.symbolLayers)
- switch (o2.type) {
- case "CIMPictureMarker":
- case "CIMVectorMarker":
- m(o2, t2, a4);
- break;
- case "CIMPictureStroke":
- case "CIMSolidStroke":
- !a4?.preserveOutlineWidth && o2.width && (o2.width *= t2);
- break;
- case "CIMPictureFill":
- o2.height && (o2.height *= t2), o2.offsetX && (o2.offsetX *= t2), o2.offsetY && (o2.offsetY *= t2);
- break;
- case "CIMHatchFill":
- l5(o2.lineSymbol, t2, true, { ...a4, preserveOutlineWidth: false }), o2.offsetX && (o2.offsetX *= t2), o2.offsetY && (o2.offsetY *= t2), o2.separation && (o2.separation *= t2);
- }
- } else
- e4.height *= t2;
- }
- function m(e4, t2, o) {
- if (e4.markerPlacement && M(e4.markerPlacement, t2), e4.offsetX && (e4.offsetX *= t2), e4.offsetY && (e4.offsetY *= t2), e4.anchorPoint && e4.anchorPointUnits === "Absolute" && (e4.anchorPoint = { x: e4.anchorPoint.x * t2, y: e4.anchorPoint.y * t2 }), e4.size *= t2, e4.type === "CIMVectorMarker" && e4.markerGraphics)
- for (const a4 of e4.markerGraphics)
- e4.scaleSymbolsProportionally || l5(a4.symbol, t2, true, o);
- }
- function M(e4, t2) {
- switch (f(e4) && e4.offset && (e4.offset *= t2), e4.type) {
- case "CIMMarkerPlacementAlongLineRandomSize":
- case "CIMMarkerPlacementAlongLineSameSize":
- if (e4.customEndingOffset && (e4.customEndingOffset *= t2), e4.offsetAlongLine && (e4.offsetAlongLine *= t2), e4.placementTemplate && e4.placementTemplate.length) {
- const o = e4.placementTemplate.map((e5) => e5 * t2);
- e4.placementTemplate = o;
- }
- break;
- case "CIMMarkerPlacementAlongLineVariableSize":
- if (e4.maxRandomOffset && (e4.maxRandomOffset *= t2), e4.placementTemplate && e4.placementTemplate.length) {
- const o = e4.placementTemplate.map((e5) => e5 * t2);
- e4.placementTemplate = o;
- }
- break;
- case "CIMMarkerPlacementOnLine":
- e4.startPointOffset && (e4.startPointOffset *= t2);
- break;
- case "CIMMarkerPlacementAtExtremities":
- e4.offsetAlongLine && (e4.offsetAlongLine *= t2);
- break;
- case "CIMMarkerPlacementAtMeasuredUnits":
- case "CIMMarkerPlacementOnVertices":
- break;
- case "CIMMarkerPlacementAtRatioPositions":
- e4.beginPosition && (e4.beginPosition *= t2), e4.endPosition && (e4.endPosition *= t2);
- break;
- case "CIMMarkerPlacementPolygonCenter":
- e4.offsetX && (e4.offsetX *= t2), e4.offsetY && (e4.offsetY *= t2);
- break;
- case "CIMMarkerPlacementInsidePolygon":
- e4.offsetX && (e4.offsetX *= t2), e4.offsetY && (e4.offsetY *= t2), e4.stepX && (e4.stepX *= t2), e4.stepY && (e4.stepY *= t2);
- }
- }
- function C(e4, t2) {
- switch (e4.type) {
- case "CIMGeometricEffectArrow":
- case "CIMGeometricEffectDonut":
- e4.width && (e4.width *= t2);
- break;
- case "CIMGeometricEffectBuffer":
- e4.size && (e4.size *= t2);
- break;
- case "CIMGeometricEffectCut":
- e4.beginCut && (e4.beginCut *= t2), e4.endCut && (e4.endCut *= t2), e4.middleCut && (e4.middleCut *= t2);
- break;
- case "CIMGeometricEffectDashes":
- if (e4.customEndingOffset && (e4.customEndingOffset *= t2), e4.offsetAlongLine && (e4.offsetAlongLine *= t2), e4.dashTemplate && e4.dashTemplate.length) {
- const o = e4.dashTemplate.map((e5) => e5 * t2);
- e4.dashTemplate = o;
- }
- break;
- case "CIMGeometricEffectExtension":
- case "CIMGeometricEffectJog":
- case "CIMGeometricEffectRadial":
- e4.length && (e4.length *= t2);
- break;
- case "CIMGeometricEffectMove":
- e4.offsetX && (e4.offsetX *= t2), e4.offsetY && (e4.offsetY *= t2);
- break;
- case "CIMGeometricEffectOffset":
- case "CIMGeometricEffectOffsetTangent":
- e4.offset && (e4.offset *= t2);
- break;
- case "CIMGeometricEffectRegularPolygon":
- e4.radius && (e4.radius *= t2);
- break;
- case "CIMGeometricEffectTaperedPolygon":
- e4.fromWidth && (e4.fromWidth *= t2), e4.length && (e4.length *= t2), e4.toWidth && (e4.toWidth *= t2);
- break;
- case "CIMGeometricEffectWave":
- e4.amplitude && (e4.amplitude *= t2), e4.period && (e4.period *= t2);
- }
- }
- function y(o) {
- const a4 = [];
- return k(c(o), a4), a4.length ? new l2(i(a4[0])) : null;
- }
- function k(e4, t2) {
- let r2;
- r2 = e4.type === "CIMTextSymbol" ? e4.symbol : e4;
- const n2 = e4.type === "CIMPolygonSymbol";
- if (r2.symbolLayers) {
- for (const i4 of r2.symbolLayers)
- if (!(i4.colorLocked || n2 && (u2(i4) || l3(i4) && i4.markerPlacement && f(i4.markerPlacement))))
- switch (i4.type) {
- case "CIMPictureMarker":
- case "CIMPictureStroke":
- case "CIMPictureFill":
- i4.tintColor && b(t2, i4.tintColor);
- break;
- case "CIMVectorMarker":
- i4.markerGraphics.forEach((e5) => {
- k(e5.symbol, t2);
- });
- break;
- case "CIMSolidStroke":
- case "CIMSolidFill":
- b(t2, i4.color);
- break;
- case "CIMHatchFill":
- k(i4.lineSymbol, t2);
- }
- }
- }
- function b(e4, t2) {
- for (const o of e4)
- if (o.join(".") === t2.join("."))
- return;
- e4.push(t2);
- }
- // node_modules/@arcgis/core/symbols/support/gfxUtils.js
- var s2 = "picture-fill";
- var l6 = "simple-fill";
- var a3 = "simple-line";
- var c4 = "simple-marker";
- var m2 = "text";
- var u3 = "cim";
- var d = new e2(1e3);
- function b2(t2) {
- const r2 = t2.style;
- let o = null;
- if (t2)
- switch (t2.type) {
- case c4:
- r2 !== "cross" && r2 !== "x" && (o = t2.color);
- break;
- case l6:
- r2 === "solid" ? o = t2.color : r2 !== "none" && (o = { type: "pattern", x: 0, y: 0, src: a2(`esri/symbols/patterns/${r2}.png`), width: 5, height: 5 });
- break;
- case s2:
- o = { type: "pattern", src: t2.url, width: u(t2.width) * t2.xscale, height: u(t2.height) * t2.yscale, x: u(t2.xoffset), y: u(t2.yoffset) };
- break;
- case m2:
- o = t2.color;
- break;
- case u3:
- o = y(t2);
- }
- return o;
- }
- function w(e4, t2) {
- const o = e4 + "-" + t2;
- return d.get(o) !== void 0 ? Promise.resolve(d.get(o)) : U(e4, { responseType: "image" }).then((e5) => {
- const r2 = e5.data, n2 = r2.naturalWidth, i4 = r2.naturalHeight, s3 = document.createElement("canvas");
- s3.width = n2, s3.height = i4;
- const l7 = s3.getContext("2d");
- l7.fillStyle = t2, l7.fillRect(0, 0, n2, i4), l7.globalCompositeOperation = "destination-in", l7.drawImage(r2, 0, 0);
- const a4 = s3.toDataURL();
- return d.put(o, a4), a4;
- });
- }
- function j(e4) {
- if (!e4)
- return null;
- let t2;
- switch (e4.type) {
- case l6:
- case s2:
- case c4:
- t2 = j(e4.outline);
- break;
- case a3: {
- const r2 = u(e4.width);
- e4.style !== "none" && r2 !== 0 && (t2 = { color: e4.color, style: x2(e4.style), width: r2, cap: e4.cap, join: e4.join === "miter" ? u(e4.miterLimit) : e4.join });
- break;
- }
- default:
- t2 = null;
- }
- return t2;
- }
- var x2 = (() => {
- const e4 = {};
- return (t2) => {
- if (e4[t2])
- return e4[t2];
- const r2 = t2.replace(/-/g, "");
- return e4[t2] = r2, r2;
- };
- })();
- var k2 = new l2([128, 128, 128]);
- // node_modules/@arcgis/core/symbols/support/utils.js
- var p = /\/resource\/(.*?)\.svg$/;
- var h = new l2("white");
- function d2(e4) {
- if (t(e4) || !("symbolLayers" in e4) || t(e4.symbolLayers))
- return false;
- switch (e4.type) {
- case "point-3d":
- return e4.symbolLayers.some((e5) => e5.type === "object");
- case "line-3d":
- return e4.symbolLayers.some((e5) => e5.type === "path");
- case "polygon-3d":
- return e4.symbolLayers.some((e5) => e5.type === "object" || e5.type === "extrude");
- default:
- return false;
- }
- }
- function g(e4, t2) {
- const r2 = t2.resource.href;
- return !a("esri-canvas-svg-support") && e4.styleOrigin && p.test(r2) ? r2.replace(p, "/resource/png/$1.png") : r2;
- }
- function j2(o, n2) {
- if (!o)
- return null;
- let l7 = null;
- return c2(o) ? l7 = k3(o) : x(o) && (l7 = o.color ? new l2(o.color) : null), l7 ? L(l7, n2) : null;
- }
- function k3(t2) {
- const r2 = t2.symbolLayers;
- if (!r2)
- return null;
- let o = null;
- return r2.forEach((e4) => {
- e4.type === "object" && e4.resource.href != null || (o = e4.type === "water" ? e(e4.color) : r(e4.material) ? e(e4.material.color) : null);
- }), o ? new l2(o) : null;
- }
- function L(t2, r2) {
- if (r2 == null)
- return t2;
- const o = t2.toRgba();
- return o[3] = o[3] * r2, new l2(o);
- }
- function z(e4, t2, r2) {
- const o = e4.symbolLayers;
- if (!o)
- return;
- const n2 = (e5) => {
- const o2 = r(e5) ? e5 : null;
- return L(t2 = t2 || o2 || r2 != null && h, r2);
- };
- o.forEach((e5) => {
- if (e5.type !== "object" || e5.resource.href == null || t2)
- if (e5.type === "water")
- e5.color = n2(e5.color);
- else {
- const t3 = r(e5.material) ? e5.material.color : null, o2 = n2(t3);
- t(e5.material) ? e5.material = new l4({ color: o2 }) : e5.material.color = o2, r2 != null && "outline" in e5 && r(e5.outline) && r(e5.outline.color) && (e5.outline.color = L(e5.outline.color, r2));
- }
- });
- }
- function v(e4, t2, r2) {
- (t2 = t2 || e4.color) && (e4.color = L(t2, r2)), r2 != null && "outline" in e4 && e4.outline && e4.outline.color && (e4.outline.color = L(e4.outline.color, r2));
- }
- function x3(o, n2, l7) {
- o && (n2 || l7 != null) && (n2 && (n2 = new l2(n2)), c2(o) ? z(o, n2, l7) : x(o) && v(o, n2, l7));
- }
- async function S(e4, t2) {
- const r2 = e4.symbolLayers;
- r2 && await n(r2, async (e5) => U2(e5, t2));
- }
- async function U2(e4, t2) {
- switch (e4.type) {
- case "extrude":
- R(e4, t2);
- break;
- case "icon":
- case "line":
- case "text":
- O(e4, t2);
- break;
- case "path":
- A(e4, t2);
- break;
- case "object":
- await $(e4, t2);
- }
- }
- function O(e4, t2) {
- const r2 = E(t2);
- r(r2) && (e4.size = r2);
- }
- function E(e4) {
- for (const t2 of e4)
- if (typeof t2 == "number")
- return t2;
- return null;
- }
- function R(e4, t2) {
- e4.size = typeof t2[2] == "number" ? t2[2] : 0;
- }
- async function $(e4, t2) {
- const { resourceSize: r2, symbolSize: o } = await D(e4), n2 = C2(t2, r2, o);
- e4.width = I(t2[0], o[0], r2[0], n2), e4.depth = I(t2[1], o[1], r2[1], n2), e4.height = I(t2[2], o[2], r2[2], n2);
- }
- function A(e4, t2) {
- const r2 = C2(t2, l, [e4.width, void 0, e4.height]);
- e4.width = I(t2[0], e4.width, 1, r2), e4.height = I(t2[2], e4.height, 1, r2);
- }
- function C2(e4, t2, r2) {
- for (let o = 0; o < 3; o++) {
- const n2 = e4[o];
- switch (n2) {
- case "symbol-value":
- return r2[o] != null ? r2[o] / t2[o] : 1;
- case "proportional":
- break;
- default:
- if (n2 && t2[o])
- return n2 / t2[o];
- }
- }
- return 1;
- }
- async function D(e4) {
- const t2 = await import("./symbolLayerUtils-JYVFC7K4.js"), r2 = await t2.computeObjectLayerResourceSize(e4, 10), { width: o, height: n2, depth: l7 } = e4, i4 = [o, l7, n2];
- let s3 = 1;
- for (let c5 = 0; c5 < 3; c5++)
- if (i4[c5] != null) {
- s3 = i4[c5] / r2[c5];
- break;
- }
- for (let c5 = 0; c5 < 3; c5++)
- i4[c5] == null && (i4[c5] = r2[c5] * s3);
- return { resourceSize: r2, symbolSize: i4 };
- }
- function I(e4, t2, r2, o) {
- switch (e4) {
- case "proportional":
- return r2 * o;
- case "symbol-value":
- return t2 != null ? t2 : r2;
- default:
- return e4;
- }
- }
- function J(e4, t2) {
- const r2 = E(t2);
- if (!t(r2))
- switch (e4.type) {
- case "simple-marker":
- e4.size = r2;
- break;
- case "picture-marker": {
- const t3 = e4.width / e4.height;
- t3 > 1 ? (e4.width = r2, e4.height = r2 * t3) : (e4.width = r2 * t3, e4.height = r2);
- break;
- }
- case "simple-line":
- e4.width = r2;
- break;
- case "text":
- e4.font.size = r2;
- }
- }
- async function M2(e4, o) {
- if (e4 && o)
- return c2(e4) ? S(e4, o) : void (x(e4) && J(e4, o));
- }
- function N(e4, o, n2) {
- if (e4 && o != null)
- if (c2(e4)) {
- const t2 = e4.symbolLayers;
- t2 && t2.forEach((e5) => {
- if (e5 && e5.type === "object")
- switch (n2) {
- case "tilt":
- e5.tilt = o;
- break;
- case "roll":
- e5.roll = o;
- break;
- default:
- e5.heading = o;
- }
- });
- } else
- x(e4) && (e4.type !== "simple-marker" && e4.type !== "picture-marker" && e4.type !== "text" || (e4.angle = o));
- }
- function q(e4) {
- if (!e4)
- return null;
- const t2 = e4.effects.filter((e5) => e5.type !== "bloom").map((e5) => e5.toJSON());
- return i2(t2);
- }
- export {
- i3 as i,
- c3 as c,
- m,
- b2 as b,
- w,
- j,
- x2 as x,
- k2 as k,
- d2 as d,
- g,
- j2,
- x3 as x2,
- M2 as M,
- N,
- q
- };
- //# sourceMappingURL=chunk-7SW2GQFP.js.map
|