@thatopen/components 2.3.0 → 2.3.1

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.
package/dist/index.mjs CHANGED
@@ -2,15 +2,15 @@ var Ao = Object.defineProperty;
2
2
  var Fo = (c, i, t) => i in c ? Ao(c, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : c[i] = t;
3
3
  var C = (c, i, t) => (Fo(c, typeof i != "symbol" ? i + "" : i, t), t);
4
4
  import * as D from "three";
5
- import { BufferAttribute as Zr, Vector3 as Q, Vector2 as ri, Plane as Dn, Line3 as de, Triangle as ei, Sphere as So, Matrix4 as Ee, Box3 as oe, BackSide as Oo, DoubleSide as jr, FrontSide as Xn, Mesh as rt, Ray as No, Raycaster as yo, Quaternion as Ie, Object3D as In, Euler as Lo, MeshBasicMaterial as qr, LineBasicMaterial as _o, CylinderGeometry as Vt, BoxGeometry as Ut, BufferGeometry as $n, Float32BufferAttribute as Zn, OctahedronGeometry as Vi, Line as Se, SphereGeometry as Po, TorusGeometry as ui, PlaneGeometry as wo } from "three";
5
+ import { BufferAttribute as Zr, Vector3 as Q, Vector2 as oi, Plane as Dn, Line3 as Ee, Triangle as ei, Sphere as So, Matrix4 as pe, Box3 as ae, BackSide as Oo, DoubleSide as jr, FrontSide as Xn, Mesh as rt, Ray as No, Raycaster as yo, Quaternion as de, Object3D as In, Euler as Lo, MeshBasicMaterial as qr, LineBasicMaterial as _o, CylinderGeometry as Vt, BoxGeometry as Ut, BufferGeometry as $n, Float32BufferAttribute as Zn, OctahedronGeometry as Yi, Line as Ae, SphereGeometry as Po, TorusGeometry as fi, PlaneGeometry as wo } from "three";
6
6
  import * as Qt from "@thatopen/fragments";
7
7
  import { FragmentsGroup as Mo, Serializer as Do } from "@thatopen/fragments";
8
8
  import * as z from "web-ifc";
9
- const Qr = 0, bo = 1, vo = 2, jn = 2, Ws = 1.25, qn = 1, us = 6 * 4 + 4 + 4, Ys = 65535, Uo = Math.pow(2, -24), Xs = Symbol("SKIP_GENERATION");
9
+ const Qr = 0, bo = 1, vo = 2, jn = 2, Ws = 1.25, qn = 1, fs = 6 * 4 + 4 + 4, Ys = 65535, Uo = Math.pow(2, -24), Xs = Symbol("SKIP_GENERATION");
10
10
  function xo(c) {
11
11
  return c.index ? c.index.count : c.attributes.position.count;
12
12
  }
13
- function ai(c) {
13
+ function ci(c) {
14
14
  return xo(c) / 3;
15
15
  }
16
16
  function Bo(c, i = ArrayBuffer) {
@@ -25,7 +25,7 @@ function Vo(c, i) {
25
25
  }
26
26
  }
27
27
  function Kr(c) {
28
- const i = ai(c), t = c.drawRange, e = t.start / 3, s = (t.start + t.count) / 3, n = Math.max(0, e), r = Math.min(i, s) - n;
28
+ const i = ci(c), t = c.drawRange, e = t.start / 3, s = (t.start + t.count) / 3, n = Math.max(0, e), r = Math.min(i, s) - n;
29
29
  return [{
30
30
  offset: Math.floor(n),
31
31
  count: Math.floor(r)
@@ -52,7 +52,7 @@ function Jr(c) {
52
52
  function Yo(c) {
53
53
  if (c.groups.length === 0)
54
54
  return !1;
55
- const i = ai(c), t = Jr(c).sort((n, r) => n.offset - r.offset), e = t[t.length - 1];
55
+ const i = ci(c), t = Jr(c).sort((n, r) => n.offset - r.offset), e = t[t.length - 1];
56
56
  e.count = Math.min(i - e.offset, e.count);
57
57
  let s = 0;
58
58
  return t.forEach(({ count: n }) => s += n), i !== s;
@@ -81,13 +81,13 @@ function Jn(c, i, t) {
81
81
  e = c[n], s = i[n], t[n] = e < s ? e : s, e = c[r], s = i[r], t[r] = e > s ? e : s;
82
82
  }
83
83
  }
84
- function Yi(c, i, t) {
84
+ function Gi(c, i, t) {
85
85
  for (let e = 0; e < 3; e++) {
86
86
  const s = i[c + 2 * e], n = i[c + 2 * e + 1], r = s - n, o = s + n;
87
87
  r < t[e] && (t[e] = r), o > t[e + 3] && (t[e + 3] = o);
88
88
  }
89
89
  }
90
- function fi(c) {
90
+ function Ii(c) {
91
91
  const i = c[3] - c[0], t = c[4] - c[1], e = c[5] - c[2];
92
92
  return 2 * (i * t + t * e + e * i);
93
93
  }
@@ -118,7 +118,7 @@ function zo(c, i, t, e) {
118
118
  }
119
119
  function ko(c, i) {
120
120
  Go(i);
121
- const t = c.attributes.position, e = c.index ? c.index.array : null, s = ai(c), n = new Float32Array(s * 6), r = t.normalized, o = t.array, a = t.offset || 0;
121
+ const t = c.attributes.position, e = c.index ? c.index.array : null, s = ci(c), n = new Float32Array(s * 6), r = t.normalized, o = t.array, a = t.offset || 0;
122
122
  let l = 3;
123
123
  t.isInterleavedBufferAttribute && (l = t.data.stride);
124
124
  const h = ["getX", "getY", "getZ"];
@@ -139,13 +139,13 @@ function ko(c, i) {
139
139
  }
140
140
  return n;
141
141
  }
142
- const me = 32, Ho = (c, i) => c.candidate - i.candidate, Oe = new Array(me).fill().map(() => ({
142
+ const Te = 32, Ho = (c, i) => c.candidate - i.candidate, Fe = new Array(Te).fill().map(() => ({
143
143
  count: 0,
144
144
  bounds: new Float32Array(6),
145
145
  rightCacheBounds: new Float32Array(6),
146
146
  leftCacheBounds: new Float32Array(6),
147
147
  candidate: 0
148
- })), Gi = new Float32Array(6);
148
+ })), zi = new Float32Array(6);
149
149
  function Wo(c, i, t, e, s, n) {
150
150
  let r = -1, o = 0;
151
151
  if (n === Qr)
@@ -153,13 +153,13 @@ function Wo(c, i, t, e, s, n) {
153
153
  else if (n === bo)
154
154
  r = Qn(c), r !== -1 && (o = Xo(t, e, s, r));
155
155
  else if (n === vo) {
156
- const a = fi(c);
156
+ const a = Ii(c);
157
157
  let l = Ws * s;
158
158
  const h = e * 6, f = (e + s) * 6;
159
159
  for (let I = 0; I < 3; I++) {
160
- const u = i[I], T = (i[I + 3] - u) / me;
161
- if (s < me / 4) {
162
- const p = [...Oe];
160
+ const u = i[I], T = (i[I + 3] - u) / Te;
161
+ if (s < Te / 4) {
162
+ const p = [...Fe];
163
163
  p.length = s;
164
164
  let m = 0;
165
165
  for (let R = h; R < f; R += 6, m++) {
@@ -172,7 +172,7 @@ function Wo(c, i, t, e, s, n) {
172
172
  } = S;
173
173
  for (let L = 0; L < 3; L++)
174
174
  M[L] = 1 / 0, M[L + 3] = -1 / 0, y[L] = 1 / 0, y[L + 3] = -1 / 0, N[L] = 1 / 0, N[L + 3] = -1 / 0;
175
- Yi(R, t, N);
175
+ Gi(R, t, N);
176
176
  }
177
177
  p.sort(Ho);
178
178
  let F = s;
@@ -185,21 +185,21 @@ function Wo(c, i, t, e, s, n) {
185
185
  const S = t[R + 2 * I];
186
186
  for (let N = 0; N < F; N++) {
187
187
  const y = p[N];
188
- S >= y.candidate ? Yi(R, t, y.rightCacheBounds) : (Yi(R, t, y.leftCacheBounds), y.count++);
188
+ S >= y.candidate ? Gi(R, t, y.rightCacheBounds) : (Gi(R, t, y.leftCacheBounds), y.count++);
189
189
  }
190
190
  }
191
191
  for (let R = 0; R < F; R++) {
192
192
  const S = p[R], N = S.count, y = s - S.count, M = S.leftCacheBounds, L = S.rightCacheBounds;
193
193
  let b = 0;
194
- N !== 0 && (b = fi(M) / a);
194
+ N !== 0 && (b = Ii(M) / a);
195
195
  let G = 0;
196
- y !== 0 && (G = fi(L) / a);
196
+ y !== 0 && (G = Ii(L) / a);
197
197
  const O = qn + Ws * (b * N + G * y);
198
198
  O < l && (r = I, l = O, o = S.candidate);
199
199
  }
200
200
  } else {
201
- for (let F = 0; F < me; F++) {
202
- const R = Oe[F];
201
+ for (let F = 0; F < Te; F++) {
202
+ const R = Fe[F];
203
203
  R.count = 0, R.candidate = u + T + F * T;
204
204
  const S = R.bounds;
205
205
  for (let N = 0; N < 3; N++)
@@ -207,24 +207,24 @@ function Wo(c, i, t, e, s, n) {
207
207
  }
208
208
  for (let F = h; F < f; F += 6) {
209
209
  let N = ~~((t[F + 2 * I] - u) / T);
210
- N >= me && (N = me - 1);
211
- const y = Oe[N];
212
- y.count++, Yi(F, t, y.bounds);
210
+ N >= Te && (N = Te - 1);
211
+ const y = Fe[N];
212
+ y.count++, Gi(F, t, y.bounds);
213
213
  }
214
- const p = Oe[me - 1];
214
+ const p = Fe[Te - 1];
215
215
  Kn(p.bounds, p.rightCacheBounds);
216
- for (let F = me - 2; F >= 0; F--) {
217
- const R = Oe[F], S = Oe[F + 1];
216
+ for (let F = Te - 2; F >= 0; F--) {
217
+ const R = Fe[F], S = Fe[F + 1];
218
218
  Jn(R.bounds, S.rightCacheBounds, R.rightCacheBounds);
219
219
  }
220
220
  let m = 0;
221
- for (let F = 0; F < me - 1; F++) {
222
- const R = Oe[F], S = R.count, N = R.bounds, M = Oe[F + 1].rightCacheBounds;
223
- S !== 0 && (m === 0 ? Kn(N, Gi) : Jn(N, Gi, Gi)), m += S;
221
+ for (let F = 0; F < Te - 1; F++) {
222
+ const R = Fe[F], S = R.count, N = R.bounds, M = Fe[F + 1].rightCacheBounds;
223
+ S !== 0 && (m === 0 ? Kn(N, zi) : Jn(N, zi, zi)), m += S;
224
224
  let L = 0, b = 0;
225
- m !== 0 && (L = fi(Gi) / a);
225
+ m !== 0 && (L = Ii(zi) / a);
226
226
  const G = s - m;
227
- G !== 0 && (b = fi(M) / a);
227
+ G !== 0 && (b = Ii(M) / a);
228
228
  const O = qn + Ws * (L * m + b * G);
229
229
  O < l && (r = I, l = O, o = R.candidate);
230
230
  }
@@ -240,7 +240,7 @@ function Xo(c, i, t, e) {
240
240
  s += c[n * 6 + e * 2];
241
241
  return s / t;
242
242
  }
243
- class zi {
243
+ class ki {
244
244
  constructor() {
245
245
  }
246
246
  }
@@ -293,15 +293,15 @@ function jo(c, i) {
293
293
  return r;
294
294
  }
295
295
  function qo(c, i) {
296
- const t = c.geometry, e = t.index ? t.index.array : null, s = i.maxDepth, n = i.verbose, r = i.maxLeafTris, o = i.strategy, a = i.onProgress, l = ai(t), h = c._indirectBuffer;
296
+ const t = c.geometry, e = t.index ? t.index.array : null, s = i.maxDepth, n = i.verbose, r = i.maxLeafTris, o = i.strategy, a = i.onProgress, l = ci(t), h = c._indirectBuffer;
297
297
  let f = !1;
298
298
  const I = new Float32Array(6), u = new Float32Array(6), d = ko(t, I), E = i.indirect ? Zo : $o, T = [], p = i.indirect ? Kr(t) : Jr(t);
299
299
  if (p.length === 1) {
300
- const R = p[0], S = new zi();
300
+ const R = p[0], S = new ki();
301
301
  S.boundingData = I, zo(d, R.offset, R.count, u), F(S, R.offset, R.count, u), T.push(S);
302
302
  } else
303
303
  for (let R of p) {
304
- const S = new zi();
304
+ const S = new ki();
305
305
  S.boundingData = new Float32Array(6), $s(d, R.offset, R.count, S.boundingData, u), F(S, R.offset, R.count, u), T.push(S);
306
306
  }
307
307
  return T;
@@ -319,9 +319,9 @@ function qo(c, i) {
319
319
  m(S + N), R.offset = S, R.count = N;
320
320
  else {
321
321
  R.splitAxis = L.axis;
322
- const G = new zi(), O = S, w = b - S;
322
+ const G = new ki(), O = S, w = b - S;
323
323
  R.left = G, G.boundingData = new Float32Array(6), $s(d, O, w, G.boundingData, u), F(G, O, w, u, M + 1);
324
- const g = new zi(), v = b, j = N - w;
324
+ const g = new ki(), v = b, j = N - w;
325
325
  R.right = g, g.boundingData = new Float32Array(6), $s(d, v, j, g.boundingData, u), F(g, v, j, u, M + 1);
326
326
  }
327
327
  return R;
@@ -338,7 +338,7 @@ function Qo(c, i) {
338
338
  for (let f = 0; f < e.length; f++) {
339
339
  const I = e[f];
340
340
  let u = l(I);
341
- const d = new a(us * u);
341
+ const d = new a(fs * u);
342
342
  s = new Float32Array(d), n = new Uint32Array(d), r = new Uint16Array(d), h(0, I), o.push(d);
343
343
  }
344
344
  c._roots = o;
@@ -352,17 +352,17 @@ function Qo(c, i) {
352
352
  s[u + p] = T[p];
353
353
  if (E) {
354
354
  const p = I.offset, m = I.count;
355
- return n[u + 6] = p, r[d + 14] = m, r[d + 15] = Ys, f + us;
355
+ return n[u + 6] = p, r[d + 14] = m, r[d + 15] = Ys, f + fs;
356
356
  } else {
357
357
  const p = I.left, m = I.right, F = I.splitAxis;
358
358
  let R;
359
- if (R = h(f + us, p), R / 4 > Math.pow(2, 32))
359
+ if (R = h(f + fs, p), R / 4 > Math.pow(2, 32))
360
360
  throw new Error("MeshBVH: Cannot store child pointer greater than 32 bits.");
361
361
  return n[u + 6] = R / 4, R = h(R, m), n[u + 7] = F, R;
362
362
  }
363
363
  }
364
364
  }
365
- class Fe {
365
+ class ge {
366
366
  constructor() {
367
367
  this.min = 1 / 0, this.max = -1 / 0;
368
368
  }
@@ -386,7 +386,7 @@ class Fe {
386
386
  return this.min > i.max || i.min > this.max;
387
387
  }
388
388
  }
389
- Fe.prototype.setFromBox = function() {
389
+ ge.prototype.setFromBox = function() {
390
390
  const c = new Q();
391
391
  return function(t, e) {
392
392
  const s = e.min, n = e.max;
@@ -411,7 +411,7 @@ const Ko = function() {
411
411
  T !== 0 ? p = (f * I - d * u) / T : p = 0, m = (f + p * I) / u, r.x = p, r.y = m;
412
412
  };
413
413
  }(), bn = function() {
414
- const c = new ri(), i = new Q(), t = new Q();
414
+ const c = new oi(), i = new Q(), t = new Q();
415
415
  return function(s, n, r, o) {
416
416
  Ko(s, n, c);
417
417
  let a = c.x, l = c.y;
@@ -440,7 +440,7 @@ const Ko = function() {
440
440
  }
441
441
  };
442
442
  }(), Jo = function() {
443
- const c = new Q(), i = new Q(), t = new Dn(), e = new de();
443
+ const c = new Q(), i = new Q(), t = new Dn(), e = new Ee();
444
444
  return function(n, r) {
445
445
  const { radius: o, center: a } = n, { a: l, b: h, c: f } = r;
446
446
  if (e.start = l, e.end = h, e.closestPointToPoint(a, !0, c).distanceTo(a) <= o || (e.start = l, e.end = f, e.closestPointToPoint(a, !0, c).distanceTo(a) <= o) || (e.start = h, e.end = f, e.closestPointToPoint(a, !0, c).distanceTo(a) <= o))
@@ -457,9 +457,9 @@ const Ko = function() {
457
457
  function Zs(c) {
458
458
  return Math.abs(c) < ta;
459
459
  }
460
- class re extends ei {
460
+ class ne extends ei {
461
461
  constructor(...i) {
462
- super(...i), this.isExtendedTriangle = !0, this.satAxes = new Array(4).fill().map(() => new Q()), this.satBounds = new Array(4).fill().map(() => new Fe()), this.points = [this.a, this.b, this.c], this.sphere = new So(), this.plane = new Dn(), this.needsUpdate = !0;
462
+ super(...i), this.isExtendedTriangle = !0, this.satAxes = new Array(4).fill().map(() => new Q()), this.satBounds = new Array(4).fill().map(() => new ge()), this.points = [this.a, this.b, this.c], this.sphere = new So(), this.plane = new Dn(), this.needsUpdate = !0;
463
463
  }
464
464
  intersectsSphere(i) {
465
465
  return Jo(i, this);
@@ -475,8 +475,8 @@ class re extends ei {
475
475
  u.subVectors(e, i), d.setFromPoints(u, s), this.sphere.setFromPoints(this.points), this.plane.setFromNormalAndCoplanarPoint(o, i), this.needsUpdate = !1;
476
476
  }
477
477
  }
478
- re.prototype.closestPointToSegment = function() {
479
- const c = new Q(), i = new Q(), t = new de();
478
+ ne.prototype.closestPointToSegment = function() {
479
+ const c = new Q(), i = new Q(), t = new Ee();
480
480
  return function(s, n = null, r = null) {
481
481
  const { start: o, end: a } = s, l = this.points;
482
482
  let h, f = 1 / 0;
@@ -487,8 +487,8 @@ re.prototype.closestPointToSegment = function() {
487
487
  return this.closestPointToPoint(o, c), h = o.distanceToSquared(c), h < f && (f = h, n && n.copy(c), r && r.copy(o)), this.closestPointToPoint(a, c), h = a.distanceToSquared(c), h < f && (f = h, n && n.copy(c), r && r.copy(a)), Math.sqrt(f);
488
488
  };
489
489
  }();
490
- re.prototype.intersectsTriangle = function() {
491
- const c = new re(), i = new Array(3), t = new Array(3), e = new Fe(), s = new Fe(), n = new Q(), r = new Q(), o = new Q(), a = new Q(), l = new Q(), h = new de(), f = new de(), I = new de(), u = new Q();
490
+ ne.prototype.intersectsTriangle = function() {
491
+ const c = new ne(), i = new Array(3), t = new Array(3), e = new ge(), s = new ge(), n = new Q(), r = new Q(), o = new Q(), a = new Q(), l = new Q(), h = new Ee(), f = new Ee(), I = new Ee(), u = new Q();
492
492
  function d(E, T, p) {
493
493
  const m = E.points;
494
494
  let F = 0, R = -1;
@@ -561,14 +561,14 @@ re.prototype.intersectsTriangle = function() {
561
561
  }
562
562
  };
563
563
  }();
564
- re.prototype.distanceToPoint = function() {
564
+ ne.prototype.distanceToPoint = function() {
565
565
  const c = new Q();
566
566
  return function(t) {
567
567
  return this.closestPointToPoint(t, c), t.distanceTo(c);
568
568
  };
569
569
  }();
570
- re.prototype.distanceToTriangle = function() {
571
- const c = new Q(), i = new Q(), t = ["a", "b", "c"], e = new de(), s = new de();
570
+ ne.prototype.distanceToTriangle = function() {
571
+ const c = new Q(), i = new Q(), t = ["a", "b", "c"], e = new Ee(), s = new Ee();
572
572
  return function(r, o = null, a = null) {
573
573
  const l = o || a ? e : null;
574
574
  if (this.intersectsTriangle(r, l))
@@ -596,7 +596,7 @@ re.prototype.distanceToTriangle = function() {
596
596
  }();
597
597
  class Bt {
598
598
  constructor(i, t, e) {
599
- this.isOrientedBox = !0, this.min = new Q(), this.max = new Q(), this.matrix = new Ee(), this.invMatrix = new Ee(), this.points = new Array(8).fill().map(() => new Q()), this.satAxes = new Array(3).fill().map(() => new Q()), this.satBounds = new Array(3).fill().map(() => new Fe()), this.alignedSatBounds = new Array(3).fill().map(() => new Fe()), this.needsUpdate = !1, i && this.min.copy(i), t && this.max.copy(t), e && this.matrix.copy(e);
599
+ this.isOrientedBox = !0, this.min = new Q(), this.max = new Q(), this.matrix = new pe(), this.invMatrix = new pe(), this.points = new Array(8).fill().map(() => new Q()), this.satAxes = new Array(3).fill().map(() => new Q()), this.satBounds = new Array(3).fill().map(() => new ge()), this.alignedSatBounds = new Array(3).fill().map(() => new ge()), this.needsUpdate = !1, i && this.min.copy(i), t && this.max.copy(t), e && this.matrix.copy(e);
600
600
  }
601
601
  set(i, t, e) {
602
602
  this.min.copy(i), this.max.copy(t), this.matrix.copy(e), this.needsUpdate = !0;
@@ -624,7 +624,7 @@ Bt.prototype.update = /* @__PURE__ */ function() {
624
624
  };
625
625
  }();
626
626
  Bt.prototype.intersectsBox = function() {
627
- const c = new Fe();
627
+ const c = new ge();
628
628
  return function(t) {
629
629
  this.needsUpdate && this.update();
630
630
  const e = t.min, s = t.max, n = this.satBounds, r = this.satAxes, o = this.alignedSatBounds;
@@ -639,7 +639,7 @@ Bt.prototype.intersectsBox = function() {
639
639
  };
640
640
  }();
641
641
  Bt.prototype.intersectsTriangle = function() {
642
- const c = new re(), i = new Array(3), t = new Fe(), e = new Fe(), s = new Q();
642
+ const c = new ne(), i = new Array(3), t = new ge(), e = new ge(), s = new Q();
643
643
  return function(r) {
644
644
  this.needsUpdate && this.update(), r.isExtendedTriangle ? r.needsUpdate && r.update() : (c.copy(r), c.update(), r = c);
645
645
  const o = this.satBounds, a = this.satAxes;
@@ -678,7 +678,7 @@ Bt.prototype.distanceToPoint = function() {
678
678
  };
679
679
  }();
680
680
  Bt.prototype.distanceToBox = function() {
681
- const c = ["x", "y", "z"], i = new Array(12).fill().map(() => new de()), t = new Array(12).fill().map(() => new de()), e = new Q(), s = new Q();
681
+ const c = ["x", "y", "z"], i = new Array(12).fill().map(() => new Ee()), t = new Array(12).fill().map(() => new Ee()), e = new Q(), s = new Q();
682
682
  return function(r, o = 0, a = null, l = null) {
683
683
  if (this.needsUpdate && this.update(), this.intersectsBox(r))
684
684
  return (a || l) && (r.getCenter(s), this.closestPointToPoint(s, e), r.closestPointToPoint(e, s), a && a.copy(e), l && l.copy(s)), 0;
@@ -735,7 +735,7 @@ class vn {
735
735
  }
736
736
  class ea extends vn {
737
737
  constructor() {
738
- super(() => new re());
738
+ super(() => new ne());
739
739
  }
740
740
  }
741
741
  const $t = /* @__PURE__ */ new ea();
@@ -770,21 +770,21 @@ class ia {
770
770
  }
771
771
  }
772
772
  const Ft = new ia();
773
- let Pe, ii;
774
- const Ge = [], ki = /* @__PURE__ */ new vn(() => new oe());
773
+ let _e, ii;
774
+ const Ge = [], Hi = /* @__PURE__ */ new vn(() => new ae());
775
775
  function sa(c, i, t, e, s, n) {
776
- Pe = ki.getPrimitive(), ii = ki.getPrimitive(), Ge.push(Pe, ii), Ft.setBuffer(c._roots[i]);
776
+ _e = Hi.getPrimitive(), ii = Hi.getPrimitive(), Ge.push(_e, ii), Ft.setBuffer(c._roots[i]);
777
777
  const r = dn(0, c.geometry, t, e, s, n);
778
- Ft.clearBuffer(), ki.releasePrimitive(Pe), ki.releasePrimitive(ii), Ge.pop(), Ge.pop();
778
+ Ft.clearBuffer(), Hi.releasePrimitive(_e), Hi.releasePrimitive(ii), Ge.pop(), Ge.pop();
779
779
  const o = Ge.length;
780
- return o > 0 && (ii = Ge[o - 1], Pe = Ge[o - 2]), r;
780
+ return o > 0 && (ii = Ge[o - 1], _e = Ge[o - 2]), r;
781
781
  }
782
782
  function dn(c, i, t, e, s = null, n = 0, r = 0) {
783
783
  const { float32Array: o, uint16Array: a, uint32Array: l } = Ft;
784
784
  let h = c * 2;
785
785
  if (Gt(h, a)) {
786
786
  const I = zt(c, l), u = Zt(h, a);
787
- return Nt(c, o, Pe), e(I, u, !1, r, n + c, Pe);
787
+ return Nt(c, o, _e), e(I, u, !1, r, n + c, _e);
788
788
  } else {
789
789
  let b = function(O) {
790
790
  const { uint16Array: w, uint32Array: g } = Ft;
@@ -801,12 +801,12 @@ function dn(c, i, t, e, s = null, n = 0, r = 0) {
801
801
  };
802
802
  const I = jt(c), u = qt(c, l);
803
803
  let d = I, E = u, T, p, m, F;
804
- if (s && (m = Pe, F = ii, Nt(d, o, m), Nt(E, o, F), T = s(m), p = s(F), p < T)) {
804
+ if (s && (m = _e, F = ii, Nt(d, o, m), Nt(E, o, F), T = s(m), p = s(F), p < T)) {
805
805
  d = u, E = I;
806
806
  const O = T;
807
807
  T = p, p = O, m = F;
808
808
  }
809
- m || (m = Pe, Nt(d, o, m));
809
+ m || (m = _e, Nt(d, o, m));
810
810
  const R = Gt(d * 2, a), S = t(m, R, T, r + 1, n + d);
811
811
  let N;
812
812
  if (S === jn) {
@@ -843,18 +843,18 @@ function dn(c, i, t, e, s = null, n = 0, r = 0) {
843
843
  return !!L;
844
844
  }
845
845
  }
846
- const Ii = /* @__PURE__ */ new Q(), js = /* @__PURE__ */ new Q();
846
+ const di = /* @__PURE__ */ new Q(), js = /* @__PURE__ */ new Q();
847
847
  function na(c, i, t = {}, e = 0, s = 1 / 0) {
848
848
  const n = e * e, r = s * s;
849
849
  let o = 1 / 0, a = null;
850
850
  if (c.shapecast(
851
851
  {
852
- boundsTraverseOrder: (h) => (Ii.copy(i).clamp(h.min, h.max), Ii.distanceToSquared(i)),
852
+ boundsTraverseOrder: (h) => (di.copy(i).clamp(h.min, h.max), di.distanceToSquared(i)),
853
853
  intersectsBounds: (h, f, I) => I < o && I < r,
854
854
  intersectsTriangle: (h, f) => {
855
- h.closestPointToPoint(i, Ii);
856
- const I = i.distanceToSquared(Ii);
857
- return I < o && (js.copy(Ii), o = I, a = f), I < n;
855
+ h.closestPointToPoint(i, di);
856
+ const I = i.distanceToSquared(di);
857
+ return I < o && (js.copy(di), o = I, a = f), I < n;
858
858
  }
859
859
  }
860
860
  ), o === 1 / 0)
@@ -862,7 +862,7 @@ function na(c, i, t = {}, e = 0, s = 1 / 0) {
862
862
  const l = Math.sqrt(o);
863
863
  return t.point ? t.point.copy(js) : t.point = js.clone(), t.distance = l, t.faceIndex = a, t;
864
864
  }
865
- const ze = /* @__PURE__ */ new Q(), ke = /* @__PURE__ */ new Q(), He = /* @__PURE__ */ new Q(), Hi = /* @__PURE__ */ new ri(), Wi = /* @__PURE__ */ new ri(), Xi = /* @__PURE__ */ new ri(), tr = /* @__PURE__ */ new Q(), er = /* @__PURE__ */ new Q(), ir = /* @__PURE__ */ new Q(), $i = /* @__PURE__ */ new Q();
865
+ const ze = /* @__PURE__ */ new Q(), ke = /* @__PURE__ */ new Q(), He = /* @__PURE__ */ new Q(), Wi = /* @__PURE__ */ new oi(), Xi = /* @__PURE__ */ new oi(), $i = /* @__PURE__ */ new oi(), tr = /* @__PURE__ */ new Q(), er = /* @__PURE__ */ new Q(), ir = /* @__PURE__ */ new Q(), Zi = /* @__PURE__ */ new Q();
866
866
  function ra(c, i, t, e, s, n) {
867
867
  let r;
868
868
  return n === Oo ? r = c.intersectTriangle(e, t, i, !0, s) : r = c.intersectTriangle(i, t, e, n !== jr, s), r === null ? null : {
@@ -872,9 +872,9 @@ function ra(c, i, t, e, s, n) {
872
872
  }
873
873
  function oa(c, i, t, e, s, n, r, o, a) {
874
874
  ze.fromBufferAttribute(i, n), ke.fromBufferAttribute(i, r), He.fromBufferAttribute(i, o);
875
- const l = ra(c, ze, ke, He, $i, a);
875
+ const l = ra(c, ze, ke, He, Zi, a);
876
876
  if (l) {
877
- e && (Hi.fromBufferAttribute(e, n), Wi.fromBufferAttribute(e, r), Xi.fromBufferAttribute(e, o), l.uv = ei.getInterpolation($i, ze, ke, He, Hi, Wi, Xi, new ri())), s && (Hi.fromBufferAttribute(s, n), Wi.fromBufferAttribute(s, r), Xi.fromBufferAttribute(s, o), l.uv1 = ei.getInterpolation($i, ze, ke, He, Hi, Wi, Xi, new ri())), t && (tr.fromBufferAttribute(t, n), er.fromBufferAttribute(t, r), ir.fromBufferAttribute(t, o), l.normal = ei.getInterpolation($i, ze, ke, He, tr, er, ir, new Q()), l.normal.dot(c.direction) > 0 && l.normal.multiplyScalar(-1));
877
+ e && (Wi.fromBufferAttribute(e, n), Xi.fromBufferAttribute(e, r), $i.fromBufferAttribute(e, o), l.uv = ei.getInterpolation(Zi, ze, ke, He, Wi, Xi, $i, new oi())), s && (Wi.fromBufferAttribute(s, n), Xi.fromBufferAttribute(s, r), $i.fromBufferAttribute(s, o), l.uv1 = ei.getInterpolation(Zi, ze, ke, He, Wi, Xi, $i, new oi())), t && (tr.fromBufferAttribute(t, n), er.fromBufferAttribute(t, r), ir.fromBufferAttribute(t, o), l.normal = ei.getInterpolation(Zi, ze, ke, He, tr, er, ir, new Q()), l.normal.dot(c.direction) > 0 && l.normal.multiplyScalar(-1));
878
878
  const h = {
879
879
  a: n,
880
880
  b: r,
@@ -959,7 +959,7 @@ function ha(c, i = null) {
959
959
  }
960
960
  }
961
961
  }
962
- const sr = /* @__PURE__ */ new oe();
962
+ const sr = /* @__PURE__ */ new ae();
963
963
  function we(c, i, t, e) {
964
964
  return Nt(c, i, sr), t.intersectBox(sr, e);
965
965
  }
@@ -1033,7 +1033,7 @@ function pn(c, i, t, e) {
1033
1033
  return T && m ? T.distance <= m.distance ? T : m : T || m || null;
1034
1034
  }
1035
1035
  }
1036
- const Zi = /* @__PURE__ */ new oe(), We = /* @__PURE__ */ new re(), Xe = /* @__PURE__ */ new re(), di = /* @__PURE__ */ new Ee(), or = /* @__PURE__ */ new Bt(), ji = /* @__PURE__ */ new Bt();
1036
+ const ji = /* @__PURE__ */ new ae(), We = /* @__PURE__ */ new ne(), Xe = /* @__PURE__ */ new ne(), Ei = /* @__PURE__ */ new pe(), or = /* @__PURE__ */ new Bt(), qi = /* @__PURE__ */ new Bt();
1037
1037
  function Ca(c, i, t, e) {
1038
1038
  Ft.setBuffer(c._roots[i]);
1039
1039
  const s = Cn(0, c, t, e);
@@ -1044,9 +1044,9 @@ function Cn(c, i, t, e, s = null) {
1044
1044
  let a = c * 2;
1045
1045
  if (s === null && (t.boundingBox || t.computeBoundingBox(), or.set(t.boundingBox.min, t.boundingBox.max, e), s = or), Gt(a, r)) {
1046
1046
  const h = i.geometry, f = h.index, I = h.attributes.position, u = t.index, d = t.attributes.position, E = zt(c, o), T = Zt(a, r);
1047
- if (di.copy(e).invert(), t.boundsTree)
1048
- return Nt(c, n, ji), ji.matrix.copy(di), ji.needsUpdate = !0, t.boundsTree.shapecast({
1049
- intersectsBounds: (m) => ji.intersectsBox(m),
1047
+ if (Ei.copy(e).invert(), t.boundsTree)
1048
+ return Nt(c, n, qi), qi.matrix.copy(Ei), qi.needsUpdate = !0, t.boundsTree.shapecast({
1049
+ intersectsBounds: (m) => qi.intersectsBox(m),
1050
1050
  intersectsTriangle: (m) => {
1051
1051
  m.a.applyMatrix4(e), m.b.applyMatrix4(e), m.c.applyMatrix4(e), m.needsUpdate = !0;
1052
1052
  for (let F = E * 3, R = (T + E) * 3; F < R; F += 3)
@@ -1056,31 +1056,31 @@ function Cn(c, i, t, e, s = null) {
1056
1056
  }
1057
1057
  });
1058
1058
  for (let p = E * 3, m = (T + E) * 3; p < m; p += 3) {
1059
- wt(We, p, f, I), We.a.applyMatrix4(di), We.b.applyMatrix4(di), We.c.applyMatrix4(di), We.needsUpdate = !0;
1059
+ wt(We, p, f, I), We.a.applyMatrix4(Ei), We.b.applyMatrix4(Ei), We.c.applyMatrix4(Ei), We.needsUpdate = !0;
1060
1060
  for (let F = 0, R = u.count; F < R; F += 3)
1061
1061
  if (wt(Xe, F, u, d), Xe.needsUpdate = !0, We.intersectsTriangle(Xe))
1062
1062
  return !0;
1063
1063
  }
1064
1064
  } else {
1065
1065
  const h = c + 8, f = o[c + 6];
1066
- return Nt(h, n, Zi), !!(s.intersectsBox(Zi) && Cn(h, i, t, e, s) || (Nt(f, n, Zi), s.intersectsBox(Zi) && Cn(f, i, t, e, s)));
1066
+ return Nt(h, n, ji), !!(s.intersectsBox(ji) && Cn(h, i, t, e, s) || (Nt(f, n, ji), s.intersectsBox(ji) && Cn(f, i, t, e, s)));
1067
1067
  }
1068
1068
  }
1069
- const qi = /* @__PURE__ */ new Ee(), qs = /* @__PURE__ */ new Bt(), Ei = /* @__PURE__ */ new Bt(), Ta = /* @__PURE__ */ new Q(), ma = /* @__PURE__ */ new Q(), Ra = /* @__PURE__ */ new Q(), ga = /* @__PURE__ */ new Q();
1069
+ const Qi = /* @__PURE__ */ new pe(), qs = /* @__PURE__ */ new Bt(), pi = /* @__PURE__ */ new Bt(), Ta = /* @__PURE__ */ new Q(), ma = /* @__PURE__ */ new Q(), Ra = /* @__PURE__ */ new Q(), ga = /* @__PURE__ */ new Q();
1070
1070
  function Aa(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1071
1071
  i.boundingBox || i.computeBoundingBox(), qs.set(i.boundingBox.min, i.boundingBox.max, t), qs.needsUpdate = !0;
1072
1072
  const o = c.geometry, a = o.attributes.position, l = o.index, h = i.attributes.position, f = i.index, I = $t.getPrimitive(), u = $t.getPrimitive();
1073
1073
  let d = Ta, E = ma, T = null, p = null;
1074
1074
  s && (T = Ra, p = ga);
1075
1075
  let m = 1 / 0, F = null, R = null;
1076
- return qi.copy(t).invert(), Ei.matrix.copy(qi), c.shapecast(
1076
+ return Qi.copy(t).invert(), pi.matrix.copy(Qi), c.shapecast(
1077
1077
  {
1078
1078
  boundsTraverseOrder: (S) => qs.distanceToBox(S),
1079
- intersectsBounds: (S, N, y) => y < m && y < r ? (N && (Ei.min.copy(S.min), Ei.max.copy(S.max), Ei.needsUpdate = !0), !0) : !1,
1079
+ intersectsBounds: (S, N, y) => y < m && y < r ? (N && (pi.min.copy(S.min), pi.max.copy(S.max), pi.needsUpdate = !0), !0) : !1,
1080
1080
  intersectsRange: (S, N) => {
1081
1081
  if (i.boundsTree)
1082
1082
  return i.boundsTree.shapecast({
1083
- boundsTraverseOrder: (M) => Ei.distanceToBox(M),
1083
+ boundsTraverseOrder: (M) => pi.distanceToBox(M),
1084
1084
  intersectsBounds: (M, L, b) => b < m && b < r,
1085
1085
  intersectsRange: (M, L) => {
1086
1086
  for (let b = M, G = M + L; b < G; b++) {
@@ -1095,7 +1095,7 @@ function Aa(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1095
1095
  }
1096
1096
  });
1097
1097
  {
1098
- const y = ai(i);
1098
+ const y = ci(i);
1099
1099
  for (let M = 0, L = y; M < L; M++) {
1100
1100
  wt(u, 3 * M, f, h), u.a.applyMatrix4(t), u.b.applyMatrix4(t), u.c.applyMatrix4(t), u.needsUpdate = !0;
1101
1101
  for (let b = S, G = S + N; b < G; b++) {
@@ -1108,7 +1108,7 @@ function Aa(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1108
1108
  }
1109
1109
  }
1110
1110
  }
1111
- ), $t.releasePrimitive(I), $t.releasePrimitive(u), m === 1 / 0 ? null : (e.point ? e.point.copy(E) : e.point = E.clone(), e.distance = m, e.faceIndex = F, s && (s.point ? s.point.copy(p) : s.point = p.clone(), s.point.applyMatrix4(qi), E.applyMatrix4(qi), s.distance = E.sub(s.point).length(), s.faceIndex = R), e);
1111
+ ), $t.releasePrimitive(I), $t.releasePrimitive(u), m === 1 / 0 ? null : (e.point ? e.point.copy(E) : e.point = E.clone(), e.distance = m, e.faceIndex = F, s && (s.point ? s.point.copy(p) : s.point = p.clone(), s.point.applyMatrix4(Qi), E.applyMatrix4(Qi), s.distance = E.sub(s.point).length(), s.faceIndex = R), e);
1112
1112
  }
1113
1113
  function Fa(c, i = null) {
1114
1114
  i && Array.isArray(i) && (i = new Set(i));
@@ -1196,7 +1196,7 @@ function mn(c, i, t, e) {
1196
1196
  return T && m ? T.distance <= m.distance ? T : m : T || m || null;
1197
1197
  }
1198
1198
  }
1199
- const Qi = /* @__PURE__ */ new oe(), $e = /* @__PURE__ */ new re(), Ze = /* @__PURE__ */ new re(), pi = /* @__PURE__ */ new Ee(), lr = /* @__PURE__ */ new Bt(), Ki = /* @__PURE__ */ new Bt();
1199
+ const Ki = /* @__PURE__ */ new ae(), $e = /* @__PURE__ */ new ne(), Ze = /* @__PURE__ */ new ne(), Ci = /* @__PURE__ */ new pe(), lr = /* @__PURE__ */ new Bt(), Ji = /* @__PURE__ */ new Bt();
1200
1200
  function ya(c, i, t, e) {
1201
1201
  Ft.setBuffer(c._roots[i]);
1202
1202
  const s = Rn(0, c, t, e);
@@ -1207,9 +1207,9 @@ function Rn(c, i, t, e, s = null) {
1207
1207
  let a = c * 2;
1208
1208
  if (s === null && (t.boundingBox || t.computeBoundingBox(), lr.set(t.boundingBox.min, t.boundingBox.max, e), s = lr), Gt(a, r)) {
1209
1209
  const h = i.geometry, f = h.index, I = h.attributes.position, u = t.index, d = t.attributes.position, E = zt(c, o), T = Zt(a, r);
1210
- if (pi.copy(e).invert(), t.boundsTree)
1211
- return Nt(c, n, Ki), Ki.matrix.copy(pi), Ki.needsUpdate = !0, t.boundsTree.shapecast({
1212
- intersectsBounds: (m) => Ki.intersectsBox(m),
1210
+ if (Ci.copy(e).invert(), t.boundsTree)
1211
+ return Nt(c, n, Ji), Ji.matrix.copy(Ci), Ji.needsUpdate = !0, t.boundsTree.shapecast({
1212
+ intersectsBounds: (m) => Ji.intersectsBox(m),
1213
1213
  intersectsTriangle: (m) => {
1214
1214
  m.a.applyMatrix4(e), m.b.applyMatrix4(e), m.c.applyMatrix4(e), m.needsUpdate = !0;
1215
1215
  for (let F = E, R = T + E; F < R; F++)
@@ -1220,32 +1220,32 @@ function Rn(c, i, t, e, s = null) {
1220
1220
  });
1221
1221
  for (let p = E, m = T + E; p < m; p++) {
1222
1222
  const F = i.resolveTriangleIndex(p);
1223
- wt($e, 3 * F, f, I), $e.a.applyMatrix4(pi), $e.b.applyMatrix4(pi), $e.c.applyMatrix4(pi), $e.needsUpdate = !0;
1223
+ wt($e, 3 * F, f, I), $e.a.applyMatrix4(Ci), $e.b.applyMatrix4(Ci), $e.c.applyMatrix4(Ci), $e.needsUpdate = !0;
1224
1224
  for (let R = 0, S = u.count; R < S; R += 3)
1225
1225
  if (wt(Ze, R, u, d), Ze.needsUpdate = !0, $e.intersectsTriangle(Ze))
1226
1226
  return !0;
1227
1227
  }
1228
1228
  } else {
1229
1229
  const h = c + 8, f = o[c + 6];
1230
- return Nt(h, n, Qi), !!(s.intersectsBox(Qi) && Rn(h, i, t, e, s) || (Nt(f, n, Qi), s.intersectsBox(Qi) && Rn(f, i, t, e, s)));
1230
+ return Nt(h, n, Ki), !!(s.intersectsBox(Ki) && Rn(h, i, t, e, s) || (Nt(f, n, Ki), s.intersectsBox(Ki) && Rn(f, i, t, e, s)));
1231
1231
  }
1232
1232
  }
1233
- const Ji = /* @__PURE__ */ new Ee(), Qs = /* @__PURE__ */ new Bt(), Ci = /* @__PURE__ */ new Bt(), La = /* @__PURE__ */ new Q(), _a = /* @__PURE__ */ new Q(), Pa = /* @__PURE__ */ new Q(), wa = /* @__PURE__ */ new Q();
1233
+ const ts = /* @__PURE__ */ new pe(), Qs = /* @__PURE__ */ new Bt(), Ti = /* @__PURE__ */ new Bt(), La = /* @__PURE__ */ new Q(), _a = /* @__PURE__ */ new Q(), Pa = /* @__PURE__ */ new Q(), wa = /* @__PURE__ */ new Q();
1234
1234
  function Ma(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1235
1235
  i.boundingBox || i.computeBoundingBox(), Qs.set(i.boundingBox.min, i.boundingBox.max, t), Qs.needsUpdate = !0;
1236
1236
  const o = c.geometry, a = o.attributes.position, l = o.index, h = i.attributes.position, f = i.index, I = $t.getPrimitive(), u = $t.getPrimitive();
1237
1237
  let d = La, E = _a, T = null, p = null;
1238
1238
  s && (T = Pa, p = wa);
1239
1239
  let m = 1 / 0, F = null, R = null;
1240
- return Ji.copy(t).invert(), Ci.matrix.copy(Ji), c.shapecast(
1240
+ return ts.copy(t).invert(), Ti.matrix.copy(ts), c.shapecast(
1241
1241
  {
1242
1242
  boundsTraverseOrder: (S) => Qs.distanceToBox(S),
1243
- intersectsBounds: (S, N, y) => y < m && y < r ? (N && (Ci.min.copy(S.min), Ci.max.copy(S.max), Ci.needsUpdate = !0), !0) : !1,
1243
+ intersectsBounds: (S, N, y) => y < m && y < r ? (N && (Ti.min.copy(S.min), Ti.max.copy(S.max), Ti.needsUpdate = !0), !0) : !1,
1244
1244
  intersectsRange: (S, N) => {
1245
1245
  if (i.boundsTree) {
1246
1246
  const y = i.boundsTree;
1247
1247
  return y.shapecast({
1248
- boundsTraverseOrder: (M) => Ci.distanceToBox(M),
1248
+ boundsTraverseOrder: (M) => Ti.distanceToBox(M),
1249
1249
  intersectsBounds: (M, L, b) => b < m && b < r,
1250
1250
  intersectsRange: (M, L) => {
1251
1251
  for (let b = M, G = M + L; b < G; b++) {
@@ -1262,7 +1262,7 @@ function Ma(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1262
1262
  }
1263
1263
  });
1264
1264
  } else {
1265
- const y = ai(i);
1265
+ const y = ci(i);
1266
1266
  for (let M = 0, L = y; M < L; M++) {
1267
1267
  wt(u, 3 * M, f, h), u.a.applyMatrix4(t), u.b.applyMatrix4(t), u.c.applyMatrix4(t), u.needsUpdate = !0;
1268
1268
  for (let b = S, G = S + N; b < G; b++) {
@@ -1276,12 +1276,12 @@ function Ma(c, i, t, e = {}, s = {}, n = 0, r = 1 / 0) {
1276
1276
  }
1277
1277
  }
1278
1278
  }
1279
- ), $t.releasePrimitive(I), $t.releasePrimitive(u), m === 1 / 0 ? null : (e.point ? e.point.copy(E) : e.point = E.clone(), e.distance = m, e.faceIndex = F, s && (s.point ? s.point.copy(p) : s.point = p.clone(), s.point.applyMatrix4(Ji), E.applyMatrix4(Ji), s.distance = E.sub(s.point).length(), s.faceIndex = R), e);
1279
+ ), $t.releasePrimitive(I), $t.releasePrimitive(u), m === 1 / 0 ? null : (e.point ? e.point.copy(E) : e.point = E.clone(), e.distance = m, e.faceIndex = F, s && (s.point ? s.point.copy(p) : s.point = p.clone(), s.point.applyMatrix4(ts), E.applyMatrix4(ts), s.distance = E.sub(s.point).length(), s.faceIndex = R), e);
1280
1280
  }
1281
1281
  function Da() {
1282
1282
  return typeof SharedArrayBuffer < "u";
1283
1283
  }
1284
- const _i = new Ft.constructor(), Es = new Ft.constructor(), Le = new vn(() => new oe()), je = new oe(), qe = new oe(), Ks = new oe(), Js = new oe();
1284
+ const Pi = new Ft.constructor(), ps = new Ft.constructor(), Ne = new vn(() => new ae()), je = new ae(), qe = new ae(), Ks = new ae(), Js = new ae();
1285
1285
  let tn = !1;
1286
1286
  function ba(c, i, t, e) {
1287
1287
  if (tn)
@@ -1289,12 +1289,12 @@ function ba(c, i, t, e) {
1289
1289
  tn = !0;
1290
1290
  const s = c._roots, n = i._roots;
1291
1291
  let r, o = 0, a = 0;
1292
- const l = new Ee().copy(t).invert();
1292
+ const l = new pe().copy(t).invert();
1293
1293
  for (let h = 0, f = s.length; h < f; h++) {
1294
- _i.setBuffer(s[h]), a = 0;
1295
- const I = Le.getPrimitive();
1296
- Nt(0, _i.float32Array, I), I.applyMatrix4(l);
1297
- for (let u = 0, d = n.length; u < d && (Es.setBuffer(n[h]), r = Jt(
1294
+ Pi.setBuffer(s[h]), a = 0;
1295
+ const I = Ne.getPrimitive();
1296
+ Nt(0, Pi.float32Array, I), I.applyMatrix4(l);
1297
+ for (let u = 0, d = n.length; u < d && (ps.setBuffer(n[h]), r = Kt(
1298
1298
  0,
1299
1299
  0,
1300
1300
  t,
@@ -1305,16 +1305,16 @@ function ba(c, i, t, e) {
1305
1305
  0,
1306
1306
  0,
1307
1307
  I
1308
- ), Es.clearBuffer(), a += n[u].length, !r); u++)
1308
+ ), ps.clearBuffer(), a += n[u].length, !r); u++)
1309
1309
  ;
1310
- if (Le.releasePrimitive(I), _i.clearBuffer(), o += s[h].length, r)
1310
+ if (Ne.releasePrimitive(I), Pi.clearBuffer(), o += s[h].length, r)
1311
1311
  break;
1312
1312
  }
1313
1313
  return tn = !1, r;
1314
1314
  }
1315
- function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1315
+ function Kt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1316
1316
  let f, I;
1317
- h ? (f = Es, I = _i) : (f = _i, I = Es);
1317
+ h ? (f = ps, I = Pi) : (f = Pi, I = ps);
1318
1318
  const u = f.float32Array, d = f.uint32Array, E = f.uint16Array, T = I.float32Array, p = I.uint32Array, m = I.uint16Array, F = c * 2, R = i * 2, S = Gt(F, E), N = Gt(R, m);
1319
1319
  let y = !1;
1320
1320
  if (N && S)
@@ -1338,12 +1338,12 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1338
1338
  r + i
1339
1339
  );
1340
1340
  else if (N) {
1341
- const M = Le.getPrimitive();
1341
+ const M = Ne.getPrimitive();
1342
1342
  Nt(i, T, M), M.applyMatrix4(t);
1343
1343
  const L = jt(c), b = qt(c, d);
1344
1344
  Nt(L, u, je), Nt(b, u, qe);
1345
1345
  const G = M.intersectsBox(je), O = M.intersectsBox(qe);
1346
- y = G && Jt(
1346
+ y = G && Kt(
1347
1347
  i,
1348
1348
  L,
1349
1349
  e,
@@ -1355,7 +1355,7 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1355
1355
  o + 1,
1356
1356
  M,
1357
1357
  !h
1358
- ) || O && Jt(
1358
+ ) || O && Kt(
1359
1359
  i,
1360
1360
  b,
1361
1361
  e,
@@ -1367,13 +1367,13 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1367
1367
  o + 1,
1368
1368
  M,
1369
1369
  !h
1370
- ), Le.releasePrimitive(M);
1370
+ ), Ne.releasePrimitive(M);
1371
1371
  } else {
1372
1372
  const M = jt(i), L = qt(i, p);
1373
1373
  Nt(M, T, Ks), Nt(L, T, Js);
1374
1374
  const b = l.intersectsBox(Ks), G = l.intersectsBox(Js);
1375
1375
  if (b && G)
1376
- y = Jt(
1376
+ y = Kt(
1377
1377
  c,
1378
1378
  M,
1379
1379
  t,
@@ -1385,7 +1385,7 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1385
1385
  a + 1,
1386
1386
  l,
1387
1387
  h
1388
- ) || Jt(
1388
+ ) || Kt(
1389
1389
  c,
1390
1390
  L,
1391
1391
  t,
@@ -1400,7 +1400,7 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1400
1400
  );
1401
1401
  else if (b)
1402
1402
  if (S)
1403
- y = Jt(
1403
+ y = Kt(
1404
1404
  c,
1405
1405
  M,
1406
1406
  t,
@@ -1414,12 +1414,12 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1414
1414
  h
1415
1415
  );
1416
1416
  else {
1417
- const O = Le.getPrimitive();
1417
+ const O = Ne.getPrimitive();
1418
1418
  O.copy(Ks).applyMatrix4(t);
1419
1419
  const w = jt(c), g = qt(c, d);
1420
1420
  Nt(w, u, je), Nt(g, u, qe);
1421
1421
  const v = O.intersectsBox(je), j = O.intersectsBox(qe);
1422
- y = v && Jt(
1422
+ y = v && Kt(
1423
1423
  M,
1424
1424
  w,
1425
1425
  e,
@@ -1431,7 +1431,7 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1431
1431
  o + 1,
1432
1432
  O,
1433
1433
  !h
1434
- ) || j && Jt(
1434
+ ) || j && Kt(
1435
1435
  M,
1436
1436
  g,
1437
1437
  e,
@@ -1443,11 +1443,11 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1443
1443
  o + 1,
1444
1444
  O,
1445
1445
  !h
1446
- ), Le.releasePrimitive(O);
1446
+ ), Ne.releasePrimitive(O);
1447
1447
  }
1448
1448
  else if (G)
1449
1449
  if (S)
1450
- y = Jt(
1450
+ y = Kt(
1451
1451
  c,
1452
1452
  L,
1453
1453
  t,
@@ -1461,12 +1461,12 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1461
1461
  h
1462
1462
  );
1463
1463
  else {
1464
- const O = Le.getPrimitive();
1464
+ const O = Ne.getPrimitive();
1465
1465
  O.copy(Js).applyMatrix4(t);
1466
1466
  const w = jt(c), g = qt(c, d);
1467
1467
  Nt(w, u, je), Nt(g, u, qe);
1468
1468
  const v = O.intersectsBox(je), j = O.intersectsBox(qe);
1469
- y = v && Jt(
1469
+ y = v && Kt(
1470
1470
  L,
1471
1471
  w,
1472
1472
  e,
@@ -1478,7 +1478,7 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1478
1478
  o + 1,
1479
1479
  O,
1480
1480
  !h
1481
- ) || j && Jt(
1481
+ ) || j && Kt(
1482
1482
  L,
1483
1483
  g,
1484
1484
  e,
@@ -1490,12 +1490,12 @@ function Jt(c, i, t, e, s, n = 0, r = 0, o = 0, a = 0, l = null, h = !1) {
1490
1490
  o + 1,
1491
1491
  O,
1492
1492
  !h
1493
- ), Le.releasePrimitive(O);
1493
+ ), Ne.releasePrimitive(O);
1494
1494
  }
1495
1495
  }
1496
1496
  return y;
1497
1497
  }
1498
- const ts = /* @__PURE__ */ new Bt(), hr = /* @__PURE__ */ new oe();
1498
+ const es = /* @__PURE__ */ new Bt(), hr = /* @__PURE__ */ new ae();
1499
1499
  class Un {
1500
1500
  static serialize(i, t = {}) {
1501
1501
  t = {
@@ -1554,7 +1554,7 @@ class Un {
1554
1554
  [Xs]: !1
1555
1555
  }, t), t.useSharedArrayBuffer && !Da())
1556
1556
  throw new Error("MeshBVH: SharedArrayBuffer is not available.");
1557
- this.geometry = i, this._roots = null, this._indirectBuffer = null, t[Xs] || (Qo(this, t), !i.boundingBox && t.setBoundingBox && (i.boundingBox = this.getBoundingBox(new oe())));
1557
+ this.geometry = i, this._roots = null, this._indirectBuffer = null, t[Xs] || (Qo(this, t), !i.boundingBox && t.setBoundingBox && (i.boundingBox = this.getBoundingBox(new ae())));
1558
1558
  const { _indirectBuffer: e } = this;
1559
1559
  this.resolveTriangleIndex = t.indirect ? (s) => e[s] : (s) => s;
1560
1560
  }
@@ -1570,7 +1570,7 @@ class Un {
1570
1570
  const f = s[o + 6], I = n[l + 14];
1571
1571
  i(a, h, new Float32Array(e, o * 4, 6), f, I);
1572
1572
  } else {
1573
- const f = o + us / 4, I = s[o + 6], u = s[o + 7];
1573
+ const f = o + fs / 4, I = s[o + 6], u = s[o + 7];
1574
1574
  i(a, h, new Float32Array(e, o * 4, 6), u) || (r(f, a + 1), r(I, a + 1));
1575
1575
  }
1576
1576
  }
@@ -1666,10 +1666,10 @@ class Un {
1666
1666
  }
1667
1667
  /* Derived Cast Functions */
1668
1668
  intersectsBox(i, t) {
1669
- return ts.set(i.min, i.max, t), ts.needsUpdate = !0, this.shapecast(
1669
+ return es.set(i.min, i.max, t), es.needsUpdate = !0, this.shapecast(
1670
1670
  {
1671
- intersectsBounds: (e) => ts.intersectsBox(e),
1672
- intersectsTriangle: (e) => ts.intersectsTriangle(e)
1671
+ intersectsBounds: (e) => es.intersectsBox(e),
1672
+ intersectsTriangle: (e) => es.intersectsTriangle(e)
1673
1673
  }
1674
1674
  );
1675
1675
  }
@@ -1710,7 +1710,7 @@ class Un {
1710
1710
  function ur(c, i, t) {
1711
1711
  return c === null || (c.point.applyMatrix4(i.matrixWorld), c.distance = c.point.distanceTo(t.ray.origin), c.object = i, c.distance < t.near || c.distance > t.far) ? null : c;
1712
1712
  }
1713
- const en = /* @__PURE__ */ new No(), fr = /* @__PURE__ */ new Ee(), va = rt.prototype.raycast;
1713
+ const en = /* @__PURE__ */ new No(), fr = /* @__PURE__ */ new pe(), va = rt.prototype.raycast;
1714
1714
  function Ua(c, i) {
1715
1715
  if (this.geometry.boundsTree) {
1716
1716
  if (this.material === void 0)
@@ -1765,7 +1765,7 @@ class Z {
1765
1765
  this.handlers.length = 0;
1766
1766
  }
1767
1767
  }
1768
- class fs {
1768
+ class Is {
1769
1769
  constructor() {
1770
1770
  /** Triggers all the callbacks assigned to this event. */
1771
1771
  C(this, "trigger", async (i) => {
@@ -1893,13 +1893,13 @@ class Ya extends Bn {
1893
1893
  );
1894
1894
  }
1895
1895
  }
1896
- const Pi = class Pi extends At {
1896
+ const wi = class wi extends At {
1897
1897
  constructor(t) {
1898
1898
  super(t);
1899
1899
  C(this, "_disposedComponents", /* @__PURE__ */ new Set());
1900
1900
  /** {@link Component.enabled} */
1901
1901
  C(this, "enabled", !0);
1902
- t.add(Pi.uuid, this);
1902
+ t.add(wi.uuid, this);
1903
1903
  }
1904
1904
  // TODO: Remove this?
1905
1905
  /**
@@ -1937,7 +1937,7 @@ const Pi = class Pi extends At {
1937
1937
  }
1938
1938
  disposeGeometryAndMaterials(t, e) {
1939
1939
  const s = t;
1940
- s.geometry && this.disposeGeometry(s.geometry), e && s.material && Pi.disposeMaterial(s), s.material = [], s.geometry = null;
1940
+ s.geometry && this.disposeGeometry(s.geometry), e && s.material && wi.disposeMaterial(s), s.material = [], s.geometry = null;
1941
1941
  }
1942
1942
  disposeChildren(t) {
1943
1943
  for (const e of t.children)
@@ -1956,8 +1956,8 @@ const Pi = class Pi extends At {
1956
1956
  * A unique identifier for the component.
1957
1957
  * This UUID is used to register the component within the Components system.
1958
1958
  */
1959
- C(Pi, "uuid", "76e9cd8e-ad8f-4753-9ef6-cbc60f7247fe");
1960
- let Me = Pi;
1959
+ C(wi, "uuid", "76e9cd8e-ad8f-4753-9ef6-cbc60f7247fe");
1960
+ let Me = wi;
1961
1961
  class Ga extends Bn {
1962
1962
  constructor(t) {
1963
1963
  super(t);
@@ -1986,7 +1986,7 @@ class Ga extends Bn {
1986
1986
  this.ambientLights.clear();
1987
1987
  }
1988
1988
  }
1989
- class Re extends Set {
1989
+ class Pe extends Set {
1990
1990
  /**
1991
1991
  * Constructs a new instance of the DataSet class.
1992
1992
  *
@@ -2051,7 +2051,7 @@ class Re extends Set {
2051
2051
  this.clear(), this.onItemAdded.reset(), this.onItemDeleted.reset(), this.onCleared.reset();
2052
2052
  }
2053
2053
  }
2054
- class pe extends Map {
2054
+ class re extends Map {
2055
2055
  /**
2056
2056
  * Constructs a new DataMap instance.
2057
2057
  *
@@ -2126,7 +2126,7 @@ class pe extends Map {
2126
2126
  }
2127
2127
  class ph extends At {
2128
2128
  }
2129
- const Is = 0, za = 1, ka = new Q(), Ir = new de(), sn = new Dn(), dr = new Q(), es = new ei();
2129
+ const ds = 0, za = 1, ka = new Q(), Ir = new Ee(), sn = new Dn(), dr = new Q(), is = new ei();
2130
2130
  class Ha {
2131
2131
  constructor() {
2132
2132
  this.tolerance = -1, this.faces = [], this.newFaces = [], this.assigned = new Er(), this.unassigned = new Er(), this.vertices = [];
@@ -2222,7 +2222,7 @@ class Ha {
2222
2222
  let s = this.tolerance, n = null;
2223
2223
  for (let r = 0; r < i.length; r++) {
2224
2224
  const o = i[r];
2225
- if (o.mark === Is) {
2225
+ if (o.mark === ds) {
2226
2226
  const a = o.distanceToPoint(t.point);
2227
2227
  if (a > s && (s = a, n = o), s > 1e3 * this.tolerance)
2228
2228
  break;
@@ -2279,10 +2279,10 @@ class Ha {
2279
2279
  const f = [];
2280
2280
  if (sn.distanceToPoint(h.point) < 0) {
2281
2281
  f.push(
2282
- ee.create(o, a, l),
2283
- ee.create(h, a, o),
2284
- ee.create(h, l, a),
2285
- ee.create(h, o, l)
2282
+ te.create(o, a, l),
2283
+ te.create(h, a, o),
2284
+ te.create(h, l, a),
2285
+ te.create(h, o, l)
2286
2286
  );
2287
2287
  for (let I = 0; I < 3; I++) {
2288
2288
  const u = (I + 1) % 3;
@@ -2290,10 +2290,10 @@ class Ha {
2290
2290
  }
2291
2291
  } else {
2292
2292
  f.push(
2293
- ee.create(o, l, a),
2294
- ee.create(h, o, a),
2295
- ee.create(h, a, l),
2296
- ee.create(h, l, o)
2293
+ te.create(o, l, a),
2294
+ te.create(h, o, a),
2295
+ te.create(h, a, l),
2296
+ te.create(h, l, o)
2297
2297
  );
2298
2298
  for (let I = 0; I < 3; I++) {
2299
2299
  const u = (I + 1) % 3;
@@ -2321,7 +2321,7 @@ class Ha {
2321
2321
  const i = [];
2322
2322
  for (let t = 0; t < this.faces.length; t++) {
2323
2323
  const e = this.faces[t];
2324
- e.mark === Is && i.push(e);
2324
+ e.mark === ds && i.push(e);
2325
2325
  }
2326
2326
  return this.faces = i, this;
2327
2327
  }
@@ -2347,13 +2347,13 @@ class Ha {
2347
2347
  t === null ? n = t = e.getEdge(0) : n = t.next;
2348
2348
  do {
2349
2349
  const r = n.twin, o = r.face;
2350
- o.mark === Is && (o.distanceToPoint(i) > this.tolerance ? this.computeHorizon(i, r, o, s) : s.push(n)), n = n.next;
2350
+ o.mark === ds && (o.distanceToPoint(i) > this.tolerance ? this.computeHorizon(i, r, o, s) : s.push(n)), n = n.next;
2351
2351
  } while (n !== t);
2352
2352
  return this;
2353
2353
  }
2354
2354
  // Creates a face with the vertices 'eyeVertex.point', 'horizonEdge.tail' and 'horizonEdge.head' in CCW order
2355
2355
  addAdjoiningFace(i, t) {
2356
- const e = ee.create(i, t.tail(), t.head());
2356
+ const e = te.create(i, t.tail(), t.head());
2357
2357
  return this.faces.push(e), e.getEdge(-1).setTwin(t.twin), e.getEdge(0);
2358
2358
  }
2359
2359
  // Adds 'horizon.length' faces to the hull, each face will be linked with the
@@ -2382,12 +2382,12 @@ class Ha {
2382
2382
  return this.reindexFaces(), this.cleanup(), this;
2383
2383
  }
2384
2384
  }
2385
- class ee {
2385
+ class te {
2386
2386
  constructor() {
2387
- this.normal = new Q(), this.midpoint = new Q(), this.area = 0, this.constant = 0, this.outside = null, this.mark = Is, this.edge = null;
2387
+ this.normal = new Q(), this.midpoint = new Q(), this.area = 0, this.constant = 0, this.outside = null, this.mark = ds, this.edge = null;
2388
2388
  }
2389
2389
  static create(i, t, e) {
2390
- const s = new ee(), n = new nn(i, s), r = new nn(t, s), o = new nn(e, s);
2390
+ const s = new te(), n = new nn(i, s), r = new nn(t, s), o = new nn(e, s);
2391
2391
  return n.next = o.prev = r, r.next = n.prev = o, o.next = r.prev = n, s.edge = n, s.compute();
2392
2392
  }
2393
2393
  getEdge(i) {
@@ -2400,7 +2400,7 @@ class ee {
2400
2400
  }
2401
2401
  compute() {
2402
2402
  const i = this.edge.tail(), t = this.edge.head(), e = this.edge.next.head();
2403
- return es.set(i.point, t.point, e.point), es.getNormal(this.normal), es.getMidpoint(this.midpoint), this.area = es.getArea(), this.constant = this.normal.dot(this.midpoint), this;
2403
+ return is.set(i.point, t.point, e.point), is.getNormal(this.normal), is.getMidpoint(this.midpoint), this.area = is.getArea(), this.constant = this.normal.dot(this.midpoint), this;
2404
2404
  }
2405
2405
  distanceToPoint(i) {
2406
2406
  return this.normal.dot(i) - this.constant;
@@ -2477,7 +2477,7 @@ class Er {
2477
2477
  }
2478
2478
  }
2479
2479
  const gn = [2, 2, 1], An = [1, 0, 0];
2480
- function ue(c, i) {
2480
+ function fe(c, i) {
2481
2481
  return c * 3 + i;
2482
2482
  }
2483
2483
  function Xa(c) {
@@ -2491,7 +2491,7 @@ function $a(c) {
2491
2491
  const i = c.elements;
2492
2492
  let t = 0;
2493
2493
  for (let e = 0; e < 3; e++) {
2494
- const s = i[ue(gn[e], An[e])];
2494
+ const s = i[fe(gn[e], An[e])];
2495
2495
  t += 2 * s * s;
2496
2496
  }
2497
2497
  return Math.sqrt(t);
@@ -2500,17 +2500,17 @@ function Za(c, i) {
2500
2500
  let t = 0, e = 1;
2501
2501
  const s = c.elements;
2502
2502
  for (let l = 0; l < 3; l++) {
2503
- const h = Math.abs(s[ue(gn[l], An[l])]);
2503
+ const h = Math.abs(s[fe(gn[l], An[l])]);
2504
2504
  h > t && (t = h, e = l);
2505
2505
  }
2506
2506
  let n = 1, r = 0;
2507
2507
  const o = An[e], a = gn[e];
2508
- if (Math.abs(s[ue(a, o)]) > Number.EPSILON) {
2509
- const l = s[ue(a, a)], h = s[ue(o, o)], f = s[ue(a, o)], I = (l - h) / 2 / f;
2508
+ if (Math.abs(s[fe(a, o)]) > Number.EPSILON) {
2509
+ const l = s[fe(a, a)], h = s[fe(o, o)], f = s[fe(a, o)], I = (l - h) / 2 / f;
2510
2510
  let u;
2511
2511
  I < 0 ? u = -1 / (-I + Math.sqrt(1 + I * I)) : u = 1 / (I + Math.sqrt(1 + I * I)), n = 1 / Math.sqrt(1 + u * u), r = u * n;
2512
2512
  }
2513
- return i.identity(), i.elements[ue(o, o)] = n, i.elements[ue(a, a)] = n, i.elements[ue(a, o)] = r, i.elements[ue(o, a)] = -r, i;
2513
+ return i.identity(), i.elements[fe(o, o)] = n, i.elements[fe(a, a)] = n, i.elements[fe(a, o)] = r, i.elements[fe(o, a)] = -r, i;
2514
2514
  }
2515
2515
  function ja(c, i) {
2516
2516
  let t = 0, e = 0;
@@ -2867,7 +2867,7 @@ C(_t, "_lut", [
2867
2867
  "fe",
2868
2868
  "ff"
2869
2869
  ]);
2870
- let Ce = _t;
2870
+ let oe = _t;
2871
2871
  class Th extends At {
2872
2872
  constructor(t, e) {
2873
2873
  super(t);
@@ -2977,7 +2977,7 @@ class Th extends At {
2977
2977
  get(t) {
2978
2978
  if (!this.enabled)
2979
2979
  return this._pickedPoint;
2980
- const n = this.components.get(oi).get(t).castRay();
2980
+ const n = this.components.get(ai).get(t).castRay();
2981
2981
  if (!n)
2982
2982
  return this._pickedPoint !== null && (this.onVertexLost.trigger(), this._pickedPoint = null), this._pickedPoint;
2983
2983
  const r = this.getClosestVertex(n);
@@ -3018,7 +3018,7 @@ class Th extends At {
3018
3018
  );
3019
3019
  }
3020
3020
  }
3021
- const As = class As {
3021
+ const Fs = class Fs {
3022
3022
  constructor() {
3023
3023
  /** {@link Disposable.onDisposed} */
3024
3024
  C(this, "onDisposed", new Z());
@@ -3060,7 +3060,7 @@ const As = class As {
3060
3060
  e.enabled && e.isUpdateable() && e.update(i);
3061
3061
  requestAnimationFrame(this.update);
3062
3062
  });
3063
- this._clock = new D.Clock(), As.setupBVH();
3063
+ this._clock = new D.Clock(), Fs.setupBVH();
3064
3064
  }
3065
3065
  /**
3066
3066
  * Adds a component to the list of components.
@@ -3078,7 +3078,7 @@ const As = class As {
3078
3078
  throw new Error(
3079
3079
  "You're trying to add a component that already exists in the components instance. Use Components.get() instead."
3080
3080
  );
3081
- Ce.validate(i), this.list.set(i, t);
3081
+ oe.validate(i), this.list.set(i, t);
3082
3082
  }
3083
3083
  /**
3084
3084
  * Retrieves a component instance by its constructor function.
@@ -3137,8 +3137,8 @@ const As = class As {
3137
3137
  /**
3138
3138
  * The version of the @thatopen/components library.
3139
3139
  */
3140
- C(As, "release", "2.3.0");
3141
- let ps = As;
3140
+ C(Fs, "release", "2.3.1");
3141
+ let Cs = Fs;
3142
3142
  class Qa extends xn {
3143
3143
  constructor() {
3144
3144
  super(...arguments);
@@ -3164,7 +3164,7 @@ class Qa extends xn {
3164
3164
  /**
3165
3165
  * A unique identifier for the world. Is not meant to be changed at any moment.
3166
3166
  */
3167
- C(this, "uuid", Ce.create());
3167
+ C(this, "uuid", oe.create());
3168
3168
  /**
3169
3169
  * An optional name for the world.
3170
3170
  */
@@ -3236,14 +3236,15 @@ class Qa extends xn {
3236
3236
  s.destroy(n);
3237
3237
  this.meshes.clear();
3238
3238
  }
3239
- this._scene = null, this._camera = null, this._renderer = null, this.components.get(Cs).list.delete(this.uuid), this.onDisposed.trigger(), this.onDisposed.reset();
3239
+ this._scene = null, this._camera = null, this._renderer = null, this.components.get(Ts).list.delete(this.uuid), this.onDisposed.trigger(), this.onDisposed.reset();
3240
3240
  }
3241
3241
  }
3242
3242
  class Ye {
3243
- constructor(i, t, e) {
3243
+ constructor(i, t, e, s) {
3244
3244
  C(this, "_component");
3245
3245
  C(this, "name");
3246
- this._component = i, this.name = e, t.get(Kt).list.add(this);
3246
+ C(this, "uuid");
3247
+ this._component = i, this.name = e, this.uuid = s ?? oe.create(), t.get(Ve).list.set(this.uuid, this);
3247
3248
  }
3248
3249
  get controls() {
3249
3250
  const i = {};
@@ -3318,24 +3319,24 @@ class Ye {
3318
3319
  throw new Error("Invalid entry!");
3319
3320
  }
3320
3321
  }
3321
- const Fs = class Fs extends At {
3322
+ const Ss = class Ss extends At {
3322
3323
  constructor(t) {
3323
3324
  super(t);
3324
3325
  /**
3325
3326
  * The list of all configurations of this app.
3326
3327
  */
3327
- C(this, "list", new Re());
3328
+ C(this, "list", new re());
3328
3329
  /** {@link Component.enabled} */
3329
3330
  C(this, "enabled", !0);
3330
- t.add(Fs.uuid, this);
3331
+ t.add(Ss.uuid, this);
3331
3332
  }
3332
3333
  };
3333
3334
  /**
3334
3335
  * A unique identifier for the component.
3335
3336
  * This UUID is used to register the component within the Components system.
3336
3337
  */
3337
- C(Fs, "uuid", "b8c764e0-6b24-4e77-9a32-35fa728ee5b4");
3338
- let Kt = Fs;
3338
+ C(Ss, "uuid", "b8c764e0-6b24-4e77-9a32-35fa728ee5b4");
3339
+ let Ve = Ss;
3339
3340
  class Ka {
3340
3341
  constructor(i, t) {
3341
3342
  C(this, "_list");
@@ -3465,7 +3466,7 @@ class ec extends Ga {
3465
3466
  intensity: 1
3466
3467
  }
3467
3468
  });
3468
- this.three = new D.Scene(), this.three.background = new D.Color(2107698), this.components.get(Kt).list.add(this.config);
3469
+ this.three = new D.Scene(), this.three.background = new D.Color(2107698);
3469
3470
  }
3470
3471
  /** {@link Configurable.setup} */
3471
3472
  setup(t) {
@@ -3481,7 +3482,7 @@ class ec extends Ga {
3481
3482
  this.three.add(a, f), this.directionalLights.set(a.uuid, a), this.ambientLights.set(f.uuid, f), this.isSetup = !0, this.onSetup.trigger();
3482
3483
  }
3483
3484
  dispose() {
3484
- super.dispose(), this.components.get(Kt).list.delete(this.config);
3485
+ super.dispose(), this.components.get(Ve).list.delete(this.config.uuid);
3485
3486
  }
3486
3487
  }
3487
3488
  class mh extends Ya {
@@ -3614,11 +3615,11 @@ const ht = {
3614
3615
  function be(c) {
3615
3616
  return c.isPerspectiveCamera;
3616
3617
  }
3617
- function ye(c) {
3618
+ function Oe(c) {
3618
3619
  return c.isOrthographicCamera;
3619
3620
  }
3620
- const Ke = Math.PI * 2, Cr = Math.PI / 2, eo = 1e-5, Ti = Math.PI / 180;
3621
- function te(c, i, t) {
3621
+ const Ke = Math.PI * 2, Cr = Math.PI / 2, eo = 1e-5, mi = Math.PI / 180;
3622
+ function Jt(c, i, t) {
3622
3623
  return Math.max(i, Math.min(t, c));
3623
3624
  }
3624
3625
  function gt(c, i = eo) {
@@ -3630,18 +3631,18 @@ function pt(c, i, t = eo) {
3630
3631
  function Tr(c, i) {
3631
3632
  return Math.round(c / i) * i;
3632
3633
  }
3633
- function mi(c) {
3634
+ function Ri(c) {
3634
3635
  return isFinite(c) ? c : c < 0 ? -Number.MAX_VALUE : Number.MAX_VALUE;
3635
3636
  }
3636
- function Ri(c) {
3637
+ function gi(c) {
3637
3638
  return Math.abs(c) < Number.MAX_VALUE ? c : c * (1 / 0);
3638
3639
  }
3639
- function is(c, i, t, e, s = 1 / 0, n) {
3640
+ function ss(c, i, t, e, s = 1 / 0, n) {
3640
3641
  e = Math.max(1e-4, e);
3641
3642
  const r = 2 / e, o = r * n, a = 1 / (1 + o + 0.48 * o * o + 0.235 * o * o * o);
3642
3643
  let l = c - i;
3643
3644
  const h = i, f = s * e;
3644
- l = te(l, -f, f), i = c - l;
3645
+ l = Jt(l, -f, f), i = c - l;
3645
3646
  const I = (t.value + r * l) * n;
3646
3647
  t.value = (t.value - r * I) * a;
3647
3648
  let u = i + (l + I) * a;
@@ -3668,7 +3669,7 @@ function rn(c, i) {
3668
3669
  }), i.x /= c.length, i.y /= c.length;
3669
3670
  }
3670
3671
  function on(c, i) {
3671
- return ye(c) ? (console.warn(`${i} is not supported in OrthographicCamera`), !0) : !1;
3672
+ return Oe(c) ? (console.warn(`${i} is not supported in OrthographicCamera`), !0) : !1;
3672
3673
  }
3673
3674
  class ic {
3674
3675
  constructor() {
@@ -3734,8 +3735,8 @@ class ic {
3734
3735
  }
3735
3736
  }
3736
3737
  }
3737
- const sc = "2.7.3", ss = 1 / 8, io = typeof window < "u", nc = io && /Mac/.test(navigator.platform), rc = !(io && "PointerEvent" in window);
3738
- let lt, Rr, ns, an, Yt, ut, Et, Je, gi, ce, le, ve, gr, Ar, Xt, Ai, ti, Fr, cn, Sr, ln, hn, rs;
3738
+ const sc = "2.7.3", ns = 1 / 8, io = typeof window < "u", nc = io && /Mac/.test(navigator.platform), rc = !(io && "PointerEvent" in window);
3739
+ let lt, Rr, rs, an, Yt, ut, Et, Je, Ai, le, he, ve, gr, Ar, Xt, Fi, ti, Fr, cn, Sr, ln, hn, os;
3739
3740
  class vt extends ic {
3740
3741
  /**
3741
3742
  * Injects THREE as the dependency. You can then proceed to use CameraControls.
@@ -3778,7 +3779,7 @@ class vt extends ic {
3778
3779
  * @category Statics
3779
3780
  */
3780
3781
  static install(i) {
3781
- lt = i.THREE, Rr = Object.freeze(new lt.Vector3(0, 0, 0)), ns = Object.freeze(new lt.Vector3(0, 1, 0)), an = Object.freeze(new lt.Vector3(0, 0, 1)), Yt = new lt.Vector2(), ut = new lt.Vector3(), Et = new lt.Vector3(), Je = new lt.Vector3(), gi = new lt.Vector3(), ce = new lt.Vector3(), le = new lt.Vector3(), ve = new lt.Vector3(), gr = new lt.Vector3(), Ar = new lt.Vector3(), Xt = new lt.Spherical(), Ai = new lt.Spherical(), ti = new lt.Box3(), Fr = new lt.Box3(), cn = new lt.Sphere(), Sr = new lt.Quaternion(), ln = new lt.Quaternion(), hn = new lt.Matrix4(), rs = new lt.Raycaster();
3782
+ lt = i.THREE, Rr = Object.freeze(new lt.Vector3(0, 0, 0)), rs = Object.freeze(new lt.Vector3(0, 1, 0)), an = Object.freeze(new lt.Vector3(0, 0, 1)), Yt = new lt.Vector2(), ut = new lt.Vector3(), Et = new lt.Vector3(), Je = new lt.Vector3(), Ai = new lt.Vector3(), le = new lt.Vector3(), he = new lt.Vector3(), ve = new lt.Vector3(), gr = new lt.Vector3(), Ar = new lt.Vector3(), Xt = new lt.Spherical(), Fi = new lt.Spherical(), ti = new lt.Box3(), Fr = new lt.Box3(), cn = new lt.Sphere(), Sr = new lt.Quaternion(), ln = new lt.Quaternion(), hn = new lt.Matrix4(), os = new lt.Raycaster();
3782
3783
  }
3783
3784
  /**
3784
3785
  * list all ACTIONs
@@ -3809,9 +3810,9 @@ class vt extends ic {
3809
3810
  }, this._enabled = !0, this._state = H.NONE, this._viewport = null, this._changedDolly = 0, this._changedZoom = 0, this._hasRested = !0, this._boundaryEnclosesCamera = !1, this._needsUpdate = !0, this._updatedLastTime = !1, this._elementRect = new DOMRect(), this._isDragging = !1, this._dragNeedsUpdate = !0, this._activePointers = [], this._lockedPointer = null, this._interactiveArea = new DOMRect(0, 0, 1, 1), this._isUserControllingRotate = !1, this._isUserControllingDolly = !1, this._isUserControllingTruck = !1, this._isUserControllingOffset = !1, this._isUserControllingZoom = !1, this._lastDollyDirection = Qe.NONE, this._thetaVelocity = { value: 0 }, this._phiVelocity = { value: 0 }, this._radiusVelocity = { value: 0 }, this._targetVelocity = new lt.Vector3(), this._focalOffsetVelocity = new lt.Vector3(), this._zoomVelocity = { value: 0 }, this._truckInternal = (R, S, N) => {
3810
3811
  let y, M;
3811
3812
  if (be(this._camera)) {
3812
- const L = ut.copy(this._camera.position).sub(this._target), b = this._camera.getEffectiveFOV() * Ti, G = L.length() * Math.tan(b * 0.5);
3813
+ const L = ut.copy(this._camera.position).sub(this._target), b = this._camera.getEffectiveFOV() * mi, G = L.length() * Math.tan(b * 0.5);
3813
3814
  y = this.truckSpeed * R * G / this._elementRect.height, M = this.truckSpeed * S * G / this._elementRect.height;
3814
- } else if (ye(this._camera)) {
3815
+ } else if (Oe(this._camera)) {
3815
3816
  const L = this._camera;
3816
3817
  y = R * (L.right - L.left) / L.zoom / this._elementRect.width, M = S * (L.top - L.bottom) / L.zoom / this._elementRect.height;
3817
3818
  } else
@@ -3821,12 +3822,12 @@ class vt extends ic {
3821
3822
  const N = Ke * this.azimuthRotateSpeed * R / this._elementRect.height, y = Ke * this.polarRotateSpeed * S / this._elementRect.height;
3822
3823
  this.rotate(N, y, !0);
3823
3824
  }, this._dollyInternal = (R, S, N) => {
3824
- const y = Math.pow(0.95, -R * this.dollySpeed), M = this._sphericalEnd.radius, L = this._sphericalEnd.radius * y, b = te(L, this.minDistance, this.maxDistance), G = b - L;
3825
+ const y = Math.pow(0.95, -R * this.dollySpeed), M = this._sphericalEnd.radius, L = this._sphericalEnd.radius * y, b = Jt(L, this.minDistance, this.maxDistance), G = b - L;
3825
3826
  this.infinityDolly && this.dollyToCursor ? this._dollyToNoClamp(L, !0) : this.infinityDolly && !this.dollyToCursor ? (this.dollyInFixed(G, !0), this._dollyToNoClamp(b, !0)) : this._dollyToNoClamp(b, !0), this.dollyToCursor && (this._changedDolly += (this.infinityDolly ? L : b) - M, this._dollyControlCoord.set(S, N)), this._lastDollyDirection = Math.sign(-R);
3826
3827
  }, this._zoomInternal = (R, S, N) => {
3827
3828
  const y = Math.pow(0.95, R * this.dollySpeed), M = this._zoom, L = this._zoom * y;
3828
3829
  this.zoomTo(L, !0), this.dollyToCursor && (this._changedZoom += L - M, this._dollyControlCoord.set(S, N));
3829
- }, typeof lt > "u" && console.error("camera-controls: `THREE` is undefined. You must first run `CameraControls.install( { THREE: THREE } )`. Check the docs for further information."), this._camera = i, this._yAxisUpSpace = new lt.Quaternion().setFromUnitVectors(this._camera.up, ns), this._yAxisUpSpaceInverse = this._yAxisUpSpace.clone().invert(), this._state = H.NONE, this._target = new lt.Vector3(), this._targetEnd = this._target.clone(), this._focalOffset = new lt.Vector3(), this._focalOffsetEnd = this._focalOffset.clone(), this._spherical = new lt.Spherical().setFromVector3(ut.copy(this._camera.position).applyQuaternion(this._yAxisUpSpace)), this._sphericalEnd = this._spherical.clone(), this._lastDistance = this._spherical.radius, this._zoom = this._camera.zoom, this._zoomEnd = this._zoom, this._lastZoom = this._zoom, this._nearPlaneCorners = [
3830
+ }, typeof lt > "u" && console.error("camera-controls: `THREE` is undefined. You must first run `CameraControls.install( { THREE: THREE } )`. Check the docs for further information."), this._camera = i, this._yAxisUpSpace = new lt.Quaternion().setFromUnitVectors(this._camera.up, rs), this._yAxisUpSpaceInverse = this._yAxisUpSpace.clone().invert(), this._state = H.NONE, this._target = new lt.Vector3(), this._targetEnd = this._target.clone(), this._focalOffset = new lt.Vector3(), this._focalOffsetEnd = this._focalOffset.clone(), this._spherical = new lt.Spherical().setFromVector3(ut.copy(this._camera.position).applyQuaternion(this._yAxisUpSpace)), this._sphericalEnd = this._spherical.clone(), this._lastDistance = this._spherical.radius, this._zoom = this._camera.zoom, this._zoomEnd = this._zoom, this._lastZoom = this._zoom, this._nearPlaneCorners = [
3830
3831
  new lt.Vector3(),
3831
3832
  new lt.Vector3(),
3832
3833
  new lt.Vector3(),
@@ -3835,10 +3836,10 @@ class vt extends ic {
3835
3836
  left: H.ROTATE,
3836
3837
  middle: H.DOLLY,
3837
3838
  right: H.TRUCK,
3838
- wheel: be(this._camera) ? H.DOLLY : ye(this._camera) ? H.ZOOM : H.NONE
3839
+ wheel: be(this._camera) ? H.DOLLY : Oe(this._camera) ? H.ZOOM : H.NONE
3839
3840
  }, this.touches = {
3840
3841
  one: H.TOUCH_ROTATE,
3841
- two: be(this._camera) ? H.TOUCH_DOLLY_TRUCK : ye(this._camera) ? H.TOUCH_ZOOM_TRUCK : H.NONE,
3842
+ two: be(this._camera) ? H.TOUCH_DOLLY_TRUCK : Oe(this._camera) ? H.TOUCH_ZOOM_TRUCK : H.NONE,
3842
3843
  three: H.TOUCH_TRUCK
3843
3844
  };
3844
3845
  const e = new lt.Vector2(), s = new lt.Vector2(), n = new lt.Vector2(), r = (R) => {
@@ -4015,13 +4016,13 @@ class vt extends ic {
4015
4016
  const S = this._domElement && document.pointerLockElement === this._domElement ? this._lockedPointer || this._activePointers[0] : null, N = S ? -S.deltaX : s.x - Yt.x, y = S ? -S.deltaY : s.y - Yt.y;
4016
4017
  if (s.copy(Yt), ((this._state & H.ROTATE) === H.ROTATE || (this._state & H.TOUCH_ROTATE) === H.TOUCH_ROTATE || (this._state & H.TOUCH_DOLLY_ROTATE) === H.TOUCH_DOLLY_ROTATE || (this._state & H.TOUCH_ZOOM_ROTATE) === H.TOUCH_ZOOM_ROTATE) && (this._rotateInternal(N, y), this._isUserControllingRotate = !0), (this._state & H.DOLLY) === H.DOLLY || (this._state & H.ZOOM) === H.ZOOM) {
4017
4018
  const M = this.dollyToCursor ? (e.x - this._elementRect.x) / this._elementRect.width * 2 - 1 : 0, L = this.dollyToCursor ? (e.y - this._elementRect.y) / this._elementRect.height * -2 + 1 : 0, b = this.dollyDragInverted ? -1 : 1;
4018
- (this._state & H.DOLLY) === H.DOLLY ? (this._dollyInternal(b * y * ss, M, L), this._isUserControllingDolly = !0) : (this._zoomInternal(b * y * ss, M, L), this._isUserControllingZoom = !0);
4019
+ (this._state & H.DOLLY) === H.DOLLY ? (this._dollyInternal(b * y * ns, M, L), this._isUserControllingDolly = !0) : (this._zoomInternal(b * y * ns, M, L), this._isUserControllingZoom = !0);
4019
4020
  }
4020
4021
  if ((this._state & H.TOUCH_DOLLY) === H.TOUCH_DOLLY || (this._state & H.TOUCH_ZOOM) === H.TOUCH_ZOOM || (this._state & H.TOUCH_DOLLY_TRUCK) === H.TOUCH_DOLLY_TRUCK || (this._state & H.TOUCH_ZOOM_TRUCK) === H.TOUCH_ZOOM_TRUCK || (this._state & H.TOUCH_DOLLY_OFFSET) === H.TOUCH_DOLLY_OFFSET || (this._state & H.TOUCH_ZOOM_OFFSET) === H.TOUCH_ZOOM_OFFSET || (this._state & H.TOUCH_DOLLY_ROTATE) === H.TOUCH_DOLLY_ROTATE || (this._state & H.TOUCH_ZOOM_ROTATE) === H.TOUCH_ZOOM_ROTATE) {
4021
4022
  const M = Yt.x - this._activePointers[1].clientX, L = Yt.y - this._activePointers[1].clientY, b = Math.sqrt(M * M + L * L), G = n.y - b;
4022
4023
  n.set(0, b);
4023
4024
  const O = this.dollyToCursor ? (s.x - this._elementRect.x) / this._elementRect.width * 2 - 1 : 0, w = this.dollyToCursor ? (s.y - this._elementRect.y) / this._elementRect.height * -2 + 1 : 0;
4024
- (this._state & H.TOUCH_DOLLY) === H.TOUCH_DOLLY || (this._state & H.TOUCH_DOLLY_ROTATE) === H.TOUCH_DOLLY_ROTATE || (this._state & H.TOUCH_DOLLY_TRUCK) === H.TOUCH_DOLLY_TRUCK || (this._state & H.TOUCH_DOLLY_OFFSET) === H.TOUCH_DOLLY_OFFSET ? (this._dollyInternal(G * ss, O, w), this._isUserControllingDolly = !0) : (this._zoomInternal(G * ss, O, w), this._isUserControllingZoom = !0);
4025
+ (this._state & H.TOUCH_DOLLY) === H.TOUCH_DOLLY || (this._state & H.TOUCH_DOLLY_ROTATE) === H.TOUCH_DOLLY_ROTATE || (this._state & H.TOUCH_DOLLY_TRUCK) === H.TOUCH_DOLLY_TRUCK || (this._state & H.TOUCH_DOLLY_OFFSET) === H.TOUCH_DOLLY_OFFSET ? (this._dollyInternal(G * ns, O, w), this._isUserControllingDolly = !0) : (this._zoomInternal(G * ns, O, w), this._isUserControllingZoom = !0);
4025
4026
  }
4026
4027
  ((this._state & H.TRUCK) === H.TRUCK || (this._state & H.TOUCH_TRUCK) === H.TOUCH_TRUCK || (this._state & H.TOUCH_DOLLY_TRUCK) === H.TOUCH_DOLLY_TRUCK || (this._state & H.TOUCH_ZOOM_TRUCK) === H.TOUCH_ZOOM_TRUCK) && (this._truckInternal(N, y, !1), this._isUserControllingTruck = !0), ((this._state & H.OFFSET) === H.OFFSET || (this._state & H.TOUCH_OFFSET) === H.TOUCH_OFFSET || (this._state & H.TOUCH_DOLLY_OFFSET) === H.TOUCH_DOLLY_OFFSET || (this._state & H.TOUCH_ZOOM_OFFSET) === H.TOUCH_ZOOM_OFFSET) && (this._truckInternal(N, y, !0), this._isUserControllingOffset = !0), this.dispatchEvent({ type: "control" });
4027
4028
  }, p = () => {
@@ -4139,7 +4140,7 @@ class vt extends ic {
4139
4140
  * @category Properties
4140
4141
  */
4141
4142
  set interactiveArea(i) {
4142
- this._interactiveArea.width = te(i.width, 0, 1), this._interactiveArea.height = te(i.height, 0, 1), this._interactiveArea.x = te(i.x, 0, 1 - this._interactiveArea.width), this._interactiveArea.y = te(i.y, 0, 1 - this._interactiveArea.height);
4143
+ this._interactiveArea.width = Jt(i.width, 0, 1), this._interactiveArea.height = Jt(i.height, 0, 1), this._interactiveArea.x = Jt(i.x, 0, 1 - this._interactiveArea.width), this._interactiveArea.y = Jt(i.y, 0, 1 - this._interactiveArea.height);
4143
4144
  }
4144
4145
  /**
4145
4146
  * Adds the specified event listener.
@@ -4261,7 +4262,7 @@ class vt extends ic {
4261
4262
  */
4262
4263
  rotateTo(i, t, e = !1) {
4263
4264
  this._isUserControllingRotate = !1;
4264
- const s = te(i, this.minAzimuthAngle, this.maxAzimuthAngle), n = te(t, this.minPolarAngle, this.maxPolarAngle);
4265
+ const s = Jt(i, this.minAzimuthAngle, this.maxAzimuthAngle), n = Jt(t, this.minPolarAngle, this.maxPolarAngle);
4265
4266
  this._sphericalEnd.theta = s, this._sphericalEnd.phi = n, this._sphericalEnd.makeSafe(), this._needsUpdate = !0, e || (this._spherical.theta = this._sphericalEnd.theta, this._spherical.phi = this._sphericalEnd.phi);
4266
4267
  const r = !e || pt(this._spherical.theta, this._sphericalEnd.theta, this.restThreshold) && pt(this._spherical.phi, this._sphericalEnd.phi, this.restThreshold);
4267
4268
  return this._createOnRestPromise(r);
@@ -4282,7 +4283,7 @@ class vt extends ic {
4282
4283
  * @category Methods
4283
4284
  */
4284
4285
  dollyTo(i, t = !1) {
4285
- return this._isUserControllingDolly = !1, this._lastDollyDirection = Qe.NONE, this._changedDolly = 0, this._dollyToNoClamp(te(i, this.minDistance, this.maxDistance), t);
4286
+ return this._isUserControllingDolly = !1, this._lastDollyDirection = Qe.NONE, this._changedDolly = 0, this._dollyToNoClamp(Jt(i, this.minDistance, this.maxDistance), t);
4286
4287
  }
4287
4288
  _dollyToNoClamp(i, t = !1) {
4288
4289
  const e = this._sphericalEnd.radius;
@@ -4305,7 +4306,7 @@ class vt extends ic {
4305
4306
  * @category Methods
4306
4307
  */
4307
4308
  dollyInFixed(i, t = !1) {
4308
- this._targetEnd.add(this._getCameraDirection(gi).multiplyScalar(i)), t || this._target.copy(this._targetEnd);
4309
+ this._targetEnd.add(this._getCameraDirection(Ai).multiplyScalar(i)), t || this._target.copy(this._targetEnd);
4309
4310
  const e = !t || pt(this._target.x, this._targetEnd.x, this.restThreshold) && pt(this._target.y, this._targetEnd.y, this.restThreshold) && pt(this._target.z, this._targetEnd.z, this.restThreshold);
4310
4311
  return this._createOnRestPromise(e);
4311
4312
  }
@@ -4327,7 +4328,7 @@ class vt extends ic {
4327
4328
  * @category Methods
4328
4329
  */
4329
4330
  zoomTo(i, t = !1) {
4330
- this._isUserControllingZoom = !1, this._zoomEnd = te(i, this.minZoom, this.maxZoom), this._needsUpdate = !0, t || (this._zoom = this._zoomEnd);
4331
+ this._isUserControllingZoom = !1, this._zoomEnd = Jt(i, this.minZoom, this.maxZoom), this._needsUpdate = !0, t || (this._zoom = this._zoomEnd);
4331
4332
  const e = !t || pt(this._zoom, this._zoomEnd, this.restThreshold);
4332
4333
  return this._changedZoom = 0, this._createOnRestPromise(e);
4333
4334
  }
@@ -4346,8 +4347,8 @@ class vt extends ic {
4346
4347
  * @category Methods
4347
4348
  */
4348
4349
  truck(i, t, e = !1) {
4349
- this._camera.updateMatrix(), ce.setFromMatrixColumn(this._camera.matrix, 0), le.setFromMatrixColumn(this._camera.matrix, 1), ce.multiplyScalar(i), le.multiplyScalar(-t);
4350
- const s = ut.copy(ce).add(le), n = Et.copy(this._targetEnd).add(s);
4350
+ this._camera.updateMatrix(), le.setFromMatrixColumn(this._camera.matrix, 0), he.setFromMatrixColumn(this._camera.matrix, 1), le.multiplyScalar(i), he.multiplyScalar(-t);
4351
+ const s = ut.copy(le).add(he), n = Et.copy(this._targetEnd).add(s);
4351
4352
  return this.moveTo(n.x, n.y, n.z, e);
4352
4353
  }
4353
4354
  /**
@@ -4417,14 +4418,14 @@ class vt extends ic {
4417
4418
  const h = Tr(this._sphericalEnd.theta, Cr), f = Tr(this._sphericalEnd.phi, Cr);
4418
4419
  a.push(this.rotateTo(h, f, t));
4419
4420
  const I = ut.setFromSpherical(this._sphericalEnd).normalize(), u = Sr.setFromUnitVectors(I, an), d = pt(Math.abs(I.y), 1);
4420
- d && u.multiply(ln.setFromAxisAngle(ns, h)), u.multiply(this._yAxisUpSpaceInverse);
4421
+ d && u.multiply(ln.setFromAxisAngle(rs, h)), u.multiply(this._yAxisUpSpaceInverse);
4421
4422
  const E = Fr.makeEmpty();
4422
4423
  Et.copy(l.min).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.min).setX(l.max.x).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.min).setY(l.max.y).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.max).setZ(l.min.z).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.min).setZ(l.max.z).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.max).setY(l.min.y).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.max).setX(l.min.x).applyQuaternion(u), E.expandByPoint(Et), Et.copy(l.max).applyQuaternion(u), E.expandByPoint(Et), E.min.x -= s, E.min.y -= r, E.max.x += n, E.max.y += o, u.setFromUnitVectors(an, I), d && u.premultiply(ln.invert()), u.premultiply(this._yAxisUpSpace);
4423
4424
  const T = E.getSize(ut), p = E.getCenter(Et).applyQuaternion(u);
4424
4425
  if (be(this._camera)) {
4425
4426
  const m = this.getDistanceToFitBox(T.x, T.y, T.z, e);
4426
4427
  a.push(this.moveTo(p.x, p.y, p.z, t)), a.push(this.dollyTo(m, t)), a.push(this.setFocalOffset(0, 0, 0, t));
4427
- } else if (ye(this._camera)) {
4428
+ } else if (Oe(this._camera)) {
4428
4429
  const m = this._camera, F = m.right - m.left, R = m.top - m.bottom, S = e ? Math.max(F / T.x, R / T.y) : Math.min(F / T.x, R / T.y);
4429
4430
  a.push(this.moveTo(p.x, p.y, p.z, t)), a.push(this.zoomTo(S, t)), a.push(this.setFocalOffset(0, 0, 0, t));
4430
4431
  }
@@ -4441,7 +4442,7 @@ class vt extends ic {
4441
4442
  if (e.push(this.moveTo(n.center.x, n.center.y, n.center.z, t)), be(this._camera)) {
4442
4443
  const r = this.getDistanceToFitSphere(n.radius);
4443
4444
  e.push(this.dollyTo(r, t));
4444
- } else if (ye(this._camera)) {
4445
+ } else if (Oe(this._camera)) {
4445
4446
  const r = this._camera.right - this._camera.left, o = this._camera.top - this._camera.bottom, a = 2 * n.radius, l = Math.min(r / a, o / a);
4446
4447
  e.push(this.zoomTo(l, t));
4447
4448
  }
@@ -4488,8 +4489,8 @@ class vt extends ic {
4488
4489
  const E = ut.set(s, n, r), T = Et.set(i, t, e);
4489
4490
  Xt.setFromVector3(T.sub(E).applyQuaternion(this._yAxisUpSpace));
4490
4491
  const p = Je.set(h, f, I), m = Et.set(o, a, l);
4491
- Ai.setFromVector3(m.sub(p).applyQuaternion(this._yAxisUpSpace)), this._targetEnd.copy(E.lerp(p, u));
4492
- const F = Ai.theta - Xt.theta, R = Ai.phi - Xt.phi, S = Ai.radius - Xt.radius;
4492
+ Fi.setFromVector3(m.sub(p).applyQuaternion(this._yAxisUpSpace)), this._targetEnd.copy(E.lerp(p, u));
4493
+ const F = Fi.theta - Xt.theta, R = Fi.phi - Xt.phi, S = Fi.radius - Xt.radius;
4493
4494
  this._sphericalEnd.set(Xt.radius + S * u, Xt.phi + R * u, Xt.theta + F * u), this.normalizeRotations(), this._needsUpdate = !0, d || (this._target.copy(this._targetEnd), this._spherical.copy(this._sphericalEnd));
4494
4495
  const N = !d || pt(this._target.x, this._targetEnd.x, this.restThreshold) && pt(this._target.y, this._targetEnd.y, this.restThreshold) && pt(this._target.z, this._targetEnd.z, this.restThreshold) && pt(this._spherical.theta, this._sphericalEnd.theta, this.restThreshold) && pt(this._spherical.phi, this._sphericalEnd.phi, this.restThreshold) && pt(this._spherical.radius, this._sphericalEnd.radius, this.restThreshold);
4495
4496
  return this._createOnRestPromise(N);
@@ -4517,7 +4518,7 @@ class vt extends ic {
4517
4518
  */
4518
4519
  setTarget(i, t, e, s = !1) {
4519
4520
  const n = this.getPosition(ut), r = this.setLookAt(n.x, n.y, n.z, i, t, e, s);
4520
- return this._sphericalEnd.phi = te(this._sphericalEnd.phi, this.minPolarAngle, this.maxPolarAngle), r;
4521
+ return this._sphericalEnd.phi = Jt(this._sphericalEnd.phi, this.minPolarAngle, this.maxPolarAngle), r;
4521
4522
  }
4522
4523
  /**
4523
4524
  * Set focal offset using the screen parallel coordinates. z doesn't affect in Orthographic as with Dolly.
@@ -4541,9 +4542,9 @@ class vt extends ic {
4541
4542
  * @category Methods
4542
4543
  */
4543
4544
  setOrbitPoint(i, t, e) {
4544
- this._camera.updateMatrixWorld(), ce.setFromMatrixColumn(this._camera.matrixWorldInverse, 0), le.setFromMatrixColumn(this._camera.matrixWorldInverse, 1), ve.setFromMatrixColumn(this._camera.matrixWorldInverse, 2);
4545
+ this._camera.updateMatrixWorld(), le.setFromMatrixColumn(this._camera.matrixWorldInverse, 0), he.setFromMatrixColumn(this._camera.matrixWorldInverse, 1), ve.setFromMatrixColumn(this._camera.matrixWorldInverse, 2);
4545
4546
  const s = ut.set(i, t, e), n = s.distanceTo(this._camera.position), r = s.sub(this._camera.position);
4546
- ce.multiplyScalar(r.x), le.multiplyScalar(r.y), ve.multiplyScalar(r.z), ut.copy(ce).add(le).add(ve), ut.z = ut.z + n, this.dollyTo(n, !1), this.setFocalOffset(-ut.x, ut.y, -ut.z, !1), this.moveTo(i, t, e, !1);
4547
+ le.multiplyScalar(r.x), he.multiplyScalar(r.y), ve.multiplyScalar(r.z), ut.copy(le).add(he).add(ve), ut.z = ut.z + n, this.dollyTo(n, !1), this.setFocalOffset(-ut.x, ut.y, -ut.z, !1), this.moveTo(i, t, e, !1);
4547
4548
  }
4548
4549
  /**
4549
4550
  * Set the boundary box that encloses the target of the camera. box3 is in THREE.Box3
@@ -4584,7 +4585,7 @@ class vt extends ic {
4584
4585
  getDistanceToFitBox(i, t, e, s = !1) {
4585
4586
  if (on(this._camera, "getDistanceToFitBox"))
4586
4587
  return this._spherical.radius;
4587
- const n = i / t, r = this._camera.getEffectiveFOV() * Ti, o = this._camera.aspect;
4588
+ const n = i / t, r = this._camera.getEffectiveFOV() * mi, o = this._camera.aspect;
4588
4589
  return ((s ? n > o : n < o) ? t : i / o) * 0.5 / Math.tan(r * 0.5) + e * 0.5;
4589
4590
  }
4590
4591
  /**
@@ -4596,7 +4597,7 @@ class vt extends ic {
4596
4597
  getDistanceToFitSphere(i) {
4597
4598
  if (on(this._camera, "getDistanceToFitSphere"))
4598
4599
  return this._spherical.radius;
4599
- const t = this._camera.getEffectiveFOV() * Ti, e = Math.atan(Math.tan(t * 0.5) * this._camera.aspect) * 2, s = 1 < this._camera.aspect ? t : e;
4600
+ const t = this._camera.getEffectiveFOV() * mi, e = Math.atan(Math.tan(t * 0.5) * this._camera.aspect) * 2, s = 1 < this._camera.aspect ? t : e;
4600
4601
  return i / Math.sin(s * 0.5);
4601
4602
  }
4602
4603
  /**
@@ -4673,7 +4674,7 @@ class vt extends ic {
4673
4674
  * @category Methods
4674
4675
  */
4675
4676
  updateCameraUp() {
4676
- this._yAxisUpSpace.setFromUnitVectors(this._camera.up, ns), this._yAxisUpSpaceInverse.copy(this._yAxisUpSpace).invert();
4677
+ this._yAxisUpSpace.setFromUnitVectors(this._camera.up, rs), this._yAxisUpSpaceInverse.copy(this._yAxisUpSpace).invert();
4677
4678
  }
4678
4679
  /**
4679
4680
  * Apply current camera-up direction to the camera.
@@ -4699,19 +4700,19 @@ class vt extends ic {
4699
4700
  this._thetaVelocity.value = 0, this._spherical.theta = this._sphericalEnd.theta;
4700
4701
  else {
4701
4702
  const f = this._isUserControllingRotate ? this.draggingSmoothTime : this.smoothTime;
4702
- this._spherical.theta = is(this._spherical.theta, this._sphericalEnd.theta, this._thetaVelocity, f, 1 / 0, i), this._needsUpdate = !0;
4703
+ this._spherical.theta = ss(this._spherical.theta, this._sphericalEnd.theta, this._thetaVelocity, f, 1 / 0, i), this._needsUpdate = !0;
4703
4704
  }
4704
4705
  if (gt(e))
4705
4706
  this._phiVelocity.value = 0, this._spherical.phi = this._sphericalEnd.phi;
4706
4707
  else {
4707
4708
  const f = this._isUserControllingRotate ? this.draggingSmoothTime : this.smoothTime;
4708
- this._spherical.phi = is(this._spherical.phi, this._sphericalEnd.phi, this._phiVelocity, f, 1 / 0, i), this._needsUpdate = !0;
4709
+ this._spherical.phi = ss(this._spherical.phi, this._sphericalEnd.phi, this._phiVelocity, f, 1 / 0, i), this._needsUpdate = !0;
4709
4710
  }
4710
4711
  if (gt(s))
4711
4712
  this._radiusVelocity.value = 0, this._spherical.radius = this._sphericalEnd.radius;
4712
4713
  else {
4713
4714
  const f = this._isUserControllingDolly ? this.draggingSmoothTime : this.smoothTime;
4714
- this._spherical.radius = is(this._spherical.radius, this._sphericalEnd.radius, this._radiusVelocity, f, this.maxSpeed, i), this._needsUpdate = !0;
4715
+ this._spherical.radius = ss(this._spherical.radius, this._sphericalEnd.radius, this._radiusVelocity, f, this.maxSpeed, i), this._needsUpdate = !0;
4715
4716
  }
4716
4717
  if (gt(n.x) && gt(n.y) && gt(n.z))
4717
4718
  this._targetVelocity.set(0, 0, 0), this._target.copy(this._targetEnd);
@@ -4729,13 +4730,13 @@ class vt extends ic {
4729
4730
  this._zoomVelocity.value = 0, this._zoom = this._zoomEnd;
4730
4731
  else {
4731
4732
  const f = this._isUserControllingZoom ? this.draggingSmoothTime : this.smoothTime;
4732
- this._zoom = is(this._zoom, this._zoomEnd, this._zoomVelocity, f, 1 / 0, i);
4733
+ this._zoom = ss(this._zoom, this._zoomEnd, this._zoomVelocity, f, 1 / 0, i);
4733
4734
  }
4734
4735
  if (this.dollyToCursor) {
4735
4736
  if (be(this._camera) && this._changedDolly !== 0) {
4736
- const f = this._spherical.radius - this._lastDistance, I = this._camera, u = this._getCameraDirection(gi), d = ut.copy(u).cross(I.up).normalize();
4737
+ const f = this._spherical.radius - this._lastDistance, I = this._camera, u = this._getCameraDirection(Ai), d = ut.copy(u).cross(I.up).normalize();
4737
4738
  d.lengthSq() === 0 && (d.x = 1);
4738
- const E = Et.crossVectors(d, u), T = this._sphericalEnd.radius * Math.tan(I.getEffectiveFOV() * Ti * 0.5), m = (this._sphericalEnd.radius - f - this._sphericalEnd.radius) / this._sphericalEnd.radius, F = Je.copy(this._targetEnd).add(d.multiplyScalar(this._dollyControlCoord.x * T * I.aspect)).add(E.multiplyScalar(this._dollyControlCoord.y * T)), R = ut.copy(this._targetEnd).lerp(F, m), S = this._lastDollyDirection === Qe.IN && this._spherical.radius <= this.minDistance, N = this._lastDollyDirection === Qe.OUT && this.maxDistance <= this._spherical.radius;
4739
+ const E = Et.crossVectors(d, u), T = this._sphericalEnd.radius * Math.tan(I.getEffectiveFOV() * mi * 0.5), m = (this._sphericalEnd.radius - f - this._sphericalEnd.radius) / this._sphericalEnd.radius, F = Je.copy(this._targetEnd).add(d.multiplyScalar(this._dollyControlCoord.x * T * I.aspect)).add(E.multiplyScalar(this._dollyControlCoord.y * T)), R = ut.copy(this._targetEnd).lerp(F, m), S = this._lastDollyDirection === Qe.IN && this._spherical.radius <= this.minDistance, N = this._lastDollyDirection === Qe.OUT && this.maxDistance <= this._spherical.radius;
4739
4740
  if (this.infinityDolly && (S || N)) {
4740
4741
  this._sphericalEnd.radius -= f, this._spherical.radius -= f;
4741
4742
  const M = Et.copy(u).multiplyScalar(-f);
@@ -4744,8 +4745,8 @@ class vt extends ic {
4744
4745
  this._boundary.clampPoint(R, R);
4745
4746
  const y = Et.subVectors(R, this._targetEnd);
4746
4747
  this._targetEnd.copy(R), this._target.add(y), this._changedDolly -= f, gt(this._changedDolly) && (this._changedDolly = 0);
4747
- } else if (ye(this._camera) && this._changedZoom !== 0) {
4748
- const f = this._zoom - this._lastZoom, I = this._camera, u = ut.set(this._dollyControlCoord.x, this._dollyControlCoord.y, (I.near + I.far) / (I.near - I.far)).unproject(I), d = Et.set(0, 0, -1).applyQuaternion(I.quaternion), E = Je.copy(u).add(d.multiplyScalar(-u.dot(I.up))), p = -(this._zoom - f - this._zoom) / this._zoom, m = this._getCameraDirection(gi), F = this._targetEnd.dot(m), R = ut.copy(this._targetEnd).lerp(E, p), S = R.dot(m), N = m.multiplyScalar(S - F);
4748
+ } else if (Oe(this._camera) && this._changedZoom !== 0) {
4749
+ const f = this._zoom - this._lastZoom, I = this._camera, u = ut.set(this._dollyControlCoord.x, this._dollyControlCoord.y, (I.near + I.far) / (I.near - I.far)).unproject(I), d = Et.set(0, 0, -1).applyQuaternion(I.quaternion), E = Je.copy(u).add(d.multiplyScalar(-u.dot(I.up))), p = -(this._zoom - f - this._zoom) / this._zoom, m = this._getCameraDirection(Ai), F = this._targetEnd.dot(m), R = ut.copy(this._targetEnd).lerp(E, p), S = R.dot(m), N = m.multiplyScalar(S - F);
4749
4750
  R.sub(N), this._boundary.clampPoint(R, R);
4750
4751
  const y = Et.subVectors(R, this._targetEnd);
4751
4752
  this._targetEnd.copy(R), this._target.add(y), this._changedZoom -= f, gt(this._changedZoom) && (this._changedZoom = 0);
@@ -4753,7 +4754,7 @@ class vt extends ic {
4753
4754
  }
4754
4755
  this._camera.zoom !== this._zoom && (this._camera.zoom = this._zoom, this._camera.updateProjectionMatrix(), this._updateNearPlaneCorners(), this._needsUpdate = !0), this._dragNeedsUpdate = !0;
4755
4756
  const a = this._collisionTest();
4756
- this._spherical.radius = Math.min(this._spherical.radius, a), this._spherical.makeSafe(), this._camera.position.setFromSpherical(this._spherical).applyQuaternion(this._yAxisUpSpaceInverse).add(this._target), this._camera.lookAt(this._target), (!gt(this._focalOffset.x) || !gt(this._focalOffset.y) || !gt(this._focalOffset.z)) && (this._camera.updateMatrixWorld(), ce.setFromMatrixColumn(this._camera.matrix, 0), le.setFromMatrixColumn(this._camera.matrix, 1), ve.setFromMatrixColumn(this._camera.matrix, 2), ce.multiplyScalar(this._focalOffset.x), le.multiplyScalar(-this._focalOffset.y), ve.multiplyScalar(this._focalOffset.z), ut.copy(ce).add(le).add(ve), this._camera.position.add(ut)), this._boundaryEnclosesCamera && this._encloseToBoundary(this._camera.position.copy(this._target), ut.setFromSpherical(this._spherical).applyQuaternion(this._yAxisUpSpaceInverse), 1);
4757
+ this._spherical.radius = Math.min(this._spherical.radius, a), this._spherical.makeSafe(), this._camera.position.setFromSpherical(this._spherical).applyQuaternion(this._yAxisUpSpaceInverse).add(this._target), this._camera.lookAt(this._target), (!gt(this._focalOffset.x) || !gt(this._focalOffset.y) || !gt(this._focalOffset.z)) && (this._camera.updateMatrixWorld(), le.setFromMatrixColumn(this._camera.matrix, 0), he.setFromMatrixColumn(this._camera.matrix, 1), ve.setFromMatrixColumn(this._camera.matrix, 2), le.multiplyScalar(this._focalOffset.x), he.multiplyScalar(-this._focalOffset.y), ve.multiplyScalar(this._focalOffset.z), ut.copy(le).add(he).add(ve), this._camera.position.add(ut)), this._boundaryEnclosesCamera && this._encloseToBoundary(this._camera.position.copy(this._target), ut.setFromSpherical(this._spherical).applyQuaternion(this._yAxisUpSpaceInverse), 1);
4757
4758
  const h = this._needsUpdate;
4758
4759
  return h && !this._updatedLastTime ? (this._hasRested = !1, this.dispatchEvent({ type: "wake" }), this.dispatchEvent({ type: "update" })) : h ? (this.dispatchEvent({ type: "update" }), gt(t, this.restThreshold) && gt(e, this.restThreshold) && gt(s, this.restThreshold) && gt(n.x, this.restThreshold) && gt(n.y, this.restThreshold) && gt(n.z, this.restThreshold) && gt(r.x, this.restThreshold) && gt(r.y, this.restThreshold) && gt(r.z, this.restThreshold) && gt(o, this.restThreshold) && !this._hasRested && (this._hasRested = !0, this.dispatchEvent({ type: "rest" }))) : !h && this._updatedLastTime && this.dispatchEvent({ type: "sleep" }), this._lastDistance = this._spherical.radius, this._lastZoom = this._zoom, this._updatedLastTime = h, this._needsUpdate = !1, h;
4759
4760
  }
@@ -4765,13 +4766,13 @@ class vt extends ic {
4765
4766
  return JSON.stringify({
4766
4767
  enabled: this._enabled,
4767
4768
  minDistance: this.minDistance,
4768
- maxDistance: mi(this.maxDistance),
4769
+ maxDistance: Ri(this.maxDistance),
4769
4770
  minZoom: this.minZoom,
4770
- maxZoom: mi(this.maxZoom),
4771
+ maxZoom: Ri(this.maxZoom),
4771
4772
  minPolarAngle: this.minPolarAngle,
4772
- maxPolarAngle: mi(this.maxPolarAngle),
4773
- minAzimuthAngle: mi(this.minAzimuthAngle),
4774
- maxAzimuthAngle: mi(this.maxAzimuthAngle),
4773
+ maxPolarAngle: Ri(this.maxPolarAngle),
4774
+ minAzimuthAngle: Ri(this.minAzimuthAngle),
4775
+ maxAzimuthAngle: Ri(this.maxAzimuthAngle),
4775
4776
  smoothTime: this.smoothTime,
4776
4777
  draggingSmoothTime: this.draggingSmoothTime,
4777
4778
  dollySpeed: this.dollySpeed,
@@ -4796,7 +4797,7 @@ class vt extends ic {
4796
4797
  */
4797
4798
  fromJSON(i, t = !1) {
4798
4799
  const e = JSON.parse(i);
4799
- this.enabled = e.enabled, this.minDistance = e.minDistance, this.maxDistance = Ri(e.maxDistance), this.minZoom = e.minZoom, this.maxZoom = Ri(e.maxZoom), this.minPolarAngle = e.minPolarAngle, this.maxPolarAngle = Ri(e.maxPolarAngle), this.minAzimuthAngle = Ri(e.minAzimuthAngle), this.maxAzimuthAngle = Ri(e.maxAzimuthAngle), this.smoothTime = e.smoothTime, this.draggingSmoothTime = e.draggingSmoothTime, this.dollySpeed = e.dollySpeed, this.truckSpeed = e.truckSpeed, this.dollyToCursor = e.dollyToCursor, this.verticalDragToForward = e.verticalDragToForward, this._target0.fromArray(e.target0), this._position0.fromArray(e.position0), this._zoom0 = e.zoom0, this._focalOffset0.fromArray(e.focalOffset0), this.moveTo(e.target[0], e.target[1], e.target[2], t), Xt.setFromVector3(ut.fromArray(e.position).sub(this._targetEnd).applyQuaternion(this._yAxisUpSpace)), this.rotateTo(Xt.theta, Xt.phi, t), this.dollyTo(Xt.radius, t), this.zoomTo(e.zoom, t), this.setFocalOffset(e.focalOffset[0], e.focalOffset[1], e.focalOffset[2], t), this._needsUpdate = !0;
4800
+ this.enabled = e.enabled, this.minDistance = e.minDistance, this.maxDistance = gi(e.maxDistance), this.minZoom = e.minZoom, this.maxZoom = gi(e.maxZoom), this.minPolarAngle = e.minPolarAngle, this.maxPolarAngle = gi(e.maxPolarAngle), this.minAzimuthAngle = gi(e.minAzimuthAngle), this.maxAzimuthAngle = gi(e.maxAzimuthAngle), this.smoothTime = e.smoothTime, this.draggingSmoothTime = e.draggingSmoothTime, this.dollySpeed = e.dollySpeed, this.truckSpeed = e.truckSpeed, this.dollyToCursor = e.dollyToCursor, this.verticalDragToForward = e.verticalDragToForward, this._target0.fromArray(e.target0), this._position0.fromArray(e.position0), this._zoom0 = e.zoom0, this._focalOffset0.fromArray(e.focalOffset0), this.moveTo(e.target[0], e.target[1], e.target[2], t), Xt.setFromVector3(ut.fromArray(e.position).sub(this._targetEnd).applyQuaternion(this._yAxisUpSpace)), this.rotateTo(Xt.theta, Xt.phi, t), this.dollyTo(Xt.radius, t), this.zoomTo(e.zoom, t), this.setFocalOffset(e.focalOffset[0], e.focalOffset[1], e.focalOffset[2], t), this._needsUpdate = !0;
4800
4801
  }
4801
4802
  /**
4802
4803
  * Attach all internal event handlers to enable drag control.
@@ -4857,9 +4858,9 @@ class vt extends ic {
4857
4858
  }
4858
4859
  _updateNearPlaneCorners() {
4859
4860
  if (be(this._camera)) {
4860
- const i = this._camera, t = i.near, e = i.getEffectiveFOV() * Ti, s = Math.tan(e * 0.5) * t, n = s * i.aspect;
4861
+ const i = this._camera, t = i.near, e = i.getEffectiveFOV() * mi, s = Math.tan(e * 0.5) * t, n = s * i.aspect;
4861
4862
  this._nearPlaneCorners[0].set(-n, -s, 0), this._nearPlaneCorners[1].set(n, -s, 0), this._nearPlaneCorners[2].set(n, s, 0), this._nearPlaneCorners[3].set(-n, s, 0);
4862
- } else if (ye(this._camera)) {
4863
+ } else if (Oe(this._camera)) {
4863
4864
  const i = this._camera, t = 1 / i.zoom, e = i.left * t, s = i.right * t, n = i.top * t, r = i.bottom * t;
4864
4865
  this._nearPlaneCorners[0].set(e, n, 0), this._nearPlaneCorners[1].set(s, n, 0), this._nearPlaneCorners[2].set(s, r, 0), this._nearPlaneCorners[3].set(e, r, 0);
4865
4866
  }
@@ -4869,14 +4870,14 @@ class vt extends ic {
4869
4870
  let i = 1 / 0;
4870
4871
  if (!(this.colliderMeshes.length >= 1) || on(this._camera, "_collisionTest"))
4871
4872
  return i;
4872
- const e = this._getTargetDirection(gi);
4873
+ const e = this._getTargetDirection(Ai);
4873
4874
  hn.lookAt(Rr, e, this._camera.up);
4874
4875
  for (let s = 0; s < 4; s++) {
4875
4876
  const n = Et.copy(this._nearPlaneCorners[s]);
4876
4877
  n.applyMatrix4(hn);
4877
4878
  const r = Je.addVectors(this._target, n);
4878
- rs.set(r, e), rs.far = this._spherical.radius + 1;
4879
- const o = rs.intersectObjects(this.colliderMeshes);
4879
+ os.set(r, e), os.far = this._spherical.radius + 1;
4880
+ const o = os.intersectObjects(this.colliderMeshes);
4880
4881
  o.length !== 0 && o[0].distance < i && (i = o[0].distance);
4881
4882
  }
4882
4883
  return i;
@@ -4952,7 +4953,7 @@ class vt extends ic {
4952
4953
  }), e.radius = Math.sqrt(n), e;
4953
4954
  }
4954
4955
  }
4955
- class vi extends Va {
4956
+ class Ui extends Va {
4956
4957
  constructor(t) {
4957
4958
  super(t);
4958
4959
  /** {@link Updateable.onBeforeUpdate} */
@@ -5052,7 +5053,7 @@ class vi extends Va {
5052
5053
  throw new Error("This camera needs a world to work!");
5053
5054
  if (!this.currentWorld.renderer)
5054
5055
  throw new Error("This camera needs a renderer to work!");
5055
- vt.install({ THREE: vi.getSubsetOfThree() });
5056
+ vt.install({ THREE: Ui.getSubsetOfThree() });
5056
5057
  const { domElement: t } = this.currentWorld.renderer.three, e = new vt(this.three, t);
5057
5058
  return e.smoothTime = 0.2, e.dollyToCursor = !0, e.infinityDolly = !0, e.minDistance = 6, e;
5058
5059
  }
@@ -5075,7 +5076,7 @@ class vi extends Va {
5075
5076
  };
5076
5077
  }
5077
5078
  }
5078
- const Ss = class Ss extends At {
5079
+ const Os = class Os extends At {
5079
5080
  constructor(t) {
5080
5081
  super(t);
5081
5082
  /** {@link Updateable.onAfterUpdate} */
@@ -5088,10 +5089,10 @@ const Ss = class Ss extends At {
5088
5089
  * A collection of worlds managed by this component.
5089
5090
  * The key is the unique identifier (UUID) of the world, and the value is the World instance.
5090
5091
  */
5091
- C(this, "list", new pe());
5092
+ C(this, "list", new re());
5092
5093
  /** {@link Component.enabled} */
5093
5094
  C(this, "enabled", !0);
5094
- t.add(Ss.uuid, this);
5095
+ t.add(Os.uuid, this);
5095
5096
  }
5096
5097
  /**
5097
5098
  * Creates a new instance of a SimpleWorld and adds it to the list of worlds.
@@ -5142,8 +5143,8 @@ const Ss = class Ss extends At {
5142
5143
  * A unique identifier for the component.
5143
5144
  * This UUID is used to register the component within the Components system.
5144
5145
  */
5145
- C(Ss, "uuid", "fdb61dc4-2ec1-4966-b83d-54ea795fad4a");
5146
- let Cs = Ss;
5146
+ C(Os, "uuid", "fdb61dc4-2ec1-4966-b83d-54ea795fad4a");
5147
+ let Ts = Os;
5147
5148
  function oc(c, i, t, e) {
5148
5149
  return new Promise((s, n) => {
5149
5150
  function r() {
@@ -5295,7 +5296,7 @@ class lc {
5295
5296
  * meshes that are currently visible, and the ones that were visible
5296
5297
  * just before but not anymore.
5297
5298
  */
5298
- C(this, "onViewUpdated", new fs());
5299
+ C(this, "onViewUpdated", new Is());
5299
5300
  /**
5300
5301
  * Whether this renderer is active or not. If not, it won't render anything.
5301
5302
  */
@@ -5377,8 +5378,8 @@ class lc {
5377
5378
  this,
5378
5379
  this.components,
5379
5380
  "Culler renderer"
5380
- ), this.components.get(Kt).list.add(this.config), this.world = t, this.renderer = new D.WebGLRenderer(), this.renderer.clippingPlanes = t.renderer.clippingPlanes;
5381
- const s = `
5381
+ ), this.world = t, this.renderer = new D.WebGLRenderer(), this.renderer.clippingPlanes = t.renderer.clippingPlanes;
5382
+ const e = `
5382
5383
  addEventListener("message", (event) => {
5383
5384
  const { buffer } = event.data;
5384
5385
  const colors = new Map();
@@ -5395,12 +5396,12 @@ class lc {
5395
5396
  }
5396
5397
  postMessage({ colors });
5397
5398
  });
5398
- `, n = new Blob([s], { type: "application/javascript" });
5399
- this.worker = new Worker(URL.createObjectURL(n)), this.setup();
5399
+ `, s = new Blob([e], { type: "application/javascript" });
5400
+ this.worker = new Worker(URL.createObjectURL(s)), this.setup();
5400
5401
  }
5401
5402
  /** {@link Disposable.dispose} */
5402
5403
  dispose() {
5403
- this.enabled = !1, this.config.autoUpdate = !1, this.components.get(Kt).list.delete(this.config);
5404
+ this.enabled = !1, this.config.autoUpdate = !1, this.components.get(Ve).list.delete(this.config.uuid);
5404
5405
  for (const t of this.scene.children)
5405
5406
  t.removeFromParent();
5406
5407
  this.onViewUpdated.reset(), this.worker.terminate(), this.renderer.forceContextLoss(), this.renderer.dispose(), this.renderTarget.dispose(), this.buffer = null, this.onDisposed.reset();
@@ -5583,7 +5584,7 @@ class hc extends lc {
5583
5584
  return D.ColorManagement.enabled = r, { colorMaterial: l, code: n };
5584
5585
  }
5585
5586
  }
5586
- const wi = class wi extends At {
5587
+ const Mi = class Mi extends At {
5587
5588
  constructor(t) {
5588
5589
  super(t);
5589
5590
  /**
@@ -5595,7 +5596,7 @@ const wi = class wi extends At {
5595
5596
  * A map of MeshCullerRenderer instances, keyed by their world UUIDs.
5596
5597
  */
5597
5598
  C(this, "list", /* @__PURE__ */ new Map());
5598
- t.add(wi.uuid, this);
5599
+ t.add(Mi.uuid, this);
5599
5600
  }
5600
5601
  /** {@link Component.enabled} */
5601
5602
  get enabled() {
@@ -5635,7 +5636,7 @@ const wi = class wi extends At {
5635
5636
  }
5636
5637
  /** {@link Disposable.dispose} */
5637
5638
  dispose() {
5638
- this.enabled = !1, this.onDisposed.trigger(wi.uuid), this.onDisposed.reset();
5639
+ this.enabled = !1, this.onDisposed.trigger(Mi.uuid), this.onDisposed.reset();
5639
5640
  for (const [t, e] of this.list)
5640
5641
  e.dispose();
5641
5642
  this.list.clear();
@@ -5655,8 +5656,8 @@ const wi = class wi extends At {
5655
5656
  * A unique identifier for the component.
5656
5657
  * This UUID is used to register the component within the Components system.
5657
5658
  */
5658
- C(wi, "uuid", "69f2a50d-c266-44fc-b1bd-fa4d34be89e6");
5659
- let Fn = wi;
5659
+ C(Mi, "uuid", "69f2a50d-c266-44fc-b1bd-fa4d34be89e6");
5660
+ let Fn = Mi;
5660
5661
  class uc {
5661
5662
  constructor(i, t) {
5662
5663
  /** {@link Disposable.onDisposed} */
@@ -6059,7 +6060,7 @@ class Ic {
6059
6060
  );
6060
6061
  }
6061
6062
  }
6062
- const Os = class Os extends At {
6063
+ const Ns = class Ns extends At {
6063
6064
  constructor(t) {
6064
6065
  super(t);
6065
6066
  /** {@link Component.enabled} */
@@ -6071,7 +6072,7 @@ const Os = class Os extends At {
6071
6072
  C(this, "list", /* @__PURE__ */ new Map());
6072
6073
  /** {@link Disposable.onDisposed} */
6073
6074
  C(this, "onDisposed", new Z());
6074
- t.add(Os.uuid, this);
6075
+ t.add(Ns.uuid, this);
6075
6076
  }
6076
6077
  /**
6077
6078
  * Retrieves a SimpleRaycaster instance for the given world.
@@ -6111,8 +6112,8 @@ const Os = class Os extends At {
6111
6112
  * A unique identifier for the component.
6112
6113
  * This UUID is used to register the component within the Components system.
6113
6114
  */
6114
- C(Os, "uuid", "d5d8bdf0-db25-4952-b951-b643af207ace");
6115
- let oi = Os;
6115
+ C(Ns, "uuid", "d5d8bdf0-db25-4952-b951-b643af207ace");
6116
+ let ai = Ns;
6116
6117
  class dc extends Ye {
6117
6118
  constructor() {
6118
6119
  super(...arguments);
@@ -6234,12 +6235,12 @@ class Ec {
6234
6235
  C(this, "three");
6235
6236
  C(this, "_fade", 3);
6236
6237
  C(this, "updateZoom", () => {
6237
- this.world.camera instanceof vi && (this.material.uniforms.uZoom.value = this.world.camera.three.zoom);
6238
+ this.world.camera instanceof Ui && (this.material.uniforms.uZoom.value = this.world.camera.three.zoom);
6238
6239
  });
6239
6240
  this.world = t;
6240
6241
  const { color: e, primarySize: s, secondarySize: n, distance: r } = this._defaultConfig;
6241
- this.components = i, this.config = new dc(this, this.components, "Grid"), i.get(Kt).list.add(this.config);
6242
- const a = new D.PlaneGeometry(2, 2, 1, 1), l = new D.ShaderMaterial({
6242
+ this.components = i, this.config = new dc(this, this.components, "Grid");
6243
+ const o = new D.PlaneGeometry(2, 2, 1, 1), a = new D.ShaderMaterial({
6243
6244
  side: D.DoubleSide,
6244
6245
  uniforms: {
6245
6246
  uSize1: {
@@ -6329,7 +6330,7 @@ class Ec {
6329
6330
  derivatives: !0
6330
6331
  }
6331
6332
  });
6332
- this.three = new D.Mesh(a, l), this.three.frustumCulled = !1, t.scene.three.add(this.three), this.setupEvents(!0);
6333
+ this.three = new D.Mesh(o, a), this.three.frustumCulled = !1, t.scene.three.add(this.three), this.setupEvents(!0);
6333
6334
  }
6334
6335
  /** {@link Hideable.visible} */
6335
6336
  get visible() {
@@ -6364,16 +6365,16 @@ class Ec {
6364
6365
  }
6365
6366
  /** {@link Disposable.dispose} */
6366
6367
  dispose() {
6367
- this.setupEvents(!1), this.components.get(Kt).list.delete(this.config), this.components.get(Me).destroy(this.three), this.onDisposed.trigger(), this.onDisposed.reset(), this.world = null, this.components = null;
6368
+ this.setupEvents(!1), this.components.get(Ve).list.delete(this.config.uuid), this.components.get(Me).destroy(this.three), this.onDisposed.trigger(), this.onDisposed.reset(), this.world = null, this.components = null;
6368
6369
  }
6369
6370
  setupEvents(i) {
6370
- if (this.world.isDisposing || !(this.world.camera instanceof vi))
6371
+ if (this.world.isDisposing || !(this.world.camera instanceof Ui))
6371
6372
  return;
6372
6373
  const t = this.world.camera.controls;
6373
6374
  i ? t.addEventListener("update", this.updateZoom) : t.removeEventListener("update", this.updateZoom);
6374
6375
  }
6375
6376
  }
6376
- const Ns = class Ns extends At {
6377
+ const ys = class ys extends At {
6377
6378
  constructor(t) {
6378
6379
  super(t);
6379
6380
  /**
@@ -6384,7 +6385,7 @@ const Ns = class Ns extends At {
6384
6385
  C(this, "onDisposed", new Z());
6385
6386
  /** {@link Component.enabled} */
6386
6387
  C(this, "enabled", !0);
6387
- t.add(Ns.uuid, this);
6388
+ t.add(ys.uuid, this);
6388
6389
  }
6389
6390
  /**
6390
6391
  * Creates a new grid for the given world.
@@ -6428,9 +6429,9 @@ const Ns = class Ns extends At {
6428
6429
  * A unique identifier for the component.
6429
6430
  * This UUID is used to register the component within the Components system.
6430
6431
  */
6431
- C(Ns, "uuid", "d1e814d5-b81c-4452-87a2-f039375e0489");
6432
- let Or = Ns;
6433
- const Ue = new yo(), bt = new Q(), Ne = new Q(), Ot = new Ie(), Nr = {
6432
+ C(ys, "uuid", "d1e814d5-b81c-4452-87a2-f039375e0489");
6433
+ let Or = ys;
6434
+ const Ue = new yo(), bt = new Q(), Se = new Q(), Ot = new de(), Nr = {
6434
6435
  X: new Q(1, 0, 0),
6435
6436
  Y: new Q(0, 1, 0),
6436
6437
  Z: new Q(0, 0, 1)
@@ -6455,8 +6456,8 @@ class pc extends In {
6455
6456
  }), n[m] = F, s[m] = F, e[m] = F;
6456
6457
  }
6457
6458
  r("camera", i), r("object", void 0), r("enabled", !0), r("axis", null), r("mode", "translate"), r("translationSnap", null), r("rotationSnap", null), r("scaleSnap", null), r("space", "world"), r("size", 1), r("dragging", !1), r("showX", !0), r("showY", !0), r("showZ", !0);
6458
- const o = new Q(), a = new Q(), l = new Ie(), h = new Ie(), f = new Q(), I = new Ie(), u = new Q(), d = new Q(), E = new Q(), T = 0, p = new Q();
6459
- r("worldPosition", o), r("worldPositionStart", a), r("worldQuaternion", l), r("worldQuaternionStart", h), r("cameraPosition", f), r("cameraQuaternion", I), r("pointStart", u), r("pointEnd", d), r("rotationAxis", E), r("rotationAngle", T), r("eye", p), this._offset = new Q(), this._startNorm = new Q(), this._endNorm = new Q(), this._cameraScale = new Q(), this._parentPosition = new Q(), this._parentQuaternion = new Ie(), this._parentQuaternionInv = new Ie(), this._parentScale = new Q(), this._worldScaleStart = new Q(), this._worldQuaternionInv = new Ie(), this._worldScale = new Q(), this._positionStart = new Q(), this._quaternionStart = new Ie(), this._scaleStart = new Q(), this._getPointer = Cc.bind(this), this._onPointerDown = mc.bind(this), this._onPointerHover = Tc.bind(this), this._onPointerMove = Rc.bind(this), this._onPointerUp = gc.bind(this), this.domElement.addEventListener("pointerdown", this._onPointerDown), this.domElement.addEventListener("pointermove", this._onPointerHover), this.domElement.addEventListener("pointerup", this._onPointerUp);
6459
+ const o = new Q(), a = new Q(), l = new de(), h = new de(), f = new Q(), I = new de(), u = new Q(), d = new Q(), E = new Q(), T = 0, p = new Q();
6460
+ r("worldPosition", o), r("worldPositionStart", a), r("worldQuaternion", l), r("worldQuaternionStart", h), r("cameraPosition", f), r("cameraQuaternion", I), r("pointStart", u), r("pointEnd", d), r("rotationAxis", E), r("rotationAngle", T), r("eye", p), this._offset = new Q(), this._startNorm = new Q(), this._endNorm = new Q(), this._cameraScale = new Q(), this._parentPosition = new Q(), this._parentQuaternion = new de(), this._parentQuaternionInv = new de(), this._parentScale = new Q(), this._worldScaleStart = new Q(), this._worldQuaternionInv = new de(), this._worldScale = new Q(), this._positionStart = new Q(), this._quaternionStart = new de(), this._scaleStart = new Q(), this._getPointer = Cc.bind(this), this._onPointerDown = mc.bind(this), this._onPointerHover = Tc.bind(this), this._onPointerMove = Rc.bind(this), this._onPointerUp = gc.bind(this), this.domElement.addEventListener("pointerdown", this._onPointerDown), this.domElement.addEventListener("pointermove", this._onPointerHover), this.domElement.addEventListener("pointerup", this._onPointerUp);
6460
6461
  }
6461
6462
  // updateMatrixWorld updates key transformation variables
6462
6463
  updateMatrixWorld() {
@@ -6489,10 +6490,10 @@ class pc extends In {
6489
6490
  else if (e === "scale") {
6490
6491
  if (t.search("XYZ") !== -1) {
6491
6492
  let o = this.pointEnd.length() / this.pointStart.length();
6492
- this.pointEnd.dot(this.pointStart) < 0 && (o *= -1), Ne.set(o, o, o);
6493
+ this.pointEnd.dot(this.pointStart) < 0 && (o *= -1), Se.set(o, o, o);
6493
6494
  } else
6494
- bt.copy(this.pointStart), Ne.copy(this.pointEnd), bt.applyQuaternion(this._worldQuaternionInv), Ne.applyQuaternion(this._worldQuaternionInv), Ne.divide(bt), t.search("X") === -1 && (Ne.x = 1), t.search("Y") === -1 && (Ne.y = 1), t.search("Z") === -1 && (Ne.z = 1);
6495
- s.scale.copy(this._scaleStart).multiply(Ne), this.scaleSnap && (t.search("X") !== -1 && (s.scale.x = Math.round(s.scale.x / this.scaleSnap) * this.scaleSnap || this.scaleSnap), t.search("Y") !== -1 && (s.scale.y = Math.round(s.scale.y / this.scaleSnap) * this.scaleSnap || this.scaleSnap), t.search("Z") !== -1 && (s.scale.z = Math.round(s.scale.z / this.scaleSnap) * this.scaleSnap || this.scaleSnap));
6495
+ bt.copy(this.pointStart), Se.copy(this.pointEnd), bt.applyQuaternion(this._worldQuaternionInv), Se.applyQuaternion(this._worldQuaternionInv), Se.divide(bt), t.search("X") === -1 && (Se.x = 1), t.search("Y") === -1 && (Se.y = 1), t.search("Z") === -1 && (Se.z = 1);
6496
+ s.scale.copy(this._scaleStart).multiply(Se), this.scaleSnap && (t.search("X") !== -1 && (s.scale.x = Math.round(s.scale.x / this.scaleSnap) * this.scaleSnap || this.scaleSnap), t.search("Y") !== -1 && (s.scale.y = Math.round(s.scale.y / this.scaleSnap) * this.scaleSnap || this.scaleSnap), t.search("Z") !== -1 && (s.scale.z = Math.round(s.scale.z / this.scaleSnap) * this.scaleSnap || this.scaleSnap));
6496
6497
  } else if (e === "rotate") {
6497
6498
  this._offset.copy(this.pointEnd).sub(this.pointStart);
6498
6499
  const o = 20 / this.worldPosition.distanceTo(bt.setFromMatrixPosition(this.camera.matrixWorld));
@@ -6588,7 +6589,7 @@ function fn(c, i, t) {
6588
6589
  return e[s];
6589
6590
  return !1;
6590
6591
  }
6591
- const os = new Lo(), mt = new Q(0, 1, 0), Pr = new Q(0, 0, 0), wr = new Ee(), as = new Ie(), ds = new Ie(), he = new Q(), Mr = new Ee(), yi = new Q(1, 0, 0), xe = new Q(0, 1, 0), Li = new Q(0, 0, 1), cs = new Q(), Fi = new Q(), Si = new Q();
6592
+ const as = new Lo(), mt = new Q(0, 1, 0), Pr = new Q(0, 0, 0), wr = new pe(), cs = new de(), Es = new de(), ue = new Q(), Mr = new pe(), Li = new Q(1, 0, 0), xe = new Q(0, 1, 0), _i = new Q(0, 0, 1), ls = new Q(), Si = new Q(), Oi = new Q();
6592
6593
  class Ac extends In {
6593
6594
  constructor() {
6594
6595
  super(), this.isTransformControlsGizmo = !0, this.type = "TransformControlsGizmo";
@@ -6635,7 +6636,7 @@ class Ac extends In {
6635
6636
  const m = new Vt(75e-4, 75e-4, 0.5, 3);
6636
6637
  m.translate(0, 0.25, 0);
6637
6638
  function F(v, j) {
6638
- const V = new ui(v, 75e-4, 3, 64, j * Math.PI * 2);
6639
+ const V = new fi(v, 75e-4, 3, 64, j * Math.PI * 2);
6639
6640
  return V.rotateY(Math.PI / 2), V.rotateX(Math.PI / 2), V;
6640
6641
  }
6641
6642
  function R() {
@@ -6659,7 +6660,7 @@ class Ac extends In {
6659
6660
  [new rt(m, o), null, [Math.PI / 2, 0, 0]]
6660
6661
  ],
6661
6662
  XYZ: [
6662
- [new rt(new Vi(0.1, 0), f.clone()), [0, 0, 0]]
6663
+ [new rt(new Yi(0.1, 0), f.clone()), [0, 0, 0]]
6663
6664
  ],
6664
6665
  XY: [
6665
6666
  [new rt(new Ut(0.15, 0.15, 0.01), h.clone()), [0.15, 0.15, 0]]
@@ -6684,7 +6685,7 @@ class Ac extends In {
6684
6685
  [new rt(new Vt(0.2, 0, 0.6, 4), e), [0, 0, -0.3], [-Math.PI / 2, 0, 0]]
6685
6686
  ],
6686
6687
  XYZ: [
6687
- [new rt(new Vi(0.2, 0), e)]
6688
+ [new rt(new Yi(0.2, 0), e)]
6688
6689
  ],
6689
6690
  XY: [
6690
6691
  [new rt(new Ut(0.2, 0.2, 0.01), e), [0.15, 0.15, 0]]
@@ -6697,22 +6698,22 @@ class Ac extends In {
6697
6698
  ]
6698
6699
  }, y = {
6699
6700
  START: [
6700
- [new rt(new Vi(0.01, 2), s), null, null, null, "helper"]
6701
+ [new rt(new Yi(0.01, 2), s), null, null, null, "helper"]
6701
6702
  ],
6702
6703
  END: [
6703
- [new rt(new Vi(0.01, 2), s), null, null, null, "helper"]
6704
+ [new rt(new Yi(0.01, 2), s), null, null, null, "helper"]
6704
6705
  ],
6705
6706
  DELTA: [
6706
- [new Se(R(), s), null, null, null, "helper"]
6707
+ [new Ae(R(), s), null, null, null, "helper"]
6707
6708
  ],
6708
6709
  X: [
6709
- [new Se(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6710
+ [new Ae(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6710
6711
  ],
6711
6712
  Y: [
6712
- [new Se(p, s.clone()), [0, -1e3, 0], [0, 0, Math.PI / 2], [1e6, 1, 1], "helper"]
6713
+ [new Ae(p, s.clone()), [0, -1e3, 0], [0, 0, Math.PI / 2], [1e6, 1, 1], "helper"]
6713
6714
  ],
6714
6715
  Z: [
6715
- [new Se(p, s.clone()), [0, 0, -1e3], [0, -Math.PI / 2, 0], [1e6, 1, 1], "helper"]
6716
+ [new Ae(p, s.clone()), [0, 0, -1e3], [0, -Math.PI / 2, 0], [1e6, 1, 1], "helper"]
6716
6717
  ]
6717
6718
  }, M = {
6718
6719
  XYZE: [
@@ -6732,23 +6733,23 @@ class Ac extends In {
6732
6733
  ]
6733
6734
  }, L = {
6734
6735
  AXIS: [
6735
- [new Se(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6736
+ [new Ae(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6736
6737
  ]
6737
6738
  }, b = {
6738
6739
  XYZE: [
6739
6740
  [new rt(new Po(0.25, 10, 8), e)]
6740
6741
  ],
6741
6742
  X: [
6742
- [new rt(new ui(0.5, 0.1, 4, 24), e), [0, 0, 0], [0, -Math.PI / 2, -Math.PI / 2]]
6743
+ [new rt(new fi(0.5, 0.1, 4, 24), e), [0, 0, 0], [0, -Math.PI / 2, -Math.PI / 2]]
6743
6744
  ],
6744
6745
  Y: [
6745
- [new rt(new ui(0.5, 0.1, 4, 24), e), [0, 0, 0], [Math.PI / 2, 0, 0]]
6746
+ [new rt(new fi(0.5, 0.1, 4, 24), e), [0, 0, 0], [Math.PI / 2, 0, 0]]
6746
6747
  ],
6747
6748
  Z: [
6748
- [new rt(new ui(0.5, 0.1, 4, 24), e), [0, 0, 0], [0, 0, -Math.PI / 2]]
6749
+ [new rt(new fi(0.5, 0.1, 4, 24), e), [0, 0, 0], [0, 0, -Math.PI / 2]]
6749
6750
  ],
6750
6751
  E: [
6751
- [new rt(new ui(0.75, 0.1, 2, 24), e)]
6752
+ [new rt(new fi(0.75, 0.1, 2, 24), e)]
6752
6753
  ]
6753
6754
  }, G = {
6754
6755
  X: [
@@ -6805,13 +6806,13 @@ class Ac extends In {
6805
6806
  ]
6806
6807
  }, w = {
6807
6808
  X: [
6808
- [new Se(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6809
+ [new Ae(p, s.clone()), [-1e3, 0, 0], null, [1e6, 1, 1], "helper"]
6809
6810
  ],
6810
6811
  Y: [
6811
- [new Se(p, s.clone()), [0, -1e3, 0], [0, 0, Math.PI / 2], [1e6, 1, 1], "helper"]
6812
+ [new Ae(p, s.clone()), [0, -1e3, 0], [0, 0, Math.PI / 2], [1e6, 1, 1], "helper"]
6812
6813
  ],
6813
6814
  Z: [
6814
- [new Se(p, s.clone()), [0, 0, -1e3], [0, -Math.PI / 2, 0], [1e6, 1, 1], "helper"]
6815
+ [new Ae(p, s.clone()), [0, 0, -1e3], [0, -Math.PI / 2, 0], [1e6, 1, 1], "helper"]
6815
6816
  ]
6816
6817
  };
6817
6818
  function g(v) {
@@ -6829,7 +6830,7 @@ class Ac extends In {
6829
6830
  }
6830
6831
  // updateMatrixWorld will update transformations and appearance of individual handles
6831
6832
  updateMatrixWorld(i) {
6832
- const e = (this.mode === "scale" ? "local" : this.space) === "local" ? this.worldQuaternion : ds;
6833
+ const e = (this.mode === "scale" ? "local" : this.space) === "local" ? this.worldQuaternion : Es;
6833
6834
  this.gizmo.translate.visible = this.mode === "translate", this.gizmo.rotate.visible = this.mode === "rotate", this.gizmo.scale.visible = this.mode === "scale", this.helper.translate.visible = this.mode === "translate", this.helper.rotate.visible = this.mode === "rotate", this.helper.scale.visible = this.mode === "scale";
6834
6835
  let s = [];
6835
6836
  s = s.concat(this.picker[this.mode].children), s = s.concat(this.gizmo[this.mode].children), s = s.concat(this.helper[this.mode].children);
@@ -6838,10 +6839,10 @@ class Ac extends In {
6838
6839
  r.visible = !0, r.rotation.set(0, 0, 0), r.position.copy(this.worldPosition);
6839
6840
  let o;
6840
6841
  if (this.camera.isOrthographicCamera ? o = (this.camera.top - this.camera.bottom) / this.camera.zoom : o = this.worldPosition.distanceTo(this.cameraPosition) * Math.min(1.9 * Math.tan(Math.PI * this.camera.fov / 360) / this.camera.zoom, 7), r.scale.set(1, 1, 1).multiplyScalar(o * this.size / 4), r.tag === "helper") {
6841
- r.visible = !1, r.name === "AXIS" ? (r.visible = !!this.axis, this.axis === "X" && (Ot.setFromEuler(os.set(0, 0, 0)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(yi).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "Y" && (Ot.setFromEuler(os.set(0, 0, Math.PI / 2)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "Z" && (Ot.setFromEuler(os.set(0, Math.PI / 2, 0)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "XYZE" && (Ot.setFromEuler(os.set(0, Math.PI / 2, 0)), mt.copy(this.rotationAxis), r.quaternion.setFromRotationMatrix(wr.lookAt(Pr, mt, xe)), r.quaternion.multiply(Ot), r.visible = this.dragging), this.axis === "E" && (r.visible = !1)) : r.name === "START" ? (r.position.copy(this.worldPositionStart), r.visible = this.dragging) : r.name === "END" ? (r.position.copy(this.worldPosition), r.visible = this.dragging) : r.name === "DELTA" ? (r.position.copy(this.worldPositionStart), r.quaternion.copy(this.worldQuaternionStart), bt.set(1e-10, 1e-10, 1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1), bt.applyQuaternion(this.worldQuaternionStart.clone().invert()), r.scale.copy(bt), r.visible = this.dragging) : (r.quaternion.copy(e), this.dragging ? r.position.copy(this.worldPositionStart) : r.position.copy(this.worldPosition), this.axis && (r.visible = this.axis.search(r.name) !== -1));
6842
+ r.visible = !1, r.name === "AXIS" ? (r.visible = !!this.axis, this.axis === "X" && (Ot.setFromEuler(as.set(0, 0, 0)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "Y" && (Ot.setFromEuler(as.set(0, 0, Math.PI / 2)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "Z" && (Ot.setFromEuler(as.set(0, Math.PI / 2, 0)), r.quaternion.copy(e).multiply(Ot), Math.abs(mt.copy(_i).applyQuaternion(e).dot(this.eye)) > 0.9 && (r.visible = !1)), this.axis === "XYZE" && (Ot.setFromEuler(as.set(0, Math.PI / 2, 0)), mt.copy(this.rotationAxis), r.quaternion.setFromRotationMatrix(wr.lookAt(Pr, mt, xe)), r.quaternion.multiply(Ot), r.visible = this.dragging), this.axis === "E" && (r.visible = !1)) : r.name === "START" ? (r.position.copy(this.worldPositionStart), r.visible = this.dragging) : r.name === "END" ? (r.position.copy(this.worldPosition), r.visible = this.dragging) : r.name === "DELTA" ? (r.position.copy(this.worldPositionStart), r.quaternion.copy(this.worldQuaternionStart), bt.set(1e-10, 1e-10, 1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1), bt.applyQuaternion(this.worldQuaternionStart.clone().invert()), r.scale.copy(bt), r.visible = this.dragging) : (r.quaternion.copy(e), this.dragging ? r.position.copy(this.worldPositionStart) : r.position.copy(this.worldPosition), this.axis && (r.visible = this.axis.search(r.name) !== -1));
6842
6843
  continue;
6843
6844
  }
6844
- r.quaternion.copy(e), this.mode === "translate" || this.mode === "scale" ? (r.name === "X" && Math.abs(mt.copy(yi).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "Y" && Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "Z" && Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "XY" && Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "YZ" && Math.abs(mt.copy(yi).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "XZ" && Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1)) : this.mode === "rotate" && (as.copy(e), mt.copy(this.eye).applyQuaternion(Ot.copy(e).invert()), r.name.search("E") !== -1 && r.quaternion.setFromRotationMatrix(wr.lookAt(this.eye, Pr, xe)), r.name === "X" && (Ot.setFromAxisAngle(yi, Math.atan2(-mt.y, mt.z)), Ot.multiplyQuaternions(as, Ot), r.quaternion.copy(Ot)), r.name === "Y" && (Ot.setFromAxisAngle(xe, Math.atan2(mt.x, mt.z)), Ot.multiplyQuaternions(as, Ot), r.quaternion.copy(Ot)), r.name === "Z" && (Ot.setFromAxisAngle(Li, Math.atan2(mt.y, mt.x)), Ot.multiplyQuaternions(as, Ot), r.quaternion.copy(Ot))), r.visible = r.visible && (r.name.indexOf("X") === -1 || this.showX), r.visible = r.visible && (r.name.indexOf("Y") === -1 || this.showY), r.visible = r.visible && (r.name.indexOf("Z") === -1 || this.showZ), r.visible = r.visible && (r.name.indexOf("E") === -1 || this.showX && this.showY && this.showZ), r.material._color = r.material._color || r.material.color.clone(), r.material._opacity = r.material._opacity || r.material.opacity, r.material.color.copy(r.material._color), r.material.opacity = r.material._opacity, this.enabled && this.axis && (r.name === this.axis || this.axis.split("").some(function(a) {
6845
+ r.quaternion.copy(e), this.mode === "translate" || this.mode === "scale" ? (r.name === "X" && Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "Y" && Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "Z" && Math.abs(mt.copy(_i).applyQuaternion(e).dot(this.eye)) > 0.99 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "XY" && Math.abs(mt.copy(_i).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "YZ" && Math.abs(mt.copy(Li).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1), r.name === "XZ" && Math.abs(mt.copy(xe).applyQuaternion(e).dot(this.eye)) < 0.2 && (r.scale.set(1e-10, 1e-10, 1e-10), r.visible = !1)) : this.mode === "rotate" && (cs.copy(e), mt.copy(this.eye).applyQuaternion(Ot.copy(e).invert()), r.name.search("E") !== -1 && r.quaternion.setFromRotationMatrix(wr.lookAt(this.eye, Pr, xe)), r.name === "X" && (Ot.setFromAxisAngle(Li, Math.atan2(-mt.y, mt.z)), Ot.multiplyQuaternions(cs, Ot), r.quaternion.copy(Ot)), r.name === "Y" && (Ot.setFromAxisAngle(xe, Math.atan2(mt.x, mt.z)), Ot.multiplyQuaternions(cs, Ot), r.quaternion.copy(Ot)), r.name === "Z" && (Ot.setFromAxisAngle(_i, Math.atan2(mt.y, mt.x)), Ot.multiplyQuaternions(cs, Ot), r.quaternion.copy(Ot))), r.visible = r.visible && (r.name.indexOf("X") === -1 || this.showX), r.visible = r.visible && (r.name.indexOf("Y") === -1 || this.showY), r.visible = r.visible && (r.name.indexOf("Z") === -1 || this.showZ), r.visible = r.visible && (r.name.indexOf("E") === -1 || this.showX && this.showY && this.showZ), r.material._color = r.material._color || r.material.color.clone(), r.material._opacity = r.material._opacity || r.material.opacity, r.material.color.copy(r.material._color), r.material.opacity = r.material._opacity, this.enabled && this.axis && (r.name === this.axis || this.axis.split("").some(function(a) {
6845
6846
  return r.name === a;
6846
6847
  })) && (r.material.color.setHex(16776960), r.material.opacity = 1);
6847
6848
  }
@@ -6857,39 +6858,39 @@ class Fc extends rt {
6857
6858
  }
6858
6859
  updateMatrixWorld(i) {
6859
6860
  let t = this.space;
6860
- switch (this.position.copy(this.worldPosition), this.mode === "scale" && (t = "local"), cs.copy(yi).applyQuaternion(t === "local" ? this.worldQuaternion : ds), Fi.copy(xe).applyQuaternion(t === "local" ? this.worldQuaternion : ds), Si.copy(Li).applyQuaternion(t === "local" ? this.worldQuaternion : ds), mt.copy(Fi), this.mode) {
6861
+ switch (this.position.copy(this.worldPosition), this.mode === "scale" && (t = "local"), ls.copy(Li).applyQuaternion(t === "local" ? this.worldQuaternion : Es), Si.copy(xe).applyQuaternion(t === "local" ? this.worldQuaternion : Es), Oi.copy(_i).applyQuaternion(t === "local" ? this.worldQuaternion : Es), mt.copy(Si), this.mode) {
6861
6862
  case "translate":
6862
6863
  case "scale":
6863
6864
  switch (this.axis) {
6864
6865
  case "X":
6865
- mt.copy(this.eye).cross(cs), he.copy(cs).cross(mt);
6866
+ mt.copy(this.eye).cross(ls), ue.copy(ls).cross(mt);
6866
6867
  break;
6867
6868
  case "Y":
6868
- mt.copy(this.eye).cross(Fi), he.copy(Fi).cross(mt);
6869
+ mt.copy(this.eye).cross(Si), ue.copy(Si).cross(mt);
6869
6870
  break;
6870
6871
  case "Z":
6871
- mt.copy(this.eye).cross(Si), he.copy(Si).cross(mt);
6872
+ mt.copy(this.eye).cross(Oi), ue.copy(Oi).cross(mt);
6872
6873
  break;
6873
6874
  case "XY":
6874
- he.copy(Si);
6875
+ ue.copy(Oi);
6875
6876
  break;
6876
6877
  case "YZ":
6877
- he.copy(cs);
6878
+ ue.copy(ls);
6878
6879
  break;
6879
6880
  case "XZ":
6880
- mt.copy(Si), he.copy(Fi);
6881
+ mt.copy(Oi), ue.copy(Si);
6881
6882
  break;
6882
6883
  case "XYZ":
6883
6884
  case "E":
6884
- he.set(0, 0, 0);
6885
+ ue.set(0, 0, 0);
6885
6886
  break;
6886
6887
  }
6887
6888
  break;
6888
6889
  case "rotate":
6889
6890
  default:
6890
- he.set(0, 0, 0);
6891
+ ue.set(0, 0, 0);
6891
6892
  }
6892
- he.length() === 0 ? this.quaternion.copy(this.cameraQuaternion) : (Mr.lookAt(bt.set(0, 0, 0), he, mt), this.quaternion.setFromRotationMatrix(Mr)), super.updateMatrixWorld(i);
6893
+ ue.length() === 0 ? this.quaternion.copy(this.cameraQuaternion) : (Mr.lookAt(bt.set(0, 0, 0), ue, mt), this.quaternion.setFromRotationMatrix(Mr)), super.updateMatrixWorld(i);
6893
6894
  }
6894
6895
  }
6895
6896
  class Vn {
@@ -7117,7 +7118,7 @@ class Sc extends Ye {
7117
7118
  this._config.size.value = t, this._component.size = t;
7118
7119
  }
7119
7120
  }
7120
- const Mi = class Mi extends At {
7121
+ const si = class si extends At {
7121
7122
  constructor(t) {
7122
7123
  super(t);
7123
7124
  /** {@link Configurable.onSetup} */
@@ -7179,7 +7180,12 @@ const Mi = class Mi extends At {
7179
7180
  */
7180
7181
  C(this, "list", []);
7181
7182
  /** {@link Configurable.config} */
7182
- C(this, "config", new Sc(this, this.components, "Clipper"));
7183
+ C(this, "config", new Sc(
7184
+ this,
7185
+ this.components,
7186
+ "Clipper",
7187
+ si.uuid
7188
+ ));
7183
7189
  C(this, "_defaultConfig", {
7184
7190
  color: new D.Color(12255487),
7185
7191
  opacity: 0.2,
@@ -7201,7 +7207,7 @@ const Mi = class Mi extends At {
7201
7207
  C(this, "_onEndDragging", () => {
7202
7208
  this.onAfterDrag.trigger();
7203
7209
  });
7204
- this.components.add(Mi.uuid, this), t.get(Kt).list.add(this.config);
7210
+ this.components.add(si.uuid, this);
7205
7211
  }
7206
7212
  /** {@link Component.enabled} */
7207
7213
  get enabled() {
@@ -7246,14 +7252,14 @@ const Mi = class Mi extends At {
7246
7252
  }
7247
7253
  /** {@link Disposable.dispose} */
7248
7254
  dispose() {
7249
- this._enabled = !1, this.components.get(Kt).list.delete(this.config);
7255
+ this._enabled = !1, this.components.get(Ve).list.delete(this.config.uuid);
7250
7256
  for (const e of this.list)
7251
7257
  e.dispose();
7252
- this.list.length = 0, this._material.dispose(), this.onBeforeCreate.reset(), this.onBeforeCancel.reset(), this.onBeforeDelete.reset(), this.onBeforeDrag.reset(), this.onAfterCreate.reset(), this.onAfterCancel.reset(), this.onAfterDelete.reset(), this.onAfterDrag.reset(), this.onDisposed.trigger(Mi.uuid), this.onDisposed.reset();
7258
+ this.list.length = 0, this._material.dispose(), this.onBeforeCreate.reset(), this.onBeforeCancel.reset(), this.onBeforeDelete.reset(), this.onBeforeDrag.reset(), this.onAfterCreate.reset(), this.onAfterCancel.reset(), this.onAfterDelete.reset(), this.onAfterDrag.reset(), this.onDisposed.trigger(si.uuid), this.onDisposed.reset();
7253
7259
  }
7254
7260
  /** {@link Createable.create} */
7255
7261
  create(t) {
7256
- const n = this.components.get(oi).get(t).castRay();
7262
+ const n = this.components.get(ai).get(t).castRay();
7257
7263
  return n ? this.createPlaneFromIntersection(t, n) : null;
7258
7264
  }
7259
7265
  /**
@@ -7307,7 +7313,7 @@ const Mi = class Mi extends At {
7307
7313
  }
7308
7314
  }
7309
7315
  pickPlane(t) {
7310
- const s = this.components.get(oi).get(t), n = this.getAllPlaneMeshes(), r = s.castRay(n);
7316
+ const s = this.components.get(ai).get(t), n = this.getAllPlaneMeshes(), r = s.castRay(n);
7311
7317
  if (r) {
7312
7318
  const o = r.object;
7313
7319
  return this.list.find((a) => a.meshes.includes(o));
@@ -7353,7 +7359,7 @@ const Mi = class Mi extends At {
7353
7359
  return n.onDraggingStarted.add(this._onStartDragging), n.onDraggingEnded.add(this._onEndDragging), this.list.push(n), this.onAfterCreate.trigger(n), n;
7354
7360
  }
7355
7361
  updateMaterialsAndPlanes() {
7356
- const t = this.components.get(Cs);
7362
+ const t = this.components.get(Ts);
7357
7363
  for (const [e, s] of t.list) {
7358
7364
  if (!s.renderer)
7359
7365
  continue;
@@ -7373,8 +7379,8 @@ const Mi = class Mi extends At {
7373
7379
  * A unique identifier for the component.
7374
7380
  * This UUID is used to register the component within the Components system.
7375
7381
  */
7376
- C(Mi, "uuid", "66290bc5-18c4-4cd1-9379-2e17a0617611");
7377
- let Sn = Mi;
7382
+ C(si, "uuid", "66290bc5-18c4-4cd1-9379-2e17a0617611");
7383
+ let Sn = si;
7378
7384
  class Oc {
7379
7385
  constructor(i) {
7380
7386
  /** {@link NavigationMode.enabled} */
@@ -7520,7 +7526,7 @@ class Lc {
7520
7526
  i.position.copy(t.position), i.quaternion.copy(t.quaternion), this._component.controls.mouseButtons.wheel = vt.ACTION.DOLLY, this.matchOrthoDistanceEnabled ? this._component.controls.distance = this.getDistance() : this._component.controls.distance = this._previousDistance, await this._component.controls.zoomTo(1), i.updateProjectionMatrix(), this._component.controls.camera = i, this.camera = i, this.current = "Perspective";
7521
7527
  }
7522
7528
  }
7523
- class _c extends vi {
7529
+ class _c extends Ui {
7524
7530
  constructor(t) {
7525
7531
  super(t);
7526
7532
  /**
@@ -7891,7 +7897,7 @@ class gh {
7891
7897
  return e;
7892
7898
  }
7893
7899
  }
7894
- const Ts = {
7900
+ const ms = {
7895
7901
  950732822: "IFCURIREFERENCE",
7896
7902
  4075327185: "IFCTIME",
7897
7903
  1209108979: "IFCTEMPERATURERATEOFCHANGEMEASURE",
@@ -9033,7 +9039,7 @@ const Ts = {
9033
9039
  1390159747: "FILE_NAME",
9034
9040
  1109904537: "FILE_SCHEMA"
9035
9041
  };
9036
- class ni {
9042
+ class ri {
9037
9043
  static async getUnits(i) {
9038
9044
  var r, o, a;
9039
9045
  const { IFCUNITASSIGNMENT: t } = z, e = await i.getAllPropertiesOfType(t);
@@ -9110,7 +9116,7 @@ class ni {
9110
9116
  return r;
9111
9117
  }
9112
9118
  static async getQsetRel(i, t) {
9113
- return ni.getPsetRel(i, t);
9119
+ return ri.getPsetRel(i, t);
9114
9120
  }
9115
9121
  static async getEntityName(i, t) {
9116
9122
  var r;
@@ -9129,7 +9135,7 @@ class ni {
9129
9135
  return s === null || e[s] === void 0 || e[s] === null ? n = null : n = e[s].value, { key: s, value: n };
9130
9136
  }
9131
9137
  static isRel(i) {
9132
- return Ts[i].startsWith("IFCREL");
9138
+ return ms[i].startsWith("IFCREL");
9133
9139
  }
9134
9140
  static async attributeExists(i, t, e) {
9135
9141
  const s = await i.getProperties(t);
@@ -10722,12 +10728,12 @@ const co = /* @__PURE__ */ new Set([
10722
10728
  2513912981,
10723
10729
  2830218821,
10724
10730
  427810014
10725
- ]), ys = class ys extends At {
10731
+ ]), Ls = class Ls extends At {
10726
10732
  constructor(t) {
10727
10733
  super(t);
10728
10734
  /** {@link Component.enabled} */
10729
10735
  C(this, "enabled", !0);
10730
- t.add(ys.uuid, this);
10736
+ t.add(Ls.uuid, this);
10731
10737
  }
10732
10738
  /**
10733
10739
  * Exports all the properties of an IFC into an array of JS objects.
@@ -10768,8 +10774,8 @@ const co = /* @__PURE__ */ new Set([
10768
10774
  * A unique identifier for the component.
10769
10775
  * This UUID is used to register the component within the Components system.
10770
10776
  */
10771
- C(ys, "uuid", "b32c4332-cd67-436e-ba7f-196646c7a635");
10772
- let On = ys;
10777
+ C(Ls, "uuid", "b32c4332-cd67-436e-ba7f-196646c7a635");
10778
+ let On = Ls;
10773
10779
  const Di = class Di extends At {
10774
10780
  constructor(t) {
10775
10781
  super(t);
@@ -11003,7 +11009,7 @@ const Di = class Di extends At {
11003
11009
  }
11004
11010
  async autoSetWasm() {
11005
11011
  const t = await fetch(
11006
- `https://unpkg.com/@thatopen/components@${ps.release}/package.json`
11012
+ `https://unpkg.com/@thatopen/components@${Cs.release}/package.json`
11007
11013
  );
11008
11014
  if (!t.ok) {
11009
11015
  console.warn(
@@ -11072,7 +11078,7 @@ const Dc = {
11072
11078
  [z.IFCRELDEFINESBYPROPERTIES]: "IfcRelDefinesByProperties",
11073
11079
  [z.IFCRELDEFINESBYTYPE]: "IfcRelDefinesByType",
11074
11080
  [z.IFCRELDEFINESBYTEMPLATE]: "IfcRelDefinesByTemplate"
11075
- }, _e = class _e extends At {
11081
+ }, ye = class ye extends At {
11076
11082
  constructor(t) {
11077
11083
  super(t);
11078
11084
  /** {@link Disposable.onDisposed} */
@@ -11122,11 +11128,11 @@ const Dc = {
11122
11128
  * Map of changed entities in the model.
11123
11129
  */
11124
11130
  C(this, "changeMap", {});
11125
- this.components.add(_e.uuid, this);
11131
+ this.components.add(ye.uuid, this);
11126
11132
  }
11127
11133
  /** {@link Disposable.dispose} */
11128
11134
  dispose() {
11129
- this.selectedModel = void 0, this.attributeListeners = {}, this.changeMap = {}, this.onElementToPset.reset(), this.onPropToPset.reset(), this.onPsetRemoved.reset(), this.onDataChanged.reset(), this.onDisposed.trigger(_e.uuid), this.onDisposed.reset();
11135
+ this.selectedModel = void 0, this.attributeListeners = {}, this.changeMap = {}, this.onElementToPset.reset(), this.onPropToPset.reset(), this.onPsetRemoved.reset(), this.onDataChanged.reset(), this.onDisposed.trigger(ye.uuid), this.onDisposed.reset();
11130
11136
  }
11131
11137
  /**
11132
11138
  * Static method to retrieve the IFC schema from a given model.
@@ -11172,7 +11178,7 @@ const Dc = {
11172
11178
  * @throws Will throw an error if no OwnerHistory is found in the model.
11173
11179
  */
11174
11180
  async newPset(t, e, s) {
11175
- const n = _e.getIFCSchema(t), { ownerHistoryHandle: r } = await this.getOwnerHistory(t), o = this.newGUID(t), a = new z[n].IfcLabel(e), l = s ? new z[n].IfcText(s) : null, h = new z[n].IfcPropertySet(
11181
+ const n = ye.getIFCSchema(t), { ownerHistoryHandle: r } = await this.getOwnerHistory(t), o = this.newGUID(t), a = new z[n].IfcLabel(e), l = s ? new z[n].IfcText(s) : null, h = new z[n].IfcPropertySet(
11176
11182
  o,
11177
11183
  r,
11178
11184
  a,
@@ -11207,7 +11213,7 @@ const Dc = {
11207
11213
  const n = await t.getProperties(s);
11208
11214
  if ((n == null ? void 0 : n.type) !== z.IFCPROPERTYSET)
11209
11215
  continue;
11210
- const r = await ni.getPsetRel(t, s);
11216
+ const r = await ri.getPsetRel(t, s);
11211
11217
  if (r && (await t.setProperties(r, null), this.registerChange(t, r)), n) {
11212
11218
  for (const o of n.HasProperties)
11213
11219
  await t.setProperties(o.value, null);
@@ -11334,7 +11340,7 @@ const Dc = {
11334
11340
  const o = t.ifcMetadata.schema, a = Dc[r], l = z[o][r];
11335
11341
  if (!(a && l))
11336
11342
  throw new Error(`IfcPropertiesManager: ${r} is unsoported.`);
11337
- const h = [new z[o].IfcGloballyUniqueId(Ce.create())], { related: f, relating: I } = a, d = [...new Set(n)].map(
11343
+ const h = [new z[o].IfcGloballyUniqueId(oe.create())], { related: f, relating: I } = a, d = [...new Set(n)].map(
11338
11344
  (p) => new z.Handle(p)
11339
11345
  ), E = (p, m) => {
11340
11346
  for (let F = p; F < m - 1; F++)
@@ -11430,8 +11436,8 @@ const Dc = {
11430
11436
  return t.ifcMetadata.maxExpressID++, t.ifcMetadata.maxExpressID;
11431
11437
  }
11432
11438
  newGUID(t) {
11433
- const e = _e.getIFCSchema(t);
11434
- return new z[e].IfcGloballyUniqueId(Ce.create());
11439
+ const e = ye.getIFCSchema(t);
11440
+ return new z[e].IfcGloballyUniqueId(oe.create());
11435
11441
  }
11436
11442
  async getOwnerHistory(t) {
11437
11443
  const e = await t.getAllPropertiesOfType(
@@ -11448,7 +11454,7 @@ const Dc = {
11448
11454
  this.changeMap[t.uuid].add(s), this.onDataChanged.trigger({ model: t, expressID: s });
11449
11455
  }
11450
11456
  async newSingleProperty(t, e, s, n) {
11451
- const r = _e.getIFCSchema(t), o = new z[r].IfcIdentifier(s), a = new z[r][e](n), l = new z[r].IfcPropertySingleValue(
11457
+ const r = ye.getIFCSchema(t), o = new z[r].IfcIdentifier(s), a = new z[r][e](n), l = new z[r].IfcPropertySingleValue(
11452
11458
  o,
11453
11459
  null,
11454
11460
  a,
@@ -11461,8 +11467,8 @@ const Dc = {
11461
11467
  * A unique identifier for the component.
11462
11468
  * This UUID is used to register the component within the Components system.
11463
11469
  */
11464
- C(_e, "uuid", "58c2d9f0-183c-48d6-a402-dfcf5b9a34df");
11465
- let yn = _e;
11470
+ C(ye, "uuid", "58c2d9f0-183c-48d6-a402-dfcf5b9a34df");
11471
+ let yn = ye;
11466
11472
  const bi = class bi extends At {
11467
11473
  constructor(t) {
11468
11474
  super(t);
@@ -11873,10 +11879,10 @@ const bi = class bi extends At {
11873
11879
  if (!(h === o || f === o))
11874
11880
  return;
11875
11881
  let I = this._changeMap[t.uuid];
11876
- I || (I = new pe(), this._changeMap[t.uuid] = I);
11882
+ I || (I = new re(), this._changeMap[t.uuid] = I);
11877
11883
  const u = f === o ? [e] : n, d = h === o ? [e] : n;
11878
11884
  let E = I.get(r);
11879
- E || (E = new pe(), E.onItemSet.add(
11885
+ E || (E = new re(), E.onItemSet.add(
11880
11886
  () => this.onEntitiesRelated.trigger({
11881
11887
  invAttribute: o,
11882
11888
  relType: r,
@@ -11893,7 +11899,7 @@ const bi = class bi extends At {
11893
11899
  ), I.set(r, E));
11894
11900
  for (const T of u) {
11895
11901
  let p = E.get(T);
11896
- p || (p = { related: new Re() }, E.set(T, p)), p.related.add(...d);
11902
+ p || (p = { related: new Pe() }, E.set(T, p)), p.related.add(...d);
11897
11903
  }
11898
11904
  for (const T of u) {
11899
11905
  let p = a.get(T);
@@ -11949,7 +11955,7 @@ const bi = class bi extends At {
11949
11955
  */
11950
11956
  C(bi, "uuid", "23a889ab-83b3-44a4-8bee-ead83438370b");
11951
11957
  let kt = bi;
11952
- const Ls = class Ls extends At {
11958
+ const _s = class _s extends At {
11953
11959
  constructor(t) {
11954
11960
  super(t);
11955
11961
  /** {@link Disposable.onDisposed} */
@@ -11966,18 +11972,18 @@ const Ls = class Ls extends At {
11966
11972
  * DataMap containing all loaded fragments.
11967
11973
  * The key is the fragment's unique identifier, and the value is the fragment itself.
11968
11974
  */
11969
- C(this, "list", new pe());
11975
+ C(this, "list", new re());
11970
11976
  /**
11971
11977
  * DataMap containing all loaded fragment groups.
11972
11978
  * The key is the group's unique identifier, and the value is the group itself.
11973
11979
  */
11974
- C(this, "groups", new pe());
11980
+ C(this, "groups", new re());
11975
11981
  C(this, "baseCoordinationModel", "");
11976
11982
  C(this, "baseCoordinationMatrix", new D.Matrix4());
11977
11983
  /** {@link Component.enabled} */
11978
11984
  C(this, "enabled", !0);
11979
11985
  C(this, "_loader", new Do());
11980
- this.components.add(Ls.uuid, this);
11986
+ this.components.add(_s.uuid, this);
11981
11987
  }
11982
11988
  /**
11983
11989
  * Getter for the meshes of all fragments in the FragmentsManager.
@@ -12173,13 +12179,13 @@ const Ls = class Ls extends At {
12173
12179
  * A unique identifier for the component.
12174
12180
  * This UUID is used to register the component within the Components system.
12175
12181
  */
12176
- C(Ls, "uuid", "fef46874-46a3-461b-8c44-2922ab77c806");
12177
- let Tt = Ls;
12178
- var ls = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
12182
+ C(_s, "uuid", "fef46874-46a3-461b-8c44-2922ab77c806");
12183
+ let Tt = _s;
12184
+ var hs = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
12179
12185
  function vc(c) {
12180
12186
  return c && c.__esModule && Object.prototype.hasOwnProperty.call(c, "default") ? c.default : c;
12181
12187
  }
12182
- function hs(c) {
12188
+ function us(c) {
12183
12189
  throw new Error('Could not dynamically require "' + c + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
12184
12190
  }
12185
12191
  var lo = { exports: {} };
@@ -12202,7 +12208,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
12202
12208
  function r(l, h) {
12203
12209
  if (!s[l]) {
12204
12210
  if (!e[l]) {
12205
- var f = typeof hs == "function" && hs;
12211
+ var f = typeof us == "function" && us;
12206
12212
  if (!h && f)
12207
12213
  return f(l, !0);
12208
12214
  if (o)
@@ -12218,7 +12224,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
12218
12224
  }
12219
12225
  return s[l].exports;
12220
12226
  }
12221
- for (var o = typeof hs == "function" && hs, a = 0; a < n.length; a++)
12227
+ for (var o = typeof us == "function" && us, a = 0; a < n.length; a++)
12222
12228
  r(n[a]);
12223
12229
  return r;
12224
12230
  }({ 1: [function(t, e, s) {
@@ -13354,7 +13360,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
13354
13360
  e.exports = function(E) {
13355
13361
  u.push(E) !== 1 || o || r();
13356
13362
  };
13357
- }).call(this, typeof ls < "u" ? ls : typeof self < "u" ? self : typeof window < "u" ? window : {});
13363
+ }).call(this, typeof hs < "u" ? hs : typeof self < "u" ? self : typeof window < "u" ? window : {});
13358
13364
  }, {}], 37: [function(t, e, s) {
13359
13365
  var n = t("immediate");
13360
13366
  function r() {
@@ -14636,20 +14642,20 @@ https://github.com/nodeca/pako/blob/main/LICENSE
14636
14642
  for (B = ct; $ = _.heap[1], _.heap[1] = _.heap[_.heap_len--], Ct(_, K, 1), q = _.heap[1], _.heap[--_.heap_max] = $, _.heap[--_.heap_max] = q, K[2 * B] = K[2 * $] + K[2 * q], _.depth[B] = (_.depth[$] >= _.depth[q] ? _.depth[$] : _.depth[q]) + 1, K[2 * $ + 1] = K[2 * q + 1] = B, _.heap[1] = B++, Ct(_, K, 1), 2 <= _.heap_len; )
14637
14643
  ;
14638
14644
  _.heap[--_.heap_max] = _.heap[1], function(dt, Wt) {
14639
- var ci, ae, li, Lt, xi, Hs, Te = Wt.dyn_tree, Hn = Wt.max_code, mo = Wt.stat_desc.static_tree, Ro = Wt.stat_desc.has_stree, go = Wt.stat_desc.extra_bits, Wn = Wt.stat_desc.extra_base, hi = Wt.stat_desc.max_length, Bi = 0;
14645
+ var li, ce, hi, Lt, Bi, Hs, Ce = Wt.dyn_tree, Hn = Wt.max_code, mo = Wt.stat_desc.static_tree, Ro = Wt.stat_desc.has_stree, go = Wt.stat_desc.extra_bits, Wn = Wt.stat_desc.extra_base, ui = Wt.stat_desc.max_length, Vi = 0;
14640
14646
  for (Lt = 0; Lt <= T; Lt++)
14641
14647
  dt.bl_count[Lt] = 0;
14642
- for (Te[2 * dt.heap[dt.heap_max] + 1] = 0, ci = dt.heap_max + 1; ci < E; ci++)
14643
- hi < (Lt = Te[2 * Te[2 * (ae = dt.heap[ci]) + 1] + 1] + 1) && (Lt = hi, Bi++), Te[2 * ae + 1] = Lt, Hn < ae || (dt.bl_count[Lt]++, xi = 0, Wn <= ae && (xi = go[ae - Wn]), Hs = Te[2 * ae], dt.opt_len += Hs * (Lt + xi), Ro && (dt.static_len += Hs * (mo[2 * ae + 1] + xi)));
14644
- if (Bi !== 0) {
14648
+ for (Ce[2 * dt.heap[dt.heap_max] + 1] = 0, li = dt.heap_max + 1; li < E; li++)
14649
+ ui < (Lt = Ce[2 * Ce[2 * (ce = dt.heap[li]) + 1] + 1] + 1) && (Lt = ui, Vi++), Ce[2 * ce + 1] = Lt, Hn < ce || (dt.bl_count[Lt]++, Bi = 0, Wn <= ce && (Bi = go[ce - Wn]), Hs = Ce[2 * ce], dt.opt_len += Hs * (Lt + Bi), Ro && (dt.static_len += Hs * (mo[2 * ce + 1] + Bi)));
14650
+ if (Vi !== 0) {
14645
14651
  do {
14646
- for (Lt = hi - 1; dt.bl_count[Lt] === 0; )
14652
+ for (Lt = ui - 1; dt.bl_count[Lt] === 0; )
14647
14653
  Lt--;
14648
- dt.bl_count[Lt]--, dt.bl_count[Lt + 1] += 2, dt.bl_count[hi]--, Bi -= 2;
14649
- } while (0 < Bi);
14650
- for (Lt = hi; Lt !== 0; Lt--)
14651
- for (ae = dt.bl_count[Lt]; ae !== 0; )
14652
- Hn < (li = dt.heap[--ci]) || (Te[2 * li + 1] !== Lt && (dt.opt_len += (Lt - Te[2 * li + 1]) * Te[2 * li], Te[2 * li + 1] = Lt), ae--);
14654
+ dt.bl_count[Lt]--, dt.bl_count[Lt + 1] += 2, dt.bl_count[ui]--, Vi -= 2;
14655
+ } while (0 < Vi);
14656
+ for (Lt = ui; Lt !== 0; Lt--)
14657
+ for (ce = dt.bl_count[Lt]; ce !== 0; )
14658
+ Hn < (hi = dt.heap[--li]) || (Ce[2 * hi + 1] !== Lt && (dt.opt_len += (Lt - Ce[2 * hi + 1]) * Ce[2 * hi], Ce[2 * hi + 1] = Lt), ce--);
14653
14659
  }
14654
14660
  }(_, U), yt(K, Rt, _.bl_count);
14655
14661
  }
@@ -14815,7 +14821,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
14815
14821
  R.source === r && typeof R.data == "string" && R.data.indexOf(f) === 0 && m(+R.data.slice(f.length));
14816
14822
  }
14817
14823
  })(typeof self > "u" ? n === void 0 ? this : n : self);
14818
- }).call(this, typeof ls < "u" ? ls : typeof self < "u" ? self : typeof window < "u" ? window : {});
14824
+ }).call(this, typeof hs < "u" ? hs : typeof self < "u" ? self : typeof window < "u" ? window : {});
14819
14825
  }, {}] }, {}, [10])(10);
14820
14826
  });
14821
14827
  })(lo);
@@ -15021,18 +15027,18 @@ function Br(c, i) {
15021
15027
  const t = zn.getAllMatches(c, Gc), e = {};
15022
15028
  for (let s = 0; s < t.length; s++) {
15023
15029
  if (t[s][1].length === 0)
15024
- return Pt("InvalidAttr", "Attribute '" + t[s][2] + "' has no space in starting.", Oi(t[s]));
15030
+ return Pt("InvalidAttr", "Attribute '" + t[s][2] + "' has no space in starting.", Ni(t[s]));
15025
15031
  if (t[s][3] !== void 0 && t[s][4] === void 0)
15026
- return Pt("InvalidAttr", "Attribute '" + t[s][2] + "' is without value.", Oi(t[s]));
15032
+ return Pt("InvalidAttr", "Attribute '" + t[s][2] + "' is without value.", Ni(t[s]));
15027
15033
  if (t[s][3] === void 0 && !i.allowBooleanAttributes)
15028
- return Pt("InvalidAttr", "boolean attribute '" + t[s][2] + "' is not allowed.", Oi(t[s]));
15034
+ return Pt("InvalidAttr", "boolean attribute '" + t[s][2] + "' is not allowed.", Ni(t[s]));
15029
15035
  const n = t[s][2];
15030
15036
  if (!Hc(n))
15031
- return Pt("InvalidAttr", "Attribute '" + n + "' is an invalid name.", Oi(t[s]));
15037
+ return Pt("InvalidAttr", "Attribute '" + n + "' is an invalid name.", Ni(t[s]));
15032
15038
  if (!e.hasOwnProperty(n))
15033
15039
  e[n] = 1;
15034
15040
  else
15035
- return Pt("InvalidAttr", "Attribute '" + n + "' is repeated.", Oi(t[s]));
15041
+ return Pt("InvalidAttr", "Attribute '" + n + "' is repeated.", Ni(t[s]));
15036
15042
  }
15037
15043
  return !0;
15038
15044
  }
@@ -15084,7 +15090,7 @@ function xt(c, i) {
15084
15090
  col: t[t.length - 1].length + 1
15085
15091
  };
15086
15092
  }
15087
- function Oi(c) {
15093
+ function Ni(c) {
15088
15094
  return c.startIndex + c[1].length;
15089
15095
  }
15090
15096
  var kn = {};
@@ -15256,7 +15262,7 @@ function ll(c) {
15256
15262
  return c && c.indexOf(".") !== -1 && (c = c.replace(/0+$/, ""), c === "." ? c = "0" : c[0] === "." ? c = "0" + c : c[c.length - 1] === "." && (c = c.substr(0, c.length - 1))), c;
15257
15263
  }
15258
15264
  var hl = cl;
15259
- const uo = zs, Ni = Zc, ul = nl, fl = hl;
15265
+ const uo = zs, yi = Zc, ul = nl, fl = hl;
15260
15266
  let Il = class {
15261
15267
  constructor(i) {
15262
15268
  this.options = i, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = {
@@ -15340,12 +15346,12 @@ function Tl(c, i, t) {
15340
15346
  const ml = function(c) {
15341
15347
  c = c.replace(/\r\n?/g, `
15342
15348
  `);
15343
- const i = new Ni("!xml");
15349
+ const i = new yi("!xml");
15344
15350
  let t = i, e = "", s = "";
15345
15351
  for (let n = 0; n < c.length; n++)
15346
15352
  if (c[n] === "<")
15347
15353
  if (c[n + 1] === "/") {
15348
- const o = Ve(c, ">", n, "Closing Tag is not closed.");
15354
+ const o = Be(c, ">", n, "Closing Tag is not closed.");
15349
15355
  let a = c.substring(n + 2, o).trim();
15350
15356
  if (this.options.removeNSPrefix) {
15351
15357
  const f = a.indexOf(":");
@@ -15362,12 +15368,12 @@ const ml = function(c) {
15362
15368
  if (!o)
15363
15369
  throw new Error("Pi Tag is not closed.");
15364
15370
  if (e = this.saveTextToParentTag(e, t, s), !(this.options.ignoreDeclaration && o.tagName === "?xml" || this.options.ignorePiTags)) {
15365
- const a = new Ni(o.tagName);
15371
+ const a = new yi(o.tagName);
15366
15372
  a.add(this.options.textNodeName, ""), o.tagName !== o.tagExp && o.attrExpPresent && (a[":@"] = this.buildAttributesMap(o.tagExp, s, o.tagName)), this.addChild(t, a, s);
15367
15373
  }
15368
15374
  n = o.closeIndex + 1;
15369
15375
  } else if (c.substr(n + 1, 3) === "!--") {
15370
- const o = Ve(c, "-->", n + 4, "Comment is not closed.");
15376
+ const o = Be(c, "-->", n + 4, "Comment is not closed.");
15371
15377
  if (this.options.commentPropName) {
15372
15378
  const a = c.substring(n + 4, o - 2);
15373
15379
  e = this.saveTextToParentTag(e, t, s), t.add(this.options.commentPropName, [{ [this.options.textNodeName]: a }]);
@@ -15377,7 +15383,7 @@ const ml = function(c) {
15377
15383
  const o = ul(c, n);
15378
15384
  this.docTypeEntities = o.entities, n = o.i;
15379
15385
  } else if (c.substr(n + 1, 2) === "![") {
15380
- const o = Ve(c, "]]>", n, "CDATA is not closed.") - 2, a = c.substring(n + 9, o);
15386
+ const o = Be(c, "]]>", n, "CDATA is not closed.") - 2, a = c.substring(n + 9, o);
15381
15387
  e = this.saveTextToParentTag(e, t, s);
15382
15388
  let l = this.parseTextData(a, t.tagname, s, !0, !1, !0, !0);
15383
15389
  l == null && (l = ""), this.options.cdataPropName ? t.add(this.options.cdataPropName, [{ [this.options.textNodeName]: a }]) : t.add(this.options.textNodeName, l), n = o + 2;
@@ -15399,15 +15405,15 @@ const ml = function(c) {
15399
15405
  throw new Error(`Unexpected end of ${l}`);
15400
15406
  n = T.i, d = T.tagContent;
15401
15407
  }
15402
- const E = new Ni(a);
15408
+ const E = new yi(a);
15403
15409
  a !== h && f && (E[":@"] = this.buildAttributesMap(h, s, a)), d && (d = this.parseTextData(d, a, s, !0, f, !0, !0)), s = s.substr(0, s.lastIndexOf(".")), E.add(this.options.textNodeName, d), this.addChild(t, E, s);
15404
15410
  } else {
15405
15411
  if (h.length > 0 && h.lastIndexOf("/") === h.length - 1) {
15406
15412
  a[a.length - 1] === "/" ? (a = a.substr(0, a.length - 1), s = s.substr(0, s.length - 1), h = a) : h = h.substr(0, h.length - 1), this.options.transformTagName && (a = this.options.transformTagName(a));
15407
- const d = new Ni(a);
15413
+ const d = new yi(a);
15408
15414
  a !== h && f && (d[":@"] = this.buildAttributesMap(h, s, a)), this.addChild(t, d, s), s = s.substr(0, s.lastIndexOf("."));
15409
15415
  } else {
15410
- const d = new Ni(a);
15416
+ const d = new yi(a);
15411
15417
  this.tagsNodeStack.push(t), a !== h && f && (d[":@"] = this.buildAttributesMap(h, s, a)), this.addChild(t, d, s), t = d;
15412
15418
  }
15413
15419
  e = "", n = I;
@@ -15484,7 +15490,7 @@ function Sl(c, i, t = ">") {
15484
15490
  s += r;
15485
15491
  }
15486
15492
  }
15487
- function Ve(c, i, t, e) {
15493
+ function Be(c, i, t, e) {
15488
15494
  const s = c.indexOf(i, t);
15489
15495
  if (s === -1)
15490
15496
  throw new Error(e);
@@ -15517,7 +15523,7 @@ function Ol(c, i, t) {
15517
15523
  for (; t < c.length; t++)
15518
15524
  if (c[t] === "<")
15519
15525
  if (c[t + 1] === "/") {
15520
- const n = Ve(c, ">", t, `${i} is not closed`);
15526
+ const n = Be(c, ">", t, `${i} is not closed`);
15521
15527
  if (c.substring(t + 2, n).trim() === i && (s--, s === 0))
15522
15528
  return {
15523
15529
  tagContent: c.substring(e, t),
@@ -15525,11 +15531,11 @@ function Ol(c, i, t) {
15525
15531
  };
15526
15532
  t = n;
15527
15533
  } else if (c[t + 1] === "?")
15528
- t = Ve(c, "?>", t + 1, "StopNode is not closed.");
15534
+ t = Be(c, "?>", t + 1, "StopNode is not closed.");
15529
15535
  else if (c.substr(t + 1, 3) === "!--")
15530
- t = Ve(c, "-->", t + 3, "StopNode is not closed.");
15536
+ t = Be(c, "-->", t + 3, "StopNode is not closed.");
15531
15537
  else if (c.substr(t + 1, 2) === "![")
15532
- t = Ve(c, "]]>", t, "StopNode is not closed.") - 2;
15538
+ t = Be(c, "]]>", t, "StopNode is not closed.") - 2;
15533
15539
  else {
15534
15540
  const n = Ln(c, t, ">");
15535
15541
  n && ((n && n.tagName) === i && n.tagExp[n.tagExp.length - 1] !== "/" && s++, t = n.closeIndex);
@@ -15860,7 +15866,7 @@ class Pn {
15860
15866
  constructor(i, t) {
15861
15867
  C(this, "date", /* @__PURE__ */ new Date());
15862
15868
  C(this, "author");
15863
- C(this, "guid", Ce.create());
15869
+ C(this, "guid", oe.create());
15864
15870
  C(this, "viewpoint");
15865
15871
  C(this, "modifiedAuthor");
15866
15872
  C(this, "modifiedDate");
@@ -15911,7 +15917,7 @@ class Pn {
15911
15917
  `;
15912
15918
  }
15913
15919
  }
15914
- const fe = class fe {
15920
+ const Ie = class Ie {
15915
15921
  /**
15916
15922
  * Initializes a new instance of the `Topic` class representing a BCF (BIM Collaboration Format) topic.
15917
15923
  * It provides methods and properties to manage and serialize BCF topics.
@@ -15929,16 +15935,16 @@ const fe = class fe {
15929
15935
  * @remarks
15930
15936
  * The `guid` is automatically generated upon topic creation and by no means it should change.
15931
15937
  */
15932
- C(this, "guid", Ce.create());
15933
- C(this, "title", fe.default.title);
15938
+ C(this, "guid", oe.create());
15939
+ C(this, "title", Ie.default.title);
15934
15940
  C(this, "creationDate", /* @__PURE__ */ new Date());
15935
15941
  C(this, "creationAuthor", "");
15936
15942
  // Store viewpoint guids instead of the actual Viewpoint to prevent a possible memory leak
15937
- C(this, "viewpoints", new Re());
15943
+ C(this, "viewpoints", new Pe());
15938
15944
  // Store topic guids instead of the actual Topic to prevent a possible memory leak
15939
- C(this, "relatedTopics", new Re());
15945
+ C(this, "relatedTopics", new Pe());
15940
15946
  // There is no problem to store the comment it-self as it is not referenced anywhere else
15941
- C(this, "comments", new pe());
15947
+ C(this, "comments", new re());
15942
15948
  C(this, "customData", {});
15943
15949
  C(this, "description");
15944
15950
  C(this, "serverAssignedId");
@@ -15946,12 +15952,12 @@ const fe = class fe {
15946
15952
  C(this, "modifiedAuthor");
15947
15953
  C(this, "modifiedDate");
15948
15954
  C(this, "index");
15949
- C(this, "_type", fe.default.type);
15950
- C(this, "_status", fe.default.status);
15951
- C(this, "_priority", fe.default.priority);
15952
- C(this, "_stage", fe.default.priority);
15953
- C(this, "_assignedTo", fe.default.assignedTo);
15954
- C(this, "_labels", fe.default.labels);
15955
+ C(this, "_type", Ie.default.type);
15956
+ C(this, "_status", Ie.default.status);
15957
+ C(this, "_priority", Ie.default.priority);
15958
+ C(this, "_stage", Ie.default.priority);
15959
+ C(this, "_assignedTo", Ie.default.assignedTo);
15960
+ C(this, "_labels", Ie.default.labels);
15955
15961
  C(this, "_components");
15956
15962
  this._components = i;
15957
15963
  const t = i.get(Mt);
@@ -16100,7 +16106,7 @@ ${t}
16100
16106
  createViewpointTags(i = this._managerVersion) {
16101
16107
  let t = "Viewpoints";
16102
16108
  i === "2.1" && (t = "Viewpoints"), i === "3" && (t = "ViewPoint");
16103
- const e = this._components.get(se), n = [...this.viewpoints].map((r) => e.list.get(r)).filter((r) => r).map((r) => `<${t} Guid="${r.guid}">
16109
+ const e = this._components.get(ie), n = [...this.viewpoints].map((r) => e.list.get(r)).filter((r) => r).map((r) => `<${t} Guid="${r.guid}">
16104
16110
  <Viewpoint>${r.guid}.bcfv</Viewpoint>
16105
16111
  <Snapshot>${r.guid}.jpeg</Snapshot>
16106
16112
  </${t}>
@@ -16188,13 +16194,13 @@ ${t}
16188
16194
  /**
16189
16195
  * Default values for a BCF Topic, excluding `guid`, `creationDate`, and `creationAuthor`.
16190
16196
  */
16191
- C(fe, "default", {
16197
+ C(Ie, "default", {
16192
16198
  title: "BCF Topic",
16193
16199
  type: "Issue",
16194
16200
  status: "Active",
16195
16201
  labels: /* @__PURE__ */ new Set()
16196
16202
  });
16197
- let ms = fe;
16203
+ let Rs = Ie;
16198
16204
  const Ql = (c, i) => {
16199
16205
  if (i.trim() === "")
16200
16206
  return;
@@ -16374,7 +16380,7 @@ class Kl extends Ye {
16374
16380
  this._config.ignoreIncompleteTopicsOnImport.value = t;
16375
16381
  }
16376
16382
  }
16377
- const Be = class Be extends At {
16383
+ const Le = class Le extends At {
16378
16384
  constructor() {
16379
16385
  super(...arguments);
16380
16386
  C(this, "enabled", !1);
@@ -16402,8 +16408,13 @@ const Be = class Be extends At {
16402
16408
  fallbackVersionOnImport: "2.1",
16403
16409
  ignoreIncompleteTopicsOnImport: !1
16404
16410
  });
16405
- C(this, "config", new Kl(this, this.components, "BCF Topics"));
16406
- C(this, "list", new pe());
16411
+ C(this, "config", new Kl(
16412
+ this,
16413
+ this.components,
16414
+ "BCF Topics",
16415
+ Le.uuid
16416
+ ));
16417
+ C(this, "list", new re());
16407
16418
  C(this, "onSetup", new Z());
16408
16419
  C(this, "isSetup", !1);
16409
16420
  C(this, "onBCFImported", new Z());
@@ -16423,7 +16434,7 @@ const Be = class Be extends At {
16423
16434
  * @returns The newly created BCFTopic instance.
16424
16435
  */
16425
16436
  create(t) {
16426
- const e = new ms(this.components);
16437
+ const e = new Rs(this.components);
16427
16438
  return t && (e.guid = t.guid ?? e.guid, e.set(t)), this.list.set(e.guid, e), e;
16428
16439
  }
16429
16440
  /**
@@ -16519,7 +16530,7 @@ const Be = class Be extends At {
16519
16530
  * If a viewpoint does not exist, it is removed from the topic's viewpoints.
16520
16531
  */
16521
16532
  updateViewpointReferences() {
16522
- const t = this.components.get(se);
16533
+ const t = this.components.get(ie);
16523
16534
  for (const [e, s] of this.list)
16524
16535
  for (const n of s.viewpoints)
16525
16536
  t.list.has(n) || s.viewpoints.delete(n);
@@ -16541,7 +16552,7 @@ const Be = class Be extends At {
16541
16552
  ), e.file("bcf.extensions", this.serializeExtensions());
16542
16553
  const n = await (await fetch(
16543
16554
  "https://thatopen.github.io/engine_components/resources/favicon.ico"
16544
- )).blob(), r = this.components.get(se);
16555
+ )).blob(), r = this.components.get(ie);
16545
16556
  for (const a of t) {
16546
16557
  const l = e.folder(a.guid);
16547
16558
  l.file("markup.bcf", a.serialize());
@@ -16596,7 +16607,7 @@ ${o}
16596
16607
  } = t;
16597
16608
  if (!(e && s && n && (Pn || o)))
16598
16609
  return null;
16599
- const a = this.components.get(se), l = new Pn(this.components, r ?? "");
16610
+ const a = this.components.get(ie), l = new Pn(this.components, r ?? "");
16600
16611
  return l.guid = e, l.date = new Date(s), l.author = n, l.viewpoint = o != null && o.Guid ? a.list.get(o.Guid) : void 0, l.modifiedAuthor = t.ModifiedAuthor, l.modifiedDate = t.ModifiedDate ? new Date(t.ModifiedDate) : void 0, l;
16601
16612
  }
16602
16613
  getMarkupComments(t, e) {
@@ -16645,7 +16656,7 @@ ${o}
16645
16656
  let l = s;
16646
16657
  const h = a.find((F) => F.name.endsWith(".version"));
16647
16658
  if (h) {
16648
- const F = await h.async("string"), R = Be.xmlParser.parse(F).Version.VersionId;
16659
+ const F = await h.async("string"), R = Le.xmlParser.parse(F).Version.VersionId;
16649
16660
  l = String(R);
16650
16661
  }
16651
16662
  if (!(l && (l === "2.1" || l === "3")))
@@ -16657,9 +16668,9 @@ ${o}
16657
16668
  const F = await f.async("string");
16658
16669
  Ql(this, F);
16659
16670
  }
16660
- const I = [], u = this.components.get(se), d = a.filter((F) => F.name.endsWith(".bcfv"));
16671
+ const I = [], u = this.components.get(ie), d = a.filter((F) => F.name.endsWith(".bcfv"));
16661
16672
  for (const F of d) {
16662
- const R = await F.async("string"), S = Be.xmlParser.parse(R).VisualizationInfo;
16673
+ const R = await F.async("string"), S = Le.xmlParser.parse(R).VisualizationInfo;
16663
16674
  if (!S) {
16664
16675
  console.warn("Missing VisualizationInfo in Viewpoint");
16665
16676
  continue;
@@ -16746,7 +16757,7 @@ ${o}
16746
16757
  }
16747
16758
  const E = {}, T = [], p = a.filter((F) => F.name.endsWith(".bcf"));
16748
16759
  for (const F of p) {
16749
- const R = await F.async("string"), S = Be.xmlParser.parse(R).Markup, N = S.Topic, {
16760
+ const R = await F.async("string"), S = Le.xmlParser.parse(R).Markup, N = S.Topic, {
16750
16761
  Guid: y,
16751
16762
  TopicType: M,
16752
16763
  TopicStatus: L,
@@ -16756,7 +16767,7 @@ ${o}
16756
16767
  } = N;
16757
16768
  if (n && !(y && M && L && b && G && O))
16758
16769
  continue;
16759
- const w = new ms(this.components);
16770
+ const w = new Rs(this.components);
16760
16771
  w.guid = y ?? w.guid;
16761
16772
  const g = this.getMarkupRelatedTopics(S, l);
16762
16773
  E[w.guid] = new Set(g), w.type = M ?? w.type, w.status = L ?? w.status, w.title = b ?? w.title, w.creationDate = G ? new Date(G) : w.creationDate, w.creationAuthor = O ?? w.creationAuthor, w.serverAssignedId = N.ServerAssignedId, w.priority = N.Priority, w.index = N.Index, w.modifiedDate = N.ModifiedDate ? new Date(N.ModifiedDate) : void 0, w.modifiedAuthor = N.ModifiedAuthor, w.dueDate = N.DueDate ? new Date(N.DueDate) : void 0, w.assignedTo = N.AssignedTo, w.description = N.Description, w.stage = N.Stage;
@@ -16786,7 +16797,7 @@ ${o}
16786
16797
  return this.onBCFImported.trigger(T), { viewpoints: I, topics: T };
16787
16798
  }
16788
16799
  };
16789
- C(Be, "uuid", "de977976-e4f6-4e4f-a01a-204727839802"), C(Be, "xmlParser", new Co.XMLParser({
16800
+ C(Le, "uuid", "de977976-e4f6-4e4f-a01a-204727839802"), C(Le, "xmlParser", new Co.XMLParser({
16790
16801
  allowBooleanAttributes: !0,
16791
16802
  attributeNamePrefix: "",
16792
16803
  ignoreAttributes: !1,
@@ -16799,8 +16810,8 @@ C(Be, "uuid", "de977976-e4f6-4e4f-a01a-204727839802"), C(Be, "xmlParser", new Co
16799
16810
  removeNSPrefix: !0,
16800
16811
  trimValues: !0
16801
16812
  }));
16802
- let Mt = Be;
16803
- const ie = class ie extends At {
16813
+ let Mt = Le;
16814
+ const ee = class ee extends At {
16804
16815
  constructor(t) {
16805
16816
  super(t);
16806
16817
  /** {@link Component.enabled} */
@@ -16810,7 +16821,7 @@ const ie = class ie extends At {
16810
16821
  C(this, "_absoluteMin");
16811
16822
  C(this, "_absoluteMax");
16812
16823
  C(this, "_meshes", []);
16813
- this.components.add(ie.uuid, this), this._absoluteMin = ie.newBound(!0), this._absoluteMax = ie.newBound(!1);
16824
+ this.components.add(ee.uuid, this), this._absoluteMin = ee.newBound(!0), this._absoluteMax = ee.newBound(!1);
16814
16825
  }
16815
16826
  /**
16816
16827
  * A static method to calculate the dimensions of a given bounding box.
@@ -16885,7 +16896,7 @@ const ie = class ie extends At {
16885
16896
  const t = this.components.get(Me);
16886
16897
  for (const e of this._meshes)
16887
16898
  t.destroy(e);
16888
- this._meshes = [], this.onDisposed.trigger(ie.uuid), this.onDisposed.reset();
16899
+ this._meshes = [], this.onDisposed.trigger(ee.uuid), this.onDisposed.reset();
16889
16900
  }
16890
16901
  /**
16891
16902
  * Returns the bounding box of the calculated fragments.
@@ -16948,7 +16959,7 @@ const ie = class ie extends At {
16948
16959
  * ```
16949
16960
  */
16950
16961
  getMesh() {
16951
- const t = new D.Box3(this._absoluteMin, this._absoluteMax), e = ie.getDimensions(t), { width: s, height: n, depth: r, center: o } = e, a = new D.BoxGeometry(s, n, r), l = new D.Mesh(a);
16962
+ const t = new D.Box3(this._absoluteMin, this._absoluteMax), e = ee.getDimensions(t), { width: s, height: n, depth: r, center: o } = e, a = new D.BoxGeometry(s, n, r), l = new D.Mesh(a);
16952
16963
  return this._meshes.push(l), l.position.copy(o), l;
16953
16964
  }
16954
16965
  /**
@@ -16968,7 +16979,7 @@ const ie = class ie extends At {
16968
16979
  * ```
16969
16980
  */
16970
16981
  reset() {
16971
- this._absoluteMin = ie.newBound(!0), this._absoluteMax = ie.newBound(!1);
16982
+ this._absoluteMin = ee.newBound(!0), this._absoluteMax = ee.newBound(!1);
16972
16983
  }
16973
16984
  /**
16974
16985
  * Adds a FragmentsGroup to the BoundingBoxer.
@@ -17009,7 +17020,7 @@ const ie = class ie extends At {
17009
17020
  addMesh(t, e) {
17010
17021
  if (!t.geometry.index)
17011
17022
  return;
17012
- const s = ie.getFragmentBounds(t);
17023
+ const s = ee.getFragmentBounds(t);
17013
17024
  t.updateMatrixWorld();
17014
17025
  const n = t.matrixWorld, r = new D.Matrix4(), o = t instanceof D.InstancedMesh, a = /* @__PURE__ */ new Set();
17015
17026
  if (t instanceof Qt.FragmentMesh) {
@@ -17075,9 +17086,9 @@ const ie = class ie extends At {
17075
17086
  return new D.Box3(r, o);
17076
17087
  }
17077
17088
  };
17078
- C(ie, "uuid", "d1444724-dba6-4cdd-a0c7-68ee1450d166");
17079
- let wn = ie;
17080
- const _s = class _s {
17089
+ C(ee, "uuid", "d1444724-dba6-4cdd-a0c7-68ee1450d166");
17090
+ let wn = ee;
17091
+ const Ps = class Ps {
17081
17092
  constructor(i) {
17082
17093
  /**
17083
17094
  * Event used to notify the progress when performing a query on an IFC file.
@@ -17109,7 +17120,7 @@ const _s = class _s {
17109
17120
  * @param data the data of the query to import as a serializable object.
17110
17121
  */
17111
17122
  static import(i, t) {
17112
- const e = _s.importers.get(t.type);
17123
+ const e = Ps.importers.get(t.type);
17113
17124
  return e ? e(i, t) : (console.warn("Invalid query data:.", t), null);
17114
17125
  }
17115
17126
  /**
@@ -17315,8 +17326,8 @@ const _s = class _s {
17315
17326
  /**
17316
17327
  * The list of functions to import the queries. If you create your own custom query, you should add its importer here. See the other queries provided by the library for reference.
17317
17328
  */
17318
- C(_s, "importers", /* @__PURE__ */ new Map());
17319
- let ne = _s;
17329
+ C(Ps, "importers", /* @__PURE__ */ new Map());
17330
+ let se = Ps;
17320
17331
  class Yr {
17321
17332
  constructor(i) {
17322
17333
  /**
@@ -17377,7 +17388,7 @@ class Yr {
17377
17388
  import(i) {
17378
17389
  this.mode = i.mode, this.id = i.id;
17379
17390
  for (const t in i.queries) {
17380
- const e = ne.import(this._components, i.queries[t]);
17391
+ const e = se.import(this._components, i.queries[t]);
17381
17392
  e && this.list.set(t, e);
17382
17393
  }
17383
17394
  }
@@ -17406,7 +17417,7 @@ class Yr {
17406
17417
  }
17407
17418
  }
17408
17419
  }
17409
- const Ps = class Ps extends ne {
17420
+ const ws = class ws extends se {
17410
17421
  constructor(t, e) {
17411
17422
  super(t);
17412
17423
  /**
@@ -17436,7 +17447,7 @@ const Ps = class Ps extends ne {
17436
17447
  */
17437
17448
  export() {
17438
17449
  const t = this.getData();
17439
- return t.type = Ps.type, t;
17450
+ return t.type = ws.type, t;
17440
17451
  }
17441
17452
  /**
17442
17453
  * {@link IfcFinderQuery.update}
@@ -17455,20 +17466,20 @@ const Ps = class Ps extends ne {
17455
17466
  /**
17456
17467
  * The type of this query.
17457
17468
  */
17458
- C(Ps, "type", "IfcBasicQuery");
17459
- let Rs = Ps;
17460
- ne.importers.set(
17461
- Rs.type,
17469
+ C(ws, "type", "IfcBasicQuery");
17470
+ let gs = ws;
17471
+ se.importers.set(
17472
+ gs.type,
17462
17473
  (c, i) => {
17463
- const t = new Rs(c, {
17474
+ const t = new gs(c, {
17464
17475
  name: i.name,
17465
- rules: ne.importRules(i.rules),
17476
+ rules: se.importRules(i.rules),
17466
17477
  inclusive: i.inclusive
17467
17478
  });
17468
- return t.ids = ne.importIds(i), t;
17479
+ return t.ids = se.importIds(i), t;
17469
17480
  }
17470
17481
  );
17471
- const ws = class ws extends ne {
17482
+ const Ms = class Ms extends se {
17472
17483
  constructor(t, e) {
17473
17484
  super(t);
17474
17485
  /**
@@ -17509,7 +17520,7 @@ const ws = class ws extends ne {
17509
17520
  */
17510
17521
  export() {
17511
17522
  const t = this.getData();
17512
- return t.type = ws.type, t;
17523
+ return t.type = Ms.type, t;
17513
17524
  }
17514
17525
  /**
17515
17526
  * {@link IfcFinderQuery.update}
@@ -17552,20 +17563,20 @@ const ws = class ws extends ne {
17552
17563
  /**
17553
17564
  * The type of this query.
17554
17565
  */
17555
- C(ws, "type", "IfcPropertyQuery");
17556
- let gs = ws;
17557
- ne.importers.set(
17558
- gs.type,
17566
+ C(Ms, "type", "IfcPropertyQuery");
17567
+ let As = Ms;
17568
+ se.importers.set(
17569
+ As.type,
17559
17570
  (c, i) => {
17560
- const t = new gs(c, {
17571
+ const t = new As(c, {
17561
17572
  name: i.name,
17562
17573
  inclusive: i.inclusive,
17563
- rules: ne.importRules(i.rules)
17574
+ rules: se.importRules(i.rules)
17564
17575
  });
17565
- return t.ids = ne.importIds(i), t;
17576
+ return t.ids = se.importIds(i), t;
17566
17577
  }
17567
17578
  );
17568
- const Ms = class Ms extends At {
17579
+ const Ds = class Ds extends At {
17569
17580
  constructor(t) {
17570
17581
  super(t);
17571
17582
  /** {@link Component.enabled} */
@@ -17574,7 +17585,7 @@ const Ms = class Ms extends At {
17574
17585
  * List of all created {@link IfcQueryGroup} instances.
17575
17586
  */
17576
17587
  C(this, "list", /* @__PURE__ */ new Map());
17577
- t.add(Ms.uuid, this);
17588
+ t.add(Ds.uuid, this);
17578
17589
  }
17579
17590
  /**
17580
17591
  * List of all queries from all created {@link IfcQueryGroup} instances.
@@ -17629,9 +17640,9 @@ const Ms = class Ms extends At {
17629
17640
  * A unique identifier for the component.
17630
17641
  * This UUID is used to register the component within the Components system.
17631
17642
  */
17632
- C(Ms, "uuid", "0da7ad77-f734-42ca-942f-a074adfd1e3a");
17633
- let Gr = Ms;
17634
- const Ds = class Ds extends At {
17643
+ C(Ds, "uuid", "0da7ad77-f734-42ca-942f-a074adfd1e3a");
17644
+ let Gr = Ds;
17645
+ const bs = class bs extends At {
17635
17646
  constructor(t) {
17636
17647
  super(t);
17637
17648
  /** {@link Component.enabled} */
@@ -17658,7 +17669,7 @@ const Ds = class Ds extends At {
17658
17669
  }
17659
17670
  }
17660
17671
  });
17661
- t.add(Ds.uuid, this), t.get(Tt).onFragmentsDisposed.add(this.onFragmentsDisposed);
17672
+ t.add(bs.uuid, this), t.get(Tt).onFragmentsDisposed.add(this.onFragmentsDisposed);
17662
17673
  }
17663
17674
  /** {@link Disposable.dispose} */
17664
17675
  dispose() {
@@ -17811,7 +17822,7 @@ const Ds = class Ds extends At {
17811
17822
  byEntity(t) {
17812
17823
  this.list.entities || (this.list.entities = {});
17813
17824
  for (const [e, s] of t.data) {
17814
- const r = s[1][1], o = Ts[r];
17825
+ const r = s[1][1], o = ms[r];
17815
17826
  this.saveItem(t, "entities", o, e);
17816
17827
  }
17817
17828
  }
@@ -17831,11 +17842,11 @@ const Ds = class Ds extends At {
17831
17842
  * @throws Will throw an error if the fragment ID is not found or if the IFC relationship is not valid.
17832
17843
  */
17833
17844
  async byIfcRel(t, e, s) {
17834
- ni.isRel(e) && await ni.getRelationMap(
17845
+ ri.isRel(e) && await ri.getRelationMap(
17835
17846
  t,
17836
17847
  e,
17837
17848
  async (n, r) => {
17838
- const { name: o } = await ni.getEntityName(
17849
+ const { name: o } = await ri.getEntityName(
17839
17850
  t,
17840
17851
  n
17841
17852
  );
@@ -17986,9 +17997,9 @@ const Ds = class Ds extends At {
17986
17997
  * A unique identifier for the component.
17987
17998
  * This UUID is used to register the component within the Components system.
17988
17999
  */
17989
- C(Ds, "uuid", "e25a7f3c-46c4-4a14-9d3d-5115f24ebeb7");
17990
- let Ui = Ds;
17991
- const bs = class bs extends At {
18000
+ C(bs, "uuid", "e25a7f3c-46c4-4a14-9d3d-5115f24ebeb7");
18001
+ let xi = bs;
18002
+ const vs = class vs extends At {
17992
18003
  constructor(t) {
17993
18004
  super(t);
17994
18005
  /** {@link Disposable.onDisposed} */
@@ -18012,7 +18023,7 @@ const bs = class bs extends At {
18012
18023
  * This set is used to keep track of which items have been exploded.
18013
18024
  */
18014
18025
  C(this, "list", /* @__PURE__ */ new Set());
18015
- t.add(bs.uuid, this);
18026
+ t.add(vs.uuid, this);
18016
18027
  }
18017
18028
  /** {@link Disposable.dispose} */
18018
18029
  dispose() {
@@ -18035,7 +18046,7 @@ const bs = class bs extends At {
18035
18046
  set(t) {
18036
18047
  if (!this.enabled)
18037
18048
  return;
18038
- const e = this.components.get(Ui), s = this.components.get(Tt), n = t ? 1 : -1;
18049
+ const e = this.components.get(xi), s = this.components.get(Tt), n = t ? 1 : -1;
18039
18050
  let r = 0;
18040
18051
  const o = e.list[this.groupName], a = new D.Matrix4();
18041
18052
  for (const l in o) {
@@ -18056,14 +18067,14 @@ const bs = class bs extends At {
18056
18067
  * A unique identifier for the component.
18057
18068
  * This UUID is used to register the component within the Components system.
18058
18069
  */
18059
- C(bs, "uuid", "d260618b-ce88-4c7d-826c-6debb91de3e2");
18060
- let zr = bs;
18061
- const vs = class vs extends At {
18070
+ C(vs, "uuid", "d260618b-ce88-4c7d-826c-6debb91de3e2");
18071
+ let zr = vs;
18072
+ const Us = class Us extends At {
18062
18073
  constructor(t) {
18063
18074
  super(t);
18064
18075
  /** {@link Component.enabled} */
18065
18076
  C(this, "enabled", !0);
18066
- this.components.add(vs.uuid, this);
18077
+ this.components.add(Us.uuid, this);
18067
18078
  }
18068
18079
  /**
18069
18080
  * Sets the visibility of fragments within the 3D scene.
@@ -18112,8 +18123,8 @@ const vs = class vs extends At {
18112
18123
  * A unique identifier for the component.
18113
18124
  * This UUID is used to register the component within the Components system.
18114
18125
  */
18115
- C(vs, "uuid", "dd9ccf2d-8a21-4821-b7f6-2949add16a29");
18116
- let Mn = vs;
18126
+ C(Us, "uuid", "dd9ccf2d-8a21-4821-b7f6-2949add16a29");
18127
+ let Mn = Us;
18117
18128
  class Jl extends Yn {
18118
18129
  constructor() {
18119
18130
  super(...arguments);
@@ -18133,7 +18144,7 @@ class Jl extends Yn {
18133
18144
  C(this, "maxTriangles", null);
18134
18145
  }
18135
18146
  }
18136
- const Us = class Us extends At {
18147
+ const xs = class xs extends At {
18137
18148
  constructor(t) {
18138
18149
  super(t);
18139
18150
  /**
@@ -18180,7 +18191,7 @@ const Us = class Us extends At {
18180
18191
  C(this, "_groupSerializer", new Qt.Serializer());
18181
18192
  C(this, "_assets", []);
18182
18193
  C(this, "_meshesWithHoles", /* @__PURE__ */ new Set());
18183
- this.components.add(Us.uuid, this), this.settings.excludedCategories.add(z.IFCOPENINGELEMENT);
18194
+ this.components.add(xs.uuid, this), this.settings.excludedCategories.add(z.IFCOPENINGELEMENT);
18184
18195
  }
18185
18196
  /** {@link Disposable.dispose} */
18186
18197
  dispose() {
@@ -18360,8 +18371,8 @@ const Us = class Us extends At {
18360
18371
  * A unique identifier for the component.
18361
18372
  * This UUID is used to register the component within the Components system.
18362
18373
  */
18363
- C(Us, "uuid", "d9999a00-e1f5-4d3f-8cfe-c56e08609764");
18364
- let kr = Us;
18374
+ C(xs, "uuid", "d9999a00-e1f5-4d3f-8cfe-c56e08609764");
18375
+ let kr = xs;
18365
18376
  class th extends Yn {
18366
18377
  constructor() {
18367
18378
  super(...arguments);
@@ -18379,17 +18390,17 @@ class eh extends At {
18379
18390
  * An event that is triggered when properties are streamed from the IFC file.
18380
18391
  * The event provides the type of the IFC entity and the corresponding data.
18381
18392
  */
18382
- C(this, "onPropertiesStreamed", new fs());
18393
+ C(this, "onPropertiesStreamed", new Is());
18383
18394
  /**
18384
18395
  * An event that is triggered to indicate the progress of the streaming process.
18385
18396
  * The event provides a number between 0 and 1 representing the progress percentage.
18386
18397
  */
18387
- C(this, "onProgress", new fs());
18398
+ C(this, "onProgress", new Is());
18388
18399
  /**
18389
18400
  * An event that is triggered when indices are streamed from the IFC file.
18390
18401
  * The event provides a map of indices, where the key is the entity type and the value is another map of indices.
18391
18402
  */
18392
- C(this, "onIndicesStreamed", new fs());
18403
+ C(this, "onIndicesStreamed", new Is());
18393
18404
  /** {@link Disposable.onDisposed} */
18394
18405
  C(this, "onDisposed", new Z());
18395
18406
  /** {@link Component.enabled} */
@@ -18494,14 +18505,14 @@ C(eh, "uuid", "88d2c89c-ce32-47d7-8cb6-d51e4b311a0b");
18494
18505
  class To {
18495
18506
  constructor(i, t, e) {
18496
18507
  C(this, "title");
18497
- C(this, "guid", Ce.create());
18508
+ C(this, "guid", oe.create());
18498
18509
  /**
18499
18510
  * ClippingPlanes can be used to define a subsection of a building model that is related to the topic.
18500
18511
  * Each clipping plane is defined by Location and Direction.
18501
18512
  * The Direction vector points in the invisible direction meaning the half-space that is clipped.
18502
18513
  * @experimental
18503
18514
  */
18504
- C(this, "clippingPlanes", new Re());
18515
+ C(this, "clippingPlanes", new Pe());
18505
18516
  C(this, "camera", {
18506
18517
  aspectRatio: 0,
18507
18518
  fov: 0,
@@ -18511,16 +18522,16 @@ class To {
18511
18522
  /**
18512
18523
  * A list of components GUIDs to hide when defaultVisibility = true or to show when defaultVisibility = false
18513
18524
  */
18514
- C(this, "exceptionComponents", new Re());
18525
+ C(this, "exceptionComponents", new Pe());
18515
18526
  /**
18516
18527
  * A list of components GUIDs that should be selected (highlighted) when displaying a viewpoint.
18517
18528
  */
18518
- C(this, "selectionComponents", new Re());
18529
+ C(this, "selectionComponents", new Pe());
18519
18530
  /**
18520
18531
  * A map of colors and components GUIDs that should be colorized when displaying a viewpoint.
18521
18532
  * For this to work, call viewpoint.colorize()
18522
18533
  */
18523
- C(this, "componentColors", new pe());
18534
+ C(this, "componentColors", new re());
18524
18535
  /**
18525
18536
  * Boolean flags to allow fine control over the visibility of spaces.
18526
18537
  * A typical use of these flags is when DefaultVisibility=true but spaces should remain hidden.
@@ -18651,7 +18662,7 @@ class To {
18651
18662
  */
18652
18663
  addComponentsFromMap(i) {
18653
18664
  const e = this._components.get(Tt).fragmentIdMapToGuids(i);
18654
- this.selectionComponents.add(...e), this._components.get(se).list.set(this.guid, this);
18665
+ this.selectionComponents.add(...e), this._components.get(ie).list.set(this.guid, this);
18655
18666
  }
18656
18667
  /**
18657
18668
  * Replace the properties of the viewpoint with the provided data.
@@ -18680,7 +18691,7 @@ class To {
18680
18691
  }
18681
18692
  n in this && (e[n] = r);
18682
18693
  }
18683
- return this._components.get(se).list.set(this.guid, this), this;
18694
+ return this._components.get(ie).list.set(this.guid, this), this;
18684
18695
  }
18685
18696
  /**
18686
18697
  * Sets the viewpoint of the camera in the world.
@@ -18711,7 +18722,7 @@ class To {
18711
18722
  };
18712
18723
  const r = this.selection;
18713
18724
  if (Object.keys(r).length === 0) {
18714
- const h = this._components.get(oi).get(this.world).castRayFromVector(e, this.direction);
18725
+ const h = this._components.get(ai).get(this.world).castRayFromVector(e, this.direction);
18715
18726
  h && (n = h.point);
18716
18727
  } else {
18717
18728
  const a = this._components.get(wn);
@@ -18765,7 +18776,7 @@ class To {
18765
18776
  } : s instanceof D.OrthographicCamera && (this.camera = {
18766
18777
  ...h,
18767
18778
  viewToWorldScale: s.top - s.bottom
18768
- }), this._components.get(se).list.set(this.guid, this);
18779
+ }), this._components.get(ie).list.set(this.guid, this);
18769
18780
  }
18770
18781
  /**
18771
18782
  * Applies color to the components in the viewpoint based on their GUIDs.
@@ -18778,7 +18789,7 @@ class To {
18778
18789
  * The color is provided as a hexadecimal string, prefixed with a '#'.
18779
18790
  */
18780
18791
  colorize() {
18781
- const i = this._components.get(se), t = this._components.get(Tt), e = this._components.get(Ui);
18792
+ const i = this._components.get(ie), t = this._components.get(Tt), e = this._components.get(xi);
18782
18793
  for (const [s, n] of this.componentColors) {
18783
18794
  const r = t.guidToFragmentIdMap(n), o = new D.Color(`#${s}`);
18784
18795
  e.setColor(
@@ -18794,7 +18805,7 @@ class To {
18794
18805
  * corresponding to each color, and then uses the `Classifier` to reset the color of those fragments.
18795
18806
  */
18796
18807
  resetColors() {
18797
- const i = this._components.get(Tt), t = this._components.get(Ui);
18808
+ const i = this._components.get(Tt), t = this._components.get(xi);
18798
18809
  for (const [e, s] of this.componentColors) {
18799
18810
  const n = i.guidToFragmentIdMap(s);
18800
18811
  t.resetColor(n);
@@ -18907,7 +18918,7 @@ class ih extends Ye {
18907
18918
  this._config.overwriteColors.value = t;
18908
18919
  }
18909
18920
  }
18910
- const xs = class xs extends At {
18921
+ const vi = class vi extends At {
18911
18922
  constructor(t) {
18912
18923
  super(t);
18913
18924
  C(this, "enabled", !0);
@@ -18915,13 +18926,18 @@ const xs = class xs extends At {
18915
18926
  * A DataMap that stores Viewpoint instances, indexed by their unique identifiers (guid).
18916
18927
  * This map is used to manage and retrieve Viewpoint instances within the Viewpoints component.
18917
18928
  */
18918
- C(this, "list", new pe());
18929
+ C(this, "list", new re());
18919
18930
  C(this, "isSetup", !1);
18920
18931
  C(this, "onSetup", new Z());
18921
- C(this, "config", new ih(this, this.components, "Viewpoints"));
18932
+ C(this, "config", new ih(
18933
+ this,
18934
+ this.components,
18935
+ "Viewpoints",
18936
+ vi.uuid
18937
+ ));
18922
18938
  /** {@link Disposable.onDisposed} */
18923
18939
  C(this, "onDisposed", new Z());
18924
- t.add(xs.uuid, this);
18940
+ t.add(vi.uuid, this);
18925
18941
  }
18926
18942
  /**
18927
18943
  * Creates a new Viewpoint instance and adds it to the list.
@@ -18948,8 +18964,8 @@ const xs = class xs extends At {
18948
18964
  this.list.dispose(), this.onDisposed.trigger(), this.onDisposed.reset();
18949
18965
  }
18950
18966
  };
18951
- C(xs, "uuid", "ee867824-a796-408d-8aa0-4e5962a83c66");
18952
- let se = xs;
18967
+ C(vi, "uuid", "ee867824-a796-408d-8aa0-4e5962a83c66");
18968
+ let ie = vi;
18953
18969
  class sh extends Ye {
18954
18970
  constructor() {
18955
18971
  super(...arguments);
@@ -19172,7 +19188,7 @@ class nh {
19172
19188
  e * s / 2,
19173
19189
  e / 2,
19174
19190
  e / -2
19175
- ), this.world.renderer.onClippingPlanesUpdated.add(this.updatePlanes), this._camera.position.set(0, 200, 0), this._camera.zoom = 0.1, this._camera.rotation.x = -Math.PI / 2, this._plane = new D.Plane(this.down, 200), this.updatePlanes(), this.config = new sh(this, t, "MiniMap"), t.get(Kt).list.add(this.config);
19191
+ ), this.world.renderer.onClippingPlanesUpdated.add(this.updatePlanes), this._camera.position.set(0, 200, 0), this._camera.zoom = 0.1, this._camera.rotation.x = -Math.PI / 2, this._plane = new D.Plane(this.down, 200), this.updatePlanes(), this.config = new sh(this, t, "MiniMap");
19176
19192
  }
19177
19193
  /**
19178
19194
  * Gets or sets whether the minimap rotation is locked.
@@ -19630,7 +19646,7 @@ class ks {
19630
19646
  this.testResult.push(n);
19631
19647
  }
19632
19648
  }
19633
- const ge = (c, i) => {
19649
+ const me = (c, i) => {
19634
19650
  let t = "";
19635
19651
  return i ? (i.type === "simple" && (t = `<ids:simpleValue>${i.parameter}</ids:simpleValue>`), i.type === "enumeration" && (t = `<xs:restriction base="xs:string">
19636
19652
  ${i.parameter.map((n) => `<xs:enumeration value="${n}" />`).join(`\r
@@ -19649,7 +19665,7 @@ class rh extends ks {
19649
19665
  this.name = e;
19650
19666
  }
19651
19667
  serialize(t) {
19652
- const e = ge("Name", this.name), s = ge("Value", this.value);
19668
+ const e = me("Name", this.name), s = me("Value", this.value);
19653
19669
  let n = "";
19654
19670
  return t === "requirement" && (n += `cardinality="${this.cardinality}"`, n += this.instructions ? `instructions="${this.instructions}"` : ""), `<ids:attribute ${n}>
19655
19671
  ${e}
@@ -19751,7 +19767,7 @@ class oh extends ks {
19751
19767
  this.system = e;
19752
19768
  }
19753
19769
  serialize(t) {
19754
- const e = ge("System", this.system), s = ge("Value", this.value);
19770
+ const e = me("System", this.system), s = me("Value", this.value);
19755
19771
  let n = "";
19756
19772
  return t === "requirement" && (n += `cardinality="${this.cardinality}"`, n += this.uri ? `uri=${this.uri}` : "", n += this.instructions ? `instructions="${this.instructions}"` : ""), `<ids:classification ${n}>
19757
19773
  ${e}
@@ -19949,7 +19965,7 @@ class ah extends ks {
19949
19965
  this.name = e;
19950
19966
  }
19951
19967
  serialize(t) {
19952
- const e = ge("Name", this.name), s = ge("Name", this.predefinedType);
19968
+ const e = me("Name", this.name), s = me("Name", this.predefinedType);
19953
19969
  let n = "";
19954
19970
  return t === "requirement" && (n += `cardinality="${this.cardinality}"`, n += this.instructions ? `instructions="${this.instructions}"` : ""), `<ids:entity ${n}>
19955
19971
  ${e}
@@ -19959,7 +19975,7 @@ class ah extends ks {
19959
19975
  // IFCSURFACESTYLEREFRACTION is not present in the FragmentsGroup
19960
19976
  // IFCSURFACESTYLERENDERING is not present in the FragmentsGroup
19961
19977
  async getEntities(t, e = {}) {
19962
- const s = Object.entries(Ts), n = [];
19978
+ const s = Object.entries(ms), n = [];
19963
19979
  for (const [a] of s)
19964
19980
  await this.evalName({ type: a }) && n.push(Number(a));
19965
19981
  let r = {};
@@ -19998,7 +20014,7 @@ class ah extends ks {
19998
20014
  return this.testResult;
19999
20015
  }
20000
20016
  async evalName(t, e) {
20001
- const s = Ts[t.type];
20017
+ const s = ms[t.type];
20002
20018
  return this.evalRequirement(s, this.name, "Name", e);
20003
20019
  }
20004
20020
  async evalPredefinedType(t, e, s) {
@@ -20052,7 +20068,7 @@ class ch extends ks {
20052
20068
  this.propertySet = e, this.baseName = s;
20053
20069
  }
20054
20070
  serialize(t) {
20055
- const e = ge("PropertySet", this.propertySet), s = ge("BaseName", this.baseName), n = ge("Value", this.value), r = this.dataType ? `dataType=${this.dataType}` : "";
20071
+ const e = me("PropertySet", this.propertySet), s = me("BaseName", this.baseName), n = me("Value", this.value), r = this.dataType ? `dataType=${this.dataType}` : "";
20056
20072
  let o = "";
20057
20073
  return t === "requirement" && (o += `cardinality="${this.cardinality}"`, o += this.uri ? `uri=${this.uri}` : "", o += this.instructions ? `instructions="${this.instructions}"` : ""), `<ids:property ${r} ${o}>
20058
20074
  ${e}
@@ -20293,12 +20309,12 @@ class lh {
20293
20309
  constructor(i, t, e) {
20294
20310
  C(this, "name");
20295
20311
  C(this, "ifcVersion", /* @__PURE__ */ new Set());
20296
- C(this, "identifier", Ce.create());
20312
+ C(this, "identifier", oe.create());
20297
20313
  C(this, "description");
20298
20314
  C(this, "instructions");
20299
20315
  C(this, "requirementsDescription");
20300
- C(this, "applicability", new Re());
20301
- C(this, "requirements", new Re());
20316
+ C(this, "applicability", new Pe());
20317
+ C(this, "requirements", new Pe());
20302
20318
  C(this, "components");
20303
20319
  this.components = i, this.name = t;
20304
20320
  for (const s of e)
@@ -20339,7 +20355,7 @@ class lh {
20339
20355
  </ids:specification>`;
20340
20356
  }
20341
20357
  }
20342
- const Ae = (c) => {
20358
+ const Re = (c) => {
20343
20359
  if (!c)
20344
20360
  return;
20345
20361
  const i = { type: "simple" };
@@ -20358,53 +20374,53 @@ const Ae = (c) => {
20358
20374
  }, Xr = (c, i) => {
20359
20375
  const t = [];
20360
20376
  for (const e of i) {
20361
- const s = e.name, n = Ae(s);
20377
+ const s = e.name, n = Re(s);
20362
20378
  if (!n)
20363
20379
  continue;
20364
20380
  const r = new ah(c, n);
20365
- e.cardinality && (r.cardinality = e.cardinality), r.predefinedType = Ae(e.predefinedType), t.push(r);
20381
+ e.cardinality && (r.cardinality = e.cardinality), r.predefinedType = Re(e.predefinedType), t.push(r);
20366
20382
  }
20367
20383
  return t;
20368
20384
  }, hh = (c, i) => {
20369
20385
  const t = [];
20370
20386
  for (const e of i) {
20371
- const s = e.name, n = Ae(s);
20387
+ const s = e.name, n = Re(s);
20372
20388
  if (!n)
20373
20389
  continue;
20374
20390
  const r = new rh(c, n);
20375
- e.cardinality && (r.cardinality = e.cardinality), r.value = Ae(e.value), t.push(r);
20391
+ e.cardinality && (r.cardinality = e.cardinality), r.value = Re(e.value), t.push(r);
20376
20392
  }
20377
20393
  return t;
20378
20394
  }, uh = (c, i) => {
20379
20395
  const t = [];
20380
20396
  for (const e of i) {
20381
- const s = e.system, n = Ae(s);
20397
+ const s = e.system, n = Re(s);
20382
20398
  if (!n)
20383
20399
  continue;
20384
20400
  const r = new oh(c, n);
20385
20401
  e.cardinality && (r.cardinality = e.cardinality);
20386
- const o = Ae(e.value);
20402
+ const o = Re(e.value);
20387
20403
  (o == null ? void 0 : o.type) === "simple" && (o.parameter = String(o.parameter)), (o == null ? void 0 : o.type) === "enumeration" && Array.isArray(o.parameter) && (o.parameter = o.parameter.map(String)), r.value = o, r.uri = e.uri, t.push(r);
20388
20404
  }
20389
20405
  return t;
20390
20406
  }, fh = (c, i) => {
20391
20407
  const t = [];
20392
20408
  for (const e of i) {
20393
- const s = e.propertySet, n = e.baseName, r = Ae(s), o = Ae(n);
20409
+ const s = e.propertySet, n = e.baseName, r = Re(s), o = Re(n);
20394
20410
  if (!(o && r))
20395
20411
  continue;
20396
20412
  const a = new ch(c, r, o);
20397
20413
  e.cardinality && (a.cardinality = e.cardinality);
20398
- const l = Ae(e.value);
20414
+ const l = Re(e.value);
20399
20415
  (l == null ? void 0 : l.type) === "enumeration" && Array.isArray(l.parameter) && (l.parameter = l.parameter.map(String)), a.value = l, a.dataType = e.dataType, a.uri = e.uri, t.push(a);
20400
20416
  }
20401
20417
  return t;
20402
- }, si = class si extends At {
20418
+ }, ni = class ni extends At {
20403
20419
  constructor(t) {
20404
20420
  super(t);
20405
20421
  C(this, "enabled", !0);
20406
- C(this, "list", new pe());
20407
- t.add(si.uuid, this);
20422
+ C(this, "list", new re());
20423
+ t.add(ni.uuid, this);
20408
20424
  }
20409
20425
  /**
20410
20426
  * Retrieves a FragmentIdMap based on the given IDSCheckResult array.
@@ -20447,7 +20463,7 @@ const Ae = (c) => {
20447
20463
  * @returns An array of IDSSpecification instances created from the parsed data.
20448
20464
  */
20449
20465
  load(t) {
20450
- const e = [], s = si.xmlParser.parse(t).ids, { specifications: n } = s;
20466
+ const e = [], s = ni.xmlParser.parse(t).ids, { specifications: n } = s;
20451
20467
  if (n && n.specification) {
20452
20468
  const r = Array.isArray(n.specification) ? n.specification : [n.specification];
20453
20469
  for (const o of r) {
@@ -20512,7 +20528,7 @@ const Ae = (c) => {
20512
20528
  export(t, e = this.list.values()) {
20513
20529
  const s = e ?? this.list;
20514
20530
  return `<ids:ids xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://standards.buildingsmart.org/IDS http://standards.buildingsmart.org/IDS/1.0/ids.xsd" xmlns:ids="http://standards.buildingsmart.org/IDS">
20515
- <!-- Made with That Open Engine ${ps.release} (https://github.com/thatopen/engine_components) -->
20531
+ <!-- Made with That Open Engine ${Cs.release} (https://github.com/thatopen/engine_components) -->
20516
20532
  <ids:info>
20517
20533
  <ids:title>${t.title}</ids:title>
20518
20534
  ${t.copyright ? `<ids:copyright>${t.copyright}</ids:copyright>` : ""}
@@ -20530,7 +20546,7 @@ const Ae = (c) => {
20530
20546
  </ids:ids>`;
20531
20547
  }
20532
20548
  };
20533
- C(si, "uuid", "9f0b9f78-9b2e-481a-b766-2fbfd01f342c"), C(si, "xmlParser", new Co.XMLParser({
20549
+ C(ni, "uuid", "9f0b9f78-9b2e-481a-b766-2fbfd01f342c"), C(ni, "xmlParser", new Co.XMLParser({
20534
20550
  allowBooleanAttributes: !0,
20535
20551
  attributeNamePrefix: "",
20536
20552
  ignoreAttributes: !1,
@@ -20543,9 +20559,9 @@ C(si, "uuid", "9f0b9f78-9b2e-481a-b766-2fbfd01f342c"), C(si, "xmlParser", new Co
20543
20559
  removeNSPrefix: !0,
20544
20560
  trimValues: !0
20545
20561
  }));
20546
- let $r = si;
20562
+ let $r = ni;
20547
20563
  export {
20548
- fs as AsyncEvent,
20564
+ Is as AsyncEvent,
20549
20565
  Mt as BCFTopics,
20550
20566
  Kl as BCFTopicsConfigManager,
20551
20567
  xn as Base,
@@ -20554,18 +20570,18 @@ export {
20554
20570
  Ga as BaseScene,
20555
20571
  Bn as BaseWorldItem,
20556
20572
  wn as BoundingBoxer,
20557
- Ui as Classifier,
20573
+ xi as Classifier,
20558
20574
  Sn as Clipper,
20559
20575
  Pn as Comment,
20560
20576
  At as Component,
20561
20577
  ph as ComponentWithUI,
20562
- ps as Components,
20563
- Kt as ConfigManager,
20578
+ Cs as Components,
20579
+ Ve as ConfigManager,
20564
20580
  Ye as Configurator,
20565
20581
  lc as CullerRenderer,
20566
20582
  Fn as Cullers,
20567
- pe as DataMap,
20568
- Re as DataSet,
20583
+ re as DataMap,
20584
+ Pe as DataSet,
20569
20585
  Me as Disposer,
20570
20586
  Z as Event,
20571
20587
  zr as Exploder,
@@ -20581,20 +20597,20 @@ export {
20581
20597
  ch as IDSProperty,
20582
20598
  lh as IDSSpecification,
20583
20599
  $r as IDSSpecifications,
20584
- Rs as IfcBasicQuery,
20600
+ gs as IfcBasicQuery,
20585
20601
  gh as IfcCategories,
20586
- Ts as IfcCategoryMap,
20602
+ ms as IfcCategoryMap,
20587
20603
  Pc as IfcElements,
20588
20604
  Gr as IfcFinder,
20589
- ne as IfcFinderQuery,
20605
+ se as IfcFinderQuery,
20590
20606
  Yn as IfcFragmentSettings,
20591
20607
  kr as IfcGeometryTiler,
20592
20608
  On as IfcJsonExporter,
20593
20609
  Nn as IfcLoader,
20594
20610
  yn as IfcPropertiesManager,
20595
20611
  eh as IfcPropertiesTiler,
20596
- ni as IfcPropertiesUtils,
20597
- gs as IfcPropertyQuery,
20612
+ ri as IfcPropertiesUtils,
20613
+ As as IfcPropertyQuery,
20598
20614
  kt as IfcRelationsIndexer,
20599
20615
  Jl as IfcStreamingSettings,
20600
20616
  pr as MaterialsUtils,
@@ -20609,9 +20625,9 @@ export {
20609
20625
  yc as PlanMode,
20610
20626
  Lc as ProjectionManager,
20611
20627
  th as PropertiesStreamingSettings,
20612
- oi as Raycasters,
20628
+ ai as Raycasters,
20613
20629
  Rh as ShadowedScene,
20614
- vi as SimpleCamera,
20630
+ Ui as SimpleCamera,
20615
20631
  Ec as SimpleGrid,
20616
20632
  dc as SimpleGridConfigManager,
20617
20633
  Vn as SimplePlane,
@@ -20620,12 +20636,12 @@ export {
20620
20636
  ec as SimpleScene,
20621
20637
  tc as SimpleSceneConfigManager,
20622
20638
  Qa as SimpleWorld,
20623
- ms as Topic,
20624
- Ce as UUID,
20639
+ Rs as Topic,
20640
+ oe as UUID,
20625
20641
  Th as VertexPicker,
20626
20642
  To as Viewpoint,
20627
- se as Viewpoints,
20628
- Cs as Worlds,
20643
+ ie as Viewpoints,
20644
+ Ts as Worlds,
20629
20645
  Ql as extensionsImporter,
20630
20646
  wc as ifcCategoryCase,
20631
20647
  Dc as ifcRelAttrsPosition,