@needle-tools/engine 3.32.5-alpha → 3.32.6-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/needle-engine.js +646 -617
  3. package/dist/needle-engine.light.js +625 -596
  4. package/dist/needle-engine.light.min.js +106 -106
  5. package/dist/needle-engine.light.umd.cjs +58 -58
  6. package/dist/needle-engine.min.js +71 -71
  7. package/dist/needle-engine.umd.cjs +141 -141
  8. package/lib/engine/engine_addressables.js +14 -16
  9. package/lib/engine/engine_addressables.js.map +1 -1
  10. package/lib/engine/engine_gameobject.d.ts +4 -1
  11. package/lib/engine/engine_gameobject.js +20 -0
  12. package/lib/engine/engine_gameobject.js.map +1 -1
  13. package/lib/engine/engine_networking_instantiate.d.ts +2 -2
  14. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  15. package/lib/engine-components/timeline/PlayableDirector.js +2 -2
  16. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  17. package/lib/engine-components/timeline/TimelineTracks.d.ts +7 -1
  18. package/lib/engine-components/timeline/TimelineTracks.js +47 -12
  19. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  20. package/lib/engine-components/ui/EventSystem.js +16 -3
  21. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  22. package/package.json +1 -1
  23. package/src/engine/engine_addressables.ts +17 -19
  24. package/src/engine/engine_gameobject.ts +24 -2
  25. package/src/engine/engine_networking_instantiate.ts +3 -3
  26. package/src/engine-components/timeline/PlayableDirector.ts +1 -1
  27. package/src/engine-components/timeline/TimelineTracks.ts +51 -14
  28. package/src/engine-components/ui/EventSystem.ts +16 -3
@@ -6,7 +6,7 @@ var r = (i, A, e) => (iP(i, typeof A != "symbol" ? A + "" : A, e), e);
6
6
  * Copyright 2010-2023 Three.js Authors
7
7
  * SPDX-License-Identifier: MIT
8
8
  */
9
- const Ha = "161dev", kr = { LEFT: 0, MIDDLE: 1, RIGHT: 2, ROTATE: 0, DOLLY: 1, PAN: 2 }, Gr = { ROTATE: 0, PAN: 1, DOLLY_PAN: 2, DOLLY_ROTATE: 3 }, eL = 0, Ek = 1, tL = 2, gP = 3, IP = 0, wM = 1, SM = 2, Xs = 3, gI = 0, bi = 1, wt = 2, hi = 0, Sa = 1, rB = 2, ck = 3, hk = 4, mM = 5, ca = 100, iL = 101, gL = 102, lk = 103, Ff = 104, IL = 200, oL = 201, sL = 202, CL = 203, Kf = 204, Jf = 205, nL = 206, aL = 207, rL = 208, BL = 209, QL = 210, EL = 211, cL = 212, hL = 213, lL = 214, kM = 0, $D = 1, Xh = 2, BB = 3, sE = 4, Ay = 5, ey = 6, Ol = 7, Pl = 0, dL = 1, uL = 2, jI = 0, $h = 1, GM = 2, pL = 3, MM = 4, fL = 5, DL = 6, dk = "attached", yL = "detached", ty = 300, wn = 301, Ja = 302, Vo = 303, CE = 304, RE = 306, zo = 1e3, ug = 1001, QB = 1002, Pe = 1003, nE = 1004, oP = 1004, en = 1005, sP = 1005, Re = 1006, Zr = 1007, CP = 1007, PI = 1008, nP = 1008, yt = 1009, wL = 1010, SL = 1011, iy = 1012, RM = 1013, ds = 1014, gi = 1015, ci = 1016, UM = 1017, NM = 1018, hn = 1020, mL = 1021, Mt = 1023, gy = 1024, kL = 1025, ma = 1026, va = 1027, aC = 1028, FM = 1029, ua = 1030, KM = 1031, JM = 1033, ph = 33776, Wp = 33777, jp = 33778, fh = 33779, vf = 35840, uk = 35841, bf = 35842, pk = 35843, Iy = 36196, qf = 37492, Lf = 37496, xf = 37808, fk = 37809, Dk = 37810, yk = 37811, Al = 37812, wk = 37813, Sk = 37814, mk = 37815, kk = 37816, Gk = 37817, Mk = 37818, Rk = 37819, Uk = 37820, Nk = 37821, Dh = 36492, Fk = 36494, Kk = 36495, GL = 36283, Jk = 36284, vk = 36285, bk = 36286, el = 2200, vM = 2201, ML = 2202, ba = 2300, uC = 2301, Vp = 2302, Yr = 2400, Tr = 2401, tl = 2402, oy = 2500, bM = 2501, RL = 0, qM = 1, Yf = 2, Wl = 3e3, EC = 3001, Tg = 3200, sy = 3201, Oa = 0, UL = 1, pg = "", We = "srgb", vt = "srgb-linear", jl = "display-p3", UE = "display-p3-linear", il = "linear", Wt = "srgb", gl = "rec709", Il = "p3", NL = 0, ra = 7680, FL = 7681, KL = 7682, JL = 7683, vL = 34055, bL = 34056, qL = 5386, qk = 512, LL = 513, xL = 514, YL = 515, TL = 516, _L = 517, HL = 518, Tf = 519, OL = 512, PL = 513, WL = 514, LM = 515, jL = 516, VL = 517, zL = 518, ZL = 519, ol = 35044, AI = 35048, aP = 35040, rP = 35045, BP = 35049, QP = 35041, EP = 35046, cP = 35050, hP = 35042, lP = "100", _f = "300 es", Hf = 1035, rC = 2e3, sl = 2001;
9
+ const Ha = "161dev", kr = { LEFT: 0, MIDDLE: 1, RIGHT: 2, ROTATE: 0, DOLLY: 1, PAN: 2 }, Gr = { ROTATE: 0, PAN: 1, DOLLY_PAN: 2, DOLLY_ROTATE: 3 }, eL = 0, Ek = 1, tL = 2, gP = 3, IP = 0, wM = 1, SM = 2, Xs = 3, gI = 0, bi = 1, wt = 2, hi = 0, Sa = 1, rB = 2, ck = 3, hk = 4, mM = 5, ca = 100, iL = 101, gL = 102, lk = 103, Ff = 104, IL = 200, oL = 201, sL = 202, CL = 203, Kf = 204, Jf = 205, nL = 206, aL = 207, rL = 208, BL = 209, QL = 210, EL = 211, cL = 212, hL = 213, lL = 214, kM = 0, $D = 1, Xh = 2, BB = 3, sE = 4, Ay = 5, ey = 6, Ol = 7, Pl = 0, dL = 1, uL = 2, jI = 0, $h = 1, GM = 2, pL = 3, MM = 4, fL = 5, DL = 6, dk = "attached", yL = "detached", ty = 300, Sn = 301, Ja = 302, Vo = 303, CE = 304, RE = 306, zo = 1e3, ug = 1001, QB = 1002, Pe = 1003, nE = 1004, oP = 1004, gn = 1005, sP = 1005, Re = 1006, Zr = 1007, CP = 1007, PI = 1008, nP = 1008, yt = 1009, wL = 1010, SL = 1011, iy = 1012, RM = 1013, ds = 1014, gi = 1015, ci = 1016, UM = 1017, NM = 1018, ln = 1020, mL = 1021, Mt = 1023, gy = 1024, kL = 1025, ma = 1026, va = 1027, aC = 1028, FM = 1029, ua = 1030, KM = 1031, JM = 1033, ph = 33776, Wp = 33777, jp = 33778, fh = 33779, vf = 35840, uk = 35841, bf = 35842, pk = 35843, Iy = 36196, qf = 37492, Lf = 37496, xf = 37808, fk = 37809, Dk = 37810, yk = 37811, Al = 37812, wk = 37813, Sk = 37814, mk = 37815, kk = 37816, Gk = 37817, Mk = 37818, Rk = 37819, Uk = 37820, Nk = 37821, Dh = 36492, Fk = 36494, Kk = 36495, GL = 36283, Jk = 36284, vk = 36285, bk = 36286, el = 2200, vM = 2201, ML = 2202, ba = 2300, pC = 2301, Vp = 2302, Yr = 2400, Tr = 2401, tl = 2402, oy = 2500, bM = 2501, RL = 0, qM = 1, Yf = 2, Wl = 3e3, cC = 3001, Tg = 3200, sy = 3201, Oa = 0, UL = 1, pg = "", We = "srgb", vt = "srgb-linear", jl = "display-p3", UE = "display-p3-linear", il = "linear", Wt = "srgb", gl = "rec709", Il = "p3", NL = 0, ra = 7680, FL = 7681, KL = 7682, JL = 7683, vL = 34055, bL = 34056, qL = 5386, qk = 512, LL = 513, xL = 514, YL = 515, TL = 516, _L = 517, HL = 518, Tf = 519, OL = 512, PL = 513, WL = 514, LM = 515, jL = 516, VL = 517, zL = 518, ZL = 519, ol = 35044, AI = 35048, aP = 35040, rP = 35045, BP = 35049, QP = 35041, EP = 35046, cP = 35050, hP = 35042, lP = "100", _f = "300 es", Hf = 1035, rC = 2e3, sl = 2001;
10
10
  class Sg {
11
11
  addEventListener(A, e) {
12
12
  this._listeners === void 0 && (this._listeners = {});
@@ -727,7 +727,7 @@ class YM {
727
727
  }
728
728
  }
729
729
  let KP = 0;
730
- class nn {
730
+ class rn {
731
731
  constructor(A = null) {
732
732
  this.isSource = !0, Object.defineProperty(this, "id", { value: KP++ }), this.uuid = Eo(), this.data = A, this.version = 0;
733
733
  }
@@ -766,7 +766,7 @@ function bS(i) {
766
766
  let JP = 0;
767
767
  class _e extends Sg {
768
768
  constructor(A = _e.DEFAULT_IMAGE, e = _e.DEFAULT_MAPPING, t = ug, g = ug, I = Re, o = PI, s = Mt, C = yt, n = _e.DEFAULT_ANISOTROPY, a = pg) {
769
- super(), this.isTexture = !0, Object.defineProperty(this, "id", { value: JP++ }), this.uuid = Eo(), this.name = "", this.source = new nn(A), this.mipmaps = [], this.mapping = e, this.channel = 0, this.wrapS = t, this.wrapT = g, this.magFilter = I, this.minFilter = o, this.anisotropy = n, this.format = s, this.internalFormat = null, this.type = C, this.offset = new gA(0, 0), this.repeat = new gA(1, 1), this.center = new gA(0, 0), this.rotation = 0, this.matrixAutoUpdate = !0, this.matrix = new Ye(), this.generateMipmaps = !0, this.premultiplyAlpha = !1, this.flipY = !0, this.unpackAlignment = 4, typeof a == "string" ? this.colorSpace = a : ($r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace = a === EC ? We : pg), this.userData = {}, this.version = 0, this.onUpdate = null, this.isRenderTargetTexture = !1, this.needsPMREMUpdate = !1;
769
+ super(), this.isTexture = !0, Object.defineProperty(this, "id", { value: JP++ }), this.uuid = Eo(), this.name = "", this.source = new rn(A), this.mipmaps = [], this.mapping = e, this.channel = 0, this.wrapS = t, this.wrapT = g, this.magFilter = I, this.minFilter = o, this.anisotropy = n, this.format = s, this.internalFormat = null, this.type = C, this.offset = new gA(0, 0), this.repeat = new gA(1, 1), this.center = new gA(0, 0), this.rotation = 0, this.matrixAutoUpdate = !0, this.matrix = new Ye(), this.generateMipmaps = !0, this.premultiplyAlpha = !1, this.flipY = !0, this.unpackAlignment = 4, typeof a == "string" ? this.colorSpace = a : ($r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace = a === cC ? We : pg), this.userData = {}, this.version = 0, this.onUpdate = null, this.isRenderTargetTexture = !1, this.needsPMREMUpdate = !1;
770
770
  }
771
771
  get image() {
772
772
  return this.source.data;
@@ -853,10 +853,10 @@ class _e extends Sg {
853
853
  A === !0 && (this.version++, this.source.needsUpdate = !0);
854
854
  }
855
855
  get encoding() {
856
- return $r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace === We ? EC : Wl;
856
+ return $r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace === We ? cC : Wl;
857
857
  }
858
858
  set encoding(A) {
859
- $r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace = A === EC ? We : pg;
859
+ $r("THREE.Texture: Property .encoding has been replaced by .colorSpace."), this.colorSpace = A === cC ? We : pg;
860
860
  }
861
861
  }
862
862
  _e.DEFAULT_IMAGE = null;
@@ -1065,7 +1065,7 @@ class Ax extends Sg {
1065
1065
  constructor(A = 1, e = 1, t = {}) {
1066
1066
  super(), this.isRenderTarget = !0, this.width = A, this.height = e, this.depth = 1, this.scissor = new oe(0, 0, A, e), this.scissorTest = !1, this.viewport = new oe(0, 0, A, e);
1067
1067
  const g = { width: A, height: e, depth: 1 };
1068
- t.encoding !== void 0 && ($r("THREE.WebGLRenderTarget: option.encoding has been replaced by option.colorSpace."), t.colorSpace = t.encoding === EC ? We : pg), t = Object.assign({
1068
+ t.encoding !== void 0 && ($r("THREE.WebGLRenderTarget: option.encoding has been replaced by option.colorSpace."), t.colorSpace = t.encoding === cC ? We : pg), t = Object.assign({
1069
1069
  generateMipmaps: !1,
1070
1070
  internalFormat: null,
1071
1071
  minFilter: Re,
@@ -1084,7 +1084,7 @@ class Ax extends Sg {
1084
1084
  copy(A) {
1085
1085
  this.width = A.width, this.height = A.height, this.depth = A.depth, this.scissor.copy(A.scissor), this.scissorTest = A.scissorTest, this.viewport.copy(A.viewport), this.texture = A.texture.clone(), this.texture.isRenderTargetTexture = !0;
1086
1086
  const e = Object.assign({}, A.texture.image);
1087
- return this.texture.source = new nn(e), this.depthBuffer = A.depthBuffer, this.stencilBuffer = A.stencilBuffer, A.depthTexture !== null && (this.depthTexture = A.depthTexture.clone()), this.samples = A.samples, this;
1087
+ return this.texture.source = new rn(e), this.depthBuffer = A.depthBuffer, this.stencilBuffer = A.stencilBuffer, A.depthTexture !== null && (this.depthTexture = A.depthTexture.clone()), this.samples = A.samples, this;
1088
1088
  }
1089
1089
  dispose() {
1090
1090
  this.dispatchEvent({ type: "dispose" });
@@ -1771,7 +1771,7 @@ class Jt {
1771
1771
  return this.min.min(A.min), this.max.max(A.max), this;
1772
1772
  }
1773
1773
  applyMatrix4(A) {
1774
- return this.isEmpty() ? this : (FC[0].set(this.min.x, this.min.y, this.min.z).applyMatrix4(A), FC[1].set(this.min.x, this.min.y, this.max.z).applyMatrix4(A), FC[2].set(this.min.x, this.max.y, this.min.z).applyMatrix4(A), FC[3].set(this.min.x, this.max.y, this.max.z).applyMatrix4(A), FC[4].set(this.max.x, this.min.y, this.min.z).applyMatrix4(A), FC[5].set(this.max.x, this.min.y, this.max.z).applyMatrix4(A), FC[6].set(this.max.x, this.max.y, this.min.z).applyMatrix4(A), FC[7].set(this.max.x, this.max.y, this.max.z).applyMatrix4(A), this.setFromPoints(FC), this);
1774
+ return this.isEmpty() ? this : (JC[0].set(this.min.x, this.min.y, this.min.z).applyMatrix4(A), JC[1].set(this.min.x, this.min.y, this.max.z).applyMatrix4(A), JC[2].set(this.min.x, this.max.y, this.min.z).applyMatrix4(A), JC[3].set(this.min.x, this.max.y, this.max.z).applyMatrix4(A), JC[4].set(this.max.x, this.min.y, this.min.z).applyMatrix4(A), JC[5].set(this.max.x, this.min.y, this.max.z).applyMatrix4(A), JC[6].set(this.max.x, this.max.y, this.min.z).applyMatrix4(A), JC[7].set(this.max.x, this.max.y, this.max.z).applyMatrix4(A), this.setFromPoints(JC), this);
1775
1775
  }
1776
1776
  translate(A) {
1777
1777
  return this.min.add(A), this.max.add(A), this;
@@ -1780,7 +1780,7 @@ class Jt {
1780
1780
  return A.min.equals(this.min) && A.max.equals(this.max);
1781
1781
  }
1782
1782
  }
1783
- const FC = [
1783
+ const JC = [
1784
1784
  /* @__PURE__ */ new y(),
1785
1785
  /* @__PURE__ */ new y(),
1786
1786
  /* @__PURE__ */ new y(),
@@ -1874,7 +1874,7 @@ class qi {
1874
1874
  return new this.constructor().copy(this);
1875
1875
  }
1876
1876
  }
1877
- const KC = /* @__PURE__ */ new y(), YS = /* @__PURE__ */ new y(), Iu = /* @__PURE__ */ new y(), jn = /* @__PURE__ */ new y(), TS = /* @__PURE__ */ new y(), ou = /* @__PURE__ */ new y(), _S = /* @__PURE__ */ new y();
1877
+ const vC = /* @__PURE__ */ new y(), YS = /* @__PURE__ */ new y(), Iu = /* @__PURE__ */ new y(), jn = /* @__PURE__ */ new y(), TS = /* @__PURE__ */ new y(), ou = /* @__PURE__ */ new y(), _S = /* @__PURE__ */ new y();
1878
1878
  class uo {
1879
1879
  constructor(A = new y(), e = new y(0, 0, -1)) {
1880
1880
  this.origin = A, this.direction = e;
@@ -1892,7 +1892,7 @@ class uo {
1892
1892
  return this.direction.copy(A).sub(this.origin).normalize(), this;
1893
1893
  }
1894
1894
  recast(A) {
1895
- return this.origin.copy(this.at(A, KC)), this;
1895
+ return this.origin.copy(this.at(A, vC)), this;
1896
1896
  }
1897
1897
  closestPointToPoint(A, e) {
1898
1898
  e.subVectors(A, this.origin);
@@ -1903,8 +1903,8 @@ class uo {
1903
1903
  return Math.sqrt(this.distanceSqToPoint(A));
1904
1904
  }
1905
1905
  distanceSqToPoint(A) {
1906
- const e = KC.subVectors(A, this.origin).dot(this.direction);
1907
- return e < 0 ? this.origin.distanceToSquared(A) : (KC.copy(this.origin).addScaledVector(this.direction, e), KC.distanceToSquared(A));
1906
+ const e = vC.subVectors(A, this.origin).dot(this.direction);
1907
+ return e < 0 ? this.origin.distanceToSquared(A) : (vC.copy(this.origin).addScaledVector(this.direction, e), vC.distanceToSquared(A));
1908
1908
  }
1909
1909
  distanceSqToSegment(A, e, t, g) {
1910
1910
  YS.copy(A).add(e).multiplyScalar(0.5), Iu.copy(e).sub(A).normalize(), jn.copy(this.origin).sub(YS);
@@ -1927,8 +1927,8 @@ class uo {
1927
1927
  return t && t.copy(this.origin).addScaledVector(this.direction, B), g && g.copy(YS).addScaledVector(Iu, Q), E;
1928
1928
  }
1929
1929
  intersectSphere(A, e) {
1930
- KC.subVectors(A.center, this.origin);
1931
- const t = KC.dot(this.direction), g = KC.dot(KC) - t * t, I = A.radius * A.radius;
1930
+ vC.subVectors(A.center, this.origin);
1931
+ const t = vC.dot(this.direction), g = vC.dot(vC) - t * t, I = A.radius * A.radius;
1932
1932
  if (g > I)
1933
1933
  return null;
1934
1934
  const o = Math.sqrt(I - g), s = t - o, C = t + o;
@@ -1958,7 +1958,7 @@ class uo {
1958
1958
  return n >= 0 ? (t = (A.min.x - Q.x) * n, g = (A.max.x - Q.x) * n) : (t = (A.max.x - Q.x) * n, g = (A.min.x - Q.x) * n), a >= 0 ? (I = (A.min.y - Q.y) * a, o = (A.max.y - Q.y) * a) : (I = (A.max.y - Q.y) * a, o = (A.min.y - Q.y) * a), t > o || I > g || ((I > t || isNaN(t)) && (t = I), (o < g || isNaN(g)) && (g = o), B >= 0 ? (s = (A.min.z - Q.z) * B, C = (A.max.z - Q.z) * B) : (s = (A.max.z - Q.z) * B, C = (A.min.z - Q.z) * B), t > C || s > g) || ((s > t || t !== t) && (t = s), (C < g || g !== g) && (g = C), g < 0) ? null : this.at(t >= 0 ? t : g, e);
1959
1959
  }
1960
1960
  intersectsBox(A) {
1961
- return this.intersectBox(A, KC) !== null;
1961
+ return this.intersectBox(A, vC) !== null;
1962
1962
  }
1963
1963
  intersectTriangle(A, e, t, g, I) {
1964
1964
  TS.subVectors(e, A), ou.subVectors(t, A), _S.crossVectors(TS, ou);
@@ -2501,7 +2501,7 @@ class mI {
2501
2501
  }
2502
2502
  }
2503
2503
  let YP = 0;
2504
- const NF = /* @__PURE__ */ new y(), zB = /* @__PURE__ */ new UA(), JC = /* @__PURE__ */ new GA(), Cu = /* @__PURE__ */ new y(), Dc = /* @__PURE__ */ new y(), TP = /* @__PURE__ */ new y(), _P = /* @__PURE__ */ new UA(), FF = /* @__PURE__ */ new y(1, 0, 0), KF = /* @__PURE__ */ new y(0, 1, 0), JF = /* @__PURE__ */ new y(0, 0, 1), HP = { type: "added" }, OP = { type: "removed" };
2504
+ const NF = /* @__PURE__ */ new y(), zB = /* @__PURE__ */ new UA(), bC = /* @__PURE__ */ new GA(), Cu = /* @__PURE__ */ new y(), Dc = /* @__PURE__ */ new y(), TP = /* @__PURE__ */ new y(), _P = /* @__PURE__ */ new UA(), FF = /* @__PURE__ */ new y(1, 0, 0), KF = /* @__PURE__ */ new y(0, 1, 0), JF = /* @__PURE__ */ new y(0, 0, 1), HP = { type: "added" }, OP = { type: "removed" };
2505
2505
  class pA extends Sg {
2506
2506
  constructor() {
2507
2507
  super(), this.isObject3D = !0, Object.defineProperty(this, "id", { value: YP++ }), this.uuid = Eo(), this.name = "", this.type = "Object3D", this.parent = null, this.children = [], this.up = pA.DEFAULT_UP.clone();
@@ -2598,12 +2598,12 @@ class pA extends Sg {
2598
2598
  return this.updateWorldMatrix(!0, !1), A.applyMatrix4(this.matrixWorld);
2599
2599
  }
2600
2600
  worldToLocal(A) {
2601
- return this.updateWorldMatrix(!0, !1), A.applyMatrix4(JC.copy(this.matrixWorld).invert());
2601
+ return this.updateWorldMatrix(!0, !1), A.applyMatrix4(bC.copy(this.matrixWorld).invert());
2602
2602
  }
2603
2603
  lookAt(A, e, t) {
2604
2604
  A.isVector3 ? Cu.copy(A) : Cu.set(A, e, t);
2605
2605
  const g = this.parent;
2606
- this.updateWorldMatrix(!0, !1), Dc.setFromMatrixPosition(this.matrixWorld), this.isCamera || this.isLight ? JC.lookAt(Dc, Cu, this.up) : JC.lookAt(Cu, Dc, this.up), this.quaternion.setFromRotationMatrix(JC), g && (JC.extractRotation(g.matrixWorld), zB.setFromRotationMatrix(JC), this.quaternion.premultiply(zB.invert()));
2606
+ this.updateWorldMatrix(!0, !1), Dc.setFromMatrixPosition(this.matrixWorld), this.isCamera || this.isLight ? bC.lookAt(Dc, Cu, this.up) : bC.lookAt(Cu, Dc, this.up), this.quaternion.setFromRotationMatrix(bC), g && (bC.extractRotation(g.matrixWorld), zB.setFromRotationMatrix(bC), this.quaternion.premultiply(zB.invert()));
2607
2607
  }
2608
2608
  add(A) {
2609
2609
  if (arguments.length > 1) {
@@ -2630,7 +2630,7 @@ class pA extends Sg {
2630
2630
  return this.remove(...this.children);
2631
2631
  }
2632
2632
  attach(A) {
2633
- return this.updateWorldMatrix(!0, !1), JC.copy(this.matrixWorld).invert(), A.parent !== null && (A.parent.updateWorldMatrix(!0, !1), JC.multiply(A.parent.matrixWorld)), A.applyMatrix4(JC), this.add(A), A.updateWorldMatrix(!1, !0), this;
2633
+ return this.updateWorldMatrix(!0, !1), bC.copy(this.matrixWorld).invert(), A.parent !== null && (A.parent.updateWorldMatrix(!0, !1), bC.multiply(A.parent.matrixWorld)), A.applyMatrix4(bC), this.add(A), A.updateWorldMatrix(!1, !0), this;
2634
2634
  }
2635
2635
  getObjectById(A) {
2636
2636
  return this.getObjectByProperty("id", A);
@@ -2808,7 +2808,7 @@ class pA extends Sg {
2808
2808
  pA.DEFAULT_UP = /* @__PURE__ */ new y(0, 1, 0);
2809
2809
  pA.DEFAULT_MATRIX_AUTO_UPDATE = !0;
2810
2810
  pA.DEFAULT_MATRIX_WORLD_AUTO_UPDATE = !0;
2811
- const Is = /* @__PURE__ */ new y(), vC = /* @__PURE__ */ new y(), HS = /* @__PURE__ */ new y(), bC = /* @__PURE__ */ new y(), ZB = /* @__PURE__ */ new y(), XB = /* @__PURE__ */ new y(), vF = /* @__PURE__ */ new y(), OS = /* @__PURE__ */ new y(), PS = /* @__PURE__ */ new y(), WS = /* @__PURE__ */ new y();
2811
+ const Is = /* @__PURE__ */ new y(), qC = /* @__PURE__ */ new y(), HS = /* @__PURE__ */ new y(), LC = /* @__PURE__ */ new y(), ZB = /* @__PURE__ */ new y(), XB = /* @__PURE__ */ new y(), vF = /* @__PURE__ */ new y(), OS = /* @__PURE__ */ new y(), PS = /* @__PURE__ */ new y(), WS = /* @__PURE__ */ new y();
2812
2812
  class OI {
2813
2813
  constructor(A = new y(), e = new y(), t = new y()) {
2814
2814
  this.a = A, this.b = e, this.c = t;
@@ -2821,21 +2821,21 @@ class OI {
2821
2821
  // static/instance method to calculate barycentric coordinates
2822
2822
  // based on: http://www.blackpawn.com/texts/pointinpoly/default.html
2823
2823
  static getBarycoord(A, e, t, g, I) {
2824
- Is.subVectors(g, e), vC.subVectors(t, e), HS.subVectors(A, e);
2825
- const o = Is.dot(Is), s = Is.dot(vC), C = Is.dot(HS), n = vC.dot(vC), a = vC.dot(HS), B = o * n - s * s;
2824
+ Is.subVectors(g, e), qC.subVectors(t, e), HS.subVectors(A, e);
2825
+ const o = Is.dot(Is), s = Is.dot(qC), C = Is.dot(HS), n = qC.dot(qC), a = qC.dot(HS), B = o * n - s * s;
2826
2826
  if (B === 0)
2827
2827
  return I.set(0, 0, 0), null;
2828
2828
  const Q = 1 / B, E = (n * C - s * a) * Q, c = (o * a - s * C) * Q;
2829
2829
  return I.set(1 - E - c, c, E);
2830
2830
  }
2831
2831
  static containsPoint(A, e, t, g) {
2832
- return this.getBarycoord(A, e, t, g, bC) === null ? !1 : bC.x >= 0 && bC.y >= 0 && bC.x + bC.y <= 1;
2832
+ return this.getBarycoord(A, e, t, g, LC) === null ? !1 : LC.x >= 0 && LC.y >= 0 && LC.x + LC.y <= 1;
2833
2833
  }
2834
2834
  static getInterpolation(A, e, t, g, I, o, s, C) {
2835
- return this.getBarycoord(A, e, t, g, bC) === null ? (C.x = 0, C.y = 0, "z" in C && (C.z = 0), "w" in C && (C.w = 0), null) : (C.setScalar(0), C.addScaledVector(I, bC.x), C.addScaledVector(o, bC.y), C.addScaledVector(s, bC.z), C);
2835
+ return this.getBarycoord(A, e, t, g, LC) === null ? (C.x = 0, C.y = 0, "z" in C && (C.z = 0), "w" in C && (C.w = 0), null) : (C.setScalar(0), C.addScaledVector(I, LC.x), C.addScaledVector(o, LC.y), C.addScaledVector(s, LC.z), C);
2836
2836
  }
2837
2837
  static isFrontFacing(A, e, t, g) {
2838
- return Is.subVectors(t, e), vC.subVectors(A, e), Is.cross(vC).dot(g) < 0;
2838
+ return Is.subVectors(t, e), qC.subVectors(A, e), Is.cross(qC).dot(g) < 0;
2839
2839
  }
2840
2840
  set(A, e, t) {
2841
2841
  return this.a.copy(A), this.b.copy(e), this.c.copy(t), this;
@@ -2853,7 +2853,7 @@ class OI {
2853
2853
  return this.a.copy(A.a), this.b.copy(A.b), this.c.copy(A.c), this;
2854
2854
  }
2855
2855
  getArea() {
2856
- return Is.subVectors(this.c, this.b), vC.subVectors(this.a, this.b), Is.cross(vC).length() * 0.5;
2856
+ return Is.subVectors(this.c, this.b), qC.subVectors(this.a, this.b), Is.cross(qC).length() * 0.5;
2857
2857
  }
2858
2858
  getMidpoint(A) {
2859
2859
  return A.addVectors(this.a, this.b).add(this.c).multiplyScalar(1 / 3);
@@ -3362,7 +3362,7 @@ class at extends Te {
3362
3362
  return super.copy(A), this.color.copy(A.color), this.map = A.map, this.lightMap = A.lightMap, this.lightMapIntensity = A.lightMapIntensity, this.aoMap = A.aoMap, this.aoMapIntensity = A.aoMapIntensity, this.specularMap = A.specularMap, this.alphaMap = A.alphaMap, this.envMap = A.envMap, this.combine = A.combine, this.reflectivity = A.reflectivity, this.refractionRatio = A.refractionRatio, this.wireframe = A.wireframe, this.wireframeLinewidth = A.wireframeLinewidth, this.wireframeLinecap = A.wireframeLinecap, this.wireframeLinejoin = A.wireframeLinejoin, this.fog = A.fog, this.occlusion = A.occlusion, this;
3363
3363
  }
3364
3364
  }
3365
- const tn = /* @__PURE__ */ WP();
3365
+ const In = /* @__PURE__ */ WP();
3366
3366
  function WP() {
3367
3367
  const i = new ArrayBuffer(4), A = new Float32Array(i), e = new Uint32Array(i), t = new Uint32Array(512), g = new Uint32Array(512);
3368
3368
  for (let C = 0; C < 256; ++C) {
@@ -3397,13 +3397,13 @@ function WP() {
3397
3397
  };
3398
3398
  }
3399
3399
  function qI(i) {
3400
- Math.abs(i) > 65504 && console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."), i = Si(i, -65504, 65504), tn.floatView[0] = i;
3401
- const A = tn.uint32View[0], e = A >> 23 & 511;
3402
- return tn.baseTable[e] + ((A & 8388607) >> tn.shiftTable[e]);
3400
+ Math.abs(i) > 65504 && console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."), i = Si(i, -65504, 65504), In.floatView[0] = i;
3401
+ const A = In.uint32View[0], e = A >> 23 & 511;
3402
+ return In.baseTable[e] + ((A & 8388607) >> In.shiftTable[e]);
3403
3403
  }
3404
3404
  function Ih(i) {
3405
3405
  const A = i >> 10;
3406
- return tn.uint32View[0] = tn.mantissaTable[tn.offsetTable[A] + (i & 1023)] + tn.exponentTable[A], tn.floatView[0];
3406
+ return In.uint32View[0] = In.mantissaTable[In.offsetTable[A] + (i & 1023)] + In.exponentTable[A], In.floatView[0];
3407
3407
  }
3408
3408
  const _r = {
3409
3409
  toHalfFloat: qI,
@@ -4349,7 +4349,7 @@ class HM extends pA {
4349
4349
  }
4350
4350
  class zl extends _e {
4351
4351
  constructor(A, e, t, g, I, o, s, C, n, a) {
4352
- A = A !== void 0 ? A : [], e = e !== void 0 ? e : wn, super(A, e, t, g, I, o, s, C, n, a), this.isCubeTexture = !0, this.flipY = !1;
4352
+ A = A !== void 0 ? A : [], e = e !== void 0 ? e : Sn, super(A, e, t, g, I, o, s, C, n, a), this.isCubeTexture = !0, this.flipY = !1;
4353
4353
  }
4354
4354
  get images() {
4355
4355
  return this.image;
@@ -4362,7 +4362,7 @@ class OM extends gt {
4362
4362
  constructor(A = 1, e = {}) {
4363
4363
  super(A, A, e), this.isWebGLCubeRenderTarget = !0;
4364
4364
  const t = { width: A, height: A, depth: 1 }, g = [t, t, t, t, t, t];
4365
- e.encoding !== void 0 && ($r("THREE.WebGLCubeRenderTarget: option.encoding has been replaced by option.colorSpace."), e.colorSpace = e.encoding === EC ? We : pg), this.texture = new zl(g, e.mapping, e.wrapS, e.wrapT, e.magFilter, e.minFilter, e.format, e.type, e.anisotropy, e.colorSpace), this.texture.isRenderTargetTexture = !0, this.texture.generateMipmaps = e.generateMipmaps !== void 0 ? e.generateMipmaps : !1, this.texture.minFilter = e.minFilter !== void 0 ? e.minFilter : Re;
4365
+ e.encoding !== void 0 && ($r("THREE.WebGLCubeRenderTarget: option.encoding has been replaced by option.colorSpace."), e.colorSpace = e.encoding === cC ? We : pg), this.texture = new zl(g, e.mapping, e.wrapS, e.wrapT, e.magFilter, e.minFilter, e.format, e.type, e.anisotropy, e.colorSpace), this.texture.isRenderTargetTexture = !0, this.texture.generateMipmaps = e.generateMipmaps !== void 0 ? e.generateMipmaps : !1, this.texture.minFilter = e.minFilter !== void 0 ? e.minFilter : Re;
4366
4366
  }
4367
4367
  fromEquirectangularTexture(A, e) {
4368
4368
  this.texture.type = e.type, this.texture.colorSpace = e.colorSpace, this.texture.generateMipmaps = e.generateMipmaps, this.texture.minFilter = e.minFilter, this.texture.magFilter = e.magFilter;
@@ -9315,7 +9315,7 @@ function j4(i) {
9315
9315
  function V4(i) {
9316
9316
  let A = /* @__PURE__ */ new WeakMap();
9317
9317
  function e(o, s) {
9318
- return s === Vo ? o.mapping = wn : s === CE && (o.mapping = Ja), o;
9318
+ return s === Vo ? o.mapping = Sn : s === CE && (o.mapping = Ja), o;
9319
9319
  }
9320
9320
  function t(o) {
9321
9321
  if (o && o.isTexture) {
@@ -9465,7 +9465,7 @@ class xk {
9465
9465
  this._renderer.setRenderTarget($S, A0, e0), A.scissorTest = !1, fu(A, 0, 0, A.width, A.height);
9466
9466
  }
9467
9467
  _fromTexture(A, e) {
9468
- A.mapping === wn || A.mapping === Ja ? this._setSize(A.image.length === 0 ? 16 : A.image[0].width || A.image[0].image.width) : this._setSize(A.image.width / 4), $S = this._renderer.getRenderTarget(), A0 = this._renderer.getActiveCubeFace(), e0 = this._renderer.getActiveMipmapLevel();
9468
+ A.mapping === Sn || A.mapping === Ja ? this._setSize(A.image.length === 0 ? 16 : A.image[0].width || A.image[0].image.width) : this._setSize(A.image.width / 4), $S = this._renderer.getRenderTarget(), A0 = this._renderer.getActiveCubeFace(), e0 = this._renderer.getActiveMipmapLevel();
9469
9469
  const t = e || this._allocateTargets();
9470
9470
  return this._textureToCubeUV(A, t), this._applyPMREM(t), this._cleanup(t), t;
9471
9471
  }
@@ -9511,7 +9511,7 @@ class xk {
9511
9511
  c.geometry.dispose(), c.material.dispose(), a.toneMapping = Q, a.autoClear = B, A.background = u;
9512
9512
  }
9513
9513
  _textureToCubeUV(A, e) {
9514
- const t = this._renderer, g = A.mapping === wn || A.mapping === Ja;
9514
+ const t = this._renderer, g = A.mapping === Sn || A.mapping === Ja;
9515
9515
  g ? (this._cubemapMaterial === null && (this._cubemapMaterial = zF()), this._cubemapMaterial.uniforms.flipEnvMap.value = A.isRenderTargetTexture === !1 ? -1 : 1) : this._equirectMaterial === null && (this._equirectMaterial = VF());
9516
9516
  const I = g ? this._cubemapMaterial : this._equirectMaterial, o = new uA(this._lodPlanes[0], I), s = I.uniforms;
9517
9517
  s.envMap.value = A;
@@ -9845,7 +9845,7 @@ function Z4(i) {
9845
9845
  let A = /* @__PURE__ */ new WeakMap(), e = null;
9846
9846
  function t(s) {
9847
9847
  if (s && s.isTexture) {
9848
- const C = s.mapping, n = C === Vo || C === CE, a = C === wn || C === Ja;
9848
+ const C = s.mapping, n = C === Vo || C === CE, a = C === Sn || C === Ja;
9849
9849
  if (n || a)
9850
9850
  if (s.isRenderTargetTexture && s.needsPMREMUpdate === !0) {
9851
9851
  s.needsPMREMUpdate = !1;
@@ -10184,7 +10184,7 @@ class FE extends _e {
10184
10184
  constructor(A, e, t, g, I, o, s, C, n, a) {
10185
10185
  if (a = a !== void 0 ? a : ma, a !== ma && a !== va)
10186
10186
  throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");
10187
- t === void 0 && a === ma && (t = ds), t === void 0 && a === va && (t = hn), super(null, g, I, o, s, C, a, t, n), this.isDepthTexture = !0, this.image = { width: A, height: e }, this.magFilter = s !== void 0 ? s : Pe, this.minFilter = C !== void 0 ? C : Pe, this.flipY = !1, this.generateMipmaps = !1, this.compareFunction = null;
10187
+ t === void 0 && a === ma && (t = ds), t === void 0 && a === va && (t = ln), super(null, g, I, o, s, C, a, t, n), this.isDepthTexture = !0, this.image = { width: A, height: e }, this.magFilter = s !== void 0 ? s : Pe, this.minFilter = C !== void 0 ? C : Pe, this.flipY = !1, this.generateMipmaps = !1, this.compareFunction = null;
10188
10188
  }
10189
10189
  copy(A) {
10190
10190
  return super.copy(A), this.compareFunction = A.compareFunction, this;
@@ -10838,7 +10838,7 @@ function B8(i) {
10838
10838
  let A = "ENVMAP_TYPE_CUBE";
10839
10839
  if (i.envMap)
10840
10840
  switch (i.envMapMode) {
10841
- case wn:
10841
+ case Sn:
10842
10842
  case Ja:
10843
10843
  A = "ENVMAP_TYPE_CUBE";
10844
10844
  break;
@@ -12444,7 +12444,7 @@ function K8(i, A, e, t, g, I, o) {
12444
12444
  return d(q, aA) === !0 || q.isFramebufferTexture && q.minFilter !== Pe && q.minFilter !== Re ? Math.log2(Math.max(F.width, F.height)) + 1 : q.mipmaps !== void 0 && q.mipmaps.length > 0 ? q.mipmaps.length : q.isCompressedTexture && Array.isArray(q.image) ? F.mipmaps.length : 1;
12445
12445
  }
12446
12446
  function m(q) {
12447
- return q === Pe || q === nE || q === en ? i.NEAREST : i.LINEAR;
12447
+ return q === Pe || q === nE || q === gn ? i.NEAREST : i.LINEAR;
12448
12448
  }
12449
12449
  function G(q) {
12450
12450
  const F = q.target;
@@ -12558,7 +12558,7 @@ function K8(i, A, e, t, g, I, o) {
12558
12558
  }, oA = {
12559
12559
  [Pe]: i.NEAREST,
12560
12560
  [nE]: i.NEAREST_MIPMAP_NEAREST,
12561
- [en]: i.NEAREST_MIPMAP_LINEAR,
12561
+ [gn]: i.NEAREST_MIPMAP_LINEAR,
12562
12562
  [Re]: i.LINEAR,
12563
12563
  [Zr]: i.LINEAR_MIPMAP_NEAREST,
12564
12564
  [PI]: i.LINEAR_MIPMAP_LINEAR
@@ -12573,9 +12573,9 @@ function K8(i, A, e, t, g, I, o) {
12573
12573
  [VL]: i.NOTEQUAL
12574
12574
  };
12575
12575
  function SA(q, F, aA) {
12576
- if (F.type === gi && A.has("OES_texture_float_linear") === !1 && (F.magFilter === Re || F.magFilter === Zr || F.magFilter === en || F.magFilter === PI || F.minFilter === Re || F.minFilter === Zr || F.minFilter === en || F.minFilter === PI) && console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."), aA ? (i.texParameteri(q, i.TEXTURE_WRAP_S, X[F.wrapS]), i.texParameteri(q, i.TEXTURE_WRAP_T, X[F.wrapT]), (q === i.TEXTURE_3D || q === i.TEXTURE_2D_ARRAY) && i.texParameteri(q, i.TEXTURE_WRAP_R, X[F.wrapR]), i.texParameteri(q, i.TEXTURE_MAG_FILTER, oA[F.magFilter]), i.texParameteri(q, i.TEXTURE_MIN_FILTER, oA[F.minFilter])) : (i.texParameteri(q, i.TEXTURE_WRAP_S, i.CLAMP_TO_EDGE), i.texParameteri(q, i.TEXTURE_WRAP_T, i.CLAMP_TO_EDGE), (q === i.TEXTURE_3D || q === i.TEXTURE_2D_ARRAY) && i.texParameteri(q, i.TEXTURE_WRAP_R, i.CLAMP_TO_EDGE), (F.wrapS !== ug || F.wrapT !== ug) && console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."), i.texParameteri(q, i.TEXTURE_MAG_FILTER, m(F.magFilter)), i.texParameteri(q, i.TEXTURE_MIN_FILTER, m(F.minFilter)), F.minFilter !== Pe && F.minFilter !== Re && console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")), F.compareFunction && (i.texParameteri(q, i.TEXTURE_COMPARE_MODE, i.COMPARE_REF_TO_TEXTURE), i.texParameteri(q, i.TEXTURE_COMPARE_FUNC, lA[F.compareFunction])), A.has("EXT_texture_filter_anisotropic") === !0) {
12576
+ if (F.type === gi && A.has("OES_texture_float_linear") === !1 && (F.magFilter === Re || F.magFilter === Zr || F.magFilter === gn || F.magFilter === PI || F.minFilter === Re || F.minFilter === Zr || F.minFilter === gn || F.minFilter === PI) && console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."), aA ? (i.texParameteri(q, i.TEXTURE_WRAP_S, X[F.wrapS]), i.texParameteri(q, i.TEXTURE_WRAP_T, X[F.wrapT]), (q === i.TEXTURE_3D || q === i.TEXTURE_2D_ARRAY) && i.texParameteri(q, i.TEXTURE_WRAP_R, X[F.wrapR]), i.texParameteri(q, i.TEXTURE_MAG_FILTER, oA[F.magFilter]), i.texParameteri(q, i.TEXTURE_MIN_FILTER, oA[F.minFilter])) : (i.texParameteri(q, i.TEXTURE_WRAP_S, i.CLAMP_TO_EDGE), i.texParameteri(q, i.TEXTURE_WRAP_T, i.CLAMP_TO_EDGE), (q === i.TEXTURE_3D || q === i.TEXTURE_2D_ARRAY) && i.texParameteri(q, i.TEXTURE_WRAP_R, i.CLAMP_TO_EDGE), (F.wrapS !== ug || F.wrapT !== ug) && console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."), i.texParameteri(q, i.TEXTURE_MAG_FILTER, m(F.magFilter)), i.texParameteri(q, i.TEXTURE_MIN_FILTER, m(F.minFilter)), F.minFilter !== Pe && F.minFilter !== Re && console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")), F.compareFunction && (i.texParameteri(q, i.TEXTURE_COMPARE_MODE, i.COMPARE_REF_TO_TEXTURE), i.texParameteri(q, i.TEXTURE_COMPARE_FUNC, lA[F.compareFunction])), A.has("EXT_texture_filter_anisotropic") === !0) {
12577
12577
  const MA = A.get("EXT_texture_filter_anisotropic");
12578
- if (F.magFilter === Pe || F.minFilter !== en && F.minFilter !== PI || F.type === gi && A.has("OES_texture_float_linear") === !1 || s === !1 && F.type === ci && A.has("OES_texture_half_float_linear") === !1)
12578
+ if (F.magFilter === Pe || F.minFilter !== gn && F.minFilter !== PI || F.type === gi && A.has("OES_texture_float_linear") === !1 || s === !1 && F.type === ci && A.has("OES_texture_half_float_linear") === !1)
12579
12579
  return;
12580
12580
  (F.anisotropy > 1 || t.get(F).__currentAnisotropy) && (i.texParameterf(q, MA.TEXTURE_MAX_ANISOTROPY_EXT, Math.min(F.anisotropy, g.getMaxAnisotropy())), t.get(F).__currentAnisotropy = F.anisotropy);
12581
12581
  }
@@ -12616,7 +12616,7 @@ function K8(i, A, e, t, g, I, o) {
12616
12616
  let PA;
12617
12617
  const ue = F.mipmaps, Le = s && F.isVideoTexture !== !0 && te !== Iy, P = Ie.__version === void 0 || mA === !0, _A = S(F, RA, be);
12618
12618
  if (F.isDepthTexture)
12619
- te = i.DEPTH_COMPONENT, s ? F.type === gi ? te = i.DEPTH_COMPONENT32F : F.type === ds ? te = i.DEPTH_COMPONENT24 : F.type === hn ? te = i.DEPTH24_STENCIL8 : te = i.DEPTH_COMPONENT16 : F.type === gi && console.error("WebGLRenderer: Floating point depth texture requires WebGL2."), F.format === ma && te === i.DEPTH_COMPONENT && F.type !== iy && F.type !== ds && (console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."), F.type = ds, le = I.convert(F.type)), F.format === va && te === i.DEPTH_COMPONENT && (te = i.DEPTH_STENCIL, F.type !== hn && (console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."), F.type = hn, le = I.convert(F.type))), P && (Le ? e.texStorage2D(i.TEXTURE_2D, 1, te, RA.width, RA.height) : e.texImage2D(i.TEXTURE_2D, 0, te, RA.width, RA.height, 0, he, le, null));
12619
+ te = i.DEPTH_COMPONENT, s ? F.type === gi ? te = i.DEPTH_COMPONENT32F : F.type === ds ? te = i.DEPTH_COMPONENT24 : F.type === ln ? te = i.DEPTH24_STENCIL8 : te = i.DEPTH_COMPONENT16 : F.type === gi && console.error("WebGLRenderer: Floating point depth texture requires WebGL2."), F.format === ma && te === i.DEPTH_COMPONENT && F.type !== iy && F.type !== ds && (console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."), F.type = ds, le = I.convert(F.type)), F.format === va && te === i.DEPTH_COMPONENT && (te = i.DEPTH_STENCIL, F.type !== ln && (console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."), F.type = ln, le = I.convert(F.type))), P && (Le ? e.texStorage2D(i.TEXTURE_2D, 1, te, RA.width, RA.height) : e.texImage2D(i.TEXTURE_2D, 0, te, RA.width, RA.height, 0, he, le, null));
12620
12620
  else if (F.isDataTexture)
12621
12621
  if (ue.length > 0 && be) {
12622
12622
  Le && P && e.texStorage2D(i.TEXTURE_2D, _A, te, ue[0].width, ue[0].height);
@@ -13040,7 +13040,7 @@ function ax(i, A, e) {
13040
13040
  return s.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT;
13041
13041
  } else
13042
13042
  return null;
13043
- return I === hn ? t ? i.UNSIGNED_INT_24_8 : (s = A.get("WEBGL_depth_texture"), s !== null ? s.UNSIGNED_INT_24_8_WEBGL : null) : i[I] !== void 0 ? i[I] : null;
13043
+ return I === ln ? t ? i.UNSIGNED_INT_24_8 : (s = A.get("WEBGL_depth_texture"), s !== null ? s.UNSIGNED_INT_24_8_WEBGL : null) : i[I] !== void 0 ? i[I] : null;
13044
13044
  }
13045
13045
  return { convert: g };
13046
13046
  }
@@ -13197,7 +13197,7 @@ class v8 extends Sg {
13197
13197
  );
13198
13198
  } else {
13199
13199
  let DA = null, TA = null, OA = null;
13200
- d.depth && (OA = d.stencil ? e.DEPTH24_STENCIL8 : e.DEPTH_COMPONENT24, DA = d.stencil ? va : ma, TA = d.stencil ? hn : ds);
13200
+ d.depth && (OA = d.stencil ? e.DEPTH24_STENCIL8 : e.DEPTH_COMPONENT24, DA = d.stencil ? va : ma, TA = d.stencil ? ln : ds);
13201
13201
  const XA = {
13202
13202
  colorFormat: e.RGBA8,
13203
13203
  depthFormat: OA,
@@ -13646,7 +13646,7 @@ class Jn {
13646
13646
  $ = QA === JM || QA === KM || QA === FM;
13647
13647
  }
13648
13648
  if ($) {
13649
- const QA = G.texture.type, dA = QA === yt || QA === ds || QA === iy || QA === hn || QA === UM || QA === NM, FA = he.getClearColor(), JA = he.getClearAlpha(), jA = FA.r, Ae = FA.g, xA = FA.b;
13649
+ const QA = G.texture.type, dA = QA === yt || QA === ds || QA === iy || QA === ln || QA === UM || QA === NM, FA = he.getClearColor(), JA = he.getClearAlpha(), jA = FA.r, Ae = FA.g, xA = FA.b;
13650
13650
  dA ? (E[0] = jA, E[1] = Ae, E[2] = xA, E[3] = JA, V.clearBufferuiv(V.COLOR, 0, E)) : (c[0] = jA, c[1] = Ae, c[2] = xA, c[3] = JA, V.clearBufferiv(V.COLOR, 0, c));
13651
13651
  } else
13652
13652
  eA |= V.COLOR_BUFFER_BIT;
@@ -14034,10 +14034,10 @@ class Jn {
14034
14034
  e.drawingBufferColorSpace = A === jl ? "display-p3" : "srgb", e.unpackColorSpace = Gt.workingColorSpace === UE ? "display-p3" : "srgb";
14035
14035
  }
14036
14036
  get outputEncoding() {
14037
- return console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."), this.outputColorSpace === We ? EC : Wl;
14037
+ return console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."), this.outputColorSpace === We ? cC : Wl;
14038
14038
  }
14039
14039
  set outputEncoding(A) {
14040
- console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."), this.outputColorSpace = A === EC ? We : vt;
14040
+ console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."), this.outputColorSpace = A === cC ? We : vt;
14041
14041
  }
14042
14042
  get useLegacyLights() {
14043
14043
  return console.warn("THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733."), this._useLegacyLights;
@@ -15113,19 +15113,19 @@ class W8 extends _e {
15113
15113
  super({ width: A, height: e }), this.isFramebufferTexture = !0, this.magFilter = Pe, this.minFilter = Pe, this.generateMipmaps = !1, this.needsUpdate = !0;
15114
15114
  }
15115
15115
  }
15116
- class cC extends _e {
15116
+ class hC extends _e {
15117
15117
  constructor(A, e, t, g, I, o, s, C, n, a, B, Q) {
15118
15118
  super(null, o, s, C, n, a, g, I, B, Q), this.isCompressedTexture = !0, this.image = { width: e, height: t }, this.mipmaps = A, this.flipY = !1, this.generateMipmaps = !1;
15119
15119
  }
15120
15120
  }
15121
- class dx extends cC {
15121
+ class dx extends hC {
15122
15122
  constructor(A, e, t, g, I, o) {
15123
15123
  super(A, e, t, I, o), this.isCompressedArrayTexture = !0, this.image.depth = g, this.wrapR = ug;
15124
15124
  }
15125
15125
  }
15126
- class ux extends cC {
15126
+ class ux extends hC {
15127
15127
  constructor(A, e, t) {
15128
- super(void 0, A[0].width, A[0].height, e, t, wn), this.isCompressedCubeTexture = !0, this.isCubeTexture = !0, this.image = A;
15128
+ super(void 0, A[0].width, A[0].height, e, t, Sn), this.isCompressedCubeTexture = !0, this.isCubeTexture = !0, this.image = A;
15129
15129
  }
15130
15130
  }
15131
15131
  class $M extends _e {
@@ -16543,7 +16543,7 @@ function lj(i, A, e, t) {
16543
16543
  g += (i[o] - i[I]) * (i[I + 1] + i[o + 1]), o = I;
16544
16544
  return g;
16545
16545
  }
16546
- class hC {
16546
+ class lC {
16547
16547
  // calculate area of the contour polygon
16548
16548
  static area(A) {
16549
16549
  const e = A.length;
@@ -16553,7 +16553,7 @@ class hC {
16553
16553
  return t * 0.5;
16554
16554
  }
16555
16555
  static isClockWise(A) {
16556
- return hC.area(A) < 0;
16556
+ return lC.area(A) < 0;
16557
16557
  }
16558
16558
  static triangulateShape(A, e) {
16559
16559
  const t = [], g = [], I = [];
@@ -16597,14 +16597,14 @@ class py extends pe {
16597
16597
  const w = s.extractPoints(n);
16598
16598
  let k = w.shape;
16599
16599
  const K = w.holes;
16600
- if (!hC.isClockWise(k)) {
16600
+ if (!lC.isClockWise(k)) {
16601
16601
  k = k.reverse();
16602
16602
  for (let KA = 0, V = K.length; KA < V; KA++) {
16603
16603
  const fA = K[KA];
16604
- hC.isClockWise(fA) && (K[KA] = fA.reverse());
16604
+ lC.isClockWise(fA) && (K[KA] = fA.reverse());
16605
16605
  }
16606
16606
  }
16607
- const O = hC.triangulateShape(k, K), b = k;
16607
+ const O = lC.triangulateShape(k, K), b = k;
16608
16608
  for (let KA = 0, V = K.length; KA < V; KA++) {
16609
16609
  const fA = K[KA];
16610
16610
  k = k.concat(fA);
@@ -16911,7 +16911,7 @@ class fy extends Pa {
16911
16911
  return new fy(A.radius, A.detail);
16912
16912
  }
16913
16913
  }
16914
- class an extends Pa {
16914
+ class Bn extends Pa {
16915
16915
  constructor(A = 1, e = 0) {
16916
16916
  const t = [
16917
16917
  1,
@@ -16964,7 +16964,7 @@ class an extends Pa {
16964
16964
  };
16965
16965
  }
16966
16966
  static fromJSON(A) {
16967
- return new an(A.radius, A.detail);
16967
+ return new Bn(A.radius, A.detail);
16968
16968
  }
16969
16969
  }
16970
16970
  class cB extends pe {
@@ -17021,12 +17021,12 @@ class Dy extends pe {
17021
17021
  const B = g.length / 3, Q = a.extractPoints(e);
17022
17022
  let E = Q.shape;
17023
17023
  const c = Q.holes;
17024
- hC.isClockWise(E) === !1 && (E = E.reverse());
17024
+ lC.isClockWise(E) === !1 && (E = E.reverse());
17025
17025
  for (let u = 0, h = c.length; u < h; u++) {
17026
17026
  const d = c[u];
17027
- hC.isClockWise(d) === !0 && (c[u] = d.reverse());
17027
+ lC.isClockWise(d) === !0 && (c[u] = d.reverse());
17028
17028
  }
17029
- const l = hC.triangulateShape(E, c);
17029
+ const l = lC.triangulateShape(E, c);
17030
17030
  for (let u = 0, h = c.length; u < h; u++) {
17031
17031
  const d = c[u];
17032
17032
  E = E.concat(d);
@@ -17143,7 +17143,7 @@ class yy extends Pa {
17143
17143
  return new yy(A.radius, A.detail);
17144
17144
  }
17145
17145
  }
17146
- class gn extends pe {
17146
+ class on extends pe {
17147
17147
  constructor(A = 1, e = 0.4, t = 12, g = 48, I = Math.PI * 2) {
17148
17148
  super(), this.type = "TorusGeometry", this.parameters = {
17149
17149
  radius: A,
@@ -17169,7 +17169,7 @@ class gn extends pe {
17169
17169
  return super.copy(A), this.parameters = Object.assign({}, A.parameters), this;
17170
17170
  }
17171
17171
  static fromJSON(A) {
17172
- return new gn(A.radius, A.tube, A.radialSegments, A.tubularSegments, A.arc);
17172
+ return new on(A.radius, A.tube, A.radialSegments, A.tubularSegments, A.arc);
17173
17173
  }
17174
17174
  }
17175
17175
  class wy extends pe {
@@ -17316,14 +17316,14 @@ var bK = /* @__PURE__ */ Object.freeze({
17316
17316
  ExtrudeGeometry: py,
17317
17317
  IcosahedronGeometry: fy,
17318
17318
  LatheGeometry: ed,
17319
- OctahedronGeometry: an,
17319
+ OctahedronGeometry: Bn,
17320
17320
  PlaneGeometry: Bg,
17321
17321
  PolyhedronGeometry: Pa,
17322
17322
  RingGeometry: cB,
17323
17323
  ShapeGeometry: Dy,
17324
17324
  SphereGeometry: Ks,
17325
17325
  TetrahedronGeometry: yy,
17326
- TorusGeometry: gn,
17326
+ TorusGeometry: on,
17327
17327
  TorusKnotGeometry: wy,
17328
17328
  TubeGeometry: Sy,
17329
17329
  WireframeGeometry: sR
@@ -17753,7 +17753,7 @@ class Js {
17753
17753
  case ba:
17754
17754
  e = this.InterpolantFactoryMethodDiscrete;
17755
17755
  break;
17756
- case uC:
17756
+ case pC:
17757
17757
  e = this.InterpolantFactoryMethodLinear;
17758
17758
  break;
17759
17759
  case Vp:
@@ -17776,7 +17776,7 @@ class Js {
17776
17776
  case this.InterpolantFactoryMethodDiscrete:
17777
17777
  return ba;
17778
17778
  case this.InterpolantFactoryMethodLinear:
17779
- return uC;
17779
+ return pC;
17780
17780
  case this.InterpolantFactoryMethodSmooth:
17781
17781
  return Vp;
17782
17782
  }
@@ -17894,7 +17894,7 @@ class Js {
17894
17894
  }
17895
17895
  Js.prototype.TimeBufferType = Float32Array;
17896
17896
  Js.prototype.ValueBufferType = Float32Array;
17897
- Js.prototype.DefaultInterpolation = uC;
17897
+ Js.prototype.DefaultInterpolation = pC;
17898
17898
  class DB extends Js {
17899
17899
  }
17900
17900
  DB.prototype.ValueTypeName = "bool";
@@ -17920,14 +17920,14 @@ class bx extends vE {
17920
17920
  return I;
17921
17921
  }
17922
17922
  }
17923
- class pC extends Js {
17923
+ class fC extends Js {
17924
17924
  InterpolantFactoryMethodLinear(A) {
17925
17925
  return new bx(this.times, this.values, this.getValueSize(), A);
17926
17926
  }
17927
17927
  }
17928
- pC.prototype.ValueTypeName = "quaternion";
17929
- pC.prototype.DefaultInterpolation = uC;
17930
- pC.prototype.InterpolantFactoryMethodSmooth = void 0;
17928
+ fC.prototype.ValueTypeName = "quaternion";
17929
+ fC.prototype.DefaultInterpolation = pC;
17930
+ fC.prototype.InterpolantFactoryMethodSmooth = void 0;
17931
17931
  class yB extends Js {
17932
17932
  }
17933
17933
  yB.prototype.ValueTypeName = "string";
@@ -17935,9 +17935,9 @@ yB.prototype.ValueBufferType = Array;
17935
17935
  yB.prototype.DefaultInterpolation = ba;
17936
17936
  yB.prototype.InterpolantFactoryMethodLinear = void 0;
17937
17937
  yB.prototype.InterpolantFactoryMethodSmooth = void 0;
17938
- class Sn extends Js {
17938
+ class mn extends Js {
17939
17939
  }
17940
- Sn.prototype.ValueTypeName = "vector";
17940
+ mn.prototype.ValueTypeName = "vector";
17941
17941
  class zI {
17942
17942
  constructor(A, e = -1, t, g = oy) {
17943
17943
  this.name = A, this.tracks = t, this.duration = e, this.blendMode = g, this.uuid = Eo(), this.duration < 0 && this.resetDuration();
@@ -18041,19 +18041,19 @@ class zI {
18041
18041
  } else {
18042
18042
  const E = ".bones[" + e[B].name + "]";
18043
18043
  t(
18044
- Sn,
18044
+ mn,
18045
18045
  E + ".position",
18046
18046
  Q,
18047
18047
  "pos",
18048
18048
  g
18049
18049
  ), t(
18050
- pC,
18050
+ fC,
18051
18051
  E + ".quaternion",
18052
18052
  Q,
18053
18053
  "rot",
18054
18054
  g
18055
18055
  ), t(
18056
- Sn,
18056
+ mn,
18057
18057
  E + ".scale",
18058
18058
  Q,
18059
18059
  "scl",
@@ -18110,11 +18110,11 @@ function wj(i) {
18110
18110
  case "vector2":
18111
18111
  case "vector3":
18112
18112
  case "vector4":
18113
- return Sn;
18113
+ return mn;
18114
18114
  case "color":
18115
18115
  return Gy;
18116
18116
  case "quaternion":
18117
- return pC;
18117
+ return fC;
18118
18118
  case "bool":
18119
18119
  case "boolean":
18120
18120
  return DB;
@@ -18133,7 +18133,7 @@ function Sj(i) {
18133
18133
  }
18134
18134
  return A.parse !== void 0 ? A.parse(i) : new A(i.name, i.times, i.values, i.interpolation);
18135
18135
  }
18136
- const rn = {
18136
+ const Qn = {
18137
18137
  enabled: !1,
18138
18138
  files: {},
18139
18139
  add: function(i, A) {
@@ -18212,7 +18212,7 @@ class Hg {
18212
18212
  }
18213
18213
  }
18214
18214
  Hg.DEFAULT_MATERIAL_NAME = "__DEFAULT";
18215
- const qC = {};
18215
+ const xC = {};
18216
18216
  class mj extends Error {
18217
18217
  constructor(A, e) {
18218
18218
  super(A), this.response = e;
@@ -18224,20 +18224,20 @@ class sg extends Hg {
18224
18224
  }
18225
18225
  load(A, e, t, g) {
18226
18226
  A === void 0 && (A = ""), this.path !== void 0 && (A = this.path + A), A = this.manager.resolveURL(A);
18227
- const I = rn.get(A);
18227
+ const I = Qn.get(A);
18228
18228
  if (I !== void 0)
18229
18229
  return this.manager.itemStart(A), setTimeout(() => {
18230
18230
  e && e(I), this.manager.itemEnd(A);
18231
18231
  }, 0), I;
18232
- if (qC[A] !== void 0) {
18233
- qC[A].push({
18232
+ if (xC[A] !== void 0) {
18233
+ xC[A].push({
18234
18234
  onLoad: e,
18235
18235
  onProgress: t,
18236
18236
  onError: g
18237
18237
  });
18238
18238
  return;
18239
18239
  }
18240
- qC[A] = [], qC[A].push({
18240
+ xC[A] = [], xC[A].push({
18241
18241
  onLoad: e,
18242
18242
  onProgress: t,
18243
18243
  onError: g
@@ -18251,7 +18251,7 @@ class sg extends Hg {
18251
18251
  if (n.status === 200 || n.status === 0) {
18252
18252
  if (n.status === 0 && console.warn("THREE.FileLoader: HTTP Status 0 received."), typeof ReadableStream > "u" || n.body === void 0 || n.body.getReader === void 0)
18253
18253
  return n;
18254
- const a = qC[A], B = n.body.getReader(), Q = n.headers.get("Content-Length") || n.headers.get("X-File-Size"), E = Q ? parseInt(Q) : 0, c = E !== 0;
18254
+ const a = xC[A], B = n.body.getReader(), Q = n.headers.get("Content-Length") || n.headers.get("X-File-Size"), E = Q ? parseInt(Q) : 0, c = E !== 0;
18255
18255
  let l = 0;
18256
18256
  const u = new ReadableStream({
18257
18257
  start(h) {
@@ -18295,18 +18295,18 @@ class sg extends Hg {
18295
18295
  }
18296
18296
  }
18297
18297
  }).then((n) => {
18298
- rn.add(A, n);
18299
- const a = qC[A];
18300
- delete qC[A];
18298
+ Qn.add(A, n);
18299
+ const a = xC[A];
18300
+ delete xC[A];
18301
18301
  for (let B = 0, Q = a.length; B < Q; B++) {
18302
18302
  const E = a[B];
18303
18303
  E.onLoad && E.onLoad(n);
18304
18304
  }
18305
18305
  }).catch((n) => {
18306
- const a = qC[A];
18306
+ const a = xC[A];
18307
18307
  if (a === void 0)
18308
18308
  throw this.manager.itemError(A), n;
18309
- delete qC[A];
18309
+ delete xC[A];
18310
18310
  for (let B = 0, Q = a.length; B < Q; B++) {
18311
18311
  const E = a[B];
18312
18312
  E.onError && E.onError(n);
@@ -18351,7 +18351,7 @@ class Gj extends Hg {
18351
18351
  super(A);
18352
18352
  }
18353
18353
  load(A, e, t, g) {
18354
- const I = this, o = [], s = new cC(), C = new sg(this.manager);
18354
+ const I = this, o = [], s = new hC(), C = new sg(this.manager);
18355
18355
  C.setPath(this.path), C.setResponseType("arraybuffer"), C.setRequestHeader(this.requestHeader), C.setWithCredentials(I.withCredentials);
18356
18356
  let n = 0;
18357
18357
  function a(B) {
@@ -18392,14 +18392,14 @@ class Ql extends Hg {
18392
18392
  }
18393
18393
  load(A, e, t, g) {
18394
18394
  this.path !== void 0 && (A = this.path + A), A = this.manager.resolveURL(A);
18395
- const I = this, o = rn.get(A);
18395
+ const I = this, o = Qn.get(A);
18396
18396
  if (o !== void 0)
18397
18397
  return I.manager.itemStart(A), setTimeout(function() {
18398
18398
  e && e(o), I.manager.itemEnd(A);
18399
18399
  }, 0), o;
18400
18400
  const s = Cl("img");
18401
18401
  function C() {
18402
- a(), rn.add(A, this), e && e(this), I.manager.itemEnd(A);
18402
+ a(), Qn.add(A, this), e && e(this), I.manager.itemEnd(A);
18403
18403
  }
18404
18404
  function n(B) {
18405
18405
  a(), g && g(B), I.manager.itemError(A), I.manager.itemEnd(A);
@@ -18452,7 +18452,7 @@ class aR extends Hg {
18452
18452
  }, t, g), o;
18453
18453
  }
18454
18454
  }
18455
- class ln extends Hg {
18455
+ class dn extends Hg {
18456
18456
  constructor(A) {
18457
18457
  super(A);
18458
18458
  }
@@ -19111,10 +19111,10 @@ class Fj extends Hg {
19111
19111
  const u = Q[c], h = s(u);
19112
19112
  h !== null && (h instanceof HTMLImageElement ? E.push(h) : E.push(new co(h.data, h.width, h.height)));
19113
19113
  }
19114
- g[B.uuid] = new nn(E);
19114
+ g[B.uuid] = new rn(E);
19115
19115
  } else {
19116
19116
  const E = s(B.url);
19117
- g[B.uuid] = new nn(E);
19117
+ g[B.uuid] = new rn(E);
19118
19118
  }
19119
19119
  }
19120
19120
  }
@@ -19144,10 +19144,10 @@ class Fj extends Hg {
19144
19144
  const E = n[B], c = await I(E);
19145
19145
  c !== null && (c instanceof HTMLImageElement ? a.push(c) : a.push(new co(c.data, c.width, c.height)));
19146
19146
  }
19147
- t[C.uuid] = new nn(a);
19147
+ t[C.uuid] = new rn(a);
19148
19148
  } else {
19149
19149
  const a = await I(C.url);
19150
- t[C.uuid] = new nn(a);
19150
+ t[C.uuid] = new rn(a);
19151
19151
  }
19152
19152
  }
19153
19153
  }
@@ -19306,7 +19306,7 @@ class Fj extends Hg {
19306
19306
  }
19307
19307
  const Kj = {
19308
19308
  UVMapping: ty,
19309
- CubeReflectionMapping: wn,
19309
+ CubeReflectionMapping: Sn,
19310
19310
  CubeRefractionMapping: Ja,
19311
19311
  EquirectangularReflectionMapping: Vo,
19312
19312
  EquirectangularRefractionMapping: CE,
@@ -19318,7 +19318,7 @@ const Kj = {
19318
19318
  }, TK = {
19319
19319
  NearestFilter: Pe,
19320
19320
  NearestMipmapNearestFilter: nE,
19321
- NearestMipmapLinearFilter: en,
19321
+ NearestMipmapLinearFilter: gn,
19322
19322
  LinearFilter: Re,
19323
19323
  LinearMipmapNearestFilter: Zr,
19324
19324
  LinearMipmapLinearFilter: PI
@@ -19332,7 +19332,7 @@ class _x extends Hg {
19332
19332
  }
19333
19333
  load(A, e, t, g) {
19334
19334
  A === void 0 && (A = ""), this.path !== void 0 && (A = this.path + A), A = this.manager.resolveURL(A);
19335
- const I = this, o = rn.get(A);
19335
+ const I = this, o = Qn.get(A);
19336
19336
  if (o !== void 0) {
19337
19337
  if (I.manager.itemStart(A), o.then) {
19338
19338
  o.then((n) => {
@@ -19353,11 +19353,11 @@ class _x extends Hg {
19353
19353
  }).then(function(n) {
19354
19354
  return createImageBitmap(n, Object.assign(I.options, { colorSpaceConversion: "none" }));
19355
19355
  }).then(function(n) {
19356
- return rn.add(A, n), e && e(n), I.manager.itemEnd(A), n;
19356
+ return Qn.add(A, n), e && e(n), I.manager.itemEnd(A), n;
19357
19357
  }).catch(function(n) {
19358
- g && g(n), rn.remove(A), I.manager.itemError(A), I.manager.itemEnd(A);
19358
+ g && g(n), Qn.remove(A), I.manager.itemError(A), I.manager.itemEnd(A);
19359
19359
  });
19360
- rn.add(A, C), I.manager.itemStart(A);
19360
+ Qn.add(A, C), I.manager.itemStart(A);
19361
19361
  }
19362
19362
  }
19363
19363
  let Lu;
@@ -21055,7 +21055,7 @@ const gV = /* @__PURE__ */ new y(), XK = /* @__PURE__ */ new yA(), $K = /* @__PU
21055
21055
  class IV extends pA {
21056
21056
  constructor(A, e, t) {
21057
21057
  super(), this.light = A, this.matrix = A.matrixWorld, this.matrixAutoUpdate = !1, this.color = t, this.type = "HemisphereLightHelper";
21058
- const g = new an(e);
21058
+ const g = new Bn(e);
21059
21059
  g.rotateY(Math.PI * 0.5), this.material = new at({ wireframe: !0, fog: !1, toneMapped: !1 }), this.color === void 0 && (this.material.vertexColors = !0);
21060
21060
  const I = g.getAttribute("position"), o = new Float32Array(I.count * 3);
21061
21061
  g.setAttribute("color", new ie(o, 3)), this.add(new uA(g, this.material)), this.update();
@@ -21381,7 +21381,7 @@ class nV {
21381
21381
  }
21382
21382
  return f;
21383
21383
  }
21384
- const g = hC.isClockWise, I = this.subPaths;
21384
+ const g = lC.isClockWise, I = this.subPaths;
21385
21385
  if (I.length === 0)
21386
21386
  return [];
21387
21387
  let o, s, C;
@@ -21470,7 +21470,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21470
21470
  BufferGeometry: pe,
21471
21471
  BufferGeometryLoader: Tx,
21472
21472
  ByteType: wL,
21473
- Cache: rn,
21473
+ Cache: Qn,
21474
21474
  Camera: Vl,
21475
21475
  CameraHelper: zx,
21476
21476
  CanvasTexture: $M,
@@ -21485,13 +21485,13 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21485
21485
  ColorManagement: Gt,
21486
21486
  CompressedArrayTexture: dx,
21487
21487
  CompressedCubeTexture: ux,
21488
- CompressedTexture: cC,
21488
+ CompressedTexture: hC,
21489
21489
  CompressedTextureLoader: Gj,
21490
21490
  ConeGeometry: ly,
21491
21491
  ConstantAlphaFactor: hL,
21492
21492
  ConstantColorFactor: EL,
21493
21493
  CubeCamera: HM,
21494
- CubeReflectionMapping: wn,
21494
+ CubeReflectionMapping: Sn,
21495
21495
  CubeRefractionMapping: Ja,
21496
21496
  CubeTexture: zl,
21497
21497
  CubeTextureLoader: Mj,
@@ -21584,7 +21584,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21584
21584
  InterleavedBufferAttribute: wI,
21585
21585
  Interpolant: vE,
21586
21586
  InterpolateDiscrete: ba,
21587
- InterpolateLinear: uC,
21587
+ InterpolateLinear: pC,
21588
21588
  InterpolateSmooth: Vp,
21589
21589
  InvertStencilOp: qL,
21590
21590
  KeepStencilOp: ra,
@@ -21653,7 +21653,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21653
21653
  NearestFilter: Pe,
21654
21654
  NearestMipMapLinearFilter: sP,
21655
21655
  NearestMipMapNearestFilter: oP,
21656
- NearestMipmapLinearFilter: en,
21656
+ NearestMipmapLinearFilter: gn,
21657
21657
  NearestMipmapNearestFilter: nE,
21658
21658
  NeverCompare: OL,
21659
21659
  NeverDepth: kM,
@@ -21670,7 +21670,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21670
21670
  Object3D: pA,
21671
21671
  ObjectLoader: Fj,
21672
21672
  ObjectSpaceNormalMap: UL,
21673
- OctahedronGeometry: an,
21673
+ OctahedronGeometry: Bn,
21674
21674
  OneFactor: oL,
21675
21675
  OneMinusConstantAlphaFactor: lL,
21676
21676
  OneMinusConstantColorFactor: cL,
@@ -21700,7 +21700,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21700
21700
  QuadraticBezierCurve: iR,
21701
21701
  QuadraticBezierCurve3: gR,
21702
21702
  Quaternion: UA,
21703
- QuaternionKeyframeTrack: pC,
21703
+ QuaternionKeyframeTrack: fC,
21704
21704
  QuaternionLinearInterpolant: bx,
21705
21705
  RED_GREEN_RGTC2_Format: vk,
21706
21706
  RED_RGTC1_Format: GL,
@@ -21763,12 +21763,12 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21763
21763
  Shape: AB,
21764
21764
  ShapeGeometry: Dy,
21765
21765
  ShapePath: nV,
21766
- ShapeUtils: hC,
21766
+ ShapeUtils: lC,
21767
21767
  ShortType: SL,
21768
21768
  Skeleton: JE,
21769
21769
  SkeletonHelper: tV,
21770
21770
  SkinnedMesh: Ds,
21771
- Source: nn,
21771
+ Source: rn,
21772
21772
  Sphere: qi,
21773
21773
  SphereGeometry: Ks,
21774
21774
  Spherical: Wk,
@@ -21795,8 +21795,8 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21795
21795
  TangentSpaceNormalMap: Oa,
21796
21796
  TetrahedronGeometry: yy,
21797
21797
  Texture: _e,
21798
- TextureLoader: ln,
21799
- TorusGeometry: gn,
21798
+ TextureLoader: dn,
21799
+ TorusGeometry: on,
21800
21800
  TorusKnotGeometry: wy,
21801
21801
  Triangle: OI,
21802
21802
  TriangleFanDrawMode: Yf,
@@ -21813,7 +21813,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21813
21813
  UniformsLib: bA,
21814
21814
  UniformsUtils: NE,
21815
21815
  UnsignedByteType: yt,
21816
- UnsignedInt248Type: hn,
21816
+ UnsignedInt248Type: ln,
21817
21817
  UnsignedIntType: ds,
21818
21818
  UnsignedShort4444Type: UM,
21819
21819
  UnsignedShort5551Type: NM,
@@ -21822,7 +21822,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21822
21822
  Vector2: gA,
21823
21823
  Vector3: y,
21824
21824
  Vector4: oe,
21825
- VectorKeyframeTrack: Sn,
21825
+ VectorKeyframeTrack: mn,
21826
21826
  VideoTexture: lx,
21827
21827
  WebGL1Renderer: Bx,
21828
21828
  WebGL3DRenderTarget: bP,
@@ -21842,7 +21842,7 @@ const aV = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
21842
21842
  ZeroStencilOp: NL,
21843
21843
  _SRGBAFormat: Hf,
21844
21844
  createCanvasElement: $L,
21845
- sRGBEncoding: EC
21845
+ sRGBEncoding: cC
21846
21846
  }, Symbol.toStringTag, { value: "Module" }));
21847
21847
  var Ig = /* @__PURE__ */ ((i) => (i.ContextRegistered = "ContextRegistered", i.ContextCreationStart = "ContextCreationStart", i.ContextCreated = "ContextCreated", i.ContextFirstFrameRendered = "ContextFirstFrameRendered", i.ContextDestroyed = "ContextDestroyed", i.MissingCamera = "MissingCamera", i.ContextClearing = "ContextClearing", i.ContextCleared = "ContextCleared", i))(Ig || {});
21848
21848
  class xt {
@@ -22286,7 +22286,7 @@ function yR() {
22286
22286
  return eY;
22287
22287
  }
22288
22288
  const $x = console.error, AY = function(...i) {
22289
- $x.apply(console, i), GV(i), dn(2, i), zk();
22289
+ $x.apply(console, i), GV(i), un(2, i), zk();
22290
22290
  };
22291
22291
  function PBA(i) {
22292
22292
  XQ = !i, i ? console.error = AY : console.error = $x;
@@ -22303,9 +22303,9 @@ function kV() {
22303
22303
  ZI() && console.warn("Received unknown error", A, A.target);
22304
22304
  return;
22305
22305
  }
22306
- dn(2, e, A.filename, A.lineno), zk();
22306
+ un(2, e, A.filename, A.lineno), zk();
22307
22307
  }, !0), window.addEventListener("unhandledrejection", (A) => {
22308
- XQ || A && (A.reason ? dn(2, A.reason.message, A.reason.stack) : dn(2, "unhandled rejection"), zk());
22308
+ XQ || A && (A.reason ? un(2, A.reason.message, A.reason.stack) : un(2, "unhandled rejection"), zk());
22309
22309
  }));
22310
22310
  }
22311
22311
  let eY = 0;
@@ -22319,7 +22319,7 @@ function GV(i) {
22319
22319
  typeof e == "string" && e.startsWith("THREE.PropertyBinding: Trying to update node for track:") && (i[A] = "Some animated objects couldn't be found: see console for details");
22320
22320
  }
22321
22321
  }
22322
- function dn(i, A, e, t) {
22322
+ function un(i, A, e, t) {
22323
22323
  if (XQ)
22324
22324
  return;
22325
22325
  const g = xt.Current, I = (g == null ? void 0 : g.domElement) ?? document.querySelector("needle-engine");
@@ -22444,7 +22444,7 @@ function NV(i, A) {
22444
22444
  }
22445
22445
  return e.title = "Open the browser console (F12) for more information", e.innerHTML = A, e;
22446
22446
  }
22447
- let un = null, Co = null, BC = null, f0 = !1, aJ = null;
22447
+ let pn = null, Co = null, BC = null, f0 = !1, aJ = null;
22448
22448
  const iY = "📜", Zk = CA("console"), FV = CA("noerrors") || CA("noconsole");
22449
22449
  Zk && gY();
22450
22450
  if (!FV && (Zk || ZI())) {
@@ -22457,7 +22457,7 @@ Open this page console: ` + A.toString());
22457
22457
  if (i && (kV(), IY(), oY(!0), i)) {
22458
22458
  const A = document.querySelector("needle-engine");
22459
22459
  A == null || A.addEventListener("enter-ar", () => {
22460
- (Zk || un || yR() > 0) && CA("noerrors");
22460
+ (Zk || pn || yR() > 0) && CA("noerrors");
22461
22461
  }), A == null || A.addEventListener("exit-ar", () => {
22462
22462
  qV();
22463
22463
  });
@@ -22465,14 +22465,14 @@ Open this page console: ` + A.toString());
22465
22465
  }
22466
22466
  const Xk = Symbol("consoleParent");
22467
22467
  function gY() {
22468
- if (un !== null) {
22469
- un.showSwitch();
22468
+ if (pn !== null) {
22469
+ pn.showSwitch();
22470
22470
  return;
22471
22471
  }
22472
22472
  oY();
22473
22473
  }
22474
22474
  function KV() {
22475
- un !== null && (un.hide(), un.hideSwitch());
22475
+ pn !== null && (pn.hide(), pn.hideSwitch());
22476
22476
  }
22477
22477
  function IY() {
22478
22478
  aJ || (aJ = setInterval(JV, 500));
@@ -22492,12 +22492,12 @@ function qV() {
22492
22492
  Co && Co[Xk] && Co[Xk].appendChild(Co);
22493
22493
  }
22494
22494
  function oY(i = !1) {
22495
- if (un || f0)
22495
+ if (pn || f0)
22496
22496
  return;
22497
22497
  f0 = !0;
22498
22498
  const A = document.createElement("script");
22499
22499
  A.onload = () => {
22500
- if (f0 = !1, IY(), un = new window.VConsole(), Co = xV(), Co && (Co[Xk] = Co.parentElement, Co.style.position = "absolute", Co.style.zIndex = Number.MAX_SAFE_INTEGER.toString()), un.setSwitchPosition(20, 10), BC = LV(), BC) {
22500
+ if (f0 = !1, IY(), pn = new window.VConsole(), Co = xV(), Co && (Co[Xk] = Co.parentElement, Co.style.position = "absolute", Co.style.zIndex = Number.MAX_SAFE_INTEGER.toString()), pn.setSwitchPosition(20, 10), BC = LV(), BC) {
22501
22501
  BC.innerText = iY, BC.addEventListener("click", bV);
22502
22502
  const e = document.createElement("style"), t = 40;
22503
22503
  e.innerHTML = `
@@ -22552,7 +22552,7 @@ function xV() {
22552
22552
  return i || null;
22553
22553
  }
22554
22554
  function vi(i, A = ws.Log) {
22555
- dn(A, i);
22555
+ un(A, i);
22556
22556
  }
22557
22557
  function Li(i) {
22558
22558
  vi(i, ws.Warn);
@@ -23840,7 +23840,7 @@ var Cz = (i) => {
23840
23840
  var A = {};
23841
23841
  return Ss.d(A, i), A;
23842
23842
  };
23843
- const zA = Cz({ BackSide: () => bi, BufferAttribute: () => ie, BufferGeometry: () => pe, Color: () => yA, DoubleSide: () => wt, EventDispatcher: () => Sg, FileLoader: () => sg, FrontSide: () => gI, LinearFilter: () => Re, Mesh: () => uA, MeshBasicMaterial: () => at, Object3D: () => pA, Plane: () => fI, PlaneGeometry: () => Bg, ShaderMaterial: () => Ne, Texture: () => _e, TextureLoader: () => ln, Vector2: () => gA, Vector3: () => y, Vector4: () => oe });
23843
+ const zA = Cz({ BackSide: () => bi, BufferAttribute: () => ie, BufferGeometry: () => pe, Color: () => yA, DoubleSide: () => wt, EventDispatcher: () => Sg, FileLoader: () => sg, FrontSide: () => gI, LinearFilter: () => Re, Mesh: () => uA, MeshBasicMaterial: () => at, Object3D: () => pA, Plane: () => fI, PlaneGeometry: () => Bg, ShaderMaterial: () => Ne, Texture: () => _e, TextureLoader: () => dn, Vector2: () => gA, Vector3: () => y, Vector4: () => oe });
23844
23844
  class Ci extends Ft {
23845
23845
  /**
23846
23846
  *
@@ -24940,7 +24940,7 @@ class hY extends cl {
24940
24940
  A._backgroundMesh.visible = !(this._input === "none" || this._input === "transparent"), this._input === "inherit" ? this._value.set(this.getInheritedInput(A)) : this._input === "transparent" || this._input === "none" || this._value.set(this._input);
24941
24941
  }
24942
24942
  }
24943
- class _C extends Ft {
24943
+ class OC extends Ft {
24944
24944
  /**
24945
24945
  *
24946
24946
  * @param {string} propertyId
@@ -25127,7 +25127,7 @@ class AZ extends dY {
25127
25127
  super.computeOutputValue(A);
25128
25128
  }
25129
25129
  }
25130
- class uY extends _C {
25130
+ class uY extends OC {
25131
25131
  constructor() {
25132
25132
  super("textContent"), this._needsUpdate = !1;
25133
25133
  }
@@ -26500,7 +26500,7 @@ function iG(i, A) {
26500
26500
  return !0;
26501
26501
  }
26502
26502
  }
26503
- function mn(i, A) {
26503
+ function kn(i, A) {
26504
26504
  return i < 65 ? i === 36 : i < 91 ? !0 : i < 97 ? i === 95 : i < 123 ? !0 : i <= 65535 ? i >= 170 && YZ.test(String.fromCharCode(i)) : A === !1 ? !1 : iG(i, FY);
26505
26505
  }
26506
26506
  function cE(i, A) {
@@ -26769,28 +26769,28 @@ var ll = 1, LE = 2, YR = 4, LY = 8, xY = 16, YY = 32, TR = 64, TY = 128, od = 25
26769
26769
  function HR(i, A) {
26770
26770
  return LE | (i ? YR : 0) | (A ? LY : 0);
26771
26771
  }
26772
- var eD = 0, OR = 1, pn = 2, _Y = 3, HY = 4, OY = 5, yg = function(A, e, t) {
26772
+ var eD = 0, OR = 1, fn = 2, _Y = 3, HY = 4, OY = 5, yg = function(A, e, t) {
26773
26773
  this.options = A = WZ(A), this.sourceFile = A.sourceFile, this.keywords = Or(LZ[A.ecmaVersion >= 6 ? 6 : A.sourceType === "module" ? "5module" : 5]);
26774
26774
  var g = "";
26775
26775
  A.allowReserved !== !0 && (g = w0[A.ecmaVersion >= 6 ? 6 : A.ecmaVersion === 5 ? 5 : 3], A.sourceType === "module" && (g += " await")), this.reservedWords = Or(g);
26776
26776
  var I = (g ? g + " " : "") + w0.strict;
26777
26777
  this.reservedWordsStrict = Or(I), this.reservedWordsStrictBind = Or(I + " " + w0.strictBind), this.input = String(e), this.containsEsc = !1, t ? (this.pos = t, this.lineStart = this.input.lastIndexOf(`
26778
26778
  `, t - 1) + 1, this.curLine = this.input.slice(0, this.lineStart).split(As).length) : (this.pos = this.lineStart = 0, this.curLine = 1), this.type = v.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc = this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = !0, this.inModule = A.sourceType === "module", this.strict = this.inModule || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.potentialArrowInForAwait = !1, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = /* @__PURE__ */ Object.create(null), this.pos === 0 && A.allowHashBang && this.input.slice(0, 2) === "#!" && this.skipLineComment(2), this.scopeStack = [], this.enterScope(ll), this.regexpState = null, this.privateNameStack = [];
26779
- }, kC = { inFunction: { configurable: !0 }, inGenerator: { configurable: !0 }, inAsync: { configurable: !0 }, canAwait: { configurable: !0 }, allowSuper: { configurable: !0 }, allowDirectSuper: { configurable: !0 }, treatFunctionsAsVar: { configurable: !0 }, allowNewDotTarget: { configurable: !0 }, inClassStaticBlock: { configurable: !0 } };
26779
+ }, GC = { inFunction: { configurable: !0 }, inGenerator: { configurable: !0 }, inAsync: { configurable: !0 }, canAwait: { configurable: !0 }, allowSuper: { configurable: !0 }, allowDirectSuper: { configurable: !0 }, treatFunctionsAsVar: { configurable: !0 }, allowNewDotTarget: { configurable: !0 }, inClassStaticBlock: { configurable: !0 } };
26780
26780
  yg.prototype.parse = function() {
26781
26781
  var A = this.options.program || this.startNode();
26782
26782
  return this.nextToken(), this.parseTopLevel(A);
26783
26783
  };
26784
- kC.inFunction.get = function() {
26784
+ GC.inFunction.get = function() {
26785
26785
  return (this.currentVarScope().flags & LE) > 0;
26786
26786
  };
26787
- kC.inGenerator.get = function() {
26787
+ GC.inGenerator.get = function() {
26788
26788
  return (this.currentVarScope().flags & LY) > 0 && !this.currentVarScope().inClassFieldInit;
26789
26789
  };
26790
- kC.inAsync.get = function() {
26790
+ GC.inAsync.get = function() {
26791
26791
  return (this.currentVarScope().flags & YR) > 0 && !this.currentVarScope().inClassFieldInit;
26792
26792
  };
26793
- kC.canAwait.get = function() {
26793
+ GC.canAwait.get = function() {
26794
26794
  for (var i = this.scopeStack.length - 1; i >= 0; i--) {
26795
26795
  var A = this.scopeStack[i];
26796
26796
  if (A.inClassFieldInit || A.flags & od)
@@ -26800,21 +26800,21 @@ kC.canAwait.get = function() {
26800
26800
  }
26801
26801
  return this.inModule && this.options.ecmaVersion >= 13 || this.options.allowAwaitOutsideFunction;
26802
26802
  };
26803
- kC.allowSuper.get = function() {
26803
+ GC.allowSuper.get = function() {
26804
26804
  var i = this.currentThisScope(), A = i.flags, e = i.inClassFieldInit;
26805
26805
  return (A & TR) > 0 || e || this.options.allowSuperOutsideMethod;
26806
26806
  };
26807
- kC.allowDirectSuper.get = function() {
26807
+ GC.allowDirectSuper.get = function() {
26808
26808
  return (this.currentThisScope().flags & TY) > 0;
26809
26809
  };
26810
- kC.treatFunctionsAsVar.get = function() {
26810
+ GC.treatFunctionsAsVar.get = function() {
26811
26811
  return this.treatFunctionsAsVarInScope(this.currentScope());
26812
26812
  };
26813
- kC.allowNewDotTarget.get = function() {
26813
+ GC.allowNewDotTarget.get = function() {
26814
26814
  var i = this.currentThisScope(), A = i.flags, e = i.inClassFieldInit;
26815
26815
  return (A & (LE | od)) > 0 || e;
26816
26816
  };
26817
- kC.inClassStaticBlock.get = function() {
26817
+ GC.inClassStaticBlock.get = function() {
26818
26818
  return (this.currentVarScope().flags & od) > 0;
26819
26819
  };
26820
26820
  yg.extend = function() {
@@ -26834,7 +26834,7 @@ yg.parseExpressionAt = function(A, e, t) {
26834
26834
  yg.tokenizer = function(A, e) {
26835
26835
  return new this(e, A);
26836
26836
  };
26837
- Object.defineProperties(yg.prototype, kC);
26837
+ Object.defineProperties(yg.prototype, GC);
26838
26838
  var MI = yg.prototype, VZ = /^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;
26839
26839
  MI.strictDirective = function(i) {
26840
26840
  if (this.options.ecmaVersion < 5)
@@ -26934,7 +26934,7 @@ Fe.isLet = function(i) {
26934
26934
  return !1;
26935
26935
  if (t === 123)
26936
26936
  return !0;
26937
- if (mn(t, !0)) {
26937
+ if (kn(t, !0)) {
26938
26938
  for (var g = e + 1; cE(t = this.input.charCodeAt(g), !0); )
26939
26939
  ++g;
26940
26940
  if (t === 92 || t > 55295 && t < 56320)
@@ -27063,7 +27063,7 @@ Fe.parseTryStatement = function(i) {
27063
27063
  if (this.next(), this.eat(v.parenL)) {
27064
27064
  A.param = this.parseBindingAtom();
27065
27065
  var e = A.param.type === "Identifier";
27066
- this.enterScope(e ? YY : 0), this.checkLValPattern(A.param, e ? HY : pn), this.expect(v.parenR);
27066
+ this.enterScope(e ? YY : 0), this.checkLValPattern(A.param, e ? HY : fn), this.expect(v.parenR);
27067
27067
  } else
27068
27068
  this.options.ecmaVersion < 10 && this.unexpected(), A.param = null, this.enterScope(0);
27069
27069
  A.body = this.parseBlock(!1), this.exitScope(), i.handler = this.finishNode(A, "CatchClause");
@@ -27125,11 +27125,11 @@ Fe.parseVar = function(i, A, e) {
27125
27125
  return i;
27126
27126
  };
27127
27127
  Fe.parseVarId = function(i, A) {
27128
- i.id = this.parseBindingAtom(), this.checkLValPattern(i.id, A === "var" ? OR : pn, !1);
27128
+ i.id = this.parseBindingAtom(), this.checkLValPattern(i.id, A === "var" ? OR : fn, !1);
27129
27129
  };
27130
27130
  var kh = 1, IG = 2, PY = 4;
27131
27131
  Fe.parseFunction = function(i, A, e, t, g) {
27132
- this.initFunction(i), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !t) && (this.type === v.star && A & IG && this.unexpected(), i.generator = this.eat(v.star)), this.options.ecmaVersion >= 8 && (i.async = !!t), A & kh && (i.id = A & PY && this.type !== v.name ? null : this.parseIdent(), i.id && !(A & IG) && this.checkLValSimple(i.id, this.strict || i.generator || i.async ? this.treatFunctionsAsVar ? OR : pn : _Y));
27132
+ this.initFunction(i), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !t) && (this.type === v.star && A & IG && this.unexpected(), i.generator = this.eat(v.star)), this.options.ecmaVersion >= 8 && (i.async = !!t), A & kh && (i.id = A & PY && this.type !== v.name ? null : this.parseIdent(), i.id && !(A & IG) && this.checkLValSimple(i.id, this.strict || i.generator || i.async ? this.treatFunctionsAsVar ? OR : fn : _Y));
27133
27133
  var I = this.yieldPos, o = this.awaitPos, s = this.awaitIdentPos;
27134
27134
  return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(HR(i.async, i.generator)), A & kh || (i.id = this.type === v.name ? this.parseIdent() : null), this.parseFunctionParams(i), this.parseFunctionBody(i, e, !1, g), this.yieldPos = I, this.awaitPos = o, this.awaitIdentPos = s, this.finishNode(i, A & kh ? "FunctionDeclaration" : "FunctionExpression");
27135
27135
  };
@@ -27197,7 +27197,7 @@ Fe.parseClassStaticBlock = function(i) {
27197
27197
  return this.next(), this.exitScope(), this.labels = A, this.finishNode(i, "StaticBlock");
27198
27198
  };
27199
27199
  Fe.parseClassId = function(i, A) {
27200
- this.type === v.name ? (i.id = this.parseIdent(), A && this.checkLValSimple(i.id, pn, !1)) : (A === !0 && this.unexpected(), i.id = null);
27200
+ this.type === v.name ? (i.id = this.parseIdent(), A && this.checkLValSimple(i.id, fn, !1)) : (A === !0 && this.unexpected(), i.id = null);
27201
27201
  };
27202
27202
  Fe.parseClassSuper = function(i) {
27203
27203
  i.superClass = this.eat(v._extends) ? this.parseExprSubscripts(!1) : null;
@@ -27305,12 +27305,12 @@ Fe.parseImportSpecifiers = function() {
27305
27305
  var i = [], A = !0;
27306
27306
  if (this.type === v.name) {
27307
27307
  var e = this.startNode();
27308
- if (e.local = this.parseIdent(), this.checkLValSimple(e.local, pn), i.push(this.finishNode(e, "ImportDefaultSpecifier")), !this.eat(v.comma))
27308
+ if (e.local = this.parseIdent(), this.checkLValSimple(e.local, fn), i.push(this.finishNode(e, "ImportDefaultSpecifier")), !this.eat(v.comma))
27309
27309
  return i;
27310
27310
  }
27311
27311
  if (this.type === v.star) {
27312
27312
  var t = this.startNode();
27313
- return this.next(), this.expectContextual("as"), t.local = this.parseIdent(), this.checkLValSimple(t.local, pn), i.push(this.finishNode(t, "ImportNamespaceSpecifier")), i;
27313
+ return this.next(), this.expectContextual("as"), t.local = this.parseIdent(), this.checkLValSimple(t.local, fn), i.push(this.finishNode(t, "ImportNamespaceSpecifier")), i;
27314
27314
  }
27315
27315
  for (this.expect(v.braceL); !this.eat(v.braceR); ) {
27316
27316
  if (A)
@@ -27318,7 +27318,7 @@ Fe.parseImportSpecifiers = function() {
27318
27318
  else if (this.expect(v.comma), this.afterTrailingComma(v.braceR))
27319
27319
  break;
27320
27320
  var g = this.startNode();
27321
- g.imported = this.parseModuleExportName(), this.eatContextual("as") ? g.local = this.parseIdent() : (this.checkUnreserved(g.imported), g.local = g.imported), this.checkLValSimple(g.local, pn), i.push(this.finishNode(g, "ImportSpecifier"));
27321
+ g.imported = this.parseModuleExportName(), this.eatContextual("as") ? g.local = this.parseIdent() : (this.checkUnreserved(g.imported), g.local = g.imported), this.checkLValSimple(g.local, fn), i.push(this.finishNode(g, "ImportSpecifier"));
27322
27322
  }
27323
27323
  return i;
27324
27324
  };
@@ -27446,7 +27446,7 @@ vs.checkLValSimple = function(i, A, e) {
27446
27446
  var t = A !== eD;
27447
27447
  switch (i.type) {
27448
27448
  case "Identifier":
27449
- this.strict && this.reservedWordsStrictBind.test(i.name) && this.raiseRecoverable(i.start, (t ? "Binding " : "Assigning to ") + i.name + " in strict mode"), t && (A === pn && i.name === "let" && this.raiseRecoverable(i.start, "let is disallowed as a lexically bound name"), e && (Id(e, i.name) && this.raiseRecoverable(i.start, "Argument name clash"), e[i.name] = !0), A !== OY && this.declareName(i.name, A, i.start));
27449
+ this.strict && this.reservedWordsStrictBind.test(i.name) && this.raiseRecoverable(i.start, (t ? "Binding " : "Assigning to ") + i.name + " in strict mode"), t && (A === fn && i.name === "let" && this.raiseRecoverable(i.start, "let is disallowed as a lexically bound name"), e && (Id(e, i.name) && this.raiseRecoverable(i.start, "Argument name clash"), e[i.name] = !0), A !== OY && this.declareName(i.name, A, i.start));
27450
27450
  break;
27451
27451
  case "ChainExpression":
27452
27452
  this.raiseRecoverable(i.start, "Optional chaining cannot appear in left-hand side");
@@ -28030,7 +28030,7 @@ ja.treatFunctionsAsVarInScope = function(i) {
28030
28030
  };
28031
28031
  ja.declareName = function(i, A, e) {
28032
28032
  var t = !1;
28033
- if (A === pn) {
28033
+ if (A === fn) {
28034
28034
  var g = this.currentScope();
28035
28035
  t = g.lexical.indexOf(i) > -1 || g.functions.indexOf(i) > -1 || g.var.indexOf(i) > -1, g.lexical.push(i), this.inModule && g.flags & ll && delete this.undefinedExports[i];
28036
28036
  } else if (A === HY) {
@@ -28412,7 +28412,7 @@ we.regexp_eatRegExpIdentifierStart = function(i) {
28412
28412
  return i.advance(e), t === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(i, e) && (t = i.lastIntValue), s5(t) ? (i.lastIntValue = t, !0) : (i.pos = A, !1);
28413
28413
  };
28414
28414
  function s5(i) {
28415
- return mn(i, !0) || i === 36 || i === 95;
28415
+ return kn(i, !0) || i === 36 || i === 95;
28416
28416
  }
28417
28417
  we.regexp_eatRegExpIdentifierPart = function(i) {
28418
28418
  var A = i.pos, e = this.options.ecmaVersion >= 11, t = i.current(e);
@@ -28767,7 +28767,7 @@ rt.nextToken = function() {
28767
28767
  this.readToken(this.fullCharCodeAtPos());
28768
28768
  };
28769
28769
  rt.readToken = function(i) {
28770
- return mn(i, this.options.ecmaVersion >= 6) || i === 92 ? this.readWord() : this.getTokenFromCode(i);
28770
+ return kn(i, this.options.ecmaVersion >= 6) || i === 92 ? this.readWord() : this.getTokenFromCode(i);
28771
28771
  };
28772
28772
  rt.fullCharCodeAtPos = function() {
28773
28773
  var i = this.input.charCodeAt(this.pos);
@@ -28908,7 +28908,7 @@ rt.readToken_question = function() {
28908
28908
  };
28909
28909
  rt.readToken_numberSign = function() {
28910
28910
  var i = this.options.ecmaVersion, A = 35;
28911
- if (i >= 13 && (++this.pos, A = this.fullCharCodeAtPos(), mn(A, !0) || A === 92))
28911
+ if (i >= 13 && (++this.pos, A = this.fullCharCodeAtPos(), kn(A, !0) || A === 92))
28912
28912
  return this.finishToken(v.privateId, this.readWord1());
28913
28913
  this.raise(this.pos, "Unexpected character '" + La(A) + "'");
28914
28914
  };
@@ -29046,7 +29046,7 @@ rt.readRadixNumber = function(i) {
29046
29046
  var A = this.pos;
29047
29047
  this.pos += 2;
29048
29048
  var e = this.readInt(i);
29049
- return e == null && this.raise(this.start + 2, "Expected number in radix " + i), this.options.ecmaVersion >= 11 && this.input.charCodeAt(this.pos) === 110 ? (e = aT(this.input.slice(A, this.pos)), ++this.pos) : mn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(v.num, e);
29049
+ return e == null && this.raise(this.start + 2, "Expected number in radix " + i), this.options.ecmaVersion >= 11 && this.input.charCodeAt(this.pos) === 110 ? (e = aT(this.input.slice(A, this.pos)), ++this.pos) : kn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(v.num, e);
29050
29050
  };
29051
29051
  rt.readNumber = function(i) {
29052
29052
  var A = this.pos;
@@ -29056,9 +29056,9 @@ rt.readNumber = function(i) {
29056
29056
  var t = this.input.charCodeAt(this.pos);
29057
29057
  if (!e && !i && this.options.ecmaVersion >= 11 && t === 110) {
29058
29058
  var g = aT(this.input.slice(A, this.pos));
29059
- return ++this.pos, mn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(v.num, g);
29059
+ return ++this.pos, kn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(v.num, g);
29060
29060
  }
29061
- e && /[89]/.test(this.input.slice(A, this.pos)) && (e = !1), t === 46 && !e && (++this.pos, this.readInt(10), t = this.input.charCodeAt(this.pos)), (t === 69 || t === 101) && !e && (t = this.input.charCodeAt(++this.pos), (t === 43 || t === 45) && ++this.pos, this.readInt(10) === null && this.raise(A, "Invalid number")), mn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number");
29061
+ e && /[89]/.test(this.input.slice(A, this.pos)) && (e = !1), t === 46 && !e && (++this.pos, this.readInt(10), t = this.input.charCodeAt(this.pos)), (t === 69 || t === 101) && !e && (t = this.input.charCodeAt(++this.pos), (t === 43 || t === 45) && ++this.pos, this.readInt(10) === null && this.raise(A, "Invalid number")), kn(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number");
29062
29062
  var I = B5(this.input.slice(A, this.pos), e);
29063
29063
  return this.finishToken(v.num, I);
29064
29064
  };
@@ -29201,7 +29201,7 @@ rt.readWord1 = function() {
29201
29201
  var I = this.pos;
29202
29202
  this.input.charCodeAt(++this.pos) !== 117 && this.invalidStringToken(this.pos, "Expecting Unicode escape sequence \\uXXXX"), ++this.pos;
29203
29203
  var o = this.readCodePoint();
29204
- (A ? mn : cE)(o, t) || this.invalidStringToken(I, "Invalid Unicode escape"), i += La(o), e = this.pos;
29204
+ (A ? kn : cE)(o, t) || this.invalidStringToken(I, "Invalid Unicode escape"), i += La(o), e = this.pos;
29205
29205
  } else
29206
29206
  break;
29207
29207
  A = !1;
@@ -29227,7 +29227,7 @@ yg.acorn = {
29227
29227
  TokContext: Cs,
29228
29228
  tokContexts: Ii,
29229
29229
  isIdentifierChar: cE,
29230
- isIdentifierStart: mn,
29230
+ isIdentifierStart: kn,
29231
29231
  Token: WR,
29232
29232
  isNewLine: qE,
29233
29233
  lineBreak: As,
@@ -29273,7 +29273,7 @@ class Cd extends zA.Object3D {
29273
29273
  fontCastShadow: { m: "castShadow" },
29274
29274
  fontReceiveShadow: { m: "receiveShadow" },
29275
29275
  renderOrder: { m: "renderOrder" }
29276
- }, this._children = e.children ? new e.children() : new _C("children"), this._parent = new Bz(), this.addEventListener("added", this._rebuildParentUI), this.addEventListener("removed", this._rebuildParentUI), this._backgroundSide = new pJ("backgroundSide"), this._fontSide = new pJ("fontSide"), this._backgroundAlphaTest = new uJ("backgroundAlphaTest", 0.02), this._fontAlphaTest = new uJ("fontAlphaTest", 0.02), this._visible = new xz("visible", !0), this._backgroundCastShadow = new zu("backgroundCastShadow"), this._fontCastShadow = new zu("fontCastShadow"), this._backgroundReceiveShadow = new zu("backgroundReceiveShadow"), this._fontReceiveShadow = new zu("fontReceiveShadow"), this._renderOrder = new iz(), this._segments = e.segments ? new e.segments() : new NY(), this._bounds = e.bounds ? new e.bounds() : new _C("bounds"), this._order = new zz(), this._padding = new nz(), this._margin = new az(), this._position = new lY(), this._flexDirection = e.flexDirection ? new e.flexDirection() : new UR(), this._justifyContent = e.justifyContent ? new e.justifyContent() : new NR(), this._alignItems = e.alignItems ? new e.alignItems() : new MR(), this._display = new Dz("flex"), this._boxSizing = new Sz("border-box"), this._width = new $z(), this._height = new AZ(), this._backgroundColor = e.backgroundColor ? new e.backgroundColor() : new hY(), this._backgroundOpacity = new y0("backgroundOpacity", 0.5), this._backgroundImage = new Mz(), this._backgroundSize = new Uz("cover"), this._color = e.color ? new e.color() : new cl("color", "inherit"), this._fontOpacity = new y0("fontOpacity", "inherit"), this._whiteSpace = e.whiteSpace ? new e.whiteSpace() : new RY(), this._fontFamily = e.fontFamily ? new e.fontFamily() : new GY(), this._fontStyle = e.fontStyle ? new e.fontStyle() : new pY("normal"), this._fontWeight = e.fontWeight ? new e.fontWeight() : new fY(), this._fontSize = e.fontSize ? new e.fontSize() : new FZ(), this._lineHeight = e.lineHeight ? new e.lineHeight() : new MY(), this._fontKerning = e.fontKerning ? new e.fontKerning() : new Hy(), this._letterSpacing = e.letterSpacing ? new e.letterSpacing() : new UY(), this._overflow = new Kz("visible"), this._borderRadius = new qz(0), this._borderWidth = new Lz(0), this._borderColor = new cl("borderColor", 16711935), this._borderOpacity = new y0("borderOpacity", 1), this._font = new uz(), this._lineBreak = e.lineBreak ? new e.lineBreak() : new _C("lineBreak"), this._textContent = e.textContent ? new e.textContent() : new uY(), this._glyphs = e.glyphs ? new e.glyphs() : new _C("glyphs"), this._inlines = e.inlines ? new e.inlines() : new _C("inlines"), this._layouter = e.layouter ? new e.layouter() : new _C("layouter"), this._inlineJustificator = new Yz(), this._textAlign = e.textAlign ? new e.textAlign() : new RR(), this._autoSize = e.autoSize ? new e.autoSize() : new _C("autoSize"), this._renderer = e.renderer ? new e.renderer() : new _C("renderer"), this._offset = new gz(), this._invertAlpha = new KZ(), this._fontSmooth = e.fontSmooth ? new e.fontSmooth() : new Iz(), this._components = [
29276
+ }, this._children = e.children ? new e.children() : new OC("children"), this._parent = new Bz(), this.addEventListener("added", this._rebuildParentUI), this.addEventListener("removed", this._rebuildParentUI), this._backgroundSide = new pJ("backgroundSide"), this._fontSide = new pJ("fontSide"), this._backgroundAlphaTest = new uJ("backgroundAlphaTest", 0.02), this._fontAlphaTest = new uJ("fontAlphaTest", 0.02), this._visible = new xz("visible", !0), this._backgroundCastShadow = new zu("backgroundCastShadow"), this._fontCastShadow = new zu("fontCastShadow"), this._backgroundReceiveShadow = new zu("backgroundReceiveShadow"), this._fontReceiveShadow = new zu("fontReceiveShadow"), this._renderOrder = new iz(), this._segments = e.segments ? new e.segments() : new NY(), this._bounds = e.bounds ? new e.bounds() : new OC("bounds"), this._order = new zz(), this._padding = new nz(), this._margin = new az(), this._position = new lY(), this._flexDirection = e.flexDirection ? new e.flexDirection() : new UR(), this._justifyContent = e.justifyContent ? new e.justifyContent() : new NR(), this._alignItems = e.alignItems ? new e.alignItems() : new MR(), this._display = new Dz("flex"), this._boxSizing = new Sz("border-box"), this._width = new $z(), this._height = new AZ(), this._backgroundColor = e.backgroundColor ? new e.backgroundColor() : new hY(), this._backgroundOpacity = new y0("backgroundOpacity", 0.5), this._backgroundImage = new Mz(), this._backgroundSize = new Uz("cover"), this._color = e.color ? new e.color() : new cl("color", "inherit"), this._fontOpacity = new y0("fontOpacity", "inherit"), this._whiteSpace = e.whiteSpace ? new e.whiteSpace() : new RY(), this._fontFamily = e.fontFamily ? new e.fontFamily() : new GY(), this._fontStyle = e.fontStyle ? new e.fontStyle() : new pY("normal"), this._fontWeight = e.fontWeight ? new e.fontWeight() : new fY(), this._fontSize = e.fontSize ? new e.fontSize() : new FZ(), this._lineHeight = e.lineHeight ? new e.lineHeight() : new MY(), this._fontKerning = e.fontKerning ? new e.fontKerning() : new Hy(), this._letterSpacing = e.letterSpacing ? new e.letterSpacing() : new UY(), this._overflow = new Kz("visible"), this._borderRadius = new qz(0), this._borderWidth = new Lz(0), this._borderColor = new cl("borderColor", 16711935), this._borderOpacity = new y0("borderOpacity", 1), this._font = new uz(), this._lineBreak = e.lineBreak ? new e.lineBreak() : new OC("lineBreak"), this._textContent = e.textContent ? new e.textContent() : new uY(), this._glyphs = e.glyphs ? new e.glyphs() : new OC("glyphs"), this._inlines = e.inlines ? new e.inlines() : new OC("inlines"), this._layouter = e.layouter ? new e.layouter() : new OC("layouter"), this._inlineJustificator = new Yz(), this._textAlign = e.textAlign ? new e.textAlign() : new RR(), this._autoSize = e.autoSize ? new e.autoSize() : new OC("autoSize"), this._renderer = e.renderer ? new e.renderer() : new OC("renderer"), this._offset = new gz(), this._invertAlpha = new KZ(), this._fontSmooth = e.fontSmooth ? new e.fontSmooth() : new Iz(), this._components = [
29277
29277
  this._textContent,
29278
29278
  this._children,
29279
29279
  this._parent,
@@ -30936,32 +30936,32 @@ class cT extends zA.Mesh {
30936
30936
  if (g = e.width ? e.width : 1, I = e.height ? e.height : 1, e.top) {
30937
30937
  if (e.left) {
30938
30938
  const Q = new zA.PlaneGeometry(e.left * g, e.top * I, 1, 1);
30939
- LC(Q, 0, e.left, 1 - e.top, 1), Q.translate(e.left * g / 2, -e.top * I / 2, 0), t.topLeft = Q;
30939
+ YC(Q, 0, e.left, 1 - e.top, 1), Q.translate(e.left * g / 2, -e.top * I / 2, 0), t.topLeft = Q;
30940
30940
  }
30941
30941
  const B = new zA.PlaneGeometry(1, e.top * I, 1, 1);
30942
- if (LC(B, e.left, 1 - e.right, 1 - e.top, 1), B.translate(0, -e.top * I / 2, 0), t.top = B, e.right) {
30942
+ if (YC(B, e.left, 1 - e.right, 1 - e.top, 1), B.translate(0, -e.top * I / 2, 0), t.top = B, e.right) {
30943
30943
  const Q = new zA.PlaneGeometry(e.right * g, e.top * I, 1, 1);
30944
- LC(Q, 1 - e.right, 1, 1 - e.top, 1), Q.translate(-e.right * g / 2, -e.top * I / 2, 0), t.topRight = Q;
30944
+ YC(Q, 1 - e.right, 1, 1 - e.top, 1), Q.translate(-e.right * g / 2, -e.top * I / 2, 0), t.topRight = Q;
30945
30945
  }
30946
30946
  }
30947
30947
  if (e.left) {
30948
30948
  const B = new zA.PlaneGeometry(e.left * g, 1, 1, 1);
30949
- LC(B, 0, e.left, e.bottom, 1 - e.top), B.translate(e.left * g / 2, 0, 0), t.left = B;
30949
+ YC(B, 0, e.left, e.bottom, 1 - e.top), B.translate(e.left * g / 2, 0, 0), t.left = B;
30950
30950
  }
30951
30951
  const a = new zA.PlaneGeometry(1, 1, 1, 1);
30952
- if (LC(a, e.left, 1 - e.right, e.bottom, 1 - e.top), t.middle = a, e.right) {
30952
+ if (YC(a, e.left, 1 - e.right, e.bottom, 1 - e.top), t.middle = a, e.right) {
30953
30953
  const B = new zA.PlaneGeometry(e.right * g, 1, 1, 1);
30954
- LC(B, 1 - e.right, 1, e.bottom, 1 - e.top), B.translate(-e.right * g / 2, 0, 0), t.right = B;
30954
+ YC(B, 1 - e.right, 1, e.bottom, 1 - e.top), B.translate(-e.right * g / 2, 0, 0), t.right = B;
30955
30955
  }
30956
30956
  if (e.bottom) {
30957
30957
  if (e.left) {
30958
30958
  const Q = new zA.PlaneGeometry(e.left * g, e.bottom * I, 1, 1);
30959
- LC(Q, 0, e.left, 0, e.bottom), Q.translate(e.left * g / 2, e.bottom * I / 2, 0), t.bottomLeft = Q;
30959
+ YC(Q, 0, e.left, 0, e.bottom), Q.translate(e.left * g / 2, e.bottom * I / 2, 0), t.bottomLeft = Q;
30960
30960
  }
30961
30961
  const B = new zA.PlaneGeometry(1, e.bottom * I, 1, 1);
30962
- if (LC(B, e.left, 1 - e.right, 0, e.bottom), B.translate(0, e.bottom * I / 2, 0), t.bottom = B, e.right) {
30962
+ if (YC(B, e.left, 1 - e.right, 0, e.bottom), B.translate(0, e.bottom * I / 2, 0), t.bottom = B, e.right) {
30963
30963
  const Q = new zA.PlaneGeometry(e.right * g, e.bottom * I, 1, 1);
30964
- LC(Q, 1 - e.right, 1, 0, e.bottom), Q.translate(-e.right * g / 2, e.bottom * I / 2, 0), t.bottomRight = Q;
30964
+ YC(Q, 1 - e.right, 1, 0, e.bottom), Q.translate(-e.right * g / 2, e.bottom * I / 2, 0), t.bottomRight = Q;
30965
30965
  }
30966
30966
  }
30967
30967
  }
@@ -31016,7 +31016,7 @@ const Z5 = {
31016
31016
  bottom: { x: 1 },
31017
31017
  middle: { x: 1, y: 1 }
31018
31018
  };
31019
- function LC(i, A, e, t, g) {
31019
+ function YC(i, A, e, t, g) {
31020
31020
  const I = e - A, o = g - t, s = i.attributes.uv;
31021
31021
  for (let n = 0; n < s.count; n++) {
31022
31022
  const a = s.getX(n), B = s.getY(n);
@@ -32412,12 +32412,12 @@ function tB(i, A) {
32412
32412
  return !0;
32413
32413
  }
32414
32414
  const JT = CA("debugdefines");
32415
- Vy('if(!globalThis[""3.32.5-alpha""]) globalThis[""3.32.5-alpha""] = "0.0.0";');
32415
+ Vy('if(!globalThis[""3.32.6-alpha""]) globalThis[""3.32.6-alpha""] = "0.0.0";');
32416
32416
  Vy('if(!globalThis[""undefined""]) globalThis[""undefined""] = "unknown";');
32417
- Vy('globalThis["__NEEDLE_ENGINE_VERSION__"] = "3.32.5-alpha";');
32417
+ Vy('globalThis["__NEEDLE_ENGINE_VERSION__"] = "3.32.6-alpha";');
32418
32418
  Vy('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');
32419
- const Bn = "3.32.5-alpha", gU = "undefined";
32420
- JT && console.log(`Engine version: ${Bn} (generator: ${gU})`);
32419
+ const En = "3.32.6-alpha", gU = "undefined";
32420
+ JT && console.log(`Engine version: ${En} (generator: ${gU})`);
32421
32421
  const Ma = "needle_isActiveInHierarchy", mQ = "builtin_components", $p = "needle_editor_guid";
32422
32422
  function Vy(i) {
32423
32423
  try {
@@ -32455,13 +32455,13 @@ The script will be ignored. Please make sure your component extends "Behaviour"
32455
32455
  }
32456
32456
  e.context = i, Gh(e.gameObject), IU(e, i);
32457
32457
  } catch (e) {
32458
- console.error(e), In(ei[A], i), ei.splice(A, 1), A--;
32458
+ console.error(e), sn(ei[A], i), ei.splice(A, 1), A--;
32459
32459
  }
32460
32460
  for (let A = 0; A < ei.length; A++)
32461
32461
  try {
32462
32462
  const e = ei[A];
32463
32463
  if (e.destroyed) {
32464
- In(ei[A], i), ei.splice(A, 1), A--;
32464
+ sn(ei[A], i), ei.splice(A, 1), A--;
32465
32465
  continue;
32466
32466
  }
32467
32467
  if (e.registering)
@@ -32472,7 +32472,7 @@ The script will be ignored. Please make sure your component extends "Behaviour"
32472
32472
  }
32473
32473
  e.__internalAwake !== void 0 && (e.gameObject || console.error("MISSING GAMEOBJECT", e, e.gameObject), Gh(e.gameObject), e.activeAndEnabled && tB(e.__internalAwake.bind(e)));
32474
32474
  } catch (e) {
32475
- console.error(e), In(ei[A], i), ei.splice(A, 1), A--;
32475
+ console.error(e), sn(ei[A], i), ei.splice(A, 1), A--;
32476
32476
  }
32477
32477
  for (let A = 0; A < ei.length; A++)
32478
32478
  try {
@@ -32481,7 +32481,7 @@ The script will be ignored. Please make sure your component extends "Behaviour"
32481
32481
  continue;
32482
32482
  e.__internalEnable !== void 0 && (e.enabled = !0, tB(e.__internalEnable.bind(e)));
32483
32483
  } catch (e) {
32484
- console.error(e), In(ei[A], i), ei.splice(A, 1), A--;
32484
+ console.error(e), sn(ei[A], i), ei.splice(A, 1), A--;
32485
32485
  }
32486
32486
  for (let A = 0; A < ei.length; A++)
32487
32487
  try {
@@ -32490,7 +32490,7 @@ The script will be ignored. Please make sure your component extends "Behaviour"
32490
32490
  continue;
32491
32491
  i.new_script_start.push(e);
32492
32492
  } catch (e) {
32493
- console.error(e), In(ei[A], i), ei.splice(A, 1), A--;
32493
+ console.error(e), sn(ei[A], i), ei.splice(A, 1), A--;
32494
32494
  }
32495
32495
  ei.length = 0;
32496
32496
  for (const A of i.new_scripts_post_setup_callbacks)
@@ -32499,7 +32499,7 @@ The script will be ignored. Please make sure your component extends "Behaviour"
32499
32499
  }
32500
32500
  }
32501
32501
  function C9(i) {
32502
- i && (i.__internalDisable(!0), In(i, i.context));
32502
+ i && (i.__internalDisable(!0), sn(i, i.context));
32503
32503
  }
32504
32504
  function vT(i, A) {
32505
32505
  for (let e = 0; e < i.new_script_start.length; e++)
@@ -32509,13 +32509,13 @@ function vT(i, A) {
32509
32509
  continue;
32510
32510
  tB(t.__internalAwake.bind(t)), t.enabled && (tB(t.__internalEnable.bind(t)), tB(t.__internalStart.bind(t)), i.new_script_start.splice(e, 1), e--);
32511
32511
  } catch (t) {
32512
- console.error(t), In(i.new_script_start[e], i), i.new_script_start.splice(e, 1), e--;
32512
+ console.error(t), sn(i.new_script_start[e], i), i.new_script_start.splice(e, 1), e--;
32513
32513
  }
32514
32514
  }
32515
32515
  function IU(i, A) {
32516
32516
  A.scripts.indexOf(i) === -1 && (A.scripts.push(i), i.earlyUpdate && A.scripts_earlyUpdate.push(i), i.update && A.scripts_update.push(i), i.lateUpdate && A.scripts_lateUpdate.push(i), i.onBeforeRender && A.scripts_onBeforeRender.push(i), i.onAfterRender && A.scripts_onAfterRender.push(i), i.onPausedChanged && A.scripts_pausedChanged.push(i), U0(i, null) && A.new_scripts_xr.push(i), U0(i, "immersive-vr") && A.scripts_immersive_vr.push(i), U0(i, "immersive-ar") && A.scripts_immersive_ar.push(i));
32517
32517
  }
32518
- function In(i, A) {
32518
+ function sn(i, A) {
32519
32519
  No(i, A.new_scripts), No(i, A.new_script_start), No(i, A.scripts), No(i, A.scripts_earlyUpdate), No(i, A.scripts_update), No(i, A.scripts_lateUpdate), No(i, A.scripts_onBeforeRender), No(i, A.scripts_onAfterRender), No(i, A.scripts_pausedChanged), No(i, A.new_scripts_xr), No(i, A.scripts_immersive_vr), No(i, A.scripts_immersive_ar), A.stopAllCoroutinesFrom(i);
32520
32520
  }
32521
32521
  function No(i, A) {
@@ -32752,7 +32752,7 @@ function oU(i, A, e = !0) {
32752
32752
  if (!i)
32753
32753
  return;
32754
32754
  const t = i;
32755
- if (fC(i, e), !A) {
32755
+ if (DC(i, e), !A) {
32756
32756
  console.warn("Can not send destroy: No networking connection provided", i.guid);
32757
32757
  return;
32758
32758
  }
@@ -32776,7 +32776,7 @@ function w9(i) {
32776
32776
  i.connection.beginListen("instance-destroyed", (A) => {
32777
32777
  sD && console.log("[Remote] Destroyed", i.scene, A);
32778
32778
  const e = tw(A.guid, i.scene);
32779
- e && fC(e);
32779
+ e && DC(e);
32780
32780
  });
32781
32781
  }
32782
32782
  class eQA {
@@ -32835,14 +32835,14 @@ function m9(i) {
32835
32835
  console.warn("could not find object that was instantiated: " + A.guid);
32836
32836
  return;
32837
32837
  }
32838
- const t = new kn();
32838
+ const t = new MC();
32839
32839
  A.position && (t.position = new y(A.position.x, A.position.y, A.position.z)), A.rotation && (t.rotation = new UA(A.rotation.x, A.rotation.y, A.rotation.z, A.rotation.w)), A.scale && (t.scale = new y(A.scale.x, A.scale.y, A.scale.z)), t.parent = A.parent, A.seed && (t.idProvider = new xg(A.seed)), t.visible = A.visible, t.context = i, sD && i.alias && console.log("[Remote] instantiate in: " + i.alias);
32840
32840
  const g = iw(e, t);
32841
32841
  g && (A.parent === "scene" && i.scene.add(g), sD && console.log("[Remote] new instance", "gameobject:", g == null ? void 0 : g.guid, e));
32842
32842
  });
32843
32843
  }
32844
32844
  function k9(i, A) {
32845
- const e = sU(), t = A ?? new kn();
32845
+ const e = sU(), t = A ?? new MC();
32846
32846
  t.idProvider = new xg(e);
32847
32847
  const g = iw(i, t);
32848
32848
  return { seed: e, instance: g };
@@ -32984,7 +32984,7 @@ function J9(i) {
32984
32984
  const A = i.gameObject.userData.components.indexOf(i);
32985
32985
  i.gameObject.userData.components.splice(A, 1);
32986
32986
  }
32987
- i.__internalDisable && i.__internalDisable(), In(i, i.context ?? Je.Current), i.destroy(), i.gameObject = null;
32987
+ i.__internalDisable && i.__internalDisable(), sn(i, i.context ?? Je.Current), i.destroy(), i.gameObject = null;
32988
32988
  }
32989
32989
  let vJ = !1;
32990
32990
  function jT(i, A, e) {
@@ -33307,7 +33307,7 @@ class aU extends pA {
33307
33307
  const d = new Ni(75e-4, 75e-4, 0.5, 3);
33308
33308
  d.translate(0, 0.25, 0);
33309
33309
  function p(_, J) {
33310
- const L = new gn(_, 75e-4, 3, 64, J * Math.PI * 2);
33310
+ const L = new on(_, 75e-4, 3, 64, J * Math.PI * 2);
33311
33311
  return L.rotateY(Math.PI / 2), L.rotateX(Math.PI / 2), L;
33312
33312
  }
33313
33313
  function f() {
@@ -33331,7 +33331,7 @@ class aU extends pA {
33331
33331
  [new uA(d, s), null, [Math.PI / 2, 0, 0]]
33332
33332
  ],
33333
33333
  XYZ: [
33334
- [new uA(new an(0.1, 0), B.clone()), [0, 0, 0]]
33334
+ [new uA(new Bn(0.1, 0), B.clone()), [0, 0, 0]]
33335
33335
  ],
33336
33336
  XY: [
33337
33337
  [new uA(new Vt(0.15, 0.15, 0.01), a.clone()), [0.15, 0.15, 0]]
@@ -33356,7 +33356,7 @@ class aU extends pA {
33356
33356
  [new uA(new Ni(0.2, 0, 0.6, 4), t), [0, 0, -0.3], [-Math.PI / 2, 0, 0]]
33357
33357
  ],
33358
33358
  XYZ: [
33359
- [new uA(new an(0.2, 0), t)]
33359
+ [new uA(new Bn(0.2, 0), t)]
33360
33360
  ],
33361
33361
  XY: [
33362
33362
  [new uA(new Vt(0.2, 0.2, 0.01), t), [0.15, 0.15, 0]]
@@ -33369,10 +33369,10 @@ class aU extends pA {
33369
33369
  ]
33370
33370
  }, G = {
33371
33371
  START: [
33372
- [new uA(new an(0.01, 2), g), null, null, null, "helper"]
33372
+ [new uA(new Bn(0.01, 2), g), null, null, null, "helper"]
33373
33373
  ],
33374
33374
  END: [
33375
- [new uA(new an(0.01, 2), g), null, null, null, "helper"]
33375
+ [new uA(new Bn(0.01, 2), g), null, null, null, "helper"]
33376
33376
  ],
33377
33377
  DELTA: [
33378
33378
  [new Ki(f(), g), null, null, null, "helper"]
@@ -33411,16 +33411,16 @@ class aU extends pA {
33411
33411
  [new uA(new Ks(0.25, 10, 8), t)]
33412
33412
  ],
33413
33413
  X: [
33414
- [new uA(new gn(0.5, 0.1, 4, 24), t), [0, 0, 0], [0, -Math.PI / 2, -Math.PI / 2]]
33414
+ [new uA(new on(0.5, 0.1, 4, 24), t), [0, 0, 0], [0, -Math.PI / 2, -Math.PI / 2]]
33415
33415
  ],
33416
33416
  Y: [
33417
- [new uA(new gn(0.5, 0.1, 4, 24), t), [0, 0, 0], [Math.PI / 2, 0, 0]]
33417
+ [new uA(new on(0.5, 0.1, 4, 24), t), [0, 0, 0], [Math.PI / 2, 0, 0]]
33418
33418
  ],
33419
33419
  Z: [
33420
- [new uA(new gn(0.5, 0.1, 4, 24), t), [0, 0, 0], [0, 0, -Math.PI / 2]]
33420
+ [new uA(new on(0.5, 0.1, 4, 24), t), [0, 0, 0], [0, 0, -Math.PI / 2]]
33421
33421
  ],
33422
33422
  E: [
33423
- [new uA(new gn(0.75, 0.1, 2, 24), t)]
33423
+ [new uA(new on(0.75, 0.1, 2, 24), t)]
33424
33424
  ]
33425
33425
  }, K = {
33426
33426
  X: [
@@ -33574,7 +33574,7 @@ pA.prototype.setActive = function(i) {
33574
33574
  this.visible = i;
33575
33575
  };
33576
33576
  pA.prototype.destroy = function() {
33577
- fC(this);
33577
+ DC(this);
33578
33578
  };
33579
33579
  pA.prototype.addComponent = function(i) {
33580
33580
  return WT(this, i);
@@ -33668,7 +33668,7 @@ Object.getOwnPropertyDescriptor(pA.prototype, "worldUp") || Object.definePropert
33668
33668
  });
33669
33669
  U9(pA);
33670
33670
  const Dl = Symbol("NEEDLE_NEED_UPDATE_INSTANCE"), VT = Symbol("isUsingInstancing"), zT = Symbol("instancingRenderer"), aG = Symbol("instancingAutoUpdateBounds");
33671
- class lC {
33671
+ class dC {
33672
33672
  /** Is this object rendered using a InstancedMesh */
33673
33673
  static isUsingInstancing(A) {
33674
33674
  return A[VT] === !0;
@@ -33680,7 +33680,7 @@ class lC {
33680
33680
  return A[zT] || null;
33681
33681
  }
33682
33682
  setAutoUpdateBounds(A, e) {
33683
- const t = lC.getRenderer(A);
33683
+ const t = dC.getRenderer(A);
33684
33684
  t && (t[aG] = e);
33685
33685
  }
33686
33686
  // TODO: change this so it does not set matrix world directly but some flag that is only used by instancing
@@ -33688,7 +33688,7 @@ class lC {
33688
33688
  static markDirty(A, e = !0) {
33689
33689
  if (A && (this.isUsingInstancing(A) && (A[Dl] = !0, A.matrixWorldNeedsUpdate = !0), e))
33690
33690
  for (const t of A.children)
33691
- lC.markDirty(t, !0);
33691
+ dC.markDirty(t, !0);
33692
33692
  }
33693
33693
  }
33694
33694
  const ad = CA("gizmos"), tI = CA("debugextension"), nD = CA("debugresolvedependencies"), O9 = ["/extensions/", "extensions/"], P9 = [
@@ -33843,7 +33843,7 @@ class Z9 {
33843
33843
  return null;
33844
33844
  }
33845
33845
  }
33846
- const $C = CA("debugserializer");
33846
+ const en = CA("debugserializer");
33847
33847
  class X9 {
33848
33848
  constructor() {
33849
33849
  r(this, "typeMap", {});
@@ -33854,7 +33854,7 @@ class X9 {
33854
33854
  return;
33855
33855
  console.warn("Type " + A + " is already registered", e, this.typeMap[A]);
33856
33856
  }
33857
- $C && console.log("Register type serializer for " + A, e), this.typeMap[A] = e;
33857
+ en && console.log("Register type serializer for " + A, e), this.typeMap[A] = e;
33858
33858
  }
33859
33859
  getSerializer(A) {
33860
33860
  if (A)
@@ -33865,27 +33865,27 @@ class X9 {
33865
33865
  if (e > 20)
33866
33866
  return;
33867
33867
  if (!A || !A.constructor) {
33868
- $C && console.log("invalid type");
33868
+ en && console.log("invalid type");
33869
33869
  return;
33870
33870
  }
33871
33871
  const t = A.name ?? ((C = A.constructor) == null ? void 0 : C.name);
33872
33872
  if (!t) {
33873
- $C && console.log("invalid name", t);
33873
+ en && console.log("invalid name", t);
33874
33874
  return;
33875
33875
  }
33876
33876
  const g = this.getSerializer(t);
33877
33877
  if (g !== void 0)
33878
- return $C && console.log("FOUND " + t, A.name, A.constructor.name, g, this.typeMap), g;
33878
+ return en && console.log("FOUND " + t, A.name, A.constructor.name, g, this.typeMap), g;
33879
33879
  const I = Object.getPrototypeOf(A);
33880
33880
  if (!(I.prototype || I.constructor)) {
33881
- $C && console.warn("No prototype for " + t, A, A.name, A.prototype, A.constructor.name);
33881
+ en && console.warn("No prototype for " + t, A, A.name, A.prototype, A.constructor.name);
33882
33882
  return;
33883
33883
  }
33884
33884
  const s = I.prototype ?? I.constructor;
33885
33885
  if (s !== A) {
33886
33886
  const n = this.getSerializerForConstructor(s, ++e);
33887
33887
  if (n) {
33888
- $C && console.log("FOUND " + s.constructor.name, s.name, s, n);
33888
+ en && console.log("FOUND " + s.constructor.name, s.name, s, n);
33889
33889
  const a = s.name ?? s.constructor.name;
33890
33890
  a === "Function" ? console.error("Registering Function is not allowed, something went wrong", A, s, n) : this.register(a, n);
33891
33891
  }
@@ -33991,7 +33991,7 @@ function QG(i, A, e) {
33991
33991
  return a ? EG(s, a, e, void 0, i[g]) : EG(s, C, e, void 0, i[g]);
33992
33992
  };
33993
33993
  const o = t[g], s = A[g];
33994
- if ($C && console.log(g, s, i, o), !(i[g] !== void 0 && s === void 0) && (e.type = void 0, e.path = g, e.serializable = o, !(i.onBeforeDeserializeMember !== void 0 && i.onBeforeDeserializeMember(g, s, e) === !0))) {
33994
+ if (en && console.log(g, s, i, o), !(i[g] !== void 0 && s === void 0) && (e.type = void 0, e.path = g, e.serializable = o, !(i.onBeforeDeserializeMember !== void 0 && i.onBeforeDeserializeMember(g, s, e) === !0))) {
33995
33995
  if (o === null)
33996
33996
  i[g] = s;
33997
33997
  else {
@@ -34029,7 +34029,7 @@ function t6(i, A, e) {
34029
34029
  const C = A[o];
34030
34030
  if ((e == null ? void 0 : e.getDefinedKey(t, o)) === !1) {
34031
34031
  const n = o.charAt(0).toUpperCase() + o.slice(1);
34032
- e.getDefinedKey(t, n) && (dn(ws.Warn, '<strong>Please rename</strong> "' + n + '" to "' + o + '" in ' + t), console.warn('Please use lowercase for field: "' + n + '" in ' + t, C, i));
34032
+ e.getDefinedKey(t, n) && (un(ws.Warn, '<strong>Please rename</strong> "' + n + '" to "' + o + '" in ' + t), console.warn('Please use lowercase for field: "' + n + '" in ' + t, C, i));
34033
34033
  continue;
34034
34034
  }
34035
34035
  if (C != null) {
@@ -34037,7 +34037,7 @@ function t6(i, A, e) {
34037
34037
  if (C.could_not_resolve)
34038
34038
  continue;
34039
34039
  if (!(s !== void 0 && Object.keys(s).length > 1)) {
34040
- dn(ws.Warn, `<strong>Missing serialization for object reference!</strong>
34040
+ un(ws.Warn, `<strong>Missing serialization for object reference!</strong>
34041
34041
 
34042
34042
  Please change to:
34043
34043
  @serializable(Object3D)
@@ -34049,7 +34049,7 @@ in script ${t}.ts
34049
34049
  }
34050
34050
  }
34051
34051
  if (typeof s == "string" && (C.endsWith(".gltf") || C.endsWith(".glb"))) {
34052
- dn(ws.Warn, `<strong>Missing serialization for object reference!</strong>
34052
+ un(ws.Warn, `<strong>Missing serialization for object reference!</strong>
34053
34053
 
34054
34054
  Please change to:
34055
34055
  @serializable(AssetReference)
@@ -34068,14 +34068,14 @@ function i6(i, A) {
34068
34068
  if (typeof t == "object" && t !== null && t !== void 0) {
34069
34069
  const g = i[e];
34070
34070
  if (!g) {
34071
- $C && console.log(e, "is undefined on", i);
34071
+ en && console.log(e, "is undefined on", i);
34072
34072
  continue;
34073
34073
  }
34074
34074
  for (const I of Object.keys(t))
34075
34075
  if (g[I] === void 0 && PJ(t[I]) && !PJ(g)) {
34076
34076
  const s = g6(g, I);
34077
34077
  if (s && ((s == null ? void 0 : s.writable) === void 0 || (s == null ? void 0 : s.writable) === !1) && s.set === void 0) {
34078
- $C && console.warn('Property is not writable "' + I + '"', g, s, t[I], g[I]);
34078
+ en && console.warn('Property is not writable "' + I + '"', g, s, t[I], g[I]);
34079
34079
  continue;
34080
34080
  }
34081
34081
  g[I] = t[I];
@@ -34378,7 +34378,7 @@ function $t(i) {
34378
34378
  }
34379
34379
  }
34380
34380
  function BQ(i) {
34381
- i && ((iB || e_() || ew) && console.warn("🧨 FREE", i), i instanceof ImageBitmap ? i.close() : i instanceof nn ? i.data = null : i.dispose());
34381
+ i && ((iB || e_() || ew) && console.warn("🧨 FREE", i), i instanceof ImageBitmap ? i.close() : i instanceof rn ? i.data = null : i.dispose());
34382
34382
  }
34383
34383
  function B6(i) {
34384
34384
  (i instanceof uA || i instanceof Ds) && (i.material = null, i.geometry = null);
@@ -34455,7 +34455,7 @@ try {
34455
34455
  }
34456
34456
  const If = CA("debuggetcomponent"), of = CA("debuginstantiate");
34457
34457
  var c6 = /* @__PURE__ */ ((i) => (i[i.None = 0] = "None", i[i.HideInHierarchy = 1] = "HideInHierarchy", i[i.HideInInspector = 2] = "HideInInspector", i[i.DontSaveInEditor = 4] = "DontSaveInEditor", i[i.NotEditable = 8] = "NotEditable", i[i.DontSaveInBuild = 16] = "DontSaveInBuild", i[i.DontUnloadUnusedAsset = 32] = "DontUnloadUnusedAsset", i[i.DontSave = 52] = "DontSave", i[i.HideAndDontSave = 61] = "HideAndDontSave", i))(c6 || {});
34458
- class kn {
34458
+ class MC {
34459
34459
  constructor() {
34460
34460
  r(this, "idProvider");
34461
34461
  r(this, "parent");
@@ -34466,6 +34466,16 @@ class kn {
34466
34466
  r(this, "visible");
34467
34467
  r(this, "context");
34468
34468
  }
34469
+ clone() {
34470
+ var e, t, g;
34471
+ const A = new MC();
34472
+ return A.idProvider = this.idProvider, A.parent = this.parent, A.keepWorldPosition = this.keepWorldPosition, A.position = (e = this.position) == null ? void 0 : e.clone(), A.rotation = (t = this.rotation) == null ? void 0 : t.clone(), A.scale = (g = this.scale) == null ? void 0 : g.clone(), A;
34473
+ }
34474
+ /** Copy fields from another object, clone field references */
34475
+ cloneAssign(A) {
34476
+ var e, t, g;
34477
+ this.idProvider = A.idProvider, this.parent = A.parent, this.keepWorldPosition = A.keepWorldPosition, this.position = (e = A.position) == null ? void 0 : e.clone(), this.rotation = (t = A.rotation) == null ? void 0 : t.clone(), this.scale = (g = A.scale) == null ? void 0 : g.clone();
34478
+ }
34469
34479
  }
34470
34480
  function rd(i) {
34471
34481
  return i.visible;
@@ -34480,7 +34490,7 @@ function l6(i, A) {
34480
34490
  i[VT] = A;
34481
34491
  }
34482
34492
  function cU(i) {
34483
- return lC.isUsingInstancing(i);
34493
+ return dC.isUsingInstancing(i);
34484
34494
  }
34485
34495
  function tw(i, A) {
34486
34496
  return El(i, A, !0, !0);
@@ -34492,7 +34502,7 @@ function dE(i) {
34492
34502
  function d6(i, A) {
34493
34503
  i[o_] = A;
34494
34504
  }
34495
- function fC(i, A = !0, e = !1) {
34505
+ function DC(i, A = !0, e = !1) {
34496
34506
  const t = [];
34497
34507
  s_(i, A, e, !0, t);
34498
34508
  for (const g of t)
@@ -34569,7 +34579,7 @@ function iw(i, A = null) {
34569
34579
  if (i === null)
34570
34580
  return null;
34571
34581
  let e = null;
34572
- A !== null && (A.x !== void 0 ? (e = new kn(), e.position = A) : e = A);
34582
+ A !== null && (A.x !== void 0 ? (e = new MC(), e.position = A) : e = A), console.log(e == null ? void 0 : e.position);
34573
34583
  let t = Je.Current;
34574
34584
  e != null && e.context && (t = e.context), If && t.alias && console.log("context", t.alias), e && !e.idProvider && (e.idProvider = new xg(Date.now()));
34575
34585
  const g = [], I = {}, o = {}, s = a_(t, i, e, g, I, o);
@@ -35347,13 +35357,13 @@ class F6 {
35347
35357
  r(this, "isUp", !1);
35348
35358
  }
35349
35359
  }
35350
- const q0 = 2, oC = 4, on = 4, hU = 4, Ba = new Int32Array(2), ZJ = new Float32Array(Ba.buffer), XJ = new Float64Array(Ba.buffer), tp = new Uint16Array(new Uint8Array([1, 0]).buffer)[0] === 1;
35351
- class fn {
35360
+ const q0 = 2, oC = 4, Cn = 4, hU = 4, Ba = new Int32Array(2), ZJ = new Float32Array(Ba.buffer), XJ = new Float64Array(Ba.buffer), tp = new Uint16Array(new Uint8Array([1, 0]).buffer)[0] === 1;
35361
+ class Dn {
35352
35362
  constructor(A, e) {
35353
35363
  this.low = A | 0, this.high = e | 0;
35354
35364
  }
35355
35365
  static create(A, e) {
35356
- return A == 0 && e == 0 ? fn.ZERO : new fn(A, e);
35366
+ return A == 0 && e == 0 ? Dn.ZERO : new Dn(A, e);
35357
35367
  }
35358
35368
  toFloat64() {
35359
35369
  return (this.low >>> 0) + this.high * 4294967296;
@@ -35362,7 +35372,7 @@ class fn {
35362
35372
  return this.low == A.low && this.high == A.high;
35363
35373
  }
35364
35374
  }
35365
- fn.ZERO = new fn(0, 0);
35375
+ Dn.ZERO = new Dn(0, 0);
35366
35376
  var dG;
35367
35377
  (function(i) {
35368
35378
  i[i.UTF8_BYTES = 1] = "UTF8_BYTES", i[i.UTF16_STRING = 2] = "UTF16_STRING";
@@ -35426,10 +35436,10 @@ class wl {
35426
35436
  return this.readInt32(A) >>> 0;
35427
35437
  }
35428
35438
  readInt64(A) {
35429
- return new fn(this.readInt32(A), this.readInt32(A + 4));
35439
+ return new Dn(this.readInt32(A), this.readInt32(A + 4));
35430
35440
  }
35431
35441
  readUint64(A) {
35432
- return new fn(this.readUint32(A), this.readUint32(A + 4));
35442
+ return new Dn(this.readUint32(A), this.readUint32(A + 4));
35433
35443
  }
35434
35444
  readFloat32(A) {
35435
35445
  return Ba[0] = this.readInt32(A), ZJ[0];
@@ -35473,10 +35483,10 @@ class wl {
35473
35483
  * start of a the root vtable).
35474
35484
  */
35475
35485
  getBufferIdentifier() {
35476
- if (this.bytes_.length < this.position_ + oC + on)
35486
+ if (this.bytes_.length < this.position_ + oC + Cn)
35477
35487
  throw new Error("FlatBuffers: ByteBuffer is too short to contain an identifier.");
35478
35488
  let A = "";
35479
- for (let e = 0; e < on; e++)
35489
+ for (let e = 0; e < Cn; e++)
35480
35490
  A += String.fromCharCode(this.readInt8(this.position_ + oC + e));
35481
35491
  return A;
35482
35492
  }
@@ -35564,9 +35574,9 @@ class wl {
35564
35574
  return this.readInt32(A + this.readInt32(A));
35565
35575
  }
35566
35576
  __has_identifier(A) {
35567
- if (A.length != on)
35568
- throw new Error("FlatBuffers: file identifier must be length " + on);
35569
- for (let e = 0; e < on; e++)
35577
+ if (A.length != Cn)
35578
+ throw new Error("FlatBuffers: file identifier must be length " + Cn);
35579
+ for (let e = 0; e < Cn; e++)
35570
35580
  if (A.charCodeAt(e) != this.readInt8(this.position() + oC + e))
35571
35581
  return !1;
35572
35582
  return !0;
@@ -35575,7 +35585,7 @@ class wl {
35575
35585
  * A helper function to avoid generated code depending on this file directly.
35576
35586
  */
35577
35587
  createLong(A, e) {
35578
- return fn.create(A, e);
35588
+ return Dn.create(A, e);
35579
35589
  }
35580
35590
  /**
35581
35591
  * A helper function for generating list for obj api
@@ -35856,9 +35866,9 @@ class Bd {
35856
35866
  const g = t ? hU : 0;
35857
35867
  if (e) {
35858
35868
  const I = e;
35859
- if (this.prep(this.minalign, oC + on + g), I.length != on)
35860
- throw new Error("FlatBuffers: file identifier must be length " + on);
35861
- for (let o = on - 1; o >= 0; o--)
35869
+ if (this.prep(this.minalign, oC + Cn + g), I.length != Cn)
35870
+ throw new Error("FlatBuffers: file identifier must be length " + Cn);
35871
+ for (let o = Cn - 1; o >= 0; o--)
35862
35872
  this.writeInt8(I.charCodeAt(o));
35863
35873
  }
35864
35874
  this.prep(this.minalign, oC + g), this.addOffset(A), g && this.addInt32(this.bb.capacity() - this.space), this.bb.setPosition(this.space);
@@ -35952,7 +35962,7 @@ class Bd {
35952
35962
  * A helper function to avoid generated code depending on this file directly.
35953
35963
  */
35954
35964
  createLong(A, e) {
35955
- return fn.create(A, e);
35965
+ return Dn.create(A, e);
35956
35966
  }
35957
35967
  /**
35958
35968
  * A helper function to pack an object
@@ -38987,7 +38997,7 @@ function X6({ window: i } = {}, A = {
38987
38997
  return g;
38988
38998
  }
38989
38999
  const av = X6({ window: typeof window > "u" ? void 0 : window });
38990
- function GC(i, A, e, t) {
39000
+ function RC(i, A, e, t) {
38991
39001
  Object.defineProperty(i, A, { get: e, set: t, enumerable: !0, configurable: !0 });
38992
39002
  }
38993
39003
  var x0 = (
@@ -39126,7 +39136,7 @@ var x0 = (
39126
39136
  }, i;
39127
39137
  }()
39128
39138
  ), kt = new $6(), $_ = {};
39129
- GC($_, "Peer", () => kG, (i) => kG = i);
39139
+ RC($_, "Peer", () => kG, (i) => kG = i);
39130
39140
  var Qd = {}, A7 = Object.prototype.hasOwnProperty, GI = "~";
39131
39141
  function Sl() {
39132
39142
  }
@@ -39253,8 +39263,8 @@ oI.prefixed = GI;
39253
39263
  oI.EventEmitter = oI;
39254
39264
  Qd = oI;
39255
39265
  var Be = {};
39256
- GC(Be, "LogLevel", () => TI, (i) => TI = i);
39257
- GC(Be, "default", () => Bv, (i) => Bv = i);
39266
+ RC(Be, "LogLevel", () => TI, (i) => TI = i);
39267
+ RC(Be, "default", () => Bv, (i) => Bv = i);
39258
39268
  var cr = function(i, A) {
39259
39269
  var e = typeof Symbol == "function" && i[Symbol.iterator];
39260
39270
  if (!e)
@@ -39336,7 +39346,7 @@ var i7 = (
39336
39346
  }, i;
39337
39347
  }()
39338
39348
  ), Bv = new i7(), eH = {};
39339
- GC(eH, "Socket", () => Qv, (i) => Qv = i);
39349
+ RC(eH, "Socket", () => Qv, (i) => Qv = i);
39340
39350
  var Es;
39341
39351
  (function(i) {
39342
39352
  i.Data = "data", i.Media = "media";
@@ -39345,14 +39355,14 @@ var Fi;
39345
39355
  (function(i) {
39346
39356
  i.BrowserIncompatible = "browser-incompatible", i.Disconnected = "disconnected", i.InvalidID = "invalid-id", i.InvalidKey = "invalid-key", i.Network = "network", i.PeerUnavailable = "peer-unavailable", i.SslUnavailable = "ssl-unavailable", i.ServerError = "server-error", i.SocketError = "socket-error", i.SocketClosed = "socket-closed", i.UnavailableID = "unavailable-id", i.WebRTC = "webrtc";
39347
39357
  })(Fi || (Fi = {}));
39348
- var XC;
39358
+ var An;
39349
39359
  (function(i) {
39350
39360
  i.Binary = "binary", i.BinaryUTF8 = "binary-utf8", i.JSON = "json";
39351
- })(XC || (XC = {}));
39352
- var Qn;
39361
+ })(An || (An = {}));
39362
+ var cn;
39353
39363
  (function(i) {
39354
39364
  i.Message = "message", i.Disconnected = "disconnected", i.Error = "error", i.Close = "close";
39355
- })(Qn || (Qn = {}));
39365
+ })(cn || (cn = {}));
39356
39366
  var bg;
39357
39367
  (function(i) {
39358
39368
  i.Heartbeat = "HEARTBEAT", i.Candidate = "CANDIDATE", i.Offer = "OFFER", i.Answer = "ANSWER", i.Open = "OPEN", i.Error = "ERROR", i.IdTaken = "ID-TAKEN", i.InvalidKey = "INVALID-KEY", i.Leave = "LEAVE", i.Expire = "EXPIRE";
@@ -39442,9 +39452,9 @@ var g7 = function() {
39442
39452
  Be.default.log("Invalid server message", o.data);
39443
39453
  return;
39444
39454
  }
39445
- g.emit(Qn.Message, s);
39455
+ g.emit(cn.Message, s);
39446
39456
  }, this._socket.onclose = function(o) {
39447
- g._disconnected || (Be.default.log("Socket closed.", o), g._cleanup(), g._disconnected = !0, g.emit(Qn.Disconnected));
39457
+ g._disconnected || (Be.default.log("Socket closed.", o), g._cleanup(), g._disconnected = !0, g.emit(cn.Disconnected));
39448
39458
  }, this._socket.onopen = function() {
39449
39459
  g._disconnected || (g._sendQueuedMessages(), Be.default.log("Socket open"), g._scheduleHeartbeat());
39450
39460
  });
@@ -39491,7 +39501,7 @@ var g7 = function() {
39491
39501
  return;
39492
39502
  }
39493
39503
  if (!e.type) {
39494
- this.emit(Qn.Error, "Invalid message");
39504
+ this.emit(cn.Error, "Invalid message");
39495
39505
  return;
39496
39506
  }
39497
39507
  if (this._wsOpen()) {
@@ -39506,9 +39516,9 @@ var g7 = function() {
39506
39516
  }, A;
39507
39517
  }(Qd.EventEmitter)
39508
39518
  ), SG = {};
39509
- GC(SG, "MediaConnection", () => hv, (i) => hv = i);
39519
+ RC(SG, "MediaConnection", () => hv, (i) => hv = i);
39510
39520
  var uU = {};
39511
- GC(uU, "Negotiator", () => Ev, (i) => Ev = i);
39521
+ RC(uU, "Negotiator", () => Ev, (i) => Ev = i);
39512
39522
  var QD = function() {
39513
39523
  return QD = Object.assign || function(i) {
39514
39524
  for (var A, e = 1, t = arguments.length; e < t; e++) {
@@ -39941,7 +39951,7 @@ var QD = function() {
39941
39951
  }, i;
39942
39952
  }()
39943
39953
  ), pU = {};
39944
- GC(pU, "BaseConnection", () => cv, (i) => cv = i);
39954
+ RC(pU, "BaseConnection", () => cv, (i) => cv = i);
39945
39955
  var C7 = function() {
39946
39956
  var i = function(A, e) {
39947
39957
  return i = Object.setPrototypeOf || {
@@ -40098,9 +40108,9 @@ var C7 = function() {
40098
40108
  }, A.ID_PREFIX = "mc_", A;
40099
40109
  }(pU.BaseConnection)
40100
40110
  ), mG = {};
40101
- GC(mG, "DataConnection", () => dv, (i) => dv = i);
40111
+ RC(mG, "DataConnection", () => dv, (i) => dv = i);
40102
40112
  var tH = {};
40103
- GC(tH, "EncodingQueue", () => lv, (i) => lv = i);
40113
+ RC(tH, "EncodingQueue", () => lv, (i) => lv = i);
40104
40114
  var r7 = function() {
40105
40115
  var i = function(A, e) {
40106
40116
  return i = Object.setPrototypeOf || {
@@ -40199,7 +40209,7 @@ var r7 = function() {
40199
40209
  B7(A, i);
40200
40210
  function A(e, t, g) {
40201
40211
  var I = i.call(this, e, t, g) || this;
40202
- return I.stringify = JSON.stringify, I.parse = JSON.parse, I._buffer = [], I._bufferSize = 0, I._buffering = !1, I._chunkedData = {}, I._encodingQueue = new tH.EncodingQueue(), I.connectionId = I.options.connectionId || A.ID_PREFIX + kt.randomToken(), I.label = I.options.label || I.connectionId, I.serialization = I.options.serialization || XC.Binary, I.reliable = !!I.options.reliable, I._encodingQueue.on("done", function(o) {
40212
+ return I.stringify = JSON.stringify, I.parse = JSON.parse, I._buffer = [], I._bufferSize = 0, I._buffering = !1, I._chunkedData = {}, I._encodingQueue = new tH.EncodingQueue(), I.connectionId = I.options.connectionId || A.ID_PREFIX + kt.randomToken(), I.label = I.options.label || I.connectionId, I.serialization = I.options.serialization || An.Binary, I.reliable = !!I.options.reliable, I._encodingQueue.on("done", function(o) {
40203
40213
  I._bufferedSend(o);
40204
40214
  }), I._encodingQueue.on("error", function() {
40205
40215
  Be.default.error("DC#".concat(I.connectionId, ": Error occured in encoding from blob to arraybuffer, close DC")), I.close();
@@ -40237,7 +40247,7 @@ var r7 = function() {
40237
40247
  Be.default.log("DC#".concat(e.connectionId, " dc closed for:"), e.peer), e.close();
40238
40248
  };
40239
40249
  }, A.prototype._handleDataMessage = function(e) {
40240
- var t = this, g = e.data, I = g.constructor, o = this.serialization === XC.Binary || this.serialization === XC.BinaryUTF8, s = g;
40250
+ var t = this, g = e.data, I = g.constructor, o = this.serialization === An.Binary || this.serialization === An.BinaryUTF8, s = g;
40241
40251
  if (o) {
40242
40252
  if (I === Blob) {
40243
40253
  kt.blobToArrayBuffer(g, function(n) {
@@ -40252,7 +40262,7 @@ var r7 = function() {
40252
40262
  s = kt.unpack(C);
40253
40263
  }
40254
40264
  } else
40255
- this.serialization === XC.JSON && (s = this.parse(g));
40265
+ this.serialization === An.JSON && (s = this.parse(g));
40256
40266
  if (s.__peerData) {
40257
40267
  this._handleChunk(s);
40258
40268
  return;
@@ -40278,9 +40288,9 @@ var r7 = function() {
40278
40288
  i.prototype.emit.call(this, "error", new Error("Connection is not open. You should listen for the `open` event before sending messages."));
40279
40289
  return;
40280
40290
  }
40281
- if (this.serialization === XC.JSON)
40291
+ if (this.serialization === An.JSON)
40282
40292
  this._bufferedSend(this.stringify(e));
40283
- else if (this.serialization === XC.Binary || this.serialization === XC.BinaryUTF8) {
40293
+ else if (this.serialization === An.Binary || this.serialization === An.BinaryUTF8) {
40284
40294
  var g = kt.pack(e);
40285
40295
  if (!t && g.size > kt.chunkedMTU) {
40286
40296
  this._sendChunks(g);
@@ -40346,7 +40356,7 @@ var r7 = function() {
40346
40356
  }, A.ID_PREFIX = "dc_", A.MAX_BUFFERED_AMOUNT = 8388608, A;
40347
40357
  }(pU.BaseConnection)
40348
40358
  ), iH = {};
40349
- GC(iH, "API", () => fv, (i) => fv = i);
40359
+ RC(iH, "API", () => fv, (i) => fv = i);
40350
40360
  var uv = function(i, A, e, t) {
40351
40361
  function g(I) {
40352
40362
  return I instanceof e ? I : new e(function(o) {
@@ -40703,13 +40713,13 @@ var uv = function(i, A, e, t) {
40703
40713
  configurable: !0
40704
40714
  }), A.prototype._createServerConnection = function() {
40705
40715
  var e = this, t = new eH.Socket(this._options.secure, this._options.host, this._options.port, this._options.path, this._options.key, this._options.pingInterval);
40706
- return t.on(Qn.Message, function(g) {
40716
+ return t.on(cn.Message, function(g) {
40707
40717
  e._handleMessage(g);
40708
- }), t.on(Qn.Error, function(g) {
40718
+ }), t.on(cn.Error, function(g) {
40709
40719
  e._abort(Fi.SocketError, g);
40710
- }), t.on(Qn.Disconnected, function() {
40720
+ }), t.on(cn.Disconnected, function() {
40711
40721
  e.disconnected || (e.emitError(Fi.Network, "Lost connection to server."), e.disconnect());
40712
- }), t.on(Qn.Close, function() {
40722
+ }), t.on(cn.Close, function() {
40713
40723
  e.disconnected || e._abort(Fi.SocketClosed, "Underlying socket is already closed.");
40714
40724
  }), t;
40715
40725
  }, A.prototype._initialize = function(e) {
@@ -42660,7 +42670,7 @@ async function b7(i, A) {
42660
42670
  return C;
42661
42671
  }
42662
42672
  let aH, kv = null;
42663
- function DC() {
42673
+ function yC() {
42664
42674
  return aH;
42665
42675
  }
42666
42676
  function rH(i) {
@@ -42751,7 +42761,7 @@ const T0 = Symbol("assetReference"), PQ = class {
42751
42761
  }
42752
42762
  /** frees previously allocated memory and destroys the current `asset` instance (if any) */
42753
42763
  unload() {
42754
- this.asset && (ta && console.log("Unload", this.asset), this.asset.scene && fC(this.asset.scene, !0, !0), fC(this.asset, !0, !0)), this.asset = null, this._rawBinary = void 0, this._glbRoot = null, this._loading = void 0, Je.Current && Je.Current.addressables.unregisterAssetReference(this);
42764
+ this.asset && (ta && console.log("Unload", this.asset), this.asset.scene && DC(this.asset.scene, !0, !0), DC(this.asset, !0, !0)), this.asset = null, this._rawBinary = void 0, this._glbRoot = null, this._loading = void 0, Je.Current && Je.Current.addressables.unregisterAssetReference(this);
42755
42765
  }
42756
42766
  /** loads the asset binary without creating an instance */
42757
42767
  async preload() {
@@ -42775,7 +42785,7 @@ const T0 = Symbol("assetReference"), PQ = class {
42775
42785
  if (A && this._progressListeners.push(A), this._loading !== void 0)
42776
42786
  return this._loading.then((g) => this.asset);
42777
42787
  const e = Je.Current;
42778
- this._rawBinary ? (this._loading = DC().parseSync(e, this._rawBinary, this.uri, null), this.raiseProgressEvent(new ProgressEvent("progress", { loaded: this._rawBinary.byteLength, total: this._rawBinary.byteLength }))) : (ta && console.log("Load async", this.uri), this._loading = DC().loadSync(e, this._hashedUri, this.uri, null, (g) => {
42788
+ this._rawBinary ? (this._loading = yC().parseSync(e, this._rawBinary, this.uri, null), this.raiseProgressEvent(new ProgressEvent("progress", { loaded: this._rawBinary.byteLength, total: this._rawBinary.byteLength }))) : (ta && console.log("Load async", this.uri), this._loading = yC().loadSync(e, this._hashedUri, this.uri, null, (g) => {
42779
42789
  this.raiseProgressEvent(g);
42780
42790
  }));
42781
42791
  const t = await this._loading;
@@ -42802,11 +42812,9 @@ const T0 = Symbol("assetReference"), PQ = class {
42802
42812
  e(this, A);
42803
42813
  }
42804
42814
  async onInstantiate(A, e = !1, t) {
42805
- const g = Je.Current;
42806
- if (this.mustLoad && await this.loadAssetAsync(), ta && console.log("Instantiate", this.uri, "parent:", A), this.asset) {
42815
+ const g = Je.Current, I = new MC();
42816
+ if (A instanceof pA ? I.parent = A : A && I.cloneAssign(A), I.parent || (I.parent = g.scene), this.mustLoad && await this.loadAssetAsync(), ta && console.log("Instantiate", this.uri, "parent:", A), this.asset) {
42807
42817
  ta && console.log("Add to scene", this.asset);
42808
- let I = A instanceof kn ? A : null;
42809
- I || (I = new kn()), typeof A == "object" && (A instanceof pA ? I.parent = A : Object.assign(I, A)), I.parent || (I.parent = g.scene);
42810
42818
  let o = PQ.currentlyInstantiating.get(this.uri);
42811
42819
  if (o !== void 0 && o >= 1e4)
42812
42820
  return console.error("Recursive or too many instantiations of " + this.uri + " in the same frame (" + o + ")"), null;
@@ -42894,7 +42902,7 @@ const x7 = Promise.resolve(null), jh = class {
42894
42902
  return A.src = this.url, A;
42895
42903
  }
42896
42904
  createTexture() {
42897
- return this.url ? (this.loader || (this.loader = new ln()), this.loader.setCrossOrigin("anonymous"), this.loader.loadAsync(this.url)) : x7;
42905
+ return this.url ? (this.loader || (this.loader = new dn()), this.loader.setCrossOrigin("anonymous"), this.loader.loadAsync(this.url)) : x7;
42898
42906
  }
42899
42907
  /** Loads the bitmap data of the image */
42900
42908
  getBitmap() {
@@ -42941,7 +42949,7 @@ class T7 {
42941
42949
  }
42942
42950
  }
42943
42951
  }
42944
- const cI = new y(), Gv = new y(), Mv = new UA(), _7 = CA("debuggizmos"), xC = 8947848, as = class {
42952
+ const cI = new y(), Gv = new y(), Mv = new UA(), _7 = CA("debuggizmos"), TC = 8947848, as = class {
42945
42953
  /**
42946
42954
  * Returns true if a given object is a gizmo
42947
42955
  */
@@ -42956,53 +42964,53 @@ const cI = new y(), Gv = new y(), Mv = new UA(), _7 = CA("debuggizmos"), xC = 89
42956
42964
  var a;
42957
42965
  if (!as.enabled)
42958
42966
  return null;
42959
- I || (I = xC);
42967
+ I || (I = TC);
42960
42968
  const C = ((a = ke.active) == null ? void 0 : a.rigScale) ?? 1, n = Wi.getTextLabel(g, e, t * C, I, o);
42961
42969
  return s instanceof pA && s.add(n), n.position.x = A.x, n.position.y = A.y, n.position.z = A.z, n;
42962
42970
  }
42963
- static DrawRay(A, e, t = xC, g = 0, I = !0) {
42971
+ static DrawRay(A, e, t = TC, g = 0, I = !0) {
42964
42972
  if (!as.enabled)
42965
42973
  return;
42966
42974
  const o = Wi.getLine(g), s = o.geometry.getAttribute("position");
42967
42975
  s.setXYZ(0, A.x, A.y, A.z), cI.set(e.x, e.y, e.z).multiplyScalar(999999999), s.setXYZ(1, A.x + cI.x, A.y + cI.y, A.z + cI.z), s.needsUpdate = !0, o.material.color.set(t), o.material.depthTest = I, o.material.depthWrite = !1;
42968
42976
  }
42969
- static DrawDirection(A, e, t = xC, g = 0, I = !0, o = 1) {
42977
+ static DrawDirection(A, e, t = TC, g = 0, I = !0, o = 1) {
42970
42978
  if (!as.enabled)
42971
42979
  return;
42972
42980
  const s = Wi.getLine(g), C = s.geometry.getAttribute("position");
42973
42981
  C.setXYZ(0, A.x, A.y, A.z), e.w !== void 0 ? (cI.set(0, 0, -o), Mv.set(e.x, e.y, e.z, e.w), cI.applyQuaternion(Mv)) : (cI.set(e.x, e.y, e.z), cI.multiplyScalar(o)), C.setXYZ(1, A.x + cI.x, A.y + cI.y, A.z + cI.z), C.needsUpdate = !0, s.material.color.set(t), s.material.depthTest = I, s.material.depthWrite = !1;
42974
42982
  }
42975
- static DrawLine(A, e, t = xC, g = 0, I = !0) {
42983
+ static DrawLine(A, e, t = TC, g = 0, I = !0) {
42976
42984
  if (!as.enabled)
42977
42985
  return;
42978
42986
  const o = Wi.getLine(g), s = o.geometry.getAttribute("position");
42979
42987
  s.setXYZ(0, A.x, A.y, A.z), s.setXYZ(1, e.x, e.y, e.z), s.needsUpdate = !0, o.material.color.set(t), o.material.depthTest = I, o.material.depthWrite = !1;
42980
42988
  }
42981
- static DrawWireSphere(A, e, t = xC, g = 0, I = !0) {
42989
+ static DrawWireSphere(A, e, t = TC, g = 0, I = !0) {
42982
42990
  if (!as.enabled)
42983
42991
  return;
42984
42992
  const o = Wi.getSphere(e, g, !0);
42985
42993
  QE(o, A.x, A.y, A.z), o.material.color.set(t), o.material.depthTest = I, o.material.depthWrite = !1;
42986
42994
  }
42987
- static DrawSphere(A, e, t = xC, g = 0, I = !0) {
42995
+ static DrawSphere(A, e, t = TC, g = 0, I = !0) {
42988
42996
  if (!as.enabled)
42989
42997
  return;
42990
42998
  const o = Wi.getSphere(e, g, !1);
42991
42999
  QE(o, A.x, A.y, A.z), o.material.color.set(t), o.material.depthTest = I, o.material.depthWrite = !1;
42992
43000
  }
42993
- static DrawWireBox(A, e, t = xC, g = 0, I = !0) {
43001
+ static DrawWireBox(A, e, t = TC, g = 0, I = !0) {
42994
43002
  if (!as.enabled)
42995
43003
  return;
42996
43004
  const o = Wi.getBox(g);
42997
43005
  o.position.set(A.x, A.y, A.z), o.scale.set(e.x, e.y, e.z), o.material.color.set(t), o.material.depthTest = I, o.material.wireframe = !0, o.material.depthWrite = !1;
42998
43006
  }
42999
- static DrawWireBox3(A, e = xC, t = 0, g = !0) {
43007
+ static DrawWireBox3(A, e = TC, t = 0, g = !0) {
43000
43008
  if (!as.enabled)
43001
43009
  return;
43002
43010
  const I = Wi.getBox(t);
43003
43011
  I.position.copy(A.getCenter(cI)), I.scale.copy(A.getSize(cI)), I.material.color.set(e), I.material.depthTest = g, I.material.wireframe = !0, I.material.depthWrite = !1;
43004
43012
  }
43005
- static DrawArrow(A, e, t = xC, g = 0, I = !0, o = !1) {
43013
+ static DrawArrow(A, e, t = TC, g = 0, I = !0, o = !1) {
43006
43014
  if (!as.enabled)
43007
43015
  return;
43008
43016
  const s = Wi.getArrowHead(g);
@@ -43569,10 +43577,10 @@ vec4 maxValue=texture2D(inputBuffer,vUv);for(int i=0;i<8;++i){vec4 kernel=kernel
43569
43577
  ESKIL: 1
43570
43578
  }, cH = Number(Ha.replace(/\D+/g, "")), hH = cH >= 152, Z7 = /* @__PURE__ */ new Map([
43571
43579
  [Wl, ow],
43572
- [EC, Yt]
43580
+ [cC, Yt]
43573
43581
  ]), X7 = /* @__PURE__ */ new Map([
43574
43582
  [ow, Wl],
43575
- [Yt, EC]
43583
+ [Yt, cC]
43576
43584
  ]);
43577
43585
  function Mn(i) {
43578
43586
  return i === null ? null : hH ? i.outputColorSpace : Z7.get(i.outputEncoding);
@@ -48224,7 +48232,7 @@ var Kv = class extends nI {
48224
48232
  */
48225
48233
  createDepthTexture() {
48226
48234
  const i = this.depthTexture = new FE();
48227
- return this.inputBuffer.depthTexture = i, this.inputBuffer.dispose(), this.inputBuffer.stencilBuffer ? (i.format = va, i.type = hn) : i.type = ds, i;
48235
+ return this.inputBuffer.depthTexture = i, this.inputBuffer.dispose(), this.inputBuffer.stencilBuffer ? (i.format = va, i.type = ln) : i.type = ds, i;
48228
48236
  }
48229
48237
  /**
48230
48238
  * Deletes the current depth texture.
@@ -51536,7 +51544,7 @@ for (var Ai = 0; Ai < 32768; ++Ai) {
51536
51544
  var Ia = (Ai & 43690) >>> 1 | (Ai & 21845) << 1;
51537
51545
  Ia = (Ia & 52428) >>> 2 | (Ia & 13107) << 2, Ia = (Ia & 61680) >>> 4 | (Ia & 3855) << 4, vG[Ai] = ((Ia & 65280) >>> 8 | (Ia & 255) << 8) >>> 1;
51538
51546
  }
51539
- var dC = function(i, A, e) {
51547
+ var uC = function(i, A, e) {
51540
51548
  for (var t = i.length, g = 0, I = new SI(A); g < t; ++g)
51541
51549
  ++I[i[g] - 1];
51542
51550
  var o = new SI(A);
@@ -51566,7 +51574,7 @@ for (var Ai = 280; Ai < 288; ++Ai)
51566
51574
  var kl = new zi(32);
51567
51575
  for (var Ai = 0; Ai < 32; ++Ai)
51568
51576
  kl[Ai] = 5;
51569
- var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA = /* @__PURE__ */ dC(kl, 5, 0), oeA = /* @__PURE__ */ dC(kl, 5, 1), W0 = function(i) {
51577
+ var ieA = /* @__PURE__ */ uC(xa, 9, 0), geA = /* @__PURE__ */ uC(xa, 9, 1), IeA = /* @__PURE__ */ uC(kl, 5, 0), oeA = /* @__PURE__ */ uC(kl, 5, 1), W0 = function(i) {
51570
51578
  for (var A = i[0], e = 1; e < i.length; ++e)
51571
51579
  i[e] > A && (A = i[e]);
51572
51580
  return A;
@@ -51608,7 +51616,7 @@ var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA
51608
51616
  for (var m = new zi(S), G = new zi(19), R = 0; R < f; ++R)
51609
51617
  G[KG[R]] = os(i, C + R * 3, 7);
51610
51618
  C += f * 3;
51611
- for (var w = W0(G), k = (1 << w) - 1, K = dC(G, w, 1), R = 0; R < S; ) {
51619
+ for (var w = W0(G), k = (1 << w) - 1, K = uC(G, w, 1), R = 0; R < S; ) {
51612
51620
  var T = K[os(i, C, k)];
51613
51621
  C += T & 15;
51614
51622
  var u = T >>> 4;
@@ -51621,7 +51629,7 @@ var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA
51621
51629
  }
51622
51630
  }
51623
51631
  var _ = m.subarray(0, p), J = m.subarray(p);
51624
- Q = W0(_), E = W0(J), a = dC(_, Q, 1), B = dC(J, E, 1);
51632
+ Q = W0(_), E = W0(J), a = uC(_, Q, 1), B = uC(J, E, 1);
51625
51633
  } else
51626
51634
  throw "invalid block type";
51627
51635
  else {
@@ -51684,7 +51692,7 @@ var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA
51684
51692
  e.l = a, e.p = Z, e.b = n, a && (s = 1, e.m = Q, e.d = B, e.n = E);
51685
51693
  } while (!s);
51686
51694
  return n == A.length ? A : MU(A, 0, n);
51687
- }, YC = function(i, A, e) {
51695
+ }, _C = function(i, A, e) {
51688
51696
  e <<= A & 7;
51689
51697
  var t = A / 8 | 0;
51690
51698
  i[t] |= e, i[t + 1] |= e >>> 8;
@@ -51769,7 +51777,7 @@ var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA
51769
51777
  i[g + I + 4] = e[I];
51770
51778
  return (g + 4 + t) * 8;
51771
51779
  }, Hv = function(i, A, e, t, g, I, o, s, C, n, a) {
51772
- YC(A, a++, e), ++g[256];
51780
+ _C(A, a++, e), ++g[256];
51773
51781
  for (var B = V0(g, 15), Q = B[0], E = B[1], c = V0(I, 15), l = c[0], u = c[1], h = _v(Q), d = h[0], p = h[1], f = _v(l), S = f[0], m = f[1], G = new SI(19), R = 0; R < d.length; ++R)
51774
51782
  G[d[R] & 31]++;
51775
51783
  for (var R = 0; R < S.length; ++R)
@@ -51780,24 +51788,24 @@ var ieA = /* @__PURE__ */ dC(xa, 9, 0), geA = /* @__PURE__ */ dC(xa, 9, 1), IeA
51780
51788
  if (O <= b && O <= _)
51781
51789
  return Bf(A, a, i.subarray(C, C + n));
51782
51790
  var J, L, H, Z;
51783
- if (YC(A, a, 1 + (_ < b)), a += 2, _ < b) {
51784
- J = dC(Q, E, 0), L = Q, H = dC(l, u, 0), Z = l;
51785
- var X = dC(k, K, 0);
51786
- YC(A, a, p - 257), YC(A, a + 5, m - 1), YC(A, a + 10, T - 4), a += 14;
51791
+ if (_C(A, a, 1 + (_ < b)), a += 2, _ < b) {
51792
+ J = uC(Q, E, 0), L = Q, H = uC(l, u, 0), Z = l;
51793
+ var X = uC(k, K, 0);
51794
+ _C(A, a, p - 257), _C(A, a + 5, m - 1), _C(A, a + 10, T - 4), a += 14;
51787
51795
  for (var R = 0; R < T; ++R)
51788
- YC(A, a + 3 * R, k[KG[R]]);
51796
+ _C(A, a + 3 * R, k[KG[R]]);
51789
51797
  a += 3 * T;
51790
51798
  for (var oA = [d, S], lA = 0; lA < 2; ++lA)
51791
51799
  for (var SA = oA[lA], R = 0; R < SA.length; ++R) {
51792
51800
  var qA = SA[R] & 31;
51793
- YC(A, a, X[qA]), a += k[qA], qA > 15 && (YC(A, a, SA[R] >>> 5 & 127), a += SA[R] >>> 12);
51801
+ _C(A, a, X[qA]), a += k[qA], qA > 15 && (_C(A, a, SA[R] >>> 5 & 127), a += SA[R] >>> 12);
51794
51802
  }
51795
51803
  } else
51796
51804
  J = ieA, L = xa, H = IeA, Z = kl;
51797
51805
  for (var R = 0; R < s; ++R)
51798
51806
  if (t[R] > 255) {
51799
51807
  var qA = t[R] >>> 18 & 31;
51800
- Jc(A, a, J[qA + 257]), a += L[qA + 257], qA > 7 && (YC(A, a, t[R] >>> 23 & 31), a += nw[qA]);
51808
+ Jc(A, a, J[qA + 257]), a += L[qA + 257], qA > 7 && (_C(A, a, t[R] >>> 23 & 31), a += nw[qA]);
51801
51809
  var ZA = t[R] & 31;
51802
51810
  Jc(A, a, H[ZA]), a += Z[ZA], ZA > 3 && (Jc(A, a, t[R] >>> 5 & 8191), a += aw[ZA]);
51803
51811
  } else
@@ -52959,7 +52967,7 @@ class ueA {
52959
52967
  bc && console.log("Load texture from path", n.pointer);
52960
52968
  const B = wB(this.source, n.pointer);
52961
52969
  let Q;
52962
- B.endsWith(".exr") ? Q = new lD(this.parser.options.manager) : B.endsWith(".hdr") ? Q = new LG(this.parser.options.manager) : Q = new ln(this.parser.options.manager), a = Q.loadAsync(B, void 0).then((E) => this.resolveTexture(n, E));
52970
+ B.endsWith(".exr") ? Q = new lD(this.parser.options.manager) : B.endsWith(".hdr") ? Q = new LG(this.parser.options.manager) : Q = new dn(this.parser.options.manager), a = Q.loadAsync(B, void 0).then((E) => this.resolveTexture(n, E));
52963
52971
  } else
52964
52972
  n.pointer;
52965
52973
  a && s.push(a);
@@ -53269,7 +53277,7 @@ const Xt = class {
53269
53277
  }
53270
53278
  /** the needle engine version */
53271
53279
  get version() {
53272
- return Bn;
53280
+ return En;
53273
53281
  }
53274
53282
  /** The currently active context. Only set during the update loops */
53275
53283
  static get Current() {
@@ -53437,7 +53445,7 @@ const Xt = class {
53437
53445
  */
53438
53446
  clear() {
53439
53447
  var A, e, t, g;
53440
- xt.dispatchCallback(Ig.ContextClearing, this), fC(this.scene, !0, !0), this.scene = new II(), (A = this.addressables) == null || A.dispose(), (e = this.lightmaps) == null || e.clear(), (g = (t = this.physics) == null ? void 0 : t.engine) == null || g.clearCaches(), this.isManagedExternally || this.renderer && (this.renderer.renderLists.dispose(), this.renderer.state.reset(), this.renderer.resetState()), xt.dispatchCallback(Ig.ContextCleared, this);
53448
+ xt.dispatchCallback(Ig.ContextClearing, this), DC(this.scene, !0, !0), this.scene = new II(), (A = this.addressables) == null || A.dispose(), (e = this.lightmaps) == null || e.clear(), (g = (t = this.physics) == null ? void 0 : t.engine) == null || g.clearCaches(), this.isManagedExternally || this.renderer && (this.renderer.renderLists.dispose(), this.renderer.state.reset(), this.renderer.resetState()), xt.dispatchCallback(Ig.ContextCleared, this);
53441
53449
  }
53442
53450
  dispose() {
53443
53451
  this.internalOnDestroy();
@@ -53612,7 +53620,7 @@ Start a coroutine from a component by calling "this.startCoroutine(myCoroutine()
53612
53620
  progress: null,
53613
53621
  index: 0,
53614
53622
  count: g.length
53615
- }, o = DC(), s = 0;
53623
+ }, o = yC(), s = 0;
53616
53624
  for (let a = 0; a < g.length; a++) {
53617
53625
  if (A !== this._createId) {
53618
53626
  xI && console.log("Aborting loading because create id changed", A, this._createId);
@@ -53637,7 +53645,7 @@ Start a coroutine from a component by calling "this.startCoroutine(myCoroutine()
53637
53645
  for (const a of t)
53638
53646
  if (a && a.file)
53639
53647
  for (const B of a.file.scenes)
53640
- fC(B, !0, !0);
53648
+ DC(B, !0, !0);
53641
53649
  } else
53642
53650
  for (const a of t)
53643
53651
  a && a.file && this.scene.add(a.file.scene);
@@ -54035,7 +54043,7 @@ class BA extends pA {
54035
54043
  * @param recursive if true, all children will be destroyed as well. true by default
54036
54044
  */
54037
54045
  static destroy(e, t = !0, g = !0) {
54038
- return fC(e, t, g);
54046
+ return DC(e, t, g);
54039
54047
  }
54040
54048
  /**
54041
54049
  * Add an object to parent and also ensure all components are being registered
@@ -54442,7 +54450,7 @@ async function veA() {
54442
54450
  return Ra;
54443
54451
  if (IB === "basic")
54444
54452
  try {
54445
- const i = "https://engine.needle.tools/licensing/check?location=" + encodeURIComponent(window.location.href) + "&version=" + Bn + "&generator=" + encodeURIComponent(gU), A = await fetch(i, {
54453
+ const i = "https://engine.needle.tools/licensing/check?location=" + encodeURIComponent(window.location.href) + "&version=" + En + "&generator=" + encodeURIComponent(gU), A = await fetch(i, {
54446
54454
  method: "GET"
54447
54455
  }).catch();
54448
54456
  (A == null ? void 0 : A.status) === 200 ? (xG = !1, us && console.log("License check succeeded"), IB = "pro") : A.status === 403 ? (xG = !0, Bh = await A.text()) : us && console.log("License check failed with status " + A.status);
@@ -54555,7 +54563,7 @@ async function LeA(i) {
54555
54563
  padding-left: 25px;
54556
54564
  border-radius: .5em;
54557
54565
  border: 2px solid rgba(160,160,160,.3);
54558
- `, I = `Needle Engine — No license active, commercial use is not allowed. Visit https://needle.tools/pricing for more information and licensing options! v${Bn}`;
54566
+ `, I = `Needle Engine — No license active, commercial use is not allowed. Visit https://needle.tools/pricing for more information and licensing options! v${En}`;
54559
54567
  console.log("%c " + I, t);
54560
54568
  }
54561
54569
  function xeA() {
@@ -54699,7 +54707,7 @@ async function TeA() {
54699
54707
  const A = window.location.href;
54700
54708
  let e = "api/v2/new/request";
54701
54709
  i.endsWith("/") || (e = "/" + e);
54702
- const g = `${i}${e}?license=${IB}&url=${encodeURIComponent(A)}&hostname=${encodeURIComponent(window.location.hostname)}&pathname=${encodeURIComponent(window.location.pathname)}&search=${encodeURIComponent(window.location.search)}&hash=${encodeURIComponent(window.location.hash)}&version=${Bn}&generator=${gU}`;
54710
+ const g = `${i}${e}?license=${IB}&url=${encodeURIComponent(A)}&hostname=${encodeURIComponent(window.location.hostname)}&pathname=${encodeURIComponent(window.location.pathname)}&search=${encodeURIComponent(window.location.search)}&hash=${encodeURIComponent(window.location.hash)}&version=${En}&generator=${gU}`;
54703
54711
  us && console.log("Sending non-commercial usage message to analytics backend", g), fetch(
54704
54712
  g,
54705
54713
  {
@@ -55199,24 +55207,24 @@ function XeA(i) {
55199
55207
  const w = a + h._offset, k = w + f, K = k + S, T = K + m, O = new Uint8Array(i.buffer, i.byteOffset + w, f), b = new Uint8Array(i.buffer, i.byteOffset + k, S), _ = new Uint8Array(i.buffer, i.byteOffset + K, m), J = new Uint8Array(i.buffer, i.byteOffset + T, G);
55200
55208
  return e.globalData = { endpointCount: d, selectorCount: p, imageDescs: R, endpointsData: O, selectorsData: b, tablesData: _, extendedData: J }, e;
55201
55209
  }
55202
- let X0, HC, _G;
55210
+ let X0, PC, _G;
55203
55211
  const $0 = { env: { emscripten_notify_memory_growth: function(i) {
55204
- _G = new Uint8Array(HC.exports.memory.buffer);
55212
+ _G = new Uint8Array(PC.exports.memory.buffer);
55205
55213
  } } };
55206
55214
  let $eA = class {
55207
55215
  init() {
55208
55216
  return X0 || (X0 = typeof fetch < "u" ? fetch("data:application/wasm;base64," + eb).then((A) => A.arrayBuffer()).then((A) => WebAssembly.instantiate(A, $0)).then(this._init) : WebAssembly.instantiate(Buffer.from(eb, "base64"), $0).then(this._init), X0);
55209
55217
  }
55210
55218
  _init(A) {
55211
- HC = A.instance, $0.env.emscripten_notify_memory_growth(0);
55219
+ PC = A.instance, $0.env.emscripten_notify_memory_growth(0);
55212
55220
  }
55213
55221
  decode(A, e = 0) {
55214
- if (!HC)
55222
+ if (!PC)
55215
55223
  throw new Error("ZSTDDecoder: Await .init() before decoding.");
55216
- const t = A.byteLength, g = HC.exports.malloc(t);
55217
- _G.set(A, g), e = e || Number(HC.exports.ZSTD_findDecompressedSize(g, t));
55218
- const I = HC.exports.malloc(e), o = HC.exports.ZSTD_decompress(I, e, g, t), s = _G.slice(I, I + o);
55219
- return HC.exports.free(g), HC.exports.free(I), s;
55224
+ const t = A.byteLength, g = PC.exports.malloc(t);
55225
+ _G.set(A, g), e = e || Number(PC.exports.ZSTD_findDecompressedSize(g, t));
55226
+ const I = PC.exports.malloc(e), o = PC.exports.ZSTD_decompress(I, e, g, t), s = _G.slice(I, I + o);
55227
+ return PC.exports.free(g), PC.exports.free(I), s;
55220
55228
  }
55221
55229
  };
55222
55230
  const eb = "AGFzbQEAAAABpQEVYAF/AX9gAn9/AGADf39/AX9gBX9/f39/AX9gAX8AYAJ/fwF/YAR/f39/AX9gA39/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gAn9/AX5gAn5+AX5gAABgBX9/f39/AGAGf39/f39/AGAIf39/f39/f38AYAl/f39/f39/f38AYAABf2AIf39/f39/f38Bf2ANf39/f39/f39/f39/fwF/YAF/AX4CJwEDZW52H2Vtc2NyaXB0ZW5fbm90aWZ5X21lbW9yeV9ncm93dGgABANpaAEFAAAFAgEFCwACAQABAgIFBQcAAwABDgsBAQcAEhMHAAUBDAQEAAANBwQCAgYCBAgDAwMDBgEACQkHBgICAAYGAgQUBwYGAwIGAAMCAQgBBwUGCgoEEQAEBAEIAwgDBQgDEA8IAAcABAUBcAECAgUEAQCAAgYJAX8BQaCgwAILB2AHBm1lbW9yeQIABm1hbGxvYwAoBGZyZWUAJgxaU1REX2lzRXJyb3IAaBlaU1REX2ZpbmREZWNvbXByZXNzZWRTaXplAFQPWlNURF9kZWNvbXByZXNzAEoGX3N0YXJ0ACQJBwEAQQELASQKussBaA8AIAAgACgCBCABajYCBAsZACAAKAIAIAAoAgRBH3F0QQAgAWtBH3F2CwgAIABBiH9LC34BBH9BAyEBIAAoAgQiA0EgTQRAIAAoAggiASAAKAIQTwRAIAAQDQ8LIAAoAgwiAiABRgRAQQFBAiADQSBJGw8LIAAgASABIAJrIANBA3YiBCABIARrIAJJIgEbIgJrIgQ2AgggACADIAJBA3RrNgIEIAAgBCgAADYCAAsgAQsUAQF/IAAgARACIQIgACABEAEgAgv3AQECfyACRQRAIABCADcCACAAQQA2AhAgAEIANwIIQbh/DwsgACABNgIMIAAgAUEEajYCECACQQRPBEAgACABIAJqIgFBfGoiAzYCCCAAIAMoAAA2AgAgAUF/ai0AACIBBEAgAEEIIAEQFGs2AgQgAg8LIABBADYCBEF/DwsgACABNgIIIAAgAS0AACIDNgIAIAJBfmoiBEEBTQRAIARBAWtFBEAgACABLQACQRB0IANyIgM2AgALIAAgAS0AAUEIdCADajYCAAsgASACakF/ai0AACIBRQRAIABBADYCBEFsDwsgAEEoIAEQFCACQQN0ams2AgQgAgsWACAAIAEpAAA3AAAgACABKQAINwAICy8BAX8gAUECdEGgHWooAgAgACgCAEEgIAEgACgCBGprQR9xdnEhAiAAIAEQASACCyEAIAFCz9bTvtLHq9lCfiAAfEIfiUKHla+vmLbem55/fgsdAQF/IAAoAgggACgCDEYEfyAAKAIEQSBGBUEACwuCBAEDfyACQYDAAE8EQCAAIAEgAhBnIAAPCyAAIAJqIQMCQCAAIAFzQQNxRQRAAkAgAkEBSARAIAAhAgwBCyAAQQNxRQRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADTw0BIAJBA3ENAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgA0F8aiIEIABJBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAsMACAAIAEpAAA3AAALQQECfyAAKAIIIgEgACgCEEkEQEEDDwsgACAAKAIEIgJBB3E2AgQgACABIAJBA3ZrIgE2AgggACABKAAANgIAQQALDAAgACABKAIANgAAC/cCAQJ/AkAgACABRg0AAkAgASACaiAASwRAIAAgAmoiBCABSw0BCyAAIAEgAhALDwsgACABc0EDcSEDAkACQCAAIAFJBEAgAwRAIAAhAwwDCyAAQQNxRQRAIAAhAwwCCyAAIQMDQCACRQ0EIAMgAS0AADoAACABQQFqIQEgAkF/aiECIANBAWoiA0EDcQ0ACwwBCwJAIAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigC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C0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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", Am = /* @__PURE__ */ new WeakMap();
@@ -55308,7 +55316,7 @@ class ps extends Hg {
55308
55316
  a = new ux(t, o, yt);
55309
55317
  else {
55310
55318
  const B = t[0].mipmaps;
55311
- a = e.layerCount > 1 ? new dx(B, g, I, e.layerCount, o, yt) : new cC(B, g, I, o, yt);
55319
+ a = e.layerCount > 1 ? new dx(B, g, I, e.layerCount, o, yt) : new hC(B, g, I, o, yt);
55312
55320
  }
55313
55321
  return a.minFilter = t[0].mipmaps.length === 1 ? Re : PI, a.magFilter = Re, a.generateMipmaps = !1, a.needsUpdate = !0, a.colorSpace = e2(e), a.premultiplyAlpha = !!(n & PeA), a;
55314
55322
  }
@@ -55586,7 +55594,7 @@ async function etA(i) {
55586
55594
  else {
55587
55595
  if (i.pixelDepth > 0)
55588
55596
  throw new Error("THREE.KTX2Loader: Unsupported pixelDepth.");
55589
- g = new cC(t, i.pixelWidth, i.pixelHeight);
55597
+ g = new hC(t, i.pixelWidth, i.pixelHeight);
55590
55598
  }
55591
55599
  return g.mipmaps = t, g.type = gm[A], g.format = im[A], g.colorSpace = e2(i), g.needsUpdate = !0, Promise.resolve(g);
55592
55600
  }
@@ -56478,7 +56486,7 @@ const Yo = {
56478
56486
  9729: Re,
56479
56487
  9984: nE,
56480
56488
  9985: Zr,
56481
- 9986: en,
56489
+ 9986: gn,
56482
56490
  9987: PI
56483
56491
  }, ab = {
56484
56492
  33071: ug,
@@ -56512,7 +56520,7 @@ const Yo = {
56512
56520
  CUBICSPLINE: void 0,
56513
56521
  // We use a custom interpolant (GLTFCubicSplineInterpolation) for CUBICSPLINE tracks. Each
56514
56522
  // keyframe track will be initialized with a default interpolation type, then modified.
56515
- LINEAR: uC,
56523
+ LINEAR: pC,
56516
56524
  STEP: ba
56517
56525
  }, sm = {
56518
56526
  OPAQUE: "OPAQUE",
@@ -56622,7 +56630,7 @@ class JtA {
56622
56630
  constructor(A = {}, e = {}) {
56623
56631
  this.json = A, this.extensions = {}, this.plugins = {}, this.options = e, this.cache = new gtA(), this.associations = /* @__PURE__ */ new Map(), this.primitiveCache = {}, this.nodeCache = {}, this.meshCache = { refs: {}, uses: {} }, this.cameraCache = { refs: {}, uses: {} }, this.lightCache = { refs: {}, uses: {} }, this.sourceCache = {}, this.textureCache = {}, this.nodeNamesUsed = {};
56624
56632
  let t = !1, g = !1, I = -1;
56625
- typeof navigator < "u" && (t = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) === !0, g = navigator.userAgent.indexOf("Firefox") > -1, I = g ? navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1] : -1), typeof createImageBitmap > "u" || t || g && I < 98 ? this.textureLoader = new ln(this.options.manager) : this.textureLoader = new _x(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new sg(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
56633
+ typeof navigator < "u" && (t = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) === !0, g = navigator.userAgent.indexOf("Firefox") > -1, I = g ? navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1] : -1), typeof createImageBitmap > "u" || t || g && I < 98 ? this.textureLoader = new dn(this.options.manager) : this.textureLoader = new _x(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new sg(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
56626
56634
  }
56627
56635
  setExtensions(A) {
56628
56636
  this.extensions = A;
@@ -57259,11 +57267,11 @@ class JtA {
57259
57267
  n = qa;
57260
57268
  break;
57261
57269
  case oa.rotation:
57262
- n = pC;
57270
+ n = fC;
57263
57271
  break;
57264
57272
  case oa.position:
57265
57273
  case oa.scale:
57266
- n = Sn;
57274
+ n = mn;
57267
57275
  break;
57268
57276
  default:
57269
57277
  switch (t.itemSize) {
@@ -57273,12 +57281,12 @@ class JtA {
57273
57281
  case 2:
57274
57282
  case 3:
57275
57283
  default:
57276
- n = Sn;
57284
+ n = mn;
57277
57285
  break;
57278
57286
  }
57279
57287
  break;
57280
57288
  }
57281
- const a = g.interpolation !== void 0 ? GtA[g.interpolation] : uC, B = this._getArrayFromAccessor(t);
57289
+ const a = g.interpolation !== void 0 ? GtA[g.interpolation] : pC, B = this._getArrayFromAccessor(t);
57282
57290
  for (let Q = 0, E = C.length; Q < E; Q++) {
57283
57291
  const c = new n(
57284
57292
  C[Q] + "." + oa[I.path],
@@ -57302,7 +57310,7 @@ class JtA {
57302
57310
  }
57303
57311
  _createCubicSplineTrackInterpolant(A) {
57304
57312
  A.createInterpolant = function(t) {
57305
- const g = this instanceof pC ? ktA : i2;
57313
+ const g = this instanceof fC ? ktA : i2;
57306
57314
  return new g(this.times, this.values, this.getValueSize() / 3, t);
57307
57315
  }, A.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline = !0;
57308
57316
  }
@@ -57675,7 +57683,7 @@ function I2(i) {
57675
57683
  });
57676
57684
  }
57677
57685
  }
57678
- const TC = tI, ap = "$___Export_Components", LtA = "NEEDLE_components";
57686
+ const HC = tI, ap = "$___Export_Components", LtA = "NEEDLE_components";
57679
57687
  var SBA;
57680
57688
  class xtA {
57681
57689
  constructor() {
@@ -57730,20 +57738,20 @@ class TtA {
57730
57738
  !t || t.length <= 0 || (delete A.userData.components, A[ap] = t);
57731
57739
  }
57732
57740
  afterSerializeUserData(A, e) {
57733
- if (A.type === "Scene" && TC && console.log("DONE", JSON.stringify(e)), A[ap] === void 0)
57741
+ if (A.type === "Scene" && HC && console.log("DONE", JSON.stringify(e)), A[ap] === void 0)
57734
57742
  return;
57735
57743
  const t = A[ap];
57736
57744
  delete A[ap], t !== null && (A.userData.components = t);
57737
57745
  }
57738
57746
  writeNode(A, e) {
57739
57747
  const t = this.writer.json.nodes.length;
57740
- TC && console.log(A.name, t, A.uuid);
57748
+ HC && console.log(A.name, t, A.uuid);
57741
57749
  const g = new YtA(A, t, e);
57742
57750
  this.exportContext[t] = g, this.objectToNodeMap[A.uuid] = t;
57743
57751
  }
57744
57752
  afterParse(A) {
57745
57753
  var e;
57746
- TC && console.log("AFTER", A);
57754
+ HC && console.log("AFTER", A);
57747
57755
  for (const t in this.exportContext) {
57748
57756
  const g = this.exportContext[t], I = g.node, o = g.nodeDef, s = g.nodeIndex, C = (e = I.userData) == null ? void 0 : e.components;
57749
57757
  if (!C || C.length <= 0)
@@ -57753,17 +57761,17 @@ class TtA {
57753
57761
  const a = [];
57754
57762
  for (const B of C) {
57755
57763
  this.context.target = B;
57756
- const Q = DC().writeBuiltinComponentData(B, this.context);
57764
+ const Q = yC().writeBuiltinComponentData(B, this.context);
57757
57765
  Q !== null && a.push(Q);
57758
57766
  }
57759
- a.length > 0 && (n[mQ] = a, TC && console.log("DID WRITE", I, "nodeIndex", s, a));
57767
+ a.length > 0 && (n[mQ] = a, HC && console.log("DID WRITE", I, "nodeIndex", s, a));
57760
57768
  }
57761
57769
  }
57762
57770
  // -------------------------------------
57763
57771
  // LOADING
57764
57772
  // called by GLTFLoader
57765
57773
  beforeRoot() {
57766
- return TC && console.log("BEGIN LOAD"), this.nodeToObjectMap = {}, null;
57774
+ return HC && console.log("BEGIN LOAD"), this.nodeToObjectMap = {}, null;
57767
57775
  }
57768
57776
  // called by GLTFLoader
57769
57777
  async afterRoot(A) {
@@ -57771,7 +57779,7 @@ class TtA {
57771
57779
  if (!t)
57772
57780
  return;
57773
57781
  const g = t[this.name];
57774
- TC && console.log("After root", A, this.parser, t);
57782
+ HC && console.log("After root", A, this.parser, t);
57775
57783
  const I = [];
57776
57784
  if (g === !0) {
57777
57785
  const o = e.json.nodes;
@@ -57787,7 +57795,7 @@ class TtA {
57787
57795
  const B = a[this.name];
57788
57796
  if (!B)
57789
57797
  continue;
57790
- TC && console.log("NODE", C);
57798
+ HC && console.log("NODE", C);
57791
57799
  const Q = this.nodeToObjectMap[n];
57792
57800
  if (!Q) {
57793
57801
  console.error("Could not find object for node index: " + n, C, e);
@@ -57805,10 +57813,10 @@ class TtA {
57805
57813
  const t = e[mQ];
57806
57814
  if (t) {
57807
57815
  const g = new Array();
57808
- TC && console.log(A.name, t);
57816
+ HC && console.log(A.name, t);
57809
57817
  for (const I in t) {
57810
57818
  const o = t[I];
57811
- TC && console.log("Serialized data", JSON.parse(JSON.stringify(o))), o && this.parser && g.push(
57819
+ HC && console.log("Serialized data", JSON.parse(JSON.stringify(o))), o && this.parser && g.push(
57812
57820
  BU(this.parser, o).catch((s) => console.error(`Error while resolving references (see console for details)
57813
57821
  `, s, A, o))
57814
57822
  ), A.userData = A.userData || {}, A.userData[mQ] = A.userData[mQ] || [], A.userData[mQ].push(o);
@@ -58214,7 +58222,7 @@ const Vh = class {
58214
58222
  const Q = this.onProgressiveLoadStart(A, e, B, t, g);
58215
58223
  try {
58216
58224
  tg && console.log("Load texture from uri: " + B);
58217
- const c = await new ln().loadAsync(B);
58225
+ const c = await new dn().loadAsync(B);
58218
58226
  return c ? (c.guid = C.guid, c.flipY = !1, c.needsUpdate = !0, c.colorSpace = I.colorSpace, tg && console.log(C, c)) : tg && console.warn("failed loading", B), c;
58219
58227
  } finally {
58220
58228
  this.onProgressiveLoadEnd(Q);
@@ -58791,7 +58799,7 @@ class niA extends qn {
58791
58799
  const t = A, g = new sB(t.image.width, t.image.height, {
58792
58800
  colorSpace: vt
58793
58801
  });
58794
- return g.texture = t, t.isRenderTargetTexture = !0, t.flipY = !0, t.offset.y = 1, t.repeat.y = -1, t.needsUpdate = !0, t instanceof cC && (t.isCompressedTexture = !1, t.format = Mt), g;
58802
+ return g.texture = t, t.isRenderTargetTexture = !0, t.flipY = !0, t.offset.y = 1, t.repeat.y = -1, t.needsUpdate = !0, t instanceof hC && (t.isCompressedTexture = !1, t.format = Mt), g;
58795
58803
  }
58796
58804
  }
58797
58805
  }
@@ -58870,7 +58878,7 @@ var QiA = Object.defineProperty, EiA = Object.getOwnPropertyDescriptor, s2 = (i,
58870
58878
  };
58871
58879
  const _c = CA("debugreflectionprobe"), lb = CA("noreflectionprobe"), ciA = Symbol("reflectionProbeKey"), hiA = Symbol("original material");
58872
58880
  var xp;
58873
- const OC = (xp = class extends vA {
58881
+ const WC = (xp = class extends vA {
58874
58882
  constructor() {
58875
58883
  var A;
58876
58884
  super();
@@ -58878,12 +58886,12 @@ const OC = (xp = class extends vA {
58878
58886
  r(this, "center");
58879
58887
  r(this, "size");
58880
58888
  r(this, "_boxHelper");
58881
- OC._probes.has(this.context) || OC._probes.set(this.context, []), (A = OC._probes.get(this.context)) == null || A.push(this);
58889
+ WC._probes.has(this.context) || WC._probes.set(this.context, []), (A = WC._probes.get(this.context)) == null || A.push(this);
58882
58890
  }
58883
58891
  static get(A, e, t, g) {
58884
58892
  if (!A || A.isObject3D !== !0 || lb)
58885
58893
  return null;
58886
- const I = OC._probes.get(e);
58894
+ const I = WC._probes.get(e);
58887
58895
  if (I) {
58888
58896
  for (const o of I)
58889
58897
  if (o.__didAwake || o.__internalAwake(), o.enabled) {
@@ -58914,7 +58922,7 @@ const OC = (xp = class extends vA {
58914
58922
  this._boxHelper = this.gameObject.addNewComponent(hs), this._boxHelper.updateBox(!0), _c && this._boxHelper.showHelper(5592320, !0), this.texture && (this.texture.mapping = Vo, this.texture.colorSpace = We, this.texture.needsUpdate = !0);
58915
58923
  }
58916
58924
  onDestroy() {
58917
- const A = OC._probes.get(this.context);
58925
+ const A = WC._probes.get(this.context);
58918
58926
  if (A) {
58919
58927
  const e = A.indexOf(this);
58920
58928
  e >= 0 && A.splice(e, 1);
@@ -58924,8 +58932,8 @@ const OC = (xp = class extends vA {
58924
58932
  var t;
58925
58933
  if (lb || !this.enabled || ((t = A.sharedMaterials) == null ? void 0 : t.length) <= 0 || !this.texture)
58926
58934
  return;
58927
- let e = OC._rendererMaterialsCache.get(A);
58928
- e || (e = [], OC._rendererMaterialsCache.set(A, e));
58935
+ let e = WC._rendererMaterialsCache.get(A);
58936
+ e || (e = [], WC._rendererMaterialsCache.set(A, e));
58929
58937
  for (let g = 0; g < A.sharedMaterials.length; g++) {
58930
58938
  const I = A.sharedMaterials[g];
58931
58939
  if (!I || I.envMap === void 0)
@@ -58951,7 +58959,7 @@ const OC = (xp = class extends vA {
58951
58959
  }
58952
58960
  }
58953
58961
  onUnset(A) {
58954
- const e = OC._rendererMaterialsCache.get(A);
58962
+ const e = WC._rendererMaterialsCache.get(A);
58955
58963
  if (e)
58956
58964
  for (let t = 0; t < e.length; t++) {
58957
58965
  const g = e[t];
@@ -58962,7 +58970,7 @@ const OC = (xp = class extends vA {
58962
58970
  // and some need reflection probe and some don't
58963
58971
  // we need to make sure we don't override the material but use a copy
58964
58972
  r(xp, "_rendererMaterialsCache", /* @__PURE__ */ new Map()), xp);
58965
- let ud = OC;
58973
+ let ud = WC;
58966
58974
  s2([
58967
58975
  D(y)
58968
58976
  ], ud.prototype, "center", 2);
@@ -59282,7 +59290,7 @@ const a2 = class extends vA {
59282
59290
  return !0;
59283
59291
  }
59284
59292
  start() {
59285
- if (this.enableInstancing && !ub && (this.setInstancingEnabled(!0), lC.markDirty(this.gameObject)), this.gameObject.frustumCulled = this.allowOcclusionWhenDynamic, this.isMultiMaterialObject(this.gameObject))
59293
+ if (this.enableInstancing && !ub && (this.setInstancingEnabled(!0), dC.markDirty(this.gameObject)), this.gameObject.frustumCulled = this.allowOcclusionWhenDynamic, this.isMultiMaterialObject(this.gameObject))
59286
59294
  for (let A = 0; A < this.gameObject.children.length; A++) {
59287
59295
  const e = this.gameObject.children[A];
59288
59296
  e.frustumCulled = this.allowOcclusionWhenDynamic;
@@ -61534,7 +61542,7 @@ document.addEventListener("pointerdown", Qw);
61534
61542
  document.addEventListener("click", Qw);
61535
61543
  document.addEventListener("dragstart", Qw);
61536
61544
  document.addEventListener("touchstart", Qw);
61537
- const PC = class extends vA {
61545
+ const jC = class extends vA {
61538
61546
  constructor() {
61539
61547
  super(...arguments);
61540
61548
  r(this, "clip", "");
@@ -61561,7 +61569,7 @@ const PC = class extends vA {
61561
61569
  (this.playInBackground === !1 || vn()) && (this.wasPlaying = this.isPlaying, this.isPlaying && this.pause());
61562
61570
  break;
61563
61571
  case "visible":
61564
- kg && console.log("visible", this.enabled, this.playOnAwake, !this.isPlaying, PC.userInteractionRegistered, this.wasPlaying), this.enabled && this.playOnAwake && !this.isPlaying && PC.userInteractionRegistered && this.wasPlaying && this.play();
61572
+ kg && console.log("visible", this.enabled, this.playOnAwake, !this.isPlaying, jC.userInteractionRegistered, this.wasPlaying), this.enabled && this.playOnAwake && !this.isPlaying && jC.userInteractionRegistered && this.wasPlaying && this.play();
61565
61573
  break;
61566
61574
  }
61567
61575
  });
@@ -61571,14 +61579,14 @@ const PC = class extends vA {
61571
61579
  });
61572
61580
  r(this, "lerp", (A, e, t) => A * (1 - t) + e * t);
61573
61581
  r(this, "createAudio", (A) => {
61574
- kg && console.log("audio buffer loaded"), PC.registerWaitForAllowAudio(() => {
61582
+ kg && console.log("audio buffer loaded"), jC.registerWaitForAllowAudio(() => {
61575
61583
  kg && console.log("finished loading", A);
61576
61584
  const e = this.Sound;
61577
61585
  if (!e) {
61578
61586
  console.warn("Failed getting sound", this.name);
61579
61587
  return;
61580
61588
  }
61581
- e.isPlaying && e.stop(), A && e.setBuffer(A), e.loop = this._loop, this.context.application.muted ? e.setVolume(0) : e.setVolume(this.volume), e.autoplay = this.shouldPlay, this.applySpatialDistanceSettings(), e.isPlaying && e.stop(), kg && console.log(this.name, this.shouldPlay, PC.userInteractionRegistered, this), this.shouldPlay && PC.userInteractionRegistered && this.play();
61589
+ e.isPlaying && e.stop(), A && e.setBuffer(A), e.loop = this._loop, this.context.application.muted ? e.setVolume(0) : e.setVolume(this.volume), e.autoplay = this.shouldPlay, this.applySpatialDistanceSettings(), e.isPlaying && e.stop(), kg && console.log(this.name, this.shouldPlay, jC.userInteractionRegistered, this), this.shouldPlay && jC.userInteractionRegistered && this.play();
61582
61590
  });
61583
61591
  });
61584
61592
  r(this, "_lastContextTime", 0);
@@ -61628,7 +61636,7 @@ const PC = class extends vA {
61628
61636
  this._volume = A, this.sound && !this.context.application.muted && (kg && console.log(this.name, "audio set volume", A), this.sound.setVolume(A));
61629
61637
  }
61630
61638
  get Sound() {
61631
- if (!this.sound && PC.userInteractionRegistered) {
61639
+ if (!this.sound && jC.userInteractionRegistered) {
61632
61640
  let A = BA.getComponent(this.context.mainCamera, nB) ?? BA.findObjectOfType(nB, this.context);
61633
61641
  !A && this.context.mainCamera && (A = BA.addNewComponent(this.context.mainCamera, nB)), A != null && A.listener ? (this.sound = new Ox(A.listener), this.gameObject.add(this.sound)) : kg && console.warn("No audio listener found in scene - can not play audio");
61634
61642
  }
@@ -61641,7 +61649,7 @@ const PC = class extends vA {
61641
61649
  kg && console.log(this), this.audioLoader = new Wf(), this.playOnAwake && (this.shouldPlay = !0);
61642
61650
  }
61643
61651
  onEnable() {
61644
- PC.userInteractionRegistered ? this.playOnAwake && this.context.application.isVisible && this.play() : PC.registerWaitForAllowAudio(() => {
61652
+ jC.userInteractionRegistered ? this.playOnAwake && this.context.application.isVisible && this.play() : jC.registerWaitForAllowAudio(() => {
61645
61653
  this.enabled && !this.destroyed && this.shouldPlay && this.onNewClip(this.clip);
61646
61654
  }), globalThis.addEventListener("visibilitychange", this.onVisibilityChanged), this.context.application.addEventListener(FG.MuteChanged, this.onApplicationMuteChanged);
61647
61655
  }
@@ -61723,7 +61731,7 @@ Using the assigned clip instead:`, this.clip), A = this.clip);
61723
61731
  this.helper && (this.isPlaying && this.helper.update(), this.helper.visible = this.isPlaying), this._needUpdateSpatialDistanceSettings && this.applySpatialDistanceSettings(), this.sound && !this.sound.isPlaying && this.shouldPlay && !this._hasEnded && (this._hasEnded = !0, kg && console.log("Audio clip ended", this.clip), this.dispatchEvent(new CustomEvent("ended", { detail: this })));
61724
61732
  }
61725
61733
  };
61726
- let Zi = PC;
61734
+ let Zi = jC;
61727
61735
  xn([
61728
61736
  D(URL)
61729
61737
  ], Zi.prototype, "clip", 2);
@@ -62318,7 +62326,7 @@ tU.prototype.interactable = {
62318
62326
  }
62319
62327
  };
62320
62328
  const Wo = Symbol("shadowDomOwner");
62321
- class yC extends vA {
62329
+ class wC extends vA {
62322
62330
  constructor() {
62323
62331
  super(...arguments);
62324
62332
  r(this, "shadowComponent", null);
@@ -62362,7 +62370,7 @@ class yC extends vA {
62362
62370
  var o;
62363
62371
  this.removeShadowComponent();
62364
62372
  const g = this.isRoot() ? this.gameObject : this.gameObject.parent;
62365
- if (this._parentComponent = BA.getComponentInParent(g, yC), !this._parentComponent) {
62373
+ if (this._parentComponent = BA.getComponentInParent(g, wC), !this._parentComponent) {
62366
62374
  console.warn(`Component "${this.name}" doesn't have a UI parent anywhere. Do you have an UI element outside a Canvas? UI components must be a child of a Canvas component`, this);
62367
62375
  return;
62368
62376
  }
@@ -62399,7 +62407,7 @@ class yC extends vA {
62399
62407
  this.shadowComponent && (this.shadowComponent.interactable = e);
62400
62408
  }
62401
62409
  }
62402
- class cw extends yC {
62410
+ class cw extends wC {
62403
62411
  awake() {
62404
62412
  super.awake();
62405
62413
  }
@@ -62727,13 +62735,21 @@ const AC = class extends vA {
62727
62735
  handleMainInteraction(e, t, g) {
62728
62736
  if (t.pointerId === void 0)
62729
62737
  return;
62730
- const I = this.pressedByID.get(t.pointerId), o = g !== e, s = this.context.input.getPointerPositionLastFrame(t.pointerId), C = this.context.input.getPointerPosition(t.pointerId), n = s && !se.approximately(s, C);
62731
- this.propagate(e, t, (a) => {
62732
- var Q;
62733
- const B = a;
62734
- B.interactable !== !1 && (B.onPointerEnter && o && (B[this.pointerEnterSymbol] || (B[this.pointerEnterSymbol] = !0, delete B[this.pointerExitSymbol], B.onPointerEnter(t))), t.isDown && B.onPointerDown && (B.onPointerDown(t), I == null || I.handlers.add(B)), B.onPointerMove && n && B.onPointerMove(t), t.isUp && (B.onPointerUp && (B.onPointerUp(t), I == null || I.handlers.delete(B)), B.onPointerExit && ((Q = t.event) == null ? void 0 : Q.pointerType) === wR.Touch && (B.onPointerExit(t), this.hoveredByID.delete(t.pointerId))), t.isClicked && B.onPointerClick && B.onPointerClick(t));
62735
- }), t.isUp && (I == null || I.handlers.forEach((a) => {
62736
- a.onPointerUp && a.onPointerUp(t);
62738
+ const I = this.pressedByID.get(t.pointerId), o = g !== e;
62739
+ let s = !0;
62740
+ switch (t.event.pointerType) {
62741
+ case "mouse":
62742
+ case "touch":
62743
+ const C = this.context.input.getPointerPositionLastFrame(t.pointerId), n = this.context.input.getPointerPosition(t.pointerId);
62744
+ s = C && !se.approximately(C, n);
62745
+ break;
62746
+ }
62747
+ this.propagate(e, t, (C) => {
62748
+ var a;
62749
+ const n = C;
62750
+ n.interactable !== !1 && (n.onPointerEnter && o && (n[this.pointerEnterSymbol] || (n[this.pointerEnterSymbol] = !0, delete n[this.pointerExitSymbol], n.onPointerEnter(t))), t.isDown && n.onPointerDown && (n.onPointerDown(t), I == null || I.handlers.add(n)), n.onPointerMove && s && n.onPointerMove(t), t.isUp && (n.onPointerUp && (n.onPointerUp(t), I == null || I.handlers.delete(n)), n.onPointerExit && ((a = t.event) == null ? void 0 : a.pointerType) === wR.Touch && (n.onPointerExit(t), this.hoveredByID.delete(t.pointerId))), t.isClicked && n.onPointerClick && n.onPointerClick(t));
62751
+ }), t.isUp && (I == null || I.handlers.forEach((C) => {
62752
+ C.onPointerUp && C.onPointerUp(t);
62737
62753
  }), this.pressedByID.delete(t.pointerId));
62738
62754
  }
62739
62755
  /**
@@ -63287,7 +63303,7 @@ class m2 {
63287
63303
  return A.prep(4, 36), A.prep(4, 12), A.writeFloat32(a), A.writeFloat32(n), A.writeFloat32(C), A.prep(4, 12), A.writeFloat32(s), A.writeFloat32(o), A.writeFloat32(I), A.prep(4, 12), A.writeFloat32(g), A.writeFloat32(t), A.writeFloat32(e), A.offset();
63288
63304
  }
63289
63305
  }
63290
- class sn {
63306
+ class nn {
63291
63307
  constructor() {
63292
63308
  r(this, "bb", null);
63293
63309
  r(this, "bb_pos", 0);
@@ -63296,10 +63312,10 @@ class sn {
63296
63312
  return this.bb_pos = A, this.bb = e, this;
63297
63313
  }
63298
63314
  static getRootAsSyncedTransformModel(A, e) {
63299
- return (e || new sn()).__init(A.readInt32(A.position()) + A.position(), A);
63315
+ return (e || new nn()).__init(A.readInt32(A.position()) + A.position(), A);
63300
63316
  }
63301
63317
  static getSizePrefixedRootAsSyncedTransformModel(A, e) {
63302
- return A.setPosition(A.position() + hU), (e || new sn()).__init(A.readInt32(A.position()) + A.position(), A);
63318
+ return A.setPosition(A.position() + hU), (e || new nn()).__init(A.readInt32(A.position()) + A.position(), A);
63303
63319
  }
63304
63320
  guid(A) {
63305
63321
  const e = this.bb.__offset(this.bb_pos, 4);
@@ -63360,23 +63376,23 @@ function lgA(i) {
63360
63376
  function OQA(i) {
63361
63377
  Ed(i, ag.OnBeforeRender);
63362
63378
  }
63363
- const WC = CA("debugsync"), Ml = "STRS";
63364
- E_(Ml, sn.getRootAsSyncedTransformModel);
63379
+ const VC = CA("debugsync"), Ml = "STRS";
63380
+ E_(Ml, nn.getRootAsSyncedTransformModel);
63365
63381
  const Ps = new Bd();
63366
63382
  function k2(i, A, e = !0) {
63367
63383
  Ps.clear();
63368
63384
  const t = Ps.createString(i);
63369
- sn.startSyncedTransformModel(Ps), sn.addGuid(Ps, t), sn.addFast(Ps, e);
63385
+ nn.startSyncedTransformModel(Ps), nn.addGuid(Ps, t), nn.addFast(Ps, e);
63370
63386
  const g = A.worldPosition, I = A.worldEuler, o = A.gameObject.scale;
63371
- sn.addTransform(Ps, m2.createTransform(Ps, g.x, g.y, g.z, I.x, I.y, I.z, o.x, o.y, o.z));
63372
- const s = sn.endSyncedTransformModel(Ps);
63387
+ nn.addTransform(Ps, m2.createTransform(Ps, g.x, g.y, g.z, I.x, I.y, I.z, o.x, o.y, o.z));
63388
+ const s = nn.endSyncedTransformModel(Ps);
63373
63389
  return Ps.finish(s, Ml), Ps.asUint8Array();
63374
63390
  }
63375
63391
  let AM = 0, Lh = 0;
63376
63392
  lgA((i) => {
63377
63393
  var t;
63378
63394
  const e = ((t = i.connection.currentServerUrl) == null ? void 0 : t.includes("glitch")) ? 10 : 40;
63379
- Lh = Math.floor(AM / e), AM = 0, WC && Lh > 0 && console.log("Sync Transform Fast Interval", Lh);
63395
+ Lh = Math.floor(AM / e), AM = 0, VC && Lh > 0 && console.log("Sync Transform Fast Interval", Lh);
63380
63396
  });
63381
63397
  class lB extends vA {
63382
63398
  constructor() {
@@ -63406,7 +63422,7 @@ class lB extends vA {
63406
63422
  }
63407
63423
  /** Request ownership of an object - you need to be connected to a room */
63408
63424
  requestOwnership() {
63409
- WC && console.log("Request ownership"), this._model ? this._model.requestOwnership() : (this._shouldRequestOwnership = !0, this._needsUpdate = !0);
63425
+ VC && console.log("Request ownership"), this._model ? this._model.requestOwnership() : (this._shouldRequestOwnership = !0, this._needsUpdate = !0);
63410
63426
  }
63411
63427
  hasOwnership() {
63412
63428
  var e;
@@ -63417,7 +63433,7 @@ class lB extends vA {
63417
63433
  return (e = this._model) == null ? void 0 : e.isOwned;
63418
63434
  }
63419
63435
  awake() {
63420
- WC && console.log("new instance", this.guid, this), this._receivedDataBefore = !1, this._targetPosition = new y(), this._targetRotation = new UA(), this.lastWorldPos = new y(), this.lastWorldRotation = new UA(), this.rb = BA.getComponentInChildren(this.gameObject, oi), this.rb && (this._wasKinematic = this.rb.isKinematic), this.receivedUpdate = !0, this._model = new gH(this.context.connection, this.guid), this.context.connection.isConnected && this.tryGetLastState(), this.joinedRoomCallback = this.tryGetLastState.bind(this), this.context.connection.beginListen(pt.JoinedRoom, this.joinedRoomCallback), this.receivedDataCallback = this.onReceivedData.bind(this), this.context.connection.beginListenBinary(Ml, this.receivedDataCallback);
63436
+ VC && console.log("new instance", this.guid, this), this._receivedDataBefore = !1, this._targetPosition = new y(), this._targetRotation = new UA(), this.lastWorldPos = new y(), this.lastWorldRotation = new UA(), this.rb = BA.getComponentInChildren(this.gameObject, oi), this.rb && (this._wasKinematic = this.rb.isKinematic), this.receivedUpdate = !0, this._model = new gH(this.context.connection, this.guid), this.context.connection.isConnected && this.tryGetLastState(), this.joinedRoomCallback = this.tryGetLastState.bind(this), this.context.connection.beginListen(pt.JoinedRoom, this.joinedRoomCallback), this.receivedDataCallback = this.onReceivedData.bind(this), this.context.connection.beginListenBinary(Ml, this.receivedDataCallback);
63421
63437
  }
63422
63438
  onDestroy() {
63423
63439
  this.syncDestroy && y9(this.guid, this.context.connection), this._model = null, this.context.connection.stopListen(pt.JoinedRoom, this.joinedRoomCallback), this.context.connection.stopListenBinary(Ml, this.receivedDataCallback);
@@ -63429,10 +63445,10 @@ class lB extends vA {
63429
63445
  onReceivedData(e) {
63430
63446
  var t;
63431
63447
  if (!this.destroyed && typeof e.guid == "function" && e.guid() === this.guid) {
63432
- WC && console.log("new data", this.context.connection.connectionId, this.context.time.frameCount, this.guid, e), this.receivedUpdate = !0, this._receivedFastUpdate = e.fast();
63448
+ VC && console.log("new data", this.context.connection.connectionId, this.context.time.frameCount, this.guid, e), this.receivedUpdate = !0, this._receivedFastUpdate = e.fast();
63433
63449
  const g = e.transform();
63434
63450
  if (g) {
63435
- lC.markDirty(this.gameObject, !0);
63451
+ dC.markDirty(this.gameObject, !0);
63436
63452
  const I = g.position();
63437
63453
  I && (this.interpolatePosition && ((t = this._targetPosition) == null || t.set(I.x(), I.y(), I.z())), (!this.interpolatePosition || !this._receivedDataBefore) && this.setWorldPosition(I.x(), I.y(), I.z()));
63438
63454
  const o = g.rotation();
@@ -63451,14 +63467,14 @@ class lB extends vA {
63451
63467
  if (!this.activeAndEnabled || !this.context.connection.isConnected)
63452
63468
  return;
63453
63469
  if (!this.context.connection.isInRoom || !this._model) {
63454
- WC && console.log("no model or room", this.name, this.guid, this.context.connection.isInRoom);
63470
+ VC && console.log("no model or room", this.name, this.guid, this.context.connection.isInRoom);
63455
63471
  return;
63456
63472
  }
63457
63473
  this._shouldRequestOwnership && (this._shouldRequestOwnership = !1, this._model.requestOwnership());
63458
63474
  const e = this.worldPosition, t = this.worldQuaternion;
63459
63475
  if (this._model.isOwned && !this.receivedUpdate) {
63460
63476
  const o = e.distanceTo(this.lastWorldPos), s = t.angleTo(this.lastWorldRotation), C = this._model.hasOwnership || this.fastMode ? 1e-4 : 1e-3;
63461
- (o > C || s > C) && (this._model.hasOwnership ? this._needsUpdate = !0 : (WC && console.log(this.guid, "reset because not owned but", this.gameObject.name, this.lastWorldPos), this.worldPosition = this.lastWorldPos, e.copy(this.lastWorldPos), this.worldQuaternion = this.lastWorldRotation, t.copy(this.lastWorldRotation), lC.markDirty(this.gameObject, !0), this._needsUpdate = !1));
63477
+ (o > C || s > C) && (this._model.hasOwnership ? this._needsUpdate = !0 : (VC && console.log(this.guid, "reset because not owned but", this.gameObject.name, this.lastWorldPos), this.worldPosition = this.lastWorldPos, e.copy(this.lastWorldPos), this.worldQuaternion = this.lastWorldRotation, t.copy(this.lastWorldRotation), dC.markDirty(this.gameObject, !0), this._needsUpdate = !1));
63462
63478
  }
63463
63479
  if (this._model && !this._model.hasOwnership && this._model.isOwned && this._receivedDataBefore) {
63464
63480
  const s = this._receivedFastUpdate || this.fastMode ? 0.5 : 0.3;
@@ -63471,7 +63487,7 @@ class lB extends vA {
63471
63487
  const n = this.worldQuaternion;
63472
63488
  n.slerp(this._targetRotation, s), this.worldQuaternion = n, C = !0;
63473
63489
  }
63474
- C && lC.markDirty(this.gameObject, !0);
63490
+ C && dC.markDirty(this.gameObject, !0);
63475
63491
  }
63476
63492
  if (this.receivedUpdate = !1, this.lastWorldPos.copy(e), this.lastWorldRotation.copy(t), !this._model)
63477
63493
  return;
@@ -63479,12 +63495,12 @@ class lB extends vA {
63479
63495
  this.rb && (this.rb.isKinematic = this._model.isOwned ?? !1, this.rb.setVelocity(0, 0, 0));
63480
63496
  return;
63481
63497
  }
63482
- this.rb && (this._wasKinematic !== void 0 && (WC && console.log("reset kinematic", this.rb.name, this._wasKinematic), this.rb.isKinematic = this._wasKinematic), this.gameObject.position.distanceTo(new y(0, 0, 0)) > 1e3 && (WC && console.log("RESET", this.name), this.gameObject.position.set(0, 1, 0), this.rb.setVelocity(0, 0, 0)));
63498
+ this.rb && (this._wasKinematic !== void 0 && (VC && console.log("reset kinematic", this.rb.name, this._wasKinematic), this.rb.isKinematic = this._wasKinematic), this.gameObject.position.distanceTo(new y(0, 0, 0)) > 1e3 && (VC && console.log("RESET", this.name), this.gameObject.position.set(0, 1, 0), this.rb.setVelocity(0, 0, 0)));
63483
63499
  const g = 10, I = this.rb || this.fastMode;
63484
63500
  if (this._needsUpdate && (this.context.time.frameCount % g === 0 || I)) {
63485
63501
  if (AM++, I && Lh > 0 && this.context.time.frameCount % Lh !== 0)
63486
63502
  return;
63487
- WC && console.log("send update", this.context.connection.connectionId, this.guid, this.gameObject.name, this.gameObject.guid), this.overridePhysics && this.rb, this._needsUpdate = !1;
63503
+ VC && console.log("send update", this.context.connection.connectionId, this.guid, this.gameObject.name, this.gameObject.guid), this.overridePhysics && this.rb, this._needsUpdate = !1;
63488
63504
  const o = k2(this.guid, this, !!I);
63489
63505
  this.context.connection.sendBinary(o);
63490
63506
  }
@@ -64201,14 +64217,14 @@ hw([
64201
64217
  D(Yg)
64202
64218
  ], yd.prototype, "reaction", 2);
64203
64219
  var Ik;
64204
- const jC = (Ik = class extends vA {
64220
+ const zC = (Ik = class extends vA {
64205
64221
  constructor() {
64206
64222
  super(...arguments);
64207
64223
  r(this, "events");
64208
64224
  }
64209
64225
  static invoke(A) {
64210
- if (jC.receivers[A]) {
64211
- const e = jC.receivers[A];
64226
+ if (zC.receivers[A]) {
64227
+ const e = zC.receivers[A];
64212
64228
  if (!e)
64213
64229
  return;
64214
64230
  for (const t of e)
@@ -64221,14 +64237,14 @@ const jC = (Ik = class extends vA {
64221
64237
  onEnable() {
64222
64238
  if (this.events)
64223
64239
  for (const A of this.events)
64224
- jC.receivers[A.signal.guid] || (jC.receivers[A.signal.guid] = []), jC.receivers[A.signal.guid].push(this);
64240
+ zC.receivers[A.signal.guid] || (zC.receivers[A.signal.guid] = []), zC.receivers[A.signal.guid].push(this);
64225
64241
  }
64226
64242
  onDisable() {
64227
64243
  if (this.events) {
64228
64244
  for (const A of this.events)
64229
- if (jC.receivers[A.signal.guid]) {
64230
- const e = jC.receivers[A.signal.guid].indexOf(this);
64231
- e >= 0 && jC.receivers[A.signal.guid].splice(e, 1);
64245
+ if (zC.receivers[A.signal.guid]) {
64246
+ const e = zC.receivers[A.signal.guid].indexOf(this);
64247
+ e >= 0 && zC.receivers[A.signal.guid].splice(e, 1);
64232
64248
  }
64233
64249
  }
64234
64250
  }
@@ -64265,12 +64281,12 @@ const jC = (Ik = class extends vA {
64265
64281
  // }
64266
64282
  // }
64267
64283
  }, r(Ik, "receivers", {}), Ik);
64268
- let wd = jC;
64284
+ let wd = zC;
64269
64285
  hw([
64270
64286
  D(yd)
64271
64287
  ], wd.prototype, "events", 2);
64272
- var bo = /* @__PURE__ */ ((i) => (i.Activation = "ActivationTrack", i.Animation = "AnimationTrack", i.Audio = "AudioTrack", i.Control = "ControlTrack", i.Marker = "MarkerTrack", i.Signal = "SignalTrack", i))(bo || {}), VC = /* @__PURE__ */ ((i) => (i[i.None = 0] = "None", i[i.Hold = 1] = "Hold", i[i.Loop = 2] = "Loop", i[i.PingPong = 3] = "PingPong", i[i.Continue = 4] = "Continue", i))(VC || {}), M2 = /* @__PURE__ */ ((i) => (i.Signal = "SignalEmitter", i))(M2 || {});
64273
- const En = CA("debugtimeline");
64288
+ var bo = /* @__PURE__ */ ((i) => (i.Activation = "ActivationTrack", i.Animation = "AnimationTrack", i.Audio = "AudioTrack", i.Control = "ControlTrack", i.Marker = "MarkerTrack", i.Signal = "SignalTrack", i))(bo || {}), ZC = /* @__PURE__ */ ((i) => (i[i.None = 0] = "None", i[i.Hold = 1] = "Hold", i[i.Loop = 2] = "Loop", i[i.PingPong = 3] = "PingPong", i[i.Continue = 4] = "Continue", i))(ZC || {}), M2 = /* @__PURE__ */ ((i) => (i.Signal = "SignalEmitter", i))(M2 || {});
64289
+ const QC = CA("debugtimeline");
64274
64290
  class dw {
64275
64291
  constructor() {
64276
64292
  r(this, "director");
@@ -64332,12 +64348,12 @@ class MgA {
64332
64348
  const e = A.getClip();
64333
64349
  this.clip = e;
64334
64350
  const t = A.getRoot(), g = t.name + ".position", I = t.name + ".quaternion";
64335
- En && console.log(e.name, e.tracks, g);
64351
+ QC && console.log(e.name, e.tracks, g);
64336
64352
  for (const o of e.tracks)
64337
64353
  if (!(o.times.length <= 0)) {
64338
64354
  if (o.name.endsWith(g))
64339
- this.rootStartPosition = new y().fromArray(o.values, 0), this.rootEndPosition = new y().fromArray(o.values, o.values.length - 3), this.rootPositionOffset = this.rootEndPosition.clone().sub(this.rootStartPosition), En && console.log(this.rootPositionOffset);
64340
- else if (o.name.endsWith(I) && (this.rootStartQuaternion = new UA().fromArray(o.values, 0), this.rootEndQuaternion = new UA().fromArray(o.values, o.values.length - 4), this.rootQuaternionOffset = this.rootEndQuaternion.clone().multiply(this.rootStartQuaternion), En)) {
64355
+ this.rootStartPosition = new y().fromArray(o.values, 0), this.rootEndPosition = new y().fromArray(o.values, o.values.length - 3), this.rootPositionOffset = this.rootEndPosition.clone().sub(this.rootStartPosition), QC && console.log(this.rootPositionOffset);
64356
+ else if (o.name.endsWith(I) && (this.rootStartQuaternion = new UA().fromArray(o.values, 0), this.rootEndQuaternion = new UA().fromArray(o.values, o.values.length - 4), this.rootQuaternionOffset = this.rootEndQuaternion.clone().multiply(this.rootStartQuaternion), QC)) {
64341
64357
  const s = new Lg().setFromQuaternion(this.rootQuaternionOffset);
64342
64358
  console.log("ROT", s);
64343
64359
  }
@@ -64396,21 +64412,21 @@ class xU extends dw {
64396
64412
  if (C) {
64397
64413
  if (!n) {
64398
64414
  const d = t.tracks[0].name.substring(0, c) + ".quaternion";
64399
- En && console.warn("Create quaternion track", u, h);
64400
- const p = h.quaternion, f = new pC(d, [0, t.duration], [p.x, p.y, p.z, p.w, p.x, p.y, p.z, p.w]);
64415
+ QC && console.warn("Create quaternion track", u, h);
64416
+ const p = h.quaternion, f = new fC(d, [0, t.duration], [p.x, p.y, p.z, p.w, p.x, p.y, p.z, p.w]);
64401
64417
  t.tracks.push(f), this.createRotationInterpolant(t, e, f);
64402
64418
  }
64403
64419
  } else {
64404
64420
  const d = l + ".position";
64405
- En && console.warn("Create position track", u, h);
64406
- const p = h.position, f = new Sn(d, [0, t.duration], [p.x, p.y, p.z, p.x, p.y, p.z]);
64421
+ QC && console.warn("Create position track", u, h);
64422
+ const p = h.position, f = new mn(d, [0, t.duration], [p.x, p.y, p.z, p.x, p.y, p.z]);
64407
64423
  t.tracks.push(f), this.createPositionInterpolant(t, e, f);
64408
64424
  }
64409
64425
  }
64410
64426
  }
64411
64427
  bind() {
64412
64428
  if (!this._didBind) {
64413
- this._didBind = !0, En && console.log(this.models), this.mixer ? this.target = this.mixer.getRoot() : console.warn("No mixer was assigned to animation track");
64429
+ this._didBind = !0, QC && console.log(this.models), this.mixer ? this.target = this.mixer.getRoot() : console.warn("No mixer was assigned to animation track");
64414
64430
  for (const e of this.actions) {
64415
64431
  const t = new MgA(e);
64416
64432
  this._actionOffsets.push(t);
@@ -64442,15 +64458,15 @@ class xU extends dw {
64442
64458
  h.weight = 0;
64443
64459
  const p = e >= u.start && e <= u.end, f = u.preExtrapolationMode, S = u.postExtrapolationMode, m = l < this.clips.length - 1 ? this.models[l + 1] : null;
64444
64460
  let G = p, R = !1;
64445
- if (!G && !I && u.end < e && S !== VC.None ? (!m || m.start > e) && (G = !0, I = !0) : l == 0 && !G && !o && u.start > e && f !== VC.None && (!m || m.start < e) && (G = !0, R = !0, o = !0), G) {
64461
+ if (!G && !I && u.end < e && S !== ZC.None ? (!m || m.start > e) && (G = !0, I = !0) : l == 0 && !G && !o && u.start > e && f !== ZC.None && (!m || m.start < e) && (G = !0, R = !0, o = !0), G) {
64446
64462
  let w = 1;
64447
64463
  w *= this.evaluateWeight(e, l, this.models, G), w *= this.director.weight;
64448
64464
  let k = p;
64449
64465
  if (R)
64450
64466
  switch (f) {
64451
- case VC.Hold:
64467
+ case ZC.Hold:
64452
64468
  break;
64453
- case VC.Loop:
64469
+ case ZC.Loop:
64454
64470
  e += u.start, k = !0;
64455
64471
  break;
64456
64472
  default:
@@ -64459,19 +64475,19 @@ class xU extends dw {
64459
64475
  }
64460
64476
  let K = this.getClipTime(e, u), T = 0;
64461
64477
  const O = d.duration;
64462
- if (R && f === VC.Hold && (K = 0), k) {
64478
+ if (R && f === ZC.Hold && (K = 0), k) {
64463
64479
  if (d.loop)
64464
64480
  for (T += Math.floor(K / (O + 1e-6)); K > O; )
64465
64481
  K -= O;
64466
64482
  } else if (!p && I)
64467
64483
  switch (S) {
64468
- case VC.Hold:
64484
+ case ZC.Hold:
64469
64485
  K = this.getClipTime(u.end, u);
64470
64486
  break;
64471
- case VC.Loop:
64487
+ case ZC.Loop:
64472
64488
  K %= O;
64473
64489
  break;
64474
- case VC.PingPong:
64490
+ case ZC.PingPong:
64475
64491
  const J = Math.floor(K / O) % 2 !== 0;
64476
64492
  K %= O, J && (K = O - K);
64477
64493
  break;
@@ -64491,7 +64507,7 @@ class xU extends dw {
64491
64507
  }
64492
64508
  }
64493
64509
  }
64494
- if (this._useclipOffsets && (this._totalOffsetPosition.lerp(this._totalOffsetPosition2, g), this._totalOffsetRotation.slerp(this._totalOffsetRotation2, g)), this.__mixerError === void 0 && (En || qe()) && ((n = (C = this._animator) == null ? void 0 : C.runtimeAnimatorController) != null && n.mixer) && this.mixer !== ((B = (a = this._animator) == null ? void 0 : a.runtimeAnimatorController) == null ? void 0 : B.mixer) && (this.__mixerError = !0, console.error("AnimationTrack mixer is not shared with the animator controller - this might result in the timeline to not animate properly. Please report a bug to the Needle Engine team!", this)), (Q = this._animator) != null && Q.runtimeAnimatorController) {
64510
+ if (this._useclipOffsets && (this._totalOffsetPosition.lerp(this._totalOffsetPosition2, g), this._totalOffsetRotation.slerp(this._totalOffsetRotation2, g)), this.__mixerError === void 0 && (QC || qe()) && ((n = (C = this._animator) == null ? void 0 : C.runtimeAnimatorController) != null && n.mixer) && this.mixer !== ((B = (a = this._animator) == null ? void 0 : a.runtimeAnimatorController) == null ? void 0 : B.mixer) && (this.__mixerError = !0, console.error("AnimationTrack mixer is not shared with the animator controller - this might result in the timeline to not animate properly. Please report a bug to the Needle Engine team!", this)), (Q = this._animator) != null && Q.runtimeAnimatorController) {
64495
64511
  const l = Math.max(0, 1 - s);
64496
64512
  (c = (E = this._animator) == null ? void 0 : E.runtimeAnimatorController) == null || c.update(l);
64497
64513
  } else
@@ -64543,6 +64559,7 @@ const RgA = CA("mutetimeline"), jQ = class extends dw {
64543
64559
  r(this, "lastTime", 0);
64544
64560
  r(this, "audioSource");
64545
64561
  r(this, "_audioLoader", null);
64562
+ r(this, "_playableDirectorResumed", !1);
64546
64563
  }
64547
64564
  getAudioFilePath(e) {
64548
64565
  const t = this.director.sourceId;
@@ -64556,11 +64573,15 @@ const RgA = CA("mutetimeline"), jQ = class extends dw {
64556
64573
  }
64557
64574
  addModel(e) {
64558
64575
  const t = new hR(this.listener);
64559
- this.audio.push(t), this.models.push(e);
64576
+ this.audio.push(t);
64577
+ const g = e;
64578
+ g._didTriggerPlay = !1, this.models.push(g);
64560
64579
  }
64561
64580
  onDisable() {
64562
64581
  for (const e of this.audio)
64563
64582
  e.isPlaying && e.stop();
64583
+ for (const e of this.models)
64584
+ e._didTriggerPlay = !1;
64564
64585
  }
64565
64586
  onDestroy() {
64566
64587
  for (const e of this.audio)
@@ -64579,36 +64600,44 @@ const RgA = CA("mutetimeline"), jQ = class extends dw {
64579
64600
  const t = this.audio[e];
64580
64601
  t != null && t.isPlaying && t.stop();
64581
64602
  }
64603
+ for (const e of this.models)
64604
+ e._didTriggerPlay = !1;
64605
+ }
64606
+ onPauseChanged() {
64607
+ for (let e = 0; e < this.audio.length; e++) {
64608
+ const t = this.audio[e];
64609
+ t != null && t.isPlaying && t.stop();
64610
+ }
64611
+ this._playableDirectorResumed = this.director.isPlaying;
64582
64612
  }
64583
64613
  evaluate(e) {
64584
64614
  if (RgA || this.track.muted || this.director.speed < 0)
64585
64615
  return;
64586
- const t = this.director.context.application.muted, g = t ? 0.1 : 0;
64587
- for (let I = 0; I < this.models.length; I++) {
64588
- const o = this.models[I], s = this.audio[I], C = o.asset;
64589
- if ((!s || !s.buffer) && this.isInTimeRange(o, e - 1, e + 1) && this.handleAudioLoading(o, s), Zi.userInteractionRegistered !== !1 && !(s === null || !s.buffer))
64590
- if (s.playbackRate = this.director.context.time.timeScale * this.director.speed, s.loop = C.loop, e >= o.start && e <= o.end && e < this.director.duration) {
64591
- if (this.director.isPlaying == !1) {
64592
- if (s.isPlaying && s.stop(), this.lastTime === e)
64593
- continue;
64594
- } else if (!s.isPlaying)
64595
- s.offset = o.clipIn + (e - o.start) * o.timeScale, s.play(g);
64616
+ const t = this.director.context.application.muted, g = this._playableDirectorResumed;
64617
+ this._playableDirectorResumed = !1;
64618
+ const I = t ? 0.1 : 0;
64619
+ for (let o = 0; o < this.models.length; o++) {
64620
+ const s = this.models[o], C = this.audio[o], n = s.asset;
64621
+ if ((!C || !C.buffer) && this.isInTimeRange(s, e - 1, e + 1) && this.handleAudioLoading(s, C), Zi.userInteractionRegistered !== !1 && !(C === null || !C.buffer))
64622
+ if (C.playbackRate = this.director.context.time.timeScale * this.director.speed, C.loop = n.loop, e >= s.start && e <= s.end && e < this.director.duration) {
64623
+ if (!C.isPlaying || !this.director.isPlaying)
64624
+ (g || !s._didTriggerPlay && this.lastTime < e) && (s.duration * s.timeScale > 0.3 ? C.offset = s.clipIn + (e - s.start) * s.timeScale : C.offset = 0, QC && console.log("Timeline Audio (" + this.track.name + ") play with offset " + C.offset + " - " + s.asset.clip), C.play(I), s._didTriggerPlay = !0);
64596
64625
  else {
64597
- const a = o.clipIn + (e - o.start) * o.timeScale, B = s.context.currentTime - s._startedAt + s.offset;
64598
- Math.abs(a - B) > 0.3 && (s.offset = a, s.stop(), s.play(g));
64626
+ const B = s.clipIn + (e - s.start) * s.timeScale, Q = C.context.currentTime - C._startedAt + C.offset;
64627
+ Math.abs(B - Q) > 0.3 && (C.offset = B, C.stop(), C.play(I));
64599
64628
  }
64600
- let n = C.volume;
64601
- if (this.track.volume !== void 0 && (n *= this.track.volume), t && (n = 0), o.easeInDuration > 0) {
64602
- const a = Math.min((e - o.start) / o.easeInDuration, 1);
64603
- n *= a;
64629
+ let a = n.volume;
64630
+ if (this.track.volume !== void 0 && (a *= this.track.volume), t && (a = 0), s.easeInDuration > 0) {
64631
+ const B = Math.min((e - s.start) / s.easeInDuration, 1);
64632
+ a *= B;
64604
64633
  }
64605
- if (o.easeOutDuration > 0) {
64606
- const a = Math.min((o.end - e) / o.easeOutDuration, 1);
64607
- n *= a;
64634
+ if (s.easeOutDuration > 0) {
64635
+ const B = Math.min((s.end - e) / s.easeOutDuration, 1);
64636
+ a *= B;
64608
64637
  }
64609
- s.setVolume(n * this.director.weight);
64638
+ C.setVolume(a * this.director.weight);
64610
64639
  } else
64611
- s.isPlaying && s.stop();
64640
+ s._didTriggerPlay = !1, this.director.isPlaying && C.isPlaying && C.stop();
64612
64641
  }
64613
64642
  this.lastTime = e;
64614
64643
  }
@@ -64638,7 +64667,7 @@ const RgA = CA("mutetimeline"), jQ = class extends dw {
64638
64667
  s && t.setBuffer(s);
64639
64668
  }), o;
64640
64669
  }
64641
- En && console.warn("LOAD audio track", g, this.director.sourceId);
64670
+ QC && console.warn("LOAD audio track", g, this.director.sourceId);
64642
64671
  const I = new Promise((o, s) => {
64643
64672
  this._audioLoader.load(
64644
64673
  g,
@@ -64686,7 +64715,7 @@ class SD extends dw {
64686
64715
  }
64687
64716
  if (n) {
64688
64717
  if (!s)
64689
- if (En && console.log("Trigger signal", e, o.time, o), this.didTrigger[I] = !0, ((g = this.receivers) == null ? void 0 : g.length) <= 0)
64718
+ if (QC && console.log("Trigger signal", e, o.time, o), this.didTrigger[I] = !0, ((g = this.receivers) == null ? void 0 : g.length) <= 0)
64690
64719
  wd.invoke(o.asset);
64691
64720
  else
64692
64721
  for (const a of this.receivers)
@@ -64857,8 +64886,8 @@ const lQ = CA("debugtimeline"), zD = class extends vA {
64857
64886
  if (!this.isValid())
64858
64887
  return;
64859
64888
  const e = this._isPaused == !0;
64860
- if (this._isPaused = !1, e && this.invokePauseChangedMethodsOnTracks(), !this._isPlaying) {
64861
- if (this._isPlaying = !0, this.waitForAudio) {
64889
+ if (this._isPaused = !1, !this._isPlaying) {
64890
+ if (this._isPlaying = !0, e && this.invokePauseChangedMethodsOnTracks(), this.waitForAudio) {
64862
64891
  const t = [];
64863
64892
  for (const g of this._audioTracks) {
64864
64893
  const I = g.loadAudio(this._time, 1, 0);
@@ -66319,7 +66348,7 @@ var gIA = Object.defineProperty, IIA = Object.getOwnPropertyDescriptor, oIA = (i
66319
66348
  };
66320
66349
  const NQ = CA("debugxrflags"), N2 = CA("disablexrflags");
66321
66350
  N2 && console.warn("XRFlags are disabled");
66322
- var Cn = /* @__PURE__ */ ((i) => (i[i.Never = 0] = "Never", i[i.Browser = 1] = "Browser", i[i.AR = 2] = "AR", i[i.VR = 4] = "VR", i[i.FirstPerson = 8] = "FirstPerson", i[i.ThirdPerson = 16] = "ThirdPerson", i[i.All = 4294967295] = "All", i))(Cn || {});
66351
+ var an = /* @__PURE__ */ ((i) => (i[i.Never = 0] = "Never", i[i.Browser = 1] = "Browser", i[i.AR = 2] = "AR", i[i.VR = 4] = "VR", i[i.FirstPerson = 8] = "FirstPerson", i[i.ThirdPerson = 16] = "ThirdPerson", i[i.All = 4294967295] = "All", i))(an || {});
66323
66352
  const DF = class {
66324
66353
  constructor() {
66325
66354
  r(this, "Mask", 17);
@@ -66349,7 +66378,7 @@ const DF = class {
66349
66378
  let eI = DF;
66350
66379
  r(eI, "Global", new DF());
66351
66380
  var ih;
66352
- const zC = (ih = class extends vA {
66381
+ const XC = (ih = class extends vA {
66353
66382
  constructor() {
66354
66383
  super(...arguments);
66355
66384
  r(this, "visibleIn");
@@ -66359,14 +66388,14 @@ const zC = (ih = class extends vA {
66359
66388
  A.UpdateVisible(eI.Global);
66360
66389
  }
66361
66390
  awake() {
66362
- zC.registry.push(this);
66391
+ XC.registry.push(this);
66363
66392
  }
66364
66393
  onEnable() {
66365
- zC.firstApply ? this.UpdateVisible(eI.Global) : (zC.firstApply = !0, zC.Apply());
66394
+ XC.firstApply ? this.UpdateVisible(eI.Global) : (XC.firstApply = !0, XC.Apply());
66366
66395
  }
66367
66396
  onDestroy() {
66368
- const A = zC.registry.indexOf(this);
66369
- A >= 0 && zC.registry.splice(A, 1);
66397
+ const A = XC.registry.indexOf(this);
66398
+ A >= 0 && XC.registry.splice(A, 1);
66370
66399
  }
66371
66400
  get isOn() {
66372
66401
  return this.gameObject.visible;
@@ -66376,7 +66405,7 @@ const zC = (ih = class extends vA {
66376
66405
  return;
66377
66406
  let e;
66378
66407
  const t = A;
66379
- if (t && typeof t == "number" && (console.assert(typeof t == "number", "XRFlag.UpdateVisible: state must be a number", t), NQ && console.log(t), zC.buffer.Mask = t, A = zC.buffer), A instanceof eI ? (NQ && console.warn(this.name, "use passed in mask", A.Mask, this.visibleIn), e = A.Has(this.visibleIn)) : (NQ && console.log(this.name, "use global mask"), eI.Global.Has(this.visibleIn)), e !== void 0)
66408
+ if (t && typeof t == "number" && (console.assert(typeof t == "number", "XRFlag.UpdateVisible: state must be a number", t), NQ && console.log(t), XC.buffer.Mask = t, A = XC.buffer), A instanceof eI ? (NQ && console.warn(this.name, "use passed in mask", A.Mask, this.visibleIn), e = A.Has(this.visibleIn)) : (NQ && console.log(this.name, "use global mask"), eI.Global.Has(this.visibleIn)), e !== void 0)
66380
66409
  if (e)
66381
66410
  NQ && console.log(this.name, "is visible", this.gameObject.uuid), BA.setActive(this.gameObject, !0);
66382
66411
  else {
@@ -66386,7 +66415,7 @@ const zC = (ih = class extends vA {
66386
66415
  }
66387
66416
  }
66388
66417
  }, r(ih, "registry", []), r(ih, "firstApply"), r(ih, "buffer", new eI()), ih);
66389
- let Po = zC;
66418
+ let Po = XC;
66390
66419
  oIA([
66391
66420
  D()
66392
66421
  ], Po.prototype, "visibleIn", 2);
@@ -66540,7 +66569,7 @@ OU([
66540
66569
  OU([
66541
66570
  D(ft)
66542
66571
  ], PE.prototype, "rightHand", 2);
66543
- class Dn {
66572
+ class yn {
66544
66573
  static Add(A, e, t = null) {
66545
66574
  if (e) {
66546
66575
  for (const g of this.Pois)
@@ -66560,7 +66589,7 @@ class Dn {
66560
66589
  }
66561
66590
  }
66562
66591
  }
66563
- r(Dn, "Pois", []), r(Dn, "LastChangeTime", 0);
66592
+ r(yn, "Pois", []), r(yn, "LastChangeTime", 0);
66564
66593
  class aIA {
66565
66594
  constructor() {
66566
66595
  r(this, "guid");
@@ -66600,7 +66629,7 @@ class mD extends vA {
66600
66629
  }
66601
66630
  update() {
66602
66631
  var t;
66603
- if ((!this.context.connection.isConnected || (t = this._model) != null && t.hasOwnership) && (Dn.LastChangeTime !== this._lastPoiChangedTime && (this._lastPoiChangedTime = Dn.LastChangeTime, this._lookDuration = 0), this.selectTarget(), this._currentTargetObject && this.context.time.frameCount % 10 === 0 && this.target)) {
66632
+ if ((!this.context.connection.isConnected || (t = this._model) != null && t.hasOwnership) && (yn.LastChangeTime !== this._lastPoiChangedTime && (this._lastPoiChangedTime = yn.LastChangeTime, this._lookDuration = 0), this.selectTarget(), this._currentTargetObject && this.context.time.frameCount % 10 === 0 && this.target)) {
66604
66633
  const g = Ke(this._currentTargetObject);
66605
66634
  kI(this.target, g), this.context.connection.isConnected && this.avatar && (this.context.connection.send("avatar-look-target-changed", this._targetModel), this._targetModel.guid = this.avatar.guid, this._targetModel.position.copy(g));
66606
66635
  }
@@ -66608,7 +66637,7 @@ class mD extends vA {
66608
66637
  selectTarget() {
66609
66638
  if (this.context.time.time - this._lastUpdateTime > this._lookDuration) {
66610
66639
  this._lastUpdateTime = this.context.time.time, this._lookDuration = Math.random() * 0.5 + 0.2;
66611
- const t = Dn.Pois;
66640
+ const t = yn.Pois;
66612
66641
  if (t.length > 0) {
66613
66642
  const g = t[Math.floor(Math.random() * t.length)];
66614
66643
  if (g && g.obj) {
@@ -66621,7 +66650,7 @@ class mD extends vA {
66621
66650
  }
66622
66651
  }
66623
66652
  const HQ = CA("debugnetworkingstreams");
66624
- var cn = /* @__PURE__ */ ((i) => (i.Connected = "peer-user-connected", i.StreamReceived = "receive-stream", i.StreamEnded = "call-ended", i.Disconnected = "peer-user-disconnected", i.UserJoined = "user-joined", i))(cn || {});
66653
+ var hn = /* @__PURE__ */ ((i) => (i.Connected = "peer-user-connected", i.StreamReceived = "receive-stream", i.StreamEnded = "call-ended", i.Disconnected = "peer-user-disconnected", i.UserJoined = "user-joined", i))(hn || {});
66625
66654
  class rIA {
66626
66655
  constructor(A, e) {
66627
66656
  r(this, "type", "call-ended");
@@ -66967,11 +66996,11 @@ class WE extends vA {
66967
66996
  });
66968
66997
  }
66969
66998
  onEnable() {
66970
- this._net || (this._net = ww.create(this)), this._net.addEventListener(cn.StreamReceived, this.onReceiveStream), this._net.addEventListener(cn.StreamEnded, this.onStreamEnded), this._net.enable(), this.autoConnect && (this.context.connection.isConnected ? this.connect() : this.context.connection.beginListen(pt.JoinedRoom, this.onJoinedRoom)), this.onEnabledChanged(), window.addEventListener("visibilitychange", this.onVisibilityChanged);
66999
+ this._net || (this._net = ww.create(this)), this._net.addEventListener(hn.StreamReceived, this.onReceiveStream), this._net.addEventListener(hn.StreamEnded, this.onStreamEnded), this._net.enable(), this.autoConnect && (this.context.connection.isConnected ? this.connect() : this.context.connection.beginListen(pt.JoinedRoom, this.onJoinedRoom)), this.onEnabledChanged(), window.addEventListener("visibilitychange", this.onVisibilityChanged);
66971
67000
  }
66972
67001
  onDisable() {
66973
67002
  var e;
66974
- this._net.stopSendingStream(this._outputStream), this._net.removeEventListener(cn.StreamReceived, this.onReceiveStream), this._net.removeEventListener(cn.StreamEnded, this.onStreamEnded), (e = this._net) == null || e.disable(), this.context.connection.stopListen(pt.JoinedRoom, this.onJoinedRoom), this.onEnabledChanged(), window.removeEventListener("visibilitychange", this.onVisibilityChanged);
67003
+ this._net.stopSendingStream(this._outputStream), this._net.removeEventListener(hn.StreamReceived, this.onReceiveStream), this._net.removeEventListener(hn.StreamEnded, this.onStreamEnded), (e = this._net) == null || e.disable(), this.context.connection.stopListen(pt.JoinedRoom, this.onJoinedRoom), this.onEnabledChanged(), window.removeEventListener("visibilitychange", this.onVisibilityChanged);
66975
67004
  }
66976
67005
  get isSending() {
66977
67006
  return this._outputStream != null && this._outputStream.active;
@@ -67230,7 +67259,7 @@ class b2 {
67230
67259
  let t = null;
67231
67260
  if (typeof e == "string") {
67232
67261
  if (t = await this.loadAvatar(A, e), !t) {
67233
- const I = new kn();
67262
+ const I = new MC();
67234
67263
  t = BA.instantiate(El(e, A.scene), I);
67235
67264
  }
67236
67265
  } else
@@ -67252,7 +67281,7 @@ class b2 {
67252
67281
  }
67253
67282
  if (!I && (I = await nH(e, e, 0, "no url here go away", !0), !I))
67254
67283
  return null;
67255
- const o = await DC().parseSync(A, I, null, 0);
67284
+ const o = await yC().parseSync(A, I, null, 0);
67256
67285
  return (o == null ? void 0 : o.scene) ?? null;
67257
67286
  }
67258
67287
  const t = new HE();
@@ -67261,7 +67290,7 @@ class b2 {
67261
67290
  t.load(
67262
67291
  o,
67263
67292
  async (s) => {
67264
- await DC().createBuiltinComponents(A, o, s, null, void 0), g(s.scene);
67293
+ await yC().createBuiltinComponents(A, o, s, null, void 0), g(s.scene);
67265
67294
  },
67266
67295
  (s) => {
67267
67296
  Pc && console.log("[Custom Avatar] " + s.loaded / s.total * 100 + "% loaded of " + s.total / 1024 + "kB");
@@ -67712,7 +67741,7 @@ class x2 {
67712
67741
  r(this, "height");
67713
67742
  }
67714
67743
  }
67715
- const ss = new y(), Wc = new GA(), up = new UA(), Y2 = class extends yC {
67744
+ const ss = new y(), Wc = new GA(), up = new UA(), Y2 = class extends wC {
67716
67745
  constructor() {
67717
67746
  super(...arguments);
67718
67747
  r(this, "_anchoredPosition");
@@ -67829,7 +67858,7 @@ const ss = new y(), Wc = new GA(), up = new UA(), Y2 = class extends yC {
67829
67858
  return;
67830
67859
  this.gameObject.parent ? this._parentRectTransform = BA.getComponentInParent(this.gameObject.parent, Y2) : this._parentRectTransform = void 0, this._transformNeedsUpdate = !1, Sm && console.warn("RectTransform → ApplyTransform", this.name + " because " + A), this.isRoot() ? this.Root.screenspace || (e.rotation.y = Math.PI) : (e.matrix.identity(), e.matrixAutoUpdate = !1, ss.set(0, 0, 0), this.applyPivot(ss), e.matrix.setPosition(ss.x, ss.y, 0), (this.gameObject.quaternion.x || this.gameObject.quaternion.y || this.gameObject.quaternion.z) && (up.copy(this.gameObject.quaternion), up.x *= -1, up.z *= -1, Wc.makeRotationFromQuaternion(up), e.matrix.premultiply(Wc)), ss.set(0, 0, 0), this.applyAnchoring(ss), (g = this.Canvas) != null && g.screenspace ? ss.z += 0.1 : ss.z += 0.01, Wc.identity(), Wc.setPosition(ss.x, ss.y, ss.z), e.matrix.premultiply(Wc), e.matrix.scale(this.gameObject.scale)), this.lastMatrix.copy(this.gameObject.matrix);
67831
67860
  const t = !0;
67832
- for (const I of C_(this.gameObject, yC, t, 1)) {
67861
+ for (const I of C_(this.gameObject, wC, t, 1)) {
67833
67862
  if (I === this || !I.activeAndEnabled)
67834
67863
  continue;
67835
67864
  const o = I;
@@ -68002,7 +68031,7 @@ const pp = {
68002
68031
  borderOpacity: 1
68003
68032
  };
68004
68033
  var sk;
68005
- const pf = (sk = class extends yC {
68034
+ const pf = (sk = class extends wC {
68006
68035
  constructor() {
68007
68036
  super(...arguments);
68008
68037
  r(this, "_alphaFactor", 1);
@@ -68569,7 +68598,7 @@ class P2 extends yo {
68569
68598
  onCalculateLayout() {
68570
68599
  }
68571
68600
  }
68572
- var VIA = Object.defineProperty, zIA = Object.getOwnPropertyDescriptor, MC = (i, A, e, t) => {
68601
+ var VIA = Object.defineProperty, zIA = Object.getOwnPropertyDescriptor, UC = (i, A, e, t) => {
68573
68602
  for (var g = t > 1 ? void 0 : t ? zIA(A, e) : A, I = i.length - 1, o; I >= 0; I--)
68574
68603
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
68575
68604
  return t && g && VIA(A, e, g), g;
@@ -68747,7 +68776,7 @@ const mm = CA("debuguilayout"), j2 = class extends cw {
68747
68776
  *_updateRenderSettingsDelayed() {
68748
68777
  if (yield, this._updateRenderSettingsRoutine = void 0, this.shadowComponent) {
68749
68778
  this.onUpdateRenderMode(), yD(this.shadowComponent, this);
68750
- for (const A of BA.getComponentsInChildren(this.gameObject, yC))
68779
+ for (const A of BA.getComponentsInChildren(this.gameObject, wC))
68751
68780
  yD(A.shadowComponent, this);
68752
68781
  }
68753
68782
  }
@@ -68776,34 +68805,34 @@ const mm = CA("debuguilayout"), j2 = class extends cw {
68776
68805
  }
68777
68806
  };
68778
68807
  let CI = j2;
68779
- MC([
68808
+ UC([
68780
68809
  D()
68781
68810
  ], CI.prototype, "renderOnTop", 1);
68782
- MC([
68811
+ UC([
68783
68812
  D()
68784
68813
  ], CI.prototype, "depthWrite", 1);
68785
- MC([
68814
+ UC([
68786
68815
  D()
68787
68816
  ], CI.prototype, "doubleSided", 1);
68788
- MC([
68817
+ UC([
68789
68818
  D()
68790
68819
  ], CI.prototype, "castShadows", 1);
68791
- MC([
68820
+ UC([
68792
68821
  D()
68793
68822
  ], CI.prototype, "receiveShadows", 1);
68794
- MC([
68823
+ UC([
68795
68824
  D()
68796
68825
  ], CI.prototype, "renderMode", 1);
68797
- MC([
68826
+ UC([
68798
68827
  D(CI)
68799
68828
  ], CI.prototype, "rootCanvas", 1);
68800
- MC([
68829
+ UC([
68801
68830
  D()
68802
68831
  ], CI.prototype, "scaleFactor", 1);
68803
- MC([
68832
+ UC([
68804
68833
  D(si)
68805
68834
  ], CI.prototype, "worldCamera", 2);
68806
- MC([
68835
+ UC([
68807
68836
  D()
68808
68837
  ], CI.prototype, "planeDistance", 2);
68809
68838
  var ZIA = Object.defineProperty, XIA = Object.getOwnPropertyDescriptor, AN = (i, A, e, t) => {
@@ -68836,7 +68865,7 @@ class uB extends vA {
68836
68865
  this._isDirty = !1, this.applyChangesNow();
68837
68866
  }
68838
68867
  applyChangesNow() {
68839
- for (const e of BA.getComponentsInChildren(this.gameObject, yC, this._buffer)) {
68868
+ for (const e of BA.getComponentsInChildren(this.gameObject, wC, this._buffer)) {
68840
68869
  const t = e;
68841
68870
  t.setAlphaFactor && t.setAlphaFactor(this._alpha);
68842
68871
  }
@@ -68925,7 +68954,7 @@ li([
68925
68954
  D()
68926
68955
  ], XE.prototype, "relativeMotion", 2);
68927
68956
  var Tp;
68928
- const ZC = (Tp = class extends vA {
68957
+ const $C = (Tp = class extends vA {
68929
68958
  constructor() {
68930
68959
  super(...arguments);
68931
68960
  r(this, "materialToSwitch");
@@ -68963,15 +68992,15 @@ const ZC = (Tp = class extends vA {
68963
68992
  }
68964
68993
  }
68965
68994
  async beforeCreateDocument(A, e) {
68966
- this.targetModels = [], ZC._materialTriggersPerId = {}, ZC.variantSwitchIndex = 0, this.materialToSwitch && await _o.assignTextureLOD(this.context, this.sourceId, this.materialToSwitch, 0), this.variantMaterial && await _o.assignTextureLOD(this.context, this.sourceId, this.variantMaterial, 0);
68995
+ this.targetModels = [], $C._materialTriggersPerId = {}, $C.variantSwitchIndex = 0, this.materialToSwitch && await _o.assignTextureLOD(this.context, this.sourceId, this.materialToSwitch, 0), this.variantMaterial && await _o.assignTextureLOD(this.context, this.sourceId, this.variantMaterial, 0);
68967
68996
  }
68968
68997
  createBehaviours(A, e, t) {
68969
- this._objectsWithThisMaterial.find((I) => I.uuid === e.uuid) && this.targetModels.push(e), this.gameObject.uuid === e.uuid && (this.selfModel = e, this.materialToSwitch && (ZC._materialTriggersPerId[this.materialToSwitch.uuid] || (ZC._materialTriggersPerId[this.materialToSwitch.uuid] = []), ZC._materialTriggersPerId[this.materialToSwitch.uuid].push(this)));
68998
+ this._objectsWithThisMaterial.find((I) => I.uuid === e.uuid) && this.targetModels.push(e), this.gameObject.uuid === e.uuid && (this.selfModel = e, this.materialToSwitch && ($C._materialTriggersPerId[this.materialToSwitch.uuid] || ($C._materialTriggersPerId[this.materialToSwitch.uuid] = []), $C._materialTriggersPerId[this.materialToSwitch.uuid].push(this)));
68970
68999
  }
68971
69000
  afterCreateDocument(A, e) {
68972
69001
  if (!this.materialToSwitch)
68973
69002
  return;
68974
- const t = ZC._materialTriggersPerId[this.materialToSwitch.uuid];
69003
+ const t = $C._materialTriggersPerId[this.materialToSwitch.uuid];
68975
69004
  if (t) {
68976
69005
  const g = {};
68977
69006
  for (const I of t) {
@@ -68985,7 +69014,7 @@ const ZC = (Tp = class extends vA {
68985
69014
  I.createAndAttachBehaviors(A, g[I.selfModel.uuid], o);
68986
69015
  }
68987
69016
  }
68988
- delete ZC._materialTriggersPerId[this.materialToSwitch.uuid];
69017
+ delete $C._materialTriggersPerId[this.materialToSwitch.uuid];
68989
69018
  }
68990
69019
  createAndAttachBehaviors(A, e, t) {
68991
69020
  const g = [], I = [], o = Math.max(0, this.fadeDuration);
@@ -69009,12 +69038,12 @@ const ZC = (Tp = class extends vA {
69009
69038
  const A = [];
69010
69039
  for (const e of this.targetModels) {
69011
69040
  const t = e.clone();
69012
- t.name += " variant_" + this.variantMaterial.name + "_" + ZC.variantSwitchIndex++, t.name = t.name.replace(/\s/g, "_"), t.material = this.variantMaterial, t.geometry = e.geometry, t.matrix = e.matrix, (!e.parent || !e.parent.isEmpty()) && ro.createEmptyParent(e), e.parent && e.parent.add(t), A.push(t);
69041
+ t.name += " variant_" + this.variantMaterial.name + "_" + $C.variantSwitchIndex++, t.name = t.name.replace(/\s/g, "_"), t.material = this.variantMaterial, t.geometry = e.geometry, t.matrix = e.matrix, (!e.parent || !e.parent.isEmpty()) && ro.createEmptyParent(e), e.parent && e.parent.add(t), A.push(t);
69013
69042
  }
69014
69043
  return A;
69015
69044
  }
69016
69045
  }, r(Tp, "_materialTriggersPerId", {}), r(Tp, "variantSwitchIndex", 0), Tp);
69017
- let Fd = ZC;
69046
+ let Fd = $C;
69018
69047
  li([
69019
69048
  D(Te)
69020
69049
  ], Fd.prototype, "materialToSwitch", 2);
@@ -69851,7 +69880,7 @@ var roA = Object.defineProperty, BoA = Object.getOwnPropertyDescriptor, sA = (i,
69851
69880
  return t && g && roA(A, e, g), g;
69852
69881
  };
69853
69882
  const yp = CA("debugparticles");
69854
- var An = /* @__PURE__ */ ((i) => (i[i.Billboard = 0] = "Billboard", i[i.Stretch = 1] = "Stretch", i[i.HorizontalBillboard = 2] = "HorizontalBillboard", i[i.VerticalBillboard = 3] = "VerticalBillboard", i[i.Mesh = 4] = "Mesh", i))(An || {});
69883
+ var tn = /* @__PURE__ */ ((i) => (i[i.Billboard = 0] = "Billboard", i[i.Stretch = 1] = "Stretch", i[i.HorizontalBillboard = 2] = "HorizontalBillboard", i[i.VerticalBillboard = 3] = "VerticalBillboard", i[i.Mesh = 4] = "Mesh", i))(tn || {});
69855
69884
  let UB = class {
69856
69885
  constructor() {
69857
69886
  r(this, "alphaKeys");
@@ -71458,7 +71487,7 @@ class Rs extends vA {
71458
71487
  }
71459
71488
  this.context.scene.add(t), this._reparentedComponents.length = 0, this._reparentedComponents.push({ comp: this, originalObject: this.gameObject }), BA.addComponent(t, this);
71460
71489
  for (const g of this._reticle)
71461
- fC(g);
71490
+ DC(g);
71462
71491
  this._reticle.length = 0, this._isPlacing = !0, this.context.input.addEventListener("pointerup", this.onPlaceScene);
71463
71492
  }
71464
71493
  onLeaveXR() {
@@ -72518,7 +72547,7 @@ const $2 = class extends vA {
72518
72547
  }
72519
72548
  lI && vi("Load textures: " + t.length), await Promise.all(t), lI && vi("Load textures: done");
72520
72549
  const g = eI.Global.Mask;
72521
- eI.Global.Set(Cn.AR), this.applyWebARSessionRoot();
72550
+ eI.Global.Set(an.AR), this.applyWebARSessionRoot();
72522
72551
  const I = new RiA(), o = [...this.extensions], s = new pw(this.quickLookCompatible);
72523
72552
  o.push(s);
72524
72553
  const C = { self: this, exporter: I, extensions: o, object: A };
@@ -72662,7 +72691,7 @@ var MoA = Object.defineProperty, RoA = Object.getOwnPropertyDescriptor, vB = (i,
72662
72691
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
72663
72692
  return t && g && MoA(A, e, g), g;
72664
72693
  };
72665
- class RC extends RI {
72694
+ class NC extends RI {
72666
72695
  constructor() {
72667
72696
  super(...arguments);
72668
72697
  r(this, "mode");
@@ -72710,26 +72739,26 @@ class RC extends RI {
72710
72739
  }
72711
72740
  vB([
72712
72741
  D()
72713
- ], RC.prototype, "mode", 2);
72742
+ ], NC.prototype, "mode", 2);
72714
72743
  vB([
72715
72744
  D(ve)
72716
- ], RC.prototype, "focusDistance", 2);
72745
+ ], NC.prototype, "focusDistance", 2);
72717
72746
  vB([
72718
72747
  D(ve)
72719
- ], RC.prototype, "focalLength", 2);
72748
+ ], NC.prototype, "focalLength", 2);
72720
72749
  vB([
72721
72750
  D(ve)
72722
- ], RC.prototype, "aperture", 2);
72751
+ ], NC.prototype, "aperture", 2);
72723
72752
  vB([
72724
72753
  D(ve)
72725
- ], RC.prototype, "gaussianMaxRadius", 2);
72754
+ ], NC.prototype, "gaussianMaxRadius", 2);
72726
72755
  vB([
72727
72756
  D(ve)
72728
- ], RC.prototype, "resolutionScale", 2);
72757
+ ], NC.prototype, "resolutionScale", 2);
72729
72758
  vB([
72730
72759
  D(ve)
72731
- ], RC.prototype, "bokehScale", 2);
72732
- qs("DepthOfField", RC);
72760
+ ], NC.prototype, "bokehScale", 2);
72761
+ qs("DepthOfField", NC);
72733
72762
  var UoA = Object.defineProperty, NoA = Object.getOwnPropertyDescriptor, FoA = (i, A, e, t) => {
72734
72763
  for (var g = t > 1 ? void 0 : t ? NoA(A, e) : A, I = i.length - 1, o; I >= 0; I--)
72735
72764
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
@@ -72765,7 +72794,7 @@ var KoA = Object.defineProperty, JoA = Object.getOwnPropertyDescriptor, bB = (i,
72765
72794
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
72766
72795
  return t && g && KoA(A, e, g), g;
72767
72796
  };
72768
- const QC = CA("debugdrag");
72797
+ const EC = CA("debugdrag");
72769
72798
  var Pp;
72770
72799
  const Zs = (Pp = class extends vA {
72771
72800
  constructor() {
@@ -72833,7 +72862,7 @@ const Zs = (Pp = class extends vA {
72833
72862
  (this._isDragging || this._potentialDragStartEvt !== null) && A.use();
72834
72863
  }
72835
72864
  onPointerUp(A) {
72836
- if (QC && He.DrawLabel(A.point ?? this.gameObject.worldPosition, "POINTERUP:" + A.pointerId + ", " + A.button, 0.03, 3), !this.allowEdit(this.gameObject) || A.button !== 0)
72865
+ if (EC && He.DrawLabel(A.point ?? this.gameObject.worldPosition, "POINTERUP:" + A.pointerId + ", " + A.button, 0.03, 3), !this.allowEdit(this.gameObject) || A.button !== 0)
72837
72866
  return;
72838
72867
  this._potentialDragStartEvt = null;
72839
72868
  const e = this._dragHandlers.get(A.event.space), t = this._dragHandlers.get(this.gameObject);
@@ -72872,7 +72901,7 @@ const Zs = (Pp = class extends vA {
72872
72901
  return;
72873
72902
  this._isDragging = !0, this._dragHelper.setSelected(t, this.context), this.orbit && (this.orbit.enabled = !1);
72874
72903
  const g = BA.getComponentInChildren(t, lB);
72875
- QC && console.log("DRAG START", g, t), g && (g.fastMode = !0, g == null || g.requestOwnership()), this._marker = BA.addNewComponent(t, qw), this._draggingRigidbodies.length = 0;
72904
+ EC && console.log("DRAG START", g, t), g && (g.fastMode = !0, g == null || g.requestOwnership()), this._marker = BA.addNewComponent(t, qw), this._draggingRigidbodies.length = 0;
72876
72905
  const I = BA.getComponentsInChildren(t, oi);
72877
72906
  I && this._draggingRigidbodies.push(...I);
72878
72907
  }
@@ -72884,7 +72913,7 @@ const Zs = (Pp = class extends vA {
72884
72913
  for (const e of this._draggingRigidbodies)
72885
72914
  e.wakeUp(), e.resetVelocities(), e.resetForcesAndTorques();
72886
72915
  const A = this.targetObject || this.gameObject;
72887
- lC.markDirty(A);
72916
+ dC.markDirty(A);
72888
72917
  }
72889
72918
  /** Called when the last pointer has been removed from this object. */
72890
72919
  onLastDragEnd(A) {
@@ -72894,7 +72923,7 @@ const Zs = (Pp = class extends vA {
72894
72923
  t.setVelocity(t.smoothedVelocity);
72895
72924
  this._draggingRigidbodies.length = 0;
72896
72925
  const e = this._dragHelper.selected;
72897
- if (QC && console.log("DRAG END", e, e == null ? void 0 : e.visible), this._dragHelper.setSelected(null, this.context), this.orbit && (this.orbit.enabled = !0), A != null && A.object) {
72926
+ if (EC && console.log("DRAG END", e, e == null ? void 0 : e.visible), this._dragHelper.setSelected(null, this.context), this.orbit && (this.orbit.enabled = !0), A != null && A.object) {
72898
72927
  const t = BA.getComponentInChildren(A.object, lB);
72899
72928
  t && (t.fastMode = !1);
72900
72929
  }
@@ -72952,7 +72981,7 @@ class voA {
72952
72981
  console.error("Invalid: MultiTouchDragHandler needs two valid DragPointerHandlers with hitPointInLocalSpace set.");
72953
72982
  return;
72954
72983
  }
72955
- if (this._tempVec1.copy(this.handlerA.hitPointInLocalSpace), this._tempVec2.copy(this.handlerB.hitPointInLocalSpace), this.gameObject.localToWorld(this._tempVec1), this.gameObject.localToWorld(this._tempVec2), I && (I.worldToLocal(this._tempVec1), I.worldToLocal(this._tempVec2)), this._initialDistance = this._tempVec1.distanceTo(this._tempVec2), this._initialDistance < 0.02 ? (QC && console.log("Finding alternative drag attachment points since initial distance is too low: " + this._initialDistance.toFixed(2)), this.handlerA.followObject.parent.getWorldPosition(this._tempVec1), this.handlerB.followObject.parent.getWorldPosition(this._tempVec2), this._handlerAAttachmentPoint.copy(this._tempVec1), this._handlerBAttachmentPoint.copy(this._tempVec2), this.gameObject.worldToLocal(this._handlerAAttachmentPoint), this.gameObject.worldToLocal(this._handlerBAttachmentPoint), this._initialDistance = this._tempVec1.distanceTo(this._tempVec2), this._initialDistance < 1e-3 && (console.warn("Not supported right now – controller drag points for multitouch are too close!"), this._initialDistance = 1)) : (this._handlerAAttachmentPoint.copy(this.handlerA.hitPointInLocalSpace), this._handlerBAttachmentPoint.copy(this.handlerB.hitPointInLocalSpace)), this._tempVec3.lerpVectors(this._tempVec1, this._tempVec2, 0.5), this._initialScale.copy(e.scale), QC) {
72984
+ if (this._tempVec1.copy(this.handlerA.hitPointInLocalSpace), this._tempVec2.copy(this.handlerB.hitPointInLocalSpace), this.gameObject.localToWorld(this._tempVec1), this.gameObject.localToWorld(this._tempVec2), I && (I.worldToLocal(this._tempVec1), I.worldToLocal(this._tempVec2)), this._initialDistance = this._tempVec1.distanceTo(this._tempVec2), this._initialDistance < 0.02 ? (EC && console.log("Finding alternative drag attachment points since initial distance is too low: " + this._initialDistance.toFixed(2)), this.handlerA.followObject.parent.getWorldPosition(this._tempVec1), this.handlerB.followObject.parent.getWorldPosition(this._tempVec2), this._handlerAAttachmentPoint.copy(this._tempVec1), this._handlerBAttachmentPoint.copy(this._tempVec2), this.gameObject.worldToLocal(this._handlerAAttachmentPoint), this.gameObject.worldToLocal(this._handlerBAttachmentPoint), this._initialDistance = this._tempVec1.distanceTo(this._tempVec2), this._initialDistance < 1e-3 && (console.warn("Not supported right now – controller drag points for multitouch are too close!"), this._initialDistance = 1)) : (this._handlerAAttachmentPoint.copy(this.handlerA.hitPointInLocalSpace), this._handlerBAttachmentPoint.copy(this.handlerB.hitPointInLocalSpace)), this._tempVec3.lerpVectors(this._tempVec1, this._tempVec2, 0.5), this._initialScale.copy(e.scale), EC) {
72956
72985
  this._followObject.add(new Zo(2)), this._manipulatorObject.add(new Zo(5));
72957
72986
  const C = (n) => `${n.x.toFixed(2)}, ${n.y.toFixed(2)}, ${n.z.toFixed(2)}`;
72958
72987
  He.DrawLine(this._tempVec1, this._tempVec2, 65535, 0, !1), He.DrawLabel(this._tempVec3, "A:B " + this._initialDistance.toFixed(2) + `
@@ -72975,7 +73004,7 @@ class voA {
72975
73004
  const A = this.context.mainCamera;
72976
73005
  this.tempLookMatrix.lookAt(this._tempVec3, this._tempVec2, A.worldUp), this._manipulatorObject.quaternion.setFromRotationMatrix(this.tempLookMatrix);
72977
73006
  const e = this._tempVec1.distanceTo(this._tempVec2);
72978
- this._manipulatorObject.scale.copy(this._initialScale).multiplyScalar(e / this._initialDistance), this._manipulatorObject.updateMatrix(), this._manipulatorObject.updateMatrixWorld(!0), QC && (He.DrawLabel(this._tempVec3.clone().add(new y(0, 0.2, 0)), "A:B " + e.toFixed(2), 0.03), He.DrawLine(this._tempVec1, this._tempVec2, 65280, 0, !1));
73007
+ this._manipulatorObject.scale.copy(this._initialScale).multiplyScalar(e / this._initialDistance), this._manipulatorObject.updateMatrix(), this._manipulatorObject.updateMatrixWorld(!0), EC && (He.DrawLabel(this._tempVec3.clone().add(new y(0, 0.2, 0)), "A:B " + e.toFixed(2), 0.03), He.DrawLine(this._tempVec1, this._tempVec2, 65280, 0, !1));
72979
73008
  }
72980
73009
  onDragUpdate() {
72981
73010
  this.alignManipulator();
@@ -73060,7 +73089,7 @@ class boA {
73060
73089
  const e = this._hitPointInLocalSpace.clone();
73061
73090
  this.gameObject.localToWorld(e), this._grabStartDistance = e.distanceTo(A.worldPosition);
73062
73091
  const t = (o = (I = ke.active) == null ? void 0 : I.rig) == null ? void 0 : o.gameObject, g = (t == null ? void 0 : t.worldScale.x) || 1;
73063
- this._grabStartDistance /= g, this._totalMovementAlongRayDirection = 0, this._lastDragPosRigSpace = void 0, QC && (He.DrawLine(e, A.worldPosition, 65280, 0.5, !1), He.DrawLabel(A.worldPosition.add(new y(0, 0.1, 0)), this._grabStartDistance.toFixed(2), 0.03, 0.5));
73092
+ this._grabStartDistance /= g, this._totalMovementAlongRayDirection = 0, this._lastDragPosRigSpace = void 0, EC && (He.DrawLine(e, A.worldPosition, 65280, 0.5, !1), He.DrawLabel(A.worldPosition.add(new y(0, 0.1, 0)), this._grabStartDistance.toFixed(2), 0.03, 0.5));
73064
73093
  }
73065
73094
  onDragStart(A) {
73066
73095
  if (A.event.space.add(this._followObject), this._lastDragPosRigSpace = void 0, A.point && A.normal)
@@ -73106,7 +73135,7 @@ class boA {
73106
73135
  const e = A.worldPosition, t = (o = (I = ke.active) == null ? void 0 : I.rig) == null ? void 0 : o.gameObject;
73107
73136
  t && t.worldToLocal(e), (this._lastDragPosRigSpace === void 0 || t != this._lastRig) && (this._lastDragPosRigSpace = e.clone(), this._lastRig = t), this._tempVec.copy(e).sub(this._lastDragPosRigSpace);
73108
73137
  const g = A.worldForward;
73109
- if (t && (this._tempMat.copy(t.matrixWorld).invert(), g.transformDirection(this._tempMat)), this._totalMovementAlongRayDirection += g.dot(this._tempVec), this._tempVec.x = Math.abs(this._tempVec.x), this._tempVec.y = Math.abs(this._tempVec.y), this._tempVec.z = Math.abs(this._tempVec.z), this._totalMovement.add(this._tempVec), this._lastDragPosRigSpace.copy(e), QC) {
73138
+ if (t && (this._tempMat.copy(t.matrixWorld).invert(), g.transformDirection(this._tempMat)), this._totalMovementAlongRayDirection += g.dot(this._tempVec), this._tempVec.x = Math.abs(this._tempVec.x), this._tempVec.y = Math.abs(this._tempVec.y), this._tempVec.z = Math.abs(this._tempVec.z), this._totalMovement.add(this._tempVec), this._lastDragPosRigSpace.copy(e), EC) {
73110
73139
  let s = e;
73111
73140
  t && (s = s.clone(), s.transformDirection(t.matrixWorld)), He.DrawRay(s, g, 255);
73112
73141
  }
@@ -73146,7 +73175,7 @@ class boA {
73146
73175
  if (C !== 1 && Q.intersectPlane(this._dragPlane, this._tempVec)) {
73147
73176
  this._followObject.worldPosition = this._tempVec, this._followObject.updateMatrix(), this._followObject.updateMatrixWorld(!0);
73148
73177
  const u = this._hitPointInLocalSpace.clone();
73149
- this._followObject.localToWorld(u), QC && He.DrawLine(u, this._tempVec, 65535, 0, !1), this._followObject.worldPosition = this._tempVec.multiplyScalar(2).sub(u), this._followObject.updateMatrix(), this._followObject.updateMatrix();
73178
+ this._followObject.localToWorld(u), EC && He.DrawLine(u, this._tempVec, 65535, 0, !1), this._followObject.worldPosition = this._tempVec.multiplyScalar(2).sub(u), this._followObject.updateMatrix(), this._followObject.updateMatrix();
73150
73179
  }
73151
73180
  if (this.settings.snapGridResolution > 0) {
73152
73181
  const u = this._followObject.worldPosition, h = this.settings.snapGridResolution;
@@ -73156,7 +73185,7 @@ class boA {
73156
73185
  const E = se.clamp01(this.context.time.deltaTime * n * B), c = e.worldPosition;
73157
73186
  c.lerp(this._followObject.worldPosition, E), e.worldPosition = c;
73158
73187
  const l = e.worldQuaternion;
73159
- if (l.slerp(this._followObject.worldQuaternion, E), e.worldQuaternion = l, QC) {
73188
+ if (l.slerp(this._followObject.worldQuaternion, E), e.worldQuaternion = l, EC) {
73160
73189
  const u = this._hitPointInLocalSpace.clone();
73161
73190
  e.localToWorld(u), He.DrawSphere(u, 0.02, 16711680);
73162
73191
  const h = this._hitNormalInLocalSpace.clone();
@@ -73222,12 +73251,12 @@ const yF = class {
73222
73251
  if (this._selected && e)
73223
73252
  for (const t of this._rbs)
73224
73253
  t.wakeUp(), t.setVelocity(0, 0, 0);
73225
- if (this._selected && Dn.Remove(e, this._selected), this._selected = A, this._context = e, this._rbs.length = 0, A ? (e.scene.add(this._groundLine), e.scene.add(this._groundMarker)) : (this._groundLine.removeFromParent(), this._groundMarker.removeFromParent()), this._selected) {
73254
+ if (this._selected && yn.Remove(e, this._selected), this._selected = A, this._context = e, this._rbs.length = 0, A ? (e.scene.add(this._groundLine), e.scene.add(this._groundMarker)) : (this._groundLine.removeFromParent(), this._groundMarker.removeFromParent()), this._selected) {
73226
73255
  if (!e) {
73227
73256
  console.error("DragHelper: no context");
73228
73257
  return;
73229
73258
  }
73230
- Dn.Add(e, this._selected, null), this._groundOffsetFactor = 0, this._hasGroundPlane = !0, this._groundOffset.set(0, 0, 0), this._requireUpdateGroundPlane = !0, this.onUpdateScreenSpacePlane();
73259
+ yn.Add(e, this._selected, null), this._groundOffsetFactor = 0, this._hasGroundPlane = !0, this._groundOffset.set(0, 0, 0), this._requireUpdateGroundPlane = !0, this.onUpdateScreenSpacePlane();
73231
73260
  }
73232
73261
  }
73233
73262
  onUpdate(A) {
@@ -73307,7 +73336,7 @@ async function xoA(i, A, e) {
73307
73336
  return t.endsWith(".gltf") || t.endsWith(".glb") ? new Promise((g, I) => {
73308
73337
  const o = new FileReader();
73309
73338
  o.readAsArrayBuffer(i), o.onloadend = async (s) => {
73310
- const C = o.result, n = sU(), a = new xg(n), B = await DC().parseSync(A, C, i.name, a);
73339
+ const C = o.result, n = sU(), a = new xg(n), B = await yC().parseSync(A, C, i.name, a);
73311
73340
  if (B && B.scene) {
73312
73341
  const Q = B.scene;
73313
73342
  if (!Q.guid) {
@@ -73321,7 +73350,7 @@ async function xoA(i, A, e) {
73321
73350
  }
73322
73351
  async function YoA(i, A) {
73323
73352
  return new Promise(async (e, t) => {
73324
- const g = sU(), I = new xg(g), o = i.toString(), s = await DC().loadSync(A, o, o, I);
73353
+ const g = sU(), I = new xg(g), o = i.toString(), s = await yC().loadSync(A, o, o, I);
73325
73354
  s && s.scene ? (s.scene, IN(), e(s)) : console.warn("Unsupported file type: " + i.toString());
73326
73355
  });
73327
73356
  }
@@ -73339,7 +73368,7 @@ function ToA(i) {
73339
73368
  OoA(A);
73340
73369
  }
73341
73370
  if (e) {
73342
- const t = new xg(A.seed), g = await DC().parseSync(i, e, A.file_name, t);
73371
+ const t = new xg(A.seed), g = await yC().parseSync(i, e, A.file_name, t);
73343
73372
  if (g && g.scene) {
73344
73373
  const I = g.scene;
73345
73374
  if (IN(), A.parentGuid) {
@@ -73583,7 +73612,7 @@ class ic extends vA {
73583
73612
  if (!this.object || this._currentCount >= this.limitCount || this.object === this.gameObject)
73584
73613
  return null;
73585
73614
  this.object.visible = !0, this._startPosition && this.object.position.copy(this._startPosition), this._startQuaternion && this.object.quaternion.copy(this._startQuaternion);
73586
- const e = new kn();
73615
+ const e = new MC();
73587
73616
  this.parent || (this.parent = this.gameObject.parent), this.parent && (e.parent = this.parent.guid ?? ((g = this.parent.userData) == null ? void 0 : g.guid), e.keepWorldPosition = !0), e.position = this.worldPosition, e.rotation = this.worldQuaternion, e.context = this.context, this._currentCount += 1;
73588
73617
  const t = BA.instantiateSynced(this.object, e);
73589
73618
  return console.assert(t !== this.object, "Duplicated object is original"), this.object.visible = !1, this._startPosition && this.object.position.clone().copy(this._startPosition), this._startQuaternion && this.object.quaternion.clone().copy(this._startQuaternion), t;
@@ -74075,7 +74104,7 @@ const Ct = {
74075
74104
  }, Um = "KHR_mesh_quantization", Qo = {};
74076
74105
  Qo[Pe] = Ct.NEAREST;
74077
74106
  Qo[nE] = Ct.NEAREST_MIPMAP_NEAREST;
74078
- Qo[en] = Ct.NEAREST_MIPMAP_LINEAR;
74107
+ Qo[gn] = Ct.NEAREST_MIPMAP_LINEAR;
74079
74108
  Qo[Re] = Ct.LINEAR;
74080
74109
  Qo[Zr] = Ct.LINEAR_MIPMAP_NEAREST;
74081
74110
  Qo[PI] = Ct.LINEAR_MIPMAP_LINEAR;
@@ -74294,7 +74323,7 @@ class csA {
74294
74323
  return l;
74295
74324
  };
74296
74325
  }
74297
- console.warn("THREE.GLTFExporter: Merged metalnessMap and roughnessMap textures."), A instanceof cC && (A = Rm(A)), e instanceof cC && (e = Rm(e));
74326
+ console.warn("THREE.GLTFExporter: Merged metalnessMap and roughnessMap textures."), A instanceof hC && (A = Rm(A)), e instanceof hC && (e = Rm(e));
74298
74327
  const g = A ? A.image : null, I = e ? e.image : null, o = Math.max(g ? g.width : 0, I ? I.width : 0), s = Math.max(g ? g.height : 0, I ? I.height : 0), C = Wb();
74299
74328
  C.width = o, C.height = s;
74300
74329
  const n = C.getContext("2d");
@@ -74314,7 +74343,7 @@ class csA {
74314
74343
  }
74315
74344
  n.putImageData(a, 0, 0);
74316
74345
  const Q = (A || e).clone();
74317
- return Q.source = new nn(C), Q.colorSpace = pg, Q.channel = (A || e).channel, A && e && A.channel !== e.channel && console.warn("THREE.GLTFExporter: UV channels for metalnessMap and roughnessMap textures must match."), Q;
74346
+ return Q.source = new rn(C), Q.colorSpace = pg, Q.channel = (A || e).channel, A && e && A.channel !== e.channel && console.warn("THREE.GLTFExporter: UV channels for metalnessMap and roughnessMap textures must match."), Q;
74318
74347
  }
74319
74348
  /**
74320
74349
  * Process a buffer to append to the default one.
@@ -74502,7 +74531,7 @@ class csA {
74502
74531
  const t = this.options, g = this.cache, I = this.json;
74503
74532
  if (g.textures.has(A))
74504
74533
  return g.textures.get(A);
74505
- I.textures || (I.textures = []), A instanceof cC && (A = Rm(A, t.maxTextureSize));
74534
+ I.textures || (I.textures = []), A instanceof hC && (A = Rm(A, t.maxTextureSize));
74506
74535
  let o = A.userData.mimeType;
74507
74536
  o === "image/webp" && (o = "image/png");
74508
74537
  const s = {
@@ -75175,7 +75204,7 @@ QN.Utils = {
75175
75204
  if (o.createInterpolant !== o.InterpolantFactoryMethodDiscrete && o.createInterpolant !== o.InterpolantFactoryMethodLinear) {
75176
75205
  if (o.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline)
75177
75206
  throw new Error("THREE.GLTFExporter: Cannot merge tracks with glTF CUBICSPLINE interpolation.");
75178
- console.warn("THREE.GLTFExporter: Morph target interpolation mode not yet supported. Using LINEAR instead."), o = o.clone(), o.setInterpolation(uC);
75207
+ console.warn("THREE.GLTFExporter: Morph target interpolation mode not yet supported. Using LINEAR instead."), o = o.clone(), o.setInterpolation(pC);
75179
75208
  }
75180
75209
  const n = C.morphTargetInfluences.length, a = C.morphTargetDictionary[s.propertyIndex];
75181
75210
  if (a === void 0)
@@ -75618,7 +75647,7 @@ Hw([
75618
75647
  Hw([
75619
75648
  D(Yg)
75620
75649
  ], Ic.prototype, "onEndEdit", 2);
75621
- var LsA = Object.defineProperty, xsA = Object.getOwnPropertyDescriptor, UC = (i, A, e, t) => {
75650
+ var LsA = Object.defineProperty, xsA = Object.getOwnPropertyDescriptor, FC = (i, A, e, t) => {
75622
75651
  for (var g = t > 1 ? void 0 : t ? xsA(A, e) : A, I = i.length - 1, o; I >= 0; I--)
75623
75652
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
75624
75653
  return t && g && LsA(A, e, g), g;
@@ -75831,34 +75860,34 @@ class So extends vA {
75831
75860
  }
75832
75861
  }
75833
75862
  r(So, "allowChangingRendererShadowMapType", !0);
75834
- UC([
75863
+ FC([
75835
75864
  D()
75836
75865
  ], So.prototype, "type", 2);
75837
- UC([
75866
+ FC([
75838
75867
  D(yA)
75839
75868
  ], So.prototype, "color", 1);
75840
- UC([
75869
+ FC([
75841
75870
  D()
75842
75871
  ], So.prototype, "shadowNearPlane", 1);
75843
- UC([
75872
+ FC([
75844
75873
  D()
75845
75874
  ], So.prototype, "shadowBias", 1);
75846
- UC([
75875
+ FC([
75847
75876
  D()
75848
75877
  ], So.prototype, "shadowNormalBias", 1);
75849
- UC([
75878
+ FC([
75850
75879
  D()
75851
75880
  ], So.prototype, "shadows", 1);
75852
- UC([
75881
+ FC([
75853
75882
  D()
75854
75883
  ], So.prototype, "lightmapBakeType", 2);
75855
- UC([
75884
+ FC([
75856
75885
  D()
75857
75886
  ], So.prototype, "intensity", 1);
75858
- UC([
75887
+ FC([
75859
75888
  D()
75860
75889
  ], So.prototype, "shadowDistance", 1);
75861
- UC([
75890
+ FC([
75862
75891
  D()
75863
75892
  ], So.prototype, "shadowResolution", 1);
75864
75893
  new y(0, 0, 0);
@@ -76255,7 +76284,7 @@ class cN extends vA {
76255
76284
  const e = this.gameObject.parent;
76256
76285
  if (e) {
76257
76286
  this._isLoadingOrDoneLoading = !0;
76258
- const C = new kn();
76287
+ const C = new MC();
76259
76288
  C.idProvider = new xg(this.hash(this.guid)), C.parent = e, this.gameObject.updateMatrix();
76260
76289
  const n = this.gameObject.matrix;
76261
76290
  kp && console.log("Load nested:", ((t = this.filePath) == null ? void 0 : t.uri) ?? this.filePath, this.gameObject.position);
@@ -81126,7 +81155,7 @@ class SnA extends qB {
81126
81155
  if (e.rotation === void 0)
81127
81156
  return;
81128
81157
  const g = e.age / e.life;
81129
- if (typeof e.rotation == "number" && (this.system.rotationOverLifetime.enabled ? e.rotation += this.system.rotationOverLifetime.evaluate(g, e[Gq]) * t : this.system.renderer.renderMode === An.Billboard && (e.rotation = Math.PI), this.system.rotationBySpeed.enabled)) {
81158
+ if (typeof e.rotation == "number" && (this.system.rotationOverLifetime.enabled ? e.rotation += this.system.rotationOverLifetime.evaluate(g, e[Gq]) * t : this.system.renderer.renderMode === tn.Billboard && (e.rotation = Math.PI), this.system.rotationBySpeed.enabled)) {
81130
81159
  const I = e.velocity.length();
81131
81160
  e.rotation += this.system.rotationBySpeed.evaluate(g, I) * t;
81132
81161
  }
@@ -81148,7 +81177,7 @@ class knA extends qB {
81148
81177
  let I = 1;
81149
81178
  this.system.sizeOverLifetime.enabled && (I *= this.system.sizeOverLifetime.evaluate(g, void 0, e[Mq]).x);
81150
81179
  let o = 1;
81151
- if (this.system.renderer.renderMode !== An.Mesh && (o = this.system.worldScale.x / this.system.cameraScale), e.size = e.startSize * I * o, this.system.localspace) {
81180
+ if (this.system.renderer.renderMode !== tn.Mesh && (o = this.system.worldScale.x / this.system.cameraScale), e.size = e.startSize * I * o, this.system.localspace) {
81152
81181
  const s = lO(this.system, mnA);
81153
81182
  e.size *= s.x;
81154
81183
  }
@@ -81309,15 +81338,15 @@ class UnA {
81309
81338
  if (this.system.trails.enabled === !0)
81310
81339
  return Ce.Trail;
81311
81340
  switch (this.system.renderer.renderMode) {
81312
- case An.Billboard:
81341
+ case tn.Billboard:
81313
81342
  return Ce.BillBoard;
81314
- case An.Stretch:
81343
+ case tn.Stretch:
81315
81344
  return Ce.StretchedBillBoard;
81316
- case An.HorizontalBillboard:
81345
+ case tn.HorizontalBillboard:
81317
81346
  return Ce.HorizontalBillBoard;
81318
- case An.VerticalBillboard:
81347
+ case tn.VerticalBillboard:
81319
81348
  return Ce.VerticalBillBoard;
81320
- case An.Mesh:
81349
+ case tn.Mesh:
81321
81350
  return Ce.Mesh;
81322
81351
  }
81323
81352
  return Ce.BillBoard;
@@ -81325,7 +81354,7 @@ class UnA {
81325
81354
  get speedFactor() {
81326
81355
  var e;
81327
81356
  let A = this.system.main.simulationSpeed;
81328
- return ((e = this.system.renderer) == null ? void 0 : e.renderMode) === An.Stretch && (A *= this.system.renderer.velocityScale ?? 1), A;
81357
+ return ((e = this.system.renderer) == null ? void 0 : e.renderMode) === tn.Stretch && (A *= this.system.renderer.velocityScale ?? 1), A;
81329
81358
  }
81330
81359
  get texture() {
81331
81360
  const A = this.material;
@@ -83379,7 +83408,7 @@ class Ya extends vA {
83379
83408
  return !1;
83380
83409
  this.url = e;
83381
83410
  const g = e.lastIndexOf("/");
83382
- return t.name = e.substring(g >= 0 ? g + 1 : 0), this._loader instanceof ln && (t.colorSpace = We), this._prevLoadedEnvironment = t, this.applySkybox(), !0;
83411
+ return t.name = e.substring(g >= 0 ? g + 1 : 0), this._loader instanceof dn && (t.colorSpace = We), this._prevLoadedEnvironment = t, this.applySkybox(), !0;
83383
83412
  }
83384
83413
  async loadTexture(e) {
83385
83414
  var C, n, a, B, Q;
@@ -83392,7 +83421,7 @@ class Ya extends vA {
83392
83421
  return E;
83393
83422
  }
83394
83423
  const g = e.endsWith(".exr"), I = e.endsWith(".hdr");
83395
- g ? this._loader instanceof lD || (this._loader = new lD()) : I ? this._loader instanceof LG || (this._loader = new LG()) : this._loader instanceof ln || (this._loader = new ln()), sC && console.log("Loading skybox: " + e);
83424
+ g ? this._loader instanceof lD || (this._loader = new lD()) : I ? this._loader instanceof LG || (this._loader = new LG()) : this._loader instanceof dn || (this._loader = new dn()), sC && console.log("Loading skybox: " + e);
83396
83425
  const o = this._loader.loadAsync(e);
83397
83426
  return PnA(e, o), await o;
83398
83427
  }
@@ -84479,13 +84508,13 @@ class rc extends vA {
84479
84508
  }
84480
84509
  onEnable() {
84481
84510
  var e, t, g;
84482
- (e = this._net) == null || e.enable(), (t = this._net) == null || t.addEventListener(cn.StreamReceived, this.onReceiveStream), (g = this._net) == null || g.addEventListener(cn.StreamEnded, this.onCallEnded), this.context.connection.beginListen(pt.JoinedRoom, this.onJoinedRoom), this.autoConnect && ys(1e3).then(() => {
84511
+ (e = this._net) == null || e.enable(), (t = this._net) == null || t.addEventListener(hn.StreamReceived, this.onReceiveStream), (g = this._net) == null || g.addEventListener(hn.StreamEnded, this.onCallEnded), this.context.connection.beginListen(pt.JoinedRoom, this.onJoinedRoom), this.autoConnect && ys(1e3).then(() => {
84483
84512
  this.enabled && this.autoConnect && !this.isReceiving && !this.isSending && this.context.connection.isInRoom && this.share();
84484
84513
  });
84485
84514
  }
84486
84515
  onDisable() {
84487
84516
  var e, t, g;
84488
- (e = this._net) == null || e.removeEventListener(cn.StreamReceived, this.onReceiveStream), (t = this._net) == null || t.removeEventListener(cn.StreamEnded, this.onCallEnded), this.context.connection.stopListen(pt.JoinedRoom, this.onJoinedRoom), (g = this._net) == null || g.disable(), this.close();
84517
+ (e = this._net) == null || e.removeEventListener(hn.StreamReceived, this.onReceiveStream), (t = this._net) == null || t.removeEventListener(hn.StreamEnded, this.onCallEnded), this.context.connection.stopListen(pt.JoinedRoom, this.onJoinedRoom), (g = this._net) == null || g.disable(), this.close();
84489
84518
  }
84490
84519
  _ensureVideoPlayer() {
84491
84520
  const e = new wg();
@@ -84702,7 +84731,7 @@ var CaA = Object.defineProperty, naA = Object.getOwnPropertyDescriptor, LB = (i,
84702
84731
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
84703
84732
  return t && g && CaA(A, e, g), g;
84704
84733
  }, dM = /* @__PURE__ */ ((i) => (i[i.Performance = 0] = "Performance", i[i.Low = 1] = "Low", i[i.Medium = 2] = "Medium", i[i.High = 3] = "High", i[i.Ultra = 4] = "Ultra", i))(dM || {});
84705
- class NC extends RI {
84734
+ class KC extends RI {
84706
84735
  constructor() {
84707
84736
  super(...arguments);
84708
84737
  r(this, "gammaCorrection", !0);
@@ -84743,28 +84772,28 @@ class NC extends RI {
84743
84772
  LB([
84744
84773
  aI(),
84745
84774
  D()
84746
- ], NC.prototype, "gammaCorrection", 2);
84775
+ ], KC.prototype, "gammaCorrection", 2);
84747
84776
  LB([
84748
84777
  D(ve)
84749
- ], NC.prototype, "intensity", 2);
84778
+ ], KC.prototype, "intensity", 2);
84750
84779
  LB([
84751
84780
  D(ve)
84752
- ], NC.prototype, "falloff", 2);
84781
+ ], KC.prototype, "falloff", 2);
84753
84782
  LB([
84754
84783
  D(ve)
84755
- ], NC.prototype, "aoRadius", 2);
84784
+ ], KC.prototype, "aoRadius", 2);
84756
84785
  LB([
84757
84786
  aI(),
84758
84787
  D()
84759
- ], NC.prototype, "screenspaceRadius", 2);
84788
+ ], KC.prototype, "screenspaceRadius", 2);
84760
84789
  LB([
84761
84790
  D(ve)
84762
- ], NC.prototype, "color", 2);
84791
+ ], KC.prototype, "color", 2);
84763
84792
  LB([
84764
84793
  aI(),
84765
84794
  D()
84766
- ], NC.prototype, "quality", 2);
84767
- qs("ScreenSpaceAmbientOcclusionN8", NC);
84795
+ ], KC.prototype, "quality", 2);
84796
+ qs("ScreenSpaceAmbientOcclusionN8", KC);
84768
84797
  var aaA = Object.defineProperty, raA = Object.getOwnPropertyDescriptor, SO = (i, A, e, t) => {
84769
84798
  for (var g = t > 1 ? void 0 : t ? raA(A, e) : A, I = i.length - 1, o; I >= 0; I--)
84770
84799
  (o = i[I]) && (g = (t ? o(A, e, g) : o(g)) || g);
@@ -85164,7 +85193,7 @@ const Th = CA("debugspatialtrigger"), qq = new mI(), Lq = new mI();
85164
85193
  function paA(i, A) {
85165
85194
  return qq.mask = i, Lq.mask = A, qq.test(Lq);
85166
85195
  }
85167
- class yn extends vA {
85196
+ class wn extends vA {
85168
85197
  constructor() {
85169
85198
  super(...arguments);
85170
85199
  r(this, "triggerMask", 0);
@@ -85204,16 +85233,16 @@ class yn extends vA {
85204
85233
  }
85205
85234
  Wd([
85206
85235
  D()
85207
- ], yn.prototype, "triggerMask", 2);
85236
+ ], wn.prototype, "triggerMask", 2);
85208
85237
  Wd([
85209
85238
  D(Yg)
85210
- ], yn.prototype, "onEnter", 2);
85239
+ ], wn.prototype, "onEnter", 2);
85211
85240
  Wd([
85212
85241
  D(Yg)
85213
- ], yn.prototype, "onStay", 2);
85242
+ ], wn.prototype, "onStay", 2);
85214
85243
  Wd([
85215
85244
  D(Yg)
85216
- ], yn.prototype, "onExit", 2);
85245
+ ], wn.prototype, "onExit", 2);
85217
85246
  var rk;
85218
85247
  const Sf = (rk = class extends vA {
85219
85248
  constructor() {
@@ -85237,17 +85266,17 @@ const Sf = (rk = class extends vA {
85237
85266
  // private args: SpatialTriggerEventArgs = new SpatialTriggerEventArgs();
85238
85267
  raiseOnEnterEvent(A) {
85239
85268
  BA.foreachComponent(this.gameObject, (e) => {
85240
- e !== A && e instanceof yn && e.onEnterTrigger(this);
85269
+ e !== A && e instanceof wn && e.onEnterTrigger(this);
85241
85270
  }, !1);
85242
85271
  }
85243
85272
  raiseOnStayEvent(A) {
85244
85273
  BA.foreachComponent(this.gameObject, (e) => {
85245
- e !== A && e instanceof yn && e.onStayTrigger(this);
85274
+ e !== A && e instanceof wn && e.onStayTrigger(this);
85246
85275
  }, !1);
85247
85276
  }
85248
85277
  raiseOnExitEvent(A) {
85249
85278
  BA.foreachComponent(this.gameObject, (e) => {
85250
- e !== A && e instanceof yn && e.onExitTrigger(this);
85279
+ e !== A && e instanceof wn && e.onExitTrigger(this);
85251
85280
  }, !1);
85252
85281
  }
85253
85282
  }, r(rk, "triggers", []), rk);
@@ -85394,8 +85423,8 @@ class mN extends vA {
85394
85423
  const e = this._mode === 0;
85395
85424
  for (const t of fg.instances)
85396
85425
  if (t.avatar && "isLocalAvatar" in t.avatar && "flags" in t.avatar) {
85397
- let g = Cn.All;
85398
- this.isSpectatingSelf && (g = e && t.avatar.isLocalAvatar ? Cn.FirstPerson : Cn.ThirdPerson);
85426
+ let g = an.All;
85427
+ this.isSpectatingSelf && (g = e && t.avatar.isLocalAvatar ? an.FirstPerson : an.ThirdPerson);
85399
85428
  const I = t.avatar.flags;
85400
85429
  if (!I)
85401
85430
  continue;
@@ -85411,7 +85440,7 @@ class mN extends vA {
85411
85440
  if (!g)
85412
85441
  continue;
85413
85442
  for (const I of g)
85414
- "isLocalAvatar" in t.avatar && ((e = t.avatar) != null && e.isLocalAvatar) ? I.UpdateVisible(Cn.FirstPerson) : I.UpdateVisible(Cn.ThirdPerson);
85443
+ "isLocalAvatar" in t.avatar && ((e = t.avatar) != null && e.isLocalAvatar) ? I.UpdateVisible(an.FirstPerson) : I.UpdateVisible(an.ThirdPerson);
85415
85444
  }
85416
85445
  }
85417
85446
  }
@@ -85911,7 +85940,7 @@ const pM = (Bk = class extends vA {
85911
85940
  let g = this.remoteCams[e];
85912
85941
  if (!g)
85913
85942
  if ("isObject3D" in this.cameraPrefab) {
85914
- const C = new kn();
85943
+ const C = new MC();
85915
85944
  C.context = this.context;
85916
85945
  const n = BA.instantiate(this.cameraPrefab, C);
85917
85946
  g = this.remoteCams[e] = { obj: n, lastUpdate: this.context.time.realtimeSinceStartup, userId: t }, g.obj.visible = !0, this.gameObject.add(n), this.userToCamMap[t] = e, pM.instances.push(g);
@@ -85920,7 +85949,7 @@ const pM = (Bk = class extends vA {
85920
85949
  } else
85921
85950
  return;
85922
85951
  const I = g.obj;
85923
- this.context.players.setPlayerView(t, I, gB.Browser), g.lastUpdate = this.context.time.realtimeSinceStartup, lC.markDirty(I);
85952
+ this.context.players.setPlayerView(t, I, gB.Browser), g.lastUpdate = this.context.time.realtimeSinceStartup, dC.markDirty(I);
85924
85953
  const o = A.pos();
85925
85954
  o && QE(I, o.x(), o.y(), o.z());
85926
85955
  const s = A.rot();
@@ -88037,7 +88066,7 @@ class FN extends vA {
88037
88066
  async onEnterXR(e) {
88038
88067
  Zc && console.log("WebXR onEnterXR"), this._previousXRState = eI.Global.Mask;
88039
88068
  const t = e.xr.isVR;
88040
- if (eI.Global.Set(t ? Cn.VR : Cn.AR), this.usePlacementReticle && e.xr.isAR) {
88069
+ if (eI.Global.Set(t ? an.VR : an.AR), this.usePlacementReticle && e.xr.isAR) {
88041
88070
  let I = BA.findObjectOfType(Rs);
88042
88071
  if (I)
88043
88072
  Zc && console.log("WebXR: WebARSessionRoot already exists, not creating a new one");
@@ -88369,7 +88398,7 @@ class _B extends vA {
88369
88398
  const g = t.get(e);
88370
88399
  if (!g)
88371
88400
  return;
88372
- t.delete(e), qp && console.log("Plane no longer tracked, id=" + g.id), g.mesh && g.mesh.parent && (g.mesh.parent.remove(g.mesh), fC(g.mesh, !0, !0));
88401
+ t.delete(e), qp && console.log("Plane no longer tracked, id=" + g.id), g.mesh && g.mesh.parent && (g.mesh.parent.remove(g.mesh), DC(g.mesh, !0, !0));
88373
88402
  const I = new CustomEvent("plane-tracking", {
88374
88403
  detail: {
88375
88404
  type: "plane-removed",
@@ -88644,9 +88673,9 @@ const YrA = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty(
88644
88673
  Avatar_Brain_LookAt: mD,
88645
88674
  Avatar_MouthShapes: Sw,
88646
88675
  Avatar_MustacheShake: J2,
88647
- Avatar_POI: Dn,
88676
+ Avatar_POI: yn,
88648
88677
  AxesHelper: kd,
88649
- BaseUIComponent: yC,
88678
+ BaseUIComponent: wC,
88650
88679
  BasicIKConstraint: q2,
88651
88680
  BehaviorExtension: VU,
88652
88681
  BehaviorModel: Dg,
@@ -88676,7 +88705,7 @@ const YrA = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty(
88676
88705
  CustomBranding: JB,
88677
88706
  Deletable: AO,
88678
88707
  DeleteBox: iN,
88679
- DepthOfField: RC,
88708
+ DepthOfField: NC,
88680
88709
  DeviceFlag: gN,
88681
88710
  DocumentExtension: eO,
88682
88711
  DragControls: Us,
@@ -88758,7 +88787,7 @@ const YrA = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty(
88758
88787
  SceneSwitcher: NI,
88759
88788
  ScreenCapture: rc,
88760
88789
  ScreenSpaceAmbientOcclusion: Ar,
88761
- ScreenSpaceAmbientOcclusionN8: NC,
88790
+ ScreenSpaceAmbientOcclusionN8: KC,
88762
88791
  SetActiveOnClick: $E,
88763
88792
  ShadowCatcher: gS,
88764
88793
  ShapeModule: Ag,
@@ -88774,7 +88803,7 @@ const YrA = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty(
88774
88803
  SpatialGrabRaycaster: DD,
88775
88804
  SpatialHtml: kO,
88776
88805
  SpatialTrigger: oS,
88777
- SpatialTriggerReceiver: yn,
88806
+ SpatialTriggerReceiver: wn,
88778
88807
  SpectatorCamera: mN,
88779
88808
  SphereCollider: kw,
88780
88809
  Sprite: er,
@@ -88860,14 +88889,14 @@ AA.add("Avatar", PE);
88860
88889
  AA.add("Avatar_Brain_LookAt", mD);
88861
88890
  AA.add("Avatar_MouthShapes", Sw);
88862
88891
  AA.add("Avatar_MustacheShake", J2);
88863
- AA.add("Avatar_POI", Dn);
88892
+ AA.add("Avatar_POI", yn);
88864
88893
  AA.add("AvatarBlink_Simple", jE);
88865
88894
  AA.add("AvatarEyeLook_Rotation", md);
88866
88895
  AA.add("AvatarLoader", b2);
88867
88896
  AA.add("AvatarMarker", fg);
88868
88897
  AA.add("AvatarModel", WU);
88869
88898
  AA.add("AxesHelper", kd);
88870
- AA.add("BaseUIComponent", yC);
88899
+ AA.add("BaseUIComponent", wC);
88871
88900
  AA.add("BasicIKConstraint", q2);
88872
88901
  AA.add("BehaviorExtension", VU);
88873
88902
  AA.add("BehaviorModel", Dg);
@@ -88897,7 +88926,7 @@ AA.add("ControlTrackHandler", YU);
88897
88926
  AA.add("CustomBranding", JB);
88898
88927
  AA.add("Deletable", AO);
88899
88928
  AA.add("DeleteBox", iN);
88900
- AA.add("DepthOfField", RC);
88929
+ AA.add("DepthOfField", NC);
88901
88930
  AA.add("DeviceFlag", gN);
88902
88931
  AA.add("DocumentExtension", eO);
88903
88932
  AA.add("DragControls", Us);
@@ -88982,7 +89011,7 @@ AA.add("RotationOverLifetimeModule", xs);
88982
89011
  AA.add("SceneSwitcher", NI);
88983
89012
  AA.add("ScreenCapture", rc);
88984
89013
  AA.add("ScreenSpaceAmbientOcclusion", Ar);
88985
- AA.add("ScreenSpaceAmbientOcclusionN8", NC);
89014
+ AA.add("ScreenSpaceAmbientOcclusionN8", KC);
88986
89015
  AA.add("SetActiveOnClick", $E);
88987
89016
  AA.add("ShadowCatcher", gS);
88988
89017
  AA.add("ShapeModule", Ag);
@@ -88998,7 +89027,7 @@ AA.add("SmoothFollow", xB);
88998
89027
  AA.add("SpatialGrabRaycaster", DD);
88999
89028
  AA.add("SpatialHtml", kO);
89000
89029
  AA.add("SpatialTrigger", oS);
89001
- AA.add("SpatialTriggerReceiver", yn);
89030
+ AA.add("SpatialTriggerReceiver", wn);
89002
89031
  AA.add("SpectatorCamera", mN);
89003
89032
  AA.add("SphereCollider", kw);
89004
89033
  AA.add("Sprite", er);
@@ -89194,7 +89223,7 @@ function oE(i, A) {
89194
89223
  e(A);
89195
89224
  }
89196
89225
  async function LO(i, A, e, t, g) {
89197
- bO && console.warn("glTF", A, e), A.includes("?") && (A = A.split("?")[0]), await DC().createBuiltinComponents(i, A, e, t, g);
89226
+ bO && console.warn("glTF", A, e), A.includes("?") && (A = A.split("?")[0]), await yC().createBuiltinComponents(i, A, e, t, g);
89198
89227
  }
89199
89228
  async function xO(i, A) {
89200
89229
  const e = new HE();
@@ -89420,7 +89449,7 @@ class OO extends HTMLElement {
89420
89449
  const e = this._loadId;
89421
89450
  setTimeout(() => {
89422
89451
  this.isConnected !== !1 && e === this._loadId && this.onLoad();
89423
- }, 1), Bn != null && Bn.length && this.setAttribute("version", Bn);
89452
+ }, 1), En != null && En.length && this.setAttribute("version", En);
89424
89453
  }
89425
89454
  disconnectedCallback() {
89426
89455
  var g;
@@ -89691,7 +89720,7 @@ function iEA(i) {
89691
89720
  for (const B of g) {
89692
89721
  const Q = B, E = Q.isComponent === !0, c = E ? Q.activeAndEnabled : !0, l = E ? Q.context : void 0;
89693
89722
  try {
89694
- if (E && l && In(Q, l), E && c && (Q.enabled = !1), B.onBeforeHotReloadFields && B.onBeforeHotReloadFields() === !1)
89723
+ if (E && l && sn(Q, l), E && c && (Q.enabled = !1), B.onBeforeHotReloadFields && B.onBeforeHotReloadFields() === !1)
89695
89724
  continue;
89696
89725
  for (const u in a)
89697
89726
  if (a[u].writable) {
@@ -89717,7 +89746,7 @@ function iEA(i) {
89717
89746
  else
89718
89747
  return !1;
89719
89748
  } finally {
89720
- vl = !1, dn(ws.Log, "Script changes applied (HMR)");
89749
+ vl = !1, un(ws.Log, "Script changes applied (HMR)");
89721
89750
  }
89722
89751
  return !0;
89723
89752
  }
@@ -90246,7 +90275,7 @@ class Qi {
90246
90275
  }
90247
90276
  }
90248
90277
  remove(A, e, t, g) {
90249
- iA(e, SC), iA(t, yi), M.rawcolliderset_remove(this.ptr, A, e.ptr, t.ptr, g);
90278
+ iA(e, mC), iA(t, yi), M.rawcolliderset_remove(this.ptr, A, e.ptr, t.ptr, g);
90250
90279
  }
90251
90280
  isHandleValid(A) {
90252
90281
  return M.rawcolliderset_contains(this.ptr, A) !== 0;
@@ -90425,7 +90454,7 @@ class KD {
90425
90454
  return bl(M.rawdebugrenderpipeline_colors(this.ptr));
90426
90455
  }
90427
90456
  render(A, e, t, g, I) {
90428
- iA(A, yi), iA(e, Qi), iA(t, wC), iA(g, mC), iA(I, Un), M.rawdebugrenderpipeline_render(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr);
90457
+ iA(A, yi), iA(e, Qi), iA(t, SC), iA(g, kC), iA(I, Un), M.rawdebugrenderpipeline_render(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr);
90429
90458
  }
90430
90459
  }
90431
90460
  class LN {
@@ -90451,7 +90480,7 @@ class LN {
90451
90480
  }
90452
90481
  takeIslandManager() {
90453
90482
  const A = M.rawdeserializedworld_takeIslandManager(this.ptr);
90454
- return A === 0 ? void 0 : SC.__wrap(A);
90483
+ return A === 0 ? void 0 : mC.__wrap(A);
90455
90484
  }
90456
90485
  takeBroadPhase() {
90457
90486
  const A = M.rawdeserializedworld_takeBroadPhase(this.ptr);
@@ -90471,11 +90500,11 @@ class LN {
90471
90500
  }
90472
90501
  takeImpulseJoints() {
90473
90502
  const A = M.rawdeserializedworld_takeImpulseJoints(this.ptr);
90474
- return A === 0 ? void 0 : wC.__wrap(A);
90503
+ return A === 0 ? void 0 : SC.__wrap(A);
90475
90504
  }
90476
90505
  takeMultibodyJoints() {
90477
90506
  const A = M.rawdeserializedworld_takeMultibodyJoints(this.ptr);
90478
- return A === 0 ? void 0 : mC.__wrap(A);
90507
+ return A === 0 ? void 0 : kC.__wrap(A);
90479
90508
  }
90480
90509
  }
90481
90510
  class Ll {
@@ -90547,9 +90576,9 @@ class jo {
90547
90576
  return g === 0 ? void 0 : jo.__wrap(g);
90548
90577
  }
90549
90578
  }
90550
- class wC {
90579
+ class SC {
90551
90580
  static __wrap(A) {
90552
- const e = Object.create(wC.prototype);
90581
+ const e = Object.create(SC.prototype);
90553
90582
  return e.ptr = A, e;
90554
90583
  }
90555
90584
  __destroy_into_raw() {
@@ -90623,7 +90652,7 @@ class wC {
90623
90652
  }
90624
90653
  constructor() {
90625
90654
  const A = M.rawimpulsejointset_new();
90626
- return wC.__wrap(A);
90655
+ return SC.__wrap(A);
90627
90656
  }
90628
90657
  createJoint(A, e, t, g) {
90629
90658
  return iA(A, jo), M.rawimpulsejointset_createJoint(this.ptr, A.ptr, e, t, g);
@@ -90724,9 +90753,9 @@ class _a {
90724
90753
  M.rawintegrationparameters_set_maxCcdSubsteps(this.ptr, A);
90725
90754
  }
90726
90755
  }
90727
- class SC {
90756
+ class mC {
90728
90757
  static __wrap(A) {
90729
- const e = Object.create(SC.prototype);
90758
+ const e = Object.create(mC.prototype);
90730
90759
  return e.ptr = A, e;
90731
90760
  }
90732
90761
  __destroy_into_raw() {
@@ -90739,7 +90768,7 @@ class SC {
90739
90768
  }
90740
90769
  constructor() {
90741
90770
  const A = M.rawislandmanager_new();
90742
- return SC.__wrap(A);
90771
+ return mC.__wrap(A);
90743
90772
  }
90744
90773
  forEachActiveRigidBodyHandle(A) {
90745
90774
  try {
@@ -90870,9 +90899,9 @@ class JD {
90870
90899
  return iA(e, ql), M.rawkinematiccharactercontroller_computedCollision(this.ptr, A, e.ptr) !== 0;
90871
90900
  }
90872
90901
  }
90873
- class mC {
90902
+ class kC {
90874
90903
  static __wrap(A) {
90875
- const e = Object.create(mC.prototype);
90904
+ const e = Object.create(kC.prototype);
90876
90905
  return e.ptr = A, e;
90877
90906
  }
90878
90907
  __destroy_into_raw() {
@@ -90919,7 +90948,7 @@ class mC {
90919
90948
  }
90920
90949
  constructor() {
90921
90950
  const A = M.rawmultibodyjointset_new();
90922
- return mC.__wrap(A);
90951
+ return kC.__wrap(A);
90923
90952
  }
90924
90953
  createJoint(A, e, t, g) {
90925
90954
  return iA(A, jo), M.rawmultibodyjointset_createJoint(this.ptr, A.ptr, e, t, g);
@@ -90994,10 +91023,10 @@ class vD {
90994
91023
  return vD.__wrap(A);
90995
91024
  }
90996
91025
  step(A, e, t, g, I, o, s, C, n, a) {
90997
- iA(A, EA), iA(e, _a), iA(t, SC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, wC), iA(n, mC), iA(a, wE), M.rawphysicspipeline_step(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr, a.ptr);
91026
+ iA(A, EA), iA(e, _a), iA(t, mC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, SC), iA(n, kC), iA(a, wE), M.rawphysicspipeline_step(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr, a.ptr);
90998
91027
  }
90999
91028
  stepWithEvents(A, e, t, g, I, o, s, C, n, a, B, Q, E, c) {
91000
- iA(A, EA), iA(e, _a), iA(t, SC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, wC), iA(n, mC), iA(a, wE), iA(B, Ll), M.rawphysicspipeline_stepWithEvents(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr, a.ptr, B.ptr, Pi(Q), Pi(E), Pi(c));
91029
+ iA(A, EA), iA(e, _a), iA(t, mC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, SC), iA(n, kC), iA(a, wE), iA(B, Ll), M.rawphysicspipeline_stepWithEvents(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr, a.ptr, B.ptr, Pi(Q), Pi(E), Pi(c));
91001
91030
  }
91002
91031
  }
91003
91032
  class bD {
@@ -91474,7 +91503,7 @@ class yi {
91474
91503
  return iA(e, EA), iA(t, it), iA(s, EA), iA(C, EA), iA(n, EA), iA(a, EA), iA(B, it), M.rawrigidbodyset_createRigidBody(this.ptr, A, e.ptr, t.ptr, g, I, o, s.ptr, C.ptr, n.ptr, a.ptr, B.ptr, Q, E, c, l, u, h, d, p, f, S, m, G, R);
91475
91504
  }
91476
91505
  remove(A, e, t, g, I) {
91477
- iA(e, SC), iA(t, Qi), iA(g, wC), iA(I, mC), M.rawrigidbodyset_remove(this.ptr, A, e.ptr, t.ptr, g.ptr, I.ptr);
91506
+ iA(e, mC), iA(t, Qi), iA(g, SC), iA(I, kC), M.rawrigidbodyset_remove(this.ptr, A, e.ptr, t.ptr, g.ptr, I.ptr);
91478
91507
  }
91479
91508
  len() {
91480
91509
  return M.rawrigidbodyset_len(this.ptr) >>> 0;
@@ -91562,7 +91591,7 @@ class LD {
91562
91591
  return LD.__wrap(A);
91563
91592
  }
91564
91593
  serializeAll(A, e, t, g, I, o, s, C, n) {
91565
- return iA(A, EA), iA(e, _a), iA(t, SC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, wC), iA(n, mC), bl(M.rawserializationpipeline_serializeAll(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr));
91594
+ return iA(A, EA), iA(e, _a), iA(t, mC), iA(g, Ta), iA(I, Un), iA(o, yi), iA(s, Qi), iA(C, SC), iA(n, kC), bl(M.rawserializationpipeline_serializeAll(this.ptr, A.ptr, e.ptr, t.ptr, g.ptr, I.ptr, o.ptr, s.ptr, C.ptr, n.ptr));
91566
91595
  }
91567
91596
  deserializeAll(A) {
91568
91597
  const e = M.rawserializationpipeline_deserializeAll(this.ptr, Pi(A));
@@ -92625,7 +92654,7 @@ class wa {
92625
92654
  }
92626
92655
  class VN {
92627
92656
  constructor(A) {
92628
- this.raw = A || new wC(), this.map = new dS(), A && A.forEachJointHandle((e) => {
92657
+ this.raw = A || new SC(), this.map = new dS(), A && A.forEachJointHandle((e) => {
92629
92658
  this.map.set(e, Nn.newTyped(A, null, e));
92630
92659
  });
92631
92660
  }
@@ -92712,7 +92741,7 @@ class $N extends Fn {
92712
92741
  }
92713
92742
  class AF {
92714
92743
  constructor(A) {
92715
- this.raw = A || new mC(), this.map = new dS(), A && A.forEachJointHandle((e) => {
92744
+ this.raw = A || new kC(), this.map = new dS(), A && A.forEachJointHandle((e) => {
92716
92745
  this.map.set(e, Fn.newTyped(this.raw, e));
92717
92746
  });
92718
92747
  }
@@ -92763,7 +92792,7 @@ class eF {
92763
92792
  }
92764
92793
  class tF {
92765
92794
  constructor(A) {
92766
- this.raw = A || new SC();
92795
+ this.raw = A || new mC();
92767
92796
  }
92768
92797
  free() {
92769
92798
  this.raw && this.raw.free(), this.raw = void 0;
@@ -95705,7 +95734,7 @@ const fBA = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty(
95705
95734
  CUBICSPLINE: void 0,
95706
95735
  // We use a custom interpolant (GLTFCubicSplineInterpolation) for CUBICSPLINE tracks. Each
95707
95736
  // keyframe track will be initialized with a default interpolation type, then modified.
95708
- LINEAR: uC,
95737
+ LINEAR: pC,
95709
95738
  STEP: ba
95710
95739
  }, $q = ze.findNode;
95711
95740
  let AL = !1;
@@ -95958,13 +95987,13 @@ class yBA {
95958
95987
  break;
95959
95988
  case 2:
95960
95989
  case 3:
95961
- c = Sn;
95990
+ c = mn;
95962
95991
  break;
95963
95992
  case 4:
95964
- s.endsWith(".quaternion") ? c = pC : c = Gy;
95993
+ s.endsWith(".quaternion") ? c = fC : c = Gy;
95965
95994
  break;
95966
95995
  }
95967
- const l = g.interpolation !== void 0 ? DBA[g.interpolation] : uC;
95996
+ const l = g.interpolation !== void 0 ? DBA[g.interpolation] : pC;
95968
95997
  let u = E._getArrayFromAccessor(t);
95969
95998
  s.endsWith(".fov") && (u = u.map((d) => d / Math.PI * 180));
95970
95999
  const h = new c(
@@ -96066,10 +96095,10 @@ export {
96066
96095
  mD as Avatar_Brain_LookAt,
96067
96096
  Sw as Avatar_MouthShapes,
96068
96097
  J2 as Avatar_MustacheShake,
96069
- Dn as Avatar_POI,
96098
+ yn as Avatar_POI,
96070
96099
  Eh as Axes,
96071
96100
  kd as AxesHelper,
96072
- yC as BaseUIComponent,
96101
+ wC as BaseUIComponent,
96073
96102
  q2 as BasicIKConstraint,
96074
96103
  VU as BehaviorExtension,
96075
96104
  Dg as BehaviorModel,
@@ -96093,7 +96122,7 @@ export {
96093
96122
  Fw as ChromaticAberration,
96094
96123
  ks as CircularBuffer,
96095
96124
  yE as ClearFlags,
96096
- VC as ClipExtrapolation,
96125
+ ZC as ClipExtrapolation,
96097
96126
  Ls as Collider,
96098
96127
  gBA as Collision,
96099
96128
  LU as CollisionDetectionMode,
@@ -96116,7 +96145,7 @@ export {
96116
96145
  NG as DefaultReflectionMode,
96117
96146
  AO as Deletable,
96118
96147
  iN as DeleteBox,
96119
- RC as DepthOfField,
96148
+ NC as DepthOfField,
96120
96149
  gN as DeviceFlag,
96121
96150
  eO as DocumentExtension,
96122
96151
  Us as DragControls,
@@ -96164,10 +96193,10 @@ export {
96164
96193
  TV as Input,
96165
96194
  wi as InputEvents,
96166
96195
  Ic as InputField,
96167
- lC as InstancingUtil,
96196
+ dC as InstancingUtil,
96168
96197
  D9 as InstantiateEvent,
96169
96198
  xg as InstantiateIdProvider,
96170
- kn as InstantiateOptions,
96199
+ MC as InstantiateOptions,
96171
96200
  BQA as JoinedRoomResponse,
96172
96201
  jBA as KeyEventArgs,
96173
96202
  Ow as LODGroup,
@@ -96203,7 +96232,7 @@ export {
96203
96232
  T7 as NeedleXRUtils,
96204
96233
  cN as NestedGltf,
96205
96234
  y7 as NetworkConnection,
96206
- cn as NetworkedStreamEvents,
96235
+ hn as NetworkedStreamEvents,
96207
96236
  ww as NetworkedStreams,
96208
96237
  tc as Networking,
96209
96238
  S9 as NewInstanceModel,
@@ -96270,7 +96299,7 @@ export {
96270
96299
  NI as SceneSwitcher,
96271
96300
  rc as ScreenCapture,
96272
96301
  Ar as ScreenSpaceAmbientOcclusion,
96273
- NC as ScreenSpaceAmbientOcclusionN8,
96302
+ KC as ScreenSpaceAmbientOcclusionN8,
96274
96303
  eC as SendQueue,
96275
96304
  $E as SetActiveOnClick,
96276
96305
  gS as ShadowCatcher,
@@ -96287,7 +96316,7 @@ export {
96287
96316
  DD as SpatialGrabRaycaster,
96288
96317
  kO as SpatialHtml,
96289
96318
  oS as SpatialTrigger,
96290
- yn as SpatialTriggerReceiver,
96319
+ wn as SpatialTriggerReceiver,
96291
96320
  mN as SpectatorCamera,
96292
96321
  kw as SphereCollider,
96293
96322
  P7 as SphereIntersection,
@@ -96332,7 +96361,7 @@ export {
96332
96361
  aiA as UriSerializer,
96333
96362
  qw as UsageMarker,
96334
96363
  EQA as UserJoinedOrLeftRoomModel,
96335
- Bn as VERSION,
96364
+ En as VERSION,
96336
96365
  f2 as VariantAction,
96337
96366
  mi as VelocityOverLifetimeModule,
96338
96367
  H2 as VerticalLayoutGroup,
@@ -96361,7 +96390,7 @@ export {
96361
96390
  Po as XRFlag,
96362
96391
  JN as XRRig,
96363
96392
  eI as XRState,
96364
- Cn as XRStateFlag,
96393
+ an as XRStateFlag,
96365
96394
  JO as __Ignore,
96366
96395
  B6 as __internalNotifyObjectDestroyed,
96367
96396
  Ma as activeInHierarchyFieldName,
@@ -96392,7 +96421,7 @@ export {
96392
96421
  ys as delay,
96393
96422
  YBA as delayForFrames,
96394
96423
  QG as deserializeObject,
96395
- fC as destroy,
96424
+ DC as destroy,
96396
96425
  J9 as destroyComponentInstance,
96397
96426
  $t as disposeObjectResources,
96398
96427
  Da as disposeStream,
@@ -96419,7 +96448,7 @@ export {
96419
96448
  HBA as getIp,
96420
96449
  OBA as getIpAndLocation,
96421
96450
  _BA as getIpCloudflare,
96422
- DC as getLoader,
96451
+ yC as getLoader,
96423
96452
  CU as getOrAddComponent,
96424
96453
  CA as getParam,
96425
96454
  $BA as getParentHierarchyPath,