import { d, h } from "./chunk-WJW5DUN6.js"; import { s3 as s } from "./chunk-EMJ4ZSM2.js"; import { o } from "./chunk-IKP3YN53.js"; // node_modules/@arcgis/core/layers/effects/jsonUtils.js function n(e, t, r) { try { return c(e); } catch (s2) { r?.messages?.push(s2); } return null; } function a(e, r, s2, n2) { try { const n3 = o2(e); o(s2, n3, r); } catch (a2) { n2.messages && n2.messages.push(a2); } } function o2(e) { const t = d(e); return t ? h(t) ? t.map((e2) => e2.toJSON()) : t.map(({ scale: e2, effects: t2 }) => ({ scale: e2, value: t2.map((e3) => e3.toJSON()) })) : null; } function c(e) { if (!e || e.length === 0) return null; if (f(e)) { const t = []; for (const r of e) t.push({ scale: r.scale, value: i(r.value) }); return t; } return i(e); } function f(e) { const t = e[0]; return !!t && "scale" in t; } function i(e) { if (!e || !e.length) return ""; const t = []; for (const s2 of e) { let e2 = []; switch (s2.type) { case "grayscale": case "sepia": case "saturate": case "invert": case "brightness": case "contrast": case "opacity": e2 = [u(s2, "amount")]; break; case "blur": e2 = [u(s2, "radius", "pt")]; break; case "hue-rotate": e2 = [u(s2, "angle", "deg")]; break; case "drop-shadow": e2 = [u(s2, "xoffset", "pt"), u(s2, "yoffset", "pt"), u(s2, "blurRadius", "pt"), l(s2, "color")]; break; case "bloom": e2 = [u(s2, "strength"), u(s2, "radius", "pt"), u(s2, "threshold")]; } const n2 = `${s2.type}(${e2.filter(Boolean).join(" ")})`; d(n2), t.push(n2); } return t.join(" "); } function u(t, r, s2) { if (t[r] == null) throw new s("effect:missing-parameter", `Missing parameter '${r}' in ${t.type} effect`, { effect: t }); return s2 ? t[r] + s2 : "" + t[r]; } function l(t, r) { if (t[r] == null) throw new s("effect:missing-parameter", `Missing parameter '${r}' in ${t.type} effect`, { effect: t }); const s2 = t[r]; return `rgba(${s2[0] || 0}, ${s2[1] || 0}, ${s2[2] || 0}, ${s2[3] / 255 || 0})`; } export { n, a, i }; //# sourceMappingURL=chunk-GJXW4HL5.js.map