chunk-GJXW4HL5.js 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. import {
  2. d,
  3. h
  4. } from "./chunk-WJW5DUN6.js";
  5. import {
  6. s3 as s
  7. } from "./chunk-EMJ4ZSM2.js";
  8. import {
  9. o
  10. } from "./chunk-IKP3YN53.js";
  11. // node_modules/@arcgis/core/layers/effects/jsonUtils.js
  12. function n(e, t, r) {
  13. try {
  14. return c(e);
  15. } catch (s2) {
  16. r?.messages?.push(s2);
  17. }
  18. return null;
  19. }
  20. function a(e, r, s2, n2) {
  21. try {
  22. const n3 = o2(e);
  23. o(s2, n3, r);
  24. } catch (a2) {
  25. n2.messages && n2.messages.push(a2);
  26. }
  27. }
  28. function o2(e) {
  29. const t = d(e);
  30. return t ? h(t) ? t.map((e2) => e2.toJSON()) : t.map(({ scale: e2, effects: t2 }) => ({ scale: e2, value: t2.map((e3) => e3.toJSON()) })) : null;
  31. }
  32. function c(e) {
  33. if (!e || e.length === 0)
  34. return null;
  35. if (f(e)) {
  36. const t = [];
  37. for (const r of e)
  38. t.push({ scale: r.scale, value: i(r.value) });
  39. return t;
  40. }
  41. return i(e);
  42. }
  43. function f(e) {
  44. const t = e[0];
  45. return !!t && "scale" in t;
  46. }
  47. function i(e) {
  48. if (!e || !e.length)
  49. return "";
  50. const t = [];
  51. for (const s2 of e) {
  52. let e2 = [];
  53. switch (s2.type) {
  54. case "grayscale":
  55. case "sepia":
  56. case "saturate":
  57. case "invert":
  58. case "brightness":
  59. case "contrast":
  60. case "opacity":
  61. e2 = [u(s2, "amount")];
  62. break;
  63. case "blur":
  64. e2 = [u(s2, "radius", "pt")];
  65. break;
  66. case "hue-rotate":
  67. e2 = [u(s2, "angle", "deg")];
  68. break;
  69. case "drop-shadow":
  70. e2 = [u(s2, "xoffset", "pt"), u(s2, "yoffset", "pt"), u(s2, "blurRadius", "pt"), l(s2, "color")];
  71. break;
  72. case "bloom":
  73. e2 = [u(s2, "strength"), u(s2, "radius", "pt"), u(s2, "threshold")];
  74. }
  75. const n2 = `${s2.type}(${e2.filter(Boolean).join(" ")})`;
  76. d(n2), t.push(n2);
  77. }
  78. return t.join(" ");
  79. }
  80. function u(t, r, s2) {
  81. if (t[r] == null)
  82. throw new s("effect:missing-parameter", `Missing parameter '${r}' in ${t.type} effect`, { effect: t });
  83. return s2 ? t[r] + s2 : "" + t[r];
  84. }
  85. function l(t, r) {
  86. if (t[r] == null)
  87. throw new s("effect:missing-parameter", `Missing parameter '${r}' in ${t.type} effect`, { effect: t });
  88. const s2 = t[r];
  89. return `rgba(${s2[0] || 0}, ${s2[1] || 0}, ${s2[2] || 0}, ${s2[3] / 255 || 0})`;
  90. }
  91. export {
  92. n,
  93. a,
  94. i
  95. };
  96. //# sourceMappingURL=chunk-GJXW4HL5.js.map