@needle-tools/engine 4.15.0-next.cecd8e7 → 4.15.0
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/{needle-engine.bundle-CuAiLb-d.min.js → needle-engine.bundle-CBq_OMnI.min.js} +56 -56
- package/dist/{needle-engine.bundle-VZVrVbc3.js → needle-engine.bundle-DGyiwNWR.js} +732 -732
- package/dist/{needle-engine.bundle-JQGIFVRm.umd.cjs → needle-engine.bundle-JN3eiiYc.umd.cjs} +55 -55
- package/dist/needle-engine.d.ts +6 -6
- package/dist/needle-engine.js +2 -2
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/lib/engine/engine_accessibility.d.ts +1 -1
- package/lib/engine/engine_accessibility.js +1 -1
- package/lib/engine/engine_accessibility.js.map +1 -1
- package/lib/engine/engine_context.d.ts +1 -1
- package/lib/engine/engine_context.js +1 -1
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.js +1 -1
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
- package/package.json +2 -2
- package/src/engine/engine_accessibility.ts +1 -2
- package/src/engine/engine_context.ts +1 -1
- package/src/engine-components/ReflectionProbe.ts +1 -1
|
@@ -1965,9 +1965,9 @@ Ro('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUIL
|
|
|
1965
1965
|
Ro('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";');
|
|
1966
1966
|
Ro('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.15.0";');
|
|
1967
1967
|
Ro('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');
|
|
1968
|
-
Ro('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Fri Feb 27 2026 14:
|
|
1968
|
+
Ro('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Fri Feb 27 2026 14:00:38 GMT+0000 (Coordinated Universal Time)";');
|
|
1969
1969
|
Ro('globalThis["__NEEDLE_PUBLIC_KEY__"] = "' + NEEDLE_PUBLIC_KEY + '";');
|
|
1970
|
-
const Xi = "4.15.0", Rc = "undefined", Bd = "Fri Feb 27 2026 14:
|
|
1970
|
+
const Xi = "4.15.0", Rc = "undefined", Bd = "Fri Feb 27 2026 14:00:38 GMT+0000 (Coordinated Universal Time)";
|
|
1971
1971
|
Jv && console.log(`Engine version: ${Xi} (generator: ${Rc})
|
|
1972
1972
|
Project built at ${Bd}`);
|
|
1973
1973
|
const gr = NEEDLE_PUBLIC_KEY, bo = "needle_isActiveInHierarchy", da = "builtin_components", cd = "needle_editor_guid";
|
|
@@ -2007,149 +2007,13 @@ function bP(s, e) {
|
|
|
2007
2007
|
} else L() && console.debug("Spector available: Add '?spector=<frame>' to the URL to enable it and capture a frame.");
|
|
2008
2008
|
}
|
|
2009
2009
|
}
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
}
|
|
2014
|
-
var hg = /* @__PURE__ */ ((s) => (s[s.None = 0] = "None", s[s.DontExport = 1] = "DontExport", s))(hg || {});
|
|
2015
|
-
const wP = /* @__PURE__ */ Symbol("component-name");
|
|
2016
|
-
function i0(s) {
|
|
2017
|
-
return s && s.isComponent;
|
|
2018
|
-
}
|
|
2019
|
-
const OD = /* @__PURE__ */ Symbol("object"), Ff = new Yi(() => new _(), 20);
|
|
2020
|
-
class xP {
|
|
2021
|
-
_point;
|
|
2022
|
-
_normal;
|
|
2023
|
-
_tangentVelocity;
|
|
2024
|
-
/** the distance of the collision point */
|
|
2025
|
-
distance;
|
|
2026
|
-
/** the impulse velocity */
|
|
2027
|
-
impulse;
|
|
2028
|
-
friction;
|
|
2029
|
-
/** worldspace point */
|
|
2030
|
-
get point() {
|
|
2031
|
-
return Ff.get().set(this._point.x, this._point.y, this._point.z);
|
|
2032
|
-
}
|
|
2033
|
-
/** worldspace normal */
|
|
2034
|
-
get normal() {
|
|
2035
|
-
return Ff.get().set(this._normal.x, this._normal.y, this._normal.z);
|
|
2036
|
-
}
|
|
2037
|
-
/** worldspace tangent */
|
|
2038
|
-
get tangentVelocity() {
|
|
2039
|
-
return Ff.get().set(this._tangentVelocity.x, this._tangentVelocity.y, this._tangentVelocity.z);
|
|
2040
|
-
}
|
|
2041
|
-
/** @internal */
|
|
2042
|
-
constructor(e, t, i, n, o, r) {
|
|
2043
|
-
this._point = e, this.distance = t, this._normal = i, this.impulse = n, this.friction = o, this._tangentVelocity = r;
|
|
2044
|
-
}
|
|
2045
|
-
}
|
|
2046
|
-
class SP {
|
|
2047
|
-
/** The contact points of this collision. Contains information about positions, normals, distance, friction, impulse... */
|
|
2048
|
-
contacts;
|
|
2049
|
-
/** @internal */
|
|
2050
|
-
constructor(e, t, i) {
|
|
2051
|
-
this.me = e, this._collider = t, this._gameObject = t.gameObject, this.contacts = i;
|
|
2052
|
-
}
|
|
2053
|
-
/** the gameobject this collision event belongs to (e.g. if onCollisionEnter is called then `me` is the same as `this.gameObject`) */
|
|
2054
|
-
me;
|
|
2055
|
-
_collider;
|
|
2056
|
-
/** the other collider the collision happened with */
|
|
2057
|
-
get collider() {
|
|
2058
|
-
return this._collider;
|
|
2059
|
-
}
|
|
2060
|
-
_gameObject;
|
|
2061
|
-
/** the other object the collision happened with */
|
|
2062
|
-
get gameObject() {
|
|
2063
|
-
return this._gameObject;
|
|
2064
|
-
}
|
|
2065
|
-
/** the other rigidbody we hit, null if none attached */
|
|
2066
|
-
get rigidBody() {
|
|
2067
|
-
return this.collider?.attachedRigidbody;
|
|
2068
|
-
}
|
|
2069
|
-
}
|
|
2070
|
-
class CP {
|
|
2071
|
-
object;
|
|
2072
|
-
collider;
|
|
2073
|
-
constructor(e, t) {
|
|
2074
|
-
this.object = e, this.collider = t;
|
|
2075
|
-
}
|
|
2076
|
-
}
|
|
2077
|
-
class Fd {
|
|
2078
|
-
constructor(e) {
|
|
2079
|
-
this.context = e, this.root.style.cssText = `
|
|
2080
|
-
position: absolute;
|
|
2081
|
-
width: 1px; height: 1px;
|
|
2082
|
-
padding: 0; margin: -1px;
|
|
2083
|
-
overflow: hidden;
|
|
2084
|
-
clip: rect(0, 0, 0, 0);
|
|
2085
|
-
white-space: nowrap;
|
|
2086
|
-
border: 0;
|
|
2087
|
-
`, this.root.setAttribute("role", "region"), this.root.setAttribute("aria-label", "3D Needle Engine scene"), this.liveRegion.setAttribute("aria-live", "polite"), this.liveRegion.setAttribute("aria-atomic", "true"), this.liveRegion.setAttribute("role", "status"), this.root.appendChild(this.liveRegion), this.enabled = !0;
|
|
2088
|
-
}
|
|
2089
|
-
static _managers = /* @__PURE__ */ new WeakMap();
|
|
2090
|
-
/** Returns the {@link AccessibilityManager} associated with the given context or component. */
|
|
2091
|
-
static get(e) {
|
|
2092
|
-
return i0(e) ? this._managers.get(e.context) : this._managers.get(e);
|
|
2093
|
-
}
|
|
2094
|
-
_enabled;
|
|
2095
|
-
/** Enables or disables the accessibility overlay. When disabled, the overlay DOM is removed. */
|
|
2096
|
-
set enabled(e) {
|
|
2097
|
-
e !== this._enabled && (this._enabled = e, e ? (Fd._managers.set(this.context, this), (this.context.domElement.shadowRoot || this.context.domElement).prepend(this.root)) : this.root.remove());
|
|
2098
|
-
}
|
|
2099
|
-
/** Removes all tracked accessibility elements, keeping only the live region. */
|
|
2100
|
-
clear() {
|
|
2101
|
-
this.root.childNodes.forEach((e) => e.remove()), this.root.appendChild(this.liveRegion);
|
|
2102
|
-
}
|
|
2103
|
-
/** Removes the overlay from the DOM and unregisters this manager from the context. */
|
|
2104
|
-
dispose() {
|
|
2105
|
-
this.root.remove(), Fd._managers.delete(this.context);
|
|
2106
|
-
}
|
|
2107
|
-
root = document.createElement("div");
|
|
2108
|
-
liveRegion = document.createElement("div");
|
|
2109
|
-
treeElements = /* @__PURE__ */ new WeakMap();
|
|
2110
|
-
/**
|
|
2111
|
-
* Creates or updates the accessible DOM element for a 3D object or component.
|
|
2112
|
-
* @param obj - The scene object or component to represent.
|
|
2113
|
-
* @param data - Partial accessibility data (role, label, hidden, busy) to apply.
|
|
2114
|
-
*/
|
|
2115
|
-
updateElement(e, t) {
|
|
2116
|
-
let i = this.treeElements.get(e);
|
|
2117
|
-
i || (i = document.createElement("div"), this.treeElements.set(e, i), this.root.appendChild(i), typeof t == "object" && (t.role && i.setAttribute("role", t.role), t.label && i.setAttribute("aria-label", t.label), t.hidden !== void 0 && i.setAttribute("aria-hidden", String(t.hidden)), t.busy !== void 0 && i.setAttribute("aria-busy", String(t.busy))));
|
|
2118
|
-
}
|
|
2119
|
-
/** Moves keyboard focus to the accessible element representing the given object. */
|
|
2120
|
-
focus(e) {
|
|
2121
|
-
const t = this.treeElements.get(e);
|
|
2122
|
-
t && t.focus();
|
|
2123
|
-
}
|
|
2124
|
-
/** Removes keyboard focus from the accessible element representing the given object. */
|
|
2125
|
-
unfocus(e) {
|
|
2126
|
-
const t = this.treeElements.get(e);
|
|
2127
|
-
t && t.blur();
|
|
2128
|
-
}
|
|
2129
|
-
/**
|
|
2130
|
-
* Announces a hover event to screen readers via the ARIA live region.
|
|
2131
|
-
* @param obj - The hovered object (used to look up its label if `text` is not provided).
|
|
2132
|
-
* @param text - Optional text to announce. Falls back to the element's `aria-label`.
|
|
2133
|
-
*/
|
|
2134
|
-
hover(e, t) {
|
|
2135
|
-
const i = this.treeElements.get(e);
|
|
2136
|
-
this.liveRegion.textContent = t || i?.getAttribute("aria-label") || "";
|
|
2137
|
-
}
|
|
2138
|
-
/** Removes the accessible DOM element for the given object and stops tracking it. */
|
|
2139
|
-
removeElement(e) {
|
|
2140
|
-
this.treeElements.get(e)?.remove(), this.treeElements.delete(e);
|
|
2141
|
-
}
|
|
2142
|
-
set liveRegionMode(e) {
|
|
2143
|
-
this.liveRegion.setAttribute("aria-live", e);
|
|
2144
|
-
}
|
|
2145
|
-
}
|
|
2146
|
-
const wi = /* @__PURE__ */ Symbol("shadowDomOwner"), PP = x("debugpatch");
|
|
2147
|
-
function dg(s, e, t, i) {
|
|
2148
|
-
const n = PP === e;
|
|
2010
|
+
const wi = /* @__PURE__ */ Symbol("shadowDomOwner"), vP = x("debugpatch");
|
|
2011
|
+
function hg(s, e, t, i) {
|
|
2012
|
+
const n = vP === e;
|
|
2149
2013
|
if (!t && !i)
|
|
2150
2014
|
return;
|
|
2151
2015
|
const o = e + "___needle";
|
|
2152
|
-
|
|
2016
|
+
wP(s, e, t, i);
|
|
2153
2017
|
const r = Object.getOwnPropertyDescriptor(s, e), a = s[e];
|
|
2154
2018
|
n && console.log("Patch", s.constructor.name, e, r, a), r ? (n && console.log("Apply patch with existing descriptor", s.constructor.name, e, r), typeof r.value == "function" && (s[e] = f_(r.value, s, e))) : (n && console.log("Create patch with new property", s.constructor.name, e, r), Object.defineProperty(s, e, {
|
|
2155
2019
|
set: function(l) {
|
|
@@ -2157,7 +2021,7 @@ function dg(s, e, t, i) {
|
|
|
2157
2021
|
this[o] = f_(l, s, e);
|
|
2158
2022
|
else {
|
|
2159
2023
|
const c = this[o];
|
|
2160
|
-
|
|
2024
|
+
i0(s, e, this, c, l), this[o] = l, n0(s, e, this, c, l);
|
|
2161
2025
|
}
|
|
2162
2026
|
},
|
|
2163
2027
|
get: function() {
|
|
@@ -2166,8 +2030,8 @@ function dg(s, e, t, i) {
|
|
|
2166
2030
|
}
|
|
2167
2031
|
}));
|
|
2168
2032
|
}
|
|
2169
|
-
function
|
|
2170
|
-
const i =
|
|
2033
|
+
function OD(s, e, t) {
|
|
2034
|
+
const i = dg(s, e);
|
|
2171
2035
|
if (i)
|
|
2172
2036
|
for (let n = i.length - 1; n >= 0; n--) {
|
|
2173
2037
|
const o = i[n];
|
|
@@ -2179,21 +2043,21 @@ function f_(s, e, t) {
|
|
|
2179
2043
|
if (s[u_])
|
|
2180
2044
|
return s;
|
|
2181
2045
|
const i = function(...n) {
|
|
2182
|
-
|
|
2046
|
+
i0(e, t, this, ...n);
|
|
2183
2047
|
const o = s.apply(this, n);
|
|
2184
|
-
return
|
|
2048
|
+
return n0(e, t, this, o, ...n), o;
|
|
2185
2049
|
};
|
|
2186
2050
|
return i[u_] = !0, i;
|
|
2187
2051
|
}
|
|
2188
|
-
const
|
|
2052
|
+
const Ff = "Needle:Patches";
|
|
2189
2053
|
function Yp() {
|
|
2190
|
-
return globalThis[
|
|
2054
|
+
return globalThis[Ff] || (globalThis[Ff] = /* @__PURE__ */ new WeakMap()), globalThis[Ff];
|
|
2191
2055
|
}
|
|
2192
|
-
function
|
|
2056
|
+
function dg(s, e) {
|
|
2193
2057
|
const t = Yp().get(s);
|
|
2194
2058
|
return t ? t.get(e) : null;
|
|
2195
2059
|
}
|
|
2196
|
-
function
|
|
2060
|
+
function wP(s, e, t, i) {
|
|
2197
2061
|
let n = Yp().get(s);
|
|
2198
2062
|
n || (n = /* @__PURE__ */ new Map(), Yp().set(s, n));
|
|
2199
2063
|
let o = n.get(e);
|
|
@@ -2202,48 +2066,48 @@ function kP(s, e, t, i) {
|
|
|
2202
2066
|
postfix: i
|
|
2203
2067
|
});
|
|
2204
2068
|
}
|
|
2205
|
-
function
|
|
2069
|
+
function i0(s, e, t, ...i) {
|
|
2206
2070
|
if (!t) return;
|
|
2207
|
-
const n =
|
|
2071
|
+
const n = dg(s, e);
|
|
2208
2072
|
if (n)
|
|
2209
2073
|
for (const o of n)
|
|
2210
2074
|
o.prefix?.call(t, ...i);
|
|
2211
2075
|
}
|
|
2212
|
-
function
|
|
2076
|
+
function n0(s, e, t, i, ...n) {
|
|
2213
2077
|
if (!t) return;
|
|
2214
|
-
const o =
|
|
2078
|
+
const o = dg(s, e);
|
|
2215
2079
|
if (o)
|
|
2216
2080
|
for (const r of o)
|
|
2217
2081
|
r.postfix?.call(t, i, ...n);
|
|
2218
2082
|
}
|
|
2219
2083
|
const Wa = [];
|
|
2220
|
-
function
|
|
2084
|
+
function ug(s) {
|
|
2221
2085
|
Wa.indexOf(s) === -1 && Wa.push(s);
|
|
2222
2086
|
}
|
|
2223
|
-
function
|
|
2087
|
+
function MD(s) {
|
|
2224
2088
|
const e = Wa.indexOf(s);
|
|
2225
2089
|
e !== -1 && Wa.splice(e, 1);
|
|
2226
2090
|
}
|
|
2227
2091
|
const Va = [];
|
|
2228
|
-
function
|
|
2092
|
+
function s0(s) {
|
|
2229
2093
|
Va.indexOf(s) === -1 && Va.push(s);
|
|
2230
2094
|
}
|
|
2231
|
-
function
|
|
2095
|
+
function ED(s) {
|
|
2232
2096
|
const e = Va.indexOf(s);
|
|
2233
2097
|
e !== -1 && Va.splice(e, 1);
|
|
2234
2098
|
}
|
|
2235
|
-
function
|
|
2099
|
+
function xP(s) {
|
|
2236
2100
|
globalThis.dispatchEvent(new CustomEvent("needle-xrsession-start", { detail: s }));
|
|
2237
2101
|
for (let e = 0; e < Wa.length; e++)
|
|
2238
2102
|
Wa[e](s);
|
|
2239
2103
|
}
|
|
2240
|
-
function
|
|
2104
|
+
function SP(s) {
|
|
2241
2105
|
globalThis.dispatchEvent(new CustomEvent("needle-xrsession-end", { detail: s }));
|
|
2242
2106
|
for (let e = 0; e < Va.length; e++)
|
|
2243
2107
|
Va[e](s);
|
|
2244
2108
|
}
|
|
2245
2109
|
const Ge = x("debuginput");
|
|
2246
|
-
var
|
|
2110
|
+
var fg = /* @__PURE__ */ ((s) => (s.Mouse = "mouse", s.Touch = "touch", s.Controller = "controller", s.Hand = "hand", s))(fg || {}), Be = /* @__PURE__ */ ((s) => (s.PointerDown = "pointerdown", s.PointerUp = "pointerup", s.PointerMove = "pointermove", s.KeyDown = "keydown", s.KeyUp = "keyup", s.KeyPressed = "keypress", s))(Be || {});
|
|
2247
2111
|
class to extends PointerEvent {
|
|
2248
2112
|
/**
|
|
2249
2113
|
* Spatial input data
|
|
@@ -2350,7 +2214,7 @@ class Oh extends KeyboardEvent {
|
|
|
2350
2214
|
super.stopImmediatePropagation(), this.source?.stopImmediatePropagation();
|
|
2351
2215
|
}
|
|
2352
2216
|
}
|
|
2353
|
-
class
|
|
2217
|
+
class RD {
|
|
2354
2218
|
key;
|
|
2355
2219
|
keyType;
|
|
2356
2220
|
source;
|
|
@@ -2359,7 +2223,7 @@ class TD {
|
|
|
2359
2223
|
}
|
|
2360
2224
|
}
|
|
2361
2225
|
var vi = /* @__PURE__ */ ((s) => (s[s.Early = -100] = "Early", s[s.Default = 0] = "Default", s[s.Late = 100] = "Late", s))(vi || {});
|
|
2362
|
-
class
|
|
2226
|
+
class CP {
|
|
2363
2227
|
/** This is a list of event listeners per event type (e.g. pointerdown, pointerup, keydown...). Each entry contains a priority and list of listeners.
|
|
2364
2228
|
* That way users can control if they want to receive events before or after other listeners (e.g subscribe to pointer events before the EventSystem receives them) - this allows certain listeners to be always invoked first (or last) and stop propagation
|
|
2365
2229
|
* Listeners per event are sorted
|
|
@@ -3014,8 +2878,8 @@ class EP {
|
|
|
3014
2878
|
}
|
|
3015
2879
|
}
|
|
3016
2880
|
}
|
|
3017
|
-
const Pa = new ee().makeRotationY(Math.PI), Vi = new V().setFromAxisAngle(new _(0, 1, 0), Math.PI),
|
|
3018
|
-
class
|
|
2881
|
+
const Pa = new ee().makeRotationY(Math.PI), Vi = new V().setFromAxisAngle(new _(0, 1, 0), Math.PI), PP = x("debugwebxr");
|
|
2882
|
+
class kP {
|
|
3019
2883
|
priority = -1e5;
|
|
3020
2884
|
gameObject;
|
|
3021
2885
|
isXRRig() {
|
|
@@ -3025,14 +2889,14 @@ class TP {
|
|
|
3025
2889
|
return this.gameObject.visible;
|
|
3026
2890
|
}
|
|
3027
2891
|
constructor() {
|
|
3028
|
-
if (this.gameObject = new M(), this.gameObject.name = "Implicit XR Rig",
|
|
3029
|
-
const e =
|
|
2892
|
+
if (this.gameObject = new M(), this.gameObject.name = "Implicit XR Rig", PP) {
|
|
2893
|
+
const e = gg(16733661);
|
|
3030
2894
|
e.position.y += 0.5, this.gameObject.add(e);
|
|
3031
2895
|
}
|
|
3032
2896
|
}
|
|
3033
2897
|
}
|
|
3034
|
-
const as = x("debugwebxr"), Mh = x("debugcustomgesture"),
|
|
3035
|
-
class
|
|
2898
|
+
const as = x("debugwebxr"), Mh = x("debugcustomgesture"), OP = "https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles", MP = "generic-trigger", EP = new V().setFromEuler(new ct(Cs.degToRad(0), Cs.degToRad(-90), Cs.degToRad(-90))), RP = new _(0.04, -0.04, 0);
|
|
2899
|
+
class o0 {
|
|
3036
2900
|
/** the Needle XR Session */
|
|
3037
2901
|
xr;
|
|
3038
2902
|
get context() {
|
|
@@ -3369,7 +3233,7 @@ Layout: `;
|
|
|
3369
3233
|
}
|
|
3370
3234
|
h || (this._object.position.copy(this._rayPosition), this._object.quaternion.copy(this._rayQuaternion).multiply(Vi));
|
|
3371
3235
|
const p = a.get("middle-finger-metacarpal"), g = p && this.getHandJointPose(p, e);
|
|
3372
|
-
g && (this._gripMatrix.fromArray(g.transform.matrix).premultiply(Pa), this._gripMatrix.decompose(this._gripPosition, this._gripQuaternion, z(1, 1, 1)), i = z().copy(g.transform.position), n = bi().copy(g.transform.orientation), n.multiply(
|
|
3236
|
+
g && (this._gripMatrix.fromArray(g.transform.matrix).premultiply(Pa), this._gripMatrix.decompose(this._gripPosition, this._gripQuaternion, z(1, 1, 1)), i = z().copy(g.transform.position), n = bi().copy(g.transform.orientation), n.multiply(EP), i.add(z(RP).applyQuaternion(n)));
|
|
3373
3237
|
} else this.inputSource.gripSpace && this.targetRayMode === "transient-pointer" && i && n ? (this._object.position.copy(i), this._object.quaternion.copy(n).multiply(Vi)) : o && r && (this._object.position.copy(o), this._object.quaternion.copy(r).multiply(Vi));
|
|
3374
3238
|
as && (o && r && (this._raySpaceObject?.position.copy(o), this._raySpaceObject?.quaternion.copy(r).multiply(Vi)), i && n && (this._gripSpaceObject?.position.copy(i), this._gripSpaceObject?.quaternion.copy(n).multiply(Vi)));
|
|
3375
3239
|
const l = this.xr.context.mainCamera?.parent, c = l ? ve(l) : void 0;
|
|
@@ -3486,7 +3350,7 @@ Layout: `;
|
|
|
3486
3350
|
initialize() {
|
|
3487
3351
|
if (this._hasSelectEvent = this.profiles.includes("generic-hand-select") || this.profiles.some((e) => e.startsWith("generic-trigger")), this._isMetaQuestTouchController = this.profiles.includes("meta-quest-touch-plus") || this.profiles.includes("oculus-touch-v3"), this._isMxInk = this.profiles.includes("logitech-mx-ink"), !this._layout) {
|
|
3488
3352
|
if (this.inputSource.targetRayMode === "transient-pointer") return;
|
|
3489
|
-
const e = UC(this.inputSource,
|
|
3353
|
+
const e = UC(this.inputSource, OP, MP);
|
|
3490
3354
|
this.getMotionController = e.then((t) => {
|
|
3491
3355
|
if (!this.connected) return null;
|
|
3492
3356
|
this._motioncontroller = new zC(
|
|
@@ -3786,10 +3650,10 @@ function To(s, e) {
|
|
|
3786
3650
|
}
|
|
3787
3651
|
}
|
|
3788
3652
|
function Rn(s, e) {
|
|
3789
|
-
e === ue.ContextCreated && Zp.delete(s),
|
|
3653
|
+
e === ue.ContextCreated && Zp.delete(s), r0(s, e);
|
|
3790
3654
|
}
|
|
3791
|
-
function
|
|
3792
|
-
e === Ce.Start && ka.get(ue.ContextCreated) &&
|
|
3655
|
+
function r0(s, e) {
|
|
3656
|
+
e === Ce.Start && ka.get(ue.ContextCreated) && r0(s, ue.ContextCreated);
|
|
3793
3657
|
const t = e === Ce.Start || e === ue.ContextCreated, i = ba.get(e);
|
|
3794
3658
|
i && i.length > 0 && __(s, i, t);
|
|
3795
3659
|
const n = ka.get(e);
|
|
@@ -3824,27 +3688,27 @@ function __(s, e, t) {
|
|
|
3824
3688
|
} else t && (i || (i = /* @__PURE__ */ new Set(), Zp.set(s, i)), i.add(o));
|
|
3825
3689
|
}
|
|
3826
3690
|
}
|
|
3827
|
-
const Zp = /* @__PURE__ */ new WeakMap(),
|
|
3828
|
-
function
|
|
3829
|
-
|
|
3691
|
+
const Zp = /* @__PURE__ */ new WeakMap(), a0 = {};
|
|
3692
|
+
function l0(s, e) {
|
|
3693
|
+
a0[s] = e;
|
|
3830
3694
|
}
|
|
3831
|
-
function
|
|
3832
|
-
const e = s.getBufferIdentifier(), t =
|
|
3695
|
+
function TP(s) {
|
|
3696
|
+
const e = s.getBufferIdentifier(), t = a0[e];
|
|
3833
3697
|
return t(s);
|
|
3834
3698
|
}
|
|
3835
|
-
function
|
|
3699
|
+
function AP(s) {
|
|
3836
3700
|
return typeof s.guid == "function" ? s.guid() : null;
|
|
3837
3701
|
}
|
|
3838
|
-
let
|
|
3839
|
-
function
|
|
3840
|
-
return
|
|
3702
|
+
let pg;
|
|
3703
|
+
function TD() {
|
|
3704
|
+
return pg;
|
|
3841
3705
|
}
|
|
3842
|
-
function
|
|
3843
|
-
|
|
3706
|
+
function AD(s) {
|
|
3707
|
+
pg = s;
|
|
3844
3708
|
}
|
|
3845
|
-
function
|
|
3709
|
+
function IP(s, e) {
|
|
3846
3710
|
return e || (e = {}), e = {
|
|
3847
|
-
...
|
|
3711
|
+
...pg,
|
|
3848
3712
|
...e
|
|
3849
3713
|
}, s ? new Wy(s, e) : new Wy(e);
|
|
3850
3714
|
}
|
|
@@ -3852,7 +3716,7 @@ async function b_() {
|
|
|
3852
3716
|
const s = await import("./vendor-ixwD-vv2.js").then((e) => e.bundler);
|
|
3853
3717
|
return console.log(s), s.default === void 0 ? s : s.default;
|
|
3854
3718
|
}
|
|
3855
|
-
class
|
|
3719
|
+
class LP {
|
|
3856
3720
|
get isHost() {
|
|
3857
3721
|
return this._host !== void 0;
|
|
3858
3722
|
}
|
|
@@ -3870,7 +3734,7 @@ class UP {
|
|
|
3870
3734
|
i.on("error", (n) => {
|
|
3871
3735
|
console.error(n), this._host = void 0, this.trySetupClient(e);
|
|
3872
3736
|
}), i.on("open", (n) => {
|
|
3873
|
-
this._host = new
|
|
3737
|
+
this._host = new jP(i);
|
|
3874
3738
|
});
|
|
3875
3739
|
}
|
|
3876
3740
|
async trySetupClient(e) {
|
|
@@ -3886,13 +3750,13 @@ class UP {
|
|
|
3886
3750
|
});
|
|
3887
3751
|
}
|
|
3888
3752
|
}
|
|
3889
|
-
class
|
|
3753
|
+
class DP {
|
|
3890
3754
|
_peer;
|
|
3891
3755
|
constructor(e) {
|
|
3892
3756
|
this._peer = e;
|
|
3893
3757
|
}
|
|
3894
3758
|
}
|
|
3895
|
-
class
|
|
3759
|
+
class jP extends DP {
|
|
3896
3760
|
get isHost() {
|
|
3897
3761
|
return !0;
|
|
3898
3762
|
}
|
|
@@ -3932,8 +3796,8 @@ var Bn = /* @__PURE__ */ ((s) => (s[s.OnConnection = 0] = "OnConnection", s[s.On
|
|
|
3932
3796
|
const v_ = "https://urls.needle.tools/default-networking-backend/index";
|
|
3933
3797
|
let Bi = "wss://networking-2.needle.tools/socket";
|
|
3934
3798
|
const yi = !!x("debugnet"), Rh = !!(yi || x("debugowner")), Th = x("debugnetbin");
|
|
3935
|
-
var
|
|
3936
|
-
class
|
|
3799
|
+
var BP = /* @__PURE__ */ ((s) => (s.ConnectionInfo = "connection-start-info", s))(BP || {}), ie = /* @__PURE__ */ ((s) => (s.Join = "join-room", s.Leave = "leave-room", s.JoinedRoom = "joined-room", s.LeftRoom = "left-room", s.UserJoinedRoom = "user-joined-room", s.UserLeftRoom = "user-left-room", s.RoomStateSent = "room-state-sent", s))(ie || {});
|
|
3800
|
+
class ID {
|
|
3937
3801
|
room;
|
|
3938
3802
|
// room name
|
|
3939
3803
|
viewId;
|
|
@@ -3941,15 +3805,15 @@ class LD {
|
|
|
3941
3805
|
inRoom;
|
|
3942
3806
|
// connection ids
|
|
3943
3807
|
}
|
|
3944
|
-
class
|
|
3808
|
+
class LD {
|
|
3945
3809
|
room;
|
|
3946
3810
|
// room name
|
|
3947
3811
|
}
|
|
3948
|
-
class
|
|
3812
|
+
class DD {
|
|
3949
3813
|
userId;
|
|
3950
3814
|
}
|
|
3951
|
-
var
|
|
3952
|
-
class
|
|
3815
|
+
var FP = /* @__PURE__ */ ((s) => (s.RequestHasOwner = "request-has-owner", s.ResponseHasOwner = "response-has-owner", s.RequestIsOwner = "request-is-owner", s.ResponseIsOwner = "response-is-owner", s.RequestOwnership = "request-ownership", s.GainedOwnership = "gained-ownership", s.RemoveOwnership = "remove-ownership", s.LostOwnership = "lost-ownership", s.GainedOwnershipBroadcast = "gained-ownership-broadcast", s.LostOwnershipBroadcast = "lost-ownership-broadcast", s))(FP || {});
|
|
3816
|
+
class c0 {
|
|
3953
3817
|
/** The unique identifier (GUID) of the object this ownership model manages */
|
|
3954
3818
|
guid;
|
|
3955
3819
|
connection;
|
|
@@ -4062,7 +3926,7 @@ class h0 {
|
|
|
4062
3926
|
e === this.guid && (Rh && console.log("LOST OWNERSHIP", this.guid), this._hasOwnership = !1, this._isOwned = !1);
|
|
4063
3927
|
}
|
|
4064
3928
|
}
|
|
4065
|
-
class
|
|
3929
|
+
class UP {
|
|
4066
3930
|
context;
|
|
4067
3931
|
_peer = null;
|
|
4068
3932
|
constructor(e) {
|
|
@@ -4070,7 +3934,7 @@ class VP {
|
|
|
4070
3934
|
}
|
|
4071
3935
|
/** Experimental: networking via peerjs */
|
|
4072
3936
|
get peer() {
|
|
4073
|
-
return this._peer || (this._peer = new
|
|
3937
|
+
return this._peer || (this._peer = new LP()), this._peer;
|
|
4074
3938
|
}
|
|
4075
3939
|
/**
|
|
4076
3940
|
* Returns the cached network state for a given GUID.
|
|
@@ -4373,7 +4237,7 @@ class VP {
|
|
|
4373
4237
|
Th && console.log("<< bin", this.context.time.frame);
|
|
4374
4238
|
const t = await e.arrayBuffer();
|
|
4375
4239
|
var i = new Uint8Array(t);
|
|
4376
|
-
const n = new NC(i), o = n.getBufferIdentifier(), r = this._listenersBinary[o], a =
|
|
4240
|
+
const n = new NC(i), o = n.getBufferIdentifier(), r = this._listenersBinary[o], a = TP(n), l = AP(a);
|
|
4377
4241
|
if (l && typeof l == "string" && (this._state[l] = a), !r) return;
|
|
4378
4242
|
const c = a ?? n;
|
|
4379
4243
|
for (const h of r)
|
|
@@ -4474,7 +4338,7 @@ ${a.href}`);
|
|
|
4474
4338
|
}
|
|
4475
4339
|
}
|
|
4476
4340
|
const uc = x("debugwebxr");
|
|
4477
|
-
class
|
|
4341
|
+
class Uf {
|
|
4478
4342
|
controllerStates = [];
|
|
4479
4343
|
userId;
|
|
4480
4344
|
context;
|
|
@@ -4533,7 +4397,7 @@ class zf {
|
|
|
4533
4397
|
}
|
|
4534
4398
|
}
|
|
4535
4399
|
}
|
|
4536
|
-
class
|
|
4400
|
+
class zP {
|
|
4537
4401
|
hasState(e) {
|
|
4538
4402
|
return e ? this._states.has(e) : !1;
|
|
4539
4403
|
}
|
|
@@ -4558,9 +4422,9 @@ class HP {
|
|
|
4558
4422
|
}
|
|
4559
4423
|
onJoinedRoom = () => {
|
|
4560
4424
|
if (this.context.connection.connectionId) {
|
|
4561
|
-
this._states.has(this.context.connection.connectionId) || (uc && console.log("XRSync: Local user joined room", this.context.connection.connectionId), this._states.set(this.context.connection.connectionId, new
|
|
4425
|
+
this._states.has(this.context.connection.connectionId) || (uc && console.log("XRSync: Local user joined room", this.context.connection.connectionId), this._states.set(this.context.connection.connectionId, new Uf(this.context.connection.connectionId, this.context)));
|
|
4562
4426
|
for (const e of this.context.connection.usersInRoom())
|
|
4563
|
-
this._states.has(e) || this._states.set(e, new
|
|
4427
|
+
this._states.has(e) || this._states.set(e, new Uf(e, this.context));
|
|
4564
4428
|
}
|
|
4565
4429
|
};
|
|
4566
4430
|
onLeftRoom = () => {
|
|
@@ -4568,7 +4432,7 @@ class HP {
|
|
|
4568
4432
|
};
|
|
4569
4433
|
onOtherUserJoinedRoom = (e) => {
|
|
4570
4434
|
const t = e.userId;
|
|
4571
|
-
this._states.has(t) || (uc && console.log("XRSync: Remote user joined room", t), this._states.set(t, new
|
|
4435
|
+
this._states.has(t) || (uc && console.log("XRSync: Remote user joined room", t), this._states.set(t, new Uf(t, this.context)));
|
|
4572
4436
|
};
|
|
4573
4437
|
onOtherUserLeftRoom = (e) => {
|
|
4574
4438
|
const t = e.userId;
|
|
@@ -4623,9 +4487,9 @@ class w_ {
|
|
|
4623
4487
|
_transitionPromise = null;
|
|
4624
4488
|
_transitionResolve = null;
|
|
4625
4489
|
}
|
|
4626
|
-
const GP = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 187.74"><defs><linearGradient id="a" x1="89.64" y1="184.81" x2="90.48" y2="21.85" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#62d399"/><stop offset=".51" stop-color="#acd842"/><stop offset=".9" stop-color="#d7db0a"/></linearGradient><linearGradient id="b" x1="69.68" y1="178.9" x2="68.08" y2="16.77" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#0ba398"/><stop offset=".5" stop-color="#4ca352"/><stop offset="1" stop-color="#76a30a"/></linearGradient><linearGradient id="c" x1="36.6" y1="152.17" x2="34.7" y2="84.19" gradientUnits="userSpaceOnUse"><stop offset=".19" stop-color="#36a382"/><stop offset=".54" stop-color="#49a459"/><stop offset="1" stop-color="#76a30b"/></linearGradient><linearGradient id="d" x1="15.82" y1="153.24" x2="18" y2="90.86" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#267880"/><stop offset=".51" stop-color="#457a5c"/><stop offset="1" stop-color="#717516"/></linearGradient><linearGradient id="e" x1="135.08" y1="135.43" x2="148.93" y2="63.47" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b0d939"/><stop offset="1" stop-color="#eadb04"/></linearGradient><linearGradient id="f" x1="-4163.25" y1="2285.12" x2="-4160.81" y2="2215.34" gradientTransform="rotate(20 4088.49 13316.712)" gradientUnits="userSpaceOnUse"><stop offset=".17" stop-color="#74af52"/><stop offset=".48" stop-color="#99be32"/><stop offset="1" stop-color="#c0c40a"/></linearGradient><symbol id="g" viewBox="0 0 160 187.74"><path style="fill:url(#a)" d="M79.32 36.98v150.76L95 174.54l6.59-156.31-22.27 18.75z"/><path style="fill:url(#b)" d="M79.32 36.98 57.05 18.23l6.59 156.31 15.68 13.2V36.98z"/><path style="fill:url(#c)" d="m25.19 104.83 8.63 49.04 12.5-14.95-2.46-56.42-18.67 22.33z"/><path style="fill:url(#d)" d="M25.19 104.83 0 90.24l16.97 53.86 16.85 9.77-8.63-49.04z"/><path style="fill:#9c3" d="M43.86 82.5 18.69 67.98 0 90.24l25.18 14.59L43.86 82.5z"/><path style="fill:url(#e)" d="m134.82 78.69-9.97 56.5 15.58-9.04L160 64.1l-25.18 14.59z"/><path style="fill:url(#f)" d="m134.82 78.69-18.68-22.33-2.86 65 11.57 13.83 9.97-56.5z"/><path style="fill:#ffe113" d="m160 64.1-18.69-22.26-25.17 14.52 18.67 22.33L160 64.1z"/><path style="fill:#f3e600" d="M101.59 18.23 79.32 0 57.05 18.23l22.27 18.75 22.27-18.75z"/></symbol></defs><use width="160" height="187.74" xlink:href="#g"/></svg>', qP = btoa(GP), XP = "data:image/svg+xml;base64," + qP, Ha = XP, QP = `<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'> <svg clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" version="1.1" viewBox="0 0 1014 282" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m665.95 132.73v44.88l-10.56-8.4c-0.8-0.64-1.2-1.44-1.2-2.4v-32.4c0-6.48-4.12-9.72-12.36-9.72-2.16 0-4.18 0.4-6.06 1.2s-3.54 1.8-4.98 3-2.56 2.5-3.36 3.9-1.2 2.7-1.2 3.9v40.92l-10.68-8.4c-0.72-0.64-1.08-1.44-1.08-2.4v-53.76l10.92 8.52c0.32 0.24 0.56 0.44 0.72 0.6s0.36 0.32 0.6 0.48c0.96-1.2 2.14-2.28 3.54-3.24s2.92-1.76 4.56-2.4 3.34-1.14 5.1-1.5 3.44-0.54 5.04-0.54c1.44 0 2.92 0.04 4.44 0.12s2.84 0.28 3.96 0.6c4.56 1.12 7.8 3.12 9.72 6s2.88 6.56 2.88 11.04z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m732.38 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m795.93 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m858.57 97.21c0.64 0.48 0.96 1.16 0.96 2.04v74.88c-0.08 1.04-0.12 2.12-0.12 3.24-1.84-1.52-3.56-2.92-5.16-4.2-1.36-1.12-2.66-2.18-3.9-3.18s-2.06-1.66-2.46-1.98c-1.76 2.48-4.26 4.44-7.5 5.88s-7.02 2.16-11.34 2.16c-3.84 0-7.4-0.7-10.68-2.1s-6.14-3.44-8.58-6.12-4.34-5.94-5.7-9.78-2.04-8.16-2.04-12.96c0-4.32 0.78-8.34 2.34-12.06s3.6-6.92 6.12-9.6 5.38-4.78 8.58-6.3 6.48-2.28 9.84-2.28c2.56 0 4.82 0.22 6.78 0.66s3.68 1.06 5.16 1.86 2.78 1.74 3.9 2.82 2.16 2.22 3.12 3.42v-35.04l10.68 8.64zm-27.96 67.92c3.6 0 6.52-0.68 8.76-2.04s3.98-3.06 5.22-5.1 2.1-4.22 2.58-6.54 0.72-4.44 0.72-6.36v-1.2c0-1.12-0.22-2.7-0.66-4.74s-1.28-4.06-2.52-6.06-3-3.7-5.28-5.1-5.22-2.02-8.82-1.86c-3.44 0-6.26 0.74-8.46 2.22s-3.96 3.26-5.28 5.34-2.24 4.2-2.76 6.36-0.78 3.92-0.78 5.28c0 1.84 0.24 3.92 0.72 6.24s1.36 4.48 2.64 6.48 3.04 3.68 5.28 5.04 5.12 2.04 8.64 2.04z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m882.81 97.09c0.64 0.48 0.96 1.12 0.96 1.92l-0.12 41.04v37.08l-10.56-8.4c-0.72-0.64-1.08-1.44-1.08-2.4v-77.88l10.8 8.64z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m950.36 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.8559 0 0 .7642 45.348 36.475)"> <g transform="translate(2.7114)"> <path d="m3.935 173.02c-0.331 0-0.497-0.402-0.497-1.207v-51.002c0-0.738 0.138-1.107 0.414-1.107h1.781c0.277 0 0.415 0.335 0.415 1.006v5.935c0 0.336 0.027 0.553 0.083 0.654 0.055 0.101 0.151-0.017 0.289-0.352 0.912-1.744 1.754-3.236 2.527-4.477 0.773-1.24 1.554-2.179 2.341-2.816s1.65-0.956 2.588-0.956c1.685 0 3.011 0.922 3.977 2.766 0.967 1.845 1.602 3.84 1.905 5.986 0.056 0.268 0.139 0.369 0.249 0.302s0.221-0.235 0.331-0.503c0.939-1.811 1.802-3.353 2.589-4.628 0.787-1.274 1.581-2.246 2.382-2.917s1.671-1.006 2.61-1.006c2.016 0 3.569 1.392 4.66 4.175 1.09 2.783 1.636 6.421 1.636 10.915v37.925c0 0.871-0.18 1.307-0.539 1.307h-1.739c-0.138 0-0.249-0.1-0.332-0.301-0.083-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.338-6.321-1.015-8.3-0.676-1.978-1.76-2.967-3.251-2.967-0.884 0-1.726 0.386-2.527 1.157s-1.519 1.727-2.154 2.867-1.201 2.213-1.699 3.219c-0.248 0.469-0.421 0.905-0.517 1.308-0.097 0.402-0.145 0.972-0.145 1.71v37.221c0 0.871-0.166 1.307-0.497 1.307h-1.74c-0.166 0-0.29-0.1-0.373-0.301-0.083-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.332-6.321-0.994-8.3-0.663-1.978-1.754-2.967-3.273-2.967-1.242 0-2.375 0.704-3.396 2.112-1.022 1.409-2.223 3.555-3.604 6.439v39.031c0 0.805-0.18 1.207-0.539 1.207h-1.698z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m53.642 166.28c-1.077 2.549-2.237 4.477-3.479 5.785-1.243 1.307-2.61 1.961-4.101 1.961-2.154 0-3.853-1.324-5.095-3.973-1.243-2.649-1.864-6.187-1.864-10.613 0-3.488 0.4-6.489 1.201-9.004s1.988-4.51 3.562-5.985c1.574-1.476 3.521-2.414 5.841-2.817l3.686-0.704c0.221-0.067 0.394-0.218 0.518-0.453 0.124-0.234 0.187-0.587 0.187-1.056v-2.917c0-3.89-0.504-6.975-1.512-9.255s-2.354-3.42-4.039-3.42c-1.298 0-2.472 0.72-3.521 2.162s-2.002 3.572-2.858 6.388c-0.083 0.268-0.159 0.453-0.228 0.554-0.069 0.1-0.172 0.083-0.311-0.051l-1.698-1.71c-0.083-0.134-0.138-0.285-0.166-0.453-0.027-0.167 0.014-0.452 0.125-0.855 0.856-3.353 2.009-6.052 3.459-8.098 1.449-2.045 3.224-3.068 5.322-3.068 1.74 0 3.211 0.687 4.412 2.062s2.112 3.37 2.734 5.986c0.621 2.615 0.932 5.7 0.932 9.255v35.712c0 0.536-0.035 0.888-0.104 1.056s-0.2 0.251-0.393 0.251h-1.533c-0.166 0-0.29-0.117-0.373-0.352-0.083-0.234-0.124-0.553-0.124-0.955l-0.083-5.231c-0.055-0.939-0.221-1.006-0.497-0.202zm0.456-19.314c0-1.14-0.194-1.643-0.58-1.509l-3.107 0.603c-1.436 0.202-2.686 0.638-3.749 1.308-1.063 0.671-1.953 1.543-2.671 2.616s-1.257 2.33-1.616 3.772-0.538 3.102-0.538 4.98c0 3.152 0.455 5.616 1.367 7.393 0.911 1.778 2.14 2.666 3.686 2.666 0.939 0 1.85-0.419 2.734-1.257s1.671-1.895 2.361-3.169c0.663-1.408 1.181-2.85 1.553-4.326 0.373-1.475 0.56-2.883 0.56-4.225v-8.852z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m79.034 173.02c-0.166 0-0.297-0.117-0.394-0.352-0.096-0.234-0.145-0.553-0.145-0.955v-4.628c0-0.536-0.041-0.838-0.124-0.905s-0.207 0.1-0.373 0.503c-0.276 0.67-0.69 1.593-1.242 2.766-0.553 1.174-1.271 2.23-2.154 3.169-0.884 0.939-1.961 1.408-3.231 1.408-1.74 0-3.314-0.989-4.722-2.967-1.409-1.979-2.534-4.963-3.376-8.953-0.843-3.991-1.264-8.937-1.264-14.838 0-5.701 0.415-10.68 1.243-14.939s1.988-7.595 3.479-10.009c1.492-2.415 3.204-3.622 5.137-3.622 1.436 0 2.616 0.57 3.541 1.71 0.926 1.14 1.719 2.381 2.382 3.722 0.249 0.47 0.414 0.637 0.497 0.503s0.125-0.536 0.125-1.207v-23.841c0-0.805 0.151-1.208 0.455-1.208h1.864c0.276 0 0.414 0.369 0.414 1.107v72.128c0 0.537-0.041 0.905-0.124 1.107-0.083 0.201-0.235 0.301-0.455 0.301h-1.533zm-0.621-42.049c-0.939-2.213-1.885-3.94-2.838-5.181s-2.009-1.861-3.169-1.861c-1.463 0-2.768 0.889-3.914 2.666s-2.044 4.376-2.693 7.796-0.973 7.578-0.973 12.474c0 5.097 0.338 9.272 1.015 12.524 0.676 3.253 1.567 5.651 2.672 7.193 1.104 1.543 2.305 2.314 3.603 2.314 1.188 0 2.258-0.704 3.211-2.113 0.952-1.408 1.705-3.118 2.257-5.13s0.829-3.957 0.829-5.835v-24.847z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m89.514 149.38c0 3.42 0.345 6.606 1.035 9.557 0.691 2.951 1.609 5.315 2.755 7.092s2.437 2.666 3.873 2.666c1.519 0 2.837-0.738 3.956-2.213 1.118-1.476 2.064-3.655 2.837-6.539 0.083-0.336 0.166-0.52 0.249-0.554 0.083-0.033 0.179 0.017 0.29 0.151l1.408 1.912c0.221 0.268 0.235 0.67 0.041 1.207-0.69 2.548-1.47 4.661-2.34 6.337-0.87 1.677-1.857 2.935-2.962 3.773-1.104 0.838-2.319 1.257-3.645 1.257-2.043 0-3.838-1.14-5.385-3.42-1.546-2.28-2.761-5.482-3.645-9.607-0.884-4.124-1.325-8.836-1.325-14.134 0-5.901 0.455-10.931 1.367-15.089 0.911-4.158 2.14-7.377 3.686-9.658 1.547-2.28 3.3-3.42 5.261-3.42 1.988 0 3.714 1.073 5.178 3.219 1.463 2.146 2.595 5.231 3.396 9.255s1.201 8.886 1.201 14.587c0 0.469-0.02 0.939-0.062 1.408-0.041 0.469-0.214 0.704-0.517 0.704h-16.362c-0.083 0-0.152 0.151-0.207 0.453-0.056 0.302-0.083 0.654-0.083 1.056zm13.752-6.237c0.304 0 0.497-0.1 0.58-0.302 0.083-0.201 0.124-0.57 0.124-1.106 0-3.219-0.283-6.187-0.849-8.903s-1.367-4.896-2.402-6.539c-1.036-1.643-2.272-2.464-3.708-2.464-1.629 0-2.996 0.955-4.101 2.867-1.104 1.911-1.94 4.342-2.506 7.293s-0.849 6.002-0.849 9.154h13.711z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m148.54 119.7c0.165 0 0.283 0.117 0.352 0.352s0.076 0.52 0.02 0.855l-6.254 50.902c-0.028 0.47-0.104 0.788-0.228 0.956s-0.297 0.251-0.518 0.251h-1.615c-0.442 0-0.718-0.402-0.829-1.207l-5.26-40.138c-0.111-0.604-0.201-0.905-0.27-0.905s-0.131 0.301-0.186 0.905l-5.012 40.138c-0.028 0.47-0.097 0.788-0.207 0.956-0.111 0.168-0.277 0.251-0.497 0.251h-1.74c-0.442 0-0.718-0.402-0.829-1.207l-6.503-50.801c-0.055-0.403-0.048-0.721 0.021-0.956s0.2-0.352 0.393-0.352h1.823c0.166 0 0.297 0.067 0.393 0.201 0.097 0.134 0.159 0.403 0.187 0.805l5.302 41.848c0.083 0.671 0.179 0.989 0.29 0.956 0.11-0.034 0.207-0.386 0.29-1.056l5.219-41.949c0.055-0.268 0.124-0.47 0.207-0.604s0.193-0.201 0.331-0.201h1.533c0.138 0 0.262 0.067 0.373 0.201 0.11 0.134 0.179 0.403 0.207 0.805l5.468 41.848c0.083 0.671 0.179 0.989 0.29 0.956 0.11-0.034 0.207-0.386 0.29-1.056l5.053-41.849c0.055-0.335 0.138-0.57 0.249-0.704 0.11-0.134 0.234-0.201 0.373-0.201h1.284z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m156.49 171.51c0 0.604-0.042 1.006-0.125 1.208-0.082 0.201-0.262 0.301-0.538 0.301h-1.533c-0.221 0-0.366-0.083-0.435-0.251s-0.103-0.486-0.103-0.956v-50.902c0-0.805 0.152-1.207 0.456-1.207h1.822c0.304 0 0.456 0.402 0.456 1.207v50.6zm0.165-63.979c0 1.207-0.207 1.811-0.621 1.811h-1.905c-0.221 0-0.366-0.135-0.435-0.403s-0.104-0.67-0.104-1.207v-7.847c0-1.006 0.18-1.509 0.539-1.509h1.988c0.359 0 0.538 0.47 0.538 1.409v7.746z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m168.3 124.83c-0.221 0-0.331 0.269-0.331 0.805v33.801c0 3.42 0.221 5.667 0.663 6.74 0.441 1.073 1.09 1.609 1.946 1.609h3.024c0.138 0 0.242 0.084 0.311 0.252 0.069 0.167 0.103 0.419 0.103 0.754v2.716c0 0.537-0.138 0.906-0.414 1.107-0.248 0.067-0.614 0.134-1.098 0.201-0.483 0.067-0.959 0.118-1.429 0.151-0.469 0.034-0.828 0.05-1.077 0.05-1.712 0-2.934-0.955-3.665-2.867-0.732-1.911-1.098-5.013-1.098-9.305v-35.108c0-0.604-0.124-0.906-0.373-0.906h-3.521c-0.248 0-0.373-0.268-0.373-0.804v-3.521c0-0.537 0.111-0.805 0.332-0.805h3.686c0.166 0 0.263-0.268 0.29-0.805l0.415-16.095c0-0.805 0.124-1.207 0.372-1.207h1.492c0.303 0 0.455 0.436 0.455 1.307v15.995c0 0.537 0.097 0.805 0.29 0.805h5.468c0.221 0 0.331 0.268 0.331 0.805v3.521c0 0.536-0.124 0.804-0.373 0.804h-5.426z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m179.4 173.02c-0.331 0-0.497-0.402-0.497-1.207v-72.329c0-0.738 0.138-1.107 0.414-1.107h1.782c0.276 0 0.414 0.336 0.414 1.006v27.162c0 0.335 0.034 0.536 0.103 0.603s0.159-0.033 0.27-0.302c0.994-1.81 1.898-3.319 2.713-4.526 0.814-1.208 1.629-2.113 2.444-2.717 0.814-0.603 1.691-0.905 2.63-0.905 2.182 0 3.839 1.375 4.971 4.125 1.132 2.749 1.698 6.404 1.698 10.965v37.925c0 0.871-0.166 1.307-0.497 1.307h-1.74c-0.165 0-0.29-0.1-0.373-0.301-0.082-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.366-6.321-1.097-8.3-0.732-1.978-1.899-2.967-3.501-2.967-0.883 0-1.705 0.318-2.464 0.956-0.76 0.637-1.526 1.576-2.299 2.816-0.773 1.241-1.643 2.834-2.61 4.779v39.031c0 0.805-0.179 1.207-0.538 1.207h-1.699z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> </g> <g transform="matrix(.80638 0 0 .80638 452.53 65.421)" fill-rule="nonzero"> <path d="m79.32 36.98v150.76l15.68-13.2 6.59-156.31-22.27 18.75z" fill="url(#f)"/> <path d="m79.32 36.98-22.27-18.75 6.59 156.31 15.68 13.2v-150.76z" fill="url(#e)"/> <path d="m25.19 104.83 8.63 49.04 12.5-14.95-2.46-56.42-18.67 22.33z" fill="url(#d)"/> <path d="m25.19 104.83-25.19-14.59 16.97 53.86 16.85 9.77-8.63-49.04z" fill="url(#c)"/> <path d="M43.86,82.5L18.69,67.98L0,90.24L25.18,104.83L43.86,82.5Z" fill="#9c3"/> <path d="m134.82 78.69-9.97 56.5 15.58-9.04 19.57-62.05-25.18 14.59z" fill="url(#b)"/> <path d="m134.82 78.69-18.68-22.33-2.86 65 11.57 13.83 9.97-56.5z" fill="url(#a)"/> <path d="m160 64.1-18.69-22.26-25.17 14.52 18.67 22.33 25.19-14.59z" fill="#ffe113"/> <path d="M101.59,18.23L79.32,0L57.05,18.23L79.32,36.98L101.59,18.23Z" fill="#f3e600"/> </g> <defs> <linearGradient id="f" x2="1" gradientTransform="matrix(.84 -162.96 162.96 .84 89.64 184.81)" gradientUnits="userSpaceOnUse"><stop stop-color="#62d399" offset="0"/><stop stop-color="#acd842" offset=".51"/><stop stop-color="#d7db0a" offset=".9"/><stop stop-color="#d7db0a" offset="1"/></linearGradient> <linearGradient id="e" x2="1" gradientTransform="matrix(-1.6,-162.13,162.13,-1.6,69.68,178.9)" gradientUnits="userSpaceOnUse"><stop stop-color="#0ba398" offset="0"/><stop stop-color="#4ca352" offset=".5"/><stop stop-color="#76a30a" offset="1"/></linearGradient> <linearGradient id="d" x2="1" gradientTransform="matrix(-1.9,-67.98,67.98,-1.9,36.6,152.17)" gradientUnits="userSpaceOnUse"><stop stop-color="#36a382" offset="0"/><stop stop-color="#36a382" offset=".19"/><stop stop-color="#49a459" offset=".54"/><stop stop-color="#76a30b" offset="1"/></linearGradient> <linearGradient id="c" x2="1" gradientTransform="matrix(2.18,-62.38,62.38,2.18,15.82,153.24)" gradientUnits="userSpaceOnUse"><stop stop-color="#267880" offset="0"/><stop stop-color="#457a5c" offset=".51"/><stop stop-color="#717516" offset="1"/></linearGradient> <linearGradient id="b" x2="1" gradientTransform="matrix(13.85,-71.96,71.96,13.85,135.08,135.43)" gradientUnits="userSpaceOnUse"><stop stop-color="#b0d939" offset="0"/><stop stop-color="#eadb04" offset="1"/></linearGradient> <linearGradient id="a" x2="1" gradientTransform="matrix(26.159 -64.737 64.737 26.159 107.42 128.14)" gradientUnits="userSpaceOnUse"><stop stop-color="#74af52" offset="0"/><stop stop-color="#74af52" offset=".17"/><stop stop-color="#99be32" offset=".48"/><stop stop-color="#c0c40a" offset="1"/></linearGradient> </defs> </svg>`;
|
|
4627
|
-
btoa(
|
|
4628
|
-
const
|
|
4490
|
+
const NP = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 187.74"><defs><linearGradient id="a" x1="89.64" y1="184.81" x2="90.48" y2="21.85" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#62d399"/><stop offset=".51" stop-color="#acd842"/><stop offset=".9" stop-color="#d7db0a"/></linearGradient><linearGradient id="b" x1="69.68" y1="178.9" x2="68.08" y2="16.77" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#0ba398"/><stop offset=".5" stop-color="#4ca352"/><stop offset="1" stop-color="#76a30a"/></linearGradient><linearGradient id="c" x1="36.6" y1="152.17" x2="34.7" y2="84.19" gradientUnits="userSpaceOnUse"><stop offset=".19" stop-color="#36a382"/><stop offset=".54" stop-color="#49a459"/><stop offset="1" stop-color="#76a30b"/></linearGradient><linearGradient id="d" x1="15.82" y1="153.24" x2="18" y2="90.86" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#267880"/><stop offset=".51" stop-color="#457a5c"/><stop offset="1" stop-color="#717516"/></linearGradient><linearGradient id="e" x1="135.08" y1="135.43" x2="148.93" y2="63.47" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b0d939"/><stop offset="1" stop-color="#eadb04"/></linearGradient><linearGradient id="f" x1="-4163.25" y1="2285.12" x2="-4160.81" y2="2215.34" gradientTransform="rotate(20 4088.49 13316.712)" gradientUnits="userSpaceOnUse"><stop offset=".17" stop-color="#74af52"/><stop offset=".48" stop-color="#99be32"/><stop offset="1" stop-color="#c0c40a"/></linearGradient><symbol id="g" viewBox="0 0 160 187.74"><path style="fill:url(#a)" d="M79.32 36.98v150.76L95 174.54l6.59-156.31-22.27 18.75z"/><path style="fill:url(#b)" d="M79.32 36.98 57.05 18.23l6.59 156.31 15.68 13.2V36.98z"/><path style="fill:url(#c)" d="m25.19 104.83 8.63 49.04 12.5-14.95-2.46-56.42-18.67 22.33z"/><path style="fill:url(#d)" d="M25.19 104.83 0 90.24l16.97 53.86 16.85 9.77-8.63-49.04z"/><path style="fill:#9c3" d="M43.86 82.5 18.69 67.98 0 90.24l25.18 14.59L43.86 82.5z"/><path style="fill:url(#e)" d="m134.82 78.69-9.97 56.5 15.58-9.04L160 64.1l-25.18 14.59z"/><path style="fill:url(#f)" d="m134.82 78.69-18.68-22.33-2.86 65 11.57 13.83 9.97-56.5z"/><path style="fill:#ffe113" d="m160 64.1-18.69-22.26-25.17 14.52 18.67 22.33L160 64.1z"/><path style="fill:#f3e600" d="M101.59 18.23 79.32 0 57.05 18.23l22.27 18.75 22.27-18.75z"/></symbol></defs><use width="160" height="187.74" xlink:href="#g"/></svg>', $P = btoa(NP), WP = "data:image/svg+xml;base64," + $P, Ha = WP, VP = `<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'> <svg clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" version="1.1" viewBox="0 0 1014 282" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m665.95 132.73v44.88l-10.56-8.4c-0.8-0.64-1.2-1.44-1.2-2.4v-32.4c0-6.48-4.12-9.72-12.36-9.72-2.16 0-4.18 0.4-6.06 1.2s-3.54 1.8-4.98 3-2.56 2.5-3.36 3.9-1.2 2.7-1.2 3.9v40.92l-10.68-8.4c-0.72-0.64-1.08-1.44-1.08-2.4v-53.76l10.92 8.52c0.32 0.24 0.56 0.44 0.72 0.6s0.36 0.32 0.6 0.48c0.96-1.2 2.14-2.28 3.54-3.24s2.92-1.76 4.56-2.4 3.34-1.14 5.1-1.5 3.44-0.54 5.04-0.54c1.44 0 2.92 0.04 4.44 0.12s2.84 0.28 3.96 0.6c4.56 1.12 7.8 3.12 9.72 6s2.88 6.56 2.88 11.04z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m732.38 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m795.93 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m858.57 97.21c0.64 0.48 0.96 1.16 0.96 2.04v74.88c-0.08 1.04-0.12 2.12-0.12 3.24-1.84-1.52-3.56-2.92-5.16-4.2-1.36-1.12-2.66-2.18-3.9-3.18s-2.06-1.66-2.46-1.98c-1.76 2.48-4.26 4.44-7.5 5.88s-7.02 2.16-11.34 2.16c-3.84 0-7.4-0.7-10.68-2.1s-6.14-3.44-8.58-6.12-4.34-5.94-5.7-9.78-2.04-8.16-2.04-12.96c0-4.32 0.78-8.34 2.34-12.06s3.6-6.92 6.12-9.6 5.38-4.78 8.58-6.3 6.48-2.28 9.84-2.28c2.56 0 4.82 0.22 6.78 0.66s3.68 1.06 5.16 1.86 2.78 1.74 3.9 2.82 2.16 2.22 3.12 3.42v-35.04l10.68 8.64zm-27.96 67.92c3.6 0 6.52-0.68 8.76-2.04s3.98-3.06 5.22-5.1 2.1-4.22 2.58-6.54 0.72-4.44 0.72-6.36v-1.2c0-1.12-0.22-2.7-0.66-4.74s-1.28-4.06-2.52-6.06-3-3.7-5.28-5.1-5.22-2.02-8.82-1.86c-3.44 0-6.26 0.74-8.46 2.22s-3.96 3.26-5.28 5.34-2.24 4.2-2.76 6.36-0.78 3.92-0.78 5.28c0 1.84 0.24 3.92 0.72 6.24s1.36 4.48 2.64 6.48 3.04 3.68 5.28 5.04 5.12 2.04 8.64 2.04z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m882.81 97.09c0.64 0.48 0.96 1.12 0.96 1.92l-0.12 41.04v37.08l-10.56-8.4c-0.72-0.64-1.08-1.44-1.08-2.4v-77.88l10.8 8.64z" fill-rule="nonzero"/> </g> <g transform="matrix(1.008 0 0 1.008 -2.239 .61874)"> <path d="m950.36 146.05c0 0.88 0.02 1.5 0.06 1.86s-0.02 0.98-0.18 1.86h-7.08c-2.08 0-4.44-0.02-7.08-0.06s-5.36-0.06-8.16-0.06h-22.08c0 2.88 0.56 5.36 1.68 7.44s2.6 3.8 4.44 5.16 3.94 2.36 6.3 3 4.74 0.96 7.14 0.96c3.04 0 5.9-0.76 8.58-2.28s4.94-3.52 6.78-6c0.64 0.56 1.54 1.48 2.7 2.76s2.94 3.2 5.34 5.76c-2.8 3.36-6.22 6.02-10.26 7.98s-8.42 2.94-13.14 2.94-8.92-0.64-12.84-1.92-7.32-3.24-10.2-5.88-5.12-5.98-6.72-10.02-2.4-8.82-2.4-14.34c0-4.96 0.66-9.42 1.98-13.38s3.22-7.32 5.7-10.08 5.44-4.9 8.88-6.42 7.32-2.28 11.64-2.28c5.76 0 10.52 0.88 14.28 2.64s6.72 4.16 8.88 7.2 3.66 6.54 4.5 10.5 1.26 8.18 1.26 12.66zm-29.4-22.8c-2.16 0.16-4.16 0.72-6 1.68s-3.42 2.2-4.74 3.72-2.36 3.28-3.12 5.28-1.14 4.12-1.14 6.36h33.12c0-2-0.22-4.06-0.66-6.18s-1.3-4.02-2.58-5.7-3.1-3.02-5.46-4.02-5.5-1.38-9.42-1.14z" fill-rule="nonzero"/> </g> <g transform="matrix(1.8559 0 0 .7642 45.348 36.475)"> <g transform="translate(2.7114)"> <path d="m3.935 173.02c-0.331 0-0.497-0.402-0.497-1.207v-51.002c0-0.738 0.138-1.107 0.414-1.107h1.781c0.277 0 0.415 0.335 0.415 1.006v5.935c0 0.336 0.027 0.553 0.083 0.654 0.055 0.101 0.151-0.017 0.289-0.352 0.912-1.744 1.754-3.236 2.527-4.477 0.773-1.24 1.554-2.179 2.341-2.816s1.65-0.956 2.588-0.956c1.685 0 3.011 0.922 3.977 2.766 0.967 1.845 1.602 3.84 1.905 5.986 0.056 0.268 0.139 0.369 0.249 0.302s0.221-0.235 0.331-0.503c0.939-1.811 1.802-3.353 2.589-4.628 0.787-1.274 1.581-2.246 2.382-2.917s1.671-1.006 2.61-1.006c2.016 0 3.569 1.392 4.66 4.175 1.09 2.783 1.636 6.421 1.636 10.915v37.925c0 0.871-0.18 1.307-0.539 1.307h-1.739c-0.138 0-0.249-0.1-0.332-0.301-0.083-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.338-6.321-1.015-8.3-0.676-1.978-1.76-2.967-3.251-2.967-0.884 0-1.726 0.386-2.527 1.157s-1.519 1.727-2.154 2.867-1.201 2.213-1.699 3.219c-0.248 0.469-0.421 0.905-0.517 1.308-0.097 0.402-0.145 0.972-0.145 1.71v37.221c0 0.871-0.166 1.307-0.497 1.307h-1.74c-0.166 0-0.29-0.1-0.373-0.301-0.083-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.332-6.321-0.994-8.3-0.663-1.978-1.754-2.967-3.273-2.967-1.242 0-2.375 0.704-3.396 2.112-1.022 1.409-2.223 3.555-3.604 6.439v39.031c0 0.805-0.18 1.207-0.539 1.207h-1.698z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m53.642 166.28c-1.077 2.549-2.237 4.477-3.479 5.785-1.243 1.307-2.61 1.961-4.101 1.961-2.154 0-3.853-1.324-5.095-3.973-1.243-2.649-1.864-6.187-1.864-10.613 0-3.488 0.4-6.489 1.201-9.004s1.988-4.51 3.562-5.985c1.574-1.476 3.521-2.414 5.841-2.817l3.686-0.704c0.221-0.067 0.394-0.218 0.518-0.453 0.124-0.234 0.187-0.587 0.187-1.056v-2.917c0-3.89-0.504-6.975-1.512-9.255s-2.354-3.42-4.039-3.42c-1.298 0-2.472 0.72-3.521 2.162s-2.002 3.572-2.858 6.388c-0.083 0.268-0.159 0.453-0.228 0.554-0.069 0.1-0.172 0.083-0.311-0.051l-1.698-1.71c-0.083-0.134-0.138-0.285-0.166-0.453-0.027-0.167 0.014-0.452 0.125-0.855 0.856-3.353 2.009-6.052 3.459-8.098 1.449-2.045 3.224-3.068 5.322-3.068 1.74 0 3.211 0.687 4.412 2.062s2.112 3.37 2.734 5.986c0.621 2.615 0.932 5.7 0.932 9.255v35.712c0 0.536-0.035 0.888-0.104 1.056s-0.2 0.251-0.393 0.251h-1.533c-0.166 0-0.29-0.117-0.373-0.352-0.083-0.234-0.124-0.553-0.124-0.955l-0.083-5.231c-0.055-0.939-0.221-1.006-0.497-0.202zm0.456-19.314c0-1.14-0.194-1.643-0.58-1.509l-3.107 0.603c-1.436 0.202-2.686 0.638-3.749 1.308-1.063 0.671-1.953 1.543-2.671 2.616s-1.257 2.33-1.616 3.772-0.538 3.102-0.538 4.98c0 3.152 0.455 5.616 1.367 7.393 0.911 1.778 2.14 2.666 3.686 2.666 0.939 0 1.85-0.419 2.734-1.257s1.671-1.895 2.361-3.169c0.663-1.408 1.181-2.85 1.553-4.326 0.373-1.475 0.56-2.883 0.56-4.225v-8.852z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m79.034 173.02c-0.166 0-0.297-0.117-0.394-0.352-0.096-0.234-0.145-0.553-0.145-0.955v-4.628c0-0.536-0.041-0.838-0.124-0.905s-0.207 0.1-0.373 0.503c-0.276 0.67-0.69 1.593-1.242 2.766-0.553 1.174-1.271 2.23-2.154 3.169-0.884 0.939-1.961 1.408-3.231 1.408-1.74 0-3.314-0.989-4.722-2.967-1.409-1.979-2.534-4.963-3.376-8.953-0.843-3.991-1.264-8.937-1.264-14.838 0-5.701 0.415-10.68 1.243-14.939s1.988-7.595 3.479-10.009c1.492-2.415 3.204-3.622 5.137-3.622 1.436 0 2.616 0.57 3.541 1.71 0.926 1.14 1.719 2.381 2.382 3.722 0.249 0.47 0.414 0.637 0.497 0.503s0.125-0.536 0.125-1.207v-23.841c0-0.805 0.151-1.208 0.455-1.208h1.864c0.276 0 0.414 0.369 0.414 1.107v72.128c0 0.537-0.041 0.905-0.124 1.107-0.083 0.201-0.235 0.301-0.455 0.301h-1.533zm-0.621-42.049c-0.939-2.213-1.885-3.94-2.838-5.181s-2.009-1.861-3.169-1.861c-1.463 0-2.768 0.889-3.914 2.666s-2.044 4.376-2.693 7.796-0.973 7.578-0.973 12.474c0 5.097 0.338 9.272 1.015 12.524 0.676 3.253 1.567 5.651 2.672 7.193 1.104 1.543 2.305 2.314 3.603 2.314 1.188 0 2.258-0.704 3.211-2.113 0.952-1.408 1.705-3.118 2.257-5.13s0.829-3.957 0.829-5.835v-24.847z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m89.514 149.38c0 3.42 0.345 6.606 1.035 9.557 0.691 2.951 1.609 5.315 2.755 7.092s2.437 2.666 3.873 2.666c1.519 0 2.837-0.738 3.956-2.213 1.118-1.476 2.064-3.655 2.837-6.539 0.083-0.336 0.166-0.52 0.249-0.554 0.083-0.033 0.179 0.017 0.29 0.151l1.408 1.912c0.221 0.268 0.235 0.67 0.041 1.207-0.69 2.548-1.47 4.661-2.34 6.337-0.87 1.677-1.857 2.935-2.962 3.773-1.104 0.838-2.319 1.257-3.645 1.257-2.043 0-3.838-1.14-5.385-3.42-1.546-2.28-2.761-5.482-3.645-9.607-0.884-4.124-1.325-8.836-1.325-14.134 0-5.901 0.455-10.931 1.367-15.089 0.911-4.158 2.14-7.377 3.686-9.658 1.547-2.28 3.3-3.42 5.261-3.42 1.988 0 3.714 1.073 5.178 3.219 1.463 2.146 2.595 5.231 3.396 9.255s1.201 8.886 1.201 14.587c0 0.469-0.02 0.939-0.062 1.408-0.041 0.469-0.214 0.704-0.517 0.704h-16.362c-0.083 0-0.152 0.151-0.207 0.453-0.056 0.302-0.083 0.654-0.083 1.056zm13.752-6.237c0.304 0 0.497-0.1 0.58-0.302 0.083-0.201 0.124-0.57 0.124-1.106 0-3.219-0.283-6.187-0.849-8.903s-1.367-4.896-2.402-6.539c-1.036-1.643-2.272-2.464-3.708-2.464-1.629 0-2.996 0.955-4.101 2.867-1.104 1.911-1.94 4.342-2.506 7.293s-0.849 6.002-0.849 9.154h13.711z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m148.54 119.7c0.165 0 0.283 0.117 0.352 0.352s0.076 0.52 0.02 0.855l-6.254 50.902c-0.028 0.47-0.104 0.788-0.228 0.956s-0.297 0.251-0.518 0.251h-1.615c-0.442 0-0.718-0.402-0.829-1.207l-5.26-40.138c-0.111-0.604-0.201-0.905-0.27-0.905s-0.131 0.301-0.186 0.905l-5.012 40.138c-0.028 0.47-0.097 0.788-0.207 0.956-0.111 0.168-0.277 0.251-0.497 0.251h-1.74c-0.442 0-0.718-0.402-0.829-1.207l-6.503-50.801c-0.055-0.403-0.048-0.721 0.021-0.956s0.2-0.352 0.393-0.352h1.823c0.166 0 0.297 0.067 0.393 0.201 0.097 0.134 0.159 0.403 0.187 0.805l5.302 41.848c0.083 0.671 0.179 0.989 0.29 0.956 0.11-0.034 0.207-0.386 0.29-1.056l5.219-41.949c0.055-0.268 0.124-0.47 0.207-0.604s0.193-0.201 0.331-0.201h1.533c0.138 0 0.262 0.067 0.373 0.201 0.11 0.134 0.179 0.403 0.207 0.805l5.468 41.848c0.083 0.671 0.179 0.989 0.29 0.956 0.11-0.034 0.207-0.386 0.29-1.056l5.053-41.849c0.055-0.335 0.138-0.57 0.249-0.704 0.11-0.134 0.234-0.201 0.373-0.201h1.284z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m156.49 171.51c0 0.604-0.042 1.006-0.125 1.208-0.082 0.201-0.262 0.301-0.538 0.301h-1.533c-0.221 0-0.366-0.083-0.435-0.251s-0.103-0.486-0.103-0.956v-50.902c0-0.805 0.152-1.207 0.456-1.207h1.822c0.304 0 0.456 0.402 0.456 1.207v50.6zm0.165-63.979c0 1.207-0.207 1.811-0.621 1.811h-1.905c-0.221 0-0.366-0.135-0.435-0.403s-0.104-0.67-0.104-1.207v-7.847c0-1.006 0.18-1.509 0.539-1.509h1.988c0.359 0 0.538 0.47 0.538 1.409v7.746z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m168.3 124.83c-0.221 0-0.331 0.269-0.331 0.805v33.801c0 3.42 0.221 5.667 0.663 6.74 0.441 1.073 1.09 1.609 1.946 1.609h3.024c0.138 0 0.242 0.084 0.311 0.252 0.069 0.167 0.103 0.419 0.103 0.754v2.716c0 0.537-0.138 0.906-0.414 1.107-0.248 0.067-0.614 0.134-1.098 0.201-0.483 0.067-0.959 0.118-1.429 0.151-0.469 0.034-0.828 0.05-1.077 0.05-1.712 0-2.934-0.955-3.665-2.867-0.732-1.911-1.098-5.013-1.098-9.305v-35.108c0-0.604-0.124-0.906-0.373-0.906h-3.521c-0.248 0-0.373-0.268-0.373-0.804v-3.521c0-0.537 0.111-0.805 0.332-0.805h3.686c0.166 0 0.263-0.268 0.29-0.805l0.415-16.095c0-0.805 0.124-1.207 0.372-1.207h1.492c0.303 0 0.455 0.436 0.455 1.307v15.995c0 0.537 0.097 0.805 0.29 0.805h5.468c0.221 0 0.331 0.268 0.331 0.805v3.521c0 0.536-0.124 0.804-0.373 0.804h-5.426z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> <g transform="translate(2.7114)"> <path d="m179.4 173.02c-0.331 0-0.497-0.402-0.497-1.207v-72.329c0-0.738 0.138-1.107 0.414-1.107h1.782c0.276 0 0.414 0.336 0.414 1.006v27.162c0 0.335 0.034 0.536 0.103 0.603s0.159-0.033 0.27-0.302c0.994-1.81 1.898-3.319 2.713-4.526 0.814-1.208 1.629-2.113 2.444-2.717 0.814-0.603 1.691-0.905 2.63-0.905 2.182 0 3.839 1.375 4.971 4.125 1.132 2.749 1.698 6.404 1.698 10.965v37.925c0 0.871-0.166 1.307-0.497 1.307h-1.74c-0.165 0-0.29-0.1-0.373-0.301-0.082-0.202-0.124-0.503-0.124-0.906v-36.315c0-3.555-0.366-6.321-1.097-8.3-0.732-1.978-1.899-2.967-3.501-2.967-0.883 0-1.705 0.318-2.464 0.956-0.76 0.637-1.526 1.576-2.299 2.816-0.773 1.241-1.643 2.834-2.61 4.779v39.031c0 0.805-0.179 1.207-0.538 1.207h-1.699z" fill-rule="nonzero" stroke="#000" stroke-width=".7px"/> </g> </g> <g transform="matrix(.80638 0 0 .80638 452.53 65.421)" fill-rule="nonzero"> <path d="m79.32 36.98v150.76l15.68-13.2 6.59-156.31-22.27 18.75z" fill="url(#f)"/> <path d="m79.32 36.98-22.27-18.75 6.59 156.31 15.68 13.2v-150.76z" fill="url(#e)"/> <path d="m25.19 104.83 8.63 49.04 12.5-14.95-2.46-56.42-18.67 22.33z" fill="url(#d)"/> <path d="m25.19 104.83-25.19-14.59 16.97 53.86 16.85 9.77-8.63-49.04z" fill="url(#c)"/> <path d="M43.86,82.5L18.69,67.98L0,90.24L25.18,104.83L43.86,82.5Z" fill="#9c3"/> <path d="m134.82 78.69-9.97 56.5 15.58-9.04 19.57-62.05-25.18 14.59z" fill="url(#b)"/> <path d="m134.82 78.69-18.68-22.33-2.86 65 11.57 13.83 9.97-56.5z" fill="url(#a)"/> <path d="m160 64.1-18.69-22.26-25.17 14.52 18.67 22.33 25.19-14.59z" fill="#ffe113"/> <path d="M101.59,18.23L79.32,0L57.05,18.23L79.32,36.98L101.59,18.23Z" fill="#f3e600"/> </g> <defs> <linearGradient id="f" x2="1" gradientTransform="matrix(.84 -162.96 162.96 .84 89.64 184.81)" gradientUnits="userSpaceOnUse"><stop stop-color="#62d399" offset="0"/><stop stop-color="#acd842" offset=".51"/><stop stop-color="#d7db0a" offset=".9"/><stop stop-color="#d7db0a" offset="1"/></linearGradient> <linearGradient id="e" x2="1" gradientTransform="matrix(-1.6,-162.13,162.13,-1.6,69.68,178.9)" gradientUnits="userSpaceOnUse"><stop stop-color="#0ba398" offset="0"/><stop stop-color="#4ca352" offset=".5"/><stop stop-color="#76a30a" offset="1"/></linearGradient> <linearGradient id="d" x2="1" gradientTransform="matrix(-1.9,-67.98,67.98,-1.9,36.6,152.17)" gradientUnits="userSpaceOnUse"><stop stop-color="#36a382" offset="0"/><stop stop-color="#36a382" offset=".19"/><stop stop-color="#49a459" offset=".54"/><stop stop-color="#76a30b" offset="1"/></linearGradient> <linearGradient id="c" x2="1" gradientTransform="matrix(2.18,-62.38,62.38,2.18,15.82,153.24)" gradientUnits="userSpaceOnUse"><stop stop-color="#267880" offset="0"/><stop stop-color="#457a5c" offset=".51"/><stop stop-color="#717516" offset="1"/></linearGradient> <linearGradient id="b" x2="1" gradientTransform="matrix(13.85,-71.96,71.96,13.85,135.08,135.43)" gradientUnits="userSpaceOnUse"><stop stop-color="#b0d939" offset="0"/><stop stop-color="#eadb04" offset="1"/></linearGradient> <linearGradient id="a" x2="1" gradientTransform="matrix(26.159 -64.737 64.737 26.159 107.42 128.14)" gradientUnits="userSpaceOnUse"><stop stop-color="#74af52" offset="0"/><stop stop-color="#74af52" offset=".17"/><stop stop-color="#99be32" offset=".48"/><stop stop-color="#c0c40a" offset="1"/></linearGradient> </defs> </svg>`;
|
|
4491
|
+
btoa(VP);
|
|
4492
|
+
const HP = '<svg viewBox="0 0 509 154" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2"><path d="M665.95 132.73v44.88l-10.56-8.4c-.8-.64-1.2-1.44-1.2-2.4v-32.4c0-6.48-4.12-9.72-12.36-9.72-2.16 0-4.18.4-6.06 1.2-1.88.8-3.54 1.8-4.98 3-1.44 1.2-2.56 2.5-3.36 3.9-.8 1.4-1.2 2.7-1.2 3.9v40.92l-10.68-8.4c-.72-.64-1.08-1.44-1.08-2.4v-53.76l10.92 8.52c.32.24.56.44.72.6.16.16.36.32.6.48.96-1.2 2.14-2.28 3.54-3.24 1.4-.96 2.92-1.76 4.56-2.4 1.64-.64 3.34-1.14 5.1-1.5 1.76-.36 3.44-.54 5.04-.54 1.44 0 2.92.04 4.44.12 1.52.08 2.84.28 3.96.6 4.56 1.12 7.8 3.12 9.72 6 1.92 2.88 2.88 6.56 2.88 11.04ZM732.38 146.05c0 .88.02 1.5.06 1.86.04.36-.02.98-.18 1.86h-7.08c-2.08 0-4.44-.02-7.08-.06-2.64-.04-5.36-.06-8.16-.06h-22.08c0 2.88.56 5.36 1.68 7.44 1.12 2.08 2.6 3.8 4.44 5.16 1.84 1.36 3.94 2.36 6.3 3 2.36.64 4.74.96 7.14.96 3.04 0 5.9-.76 8.58-2.28 2.68-1.52 4.94-3.52 6.78-6 .64.56 1.54 1.48 2.7 2.76 1.16 1.28 2.94 3.2 5.34 5.76-2.8 3.36-6.22 6.02-10.26 7.98-4.04 1.96-8.42 2.94-13.14 2.94-4.72 0-8.92-.64-12.84-1.92-3.92-1.28-7.32-3.24-10.2-5.88-2.88-2.64-5.12-5.98-6.72-10.02-1.6-4.04-2.4-8.82-2.4-14.34 0-4.96.66-9.42 1.98-13.38 1.32-3.96 3.22-7.32 5.7-10.08s5.44-4.9 8.88-6.42c3.44-1.52 7.32-2.28 11.64-2.28 5.76 0 10.52.88 14.28 2.64 3.76 1.76 6.72 4.16 8.88 7.2 2.16 3.04 3.66 6.54 4.5 10.5.84 3.96 1.26 8.18 1.26 12.66Zm-29.4-22.8c-2.16.16-4.16.72-6 1.68-1.84.96-3.42 2.2-4.74 3.72-1.32 1.52-2.36 3.28-3.12 5.28-.76 2-1.14 4.12-1.14 6.36h33.12c0-2-.22-4.06-.66-6.18-.44-2.12-1.3-4.02-2.58-5.7-1.28-1.68-3.1-3.02-5.46-4.02-2.36-1-5.5-1.38-9.42-1.14ZM795.93 146.05c0 .88.02 1.5.06 1.86.04.36-.02.98-.18 1.86h-7.08c-2.08 0-4.44-.02-7.08-.06-2.64-.04-5.36-.06-8.16-.06h-22.08c0 2.88.56 5.36 1.68 7.44 1.12 2.08 2.6 3.8 4.44 5.16 1.84 1.36 3.94 2.36 6.3 3 2.36.64 4.74.96 7.14.96 3.04 0 5.9-.76 8.58-2.28 2.68-1.52 4.94-3.52 6.78-6 .64.56 1.54 1.48 2.7 2.76 1.16 1.28 2.94 3.2 5.34 5.76-2.8 3.36-6.22 6.02-10.26 7.98-4.04 1.96-8.42 2.94-13.14 2.94-4.72 0-8.92-.64-12.84-1.92-3.92-1.28-7.32-3.24-10.2-5.88-2.88-2.64-5.12-5.98-6.72-10.02-1.6-4.04-2.4-8.82-2.4-14.34 0-4.96.66-9.42 1.98-13.38 1.32-3.96 3.22-7.32 5.7-10.08s5.44-4.9 8.88-6.42c3.44-1.52 7.32-2.28 11.64-2.28 5.76 0 10.52.88 14.28 2.64 3.76 1.76 6.72 4.16 8.88 7.2 2.16 3.04 3.66 6.54 4.5 10.5.84 3.96 1.26 8.18 1.26 12.66Zm-29.4-22.8c-2.16.16-4.16.72-6 1.68-1.84.96-3.42 2.2-4.74 3.72-1.32 1.52-2.36 3.28-3.12 5.28-.76 2-1.14 4.12-1.14 6.36h33.12c0-2-.22-4.06-.66-6.18-.44-2.12-1.3-4.02-2.58-5.7-1.28-1.68-3.1-3.02-5.46-4.02-2.36-1-5.5-1.38-9.42-1.14ZM858.57 97.21c.64.48.96 1.16.96 2.04v74.88c-.08 1.04-.12 2.12-.12 3.24-1.84-1.52-3.56-2.92-5.16-4.2-1.36-1.12-2.66-2.18-3.9-3.18-1.24-1-2.06-1.66-2.46-1.98-1.76 2.48-4.26 4.44-7.5 5.88-3.24 1.44-7.02 2.16-11.34 2.16-3.84 0-7.4-.7-10.68-2.1-3.28-1.4-6.14-3.44-8.58-6.12-2.44-2.68-4.34-5.94-5.7-9.78-1.36-3.84-2.04-8.16-2.04-12.96 0-4.32.78-8.34 2.34-12.06 1.56-3.72 3.6-6.92 6.12-9.6 2.52-2.68 5.38-4.78 8.58-6.3 3.2-1.52 6.48-2.28 9.84-2.28 2.56 0 4.82.22 6.78.66 1.96.44 3.68 1.06 5.16 1.86s2.78 1.74 3.9 2.82a35.92 35.92 0 0 1 3.12 3.42V88.57l10.68 8.64Zm-27.96 67.92c3.6 0 6.52-.68 8.76-2.04 2.24-1.36 3.98-3.06 5.22-5.1a20.5 20.5 0 0 0 2.58-6.54c.48-2.32.72-4.44.72-6.36v-1.2c0-1.12-.22-2.7-.66-4.74-.44-2.04-1.28-4.06-2.52-6.06s-3-3.7-5.28-5.1c-2.28-1.4-5.22-2.02-8.82-1.86-3.44 0-6.26.74-8.46 2.22-2.2 1.48-3.96 3.26-5.28 5.34-1.32 2.08-2.24 4.2-2.76 6.36-.52 2.16-.78 3.92-.78 5.28 0 1.84.24 3.92.72 6.24.48 2.32 1.36 4.48 2.64 6.48s3.04 3.68 5.28 5.04c2.24 1.36 5.12 2.04 8.64 2.04ZM882.81 97.09c.64.48.96 1.12.96 1.92l-.12 41.04v37.08l-10.56-8.4c-.72-.64-1.08-1.44-1.08-2.4V88.45l10.8 8.64ZM950.36 146.05c0 .88.02 1.5.06 1.86.04.36-.02.98-.18 1.86h-7.08c-2.08 0-4.44-.02-7.08-.06-2.64-.04-5.36-.06-8.16-.06h-22.08c0 2.88.56 5.36 1.68 7.44 1.12 2.08 2.6 3.8 4.44 5.16 1.84 1.36 3.94 2.36 6.3 3 2.36.64 4.74.96 7.14.96 3.04 0 5.9-.76 8.58-2.28 2.68-1.52 4.94-3.52 6.78-6 .64.56 1.54 1.48 2.7 2.76 1.16 1.28 2.94 3.2 5.34 5.76-2.8 3.36-6.22 6.02-10.26 7.98-4.04 1.96-8.42 2.94-13.14 2.94-4.72 0-8.92-.64-12.84-1.92-3.92-1.28-7.32-3.24-10.2-5.88-2.88-2.64-5.12-5.98-6.72-10.02-1.6-4.04-2.4-8.82-2.4-14.34 0-4.96.66-9.42 1.98-13.38 1.32-3.96 3.22-7.32 5.7-10.08s5.44-4.9 8.88-6.42c3.44-1.52 7.32-2.28 11.64-2.28 5.76 0 10.52.88 14.28 2.64 3.76 1.76 6.72 4.16 8.88 7.2 2.16 3.04 3.66 6.54 4.5 10.5.84 3.96 1.26 8.18 1.26 12.66Zm-29.4-22.8c-2.16.16-4.16.72-6 1.68-1.84.96-3.42 2.2-4.74 3.72-1.32 1.52-2.36 3.28-3.12 5.28-.76 2-1.14 4.12-1.14 6.36h33.12c0-2-.22-4.06-.66-6.18-.44-2.12-1.3-4.02-2.58-5.7-1.28-1.68-3.1-3.02-5.46-4.02-2.36-1-5.5-1.38-9.42-1.14Z" style="fill-rule:nonzero" transform="translate(-452.406 -63.709) scale(1.00797)"/><path d="M79.32 36.98v150.76L95 174.54l6.59-156.31-22.27 18.75Z" style="fill:url(#a);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="M79.32 36.98 57.05 18.23l6.59 156.31 15.68 13.2V36.98Z" style="fill:url(#b);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="m25.19 104.83 8.63 49.04 12.5-14.95-2.46-56.42-18.67 22.33Z" style="fill:url(#c);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="M25.19 104.83 0 90.24l16.97 53.86 16.85 9.77-8.63-49.04Z" style="fill:url(#d);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="M43.86 82.5 18.69 67.98 0 90.24l25.18 14.59L43.86 82.5Z" style="fill:#9c3;fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="m134.82 78.69-9.97 56.5 15.58-9.04L160 64.1l-25.18 14.59Z" style="fill:url(#e);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="m134.82 78.69-18.68-22.33-2.86 65 11.57 13.83 9.97-56.5Z" style="fill:url(#f);fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="m160 64.1-18.69-22.26-25.17 14.52 18.67 22.33L160 64.1Z" style="fill:#ffe113;fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><path d="M101.59 18.23 79.32 0 57.05 18.23l22.27 18.75 22.27-18.75Z" style="fill:#f3e600;fill-rule:nonzero" transform="matrix(.80638 0 0 .80638 2.361 1.094)"/><defs><linearGradient id="a" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(.84 -162.96 162.96 .84 89.64 184.81)"><stop offset="0" style="stop-color:#62d399;stop-opacity:1"/><stop offset=".51" style="stop-color:#acd842;stop-opacity:1"/><stop offset=".9" style="stop-color:#d7db0a;stop-opacity:1"/><stop offset="1" style="stop-color:#d7db0a;stop-opacity:1"/></linearGradient><linearGradient id="b" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-90.565 123.412 54.953) scale(162.14)"><stop offset="0" style="stop-color:#0ba398;stop-opacity:1"/><stop offset=".5" style="stop-color:#4ca352;stop-opacity:1"/><stop offset="1" style="stop-color:#76a30a;stop-opacity:1"/></linearGradient><linearGradient id="c" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(-68) rotate(88.4 .881 -1.396)"><stop offset="0" style="stop-color:#36a382;stop-opacity:1"/><stop offset=".19" style="stop-color:#36a382;stop-opacity:1"/><stop offset=".54" style="stop-color:#49a459;stop-opacity:1"/><stop offset="1" style="stop-color:#76a30b;stop-opacity:1"/></linearGradient><linearGradient id="d" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-88 87.255 68.431) scale(62.42)"><stop offset="0" style="stop-color:#267880;stop-opacity:1"/><stop offset=".51" style="stop-color:#457a5c;stop-opacity:1"/><stop offset="1" style="stop-color:#717516;stop-opacity:1"/></linearGradient><linearGradient id="e" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-79.1 149.53 -14.065) scale(73.28)"><stop offset="0" style="stop-color:#b0d939;stop-opacity:1"/><stop offset="1" style="stop-color:#eadb04;stop-opacity:1"/></linearGradient><linearGradient id="f" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-67.997 148.705 -15.558) scale(69.8226)"><stop offset="0" style="stop-color:#74af52;stop-opacity:1"/><stop offset=".17" style="stop-color:#74af52;stop-opacity:1"/><stop offset=".48" style="stop-color:#99be32;stop-opacity:1"/><stop offset="1" style="stop-color:#c0c40a;stop-opacity:1"/></linearGradient></defs></svg>', GP = btoa(HP), qP = "data:image/svg+xml;charset=utf-8;base64," + GP, x_ = qP;
|
|
4629
4493
|
var Hc = /* @__PURE__ */ ((s) => (s[s.Quad = 0] = "Quad", s[s.Cube = 1] = "Cube", s[s.Sphere = 2] = "Sphere", s[s.Cylinder = 3] = "Cylinder", s[s.RoundedCube = 10] = "RoundedCube", s))(Hc || {});
|
|
4630
4494
|
class zr {
|
|
4631
4495
|
/**
|
|
@@ -4635,7 +4499,7 @@ class zr {
|
|
|
4635
4499
|
*/
|
|
4636
4500
|
static createText(e, t) {
|
|
4637
4501
|
let i = null;
|
|
4638
|
-
const n = t?.font ||
|
|
4502
|
+
const n = t?.font || QP(t?.familyFamily || null);
|
|
4639
4503
|
n instanceof wC ? i = this.#t(e, n, t) : i == null && (i = new yn());
|
|
4640
4504
|
const o = t?.color || 16777215, r = new H(i, t?.material ?? new pt({ color: o }));
|
|
4641
4505
|
return this.applyDefaultObjectOptions(r, t), n instanceof Promise ? n.then((a) => {
|
|
@@ -4685,7 +4549,7 @@ class zr {
|
|
|
4685
4549
|
case 10:
|
|
4686
4550
|
case "RoundedCube":
|
|
4687
4551
|
{
|
|
4688
|
-
const o =
|
|
4552
|
+
const o = XP(1, 1, 1, 0.1, 2), r = t?.material ?? new pt({ color: n });
|
|
4689
4553
|
t?.texture && "map" in r && (r.map = t.texture), i = new H(o, r), i.name = "RoundedCube";
|
|
4690
4554
|
}
|
|
4691
4555
|
break;
|
|
@@ -4704,7 +4568,7 @@ class zr {
|
|
|
4704
4568
|
}
|
|
4705
4569
|
break;
|
|
4706
4570
|
case "ShaderBall":
|
|
4707
|
-
i = new Ps(), i.name = "ShaderBall",
|
|
4571
|
+
i = new Ps(), i.name = "ShaderBall", YP(i, t);
|
|
4708
4572
|
break;
|
|
4709
4573
|
}
|
|
4710
4574
|
return this.applyDefaultObjectOptions(i, t), i;
|
|
@@ -4724,7 +4588,7 @@ class zr {
|
|
|
4724
4588
|
e.receiveShadow = !0, e.castShadow = !0, t?.name && (e.name = t.name), t?.position && (Array.isArray(t.position) ? e.position.set(t.position[0], t.position[1], t.position[2]) : e.position.set(t.position.x || 0, t.position.y || 0, t.position.z || 0)), t?.rotation && (Array.isArray(t.rotation) ? e.rotation.set(t.rotation[0], t.rotation[1], t.rotation[2]) : e.rotation.set(t.rotation.x || 0, t.rotation.y || 0, t.rotation.z || 0)), t?.scale && (typeof t.scale == "number" ? e.scale.set(t.scale, t.scale, t.scale) : Array.isArray(t.scale) ? e.scale.set(t.scale[0], t.scale[1], t.scale[2]) : e.scale.set(t.scale.x || 1, t.scale.y || 1, t.scale.z || 1)), t?.receiveShadow != null && (e.receiveShadow = t.receiveShadow), t?.castShadow != null && (e.castShadow = t.castShadow), t?.parent && t.parent.add(e);
|
|
4725
4589
|
}
|
|
4726
4590
|
}
|
|
4727
|
-
function
|
|
4591
|
+
function XP(s, e, t, i, n) {
|
|
4728
4592
|
const o = new oS(), r = 1e-5, a = i - r;
|
|
4729
4593
|
o.absarc(r, r, r, -Math.PI / 2, -Math.PI, !0), o.absarc(r, e - a * 2, r, Math.PI, Math.PI / 2, !0), o.absarc(s - a * 2, e - a * 2, r, Math.PI / 2, 0, !0), o.absarc(s - a * 2, r, r, 0, -Math.PI / 2, !0);
|
|
4730
4594
|
const l = new rS(o, {
|
|
@@ -4750,7 +4614,7 @@ function JP(s, e, t, i, n) {
|
|
|
4750
4614
|
return l.scale(1, 1, 1 - i), l.center(), l.index || l.setIndex(Array.from({ length: l.attributes.position.count }, (c, h) => h)), l.computeVertexNormals(), l;
|
|
4751
4615
|
}
|
|
4752
4616
|
const Ah = /* @__PURE__ */ new Map();
|
|
4753
|
-
function
|
|
4617
|
+
function QP(s) {
|
|
4754
4618
|
let e = "";
|
|
4755
4619
|
switch (s) {
|
|
4756
4620
|
default:
|
|
@@ -4772,24 +4636,24 @@ function ek(s) {
|
|
|
4772
4636
|
});
|
|
4773
4637
|
return Ah.set(e, i), i;
|
|
4774
4638
|
}
|
|
4775
|
-
let
|
|
4776
|
-
function
|
|
4777
|
-
if (
|
|
4639
|
+
let zf = !1, Nf = null;
|
|
4640
|
+
function YP(s, e) {
|
|
4641
|
+
if (Nf === null) {
|
|
4778
4642
|
const t = "https://cdn.needle.tools/static/models/shaderball.glb", i = new Is(), n = ig(null);
|
|
4779
|
-
i.setDRACOLoader(n.dracoLoader), i.setKTX2Loader(n.ktx2Loader),
|
|
4643
|
+
i.setDRACOLoader(n.dracoLoader), i.setKTX2Loader(n.ktx2Loader), zf = !0, Nf = i.loadAsync(t).then((o) => {
|
|
4780
4644
|
const r = o.scene;
|
|
4781
4645
|
return r.position.y -= 0.5, r;
|
|
4782
4646
|
}).catch((o) => (console.warn("Failed to load shaderball mesh: " + o.message), C_())).finally(() => {
|
|
4783
|
-
|
|
4647
|
+
zf = !1;
|
|
4784
4648
|
});
|
|
4785
4649
|
}
|
|
4786
|
-
if (
|
|
4650
|
+
if (zf) {
|
|
4787
4651
|
const t = C_();
|
|
4788
4652
|
t.name = "ShaderBall-Placeholder";
|
|
4789
4653
|
const i = t.children[0];
|
|
4790
4654
|
i?.type === "Mesh" && S_(i, e), s.add(t);
|
|
4791
4655
|
}
|
|
4792
|
-
|
|
4656
|
+
Nf.then((t) => {
|
|
4793
4657
|
s.children.forEach((o) => {
|
|
4794
4658
|
o.name === "ShaderBall-Placeholder" && s.remove(o);
|
|
4795
4659
|
});
|
|
@@ -4976,14 +4840,14 @@ var Ac;
|
|
|
4976
4840
|
s.unregisterExporter = n;
|
|
4977
4841
|
})(Ac || (Ac = {}));
|
|
4978
4842
|
const He = x("debugwebxr"), P_ = x("stats");
|
|
4979
|
-
let
|
|
4980
|
-
function
|
|
4843
|
+
let $f = 0;
|
|
4844
|
+
function KP(s) {
|
|
4981
4845
|
let e = null;
|
|
4982
4846
|
const t = s;
|
|
4983
4847
|
return t.getAROverlayContainer ? e = t.getAROverlayContainer() : e = s, e;
|
|
4984
4848
|
}
|
|
4985
|
-
|
|
4986
|
-
async function
|
|
4849
|
+
ZP();
|
|
4850
|
+
async function ZP() {
|
|
4987
4851
|
let s = "immersive-vr";
|
|
4988
4852
|
try {
|
|
4989
4853
|
if (D.isNeedleAppClip() ? s = "immersive-ar" : await navigator.xr?.isSessionSupported("immersive-vr") || (s = "immersive-ar"), !await navigator.xr?.isSessionSupported("immersive-ar") && s === "immersive-ar")
|
|
@@ -5017,7 +4881,7 @@ async function nk() {
|
|
|
5017
4881
|
navigator.xr?.addEventListener("sessiongranted", async () => {
|
|
5018
4882
|
const e = sessionStorage.getItem("needle_xr_session_mode"), t = sessionStorage.getItem("needle_xr_session_init") ?? null, i = t ? JSON.parse(t) : null;
|
|
5019
4883
|
let n = null;
|
|
5020
|
-
if (
|
|
4884
|
+
if (h0() && (await Ga.start(e || s, i || K.getDefaultSessionInit(s)).catch((o) => console.warn("[NeedleXRSession:granted] TemporaryXRContext start failed:", o)), await tk(), n = await Ga.handoff()), n)
|
|
5021
4885
|
K.setSession(n.mode, n.session, n.init, N.Current);
|
|
5022
4886
|
else if (e && t) {
|
|
5023
4887
|
console.log("[NeedleXRSession:granted] Restore last session");
|
|
@@ -5028,35 +4892,35 @@ async function nk() {
|
|
|
5028
4892
|
}, { once: !0 });
|
|
5029
4893
|
}
|
|
5030
4894
|
}
|
|
5031
|
-
function
|
|
4895
|
+
function JP(s, e) {
|
|
5032
4896
|
sessionStorage.setItem("needle_xr_session_mode", s), sessionStorage.setItem("needle_xr_session_init", JSON.stringify(e));
|
|
5033
4897
|
}
|
|
5034
|
-
function
|
|
4898
|
+
function ek() {
|
|
5035
4899
|
sessionStorage.removeItem("needle_xr_session_mode"), sessionStorage.removeItem("needle_xr_session_init");
|
|
5036
4900
|
}
|
|
5037
|
-
const
|
|
4901
|
+
const mg = /* @__PURE__ */ new Set();
|
|
5038
4902
|
pe.registerCallback(ue.ContextCreationStart, async (s) => {
|
|
5039
|
-
|
|
4903
|
+
mg.add(s.context);
|
|
5040
4904
|
});
|
|
5041
4905
|
pe.registerCallback(ue.ContextCreated, async (s) => {
|
|
5042
|
-
|
|
4906
|
+
mg.delete(s.context);
|
|
5043
4907
|
const e = s.context?.domElement.getAttribute("autostart") || null;
|
|
5044
|
-
|
|
4908
|
+
ik(e);
|
|
5045
4909
|
});
|
|
5046
|
-
function
|
|
5047
|
-
return
|
|
4910
|
+
function h0() {
|
|
4911
|
+
return mg.size > 0;
|
|
5048
4912
|
}
|
|
5049
|
-
function
|
|
4913
|
+
function tk() {
|
|
5050
4914
|
return new Promise((s) => {
|
|
5051
4915
|
const e = Date.now(), t = setInterval(() => {
|
|
5052
|
-
(!
|
|
4916
|
+
(!h0() || Date.now() - e > 6e4) && (clearInterval(t), s());
|
|
5053
4917
|
}, 100);
|
|
5054
4918
|
});
|
|
5055
4919
|
}
|
|
5056
4920
|
D.isDesktop() && L() && window.addEventListener("keydown", (s) => {
|
|
5057
4921
|
(s.key === "x" || s.key === "Escape") && K.active && K.stop();
|
|
5058
4922
|
});
|
|
5059
|
-
function
|
|
4923
|
+
function ik(s) {
|
|
5060
4924
|
s && s?.toLowerCase() === "ar" && Kn.registerWaitForInteraction(() => {
|
|
5061
4925
|
K.start("ar");
|
|
5062
4926
|
});
|
|
@@ -5065,7 +4929,7 @@ const Ih = /* @__PURE__ */ Symbol("initial-fov");
|
|
|
5065
4929
|
class K {
|
|
5066
4930
|
static _sync = null;
|
|
5067
4931
|
static getXRSync(e) {
|
|
5068
|
-
return this._sync || (this._sync = new
|
|
4932
|
+
return this._sync || (this._sync = new zP(e)), this._sync;
|
|
5069
4933
|
}
|
|
5070
4934
|
static get currentSessionRequest() {
|
|
5071
4935
|
return this._currentSessionRequestMode;
|
|
@@ -5259,7 +5123,7 @@ class K {
|
|
|
5259
5123
|
{
|
|
5260
5124
|
if (await this.xrSystem?.isSessionSupported("immersive-ar") !== !0)
|
|
5261
5125
|
return console.error(e + " is not supported by this browser."), null;
|
|
5262
|
-
const l = this.getDefaultSessionInit(e), c =
|
|
5126
|
+
const l = this.getDefaultSessionInit(e), c = KP(i.domElement);
|
|
5263
5127
|
c && !D.isQuest() && (l.domOverlay = { root: c }, l.optionalFeatures.push("dom-overlay")), t = {
|
|
5264
5128
|
...l,
|
|
5265
5129
|
...t
|
|
@@ -5561,7 +5425,7 @@ class K {
|
|
|
5561
5425
|
*/
|
|
5562
5426
|
_mainCamera = null;
|
|
5563
5427
|
constructor(e, t, i, n) {
|
|
5564
|
-
|
|
5428
|
+
JP(e, n.init), this.session = t, this.mode = e, this.context = i, (He || x("console")) && hc(!0), this._xr_scripts = [...n.scripts], this._xr_update_scripts = this._xr_scripts.filter((o) => typeof o.onUpdateXR == "function"), this._controllerAdded = n.controller_added, this._controllerRemoved = n.controller_removed, Bs(this.onBefore, Ce.LateUpdate), this.context.pre_render_callbacks.push(this.onBeforeRender), this.context.post_render_callbacks.push(this.onAfterRender), (n.init.optionalFeatures?.includes("hit-test") || n.init.requiredFeatures?.includes("hit-test")) && t.requestReferenceSpace("viewer").then((o) => t.requestHitTestSource?.call(t, { space: o })?.then((r) => this._viewerHitTestSource = r).catch((r) => console.error(r))).catch((o) => console.error(o)), this.context.mainCamera && (this._originalCameraWorldPosition = te(this.context.mainCamera, new _()), this._originalCameraWorldRotation = ve(this.context.mainCamera, new V()), this._originalCameraWorldScale = qe(this.context.mainCamera, new _()), this._originalCameraParent = this.context.mainCamera.parent, this.context.mainCamera instanceof ce && (this.context.mainCamera[Ih] = this.context.mainCamera.fov)), this._defaultRig = new kP(), this.context.scene.add(this._defaultRig.gameObject), this.addRig(this._defaultRig);
|
|
5565
5429
|
for (let o = 0; o < t.inputSources.length; o++) {
|
|
5566
5430
|
const r = t.inputSources[o];
|
|
5567
5431
|
if (!r.handedness) {
|
|
@@ -5604,7 +5468,7 @@ class K {
|
|
|
5604
5468
|
console.debug("Controller already registered for input source", t);
|
|
5605
5469
|
return;
|
|
5606
5470
|
}
|
|
5607
|
-
const i = new
|
|
5471
|
+
const i = new o0(this, e, t);
|
|
5608
5472
|
this._newControllers.push(i);
|
|
5609
5473
|
};
|
|
5610
5474
|
/** Disconnects the controller, invokes events and notifies previou controller (if any) */
|
|
@@ -5646,13 +5510,13 @@ class K {
|
|
|
5646
5510
|
action: "session_end",
|
|
5647
5511
|
mode: this.mode,
|
|
5648
5512
|
source: "NeedleXRSession.onEnd"
|
|
5649
|
-
}),
|
|
5513
|
+
}), ek(), this.onAfterRender(), this.revertCustomForward(), this._didStart = !1, this._previousCameraParent = null, this.requestedCameraNearPlane = null, To(this.onBefore, Ce.LateUpdate);
|
|
5650
5514
|
const t = this.context.pre_render_callbacks.indexOf(this.onBeforeRender);
|
|
5651
5515
|
t >= 0 && this.context.pre_render_callbacks.splice(t, 1);
|
|
5652
5516
|
const i = this.context.post_render_callbacks.indexOf(this.onAfterRender);
|
|
5653
5517
|
i >= 0 && this.context.post_render_callbacks.splice(i, 1), this.context.xr = null, this.context.renderer.xr.enabled = !1, this.context.pre_update_oneshot_callbacks.push(() => {
|
|
5654
5518
|
this.context.mainCameraComponent?.applyClearFlags(), this.context.mainCameraComponent?.applyClippingPlane();
|
|
5655
|
-
}),
|
|
5519
|
+
}), SP({ session: this });
|
|
5656
5520
|
for (const o of K._xrEndListeners)
|
|
5657
5521
|
o({ xr: this });
|
|
5658
5522
|
const n = [...this.controllers];
|
|
@@ -5703,7 +5567,7 @@ class K {
|
|
|
5703
5567
|
}
|
|
5704
5568
|
}
|
|
5705
5569
|
}
|
|
5706
|
-
|
|
5570
|
+
xP({ session: this }), Ur();
|
|
5707
5571
|
for (const o of K._xrStartListeners)
|
|
5708
5572
|
o(i);
|
|
5709
5573
|
const n = [...this._xr_scripts];
|
|
@@ -5768,7 +5632,7 @@ class K {
|
|
|
5768
5632
|
if (He)
|
|
5769
5633
|
for (const e of this.controllers)
|
|
5770
5634
|
e.onRenderDebug();
|
|
5771
|
-
if ((He || P_) && this.rig && (
|
|
5635
|
+
if ((He || P_) && this.rig && ($f++, $f >= 20)) {
|
|
5772
5636
|
const e = this.rig.gameObject.worldPosition, t = this.rig.gameObject.worldForward;
|
|
5773
5637
|
e.add(t.multiplyScalar(1.5));
|
|
5774
5638
|
const i = this.rig.gameObject.worldUp;
|
|
@@ -5778,7 +5642,7 @@ class K {
|
|
|
5778
5642
|
for (const o of this.controllers)
|
|
5779
5643
|
n += `
|
|
5780
5644
|
${o.hand ? "hand" : "ctrl"} ${o.inputSource.handedness}[${o.index}] con:${o.connected} tr:${o.isTracking} hts:${o.hasHitTestSource ? "yes" : "no"}`;
|
|
5781
|
-
|
|
5645
|
+
$f = 0, U.DrawLabel(e, n, void 0, 1 / 60 * 20);
|
|
5782
5646
|
}
|
|
5783
5647
|
}
|
|
5784
5648
|
onBeforeRender = () => {
|
|
@@ -5925,13 +5789,13 @@ ${o.hand ? "hand" : "ctrl"} ${o.inputSource.handedness}[${o.index}] con:${o.conn
|
|
|
5925
5789
|
this._transition?.remove();
|
|
5926
5790
|
}
|
|
5927
5791
|
}
|
|
5928
|
-
const
|
|
5929
|
-
class
|
|
5792
|
+
const Wf = x("debugwebxr");
|
|
5793
|
+
class nk {
|
|
5930
5794
|
/** Searches the hierarchy for objects following a specific naming scheme */
|
|
5931
5795
|
static tryFindAvatarObjects(e, t, i) {
|
|
5932
5796
|
if (i.head && i.leftHand && i.rightHand) return;
|
|
5933
5797
|
const n = e.name.toLocaleLowerCase();
|
|
5934
|
-
!i.head && n.includes("head") && (
|
|
5798
|
+
!i.head && n.includes("head") && (Wf && console.log("FOUND AVATAR HEAD", e.name), i.head = new ne("", t, e)), n.includes("hand") && (!i.leftHand && n.includes("left") && (Wf && console.log("FOUND AVATAR LEFT HAND", e.name), i.leftHand = new ne("", t, e)), !i.rightHand && n.includes("right") && (Wf && console.log("FOUND AVATAR RIGHT HAND", e.name), i.rightHand = new ne("", t, e)));
|
|
5935
5799
|
for (let o = 0; o < e.children.length; o++) {
|
|
5936
5800
|
if (i.head && i.leftHand && i.rightHand) return;
|
|
5937
5801
|
const r = e.children[o];
|
|
@@ -6002,7 +5866,7 @@ class ae extends re {
|
|
|
6002
5866
|
return new ae(e);
|
|
6003
5867
|
}
|
|
6004
5868
|
}
|
|
6005
|
-
const It = new _(), k_ = new _(), O_ = new V(),
|
|
5869
|
+
const It = new _(), k_ = new _(), O_ = new V(), sk = x("debuggizmos"), an = 8947848, Vf = 32;
|
|
6006
5870
|
class U {
|
|
6007
5871
|
constructor() {
|
|
6008
5872
|
}
|
|
@@ -6182,9 +6046,9 @@ class U {
|
|
|
6182
6046
|
"mesh" in e ? (t.geometry = e.mesh.geometry, t.matrixWorld.copy(e.mesh.matrixWorld)) : (t.geometry = e.geometry, t.matrixWorld.copy(e.matrix)), t.matrixAutoUpdate = !1, t.matrixWorldAutoUpdate = !1, t.material.depthTest = e.depthTest ?? !0, t.material.wireframe = !0, dn(t.material, e.color ?? an);
|
|
6183
6047
|
}
|
|
6184
6048
|
}
|
|
6185
|
-
const
|
|
6186
|
-
function
|
|
6187
|
-
const e = new re(s ?? 14540253), t = new aS(
|
|
6049
|
+
const ok = new Ba(1, 1, 1);
|
|
6050
|
+
function gg(s = null) {
|
|
6051
|
+
const e = new re(s ?? 14540253), t = new aS(ok);
|
|
6188
6052
|
return new fv(t, new Qm({ color: e }));
|
|
6189
6053
|
}
|
|
6190
6054
|
function dn(s, e) {
|
|
@@ -6209,7 +6073,7 @@ class Fi {
|
|
|
6209
6073
|
static getTextLabel(e, t, i, n, o) {
|
|
6210
6074
|
this.ensureFont();
|
|
6211
6075
|
let r = this.textLabelCache.pop(), a = 1;
|
|
6212
|
-
o && typeof o == "string" && o?.length >= 8 && o.startsWith("#") ? (a = parseInt(o.substring(7), 16) / 255, o = o.substring(0, 7),
|
|
6076
|
+
o && typeof o == "string" && o?.length >= 8 && o.startsWith("#") ? (a = parseInt(o.substring(7), 16) / 255, o = o.substring(0, 7), sk && console.log(o, a)) : typeof o == "object" && o.a !== void 0 && (a = o.a);
|
|
6213
6077
|
const l = {
|
|
6214
6078
|
boxSizing: "border-box",
|
|
6215
6079
|
fontFamily: this.familyName,
|
|
@@ -6259,11 +6123,11 @@ class Fi {
|
|
|
6259
6123
|
t = new Fa();
|
|
6260
6124
|
let i = t.geometry.getAttribute("position");
|
|
6261
6125
|
if (!i) {
|
|
6262
|
-
i = new mt(new Float32Array(
|
|
6126
|
+
i = new mt(new Float32Array(Vf * 3), 3), t.geometry.setAttribute("position", i);
|
|
6263
6127
|
const n = z(0, 1, 0), o = z(0, 0, 1), r = z(o);
|
|
6264
6128
|
r.cross(n).normalize();
|
|
6265
|
-
const a = z(r), l = Math.PI * 2 / (
|
|
6266
|
-
for (let c = 0; c <
|
|
6129
|
+
const a = z(r), l = Math.PI * 2 / (Vf - 1);
|
|
6130
|
+
for (let c = 0; c < Vf + 1; c++) {
|
|
6267
6131
|
const h = l * c;
|
|
6268
6132
|
n.copy(a).multiplyScalar(Math.cos(h) * 1), r.copy(o).multiplyScalar(Math.sin(h) * 1);
|
|
6269
6133
|
const d = n.add(r);
|
|
@@ -6349,7 +6213,7 @@ class Fi {
|
|
|
6349
6213
|
}
|
|
6350
6214
|
}
|
|
6351
6215
|
}
|
|
6352
|
-
const Yt = x("debugphysics"),
|
|
6216
|
+
const Yt = x("debugphysics"), rk = x("debugworker"), M_ = new Co();
|
|
6353
6217
|
class Nr {
|
|
6354
6218
|
static AllLayers = 4294967295;
|
|
6355
6219
|
ray;
|
|
@@ -6381,7 +6245,7 @@ class Nr {
|
|
|
6381
6245
|
t ? t.mask = e : this.layerMask = e;
|
|
6382
6246
|
}
|
|
6383
6247
|
}
|
|
6384
|
-
class
|
|
6248
|
+
class d0 {
|
|
6385
6249
|
distance;
|
|
6386
6250
|
point;
|
|
6387
6251
|
object;
|
|
@@ -6494,7 +6358,7 @@ class Ic {
|
|
|
6494
6358
|
const f = wv(o);
|
|
6495
6359
|
f && (a.geometry = f);
|
|
6496
6360
|
}
|
|
6497
|
-
if (!d &&
|
|
6361
|
+
if (!d && lk(a, e, i) || (n.useAcceleratedRaycast !== !1 ? Fd.runMeshBVHRaycast(e, a, i, this.context, n) : e.intersectObject(a, !1, i)), a.geometry = l, Yt && i.length != c) {
|
|
6498
6362
|
const f = i[i.length - 1];
|
|
6499
6363
|
U.DrawWireSphere(f.point, 0.1, 7798784, 1, !1), U.DrawWireMesh({ mesh: o, depthTest: !1, duration: 0.2, color: 7798784 });
|
|
6500
6364
|
}
|
|
@@ -6519,13 +6383,13 @@ class Ic {
|
|
|
6519
6383
|
const f = this.sphere;
|
|
6520
6384
|
f.center.copy(t), f.radius = i;
|
|
6521
6385
|
const p = o.length;
|
|
6522
|
-
if (
|
|
6386
|
+
if (Fd.runMeshBVHRaycast(this.sphere, h, o, this.context, {}), p != o.length && !r)
|
|
6523
6387
|
return;
|
|
6524
6388
|
} else if (d.boundingBox || d.computeBoundingBox(), d.boundingBox) {
|
|
6525
6389
|
h.matrixWorldNeedsUpdate && h.updateWorldMatrix(!1, !1);
|
|
6526
6390
|
const f = this.tempBoundingBox.copy(d.boundingBox).applyMatrix4(h.matrixWorld), p = this.sphere;
|
|
6527
6391
|
if (p.center.copy(t), p.radius = i, p.intersectsBox(f)) {
|
|
6528
|
-
const g = te(e), y = g.distanceTo(p.center), m = new
|
|
6392
|
+
const g = te(e), y = g.distanceTo(p.center), m = new d0(e, y, g);
|
|
6529
6393
|
if (o.push(m), !r) return;
|
|
6530
6394
|
}
|
|
6531
6395
|
}
|
|
@@ -6540,8 +6404,8 @@ class Ic {
|
|
|
6540
6404
|
function E_(s) {
|
|
6541
6405
|
return !(s.index && s.index.array.length < 3);
|
|
6542
6406
|
}
|
|
6543
|
-
const tr = new mu(), Lh = new Mr(),
|
|
6544
|
-
function
|
|
6407
|
+
const tr = new mu(), Lh = new Mr(), ak = new hv();
|
|
6408
|
+
function lk(s, e, t) {
|
|
6545
6409
|
const i = s._computeIntersections;
|
|
6546
6410
|
if (!i)
|
|
6547
6411
|
return !1;
|
|
@@ -6550,7 +6414,7 @@ function fk(s, e, t) {
|
|
|
6550
6414
|
const l = this, c = l.geometry.boundingSphere;
|
|
6551
6415
|
if (c) {
|
|
6552
6416
|
if (l instanceof Na) {
|
|
6553
|
-
Lh.setFromNormalAndCoplanarPoint(z(0, 1, 0), z(0, -l.position.y, 0)), Lh.applyMatrix4(l.matrixWorld,
|
|
6417
|
+
Lh.setFromNormalAndCoplanarPoint(z(0, 1, 0), z(0, -l.position.y, 0)), Lh.applyMatrix4(l.matrixWorld, ak);
|
|
6554
6418
|
const d = o.ray.intersectPlane(Lh, z());
|
|
6555
6419
|
if (d) {
|
|
6556
6420
|
tr.copy(c), tr.applyMatrix4(l.matrixWorld);
|
|
@@ -6571,7 +6435,7 @@ function fk(s, e, t) {
|
|
|
6571
6435
|
}
|
|
6572
6436
|
}), s._computeIntersections = n, e.intersectObject(s, !1, t), s._computeIntersections = i, !0;
|
|
6573
6437
|
}
|
|
6574
|
-
var
|
|
6438
|
+
var Fd;
|
|
6575
6439
|
((s) => {
|
|
6576
6440
|
let e = 0;
|
|
6577
6441
|
function t(b, w, T, k, E) {
|
|
@@ -6598,7 +6462,7 @@ var Ud;
|
|
|
6598
6462
|
}
|
|
6599
6463
|
if (!B && y.length < 3)
|
|
6600
6464
|
try {
|
|
6601
|
-
|
|
6465
|
+
rk && console.warn("[GenerateMeshBVHWorker] Creating worker with import.meta.url:", import.meta.url), B = new f(), y.push(B);
|
|
6602
6466
|
} catch (G) {
|
|
6603
6467
|
G instanceof DOMException && G.name === "SecurityError" ? (console.warn("Failed to create MeshBVH worker, falling back to main thread generation. This can happen when running from file://, if the browser does not support workers or if the browser is blocking workers for other reasons."), console.debug(G), e += 10) : (console.error("Failed to create MeshBVH worker. Please see below for more details:"), console.log(G)), e++;
|
|
6604
6468
|
}
|
|
@@ -6635,7 +6499,7 @@ var Ud;
|
|
|
6635
6499
|
if (j) {
|
|
6636
6500
|
const B = b;
|
|
6637
6501
|
if (c.copy(w.matrixWorld).invert(), B.applyMatrix4(c), j.intersectsSphere(B)) {
|
|
6638
|
-
const X = te(w), O = X.distanceTo(B.center), W = new
|
|
6502
|
+
const X = te(w), O = X.distanceTo(B.center), W = new d0(w, O, X);
|
|
6639
6503
|
T.push(W);
|
|
6640
6504
|
}
|
|
6641
6505
|
}
|
|
@@ -6664,8 +6528,8 @@ var Ud;
|
|
|
6664
6528
|
d = !1;
|
|
6665
6529
|
});
|
|
6666
6530
|
}
|
|
6667
|
-
})(
|
|
6668
|
-
const R_ = /* @__PURE__ */ Symbol("gltf-loader-internal-usage-tracker"),
|
|
6531
|
+
})(Fd || (Fd = {}));
|
|
6532
|
+
const R_ = /* @__PURE__ */ Symbol("gltf-loader-internal-usage-tracker"), ck = x("debugusers");
|
|
6669
6533
|
class Oa {
|
|
6670
6534
|
get name() {
|
|
6671
6535
|
return "NEEDLE_internal_usage_tracker";
|
|
@@ -6693,7 +6557,7 @@ class Oa {
|
|
|
6693
6557
|
Oa._loadingProcesses--, this.parser.getDependency = this._getDependency;
|
|
6694
6558
|
for (const t of this._loadedObjects)
|
|
6695
6559
|
delete t[R_], t instanceof M && (t.parent || t instanceof H && setTimeout(() => {
|
|
6696
|
-
|
|
6560
|
+
ck && console.warn("> GLTF LOADER: Mesh not used in scene!", t), t.material = null, t.geometry = null;
|
|
6697
6561
|
}, 1e3));
|
|
6698
6562
|
return null;
|
|
6699
6563
|
}
|
|
@@ -6710,7 +6574,7 @@ class Oa {
|
|
|
6710
6574
|
// // return process;
|
|
6711
6575
|
// }
|
|
6712
6576
|
}
|
|
6713
|
-
class
|
|
6577
|
+
class hk {
|
|
6714
6578
|
constructor() {
|
|
6715
6579
|
window.addEventListener("unhandledrejection", (e) => {
|
|
6716
6580
|
if (e.defaultPrevented) return;
|
|
@@ -6724,32 +6588,32 @@ class mk {
|
|
|
6724
6588
|
}
|
|
6725
6589
|
}
|
|
6726
6590
|
const ku = x("trackresources");
|
|
6727
|
-
function
|
|
6591
|
+
function u0() {
|
|
6728
6592
|
return ku === "dispose";
|
|
6729
6593
|
}
|
|
6730
6594
|
let $r = !0;
|
|
6731
6595
|
ku === 0 && ($r = !1);
|
|
6732
|
-
function
|
|
6596
|
+
function jD(s) {
|
|
6733
6597
|
$r = s;
|
|
6734
6598
|
}
|
|
6735
|
-
function
|
|
6599
|
+
function dk() {
|
|
6736
6600
|
return $r;
|
|
6737
6601
|
}
|
|
6738
|
-
const
|
|
6739
|
-
function
|
|
6740
|
-
s && (s[
|
|
6602
|
+
const f0 = /* @__PURE__ */ Symbol("disposable");
|
|
6603
|
+
function uk(s, e) {
|
|
6604
|
+
s && (s[f0] = e, wr && console.warn("Set disposable", e, s));
|
|
6741
6605
|
}
|
|
6742
|
-
const
|
|
6743
|
-
function
|
|
6744
|
-
return s[
|
|
6606
|
+
const p0 = /* @__PURE__ */ Symbol("disposed");
|
|
6607
|
+
function BD(s) {
|
|
6608
|
+
return s[p0] === !0;
|
|
6745
6609
|
}
|
|
6746
6610
|
function Ae(s) {
|
|
6747
6611
|
if (s) {
|
|
6748
|
-
if (s[
|
|
6612
|
+
if (s[f0] === !1) {
|
|
6749
6613
|
wr && console.warn("Object is marked as not disposable", s);
|
|
6750
6614
|
return;
|
|
6751
6615
|
}
|
|
6752
|
-
if (typeof s == "object" && (s[
|
|
6616
|
+
if (typeof s == "object" && (s[p0] = !0), s instanceof Mi)
|
|
6753
6617
|
Ae(s.environment), Ae(s.background), Ae(s.customDepthMaterial), Ae(s.customDistanceMaterial);
|
|
6754
6618
|
else if (s instanceof yo)
|
|
6755
6619
|
Ae(s.geometry), Ae(s.material), Ae(s.skeleton), Ae(s.bindMatrix), Ae(s.bindMatrixInverse), Ae(s.customDepthMaterial), Ae(s.customDistanceMaterial), s.visible = !1;
|
|
@@ -6784,45 +6648,45 @@ function Ae(s) {
|
|
|
6784
6648
|
}
|
|
6785
6649
|
}
|
|
6786
6650
|
function ea(s) {
|
|
6787
|
-
s && ((wr ||
|
|
6651
|
+
s && ((wr || u0() || ku) && console.warn("🧨 FREE", s), s instanceof ImageBitmap || "dispose" in s && typeof s.dispose == "function" && s.dispose());
|
|
6788
6652
|
}
|
|
6789
|
-
function
|
|
6653
|
+
function FD(s) {
|
|
6790
6654
|
}
|
|
6791
|
-
const
|
|
6792
|
-
function
|
|
6793
|
-
if (i || (i =
|
|
6655
|
+
const fk = /* @__PURE__ */ new Set();
|
|
6656
|
+
function m0(s, e, t = null, i) {
|
|
6657
|
+
if (i || (i = fk, i.clear()), !s) return i;
|
|
6794
6658
|
const n = s[Lc];
|
|
6795
6659
|
if (n)
|
|
6796
6660
|
for (const o of n)
|
|
6797
|
-
i.has(o) || t?.call(null, o) !== !1 && (i.add(o), e &&
|
|
6661
|
+
i.has(o) || t?.call(null, o) !== !1 && (i.add(o), e && m0(o, !0, t, i));
|
|
6798
6662
|
return i;
|
|
6799
6663
|
}
|
|
6800
|
-
function
|
|
6664
|
+
function UD(s) {
|
|
6801
6665
|
return s[Ql];
|
|
6802
6666
|
}
|
|
6803
6667
|
const wr = x("debugresourceusers") || x("debugmemory"), Lc = /* @__PURE__ */ Symbol("needle-resource-users"), Ql = /* @__PURE__ */ Symbol("needle-resource-users-count");
|
|
6804
6668
|
function Ht(s, e) {
|
|
6805
|
-
|
|
6806
|
-
$r && !Ic.raycasting && (
|
|
6669
|
+
hg(s, e, function(t, i) {
|
|
6670
|
+
$r && !Ic.raycasting && (Ud(Lc, this, t, !1), Ud(Lc, this, i, !0));
|
|
6807
6671
|
});
|
|
6808
6672
|
}
|
|
6809
6673
|
$r && (Ht(H.prototype, "material"), Ht(H.prototype, "geometry"), Ht(be.prototype, "map"), Ht(be.prototype, "bumpMap"), Ht(be.prototype, "alphaMap"), Ht(be.prototype, "normalMap"), Ht(be.prototype, "displacementMap"), Ht(be.prototype, "roughnessMap"), Ht(be.prototype, "metalnessMap"), Ht(be.prototype, "emissiveMap"), Ht(be.prototype, "specularMap"), Ht(be.prototype, "envMap"), Ht(be.prototype, "lightMap"), Ht(be.prototype, "aoMap"), Ht(be.prototype, "gradientMap"));
|
|
6810
|
-
function
|
|
6674
|
+
function pk(s) {
|
|
6811
6675
|
if ($r === !1) return;
|
|
6812
6676
|
const e = s[Lc];
|
|
6813
6677
|
if (e)
|
|
6814
6678
|
for (const t of e)
|
|
6815
|
-
|
|
6679
|
+
Ud(Lc, t, s, !1);
|
|
6816
6680
|
}
|
|
6817
|
-
$r &&
|
|
6818
|
-
|
|
6681
|
+
$r && hg(be.prototype, "dispose", function() {
|
|
6682
|
+
pk(this);
|
|
6819
6683
|
});
|
|
6820
6684
|
let em = 0;
|
|
6821
|
-
function
|
|
6685
|
+
function Ud(s, e, t, i) {
|
|
6822
6686
|
if (em > 0) return;
|
|
6823
6687
|
if (Array.isArray(t)) {
|
|
6824
6688
|
for (const o of t)
|
|
6825
|
-
|
|
6689
|
+
Ud(s, e, o, i);
|
|
6826
6690
|
return;
|
|
6827
6691
|
}
|
|
6828
6692
|
if (!t) return;
|
|
@@ -6836,12 +6700,12 @@ function zd(s, e, t, i) {
|
|
|
6836
6700
|
} else if (e && n.has(e)) {
|
|
6837
6701
|
n.delete(e);
|
|
6838
6702
|
let o = t[Ql] || 0;
|
|
6839
|
-
o > 0 && (o -= 1, t[Ql] = o), wr && console.warn(`🔴 Removed user of "${t.type}"`, e, t, o, "users:", n), o <= 0 && (Oa.isLoading(t) || (ku && console.warn(`🔴 Removed all user of "${t.type}"`, t),
|
|
6703
|
+
o > 0 && (o -= 1, t[Ql] = o), wr && console.warn(`🔴 Removed user of "${t.type}"`, e, t, o, "users:", n), o <= 0 && (Oa.isLoading(t) || (ku && console.warn(`🔴 Removed all user of "${t.type}"`, t), u0() && Ae(t)));
|
|
6840
6704
|
}
|
|
6841
6705
|
t[s] = n;
|
|
6842
6706
|
}
|
|
6843
6707
|
try {
|
|
6844
|
-
|
|
6708
|
+
hg(
|
|
6845
6709
|
Fr.prototype,
|
|
6846
6710
|
"render",
|
|
6847
6711
|
function() {
|
|
@@ -6855,7 +6719,7 @@ try {
|
|
|
6855
6719
|
console.warn("Could not wrap WebGLRenderer.render", s);
|
|
6856
6720
|
}
|
|
6857
6721
|
const T_ = x("debugcomponentevents");
|
|
6858
|
-
class
|
|
6722
|
+
class yg {
|
|
6859
6723
|
static eventListeners = /* @__PURE__ */ new Map();
|
|
6860
6724
|
static addComponentLifecylceEventListener(e, t) {
|
|
6861
6725
|
this.eventListeners.has(e) && this.eventListeners.set(e, []);
|
|
@@ -6875,17 +6739,17 @@ class _g {
|
|
|
6875
6739
|
n(t);
|
|
6876
6740
|
}
|
|
6877
6741
|
}
|
|
6878
|
-
const Dc = /* @__PURE__ */ Symbol("NEEDLE_NEED_UPDATE_INSTANCE"),
|
|
6742
|
+
const Dc = /* @__PURE__ */ Symbol("NEEDLE_NEED_UPDATE_INSTANCE"), g0 = /* @__PURE__ */ Symbol("isUsingInstancing"), y0 = /* @__PURE__ */ Symbol("instancingRenderer"), Yl = /* @__PURE__ */ Symbol("instancingAutoUpdateBounds");
|
|
6879
6743
|
class _n {
|
|
6880
6744
|
/** Is this object rendered using a InstancedMesh */
|
|
6881
6745
|
static isUsingInstancing(e) {
|
|
6882
|
-
return e[
|
|
6746
|
+
return e[g0] === !0;
|
|
6883
6747
|
}
|
|
6884
6748
|
/** Returns the instanced mesh IF the object is rendered by an instanced mesh
|
|
6885
6749
|
* @link https://threejs.org/docs/#api/en/objects/InstancedMesh
|
|
6886
6750
|
*/
|
|
6887
6751
|
static getRenderer(e) {
|
|
6888
|
-
return e[
|
|
6752
|
+
return e[y0] || null;
|
|
6889
6753
|
}
|
|
6890
6754
|
setAutoUpdateBounds(e, t) {
|
|
6891
6755
|
const i = _n.getRenderer(e);
|
|
@@ -6899,10 +6763,10 @@ class _n {
|
|
|
6899
6763
|
_n.markDirty(i, !0);
|
|
6900
6764
|
}
|
|
6901
6765
|
}
|
|
6902
|
-
var
|
|
6766
|
+
var zd;
|
|
6903
6767
|
((s) => {
|
|
6904
6768
|
s.experimentalSmartHierarchyUpdate = !1;
|
|
6905
|
-
})(
|
|
6769
|
+
})(zd || (zd = {}));
|
|
6906
6770
|
function Ma(s, e) {
|
|
6907
6771
|
try {
|
|
6908
6772
|
e || s();
|
|
@@ -6911,11 +6775,11 @@ function Ma(s, e) {
|
|
|
6911
6775
|
}
|
|
6912
6776
|
return !0;
|
|
6913
6777
|
}
|
|
6914
|
-
const tm = x("debugnewscripts"),
|
|
6915
|
-
function
|
|
6778
|
+
const tm = x("debugnewscripts"), mk = x("debughierarchy"), Re = [];
|
|
6779
|
+
function gk() {
|
|
6916
6780
|
return Re.length > 0;
|
|
6917
6781
|
}
|
|
6918
|
-
function
|
|
6782
|
+
function Nd(s) {
|
|
6919
6783
|
if (tm && console.log("Register new components", s.new_scripts.length, [...s.new_scripts], s.alias ? "element: " + s.alias : s.hash, s), s.new_scripts_pre_setup_callbacks.length > 0) {
|
|
6920
6784
|
for (const e of s.new_scripts_pre_setup_callbacks)
|
|
6921
6785
|
e && e();
|
|
@@ -6938,7 +6802,7 @@ The script will be ignored. Please make sure your component extends "Behaviour"
|
|
|
6938
6802
|
Did you add and remove a component in the same frame?`), Re.splice(e, 1), e--;
|
|
6939
6803
|
continue;
|
|
6940
6804
|
}
|
|
6941
|
-
t.context = s, fc(t.gameObject),
|
|
6805
|
+
t.context = s, fc(t.gameObject), _g(t, s);
|
|
6942
6806
|
} catch (t) {
|
|
6943
6807
|
console.error(t), gs(Re[e], s), Re.splice(e, 1), e--;
|
|
6944
6808
|
}
|
|
@@ -6981,10 +6845,10 @@ Did you add and remove a component in the same frame?`), Re.splice(e, 1), e--;
|
|
|
6981
6845
|
s.new_scripts_post_setup_callbacks.length = 0;
|
|
6982
6846
|
}
|
|
6983
6847
|
}
|
|
6984
|
-
function
|
|
6848
|
+
function yk(s) {
|
|
6985
6849
|
s && (s.__internalDisable(!0), gs(s, s.context));
|
|
6986
6850
|
}
|
|
6987
|
-
function
|
|
6851
|
+
function _0(s, e) {
|
|
6988
6852
|
for (let t = 0; t < s.new_script_start.length; t++)
|
|
6989
6853
|
try {
|
|
6990
6854
|
const i = s.new_script_start[t];
|
|
@@ -6995,8 +6859,8 @@ function b0(s, e) {
|
|
|
6995
6859
|
console.error(i), gs(s.new_script_start[t], s), s.new_script_start.splice(t, 1), t--;
|
|
6996
6860
|
}
|
|
6997
6861
|
}
|
|
6998
|
-
function
|
|
6999
|
-
e.scripts.indexOf(s) === -1 && (e.scripts.push(s), s.earlyUpdate && e.scripts_earlyUpdate.push(s), s.update && e.scripts_update.push(s), s.lateUpdate && e.scripts_lateUpdate.push(s), s.onBeforeRender && e.scripts_onBeforeRender.push(s), s.onAfterRender && e.scripts_onAfterRender.push(s), s.onPausedChanged && e.scripts_pausedChanged.push(s),
|
|
6862
|
+
function _g(s, e) {
|
|
6863
|
+
e.scripts.indexOf(s) === -1 && (e.scripts.push(s), s.earlyUpdate && e.scripts_earlyUpdate.push(s), s.update && e.scripts_update.push(s), s.lateUpdate && e.scripts_lateUpdate.push(s), s.onBeforeRender && e.scripts_onBeforeRender.push(s), s.onAfterRender && e.scripts_onAfterRender.push(s), s.onPausedChanged && e.scripts_pausedChanged.push(s), Hf(s, null) && e.new_scripts_xr.push(s), Hf(s, "immersive-vr") && e.scripts_immersive_vr.push(s), Hf(s, "immersive-ar") && e.scripts_immersive_ar.push(s));
|
|
7000
6864
|
}
|
|
7001
6865
|
function gs(s, e) {
|
|
7002
6866
|
Ui(s, e.new_scripts), Ui(s, e.new_script_start), Ui(s, e.scripts), Ui(s, e.scripts_earlyUpdate), Ui(s, e.scripts_update), Ui(s, e.scripts_lateUpdate), Ui(s, e.scripts_onBeforeRender), Ui(s, e.scripts_onAfterRender), Ui(s, e.scripts_pausedChanged), Ui(s, e.new_scripts_xr), Ui(s, e.scripts_immersive_vr), Ui(s, e.scripts_immersive_ar), e.stopAllCoroutinesFrom(s);
|
|
@@ -7005,7 +6869,7 @@ function Ui(s, e) {
|
|
|
7005
6869
|
const t = e.indexOf(s);
|
|
7006
6870
|
t >= 0 && e.splice(t, 1);
|
|
7007
6871
|
}
|
|
7008
|
-
function
|
|
6872
|
+
function Hf(s, e) {
|
|
7009
6873
|
if (s) {
|
|
7010
6874
|
const t = s;
|
|
7011
6875
|
if (t.onBeforeXR || t.onEnterXR || t.onUpdateXR || t.onLeaveXR || t.onXRControllerAdded || t.onXRControllerRemoved)
|
|
@@ -7014,11 +6878,11 @@ function Gf(s, e) {
|
|
|
7014
6878
|
return !1;
|
|
7015
6879
|
}
|
|
7016
6880
|
let im = !0;
|
|
7017
|
-
function
|
|
6881
|
+
function Gf() {
|
|
7018
6882
|
im = !0;
|
|
7019
6883
|
}
|
|
7020
6884
|
function hd(s, e = !1) {
|
|
7021
|
-
if (
|
|
6885
|
+
if (zd.experimentalSmartHierarchyUpdate) {
|
|
7022
6886
|
if (!e && !im)
|
|
7023
6887
|
return;
|
|
7024
6888
|
im = !1;
|
|
@@ -7028,10 +6892,10 @@ function hd(s, e = !1) {
|
|
|
7028
6892
|
return;
|
|
7029
6893
|
}
|
|
7030
6894
|
const t = Qc(s);
|
|
7031
|
-
|
|
6895
|
+
b0(s, t, !0) || (tm || L() ? console.error(`Error updating hierarchy
|
|
7032
6896
|
Do you have circular references in your project? <a target="_blank" href="https://docs.needle.tools/circular-reference"> Click here for more information.`, s) : console.error('Failed to update active state in hierarchy of "' + s.name + '"', s), console.warn(" ↑ this error might be caused by circular references. Please make sure you don't have files with circular references (e.g. one GLB 1 is loading GLB 2 which is then loading GLB 1 again)."));
|
|
7033
6897
|
}
|
|
7034
|
-
function
|
|
6898
|
+
function b0(s, e, t, i = 0) {
|
|
7035
6899
|
if (i > 1e3)
|
|
7036
6900
|
return console.warn("Hierarchy is too deep (> 1000 level) - will abort updating active state"), !1;
|
|
7037
6901
|
const n = Qc(s);
|
|
@@ -7040,13 +6904,13 @@ function v0(s, e, t, i = 0) {
|
|
|
7040
6904
|
e = l[bo], e === void 0 && (l instanceof Mi || (e = !0));
|
|
7041
6905
|
}
|
|
7042
6906
|
const r = s[bo] !== e;
|
|
7043
|
-
r && (s[bo] = e,
|
|
6907
|
+
r && (s[bo] = e, mk && console.warn("ACTIVE CHANGE", s.name, n, s.visible, e, "changed?" + r, s), _k(s, (l) => {
|
|
7044
6908
|
e ? l.enabled && (Ma(l.__internalAwake.bind(l)), l.enabled && l.__internalEnable()) : l.__didAwake && l.enabled && (l.__didEnable = !1, l.onDisable());
|
|
7045
6909
|
}));
|
|
7046
6910
|
let a = !0;
|
|
7047
6911
|
if (s.children)
|
|
7048
6912
|
for (const l of s.children)
|
|
7049
|
-
|
|
6913
|
+
b0(l, e, t, i + 1) === !1 && (a = !1);
|
|
7050
6914
|
return a;
|
|
7051
6915
|
}
|
|
7052
6916
|
function fc(s) {
|
|
@@ -7064,18 +6928,18 @@ function fc(s) {
|
|
|
7064
6928
|
}
|
|
7065
6929
|
s[bo] = e && i;
|
|
7066
6930
|
}
|
|
7067
|
-
function
|
|
6931
|
+
function _k(s, e) {
|
|
7068
6932
|
if (s.userData?.components)
|
|
7069
6933
|
for (const t of s.userData.components)
|
|
7070
6934
|
e(t);
|
|
7071
6935
|
}
|
|
7072
|
-
const dd = /* @__PURE__ */ new Map(),
|
|
7073
|
-
function
|
|
7074
|
-
if (!s || s[
|
|
6936
|
+
const dd = /* @__PURE__ */ new Map(), v0 = /* @__PURE__ */ Symbol("prewarmFlag"), nm = /* @__PURE__ */ Symbol("waitingForPrewarm"), sm = x("debugprewarm");
|
|
6937
|
+
function bk(s, e) {
|
|
6938
|
+
if (!s || s[v0] === !0 || s[nm] === !0) return;
|
|
7075
6939
|
dd.has(e) || dd.set(e, []), s[nm] = !0, dd.get(e).push(s), sm && console.debug("register prewarm", s.name);
|
|
7076
6940
|
}
|
|
7077
6941
|
let A_ = null, I_ = null;
|
|
7078
|
-
function
|
|
6942
|
+
function vk(s) {
|
|
7079
6943
|
if (!s) return;
|
|
7080
6944
|
const e = dd.get(s);
|
|
7081
6945
|
if (!e?.length) return;
|
|
@@ -7087,16 +6951,16 @@ function Pk(s) {
|
|
|
7087
6951
|
const n = s.scene;
|
|
7088
6952
|
i.compile(n, t), A_ ??= new dS(64), I_ ??= new uS(1e-3, 9999999, A_), I_.update(i, n);
|
|
7089
6953
|
for (const o of e)
|
|
7090
|
-
o[
|
|
6954
|
+
o[v0] = !0, o[nm] = !1;
|
|
7091
6955
|
e.length = 0, sm && console.log("prewarm done");
|
|
7092
6956
|
}
|
|
7093
6957
|
}
|
|
7094
6958
|
}
|
|
7095
6959
|
pe.registerCallback(ue.ContextCreated, (s) => {
|
|
7096
6960
|
const e = s.context;
|
|
7097
|
-
|
|
6961
|
+
kk(e), Sk(e);
|
|
7098
6962
|
});
|
|
7099
|
-
const
|
|
6963
|
+
const $d = x("debugcomponents"), L_ = "eff8ba80-635d-11ec-90d6-0242ac120003";
|
|
7100
6964
|
class Ut {
|
|
7101
6965
|
get seed() {
|
|
7102
6966
|
return this._seed;
|
|
@@ -7131,8 +6995,8 @@ class Ut {
|
|
|
7131
6995
|
return t;
|
|
7132
6996
|
}
|
|
7133
6997
|
}
|
|
7134
|
-
var
|
|
7135
|
-
class
|
|
6998
|
+
var wk = /* @__PURE__ */ ((s) => (s.NewInstanceCreated = "new-instance-created", s.InstanceDestroyed = "instance-destroyed", s))(wk || {});
|
|
6999
|
+
class xk {
|
|
7136
7000
|
guid;
|
|
7137
7001
|
dontSave;
|
|
7138
7002
|
constructor(e) {
|
|
@@ -7155,20 +7019,20 @@ function Ou(s, e, t = !0, i) {
|
|
|
7155
7019
|
console.warn("Can not send destroy: failed to find guid", s);
|
|
7156
7020
|
return;
|
|
7157
7021
|
}
|
|
7158
|
-
|
|
7022
|
+
w0(o, e, i);
|
|
7159
7023
|
}
|
|
7160
|
-
function
|
|
7161
|
-
const i = new
|
|
7024
|
+
function w0(s, e, t) {
|
|
7025
|
+
const i = new xk(s);
|
|
7162
7026
|
t?.saveInRoom === !1 && (i.dontSave = !0), e.send("instance-destroyed", i, Bn.Queued);
|
|
7163
7027
|
}
|
|
7164
|
-
function
|
|
7028
|
+
function Sk(s) {
|
|
7165
7029
|
s.connection.beginListen("instance-destroyed", (e) => {
|
|
7166
|
-
|
|
7167
|
-
const t =
|
|
7030
|
+
$d && console.log("[Remote] Destroyed", s.scene, e);
|
|
7031
|
+
const t = L0(e.guid, s.scene);
|
|
7168
7032
|
t && Ki(t);
|
|
7169
7033
|
});
|
|
7170
7034
|
}
|
|
7171
|
-
class
|
|
7035
|
+
class zD {
|
|
7172
7036
|
/** File to download */
|
|
7173
7037
|
filename;
|
|
7174
7038
|
/** Checksum to verify its the correct file */
|
|
@@ -7179,7 +7043,7 @@ class ND {
|
|
|
7179
7043
|
this.filename = e, this.hash = t, this.size = i;
|
|
7180
7044
|
}
|
|
7181
7045
|
}
|
|
7182
|
-
class
|
|
7046
|
+
class Ck {
|
|
7183
7047
|
guid;
|
|
7184
7048
|
originalGuid;
|
|
7185
7049
|
seed;
|
|
@@ -7200,30 +7064,30 @@ class Ek {
|
|
|
7200
7064
|
this.originalGuid = e, this.guid = t;
|
|
7201
7065
|
}
|
|
7202
7066
|
}
|
|
7203
|
-
function
|
|
7067
|
+
function x0(s, e, t, i) {
|
|
7204
7068
|
const n = s;
|
|
7205
7069
|
if (!n.guid)
|
|
7206
7070
|
return console.warn("Can not instantiate: No guid", n), null;
|
|
7207
7071
|
if (e.context || (e.context = N.Current), !e.context)
|
|
7208
7072
|
return console.error("Missing network instantiate options / reference to network connection in sync instantiate"), null;
|
|
7209
|
-
const o = e ? { ...e } : null, { instance: r, seed: a } =
|
|
7073
|
+
const o = e ? { ...e } : null, { instance: r, seed: a } = Ok(n, e);
|
|
7210
7074
|
if (r) {
|
|
7211
7075
|
const l = r;
|
|
7212
7076
|
if (l.guid) {
|
|
7213
|
-
|
|
7214
|
-
const c = new
|
|
7077
|
+
$d && console.log("[Local] new instance", "gameobject:", r?.guid);
|
|
7078
|
+
const c = new Ck(n.guid, l.guid);
|
|
7215
7079
|
c.seed = a, e.deleteOnDisconnect === !0 && (c.deleteStateOnDisconnect = !0), o && (o.position && (Array.isArray(o.position) ? c.position = { x: o.position[0], y: o.position[1], z: o.position[2] } : c.position = { x: o.position.x, y: o.position.y, z: o.position.z }), o.rotation && (o.rotation instanceof ct ? o.rotation = new V().setFromEuler(o.rotation) : o.rotation instanceof Array && (o.rotation = new V().fromArray(o.rotation)), c.rotation = { x: o.rotation.x, y: o.rotation.y, z: o.rotation.z, w: o.rotation.w }), o.scale && (Array.isArray(o.scale) ? c.scale = { x: o.scale[0], y: o.scale[1], z: o.scale[2] } : c.scale = { x: o.scale.x, y: o.scale.y, z: o.scale.z })), c.position || (c.position = { x: l.position.x, y: l.position.y, z: l.position.z }), c.rotation || (c.rotation = { x: l.quaternion.x, y: l.quaternion.y, z: l.quaternion.z, w: l.quaternion.w }), c.scale || (c.scale = { x: l.scale.x, y: l.scale.y, z: l.scale.z }), c.visible = n.visible, o?.parent && (typeof o.parent == "string" ? c.parent = o.parent : c.parent = o.parent.guid), c.hostData = t, i === !1 && (c.dontSave = !0), !e?.context?.connection && L() && console.debug("Object will be instantiated but it will not be synced: not connected", n.guid), e.context.connection.isInRoom && ua.push(new WeakRef(l)), e?.context?.connection.send("new-instance-created", c);
|
|
7216
7080
|
} else console.warn("Missing guid, can not send new instance event", l);
|
|
7217
7081
|
}
|
|
7218
7082
|
return r;
|
|
7219
7083
|
}
|
|
7220
|
-
function
|
|
7084
|
+
function Pk() {
|
|
7221
7085
|
return Math.random() * 9999999;
|
|
7222
7086
|
}
|
|
7223
7087
|
const ua = new Array();
|
|
7224
|
-
function
|
|
7088
|
+
function kk(s) {
|
|
7225
7089
|
s.connection.beginListen("new-instance-created", async (e) => {
|
|
7226
|
-
const t = await
|
|
7090
|
+
const t = await Ek(e.originalGuid, s.scene);
|
|
7227
7091
|
if (e.preventCreation === !0)
|
|
7228
7092
|
return;
|
|
7229
7093
|
if (!t) {
|
|
@@ -7231,9 +7095,9 @@ function Tk(s) {
|
|
|
7231
7095
|
return;
|
|
7232
7096
|
}
|
|
7233
7097
|
const i = new es();
|
|
7234
|
-
e.position && (i.position = new _(e.position.x, e.position.y, e.position.z)), e.rotation && (i.rotation = new V(e.rotation.x, e.rotation.y, e.rotation.z, e.rotation.w)), e.scale && (i.scale = new _(e.scale.x, e.scale.y, e.scale.z)), i.parent = e.parent, e.seed && (i.idProvider = new Ut(e.seed)), i.visible = e.visible, i.context = s,
|
|
7098
|
+
e.position && (i.position = new _(e.position.x, e.position.y, e.position.z)), e.rotation && (i.rotation = new V(e.rotation.x, e.rotation.y, e.rotation.z, e.rotation.w)), e.scale && (i.scale = new _(e.scale.x, e.scale.y, e.scale.z)), i.parent = e.parent, e.seed && (i.idProvider = new Ut(e.seed)), i.visible = e.visible, i.context = s, $d && s.alias && console.log("[Remote] instantiate in: " + s.alias);
|
|
7235
7099
|
const n = Rr(t, i);
|
|
7236
|
-
ua.push(new WeakRef(n)), n && (e.parent === "scene" && s.scene.add(n),
|
|
7100
|
+
ua.push(new WeakRef(n)), n && (e.parent === "scene" && s.scene.add(n), $d && console.log("[Remote] new instance", "gameobject:", n?.guid, t));
|
|
7237
7101
|
}), s.connection.beginListen("left-room", () => {
|
|
7238
7102
|
ua.length > 0 && console.debug(`Left networking room, cleaning up ${ua.length} instantiated objects`);
|
|
7239
7103
|
for (const e of ua) {
|
|
@@ -7243,50 +7107,50 @@ function Tk(s) {
|
|
|
7243
7107
|
ua.length = 0;
|
|
7244
7108
|
});
|
|
7245
7109
|
}
|
|
7246
|
-
function
|
|
7247
|
-
const t =
|
|
7110
|
+
function Ok(s, e) {
|
|
7111
|
+
const t = Pk(), i = e ?? new es();
|
|
7248
7112
|
i.idProvider = new Ut(t);
|
|
7249
7113
|
const n = Rr(s, i);
|
|
7250
7114
|
return { seed: t, instance: n };
|
|
7251
7115
|
}
|
|
7252
|
-
const
|
|
7253
|
-
function
|
|
7254
|
-
|
|
7116
|
+
const S0 = {};
|
|
7117
|
+
function Mk(s, e) {
|
|
7118
|
+
S0[s] = e;
|
|
7255
7119
|
}
|
|
7256
|
-
async function
|
|
7257
|
-
const t =
|
|
7120
|
+
async function Ek(s, e) {
|
|
7121
|
+
const t = S0[s];
|
|
7258
7122
|
if (t != null) {
|
|
7259
7123
|
const i = await t(s);
|
|
7260
7124
|
if (i) return i;
|
|
7261
7125
|
}
|
|
7262
|
-
return
|
|
7126
|
+
return C0(s, e);
|
|
7263
7127
|
}
|
|
7264
|
-
function
|
|
7128
|
+
function C0(s, e) {
|
|
7265
7129
|
if (e === null || !s) return null;
|
|
7266
7130
|
if (e.guid === s)
|
|
7267
7131
|
return e;
|
|
7268
7132
|
if (e.children)
|
|
7269
7133
|
for (const t of e.children) {
|
|
7270
|
-
const i =
|
|
7134
|
+
const i = C0(s, t);
|
|
7271
7135
|
if (i)
|
|
7272
7136
|
return i;
|
|
7273
7137
|
}
|
|
7274
7138
|
return null;
|
|
7275
7139
|
}
|
|
7276
|
-
const Gc = x("gizmos"), gt = x("debugextension"),
|
|
7277
|
-
class
|
|
7140
|
+
const Gc = x("gizmos"), gt = x("debugextension"), qf = x("debugtypes");
|
|
7141
|
+
class Rk {
|
|
7278
7142
|
_types = /* @__PURE__ */ new Map();
|
|
7279
7143
|
_reverseTypes = /* @__PURE__ */ new Map();
|
|
7280
7144
|
constructor() {
|
|
7281
|
-
|
|
7145
|
+
qf && console.warn("TypeStore: Created", this);
|
|
7282
7146
|
}
|
|
7283
7147
|
/**
|
|
7284
7148
|
* add a type to the store
|
|
7285
7149
|
*/
|
|
7286
7150
|
add(e, t) {
|
|
7287
|
-
|
|
7151
|
+
qf && console.warn("ADD TYPE", e);
|
|
7288
7152
|
const i = this._types.get(e);
|
|
7289
|
-
i ?
|
|
7153
|
+
i ? qf && i !== t && console.warn("Type name exists multiple times in your project and may lead to runtime errors:", e) : (this._types.set(e, t), this._reverseTypes.set(t, e));
|
|
7290
7154
|
}
|
|
7291
7155
|
/**
|
|
7292
7156
|
* @returns the type for the given key if registered
|
|
@@ -7301,9 +7165,9 @@ class Dk {
|
|
|
7301
7165
|
return this._reverseTypes.get(e) || null;
|
|
7302
7166
|
}
|
|
7303
7167
|
}
|
|
7304
|
-
const
|
|
7168
|
+
const Tk = /* @__PURE__ */ Symbol("BuiltInType"), P = new Rk(), P0 = function(s) {
|
|
7305
7169
|
P.get(s.name) || P.add(s.name, s);
|
|
7306
|
-
},
|
|
7170
|
+
}, bg = x("debugresolvedependencies"), Ak = ["/extensions/", "extensions/"], Ik = [
|
|
7307
7171
|
{ prefix: "/nodes/", dependencyName: "node" },
|
|
7308
7172
|
{ prefix: "/meshes/", dependencyName: "mesh" },
|
|
7309
7173
|
{ prefix: "/materials/", dependencyName: "material" },
|
|
@@ -7316,17 +7180,17 @@ const jk = /* @__PURE__ */ Symbol("BuiltInType"), P = new Dk(), k0 = function(s)
|
|
|
7316
7180
|
{ prefix: "textures/", dependencyName: "texture" },
|
|
7317
7181
|
{ prefix: "animations/", dependencyName: "animation" }
|
|
7318
7182
|
];
|
|
7319
|
-
async function
|
|
7320
|
-
|
|
7183
|
+
async function vg(s, e) {
|
|
7184
|
+
bg && console.log(s, e);
|
|
7321
7185
|
const t = [];
|
|
7322
|
-
om(
|
|
7186
|
+
om(Ik, s, e, t);
|
|
7323
7187
|
const i = await Promise.all(t);
|
|
7324
7188
|
return typeof e == "string" && i.length === 1 ? i[0] : i;
|
|
7325
7189
|
}
|
|
7326
|
-
function
|
|
7190
|
+
function Lk(s, e) {
|
|
7327
7191
|
return !s || !e ? !1 : s["needle:identifier"] != null && e["needle:identifier"] != null ? s["needle:identifier"] === e["needle:identifier"] : !1;
|
|
7328
7192
|
}
|
|
7329
|
-
function
|
|
7193
|
+
function Dk(s, e) {
|
|
7330
7194
|
s["needle:identifier"] = e;
|
|
7331
7195
|
}
|
|
7332
7196
|
function om(s, e, t, i) {
|
|
@@ -7352,9 +7216,9 @@ function om(s, e, t, i) {
|
|
|
7352
7216
|
continue;
|
|
7353
7217
|
}
|
|
7354
7218
|
for (const c of s) {
|
|
7355
|
-
const h =
|
|
7219
|
+
const h = k0(c.prefix, a);
|
|
7356
7220
|
if (h >= 0) {
|
|
7357
|
-
|
|
7221
|
+
bg && console.log(c, h, c.dependencyName), i.push(e.getDependency(c.dependencyName, h).then((d) => o[r] = d));
|
|
7358
7222
|
break;
|
|
7359
7223
|
}
|
|
7360
7224
|
}
|
|
@@ -7369,7 +7233,7 @@ function om(s, e, t, i) {
|
|
|
7369
7233
|
}
|
|
7370
7234
|
function D_(s, e) {
|
|
7371
7235
|
if (s && s.plugins && typeof e == "string") {
|
|
7372
|
-
for (const t of
|
|
7236
|
+
for (const t of Ak)
|
|
7373
7237
|
if (e.startsWith(t)) {
|
|
7374
7238
|
let i = e.substring(t.length);
|
|
7375
7239
|
const n = i.indexOf("/");
|
|
@@ -7386,13 +7250,13 @@ function D_(s, e) {
|
|
|
7386
7250
|
}
|
|
7387
7251
|
function j_(s, e, t) {
|
|
7388
7252
|
for (const i of s) {
|
|
7389
|
-
const n =
|
|
7253
|
+
const n = k0(i.prefix, t);
|
|
7390
7254
|
if (n >= 0)
|
|
7391
|
-
return
|
|
7255
|
+
return bg && console.warn("GET DEPENDENCY", i, n, i.dependencyName), e.getDependency(i.dependencyName, n);
|
|
7392
7256
|
}
|
|
7393
7257
|
return null;
|
|
7394
7258
|
}
|
|
7395
|
-
function
|
|
7259
|
+
function k0(s, e) {
|
|
7396
7260
|
if (typeof e == "string" && e.startsWith(s)) {
|
|
7397
7261
|
const t = e.substring(s.length), i = Number.parseInt(t);
|
|
7398
7262
|
if (i >= 0)
|
|
@@ -7400,13 +7264,13 @@ function O0(s, e) {
|
|
|
7400
7264
|
}
|
|
7401
7265
|
return -1;
|
|
7402
7266
|
}
|
|
7403
|
-
const
|
|
7404
|
-
function
|
|
7267
|
+
const Xf = "NEEDLE_persistent_assets";
|
|
7268
|
+
function jk(s) {
|
|
7405
7269
|
return s?.___persistentAsset === !0;
|
|
7406
7270
|
}
|
|
7407
|
-
class
|
|
7271
|
+
class Bk {
|
|
7408
7272
|
get name() {
|
|
7409
|
-
return
|
|
7273
|
+
return Xf;
|
|
7410
7274
|
}
|
|
7411
7275
|
parser;
|
|
7412
7276
|
constructor(e) {
|
|
@@ -7414,12 +7278,12 @@ class $k {
|
|
|
7414
7278
|
}
|
|
7415
7279
|
async afterRoot(e) {
|
|
7416
7280
|
if (!this.parser?.json?.extensions) return;
|
|
7417
|
-
const t = this.parser.json.extensions[
|
|
7281
|
+
const t = this.parser.json.extensions[Xf];
|
|
7418
7282
|
if (!t) return;
|
|
7419
7283
|
gt && console.log(t);
|
|
7420
7284
|
const i = new Array();
|
|
7421
7285
|
for (const n of t?.assets) {
|
|
7422
|
-
const o =
|
|
7286
|
+
const o = vg(this.parser, n);
|
|
7423
7287
|
o && i.push(o);
|
|
7424
7288
|
}
|
|
7425
7289
|
await Promise.all(i);
|
|
@@ -7428,7 +7292,7 @@ class $k {
|
|
|
7428
7292
|
const i = Number.parseInt(t);
|
|
7429
7293
|
if (i >= 0) {
|
|
7430
7294
|
gt && console.log(t);
|
|
7431
|
-
const n = e.json.extensions[
|
|
7295
|
+
const n = e.json.extensions[Xf];
|
|
7432
7296
|
if (n) {
|
|
7433
7297
|
const o = n?.assets[i];
|
|
7434
7298
|
if (o && typeof o == "object") {
|
|
@@ -7443,7 +7307,7 @@ class $k {
|
|
|
7443
7307
|
}
|
|
7444
7308
|
}
|
|
7445
7309
|
const Fn = x("debugserializer");
|
|
7446
|
-
class
|
|
7310
|
+
class Fk {
|
|
7447
7311
|
register(e, t) {
|
|
7448
7312
|
if (this.typeMap.has(e)) {
|
|
7449
7313
|
const i = this.typeMap.get(e);
|
|
@@ -7479,7 +7343,7 @@ class Wk {
|
|
|
7479
7343
|
Fn && console.warn("No serializer found for " + i, e, e.name, e.constructor.name);
|
|
7480
7344
|
}
|
|
7481
7345
|
}
|
|
7482
|
-
const
|
|
7346
|
+
const Wd = new Fk();
|
|
7483
7347
|
class nn {
|
|
7484
7348
|
name;
|
|
7485
7349
|
// register<T>(c: Constructor<T> | Constructor<T>[])
|
|
@@ -7496,12 +7360,12 @@ class nn {
|
|
|
7496
7360
|
constructor(e, t) {
|
|
7497
7361
|
if (this.name = t, Array.isArray(e))
|
|
7498
7362
|
for (const i of e)
|
|
7499
|
-
|
|
7363
|
+
Wd.register(i, this);
|
|
7500
7364
|
else
|
|
7501
|
-
|
|
7365
|
+
Wd.register(e, this);
|
|
7502
7366
|
}
|
|
7503
7367
|
}
|
|
7504
|
-
class
|
|
7368
|
+
class Uk {
|
|
7505
7369
|
isDevMode = Qi();
|
|
7506
7370
|
cache = {};
|
|
7507
7371
|
/** only call when assigning values for the very first time */
|
|
@@ -7516,7 +7380,7 @@ class Vk {
|
|
|
7516
7380
|
return this.cache[e] === void 0 ? !1 : this.cache[e].includes(t);
|
|
7517
7381
|
}
|
|
7518
7382
|
}
|
|
7519
|
-
class
|
|
7383
|
+
class O0 {
|
|
7520
7384
|
root;
|
|
7521
7385
|
gltf;
|
|
7522
7386
|
/** the url of the glb that is currently being loaded */
|
|
@@ -7537,14 +7401,14 @@ class M0 {
|
|
|
7537
7401
|
this.root = e;
|
|
7538
7402
|
}
|
|
7539
7403
|
}
|
|
7540
|
-
function
|
|
7404
|
+
function zk(s, e) {
|
|
7541
7405
|
const t = s.$serializedTypes;
|
|
7542
7406
|
if (t === void 0) return null;
|
|
7543
7407
|
const i = {};
|
|
7544
7408
|
for (const o in t) {
|
|
7545
7409
|
const r = s[o];
|
|
7546
7410
|
if (r != null && typeof r == "object") {
|
|
7547
|
-
const a =
|
|
7411
|
+
const a = Wd.getSerializerForConstructor(r);
|
|
7548
7412
|
if (a) {
|
|
7549
7413
|
i[o] = a.onSerialize(r, e);
|
|
7550
7414
|
continue;
|
|
@@ -7562,11 +7426,11 @@ function Hk(s, e) {
|
|
|
7562
7426
|
return i.name = n(s), typeof s.guid == "string" && (i.guid = s.guid), i;
|
|
7563
7427
|
}
|
|
7564
7428
|
const ud = [];
|
|
7565
|
-
function
|
|
7429
|
+
function M0(s, e) {
|
|
7566
7430
|
if (!s) return e;
|
|
7567
7431
|
typeof s.$serializedTypes == "object" && (e || (e = {}), Object.assign(e, s.$serializedTypes));
|
|
7568
7432
|
const t = Object.getPrototypeOf(s);
|
|
7569
|
-
return
|
|
7433
|
+
return M0(t, e);
|
|
7570
7434
|
}
|
|
7571
7435
|
function rm(s, e, t) {
|
|
7572
7436
|
if (!s) return !1;
|
|
@@ -7574,7 +7438,7 @@ function rm(s, e, t) {
|
|
|
7574
7438
|
const n = s.onBeforeDeserialize(e, t);
|
|
7575
7439
|
if (typeof n == "boolean") return n;
|
|
7576
7440
|
}
|
|
7577
|
-
const i =
|
|
7441
|
+
const i = M0(s);
|
|
7578
7442
|
if (e) {
|
|
7579
7443
|
if (typeof e.guid == "string" && (s.guid = e.guid), i)
|
|
7580
7444
|
for (const n in i) {
|
|
@@ -7602,13 +7466,13 @@ function rm(s, e, t) {
|
|
|
7602
7466
|
s.onAfterDeserializeMember !== void 0 && s.onAfterDeserializeMember(n, a, t);
|
|
7603
7467
|
}
|
|
7604
7468
|
}
|
|
7605
|
-
|
|
7469
|
+
Wk(s, e);
|
|
7606
7470
|
}
|
|
7607
|
-
return
|
|
7471
|
+
return $k(s, e, t.implementationInformation), s.onAfterDeserialize !== void 0 && s.onAfterDeserialize(e, t), !0;
|
|
7608
7472
|
}
|
|
7609
|
-
const
|
|
7610
|
-
function
|
|
7611
|
-
if (
|
|
7473
|
+
const Nk = x("noerrors");
|
|
7474
|
+
function $k(s, e, t) {
|
|
7475
|
+
if (Nk || !e || !Qi() || !s || s.constructor && s.constructor[Tk] === !0) return;
|
|
7612
7476
|
const i = s.constructor?.name, n = Object.getOwnPropertyNames(e);
|
|
7613
7477
|
for (const o of n) {
|
|
7614
7478
|
if (o === "sourceId") continue;
|
|
@@ -7660,7 +7524,7 @@ in script ${i}.ts
|
|
|
7660
7524
|
}
|
|
7661
7525
|
}
|
|
7662
7526
|
}
|
|
7663
|
-
function
|
|
7527
|
+
function Wk(s, e) {
|
|
7664
7528
|
for (const t of Object.keys(e)) {
|
|
7665
7529
|
const i = e[t];
|
|
7666
7530
|
if (typeof i == "object" && i !== null && i !== void 0) {
|
|
@@ -7671,7 +7535,7 @@ function Xk(s, e) {
|
|
|
7671
7535
|
}
|
|
7672
7536
|
for (const o of Object.keys(i))
|
|
7673
7537
|
if (n[o] === void 0 && B_(i[o]) && !B_(n)) {
|
|
7674
|
-
const a =
|
|
7538
|
+
const a = Vk(n, o);
|
|
7675
7539
|
if (a && (a?.writable === void 0 || a?.writable === !1) && a.set === void 0) {
|
|
7676
7540
|
Fn && console.warn('Property is not writable "' + o + '"', n, a, i[o], n[o]);
|
|
7677
7541
|
continue;
|
|
@@ -7681,7 +7545,7 @@ function Xk(s, e) {
|
|
|
7681
7545
|
}
|
|
7682
7546
|
}
|
|
7683
7547
|
}
|
|
7684
|
-
function
|
|
7548
|
+
function Vk(s, e) {
|
|
7685
7549
|
for (; s; ) {
|
|
7686
7550
|
const t = Object.getOwnPropertyDescriptor(s, e);
|
|
7687
7551
|
if (t) return t;
|
|
@@ -7708,8 +7572,8 @@ function am(s, e, t, i, n) {
|
|
|
7708
7572
|
if (t.type = r, !o && n && (n instanceof be || n instanceof H || n instanceof yn || n instanceof Oi))
|
|
7709
7573
|
return n;
|
|
7710
7574
|
if (i || (i = {
|
|
7711
|
-
serializer:
|
|
7712
|
-
}), n && typeof n == "object" &&
|
|
7575
|
+
serializer: Wd.getSerializerForConstructor(r)
|
|
7576
|
+
}), n && typeof n == "object" && jk(n)) {
|
|
7713
7577
|
if (n.__concreteInstance)
|
|
7714
7578
|
return n.__concreteInstance;
|
|
7715
7579
|
const h = n;
|
|
@@ -7742,7 +7606,7 @@ function am(s, e, t, i, n) {
|
|
|
7742
7606
|
if (s === null && (r === be || r === xe || r === H || r === Oi))
|
|
7743
7607
|
return null;
|
|
7744
7608
|
try {
|
|
7745
|
-
l = new r(...
|
|
7609
|
+
l = new r(...Hk(s));
|
|
7746
7610
|
} catch (h) {
|
|
7747
7611
|
console.error("Error creating " + t.path, t.target, h);
|
|
7748
7612
|
return;
|
|
@@ -7751,7 +7615,7 @@ function am(s, e, t, i, n) {
|
|
|
7751
7615
|
const c = l;
|
|
7752
7616
|
return c.$serializedTypes && rm(c, s, t), l;
|
|
7753
7617
|
}
|
|
7754
|
-
function
|
|
7618
|
+
function Hk(s) {
|
|
7755
7619
|
if (ud.length = 0, typeof s == "object" && s !== null && s !== void 0)
|
|
7756
7620
|
for (const e of Object.keys(s))
|
|
7757
7621
|
ud.push(s[e]);
|
|
@@ -7764,7 +7628,7 @@ function qa(s, e, t, i) {
|
|
|
7764
7628
|
const n = s.constructor?.name ?? "unknown";
|
|
7765
7629
|
t?.registerDefinedKeys(n, s);
|
|
7766
7630
|
for (const o of Object.keys(e)) {
|
|
7767
|
-
const r =
|
|
7631
|
+
const r = Gk(s, o);
|
|
7768
7632
|
if (typeof r?.value != "function" && (!r || r.writable === !0 || r.set !== void 0)) {
|
|
7769
7633
|
const a = e[o], l = s[o];
|
|
7770
7634
|
s[o] = a, i?.onAssigned && i.onAssigned(s, o, l, a);
|
|
@@ -7772,28 +7636,28 @@ function qa(s, e, t, i) {
|
|
|
7772
7636
|
}
|
|
7773
7637
|
delete s[lm];
|
|
7774
7638
|
}
|
|
7775
|
-
function
|
|
7639
|
+
function Gk(s, e) {
|
|
7776
7640
|
let t;
|
|
7777
7641
|
do
|
|
7778
7642
|
t = Object.getOwnPropertyDescriptor(s, e);
|
|
7779
7643
|
while (!t && (s = Object.getPrototypeOf(s)));
|
|
7780
7644
|
return t;
|
|
7781
7645
|
}
|
|
7782
|
-
const
|
|
7646
|
+
const E0 = /* @__PURE__ */ Symbol("customVisibilityFlag");
|
|
7783
7647
|
function ys(s, e) {
|
|
7784
|
-
s.layers[
|
|
7648
|
+
s.layers[E0] = e;
|
|
7785
7649
|
}
|
|
7786
7650
|
const F_ = /* @__PURE__ */ Symbol("DidPatchLayers");
|
|
7787
|
-
function
|
|
7651
|
+
function qk() {
|
|
7788
7652
|
const s = Co.prototype;
|
|
7789
7653
|
if (s[F_]) return;
|
|
7790
7654
|
s[F_] = !0;
|
|
7791
7655
|
const e = s.test;
|
|
7792
7656
|
s.test = function(t) {
|
|
7793
|
-
return this[
|
|
7657
|
+
return this[E0] === !1 ? !1 : e.call(this, t);
|
|
7794
7658
|
};
|
|
7795
7659
|
}
|
|
7796
|
-
|
|
7660
|
+
qk();
|
|
7797
7661
|
Object.defineProperty(ce.prototype, "fov", {
|
|
7798
7662
|
get: function() {
|
|
7799
7663
|
return this._fov;
|
|
@@ -7824,24 +7688,24 @@ Object.defineProperty(ce.prototype, "far", {
|
|
|
7824
7688
|
},
|
|
7825
7689
|
configurable: !0
|
|
7826
7690
|
});
|
|
7827
|
-
const
|
|
7828
|
-
function
|
|
7691
|
+
const R0 = /* @__PURE__ */ new Map();
|
|
7692
|
+
function Xk(s, e) {
|
|
7829
7693
|
if (!s) return;
|
|
7830
7694
|
if (!e) {
|
|
7831
7695
|
console.warn("No prototype found", s, s.prototype, s.constructor);
|
|
7832
7696
|
return;
|
|
7833
7697
|
}
|
|
7834
|
-
const t =
|
|
7698
|
+
const t = R0.get(e);
|
|
7835
7699
|
t && t.apply(s);
|
|
7836
7700
|
}
|
|
7837
|
-
function
|
|
7838
|
-
const e =
|
|
7839
|
-
|
|
7701
|
+
function Qk(s) {
|
|
7702
|
+
const e = Yk(s.prototype);
|
|
7703
|
+
R0.set(s, e);
|
|
7840
7704
|
}
|
|
7841
|
-
function
|
|
7842
|
-
return new
|
|
7705
|
+
function Yk(s) {
|
|
7706
|
+
return new Kk(s);
|
|
7843
7707
|
}
|
|
7844
|
-
class
|
|
7708
|
+
class Kk {
|
|
7845
7709
|
$symbol;
|
|
7846
7710
|
extensions;
|
|
7847
7711
|
descriptors;
|
|
@@ -7862,24 +7726,24 @@ class iO {
|
|
|
7862
7726
|
}
|
|
7863
7727
|
}
|
|
7864
7728
|
}
|
|
7865
|
-
const
|
|
7866
|
-
function
|
|
7729
|
+
const Zk = x("debuggetcomponent"), U_ = () => Zk || globalThis.NEEDLE_DEBUG_GETCOMPONENT === !0;
|
|
7730
|
+
function Jk(s) {
|
|
7867
7731
|
return s == null || s.isObject3D ? s : s.object && s.object.isObject3D ? s.object : s;
|
|
7868
7732
|
}
|
|
7869
|
-
function
|
|
7733
|
+
function T0(s, e) {
|
|
7870
7734
|
if (!s || !s.userData.components) return e;
|
|
7871
7735
|
const t = s.userData.components.indexOf(e);
|
|
7872
|
-
return t < 0 || (
|
|
7736
|
+
return t < 0 || (yg.dispatchComponentLifecycleEvent("removing-component", e), e.gameObject = null, s.userData.components.splice(t, 1)), e;
|
|
7873
7737
|
}
|
|
7874
7738
|
function Mu(s, e, t) {
|
|
7875
7739
|
const i = el(s, e);
|
|
7876
7740
|
return i || Gn(s, e, t);
|
|
7877
7741
|
}
|
|
7878
|
-
const
|
|
7742
|
+
const A0 = new Ut("addComponentIdProvider");
|
|
7879
7743
|
function Ea(s, e, t = !0) {
|
|
7880
|
-
s.userData || (s.userData = {}), s.userData.components || (s.userData.components = []), s.userData.components.push(e), e.gameObject = s, (e.guid === void 0 || e.guid === "invalid") && (e.guid =
|
|
7744
|
+
s.userData || (s.userData = {}), s.userData.components || (s.userData.components = []), s.userData.components.push(e), e.gameObject = s, (e.guid === void 0 || e.guid === "invalid") && (e.guid = A0.generateUUID()), xg(s), Mg(e, e.context);
|
|
7881
7745
|
try {
|
|
7882
|
-
t && e.__internalAwake && (fc(s), e.activeAndEnabled && e.__internalAwake()),
|
|
7746
|
+
t && e.__internalAwake && (fc(s), e.activeAndEnabled && e.__internalAwake()), yg.dispatchComponentLifecycleEvent("component-added", e);
|
|
7883
7747
|
} catch (i) {
|
|
7884
7748
|
console.error(i);
|
|
7885
7749
|
}
|
|
@@ -7901,9 +7765,9 @@ function Gn(s, e, t, i) {
|
|
|
7901
7765
|
}
|
|
7902
7766
|
if (s.userData || (s.userData = {}), !s.userData.components) s.userData.components = [];
|
|
7903
7767
|
else if (s.userData.components.includes(e)) return e;
|
|
7904
|
-
return s.userData.components.push(e), e.gameObject = s, (e.guid === void 0 || e.guid === "invalid") && (e.guid =
|
|
7768
|
+
return s.userData.components.push(e), e.gameObject = s, (e.guid === void 0 || e.guid === "invalid") && (e.guid = A0.generateUUID()), t && e._internalInit(t), Mg(e, e.context), e;
|
|
7905
7769
|
}
|
|
7906
|
-
function
|
|
7770
|
+
function eO(s) {
|
|
7907
7771
|
if (s.gameObject && s.gameObject.userData.components) {
|
|
7908
7772
|
const e = s.gameObject.userData.components.indexOf(s);
|
|
7909
7773
|
s.gameObject.userData.components.splice(e, 1);
|
|
@@ -7911,7 +7775,7 @@ function oO(s) {
|
|
|
7911
7775
|
s.__internalDisable && s.__internalDisable(), gs(s, s.context ?? N.Current), s.destroy(), s.gameObject = null;
|
|
7912
7776
|
}
|
|
7913
7777
|
let z_ = !1;
|
|
7914
|
-
function
|
|
7778
|
+
function I0(s, e, t) {
|
|
7915
7779
|
if (s == null) return null;
|
|
7916
7780
|
if (!s.isObject3D)
|
|
7917
7781
|
return console.error("Object is not object3D"), null;
|
|
@@ -7935,11 +7799,11 @@ https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects
|
|
|
7935
7799
|
return t || null;
|
|
7936
7800
|
}
|
|
7937
7801
|
function el(s, e) {
|
|
7938
|
-
const t =
|
|
7802
|
+
const t = I0(s, e);
|
|
7939
7803
|
return t ? Array.isArray(t) ? t[0] : t : null;
|
|
7940
7804
|
}
|
|
7941
7805
|
function Eu(s, e, t, i = !0) {
|
|
7942
|
-
return t || (t = []), i && (t.length = 0),
|
|
7806
|
+
return t || (t = []), i && (t.length = 0), I0(s, e, t), t;
|
|
7943
7807
|
}
|
|
7944
7808
|
function Ru(s, e, t = !1) {
|
|
7945
7809
|
if (t === !1 && s[bo] === !1) return null;
|
|
@@ -7958,20 +7822,20 @@ function qc(s, e, t, i = !0) {
|
|
|
7958
7822
|
qc(s.children[n], e, t, !1);
|
|
7959
7823
|
return t;
|
|
7960
7824
|
}
|
|
7961
|
-
function
|
|
7825
|
+
function Vd(s, e, t = !1) {
|
|
7962
7826
|
if (!s) return null;
|
|
7963
7827
|
if (Array.isArray(s)) {
|
|
7964
7828
|
for (let n = 0; n < s.length; n++) {
|
|
7965
|
-
const o =
|
|
7829
|
+
const o = Jk(s[n]), r = Vd(o, e, t);
|
|
7966
7830
|
if (r) return r;
|
|
7967
7831
|
}
|
|
7968
7832
|
return null;
|
|
7969
7833
|
}
|
|
7970
7834
|
const i = el(s, e);
|
|
7971
|
-
return i || (s.parent ?
|
|
7835
|
+
return i || (s.parent ? Vd(s.parent, e, t) : null);
|
|
7972
7836
|
}
|
|
7973
|
-
function
|
|
7974
|
-
return t || (t = []), i && (t.length = 0), s ? (Eu(s, e, t, !1), s.parent ?
|
|
7837
|
+
function wg(s, e, t, i = !0) {
|
|
7838
|
+
return t || (t = []), i && (t.length = 0), s ? (Eu(s, e, t, !1), s.parent ? wg(s.parent, e, t, !1) : t) : t;
|
|
7975
7839
|
}
|
|
7976
7840
|
function Xc(s, e = void 0, t = !0) {
|
|
7977
7841
|
if (!s) return null;
|
|
@@ -7982,7 +7846,7 @@ function Xc(s, e = void 0, t = !0) {
|
|
|
7982
7846
|
const n = Ru(i, s, t);
|
|
7983
7847
|
return n || null;
|
|
7984
7848
|
}
|
|
7985
|
-
function
|
|
7849
|
+
function tO(s, e, t = void 0) {
|
|
7986
7850
|
if (!s) return e ?? [];
|
|
7987
7851
|
if (e || (e = []), e.length = 0, !t && (t = N.Current, !t))
|
|
7988
7852
|
return console.error("Can not search object without any needle context or scene!!!"), e;
|
|
@@ -7990,21 +7854,21 @@ function rO(s, e, t = void 0) {
|
|
|
7990
7854
|
const i = t;
|
|
7991
7855
|
return i && qc(i, s, e, !1), e;
|
|
7992
7856
|
}
|
|
7993
|
-
function
|
|
7994
|
-
s && s.isObject3D === !0 &&
|
|
7857
|
+
function xg(s) {
|
|
7858
|
+
s && s.isObject3D === !0 && Xk(s, M);
|
|
7995
7859
|
}
|
|
7996
|
-
if (
|
|
7860
|
+
if (zd.experimentalSmartHierarchyUpdate) {
|
|
7997
7861
|
const s = M.prototype.add;
|
|
7998
7862
|
M.prototype.add = function(...i) {
|
|
7999
|
-
return
|
|
7863
|
+
return Gf(), s.apply(this, i);
|
|
8000
7864
|
};
|
|
8001
7865
|
const e = M.prototype.attach;
|
|
8002
7866
|
M.prototype.attach = function(...i) {
|
|
8003
|
-
return
|
|
7867
|
+
return Gf(), e.apply(this, i);
|
|
8004
7868
|
};
|
|
8005
7869
|
const t = M.prototype.remove;
|
|
8006
7870
|
M.prototype.remove = function(...i) {
|
|
8007
|
-
return
|
|
7871
|
+
return Gf(), t.apply(this, i);
|
|
8008
7872
|
};
|
|
8009
7873
|
}
|
|
8010
7874
|
M.prototype.SetActive = function(s) {
|
|
@@ -8023,7 +7887,7 @@ M.prototype.addNewComponent = function(s, e) {
|
|
|
8023
7887
|
return Gn(this, s, e);
|
|
8024
7888
|
};
|
|
8025
7889
|
M.prototype.removeComponent = function(s) {
|
|
8026
|
-
return
|
|
7890
|
+
return T0(this, s);
|
|
8027
7891
|
};
|
|
8028
7892
|
M.prototype.getOrAddComponent = function(s, e) {
|
|
8029
7893
|
return Mu(this, s, e);
|
|
@@ -8041,10 +7905,10 @@ M.prototype.getComponentsInChildren = function(s, e) {
|
|
|
8041
7905
|
return qc(this, s, e);
|
|
8042
7906
|
};
|
|
8043
7907
|
M.prototype.getComponentInParent = function(s, e = !1) {
|
|
8044
|
-
return
|
|
7908
|
+
return Vd(this, s, e);
|
|
8045
7909
|
};
|
|
8046
7910
|
M.prototype.getComponentsInParent = function(s, e) {
|
|
8047
|
-
return
|
|
7911
|
+
return wg(this, s, e);
|
|
8048
7912
|
};
|
|
8049
7913
|
Object.getOwnPropertyDescriptor(M.prototype, "activeSelf") || Object.defineProperty(M.prototype, "activeSelf", {
|
|
8050
7914
|
get: function() {
|
|
@@ -8095,13 +7959,13 @@ Object.getOwnPropertyDescriptor(M.prototype, "worldScale") || Object.definePrope
|
|
|
8095
7959
|
Ec(this, s);
|
|
8096
7960
|
}
|
|
8097
7961
|
});
|
|
8098
|
-
const
|
|
7962
|
+
const iO = new ee(), nO = new _(0, 0, 0), sO = new _(0, 1, 0);
|
|
8099
7963
|
Object.getOwnPropertyDescriptor(M.prototype, "worldForward") || Object.defineProperty(M.prototype, "worldForward", {
|
|
8100
7964
|
get: function() {
|
|
8101
7965
|
return z().set(0, 0, 1).applyQuaternion(ve(this));
|
|
8102
7966
|
},
|
|
8103
7967
|
set: function(s) {
|
|
8104
|
-
const e = bi().setFromRotationMatrix(
|
|
7968
|
+
const e = bi().setFromRotationMatrix(iO.lookAt(nO.set(0, 0, 0), s, sO.set(0, 1, 0)));
|
|
8105
7969
|
this.worldQuaternion = e;
|
|
8106
7970
|
}
|
|
8107
7971
|
});
|
|
@@ -8124,7 +7988,7 @@ Object.getOwnPropertyDescriptor(M.prototype, "contains") || Object.definePropert
|
|
|
8124
7988
|
return !1;
|
|
8125
7989
|
}
|
|
8126
7990
|
});
|
|
8127
|
-
|
|
7991
|
+
Qk(M);
|
|
8128
7992
|
const fd = x("debuggetcomponent"), xr = x("debuginstantiate");
|
|
8129
7993
|
class es {
|
|
8130
7994
|
idProvider;
|
|
@@ -8151,24 +8015,24 @@ function Qc(s) {
|
|
|
8151
8015
|
function pd(s, e) {
|
|
8152
8016
|
return typeof e == "number" && (e = e > 0.5), s.visible = e, s.visible;
|
|
8153
8017
|
}
|
|
8154
|
-
function
|
|
8155
|
-
return s[bo] ||
|
|
8018
|
+
function oO(s) {
|
|
8019
|
+
return s[bo] || Sg(s);
|
|
8156
8020
|
}
|
|
8157
|
-
function
|
|
8158
|
-
s[
|
|
8021
|
+
function rO(s, e) {
|
|
8022
|
+
s[g0] = e;
|
|
8159
8023
|
}
|
|
8160
|
-
function
|
|
8024
|
+
function Sg(s) {
|
|
8161
8025
|
return _n.isUsingInstancing(s);
|
|
8162
8026
|
}
|
|
8163
|
-
function
|
|
8027
|
+
function L0(s, e) {
|
|
8164
8028
|
return Mc(s, e, !0, !0);
|
|
8165
8029
|
}
|
|
8166
|
-
const
|
|
8030
|
+
const D0 = /* @__PURE__ */ Symbol("isDestroyed");
|
|
8167
8031
|
function Xa(s) {
|
|
8168
|
-
return s[
|
|
8032
|
+
return s[D0];
|
|
8169
8033
|
}
|
|
8170
|
-
function
|
|
8171
|
-
s[
|
|
8034
|
+
function aO(s, e) {
|
|
8035
|
+
s[D0] = e;
|
|
8172
8036
|
}
|
|
8173
8037
|
const cm = /* @__PURE__ */ Symbol("isDontDestroy");
|
|
8174
8038
|
function Al(s, e = !0) {
|
|
@@ -8180,7 +8044,7 @@ function Ki(s, e = !0, t = !1) {
|
|
|
8180
8044
|
for (const i of md)
|
|
8181
8045
|
i.gameObject = null, i.context = null;
|
|
8182
8046
|
for (const i of gd)
|
|
8183
|
-
|
|
8047
|
+
aO(i, !0), t && Ae(i);
|
|
8184
8048
|
gd.length = 0, md.length = 0;
|
|
8185
8049
|
}
|
|
8186
8050
|
function hm(s, e = !0, t = !0) {
|
|
@@ -8211,18 +8075,18 @@ function hm(s, e = !0, t = !0) {
|
|
|
8211
8075
|
t && n.removeFromParent();
|
|
8212
8076
|
}
|
|
8213
8077
|
function Qa(s, e, t = !0) {
|
|
8214
|
-
return
|
|
8078
|
+
return j0(s, e, t);
|
|
8215
8079
|
}
|
|
8216
|
-
function*
|
|
8080
|
+
function* Cg(s, e, t = !1, i = 999, n = 0) {
|
|
8217
8081
|
if (s?.userData.components && !(n > i)) {
|
|
8218
8082
|
for (const o of s.userData.components)
|
|
8219
8083
|
e && o?.isComponent === !0 && o instanceof e ? yield o : yield o;
|
|
8220
8084
|
if (t === !0)
|
|
8221
8085
|
for (const o of s.children)
|
|
8222
|
-
yield*
|
|
8086
|
+
yield* Cg(o, e, !0, i, n + 1);
|
|
8223
8087
|
}
|
|
8224
8088
|
}
|
|
8225
|
-
function
|
|
8089
|
+
function j0(s, e, t, i = 0) {
|
|
8226
8090
|
if (s) {
|
|
8227
8091
|
if (s.isObject3D, i > 1e3) {
|
|
8228
8092
|
console.warn("Failed to iterate components: too many levels");
|
|
@@ -8241,7 +8105,7 @@ function B0(s, e, t, i = 0) {
|
|
|
8241
8105
|
for (let o = 0; o < s.children.length; o++) {
|
|
8242
8106
|
const r = s.children[o];
|
|
8243
8107
|
if (!r) continue;
|
|
8244
|
-
const a =
|
|
8108
|
+
const a = j0(r, e, t, n);
|
|
8245
8109
|
if (a !== void 0) return a;
|
|
8246
8110
|
}
|
|
8247
8111
|
}
|
|
@@ -8254,8 +8118,8 @@ function Rr(s, e) {
|
|
|
8254
8118
|
e != null && (e.x !== void 0 ? (t = new es(), t.position = e) : t = e);
|
|
8255
8119
|
let i = N.Current;
|
|
8256
8120
|
t?.context && (i = t.context), fd && i.alias && console.log("context", i.alias), t && !t.idProvider && (t.idProvider = new Ut(Date.now()));
|
|
8257
|
-
const n = [], o = {}, r = {}, a =
|
|
8258
|
-
a && (
|
|
8121
|
+
const n = [], o = {}, r = {}, a = B0(i, s, t, n, o, r);
|
|
8122
|
+
a && (hO(a, o), cO(r, o)), fd && (qp(s, !0), qp(a, !0));
|
|
8259
8123
|
const l = {};
|
|
8260
8124
|
if (t?.components !== !1) {
|
|
8261
8125
|
for (const c in n) {
|
|
@@ -8266,11 +8130,11 @@ function Rr(s, e) {
|
|
|
8266
8130
|
const h = n[c];
|
|
8267
8131
|
h.resolveGuids && h.resolveGuids(l), h.enabled !== !1 && (h.enabled = !0);
|
|
8268
8132
|
}
|
|
8269
|
-
|
|
8133
|
+
Nd(i);
|
|
8270
8134
|
}
|
|
8271
8135
|
return a;
|
|
8272
8136
|
}
|
|
8273
|
-
function
|
|
8137
|
+
function B0(s, e, t, i, n, o) {
|
|
8274
8138
|
if (!e || e[wi])
|
|
8275
8139
|
return null;
|
|
8276
8140
|
const r = e.userData;
|
|
@@ -8278,7 +8142,7 @@ function F0(s, e, t, i, n, o) {
|
|
|
8278
8142
|
const a = e.children;
|
|
8279
8143
|
e.children = [];
|
|
8280
8144
|
const l = e.clone(!1);
|
|
8281
|
-
if (
|
|
8145
|
+
if (xg(l), e.userData = r, e.children = a, n[e.uuid] = { original: e, clone: l }, xr && console.log("ADD", e, l), e.type === "SkinnedMesh" && (o[e.uuid] = { original: e, clone: l }), t?.visible !== void 0 && (l.visible = t.visible), t?.idProvider) {
|
|
8282
8146
|
l.uuid = t.idProvider.generateUUID();
|
|
8283
8147
|
const h = l;
|
|
8284
8148
|
h && (h.guid = l.uuid);
|
|
@@ -8323,17 +8187,17 @@ function F0(s, e, t, i, n, o) {
|
|
|
8323
8187
|
l.userData.components = d;
|
|
8324
8188
|
for (let f = 0; f < h.length; f++) {
|
|
8325
8189
|
const p = h[f], g = new p.constructor();
|
|
8326
|
-
|
|
8190
|
+
lO(p, g), p[cd] !== void 0 && (g[cd] = p[cd]), d.push(g), g.gameObject = l, i.push(g), n[p.guid] = { original: p, clone: g }, yg.dispatchComponentLifecycleEvent("component-added", g);
|
|
8327
8191
|
}
|
|
8328
8192
|
}
|
|
8329
8193
|
t && (t.position = void 0, t.rotation = void 0, t.scale = void 0, t.parent = void 0, t.visible = void 0);
|
|
8330
8194
|
for (const h in e.children) {
|
|
8331
|
-
const d = e.children[h], f =
|
|
8195
|
+
const d = e.children[h], f = B0(s, d, t, i, n, o);
|
|
8332
8196
|
f && (n[f.uuid] = { original: d, clone: f }, l.add(f));
|
|
8333
8197
|
}
|
|
8334
8198
|
return l;
|
|
8335
8199
|
}
|
|
8336
|
-
function
|
|
8200
|
+
function lO(s, e, t) {
|
|
8337
8201
|
qa(e, s, void 0, {
|
|
8338
8202
|
// onAssigned: (target, key, _oldValue, value) => {
|
|
8339
8203
|
// if (value !== null && typeof value === "object") {
|
|
@@ -8363,7 +8227,7 @@ function fO(s, e, t) {
|
|
|
8363
8227
|
// }
|
|
8364
8228
|
});
|
|
8365
8229
|
}
|
|
8366
|
-
function
|
|
8230
|
+
function cO(s, e) {
|
|
8367
8231
|
for (const t in s) {
|
|
8368
8232
|
const i = s[t], n = i.original, o = n.skeleton, r = i.clone;
|
|
8369
8233
|
if (!o) {
|
|
@@ -8384,7 +8248,7 @@ function pO(s, e) {
|
|
|
8384
8248
|
i.skeleton.update(), i.bind(i.skeleton, i.bindMatrix), i.updateMatrixWorld(!0);
|
|
8385
8249
|
}
|
|
8386
8250
|
}
|
|
8387
|
-
function
|
|
8251
|
+
function hO(s, e) {
|
|
8388
8252
|
for (const t in e) {
|
|
8389
8253
|
const n = e[t].clone;
|
|
8390
8254
|
if (n?.isObject3D && n?.userData?.components)
|
|
@@ -8549,7 +8413,7 @@ var Ya;
|
|
|
8549
8413
|
s.download = c;
|
|
8550
8414
|
})(Ya || (Ya = {}));
|
|
8551
8415
|
const Gs = x("debugaddressables");
|
|
8552
|
-
class
|
|
8416
|
+
class dO {
|
|
8553
8417
|
_context;
|
|
8554
8418
|
_assetReferences = {};
|
|
8555
8419
|
/** @internal */
|
|
@@ -8584,7 +8448,7 @@ class gO {
|
|
|
8584
8448
|
e.url && delete this._assetReferences[e.url];
|
|
8585
8449
|
}
|
|
8586
8450
|
}
|
|
8587
|
-
const
|
|
8451
|
+
const Qf = /* @__PURE__ */ Symbol("assetReference");
|
|
8588
8452
|
class ne {
|
|
8589
8453
|
/**
|
|
8590
8454
|
* Get an AssetReference for a URL to be easily loaded.
|
|
@@ -8672,7 +8536,7 @@ class ne {
|
|
|
8672
8536
|
i >= 0 && (this._urlName = this._urlName.substring(0, i));
|
|
8673
8537
|
} else
|
|
8674
8538
|
this._urlName = this._url;
|
|
8675
|
-
|
|
8539
|
+
Mk(this._url, this.onResolvePrefab.bind(this));
|
|
8676
8540
|
}
|
|
8677
8541
|
async onResolvePrefab(e) {
|
|
8678
8542
|
return e === this.url && (this.mustLoad && await this.loadAssetAsync(), this.asset) ? this.asset : null;
|
|
@@ -8719,7 +8583,7 @@ class ne {
|
|
|
8719
8583
|
});
|
|
8720
8584
|
this._loadingPromise.finally(() => this._loadingPromise = null);
|
|
8721
8585
|
const i = await this._loadingPromise;
|
|
8722
|
-
return this._progressListeners.length = 0, this._glbRoot = this.tryGetActualGameObjectRoot(i), i ? (i[
|
|
8586
|
+
return this._progressListeners.length = 0, this._glbRoot = this.tryGetActualGameObjectRoot(i), i ? (i[Qf] = this, this._glbRoot && (this._glbRoot[Qf] = this), this.asset && (this.asset[Qf] = this), Nd(t), i.scene !== void 0 && (this._rawAsset = i), this.asset) : null;
|
|
8723
8587
|
}
|
|
8724
8588
|
/** loads and returns a new instance of `asset` */
|
|
8725
8589
|
instantiate(e) {
|
|
@@ -8753,7 +8617,7 @@ class ne {
|
|
|
8753
8617
|
o.context = n;
|
|
8754
8618
|
const a = this.asset;
|
|
8755
8619
|
a.guid = this.url;
|
|
8756
|
-
const l =
|
|
8620
|
+
const l = x0(a, o, void 0, i);
|
|
8757
8621
|
if (l)
|
|
8758
8622
|
return l;
|
|
8759
8623
|
} else {
|
|
@@ -8787,7 +8651,7 @@ class ne {
|
|
|
8787
8651
|
return null;
|
|
8788
8652
|
}
|
|
8789
8653
|
}
|
|
8790
|
-
class
|
|
8654
|
+
class uO extends nn {
|
|
8791
8655
|
constructor() {
|
|
8792
8656
|
super([ne], "AssetReferenceSerializer");
|
|
8793
8657
|
}
|
|
@@ -8811,8 +8675,8 @@ class yO extends nn {
|
|
|
8811
8675
|
return null;
|
|
8812
8676
|
}
|
|
8813
8677
|
}
|
|
8814
|
-
new
|
|
8815
|
-
const
|
|
8678
|
+
new uO();
|
|
8679
|
+
const fO = Promise.resolve(null);
|
|
8816
8680
|
class Ra {
|
|
8817
8681
|
static imageReferences = /* @__PURE__ */ new Map();
|
|
8818
8682
|
static getOrCreate(e) {
|
|
@@ -8834,7 +8698,7 @@ class Ra {
|
|
|
8834
8698
|
}
|
|
8835
8699
|
loader = null;
|
|
8836
8700
|
createTexture() {
|
|
8837
|
-
return this.url ? (this.loader || (this.loader = new Or()), this.loader.setCrossOrigin("anonymous"), this.loader.loadAsync(this.url).then((e) => (e && !e.name?.length && (e.name = this.url.split("/").pop() ?? this.url), e))) : (console.error("Can not load texture without url"),
|
|
8701
|
+
return this.url ? (this.loader || (this.loader = new Or()), this.loader.setCrossOrigin("anonymous"), this.loader.loadAsync(this.url).then((e) => (e && !e.name?.length && (e.name = this.url.split("/").pop() ?? this.url), e))) : (console.error("Can not load texture without url"), fO);
|
|
8838
8702
|
}
|
|
8839
8703
|
/** Loads the bitmap data of the image */
|
|
8840
8704
|
getBitmap() {
|
|
@@ -8848,7 +8712,7 @@ class Ra {
|
|
|
8848
8712
|
}), this._bitmap);
|
|
8849
8713
|
}
|
|
8850
8714
|
}
|
|
8851
|
-
class
|
|
8715
|
+
class pO extends nn {
|
|
8852
8716
|
constructor() {
|
|
8853
8717
|
super([Ra], "ImageReferenceSerializer");
|
|
8854
8718
|
}
|
|
@@ -8862,7 +8726,7 @@ class bO extends nn {
|
|
|
8862
8726
|
}
|
|
8863
8727
|
}
|
|
8864
8728
|
}
|
|
8865
|
-
new
|
|
8729
|
+
new pO();
|
|
8866
8730
|
class Ta {
|
|
8867
8731
|
static cache = /* @__PURE__ */ new Map();
|
|
8868
8732
|
static getOrCreate(e) {
|
|
@@ -8888,7 +8752,7 @@ class Ta {
|
|
|
8888
8752
|
this.url = e;
|
|
8889
8753
|
}
|
|
8890
8754
|
}
|
|
8891
|
-
class
|
|
8755
|
+
class mO extends nn {
|
|
8892
8756
|
constructor() {
|
|
8893
8757
|
super([Ta], "FileReferenceSerializer");
|
|
8894
8758
|
}
|
|
@@ -8902,8 +8766,8 @@ class vO extends nn {
|
|
|
8902
8766
|
}
|
|
8903
8767
|
}
|
|
8904
8768
|
}
|
|
8905
|
-
new
|
|
8906
|
-
class
|
|
8769
|
+
new mO();
|
|
8770
|
+
class gO {
|
|
8907
8771
|
context;
|
|
8908
8772
|
mixers = [];
|
|
8909
8773
|
constructor(e) {
|
|
@@ -9057,23 +8921,23 @@ class Ls {
|
|
|
9057
8921
|
return new Oi("scale", r[r.length - 1], [l]);
|
|
9058
8922
|
}
|
|
9059
8923
|
}
|
|
9060
|
-
function*
|
|
8924
|
+
function* F0(s, e = null) {
|
|
9061
8925
|
const t = e ? e.time : N.Current.time, i = t.time;
|
|
9062
8926
|
for (; t.time - i < s; )
|
|
9063
8927
|
yield;
|
|
9064
8928
|
}
|
|
9065
|
-
function*
|
|
8929
|
+
function* ND(s) {
|
|
9066
8930
|
for (let e = 0; e < s; e++)
|
|
9067
8931
|
yield;
|
|
9068
8932
|
}
|
|
9069
|
-
function*
|
|
8933
|
+
function* yO(s) {
|
|
9070
8934
|
let e = !0;
|
|
9071
8935
|
for (s.then(() => e = !1), s.catch(() => e = !1); e; )
|
|
9072
8936
|
yield;
|
|
9073
8937
|
}
|
|
9074
8938
|
const $_ = "NEEDLE_lightmaps", ta = x("debuglightmapsextension") || x("debuglightmaps");
|
|
9075
8939
|
var Un = /* @__PURE__ */ ((s) => (s[s.Lightmap = 0] = "Lightmap", s[s.Skybox = 1] = "Skybox", s[s.Reflection = 2] = "Reflection", s))(Un || {});
|
|
9076
|
-
class
|
|
8940
|
+
class _O {
|
|
9077
8941
|
get name() {
|
|
9078
8942
|
return $_;
|
|
9079
8943
|
}
|
|
@@ -9097,7 +8961,7 @@ class SO {
|
|
|
9097
8961
|
let h = null;
|
|
9098
8962
|
if (c.pointer.startsWith("/textures/") || /** legacy support e.g. SOC */
|
|
9099
8963
|
c.pointer.startsWith("textures/"))
|
|
9100
|
-
ta && console.log("Load texture from gltf", c.pointer), h =
|
|
8964
|
+
ta && console.log("Load texture from gltf", c.pointer), h = vg(this.parser, c.pointer).then((d) => this.resolveTexture(c, d));
|
|
9101
8965
|
else if (typeof c.pointer == "string") {
|
|
9102
8966
|
ta && console.log("Load texture from path", c.pointer);
|
|
9103
8967
|
const d = Eo(this.source, c.pointer);
|
|
@@ -9119,7 +8983,7 @@ class SO {
|
|
|
9119
8983
|
}
|
|
9120
8984
|
}
|
|
9121
8985
|
const ia = !!x("debuglightmaps");
|
|
9122
|
-
class
|
|
8986
|
+
class bO {
|
|
9123
8987
|
context;
|
|
9124
8988
|
map = /* @__PURE__ */ new Map();
|
|
9125
8989
|
clear() {
|
|
@@ -9131,7 +8995,7 @@ class CO {
|
|
|
9131
8995
|
registerTexture(e, t, i, n) {
|
|
9132
8996
|
ia && console.log("Registering ", Un[t] + ' "' + e + '"', i), this.map.has(e) || this.map.set(e, /* @__PURE__ */ new Map());
|
|
9133
8997
|
const o = this.map.get(e), r = o?.get(t) ?? [];
|
|
9134
|
-
r.length < n && (r.length = n + 1),
|
|
8998
|
+
r.length < n && (r.length = n + 1), uk(i, !1), r[n] = i, o?.set(t, r);
|
|
9135
8999
|
}
|
|
9136
9000
|
tryGetLightmap(e, t = 0) {
|
|
9137
9001
|
return this.tryGet(e, Un.Lightmap, t);
|
|
@@ -9179,8 +9043,8 @@ irradiance += 0.;
|
|
|
9179
9043
|
irradiance += getLightProbeIrradiance( lightProbe, geometry.normal );
|
|
9180
9044
|
#endif`
|
|
9181
9045
|
);
|
|
9182
|
-
const
|
|
9183
|
-
class
|
|
9046
|
+
const Yf = x("debugprogressive"), Dh = new Pi(), jh = new mu();
|
|
9047
|
+
class vO {
|
|
9184
9048
|
/** The type of the @needle-tools/gltf-progressive LODsManager - can be used to set static settings */
|
|
9185
9049
|
static GLTF_PROGRESSIVE_LODSMANAGER_TYPE = Zo;
|
|
9186
9050
|
context;
|
|
@@ -9226,7 +9090,7 @@ class PO {
|
|
|
9226
9090
|
}
|
|
9227
9091
|
/** @internal */
|
|
9228
9092
|
onAfterUpdatedLOD(e, t, i, n, o) {
|
|
9229
|
-
|
|
9093
|
+
Yf && this.onRenderDebug(i, n, o);
|
|
9230
9094
|
}
|
|
9231
9095
|
onRenderDebug(e, t, i) {
|
|
9232
9096
|
if (!t.geometry || !We.hasLODLevelAvailable(t.geometry) && !We.hasLODLevelAvailable(t.material)) return;
|
|
@@ -9234,7 +9098,7 @@ class PO {
|
|
|
9234
9098
|
if (!n) return;
|
|
9235
9099
|
let o = i.mesh_lod;
|
|
9236
9100
|
const r = i.mesh_lod != n.lastLodLevel_Mesh || i.texture_lod != n.lastLodLevel_Texture;
|
|
9237
|
-
if (
|
|
9101
|
+
if (Yf && t.geometry.boundingSphere) {
|
|
9238
9102
|
const a = t.geometry.boundingSphere;
|
|
9239
9103
|
jh.copy(a), jh.applyMatrix4(t.matrixWorld);
|
|
9240
9104
|
const l = jh.center, c = jh.radius, h = ["#76c43e", "#bcc43e", "#c4ac3e", "#c4673e", "#ff3e3e"];
|
|
@@ -9252,7 +9116,7 @@ class PO {
|
|
|
9252
9116
|
const g = f ? f[o]?.density : -1;
|
|
9253
9117
|
let y = "LOD " + i.mesh_lod + `
|
|
9254
9118
|
TEX ` + i.texture_lod;
|
|
9255
|
-
if (
|
|
9119
|
+
if (Yf == "density" && (y += `
|
|
9256
9120
|
` + d + ` tris
|
|
9257
9121
|
` + (g / n.lastScreenCoverage).toFixed(0) + ` dens
|
|
9258
9122
|
` + (n.lastScreenCoverage * 100).toFixed(1) + `% cov
|
|
@@ -9265,9 +9129,9 @@ TEX ` + i.texture_lod;
|
|
|
9265
9129
|
}
|
|
9266
9130
|
}
|
|
9267
9131
|
}
|
|
9268
|
-
const
|
|
9132
|
+
const wO = x("debugplayerview");
|
|
9269
9133
|
var vo = /* @__PURE__ */ ((s) => (s.Browser = "browser", s.Headset = "headset", s.Handheld = "handheld", s))(vo || {});
|
|
9270
|
-
class
|
|
9134
|
+
class xO {
|
|
9271
9135
|
userId;
|
|
9272
9136
|
context;
|
|
9273
9137
|
viewDevice = "browser";
|
|
@@ -9286,7 +9150,7 @@ class OO {
|
|
|
9286
9150
|
this.userId = e, this.context = t;
|
|
9287
9151
|
}
|
|
9288
9152
|
}
|
|
9289
|
-
class
|
|
9153
|
+
class SO {
|
|
9290
9154
|
context;
|
|
9291
9155
|
playerViews = /* @__PURE__ */ new Map();
|
|
9292
9156
|
constructor(e) {
|
|
@@ -9294,7 +9158,7 @@ class MO {
|
|
|
9294
9158
|
}
|
|
9295
9159
|
setPlayerView(e, t, i) {
|
|
9296
9160
|
let n = this.playerViews.get(e);
|
|
9297
|
-
n || (n = new
|
|
9161
|
+
n || (n = new xO(e, this.context), this.playerViews.set(e, n)), n.viewDevice = i, n.currentObject = t, n.removed = !1;
|
|
9298
9162
|
}
|
|
9299
9163
|
getPlayerView(e) {
|
|
9300
9164
|
if (!e) return;
|
|
@@ -9306,7 +9170,7 @@ class MO {
|
|
|
9306
9170
|
}
|
|
9307
9171
|
removePlayerView(e, t) {
|
|
9308
9172
|
const i = this.playerViews.get(e);
|
|
9309
|
-
i?.viewDevice === t && (
|
|
9173
|
+
i?.viewDevice === t && (wO && console.log("REMOVE", e), i.removed = !0, this.playerViews.delete(e));
|
|
9310
9174
|
}
|
|
9311
9175
|
}
|
|
9312
9176
|
new Ym();
|
|
@@ -9315,8 +9179,8 @@ Yc[0] = 255;
|
|
|
9315
9179
|
Yc[1] = 255;
|
|
9316
9180
|
Yc[2] = 255;
|
|
9317
9181
|
Yc[3] = 255;
|
|
9318
|
-
const
|
|
9319
|
-
function
|
|
9182
|
+
const CO = new Km(Yc, 1, 1, gu);
|
|
9183
|
+
function Pg(s, e = 1) {
|
|
9320
9184
|
const t = "alpha" in s, i = e * e, n = new Uint8Array(4 * i), o = Math.floor(s.r * 255), r = Math.floor(s.g * 255), a = Math.floor(s.b * 255);
|
|
9321
9185
|
for (let c = 0; c < i; c++) {
|
|
9322
9186
|
const h = c * 4;
|
|
@@ -9325,7 +9189,7 @@ function kg(s, e = 1) {
|
|
|
9325
9189
|
const l = new Km(n, e, e);
|
|
9326
9190
|
return l.needsUpdate = !0, l;
|
|
9327
9191
|
}
|
|
9328
|
-
function
|
|
9192
|
+
function PO(s, e, t, i = 1, n = 3) {
|
|
9329
9193
|
const r = i * n, a = [s, e, t], l = a.length, c = new Uint8Array(4 * l * r), h = new re();
|
|
9330
9194
|
for (let f = 0; f < n; f++) {
|
|
9331
9195
|
const p = Math.floor(f / n * l), g = F.clamp(p + 1, 0, l - 1), y = a[p], m = a[g], v = f / n * l % 1;
|
|
@@ -9339,7 +9203,7 @@ function RO(s, e, t, i = 1, n = 3) {
|
|
|
9339
9203
|
const d = new Km(c, i, n);
|
|
9340
9204
|
return d.needsUpdate = !0, d;
|
|
9341
9205
|
}
|
|
9342
|
-
function
|
|
9206
|
+
function Hd(s, e) {
|
|
9343
9207
|
const t = s.elements;
|
|
9344
9208
|
e || (e = []), e.length = 0;
|
|
9345
9209
|
for (let i = 0; i < 16; i += 4) {
|
|
@@ -9348,16 +9212,16 @@ function Gd(s, e) {
|
|
|
9348
9212
|
}
|
|
9349
9213
|
return e;
|
|
9350
9214
|
}
|
|
9351
|
-
const
|
|
9352
|
-
function
|
|
9353
|
-
if (
|
|
9354
|
-
for (let t = 0; t < 27; t++)
|
|
9355
|
-
e || (e =
|
|
9215
|
+
const Kf = [], W_ = [];
|
|
9216
|
+
function kO(s, e) {
|
|
9217
|
+
if (Kf.length === 0)
|
|
9218
|
+
for (let t = 0; t < 27; t++) Kf.push(0);
|
|
9219
|
+
e || (e = Kf);
|
|
9356
9220
|
for (let t = 0; t < 27; t++)
|
|
9357
9221
|
W_[t] = e[t];
|
|
9358
9222
|
e = W_, s.unity_SHAr = { value: new ge(e[9], e[3], e[6], e[0]) }, s.unity_SHBr = { value: new ge(e[12], e[15], e[18], e[21]) }, s.unity_SHAg = { value: new ge(e[10], e[4], e[7], e[1]) }, s.unity_SHBg = { value: new ge(e[13], e[16], e[19], e[22]) }, s.unity_SHAb = { value: new ge(e[11], e[5], e[8], e[2]) }, s.unity_SHBb = { value: new ge(e[14], e[17], e[20], e[23]) }, s.unity_SHC = { value: new ge(e[24], e[25], e[26], 1) };
|
|
9359
9223
|
}
|
|
9360
|
-
class
|
|
9224
|
+
class OO {
|
|
9361
9225
|
vertexShader;
|
|
9362
9226
|
fragmentShader;
|
|
9363
9227
|
technique;
|
|
@@ -9365,7 +9229,7 @@ class AO {
|
|
|
9365
9229
|
this.vertexShader = e, this.fragmentShader = t, this.technique = i;
|
|
9366
9230
|
}
|
|
9367
9231
|
}
|
|
9368
|
-
async function
|
|
9232
|
+
async function MO(s, e) {
|
|
9369
9233
|
if (!s)
|
|
9370
9234
|
return console.error("Can not find technique: no shader data"), null;
|
|
9371
9235
|
const t = s.programs[e], i = t.vertexShader, n = t.fragmentShader;
|
|
@@ -9374,7 +9238,7 @@ async function IO(s, e) {
|
|
|
9374
9238
|
if (o.uri && r.uri || o.code && r.code) {
|
|
9375
9239
|
if (!o.code && o.uri && await V_(o), !r.code && r.uri && await V_(r), !o.code || !r.code) return null;
|
|
9376
9240
|
const a = s.techniques[e];
|
|
9377
|
-
return new
|
|
9241
|
+
return new OO(o.code, r.code, a);
|
|
9378
9242
|
}
|
|
9379
9243
|
}
|
|
9380
9244
|
return console.error("Shader technique not found", e), null;
|
|
@@ -9386,16 +9250,16 @@ async function V_(s) {
|
|
|
9386
9250
|
const i = await new Ym().loadAsync(e);
|
|
9387
9251
|
s.code = i.toString();
|
|
9388
9252
|
} else
|
|
9389
|
-
s.code =
|
|
9253
|
+
s.code = EO(s.uri);
|
|
9390
9254
|
}
|
|
9391
|
-
function
|
|
9255
|
+
function EO(s) {
|
|
9392
9256
|
return decodeURIComponent(Array.prototype.map.call(atob(s), function(e) {
|
|
9393
9257
|
return "%" + ("00" + e.charCodeAt(0).toString(16)).slice(-2);
|
|
9394
9258
|
}).join(""));
|
|
9395
9259
|
}
|
|
9396
9260
|
const ln = x("debugenvlight");
|
|
9397
9261
|
var pc = /* @__PURE__ */ ((s) => (s[s.Skybox = 0] = "Skybox", s[s.Trilight = 1] = "Trilight", s[s.Flat = 3] = "Flat", s[s.Custom = 4] = "Custom", s))(pc || {}), dm = /* @__PURE__ */ ((s) => (s[s.Skybox = 0] = "Skybox", s[s.Custom = 1] = "Custom", s))(dm || {});
|
|
9398
|
-
class
|
|
9262
|
+
class RO {
|
|
9399
9263
|
context;
|
|
9400
9264
|
constructor(e) {
|
|
9401
9265
|
this.context = e, this.context.pre_update_callbacks.push(this.preUpdate.bind(this));
|
|
@@ -9482,7 +9346,7 @@ class DO {
|
|
|
9482
9346
|
/** @internal */
|
|
9483
9347
|
internalRegisterReflection(e, t) {
|
|
9484
9348
|
ln && console.log("Register reflection", e, t);
|
|
9485
|
-
const i = new
|
|
9349
|
+
const i = new TO(this.context, t, 1);
|
|
9486
9350
|
this._lighting[e] = i;
|
|
9487
9351
|
}
|
|
9488
9352
|
/** @internal */
|
|
@@ -9509,12 +9373,12 @@ class DO {
|
|
|
9509
9373
|
switch (t?.ambientMode) {
|
|
9510
9374
|
case 1:
|
|
9511
9375
|
if (t.ambientTrilight) {
|
|
9512
|
-
const i = t.ambientTrilight, n =
|
|
9376
|
+
const i = t.ambientTrilight, n = PO(i[0], i[1], i[2], 64, 64);
|
|
9513
9377
|
return n.colorSpace = As, n.mapping = Hn, this.context.scene.environment = n, n;
|
|
9514
9378
|
} else console.error("Missing ambient trilight", t.sourceId);
|
|
9515
9379
|
case 3:
|
|
9516
9380
|
if (t.ambientLight) {
|
|
9517
|
-
const i =
|
|
9381
|
+
const i = Pg(t.ambientLight, 64);
|
|
9518
9382
|
return i.colorSpace = As, i.mapping = Hn, this.context.scene.environment = i, i;
|
|
9519
9383
|
} else console.error("Missing ambientlight", t.sourceId);
|
|
9520
9384
|
}
|
|
@@ -9532,7 +9396,7 @@ class DO {
|
|
|
9532
9396
|
}
|
|
9533
9397
|
_lighting = {};
|
|
9534
9398
|
}
|
|
9535
|
-
class
|
|
9399
|
+
class TO {
|
|
9536
9400
|
get Source() {
|
|
9537
9401
|
return this._source;
|
|
9538
9402
|
}
|
|
@@ -9594,7 +9458,7 @@ class jO {
|
|
|
9594
9458
|
const H_ = x("timescale");
|
|
9595
9459
|
let um = 1;
|
|
9596
9460
|
typeof H_ == "number" && (um = H_);
|
|
9597
|
-
class
|
|
9461
|
+
class AO {
|
|
9598
9462
|
/** The time in seconds since the start of Needle Engine. */
|
|
9599
9463
|
get time() {
|
|
9600
9464
|
return this._time;
|
|
@@ -9678,11 +9542,11 @@ class BO {
|
|
|
9678
9542
|
}
|
|
9679
9543
|
}
|
|
9680
9544
|
let G_ = !1;
|
|
9681
|
-
function
|
|
9682
|
-
G_ || (G_ = !0,
|
|
9545
|
+
function U0(s) {
|
|
9546
|
+
G_ || (G_ = !0, IO(), LO());
|
|
9683
9547
|
}
|
|
9684
|
-
|
|
9685
|
-
function
|
|
9548
|
+
U0();
|
|
9549
|
+
function IO() {
|
|
9686
9550
|
const s = `
|
|
9687
9551
|
float startCompression = 0.8;
|
|
9688
9552
|
float desaturation = 0.5;
|
|
@@ -9710,7 +9574,7 @@ vec3 NeutralToneMapping( vec3 color ) {
|
|
|
9710
9574
|
Zt.tonemapping_pars_fragment = Zt.tonemapping_pars_fragment.replace(o, s);
|
|
9711
9575
|
} else L() && console.error("Couldn't find NeutralToneMapping in ShaderChunk.tonemapping_pars_fragment");
|
|
9712
9576
|
}
|
|
9713
|
-
function
|
|
9577
|
+
function LO() {
|
|
9714
9578
|
const s = `
|
|
9715
9579
|
// 0: Default, 1: Golden, 2: Punchy
|
|
9716
9580
|
#define AGX_LOOK 0
|
|
@@ -9828,7 +9692,7 @@ vec3 AgXToneMapping( vec3 color ) {
|
|
|
9828
9692
|
Zt.tonemapping_pars_fragment = Zt.tonemapping_pars_fragment.replace(o, s);
|
|
9829
9693
|
} else L() && console.error("Couldn't find AgXToneMapping in ShaderChunk.tonemapping_pars_fragment");
|
|
9830
9694
|
}
|
|
9831
|
-
function
|
|
9695
|
+
function z0(s) {
|
|
9832
9696
|
if (typeof s == "string")
|
|
9833
9697
|
switch (s = s.toLowerCase(), s) {
|
|
9834
9698
|
case "none":
|
|
@@ -9863,7 +9727,7 @@ var mc;
|
|
|
9863
9727
|
}
|
|
9864
9728
|
s.getAttributeAndCheckFalsey = i;
|
|
9865
9729
|
})(mc || (mc = {}));
|
|
9866
|
-
async function
|
|
9730
|
+
async function DO(s) {
|
|
9867
9731
|
if (!globalThis.QRCode) {
|
|
9868
9732
|
const l = "https://cdn.jsdelivr.net/gh/davidshimjs/qrcodejs@gh-pages/qrcode.min.js";
|
|
9869
9733
|
let c = document.head.querySelector(`script[src="${l}"]`);
|
|
@@ -9885,7 +9749,7 @@ async function zO(s) {
|
|
|
9885
9749
|
n < 40 ? r = Math.floor(n / 4) / n : r = Math.floor(n / 6) / n;
|
|
9886
9750
|
const a = Math.floor(n / 20) / n;
|
|
9887
9751
|
try {
|
|
9888
|
-
const l = await
|
|
9752
|
+
const l = await jO(o, { showLogo: s.showLogo, logoSize: r, logoPadding: a }).catch((c) => {
|
|
9889
9753
|
});
|
|
9890
9754
|
l && (t.innerHTML = "", t.append(l));
|
|
9891
9755
|
} catch {
|
|
@@ -9904,7 +9768,7 @@ async function zO(s) {
|
|
|
9904
9768
|
}
|
|
9905
9769
|
return t;
|
|
9906
9770
|
}
|
|
9907
|
-
async function
|
|
9771
|
+
async function jO(s, e) {
|
|
9908
9772
|
if (!s) return;
|
|
9909
9773
|
const t = 8, i = 20, n = e.logoPadding || 1 / 32, o = "transparent", r = 0, a = new Image(), l = document.querySelector("needle-engine");
|
|
9910
9774
|
l || console.debug("[QR Code] No web component found");
|
|
@@ -9947,16 +9811,16 @@ async function NO(s, e) {
|
|
|
9947
9811
|
const fm = "Material Symbols Outlined";
|
|
9948
9812
|
function Ft(s) {
|
|
9949
9813
|
const e = document.createElement("span");
|
|
9950
|
-
return e.style.maxWidth = "48px", e.style.maxHeight = "48px", e.style.overflow = "hidden", e.classList.add("material-symbols-outlined", "notranslate"), e.setAttribute("translate", "no"), e.innerText = s, e.style.visibility = "hidden", e.style.userSelect = "none", e.setAttribute("role", "img"), e.setAttribute("aria-label", s + " icon"), e.setAttribute("aria-hidden", "true"),
|
|
9814
|
+
return e.style.maxWidth = "48px", e.style.maxHeight = "48px", e.style.overflow = "hidden", e.classList.add("material-symbols-outlined", "notranslate"), e.setAttribute("translate", "no"), e.innerText = s, e.style.visibility = "hidden", e.style.userSelect = "none", e.setAttribute("role", "img"), e.setAttribute("aria-label", s + " icon"), e.setAttribute("aria-hidden", "true"), kg(fm).then((t) => {
|
|
9951
9815
|
t ? e.style.visibility = "" : s === "more_vert" ? (e.style.visibility = "", e.innerText = "More") : e.style.display = "none";
|
|
9952
9816
|
}), e;
|
|
9953
9817
|
}
|
|
9954
|
-
function
|
|
9818
|
+
function BO(s) {
|
|
9955
9819
|
return s.classList?.contains("material-symbols-outlined") || !1;
|
|
9956
9820
|
}
|
|
9957
9821
|
const Bh = /* @__PURE__ */ new Map();
|
|
9958
9822
|
async function q_(s) {
|
|
9959
|
-
if (await
|
|
9823
|
+
if (await kg(fm), Bh.has(s))
|
|
9960
9824
|
return Bh.get(s);
|
|
9961
9825
|
const e = document.createElement("canvas"), t = 48;
|
|
9962
9826
|
e.width = t, e.height = t;
|
|
@@ -9968,15 +9832,15 @@ async function q_(s) {
|
|
|
9968
9832
|
}
|
|
9969
9833
|
return Bh.set(s, null), null;
|
|
9970
9834
|
}
|
|
9971
|
-
const
|
|
9972
|
-
async function
|
|
9835
|
+
const Zf = /* @__PURE__ */ new Map();
|
|
9836
|
+
async function kg(s, e = 5, t = 0) {
|
|
9973
9837
|
document.fonts.check(`1em '${s}'`) || await document.fonts.ready;
|
|
9974
|
-
const n =
|
|
9975
|
-
|
|
9838
|
+
const n = Zf.get(s) || document.fonts.load(`1em '${s}'`).then((r) => r?.length > 0).finally(() => {
|
|
9839
|
+
Zf.delete(s);
|
|
9976
9840
|
});
|
|
9977
|
-
return
|
|
9841
|
+
return Zf.set(s, n), await n ? !0 : t < e ? new Promise((r) => {
|
|
9978
9842
|
setTimeout(() => {
|
|
9979
|
-
r(
|
|
9843
|
+
r(kg(s, e, t + 1));
|
|
9980
9844
|
}, 1e3);
|
|
9981
9845
|
}) : !1;
|
|
9982
9846
|
}
|
|
@@ -10103,7 +9967,7 @@ class pn {
|
|
|
10103
9967
|
n.style.pointerEvents = "none", n.style.transition = "opacity 0.2s", n.style.opacity = "0", setTimeout(() => n.parentNode?.removeChild(n), 500), window.removeEventListener("click", a), window.removeEventListener("resize", a), window.removeEventListener("scroll", a);
|
|
10104
9968
|
}
|
|
10105
9969
|
async function l() {
|
|
10106
|
-
const h = await
|
|
9970
|
+
const h = await DO({
|
|
10107
9971
|
text: t.qrButtonUrl,
|
|
10108
9972
|
width: 200,
|
|
10109
9973
|
height: 200
|
|
@@ -10115,14 +9979,14 @@ class pn {
|
|
|
10115
9979
|
}, { once: !0 }), i;
|
|
10116
9980
|
}
|
|
10117
9981
|
hideElementDuringXRSession(e) {
|
|
10118
|
-
|
|
9982
|
+
ug((t) => {
|
|
10119
9983
|
e["previous-display"] = e.style.display, e.style.display = "none";
|
|
10120
|
-
}),
|
|
9984
|
+
}), s0((t) => {
|
|
10121
9985
|
e["previous-display"] != null && (e.style.display = e["previous-display"]);
|
|
10122
9986
|
});
|
|
10123
9987
|
}
|
|
10124
9988
|
}
|
|
10125
|
-
function
|
|
9989
|
+
function Gd(s, e) {
|
|
10126
9990
|
const t = e?.element || document.head, i = Array.from(t.querySelectorAll(`link[rel=stylesheet][href*='${s}']`));
|
|
10127
9991
|
if (i.length <= 0) {
|
|
10128
9992
|
const n = document.createElement("link");
|
|
@@ -10132,16 +9996,16 @@ function qd(s, e) {
|
|
|
10132
9996
|
for (let n = 0; n < i.length; n++)
|
|
10133
9997
|
e?.loadedCallback && i[n].addEventListener("load", e.loadedCallback);
|
|
10134
9998
|
}
|
|
10135
|
-
function
|
|
10136
|
-
|
|
9999
|
+
function N0() {
|
|
10000
|
+
Gd("https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap");
|
|
10137
10001
|
}
|
|
10138
|
-
const pm = "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0&display=block",
|
|
10139
|
-
class
|
|
10002
|
+
const pm = "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0&display=block", qd = "needle-logo-element";
|
|
10003
|
+
class $0 extends HTMLElement {
|
|
10140
10004
|
static get elementName() {
|
|
10141
|
-
return
|
|
10005
|
+
return qd;
|
|
10142
10006
|
}
|
|
10143
10007
|
static create() {
|
|
10144
|
-
return document.createElement(
|
|
10008
|
+
return document.createElement(qd);
|
|
10145
10009
|
}
|
|
10146
10010
|
constructor() {
|
|
10147
10011
|
super(), this._root = this.attachShadow({ mode: "closed" });
|
|
@@ -10207,9 +10071,9 @@ class W0 extends HTMLElement {
|
|
|
10207
10071
|
e === "full" ? (this.logoElement.src = x_, this.logoElement.classList.remove("with-text"), this.logoElement.classList.remove("compact")) : (this.logoElement.src = Ha, this.logoElement.classList.add("with-text"), this.logoElement.classList.add("compact"));
|
|
10208
10072
|
}
|
|
10209
10073
|
}
|
|
10210
|
-
customElements.get(
|
|
10211
|
-
const
|
|
10212
|
-
class
|
|
10074
|
+
customElements.get(qd) || customElements.define(qd, $0);
|
|
10075
|
+
const Jf = x("debugspatialmenu");
|
|
10076
|
+
class FO {
|
|
10213
10077
|
_context;
|
|
10214
10078
|
needleMenu;
|
|
10215
10079
|
htmlButtonsMap = /* @__PURE__ */ new Map();
|
|
@@ -10218,7 +10082,7 @@ class WO {
|
|
|
10218
10082
|
this._context = e, this._context.pre_render_callbacks.push(this.preRender), this.needleMenu = t;
|
|
10219
10083
|
const i = this.needleMenu.shadowRoot?.querySelector(".options");
|
|
10220
10084
|
i ? new MutationObserver((o) => {
|
|
10221
|
-
if (this.enabled && !(this._context.isInXR == !1 && !
|
|
10085
|
+
if (this.enabled && !(this._context.isInXR == !1 && !Jf))
|
|
10222
10086
|
for (const r of o)
|
|
10223
10087
|
r.type === "childList" && (r.addedNodes.forEach((a) => {
|
|
10224
10088
|
this.createButtonFromHTMLNode(a);
|
|
@@ -10257,7 +10121,7 @@ class WO {
|
|
|
10257
10121
|
this.menu?.removeFromParent();
|
|
10258
10122
|
return;
|
|
10259
10123
|
}
|
|
10260
|
-
|
|
10124
|
+
Jf && D.isDesktop() && this.updateMenu();
|
|
10261
10125
|
const e = this._context.xr;
|
|
10262
10126
|
if (!(e?.running && (e?.isPassThrough || e?.isVR))) {
|
|
10263
10127
|
this._wasInXR && (this._wasInXR = !1, this.onExitXR());
|
|
@@ -10295,7 +10159,7 @@ class WO {
|
|
|
10295
10159
|
const t = this._context.mainCamera, n = this._context.xr?.rigScale || 1;
|
|
10296
10160
|
if (t) {
|
|
10297
10161
|
const o = t.worldPosition, r = t.worldForward.multiplyScalar(-1), a = r.y > 0.6, l = r.y > 0.4, c = (e.visible ? l : a) || this.userRequestedMenu, h = !e.visible && c;
|
|
10298
|
-
e.visible = c || D.isDesktop() &&
|
|
10162
|
+
e.visible = c || D.isDesktop() && Jf, r.multiplyScalar(3 * n), o.add(r), h && (e.position.copy(this._menuTarget.position), e.position.y += 0.25, this._menuTarget.position.copy(e.position), this.positionFilter.reset(e.position), e.quaternion.copy(this._menuTarget.quaternion), this.markDirty());
|
|
10299
10163
|
const f = this._menuTarget.position.distanceTo(o);
|
|
10300
10164
|
(h || f > 1.5 * n) && (this.ensureRenderOnTop(this.menu), this._menuTarget.position.copy(o), this._context.scene.add(this._menuTarget), Su(this._menuTarget, this._context.mainCamera, !0, !0), this._menuTarget.removeFromParent()), this.positionFilter.filter(this._menuTarget.position, e.position, this._context.time.time), this.menu?.quaternion.slerp(this._menuTarget.quaternion, this._context.time.deltaTime * 5), this.menu?.scale.setScalar(n);
|
|
10301
10165
|
}
|
|
@@ -10424,10 +10288,10 @@ class WO {
|
|
|
10424
10288
|
});
|
|
10425
10289
|
i.add(n), i["needle:use_eventsystem"] = !0;
|
|
10426
10290
|
const o = new X_(this._context, () => t.click());
|
|
10427
|
-
return Ea(i, o), new
|
|
10291
|
+
return Ea(i, o), new UO(this, e, t, i, n);
|
|
10428
10292
|
}
|
|
10429
10293
|
}
|
|
10430
|
-
class
|
|
10294
|
+
class UO {
|
|
10431
10295
|
menu;
|
|
10432
10296
|
root;
|
|
10433
10297
|
htmlbutton;
|
|
@@ -10454,7 +10318,7 @@ class VO {
|
|
|
10454
10318
|
updateText() {
|
|
10455
10319
|
let e = "", t = "";
|
|
10456
10320
|
this.htmlbutton.childNodes.forEach((i) => {
|
|
10457
|
-
i.nodeType === Node.TEXT_NODE ? e += i.textContent : i instanceof HTMLElement &&
|
|
10321
|
+
i.nodeType === Node.TEXT_NODE ? e += i.textContent : i instanceof HTMLElement && BO(i) && i.textContent && (t = i.textContent);
|
|
10458
10322
|
}), this._lastText !== e && (this._lastText = e, this.spatialText.name = e, this.spatialText.set({ textContent: e }), this.menu.markDirty()), e.length <= 0 ? this.spatialText.parent && (this.spatialText.removeFromParent(), this.menu.markDirty()) : this.spatialText.parent || (this.spatialContainer.add(this.spatialText), this.menu.markDirty()), t && this.createIcon(t);
|
|
10459
10323
|
}
|
|
10460
10324
|
_lastTexture;
|
|
@@ -10542,7 +10406,7 @@ let wo = class {
|
|
|
10542
10406
|
_menu;
|
|
10543
10407
|
_spatialMenu;
|
|
10544
10408
|
constructor(e) {
|
|
10545
|
-
this._menu = Tu.getOrCreate(e.domElement, e), this._context = e, this._spatialMenu = new
|
|
10409
|
+
this._menu = Tu.getOrCreate(e.domElement, e), this._context = e, this._spatialMenu = new FO(e, this._menu), window.addEventListener("message", this.onPostMessage), ug(this.onStartXR);
|
|
10546
10410
|
}
|
|
10547
10411
|
/** @ignore internal method */
|
|
10548
10412
|
onDestroy() {
|
|
@@ -11055,12 +10919,12 @@ class Tu extends HTMLElement {
|
|
|
11055
10919
|
</div>
|
|
11056
10920
|
`;
|
|
11057
10921
|
const t = this.attachShadow({ mode: "open" });
|
|
11058
|
-
|
|
10922
|
+
N0(), Gd(pm, { loadedCallback: () => {
|
|
11059
10923
|
this.handleSizeChange();
|
|
11060
|
-
} }),
|
|
10924
|
+
} }), Gd(pm, { element: t });
|
|
11061
10925
|
const i = e.content.cloneNode(!0);
|
|
11062
10926
|
t?.appendChild(i), this.root = t.querySelector("#root"), this.wrapper = this.root?.querySelector(".wrapper"), this.options = this.root?.querySelector(".options.main-container"), this.optionsCompactMode = this.root?.querySelector(".options.compact-only"), this.logoContainer = this.root?.querySelector(".logo"), this.compactMenuButton = this.root?.querySelector(".compact-menu-button"), this.compactMenuButton.append(Ft("more_vert")), this.foldout = this.root?.querySelector(".foldout"), this.root?.appendChild(this.wrapper), this.wrapper.classList.add("wrapper");
|
|
11063
|
-
const n =
|
|
10927
|
+
const n = $0.create();
|
|
11064
10928
|
n.setType("compact"), n.style.minHeight = "1rem", this.logoContainer.append(n), this.logoContainer.addEventListener("click", () => {
|
|
11065
10929
|
globalThis.open("https://needle.tools", "_blank");
|
|
11066
10930
|
});
|
|
@@ -11358,6 +11222,142 @@ class Tu extends HTMLElement {
|
|
|
11358
11222
|
}
|
|
11359
11223
|
}
|
|
11360
11224
|
customElements.get(dr) || customElements.define(dr, Tu);
|
|
11225
|
+
function zO(s) {
|
|
11226
|
+
const e = s;
|
|
11227
|
+
return !!(e.parser && e.parser.json);
|
|
11228
|
+
}
|
|
11229
|
+
var Og = /* @__PURE__ */ ((s) => (s[s.None = 0] = "None", s[s.DontExport = 1] = "DontExport", s))(Og || {});
|
|
11230
|
+
const NO = /* @__PURE__ */ Symbol("component-name");
|
|
11231
|
+
function W0(s) {
|
|
11232
|
+
return s && s.isComponent;
|
|
11233
|
+
}
|
|
11234
|
+
const WD = /* @__PURE__ */ Symbol("object"), ep = new Yi(() => new _(), 20);
|
|
11235
|
+
class $O {
|
|
11236
|
+
_point;
|
|
11237
|
+
_normal;
|
|
11238
|
+
_tangentVelocity;
|
|
11239
|
+
/** the distance of the collision point */
|
|
11240
|
+
distance;
|
|
11241
|
+
/** the impulse velocity */
|
|
11242
|
+
impulse;
|
|
11243
|
+
friction;
|
|
11244
|
+
/** worldspace point */
|
|
11245
|
+
get point() {
|
|
11246
|
+
return ep.get().set(this._point.x, this._point.y, this._point.z);
|
|
11247
|
+
}
|
|
11248
|
+
/** worldspace normal */
|
|
11249
|
+
get normal() {
|
|
11250
|
+
return ep.get().set(this._normal.x, this._normal.y, this._normal.z);
|
|
11251
|
+
}
|
|
11252
|
+
/** worldspace tangent */
|
|
11253
|
+
get tangentVelocity() {
|
|
11254
|
+
return ep.get().set(this._tangentVelocity.x, this._tangentVelocity.y, this._tangentVelocity.z);
|
|
11255
|
+
}
|
|
11256
|
+
/** @internal */
|
|
11257
|
+
constructor(e, t, i, n, o, r) {
|
|
11258
|
+
this._point = e, this.distance = t, this._normal = i, this.impulse = n, this.friction = o, this._tangentVelocity = r;
|
|
11259
|
+
}
|
|
11260
|
+
}
|
|
11261
|
+
class WO {
|
|
11262
|
+
/** The contact points of this collision. Contains information about positions, normals, distance, friction, impulse... */
|
|
11263
|
+
contacts;
|
|
11264
|
+
/** @internal */
|
|
11265
|
+
constructor(e, t, i) {
|
|
11266
|
+
this.me = e, this._collider = t, this._gameObject = t.gameObject, this.contacts = i;
|
|
11267
|
+
}
|
|
11268
|
+
/** the gameobject this collision event belongs to (e.g. if onCollisionEnter is called then `me` is the same as `this.gameObject`) */
|
|
11269
|
+
me;
|
|
11270
|
+
_collider;
|
|
11271
|
+
/** the other collider the collision happened with */
|
|
11272
|
+
get collider() {
|
|
11273
|
+
return this._collider;
|
|
11274
|
+
}
|
|
11275
|
+
_gameObject;
|
|
11276
|
+
/** the other object the collision happened with */
|
|
11277
|
+
get gameObject() {
|
|
11278
|
+
return this._gameObject;
|
|
11279
|
+
}
|
|
11280
|
+
/** the other rigidbody we hit, null if none attached */
|
|
11281
|
+
get rigidBody() {
|
|
11282
|
+
return this.collider?.attachedRigidbody;
|
|
11283
|
+
}
|
|
11284
|
+
}
|
|
11285
|
+
class VO {
|
|
11286
|
+
object;
|
|
11287
|
+
collider;
|
|
11288
|
+
constructor(e, t) {
|
|
11289
|
+
this.object = e, this.collider = t;
|
|
11290
|
+
}
|
|
11291
|
+
}
|
|
11292
|
+
class Xd {
|
|
11293
|
+
constructor(e) {
|
|
11294
|
+
this.context = e, this.root.style.cssText = `
|
|
11295
|
+
position: absolute;
|
|
11296
|
+
width: 1px; height: 1px;
|
|
11297
|
+
padding: 0; margin: -1px;
|
|
11298
|
+
overflow: hidden;
|
|
11299
|
+
clip: rect(0, 0, 0, 0);
|
|
11300
|
+
white-space: nowrap;
|
|
11301
|
+
border: 0;
|
|
11302
|
+
`, this.root.setAttribute("role", "region"), this.root.setAttribute("aria-label", "3D Needle Engine scene"), this.liveRegion.setAttribute("aria-live", "polite"), this.liveRegion.setAttribute("aria-atomic", "true"), this.liveRegion.setAttribute("role", "status"), this.root.appendChild(this.liveRegion), this.enabled = !0;
|
|
11303
|
+
}
|
|
11304
|
+
static _managers = /* @__PURE__ */ new WeakMap();
|
|
11305
|
+
/** Returns the {@link AccessibilityManager} associated with the given context or component. */
|
|
11306
|
+
static get(e) {
|
|
11307
|
+
return W0(e) ? this._managers.get(e.context) : this._managers.get(e);
|
|
11308
|
+
}
|
|
11309
|
+
_enabled;
|
|
11310
|
+
/** Enables or disables the accessibility overlay. When disabled, the overlay DOM is removed. */
|
|
11311
|
+
set enabled(e) {
|
|
11312
|
+
e !== this._enabled && (this._enabled = e, e ? (Xd._managers.set(this.context, this), (this.context.domElement.shadowRoot || this.context.domElement).prepend(this.root)) : this.root.remove());
|
|
11313
|
+
}
|
|
11314
|
+
/** Removes all tracked accessibility elements, keeping only the live region. */
|
|
11315
|
+
clear() {
|
|
11316
|
+
this.root.childNodes.forEach((e) => e.remove()), this.root.appendChild(this.liveRegion);
|
|
11317
|
+
}
|
|
11318
|
+
/** Removes the overlay from the DOM and unregisters this manager from the context. */
|
|
11319
|
+
dispose() {
|
|
11320
|
+
this.root.remove(), Xd._managers.delete(this.context);
|
|
11321
|
+
}
|
|
11322
|
+
root = document.createElement("div");
|
|
11323
|
+
liveRegion = document.createElement("div");
|
|
11324
|
+
treeElements = /* @__PURE__ */ new WeakMap();
|
|
11325
|
+
/**
|
|
11326
|
+
* Creates or updates the accessible DOM element for a 3D object or component.
|
|
11327
|
+
* @param obj - The scene object or component to represent.
|
|
11328
|
+
* @param data - Partial accessibility data (role, label, hidden, busy) to apply.
|
|
11329
|
+
*/
|
|
11330
|
+
updateElement(e, t) {
|
|
11331
|
+
let i = this.treeElements.get(e);
|
|
11332
|
+
i || (i = document.createElement("div"), this.treeElements.set(e, i), this.root.appendChild(i), typeof t == "object" && (t.role && i.setAttribute("role", t.role), t.label && i.setAttribute("aria-label", t.label), t.hidden !== void 0 && i.setAttribute("aria-hidden", String(t.hidden)), t.busy !== void 0 && i.setAttribute("aria-busy", String(t.busy))));
|
|
11333
|
+
}
|
|
11334
|
+
/** Moves keyboard focus to the accessible element representing the given object. */
|
|
11335
|
+
focus(e) {
|
|
11336
|
+
const t = this.treeElements.get(e);
|
|
11337
|
+
t && t.focus();
|
|
11338
|
+
}
|
|
11339
|
+
/** Removes keyboard focus from the accessible element representing the given object. */
|
|
11340
|
+
unfocus(e) {
|
|
11341
|
+
const t = this.treeElements.get(e);
|
|
11342
|
+
t && t.blur();
|
|
11343
|
+
}
|
|
11344
|
+
/**
|
|
11345
|
+
* Announces a hover event to screen readers via the ARIA live region.
|
|
11346
|
+
* @param obj - The hovered object (used to look up its label if `text` is not provided).
|
|
11347
|
+
* @param text - Optional text to announce. Falls back to the element's `aria-label`.
|
|
11348
|
+
*/
|
|
11349
|
+
hover(e, t) {
|
|
11350
|
+
const i = this.treeElements.get(e);
|
|
11351
|
+
this.liveRegion.textContent = t || i?.getAttribute("aria-label") || "";
|
|
11352
|
+
}
|
|
11353
|
+
/** Removes the accessible DOM element for the given object and stops tracking it. */
|
|
11354
|
+
removeElement(e) {
|
|
11355
|
+
this.treeElements.get(e)?.remove(), this.treeElements.delete(e);
|
|
11356
|
+
}
|
|
11357
|
+
set liveRegionMode(e) {
|
|
11358
|
+
this.liveRegion.setAttribute("aria-live", e);
|
|
11359
|
+
}
|
|
11360
|
+
}
|
|
11361
11361
|
const Ze = x("debugcontext"), HO = x("stats"), GO = x("debugactive"), qO = x("debugframerate"), XO = x("debugcoroutine"), VD = {};
|
|
11362
11362
|
class HD {
|
|
11363
11363
|
name;
|
|
@@ -11732,7 +11732,7 @@ class N {
|
|
|
11732
11732
|
_isVisible = !1;
|
|
11733
11733
|
_stats = HO ? new CC() : null;
|
|
11734
11734
|
constructor(e) {
|
|
11735
|
-
this.name = e?.name || "", this.alias = e?.alias, this.domElement = e?.domElement || document.body, this.hash = e?.hash, e?.renderer && (this.renderer = e.renderer, this.isManagedExternally = !0), e?.runInBackground !== void 0 && (this.runInBackground = e.runInBackground), e?.scene ? this.scene = e.scene : this.scene = new Mi(), e?.camera && (this._mainCamera = e.camera), this.application = new Kn(this), this.time = new
|
|
11735
|
+
this.name = e?.name || "", this.alias = e?.alias, this.domElement = e?.domElement || document.body, this.hash = e?.hash, e?.renderer && (this.renderer = e.renderer, this.isManagedExternally = !0), e?.runInBackground !== void 0 && (this.runInBackground = e.runInBackground), e?.scene ? this.scene = e.scene : this.scene = new Mi(), e?.camera && (this._mainCamera = e.camera), this.application = new Kn(this), this.time = new AO(), this.input = new CP(this), this.physics = new Ic(this), this.connection = new UP(this), this.assets = new hk(), this.sceneLighting = new RO(this), this.addressables = new dO(this), this.lightmaps = new bO(this), this.players = new SO(this), this.menu = new wo(this), this.lodsManager = new vO(this), this.animations = new gO(this), this.accessibility = new Xd(this);
|
|
11736
11736
|
const t = () => this._needsUpdateSize = !0;
|
|
11737
11737
|
window.addEventListener("resize", t), this._disposeCallbacks.push(() => window.removeEventListener("resize", t));
|
|
11738
11738
|
const i = new ResizeObserver((n) => this._needsUpdateSize = !0);
|
|
@@ -12068,7 +12068,7 @@ Possible solutions:
|
|
|
12068
12068
|
}
|
|
12069
12069
|
}), h ? this.setCurrentCamera(h) : !pe.dispatchCallback(ue.MissingCamera, this, { files: a }) && !this.mainCamera && !this.isManagedExternally && console.warn("Missing camera in main scene", this);
|
|
12070
12070
|
}
|
|
12071
|
-
this.input.bindEvents(), N.Current = this,
|
|
12071
|
+
this.input.bindEvents(), N.Current = this, Nd(this), this.physics.engine && (this.physics.engine?.step(0), this.physics.engine?.postStep()), !this.isManagedExternally && this.composer && this.mainCamera, this._needsUpdateSize = !0, this._stats && (this._stats.showPanel(0), this._stats.dom.style.position = "absolute", this.domElement.shadowRoot?.appendChild(this._stats.dom)), Ze && qp(this.scene, !0), this.targetFrameRate === void 0 ? (Ze && console.warn("No target framerate set, using default", N.DefaultTargetFrameRate), this.targetFrameRate = N._defaultTargetFramerate) : Ze && console.log("Target framerate set to", this.targetFrameRate), this._dispatchReadyAfterFrame = !0;
|
|
12072
12072
|
const l = pe.dispatchCallback(ue.ContextCreated, this, { files: a });
|
|
12073
12073
|
if (l) {
|
|
12074
12074
|
const h = this.domElement;
|
|
@@ -12150,7 +12150,7 @@ Possible solutions:
|
|
|
12150
12150
|
_renderlooperrors = 0;
|
|
12151
12151
|
/** Performs a full update step including script callbacks, rendering (unless isManagedExternally is set to false) and post render callbacks */
|
|
12152
12152
|
update(e, t) {
|
|
12153
|
-
if (t === void 0 && (t = null), L() || Ze ||
|
|
12153
|
+
if (t === void 0 && (t = null), L() || Ze || gk())
|
|
12154
12154
|
try {
|
|
12155
12155
|
this.internalStep(e, t), this._renderlooperrors = 0;
|
|
12156
12156
|
} catch (i) {
|
|
@@ -12235,7 +12235,7 @@ Possible solutions:
|
|
|
12235
12235
|
this._accumulatedTime = 0;
|
|
12236
12236
|
}
|
|
12237
12237
|
if (this._stats?.begin(), N.Current = this, this.onHandlePaused()) return !1;
|
|
12238
|
-
for (N.Current = this, this.time.update(), qO && console.log("FPS", this.time.smoothedFps.toFixed(0)),
|
|
12238
|
+
for (N.Current = this, this.time.update(), qO && console.log("FPS", this.time.smoothedFps.toFixed(0)), Nd(this), hd(this.scene), _0(this), Rn(
|
|
12239
12239
|
this,
|
|
12240
12240
|
-1
|
|
12241
12241
|
/* Start */
|
|
@@ -12325,7 +12325,7 @@ Possible solutions:
|
|
|
12325
12325
|
return this.physics.engine.postStep(), !0;
|
|
12326
12326
|
}
|
|
12327
12327
|
internalOnRender() {
|
|
12328
|
-
this.isManagedExternally || (
|
|
12328
|
+
this.isManagedExternally || (vk(this), this._currentFrameEvent = -1, $y.camera = this.mainCamera, $y.update(), this.renderNow(), this._currentFrameEvent = 4);
|
|
12329
12329
|
}
|
|
12330
12330
|
internalOnAfterRender() {
|
|
12331
12331
|
if (this.isVisibleToUser || this.runInBackground) {
|
|
@@ -12375,7 +12375,7 @@ Target Framerate: ` + this.targetFrameRate
|
|
|
12375
12375
|
renderNow(e) {
|
|
12376
12376
|
if (!e && (e = this.mainCamera, !e))
|
|
12377
12377
|
return !1;
|
|
12378
|
-
if (this.handleRendererContextLost(), this._isRendering = !0, this.renderRequiredTextures(), this.renderer.toneMapping !== Ed &&
|
|
12378
|
+
if (this.handleRendererContextLost(), this._isRendering = !0, this.renderRequiredTextures(), this.renderer.toneMapping !== Ed && U0(), this.composer && !this.isInXR) {
|
|
12379
12379
|
e && "setMainCamera" in this.composer && this.composer.passes[0]?.mainCamera != e && this.composer.setMainCamera(e);
|
|
12380
12380
|
const t = this.renderer.getClearColor(this._tempClearColor), i = this.renderer.getClearAlpha();
|
|
12381
12381
|
this._tempClearColor2.copy(t), this.renderer.setClearColor(t.convertSRGBToLinear(), this.renderer.getClearAlpha()), this.composer.render(this.time.deltaTime), this.renderer.setClearColor(this._tempClearColor2, i);
|
|
@@ -12443,7 +12443,7 @@ Target Framerate: ` + this.targetFrameRate
|
|
|
12443
12443
|
} else if (c instanceof Promise) {
|
|
12444
12444
|
const h = c;
|
|
12445
12445
|
o.chained || (o.chained = []);
|
|
12446
|
-
const d =
|
|
12446
|
+
const d = yO(h);
|
|
12447
12447
|
o.chained?.push(d);
|
|
12448
12448
|
continue;
|
|
12449
12449
|
}
|
|
@@ -12960,7 +12960,7 @@ function KD(s) {
|
|
|
12960
12960
|
}
|
|
12961
12961
|
d.onAfterHotReloadFields && d.onAfterHotReloadFields();
|
|
12962
12962
|
} finally {
|
|
12963
|
-
p && y &&
|
|
12963
|
+
p && y && _g(f, y), p && g && (f.enabled = !0);
|
|
12964
12964
|
}
|
|
12965
12965
|
}
|
|
12966
12966
|
}
|
|
@@ -12992,7 +12992,7 @@ class C extends M {
|
|
|
12992
12992
|
* @param processStart Whether to process the start callbacks if being activated
|
|
12993
12993
|
*/
|
|
12994
12994
|
static setActive(e, t, i = !0) {
|
|
12995
|
-
e && (pd(e, t), hd(e), t && i &&
|
|
12995
|
+
e && (pd(e, t), hd(e), t && i && _0(N.Current, e));
|
|
12996
12996
|
}
|
|
12997
12997
|
/**
|
|
12998
12998
|
* Checks if the GameObject itself is active (same as go.visible)
|
|
@@ -13008,7 +13008,7 @@ class C extends M {
|
|
|
13008
13008
|
* @returns True if the GameObject is active in the hierarchy
|
|
13009
13009
|
*/
|
|
13010
13010
|
static isActiveInHierarchy(e) {
|
|
13011
|
-
return
|
|
13011
|
+
return oO(e);
|
|
13012
13012
|
}
|
|
13013
13013
|
/**
|
|
13014
13014
|
* Marks a GameObject to be rendered using instancing
|
|
@@ -13016,7 +13016,7 @@ class C extends M {
|
|
|
13016
13016
|
* @param instanced Whether the GameObject should use instanced rendering
|
|
13017
13017
|
*/
|
|
13018
13018
|
static markAsInstancedRendered(e, t) {
|
|
13019
|
-
|
|
13019
|
+
rO(e, t);
|
|
13020
13020
|
}
|
|
13021
13021
|
/**
|
|
13022
13022
|
* Checks if a GameObject is using instanced rendering
|
|
@@ -13024,7 +13024,7 @@ class C extends M {
|
|
|
13024
13024
|
* @returns True if the GameObject is using instanced rendering
|
|
13025
13025
|
*/
|
|
13026
13026
|
static isUsingInstancing(e) {
|
|
13027
|
-
return
|
|
13027
|
+
return Sg(e);
|
|
13028
13028
|
}
|
|
13029
13029
|
/**
|
|
13030
13030
|
* Executes a callback for all components of the provided type on the provided object and its children
|
|
@@ -13043,7 +13043,7 @@ class C extends M {
|
|
|
13043
13043
|
* @returns The newly created instance or null if creation failed
|
|
13044
13044
|
*/
|
|
13045
13045
|
static instantiateSynced(e, t) {
|
|
13046
|
-
return e ?
|
|
13046
|
+
return e ? x0(e, t) : null;
|
|
13047
13047
|
}
|
|
13048
13048
|
static instantiate(e, t = null) {
|
|
13049
13049
|
return "isAssetReference" in e, Rr(e, t);
|
|
@@ -13080,7 +13080,7 @@ class C extends M {
|
|
|
13080
13080
|
return;
|
|
13081
13081
|
}
|
|
13082
13082
|
i || (i = N.Current), t.add(e), pd(e, !0), hd(e), i ? C.foreachComponent(e, (n) => {
|
|
13083
|
-
|
|
13083
|
+
_g(n, i), !n.__internalDidAwakeAndStart && i.new_script_start.includes(n) === !1 && i.new_script_start.push(n);
|
|
13084
13084
|
}, !0) : console.warn("Missing context");
|
|
13085
13085
|
}
|
|
13086
13086
|
}
|
|
@@ -13090,7 +13090,7 @@ class C extends M {
|
|
|
13090
13090
|
*/
|
|
13091
13091
|
static remove(e) {
|
|
13092
13092
|
e && (e.parent?.remove(e), pd(e, !1), hd(e), C.foreachComponent(e, (t) => {
|
|
13093
|
-
|
|
13093
|
+
yk(t);
|
|
13094
13094
|
}, !0));
|
|
13095
13095
|
}
|
|
13096
13096
|
/**
|
|
@@ -13146,7 +13146,7 @@ class C extends M {
|
|
|
13146
13146
|
* @returns The removed component
|
|
13147
13147
|
*/
|
|
13148
13148
|
static removeComponent(e) {
|
|
13149
|
-
return
|
|
13149
|
+
return T0(e.gameObject, e), e;
|
|
13150
13150
|
}
|
|
13151
13151
|
/**
|
|
13152
13152
|
* Gets or adds a component of the specified type
|
|
@@ -13183,7 +13183,7 @@ class C extends M {
|
|
|
13183
13183
|
* @returns The found GameObject or Component, or null/undefined if not found
|
|
13184
13184
|
*/
|
|
13185
13185
|
static findByGuid(e, t) {
|
|
13186
|
-
return
|
|
13186
|
+
return L0(e, t);
|
|
13187
13187
|
}
|
|
13188
13188
|
/**
|
|
13189
13189
|
* Finds the first object of the specified component type in the scene
|
|
@@ -13203,7 +13203,7 @@ class C extends M {
|
|
|
13203
13203
|
*/
|
|
13204
13204
|
static findObjectsOfType(e, t) {
|
|
13205
13205
|
const i = [];
|
|
13206
|
-
return
|
|
13206
|
+
return tO(e, i, t), i;
|
|
13207
13207
|
}
|
|
13208
13208
|
/**
|
|
13209
13209
|
* Gets a component of the specified type in the gameObject's children hierarchy
|
|
@@ -13232,7 +13232,7 @@ class C extends M {
|
|
|
13232
13232
|
* @returns The first matching component if found, otherwise null
|
|
13233
13233
|
*/
|
|
13234
13234
|
static getComponentInParent(e, t) {
|
|
13235
|
-
return
|
|
13235
|
+
return Vd(e, t);
|
|
13236
13236
|
}
|
|
13237
13237
|
/**
|
|
13238
13238
|
* Gets all components of the specified type in the gameObject's parent hierarchy
|
|
@@ -13242,7 +13242,7 @@ class C extends M {
|
|
|
13242
13242
|
* @returns Array of components
|
|
13243
13243
|
*/
|
|
13244
13244
|
static getComponentsInParent(e, t, i = null) {
|
|
13245
|
-
return
|
|
13245
|
+
return wg(e, t, i);
|
|
13246
13246
|
}
|
|
13247
13247
|
/**
|
|
13248
13248
|
* Gets all components on the gameObject
|
|
@@ -13276,7 +13276,7 @@ class R {
|
|
|
13276
13276
|
/**
|
|
13277
13277
|
* Get the original component type name before minification (available if the component is registered in the TypeStore)
|
|
13278
13278
|
*/
|
|
13279
|
-
get [
|
|
13279
|
+
get [NO]() {
|
|
13280
13280
|
return P.getKey(this.constructor) || void 0;
|
|
13281
13281
|
}
|
|
13282
13282
|
__context;
|
|
@@ -13512,7 +13512,7 @@ class R {
|
|
|
13512
13512
|
}
|
|
13513
13513
|
/** @internal */
|
|
13514
13514
|
__internalDestroy() {
|
|
13515
|
-
this.__destroyed || (this.__destroyed = !0, this.__didAwake && (this.onDestroy?.call(this), this.dispatchEvent(new CustomEvent("destroyed", { detail: this }))),
|
|
13515
|
+
this.__destroyed || (this.__destroyed = !0, this.__didAwake && (this.onDestroy?.call(this), this.dispatchEvent(new CustomEvent("destroyed", { detail: this }))), eO(this), tb() && sM(this));
|
|
13516
13516
|
}
|
|
13517
13517
|
/**
|
|
13518
13518
|
* Controls whether this component is enabled
|
|
@@ -15075,7 +15075,7 @@ class vs extends Xn {
|
|
|
15075
15075
|
static _userSet = /* @__PURE__ */ new Set();
|
|
15076
15076
|
onBeforeRender() {
|
|
15077
15077
|
vs._userSet.clear();
|
|
15078
|
-
const e =
|
|
15078
|
+
const e = m0(this.texture, !0, null, vs._userSet);
|
|
15079
15079
|
for (const t of e)
|
|
15080
15080
|
t instanceof H && (t[ob] = t.visible, t.visible = !1);
|
|
15081
15081
|
}
|
|
@@ -15942,7 +15942,7 @@ let Je = fi;
|
|
|
15942
15942
|
new _();
|
|
15943
15943
|
new _();
|
|
15944
15944
|
const io = x("debugsync"), Bc = "STRS";
|
|
15945
|
-
|
|
15945
|
+
l0(Bc, _s.getRootAsSyncedTransformModel);
|
|
15946
15946
|
const Tn = new og();
|
|
15947
15947
|
function Z0(s, e, t = !0) {
|
|
15948
15948
|
Tn.clear();
|
|
@@ -16026,11 +16026,11 @@ class Zn extends R {
|
|
|
16026
16026
|
receivedDataCallback = null;
|
|
16027
16027
|
/** @internal */
|
|
16028
16028
|
awake() {
|
|
16029
|
-
io && console.log("new instance", this.guid, this), this._receivedDataBefore = !1, this._targetPosition = new _(), this._targetRotation = new V(), this.lastPosition = new _(), this.lastRotation = new V(), this.lastScale = new _(), this.rb = C.getComponentInChildren(this.gameObject, Je), this.rb && (this._wasKinematic = this.rb.isKinematic), this.receivedUpdate = !0, this._model = new
|
|
16029
|
+
io && console.log("new instance", this.guid, this), this._receivedDataBefore = !1, this._targetPosition = new _(), this._targetRotation = new V(), this.lastPosition = new _(), this.lastRotation = new V(), this.lastScale = new _(), this.rb = C.getComponentInChildren(this.gameObject, Je), this.rb && (this._wasKinematic = this.rb.isKinematic), this.receivedUpdate = !0, this._model = new c0(this.context.connection, this.guid), this.context.connection.isConnected && this.tryGetLastState(), this.joinedRoomCallback = this.tryGetLastState.bind(this), this.context.connection.beginListen(ie.JoinedRoom, this.joinedRoomCallback), this.receivedDataCallback = this.onReceivedData.bind(this), this.context.connection.beginListenBinary(Bc, this.receivedDataCallback);
|
|
16030
16030
|
}
|
|
16031
16031
|
/** @internal */
|
|
16032
16032
|
onDestroy() {
|
|
16033
|
-
this.syncDestroy &&
|
|
16033
|
+
this.syncDestroy && w0(this.guid, this.context.connection), this._model = null, this.context.connection.stopListen(ie.JoinedRoom, this.joinedRoomCallback), this.context.connection.stopListenBinary(Bc, this.receivedDataCallback);
|
|
16034
16034
|
}
|
|
16035
16035
|
/**
|
|
16036
16036
|
* Attempts to retrieve and apply the last known network state for this transform
|
|
@@ -16978,7 +16978,7 @@ class hi extends R {
|
|
|
16978
16978
|
}
|
|
16979
16979
|
this.propagate(e, (a) => {
|
|
16980
16980
|
const l = a;
|
|
16981
|
-
l.interactable !== !1 && (!l.activeAndEnabled || !l.enabled || (l.onPointerEnter && o && this.handlePointerEnter(l, t), t.isDown && l.onPointerDown && (l.onPointerDown(t), n?.handlers.add(l), this.handlePointerCapture(t, l)), l.onPointerMove && (r && l.onPointerMove(t), this.handlePointerCapture(t, l)), t.isUp && (l.onPointerUp && (this.invokeOnPointerUp(t, l), n?.handlers.delete(l)), l.onPointerExit && t.event?.pointerType ===
|
|
16981
|
+
l.interactable !== !1 && (!l.activeAndEnabled || !l.enabled || (l.onPointerEnter && o && this.handlePointerEnter(l, t), t.isDown && l.onPointerDown && (l.onPointerDown(t), n?.handlers.add(l), this.handlePointerCapture(t, l)), l.onPointerMove && (r && l.onPointerMove(t), this.handlePointerCapture(t, l)), t.isUp && (l.onPointerUp && (this.invokeOnPointerUp(t, l), n?.handlers.delete(l)), l.onPointerExit && t.event?.pointerType === fg.Touch && (this.handlePointerExit(l, t), this.hoveredByID.delete(t.pointerId))), t.isClick && l.onPointerClick && l.onPointerClick(t)));
|
|
16982
16982
|
}), t.isUp && (n?.handlers.forEach((a) => {
|
|
16983
16983
|
this.invokeOnPointerUp(t, a);
|
|
16984
16984
|
}), this.pressedByID.delete(t.pointerId));
|
|
@@ -18565,7 +18565,7 @@ class Jd extends R {
|
|
|
18565
18565
|
awake() {
|
|
18566
18566
|
if (this.avatar = C.getComponentInParent(this.gameObject, Fe), this.avatar) {
|
|
18567
18567
|
const e = C.getComponentInParent(this.gameObject, Fe);
|
|
18568
|
-
this._model = new
|
|
18568
|
+
this._model = new c0(this.context.connection, this.guid), e?.isLocalAvatar && this._model.requestOwnership();
|
|
18569
18569
|
}
|
|
18570
18570
|
this.context.connection.beginListen("avatar-look-target-changed", (e) => {
|
|
18571
18571
|
this.target && e && e.guid === this.avatar?.guid && Rt(this.target, e.position);
|
|
@@ -18756,7 +18756,7 @@ Incoming:`, this._incomingCalls), o;
|
|
|
18756
18756
|
if (this.context.connection.connectionId && !this._enabledPeer) {
|
|
18757
18757
|
if (this._enabledPeer = !0, !this._peer) {
|
|
18758
18758
|
const e = this.getMyPeerId();
|
|
18759
|
-
e ? this._peer =
|
|
18759
|
+
e ? this._peer = IP(e) : console.error("Failed to setup peerjs because we dont have a connection id", this.context.connection.connectionId);
|
|
18760
18760
|
}
|
|
18761
18761
|
this._enabled && this.subscribePeerEvents();
|
|
18762
18762
|
}
|
|
@@ -18843,7 +18843,7 @@ class ju extends Jm {
|
|
|
18843
18843
|
*/
|
|
18844
18844
|
debug = !1;
|
|
18845
18845
|
constructor(e, t) {
|
|
18846
|
-
if (super(),
|
|
18846
|
+
if (super(), W0(e)) {
|
|
18847
18847
|
const i = e;
|
|
18848
18848
|
e = i.context, t = mo.getOrCreate(i.context, i.guid);
|
|
18849
18849
|
} else typeof t == "string" && (t = mo.getOrCreate(e, t));
|
|
@@ -19496,7 +19496,7 @@ class Mt extends R {
|
|
|
19496
19496
|
e && this._color?.set(e), this.gameObject.add(this._helper);
|
|
19497
19497
|
return;
|
|
19498
19498
|
}
|
|
19499
|
-
this._helper =
|
|
19499
|
+
this._helper = gg(e), this.gameObject.add(this._helper);
|
|
19500
19500
|
}
|
|
19501
19501
|
}
|
|
19502
19502
|
}
|
|
@@ -19954,7 +19954,7 @@ const Gr = class Jl extends R {
|
|
|
19954
19954
|
}
|
|
19955
19955
|
/** @internal */
|
|
19956
19956
|
awake() {
|
|
19957
|
-
Jl._instances.set(this.context, this), this.shadowsRoot.hideFlags =
|
|
19957
|
+
Jl._instances.set(this.context, this), this.shadowsRoot.hideFlags = Og.DontExport, Gp(this.shadowsRoot, !1);
|
|
19958
19958
|
}
|
|
19959
19959
|
/** @internal */
|
|
19960
19960
|
start() {
|
|
@@ -21052,7 +21052,7 @@ class ho {
|
|
|
21052
21052
|
const o = i[n];
|
|
21053
21053
|
if (kE(o.layer, e)) {
|
|
21054
21054
|
cp && console.log(o), setTimeout(() => {
|
|
21055
|
-
Qi() &&
|
|
21055
|
+
Qi() && Sg(e.gameObject) && (_e("Stencil not supported on instanced objects"), console.warn("Stencil not supported on instanced objects", e));
|
|
21056
21056
|
}, 500);
|
|
21057
21057
|
for (let r = 0; r < e.sharedMaterials.length; r++) {
|
|
21058
21058
|
let a = e.sharedMaterials[r];
|
|
@@ -21777,7 +21777,7 @@ class gw {
|
|
|
21777
21777
|
console.error("Could not find object for node index: " + c, l, t);
|
|
21778
21778
|
continue;
|
|
21779
21779
|
}
|
|
21780
|
-
|
|
21780
|
+
xg(f), o.push(this.createComponents(e, l, f, d));
|
|
21781
21781
|
}
|
|
21782
21782
|
}
|
|
21783
21783
|
}
|
|
@@ -21786,7 +21786,7 @@ class gw {
|
|
|
21786
21786
|
const a = t.associations.get(r);
|
|
21787
21787
|
if (a?.materials != null) {
|
|
21788
21788
|
const l = "/materials/" + a.materials;
|
|
21789
|
-
|
|
21789
|
+
Dk(r, l);
|
|
21790
21790
|
}
|
|
21791
21791
|
}
|
|
21792
21792
|
}
|
|
@@ -21810,7 +21810,7 @@ class gw {
|
|
|
21810
21810
|
!c && (An || L()) && console.warn(`[NEEDLE_components] Component '${l.name}' on object '${i.name}' is not added to a mesh or failed to retrieve materials from glTF.`);
|
|
21811
21811
|
}
|
|
21812
21812
|
l && this.parser && r.push(
|
|
21813
|
-
|
|
21813
|
+
vg(this.parser, l).catch((c) => console.error(`Error while resolving references (see console for details)
|
|
21814
21814
|
`, c, i, l))
|
|
21815
21815
|
), i.userData = i.userData || {}, i.userData[da] = i.userData[da] || [], i.userData[da].push(l);
|
|
21816
21816
|
}
|
|
@@ -22040,7 +22040,7 @@ class GE {
|
|
|
22040
22040
|
objectToWorld = new Array();
|
|
22041
22041
|
worldToObject = new Array();
|
|
22042
22042
|
updateFrom(e) {
|
|
22043
|
-
this.objectToWorldMatrix.copy(e.matrixWorld),
|
|
22043
|
+
this.objectToWorldMatrix.copy(e.matrixWorld), Hd(this.objectToWorldMatrix, this.objectToWorld), this.worldToObjectMatrix.copy(e.matrixWorld).invert(), Hd(this.worldToObjectMatrix, this.worldToObject);
|
|
22044
22044
|
}
|
|
22045
22045
|
}
|
|
22046
22046
|
class Te extends _v {
|
|
@@ -22115,7 +22115,7 @@ class Te extends _v {
|
|
|
22115
22115
|
}
|
|
22116
22116
|
onUpdateUniforms(e, t) {
|
|
22117
22117
|
const i = N.Current;
|
|
22118
|
-
if (e && (Te.viewProjection && this.uniforms[this._viewProjectionName] && (Te.viewProjection.copy(e.projectionMatrix).multiply(e.matrixWorldInverse),
|
|
22118
|
+
if (e && (Te.viewProjection && this.uniforms[this._viewProjectionName] && (Te.viewProjection.copy(e.projectionMatrix).multiply(e.matrixWorldInverse), Hd(Te.viewProjection, Te._viewProjectionValues)), Te.viewMatrix && this.uniforms[this._viewMatrixName] && (Te.viewMatrix.copy(e.matrixWorldInverse), Hd(Te.viewMatrix, Te._viewMatrixValues)), this.uniforms[Te._worldSpaceCameraPosName] && Te._worldSpaceCameraPos.setFromMatrixPosition(e.matrixWorld)), this.uniforms._TimeParameters && (this.uniforms._TimeParameters.value = i.sceneLighting.timeVec4), this.uniforms._Time) {
|
|
22119
22119
|
const a = this.uniforms._Time.value;
|
|
22120
22120
|
a.x = i.sceneLighting.timeVec4.x / 20, a.y = i.sceneLighting.timeVec4.x, a.z = i.sceneLighting.timeVec4.x * 2, a.w = i.sceneLighting.timeVec4.x * 3;
|
|
22121
22121
|
}
|
|
@@ -22191,7 +22191,7 @@ class qE {
|
|
|
22191
22191
|
Dn && console.log(n);
|
|
22192
22192
|
const o = n.techniques[i];
|
|
22193
22193
|
return o ? new Promise(async (r, a) => {
|
|
22194
|
-
const l = await
|
|
22194
|
+
const l = await MO(n, o.program), c = l?.fragmentShader, h = l?.vertexShader;
|
|
22195
22195
|
if (!c || !h) return a();
|
|
22196
22196
|
Dn && console.log("loadMaterial", t, l);
|
|
22197
22197
|
const d = {}, f = o.uniforms;
|
|
@@ -22308,10 +22308,10 @@ class qE {
|
|
|
22308
22308
|
g.depthTest = !1, g.depthFunc = VS;
|
|
22309
22309
|
break;
|
|
22310
22310
|
}
|
|
22311
|
-
g.transparent = p, p && (g.depthWrite = !1),
|
|
22311
|
+
g.transparent = p, p && (g.depthWrite = !1), kO(d), g.onUpdateUniforms();
|
|
22312
22312
|
for (const v in f) {
|
|
22313
22313
|
const b = v, w = f[v].type;
|
|
22314
|
-
d[b]?.value === void 0 && (w === yw.SAMPLER_2D ? (d[b] = { value:
|
|
22314
|
+
d[b]?.value === void 0 && (w === yw.SAMPLER_2D ? (d[b] = { value: CO }, console.warn("Missing/unassigned texture, fallback to white: " + b)) : b === "unity_OrthoParams" || console.warn("TODO: EXPECTED UNIFORM / fallback NOT SET: " + b, f[v]));
|
|
22315
22315
|
}
|
|
22316
22316
|
Dn && console.log(g.uuid, d), _w(g), r(g);
|
|
22317
22317
|
}) : null;
|
|
@@ -22365,7 +22365,7 @@ class YE {
|
|
|
22365
22365
|
}
|
|
22366
22366
|
async function Pm(s, e, t, i) {
|
|
22367
22367
|
const n = t.indexOf("?");
|
|
22368
|
-
n >= 0 && (t = t.substring(0, n)), i || (i = t), (i.startsWith("blob:") || i.startsWith("data:")) && console.debug("[GLTFLoader] Suspicious sourceId detected"), s.register((o) => new $E(o)), s.register((o) => new
|
|
22368
|
+
n >= 0 && (t = t.substring(0, n)), i || (i = t), (i.startsWith("blob:") || i.startsWith("data:")) && console.debug("[GLTFLoader] Suspicious sourceId detected"), s.register((o) => new $E(o)), s.register((o) => new Bk(o)), s.register((o) => new _O(o, e.lightmaps, i)), s.register((o) => new WE(o, i, e)), s.register((o) => new qE(o, i)), s.register((o) => new ho(o, i)), s.register((o) => new We(o)), s.register((o) => new FE(o)), s.register((o) => new HE(e, s, t, o)), dk() && s.register((o) => new Oa(o)), await QE.catch((o) => {
|
|
22369
22369
|
}), s.register((o) => {
|
|
22370
22370
|
if (eu) {
|
|
22371
22371
|
const r = new eu(o);
|
|
@@ -22490,7 +22490,7 @@ class Da {
|
|
|
22490
22490
|
/** The mesh information of the object - this tries to also calculate the LOD info */
|
|
22491
22491
|
meshInformation;
|
|
22492
22492
|
constructor(e, t) {
|
|
22493
|
-
this.__instanceIndex = -1, this.object = e, this.renderer = t, e[
|
|
22493
|
+
this.__instanceIndex = -1, this.object = e, this.renderer = t, e[y0] = t, this.meshInformation = fr(e.geometry), Da.all.push(this);
|
|
22494
22494
|
}
|
|
22495
22495
|
/** Calculates the mesh information again
|
|
22496
22496
|
* @returns true if the vertex count or index count has changed
|
|
@@ -23785,7 +23785,7 @@ const Vu = class Sw extends R {
|
|
|
23785
23785
|
}
|
|
23786
23786
|
*cloneLimitIntervalFn() {
|
|
23787
23787
|
for (; this.activeAndEnabled && !this.destroyed; )
|
|
23788
|
-
this._currentCount > 0 ? this._currentCount -= 1 : this._currentCount < 0 && (this._currentCount = 0), yield
|
|
23788
|
+
this._currentCount > 0 ? this._currentCount -= 1 : this._currentCount < 0 && (this._currentCount = 0), yield F0(1);
|
|
23789
23789
|
}
|
|
23790
23790
|
handleDuplication() {
|
|
23791
23791
|
if (!this.object || this.limitCount > 0 && this._currentCount >= this.limitCount || this.object === this.gameObject) return null;
|
|
@@ -23876,11 +23876,11 @@ class cR extends Pw {
|
|
|
23876
23876
|
}
|
|
23877
23877
|
class kw extends Pw {
|
|
23878
23878
|
beforeWriteTexture(e, t) {
|
|
23879
|
-
e.isRenderTargetTexture && (t.newTexture =
|
|
23879
|
+
e.isRenderTargetTexture && (t.newTexture = Pg(new ae(1, 1, 1, 0)));
|
|
23880
23880
|
}
|
|
23881
23881
|
}
|
|
23882
23882
|
function km(s) {
|
|
23883
|
-
const e =
|
|
23883
|
+
const e = Og.DontExport;
|
|
23884
23884
|
return !(s.hideFlags & e);
|
|
23885
23885
|
}
|
|
23886
23886
|
class Ow {
|
|
@@ -23959,7 +23959,7 @@ const qg = class ya extends R {
|
|
|
23959
23959
|
}
|
|
23960
23960
|
}));
|
|
23961
23961
|
});
|
|
23962
|
-
const a = new
|
|
23962
|
+
const a = new O0(r);
|
|
23963
23963
|
return t?.needleComponents && (this.ext = new gw()), this.ext && (this.ext.registerExport(i), this.ext.context = a), new Promise((c, h) => {
|
|
23964
23964
|
Gh && console.log("Starting glTF export.");
|
|
23965
23965
|
try {
|
|
@@ -26535,7 +26535,7 @@ const Gu = class qt extends R {
|
|
|
26535
26535
|
break;
|
|
26536
26536
|
}
|
|
26537
26537
|
} else
|
|
26538
|
-
e.material === this.materialToSwitch ? this.objectsWithThisMaterial.push(e) :
|
|
26538
|
+
e.material === this.materialToSwitch ? this.objectsWithThisMaterial.push(e) : Lk(e.material, this.materialToSwitch) && this.objectsWithThisMaterial.push(e);
|
|
26539
26539
|
}), this._objectsWithThisMaterial);
|
|
26540
26540
|
}
|
|
26541
26541
|
selfModel;
|
|
@@ -27221,9 +27221,9 @@ class kr {
|
|
|
27221
27221
|
}
|
|
27222
27222
|
}
|
|
27223
27223
|
hideElementDuringXRSession(e) {
|
|
27224
|
-
|
|
27224
|
+
ug((t) => {
|
|
27225
27225
|
e["previous-display"] = e.style.display, e.style.setProperty("display", "none", "important");
|
|
27226
|
-
}),
|
|
27226
|
+
}), s0((t) => {
|
|
27227
27227
|
e["previous-display"] != null && (e.style.display = e["previous-display"]);
|
|
27228
27228
|
});
|
|
27229
27229
|
}
|
|
@@ -27694,7 +27694,7 @@ class mn extends R {
|
|
|
27694
27694
|
return;
|
|
27695
27695
|
}
|
|
27696
27696
|
let i = this._hits[0];
|
|
27697
|
-
if (e && e.origin instanceof
|
|
27697
|
+
if (e && e.origin instanceof o0) {
|
|
27698
27698
|
const n = this._reticle[e.origin.index];
|
|
27699
27699
|
n && (t = n, i = this._hits[e.origin.index]);
|
|
27700
27700
|
}
|
|
@@ -28380,7 +28380,7 @@ class Lr extends R {
|
|
|
28380
28380
|
tryFindAvatarObjectsIfMissing() {
|
|
28381
28381
|
if (!this.head || !this.leftHand || !this.rightHand) {
|
|
28382
28382
|
const e = { head: this.head, leftHand: this.leftHand, rightHand: this.rightHand };
|
|
28383
|
-
|
|
28383
|
+
nk.tryFindAvatarObjects(this.gameObject, this.sourceId || "", e), e.head && (this.head = e.head), e.leftHand && (this.leftHand = e.leftHand), e.rightHand && (this.rightHand = e.rightHand);
|
|
28384
28384
|
}
|
|
28385
28385
|
}
|
|
28386
28386
|
async prepareAvatar() {
|
|
@@ -29576,7 +29576,7 @@ const cn = new _(), Bl = new ee(), Jh = new V(), cl = class Yw extends xn {
|
|
|
29576
29576
|
if (!t) return;
|
|
29577
29577
|
this.gameObject.parent ? this._parentRectTransform = C.getComponentInParent(this.gameObject.parent, Yw) : this._parentRectTransform = void 0, this._transformNeedsUpdate = !1, vp && console.warn("RectTransform → ApplyTransform", this.name + " because " + e), this.isRoot() ? this.Root.screenspace || (t.rotation.y = Math.PI) : (t.matrix.identity(), t.matrixAutoUpdate = !1, cn.set(0, 0, 0), this.applyPivot(cn), t.matrix.setPosition(cn.x, cn.y, 0), (this.gameObject.quaternion.x || this.gameObject.quaternion.y || this.gameObject.quaternion.z) && (Jh.copy(this.gameObject.quaternion), Jh.x *= -1, Jh.z *= -1, Bl.makeRotationFromQuaternion(Jh), t.matrix.premultiply(Bl)), cn.set(0, 0, 0), this.applyAnchoring(cn), this.canvas?.screenspace ? cn.z += 0.1 : cn.z += 0.01, Bl.identity(), Bl.setPosition(cn.x, cn.y, cn.z), t.matrix.premultiply(Bl), t.matrix.scale(this.gameObject.scale)), this.lastMatrix.copy(this.gameObject.matrix);
|
|
29578
29578
|
const i = !0;
|
|
29579
|
-
for (const n of
|
|
29579
|
+
for (const n of Cg(this.gameObject, xn, i, 1)) {
|
|
29580
29580
|
if (n === this || !n.activeAndEnabled) continue;
|
|
29581
29581
|
const o = n;
|
|
29582
29582
|
o.onParentRectTransformChanged && o.onParentRectTransformChanged(this);
|
|
@@ -31289,7 +31289,7 @@ class ul extends R {
|
|
|
31289
31289
|
_gizmoObject = null;
|
|
31290
31290
|
_boxHelper = null;
|
|
31291
31291
|
onEnable() {
|
|
31292
|
-
this.isGizmo && !Gc || (this._gizmoObject || (this.objectBounds ? this._gizmoObject = new eC(this.gameObject, this.color ?? 16776960) : (this.objectBounds = !1, this._gizmoObject =
|
|
31292
|
+
this.isGizmo && !Gc || (this._gizmoObject || (this.objectBounds ? this._gizmoObject = new eC(this.gameObject, this.color ?? 16776960) : (this.objectBounds = !1, this._gizmoObject = gg(this.color ?? 16776960))), this.objectBounds ? (this.scene.add(this._gizmoObject), this._boxHelper = this._gizmoObject, this.startCoroutine(this.syncObjectBounds(), Ce.OnBeforeRender)) : this.gameObject.add(this._gizmoObject));
|
|
31293
31293
|
}
|
|
31294
31294
|
onDisable() {
|
|
31295
31295
|
this._gizmoObject && this.gameObject.remove(this._gizmoObject);
|
|
@@ -33864,7 +33864,7 @@ class lA {
|
|
|
33864
33864
|
}
|
|
33865
33865
|
return this.clonedTexture.clone;
|
|
33866
33866
|
}
|
|
33867
|
-
return this.flatWhiteTexture || (this.flatWhiteTexture =
|
|
33867
|
+
return this.flatWhiteTexture || (this.flatWhiteTexture = Pg(new ae(1, 1, 1, 1), 1)), this.flatWhiteTexture;
|
|
33868
33868
|
}
|
|
33869
33869
|
get startTileIndex() {
|
|
33870
33870
|
return new ZT(this.system);
|
|
@@ -34295,7 +34295,7 @@ class $c extends R {
|
|
|
34295
34295
|
this.context.connection.stopListen(ie.JoinedRoom, this.tryAssignColor);
|
|
34296
34296
|
}
|
|
34297
34297
|
*waitForConnection() {
|
|
34298
|
-
for (; !this.destroyed && this.activeAndEnabled && (yield
|
|
34298
|
+
for (; !this.destroyed && this.activeAndEnabled && (yield F0(0.2), !this.tryAssignColor()); )
|
|
34299
34299
|
;
|
|
34300
34300
|
}
|
|
34301
34301
|
tryAssignColor = () => {
|
|
@@ -34340,7 +34340,7 @@ function dA(s) {
|
|
|
34340
34340
|
function mx(s) {
|
|
34341
34341
|
let e = s.gameObject;
|
|
34342
34342
|
for (; e; ) {
|
|
34343
|
-
for (const t of
|
|
34343
|
+
for (const t of Cg(e))
|
|
34344
34344
|
if (t.isPostProcessingManager === !0)
|
|
34345
34345
|
return t;
|
|
34346
34346
|
e = e.parent;
|
|
@@ -34786,7 +34786,7 @@ class jr extends ht {
|
|
|
34786
34786
|
});
|
|
34787
34787
|
return this.mode.onValueChanged = (i) => {
|
|
34788
34788
|
if (typeof i == "string")
|
|
34789
|
-
i =
|
|
34789
|
+
i = z0(i), t.mode = kd(i);
|
|
34790
34790
|
else {
|
|
34791
34791
|
const n = Mp(i);
|
|
34792
34792
|
t.mode = kd(n);
|
|
@@ -38660,7 +38660,7 @@ var OI = Object.defineProperty, MI = (s, e, t, i) => {
|
|
|
38660
38660
|
return n && OI(e, t, n), n;
|
|
38661
38661
|
};
|
|
38662
38662
|
const au = "SCAM";
|
|
38663
|
-
|
|
38663
|
+
l0(au, Nn.getRootAsSyncedCameraModel);
|
|
38664
38664
|
const gi = new og();
|
|
38665
38665
|
class EI {
|
|
38666
38666
|
userId;
|
|
@@ -40345,7 +40345,7 @@ class Go extends R {
|
|
|
40345
40345
|
rr && console.warn("Button Up", this.animationTriggers?.highlightedTrigger, this.animator, this._isHovered), this.interactable && (this.transition == 3 && this.animationTriggers && this.animator ? this.animator.setTrigger(this._isHovered ? this.animationTriggers.highlightedTrigger : this.animationTriggers.normalTrigger) : this.transition === 1 && this.colors && this._image?.setState(this._isHovered ? "hovered" : "normal"));
|
|
40346
40346
|
}
|
|
40347
40347
|
onPointerClick(e) {
|
|
40348
|
-
if (this.interactable && !(e.button !== 0 && e.event.pointerType ===
|
|
40348
|
+
if (this.interactable && !(e.button !== 0 && e.event.pointerType === fg.Mouse) && (rr && (console.warn("Button Click", this.onClick), Ie("CLICKED button " + this.name + " at " + this.context.time.frameCount)), this.onClick && this.onClick.listenerCount > 0 && (this.onClick.invoke(), e.use(), this.context.accessibility.focus(this), rr))) {
|
|
40349
40349
|
const t = this.gameObject.worldPosition;
|
|
40350
40350
|
t.add(this.gameObject.worldUp.multiplyScalar(1 + Math.random() * 0.5)), U.DrawLabel(t, "CLICK:" + Date.now(), 0.1, 1 + Math.random() * 0.5);
|
|
40351
40351
|
}
|
|
@@ -41147,7 +41147,7 @@ Cl([
|
|
|
41147
41147
|
u(Oi)
|
|
41148
41148
|
], js.prototype, "idle", 2);
|
|
41149
41149
|
js = Cl([
|
|
41150
|
-
|
|
41150
|
+
P0
|
|
41151
41151
|
], js);
|
|
41152
41152
|
var iL = Object.defineProperty, Pl = (s, e, t, i) => {
|
|
41153
41153
|
for (var n = void 0, o = s.length - 1, r; o >= 0; o--)
|
|
@@ -41460,7 +41460,7 @@ Cf([
|
|
|
41460
41460
|
u()
|
|
41461
41461
|
], at.prototype, "debug", 2);
|
|
41462
41462
|
at = Cf([
|
|
41463
|
-
|
|
41463
|
+
P0
|
|
41464
41464
|
], at);
|
|
41465
41465
|
var aL = Object.defineProperty, kl = (s, e, t, i) => {
|
|
41466
41466
|
for (var n = void 0, o = s.length - 1, r; o >= 0; o--)
|
|
@@ -42749,10 +42749,10 @@ P.add("PresentationMode", bL);
|
|
|
42749
42749
|
const Pc = gt, vL = x("debugtypestore");
|
|
42750
42750
|
vL && console.log(P);
|
|
42751
42751
|
function wL(s, e) {
|
|
42752
|
-
const i =
|
|
42752
|
+
const i = zk(s, e);
|
|
42753
42753
|
return i !== void 0 ? i : null;
|
|
42754
42754
|
}
|
|
42755
|
-
const xL = new
|
|
42755
|
+
const xL = new Uk(), jp = /* @__PURE__ */ Symbol("deserialize-queue");
|
|
42756
42756
|
async function SL(s, e, t, i = null, n) {
|
|
42757
42757
|
if (!t) {
|
|
42758
42758
|
console.debug("Can not create component instances: gltf is null");
|
|
@@ -42763,7 +42763,7 @@ async function SL(s, e, t, i = null, n) {
|
|
|
42763
42763
|
typeof r == "number" && (r = new Ut(i));
|
|
42764
42764
|
const a = e.indexOf("?");
|
|
42765
42765
|
e = a === -1 ? e : e.substring(0, a);
|
|
42766
|
-
const l = new
|
|
42766
|
+
const l = new O0(t.scene);
|
|
42767
42767
|
l.gltfId = e, l.context = s, l.gltf = t, l.nodeToObject = n?.nodeToObjectMap, l.implementationInformation = xL;
|
|
42768
42768
|
let c = s[jp];
|
|
42769
42769
|
if (c || (c = s[jp] = []), t.scenes)
|
|
@@ -42994,14 +42994,14 @@ async function kc(s, e, t, i, n, o) {
|
|
|
42994
42994
|
scenes: [a]
|
|
42995
42995
|
};
|
|
42996
42996
|
} else Array.isArray(i.scenes) === !1 && console.error(`[Needle Engine] The loaded model object does not have a scenes property '${t}' - please make sure the loader is registered correctly and three.js is not imported multiple times.`);
|
|
42997
|
-
return t.includes("?") && (t = t.split("?")[0]), EL(s, i),
|
|
42997
|
+
return t.includes("?") && (t = t.split("?")[0]), EL(s, i), zO(i) && (KE(t, i, e), await Yn().createBuiltinComponents(e, t, i, n, o || void 0)), await OL(i.scene, e, e.mainCamera), i;
|
|
42998
42998
|
}
|
|
42999
42999
|
async function OL(s, e, t) {
|
|
43000
43000
|
t || (t = e.mainCamera);
|
|
43001
43001
|
try {
|
|
43002
43002
|
t ? await e.renderer.compileAsync(s, t, e.scene).catch((i) => {
|
|
43003
43003
|
console.warn(i.message);
|
|
43004
|
-
}) :
|
|
43004
|
+
}) : bk(s, e);
|
|
43005
43005
|
} catch (i) {
|
|
43006
43006
|
console.warn(i?.message || i);
|
|
43007
43007
|
}
|
|
@@ -43401,7 +43401,7 @@ class Jx extends HTMLElement {
|
|
|
43401
43401
|
/** @private set to true after <needle-engine> did load completely at least once. Set to false when < to false when <needle-engine> is removed from the document removed from the document */
|
|
43402
43402
|
_didFullyLoad = !1;
|
|
43403
43403
|
constructor() {
|
|
43404
|
-
super(), this._overlay_ar = new TL(), this.addEventListener("ready", this.onReady),
|
|
43404
|
+
super(), this._overlay_ar = new TL(), this.addEventListener("ready", this.onReady), N0(), this.attachShadow({ mode: "open", delegatesFocus: !0 }), this.setAttribute("role", "application"), this.setAttribute("aria-label", "Needle Engine 3D scene");
|
|
43405
43405
|
const e = document.createElement("template");
|
|
43406
43406
|
e.innerHTML = `<style>
|
|
43407
43407
|
@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap');
|
|
@@ -43654,7 +43654,7 @@ Needle Engine: finished loading ` + t + `
|
|
|
43654
43654
|
// #region applyAttributes
|
|
43655
43655
|
applyAttributes() {
|
|
43656
43656
|
if (this._context?.renderer) {
|
|
43657
|
-
const n =
|
|
43657
|
+
const n = z0(this.toneMapping);
|
|
43658
43658
|
n !== void 0 && (this._context.renderer.toneMapping = n);
|
|
43659
43659
|
const o = this.getAttribute("tone-mapping-exposure");
|
|
43660
43660
|
if (o != null) {
|
|
@@ -44128,7 +44128,7 @@ class Oc {
|
|
|
44128
44128
|
t,
|
|
44129
44129
|
i,
|
|
44130
44130
|
(n) => {
|
|
44131
|
-
const o = n[ri], r = new
|
|
44131
|
+
const o = n[ri], r = new VO(o.gameObject, o);
|
|
44132
44132
|
return this.rapierColliderArray.push(r), !0;
|
|
44133
44133
|
},
|
|
44134
44134
|
// TODO: it seems as QueryFilterFlags.EXCLUDE_SENSORS also excludes DYNAMIC Rigidbodies (only if they're set to kinematic)
|
|
@@ -44607,11 +44607,11 @@ class UL {
|
|
|
44607
44607
|
for (let p = 0; p < a.numSolverContacts(); p++) {
|
|
44608
44608
|
const g = a.solverContactPoint(p), y = a.contactImpulse(p);
|
|
44609
44609
|
if (g) {
|
|
44610
|
-
const m = a.contactDist(p), v = a.solverContactFriction(p), b = a.solverContactTangentVelocity(p), w = new
|
|
44610
|
+
const m = a.contactDist(p), v = a.solverContactFriction(p), b = a.solverContactTangentVelocity(p), w = new $O(g, m, f, y, v, b);
|
|
44611
44611
|
d.push(w), Fp && U.DrawDirection(g, f, 16711680, 3, !0);
|
|
44612
44612
|
}
|
|
44613
44613
|
}
|
|
44614
|
-
o = new
|
|
44614
|
+
o = new WO(r, i, d);
|
|
44615
44615
|
}
|
|
44616
44616
|
if (h) {
|
|
44617
44617
|
const d = { collider: e, component: c, collision: o };
|
|
@@ -44882,7 +44882,7 @@ class WL extends HTMLElement {
|
|
|
44882
44882
|
justify-content: center;
|
|
44883
44883
|
gap: .5rem;
|
|
44884
44884
|
}
|
|
44885
|
-
`), this.#n.innerHTML = this.#e.innerHTML, this.#n.style.cssText = "display: flex; align-items: center; justify-content: center;", this.#e.innerHTML = this.#n.outerHTML, this.#t.innerHTML = this.#e.outerHTML, this.#t.prepend(this.#s),
|
|
44885
|
+
`), this.#n.innerHTML = this.#e.innerHTML, this.#n.style.cssText = "display: flex; align-items: center; justify-content: center;", this.#e.innerHTML = this.#n.outerHTML, this.#t.innerHTML = this.#e.outerHTML, this.#t.prepend(this.#s), Gd(pm, { element: this.#t }), this.#o?.disconnect(), this.#o ??= new MutationObserver(() => this.#c()), this.#o.observe(this.#e, { attributes: !0 }), Up && console.log("Needle Button updated", this);
|
|
44886
44886
|
}
|
|
44887
44887
|
#c() {
|
|
44888
44888
|
this.#e && (this.#e.style.display === "none" ? this.style.display = "none" : this.style.display === "none" && (this.style.display = ""));
|
|
@@ -45406,12 +45406,12 @@ const XL = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
|
45406
45406
|
GenerateMeshBVHWorker: qL
|
|
45407
45407
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
45408
45408
|
export {
|
|
45409
|
-
|
|
45410
|
-
|
|
45409
|
+
NO as $componentName,
|
|
45410
|
+
WD as $physicsKey,
|
|
45411
45411
|
me as ActionBuilder,
|
|
45412
45412
|
FR as ActionCollection,
|
|
45413
45413
|
_i as ActionModel,
|
|
45414
|
-
|
|
45414
|
+
dO as Addressables,
|
|
45415
45415
|
Iu as AlignmentConstraint,
|
|
45416
45416
|
pc as AmbientMode,
|
|
45417
45417
|
ei as Animation,
|
|
@@ -45426,7 +45426,7 @@ export {
|
|
|
45426
45426
|
Uh as AnimatorStateInfo,
|
|
45427
45427
|
af as Antialiasing,
|
|
45428
45428
|
Kn as Application,
|
|
45429
|
-
|
|
45429
|
+
hk as AssetDatabase,
|
|
45430
45430
|
ne as AssetReference,
|
|
45431
45431
|
uh as Attractor,
|
|
45432
45432
|
rl as AudioExtension,
|
|
@@ -45474,17 +45474,17 @@ export {
|
|
|
45474
45474
|
Iy as ClickThrough,
|
|
45475
45475
|
fs as ClipExtrapolation,
|
|
45476
45476
|
Pn as Collider,
|
|
45477
|
-
|
|
45477
|
+
WO as Collision,
|
|
45478
45478
|
Ig as CollisionDetectionMode,
|
|
45479
45479
|
Qr as ColorAdjustments,
|
|
45480
45480
|
dh as ColorBySpeedModule,
|
|
45481
45481
|
fy as ColorOverLifetimeModule,
|
|
45482
45482
|
ZD as Component,
|
|
45483
45483
|
R as Component$1,
|
|
45484
|
-
|
|
45484
|
+
yg as ComponentLifecycleEvents,
|
|
45485
45485
|
v2 as Components,
|
|
45486
|
-
|
|
45487
|
-
|
|
45486
|
+
BP as ConnectionEvents,
|
|
45487
|
+
$O as ContactPoint,
|
|
45488
45488
|
zu as ContactShadows,
|
|
45489
45489
|
N as Context,
|
|
45490
45490
|
HD as ContextArgs,
|
|
@@ -45516,7 +45516,7 @@ export {
|
|
|
45516
45516
|
Gg as EventTrigger,
|
|
45517
45517
|
tR as FieldWithDefault,
|
|
45518
45518
|
Ta as FileReference,
|
|
45519
|
-
|
|
45519
|
+
mO as FileReferenceSerializer,
|
|
45520
45520
|
r2 as FileSpawnModel,
|
|
45521
45521
|
xE as File_Event,
|
|
45522
45522
|
ax as FixedJoint,
|
|
@@ -45535,36 +45535,36 @@ export {
|
|
|
45535
45535
|
nx as GridLayoutGroup,
|
|
45536
45536
|
Fs as GroundProjectedEnv,
|
|
45537
45537
|
Sa as GroupActionModel,
|
|
45538
|
-
|
|
45538
|
+
Og as HideFlags,
|
|
45539
45539
|
un as HideOnStart,
|
|
45540
45540
|
tf as HingeJoint,
|
|
45541
45541
|
ix as HorizontalLayoutGroup,
|
|
45542
|
-
|
|
45542
|
+
zD as HostData,
|
|
45543
45543
|
js as HoverAnimation,
|
|
45544
45544
|
vh as Image,
|
|
45545
45545
|
Ra as ImageReference,
|
|
45546
|
-
|
|
45546
|
+
pO as ImageReferenceSerializer,
|
|
45547
45547
|
ux as InheritVelocityModule,
|
|
45548
|
-
|
|
45548
|
+
CP as Input,
|
|
45549
45549
|
vi as InputEventQueue,
|
|
45550
45550
|
Be as InputEvents,
|
|
45551
45551
|
jx as InputField,
|
|
45552
45552
|
Da as InstanceHandle,
|
|
45553
45553
|
Za as InstancingHandler,
|
|
45554
45554
|
_n as InstancingUtil,
|
|
45555
|
-
|
|
45555
|
+
wk as InstantiateEvent,
|
|
45556
45556
|
Ut as InstantiateIdProvider,
|
|
45557
45557
|
es as InstantiateOptions,
|
|
45558
45558
|
hw as Interactable,
|
|
45559
45559
|
hu as InternalScreenshotUtils,
|
|
45560
|
-
|
|
45561
|
-
|
|
45560
|
+
ID as JoinedRoomResponse,
|
|
45561
|
+
RD as KeyEventArgs,
|
|
45562
45562
|
Ci as Keyframe,
|
|
45563
45563
|
hy as LODGroup,
|
|
45564
45564
|
lh as LODModel,
|
|
45565
|
-
|
|
45565
|
+
LD as LeftRoomResponse,
|
|
45566
45566
|
Wt as Light,
|
|
45567
|
-
|
|
45567
|
+
TO as LightData,
|
|
45568
45568
|
vt as LimitVelocityOverLifetimeModule,
|
|
45569
45569
|
g2 as LoadingElementOptions,
|
|
45570
45570
|
cw as LogStats,
|
|
@@ -45583,24 +45583,24 @@ export {
|
|
|
45583
45583
|
Wu as MeshRenderer,
|
|
45584
45584
|
Y as MinMaxCurve,
|
|
45585
45585
|
ml as MinMaxGradient,
|
|
45586
|
-
|
|
45586
|
+
zd as NEEDLE_ENGINE_FEATURE_FLAGS,
|
|
45587
45587
|
Oh as NEKeyboardEvent,
|
|
45588
45588
|
to as NEPointerEvent,
|
|
45589
45589
|
WL as NeedleButtonElement,
|
|
45590
45590
|
ub as NeedleEngineModelLoader,
|
|
45591
45591
|
Jx as NeedleEngineWebComponent,
|
|
45592
45592
|
Ns as NeedleMenu,
|
|
45593
|
-
|
|
45594
|
-
|
|
45593
|
+
Ff as NeedlePatchesKey,
|
|
45594
|
+
o0 as NeedleXRController,
|
|
45595
45595
|
K as NeedleXRSession,
|
|
45596
|
-
|
|
45597
|
-
|
|
45596
|
+
zP as NeedleXRSync,
|
|
45597
|
+
nk as NeedleXRUtils,
|
|
45598
45598
|
ch as NestedGltf,
|
|
45599
|
-
|
|
45599
|
+
UP as NetworkConnection,
|
|
45600
45600
|
ws as NetworkedStreamEvents,
|
|
45601
45601
|
ju as NetworkedStreams,
|
|
45602
45602
|
lx as Networking,
|
|
45603
|
-
|
|
45603
|
+
Ck as NewInstanceModel,
|
|
45604
45604
|
we as NoiseModule,
|
|
45605
45605
|
wn as ObjectRaycaster,
|
|
45606
45606
|
zr as ObjectUtils,
|
|
@@ -45610,8 +45610,8 @@ export {
|
|
|
45610
45610
|
Sh as OpenURL,
|
|
45611
45611
|
ye as OrbitControls,
|
|
45612
45612
|
oh as Outline,
|
|
45613
|
-
|
|
45614
|
-
|
|
45613
|
+
FP as OwnershipEvent,
|
|
45614
|
+
c0 as OwnershipModel,
|
|
45615
45615
|
gr as PUBLIC_KEY,
|
|
45616
45616
|
hl as Padding,
|
|
45617
45617
|
Dm as ParticleBurst,
|
|
@@ -45621,7 +45621,7 @@ export {
|
|
|
45621
45621
|
On as ParticleSystemRenderer,
|
|
45622
45622
|
Im as ParticleSystemShapeType,
|
|
45623
45623
|
mo as PeerHandle,
|
|
45624
|
-
|
|
45624
|
+
LP as PeerNetworking,
|
|
45625
45625
|
Ic as Physics,
|
|
45626
45626
|
Qw as PhysicsExtension,
|
|
45627
45627
|
Pt as PhysicsMaterialCombine,
|
|
@@ -45633,10 +45633,10 @@ export {
|
|
|
45633
45633
|
gn as PlayerState,
|
|
45634
45634
|
iT as PlayerStateEvent,
|
|
45635
45635
|
qw as PlayerSync,
|
|
45636
|
-
|
|
45637
|
-
|
|
45636
|
+
xO as PlayerView,
|
|
45637
|
+
SO as PlayerViewManager,
|
|
45638
45638
|
Du as PointerEventData,
|
|
45639
|
-
|
|
45639
|
+
fg as PointerType,
|
|
45640
45640
|
ht as PostProcessingEffect,
|
|
45641
45641
|
ut as PostProcessingEffectOrder,
|
|
45642
45642
|
vx as PostProcessingHandler,
|
|
@@ -45659,7 +45659,7 @@ export {
|
|
|
45659
45659
|
vs as RenderTexture,
|
|
45660
45660
|
LM as RenderTextureSerializer,
|
|
45661
45661
|
ui as Renderer,
|
|
45662
|
-
|
|
45662
|
+
RO as RendererData,
|
|
45663
45663
|
ww as RendererLightmap,
|
|
45664
45664
|
Je as Rigidbody,
|
|
45665
45665
|
Ke as RigidbodyConstraints,
|
|
@@ -45674,11 +45674,11 @@ export {
|
|
|
45674
45674
|
qo as ScrollFollow,
|
|
45675
45675
|
$o as SeeThrough,
|
|
45676
45676
|
Bn as SendQueue,
|
|
45677
|
-
|
|
45677
|
+
O0 as SerializationContext,
|
|
45678
45678
|
$w as SetActiveOnClick,
|
|
45679
45679
|
ff as ShadowCatcher,
|
|
45680
45680
|
hx as ShapeModule,
|
|
45681
|
-
|
|
45681
|
+
VO as ShapeOverlapResult,
|
|
45682
45682
|
uf as SharpeningEffect,
|
|
45683
45683
|
Py as SignalAsset,
|
|
45684
45684
|
yf as SignalReceiver,
|
|
@@ -45695,7 +45695,7 @@ export {
|
|
|
45695
45695
|
Es as SpatialTriggerReceiver,
|
|
45696
45696
|
Cy as SpectatorCamera,
|
|
45697
45697
|
Jc as SphereCollider,
|
|
45698
|
-
|
|
45698
|
+
d0 as SphereIntersection,
|
|
45699
45699
|
wl as SplineContainer,
|
|
45700
45700
|
Ds as SplineData,
|
|
45701
45701
|
av as SplineUtils,
|
|
@@ -45721,7 +45721,7 @@ export {
|
|
|
45721
45721
|
ny as TextExtension,
|
|
45722
45722
|
si as TextureSheetAnimationModule,
|
|
45723
45723
|
Vs as TiltShiftEffect,
|
|
45724
|
-
|
|
45724
|
+
AO as Time,
|
|
45725
45725
|
jr as ToneMappingEffect,
|
|
45726
45726
|
bh as TrackHandler,
|
|
45727
45727
|
Wi as TrackType,
|
|
@@ -45742,7 +45742,7 @@ export {
|
|
|
45742
45742
|
rx as USDZUIExtension,
|
|
45743
45743
|
DM as UriSerializer,
|
|
45744
45744
|
Nu as UsageMarker,
|
|
45745
|
-
|
|
45745
|
+
DD as UserJoinedOrLeftRoomModel,
|
|
45746
45746
|
Xi as VERSION,
|
|
45747
45747
|
zw as VariantAction,
|
|
45748
45748
|
Xe as VelocityOverLifetimeModule,
|
|
@@ -45756,9 +45756,9 @@ export {
|
|
|
45756
45756
|
ph as Volume,
|
|
45757
45757
|
$ as VolumeParameter,
|
|
45758
45758
|
gy as VolumeProfile,
|
|
45759
|
-
|
|
45760
|
-
|
|
45761
|
-
|
|
45759
|
+
ND as WaitForFrames,
|
|
45760
|
+
yO as WaitForPromise,
|
|
45761
|
+
F0 as WaitForSeconds,
|
|
45762
45762
|
_o as Watch,
|
|
45763
45763
|
Pf as WebARCameraBackground,
|
|
45764
45764
|
mn as WebARSessionRoot,
|
|
@@ -45776,25 +45776,25 @@ export {
|
|
|
45776
45776
|
li as XRState,
|
|
45777
45777
|
bs as XRStateFlag,
|
|
45778
45778
|
GL as __Ignore,
|
|
45779
|
-
|
|
45779
|
+
FD as __internalNotifyObjectDestroyed,
|
|
45780
45780
|
bo as activeInHierarchyFieldName,
|
|
45781
45781
|
Iv as addAttributeChangeCallback,
|
|
45782
45782
|
Gn as addComponent,
|
|
45783
45783
|
a2 as addCustomExtensionPlugin,
|
|
45784
45784
|
Ea as addNewComponent,
|
|
45785
|
-
|
|
45786
|
-
|
|
45785
|
+
hg as addPatch,
|
|
45786
|
+
xg as apply,
|
|
45787
45787
|
KD as applyHMRChanges,
|
|
45788
|
-
|
|
45789
|
-
|
|
45790
|
-
|
|
45791
|
-
|
|
45788
|
+
Xk as applyPrototypeExtensions,
|
|
45789
|
+
Sk as beginListenDestroy,
|
|
45790
|
+
kk as beginListenInstantiate,
|
|
45791
|
+
a0 as binaryIdentifierCasts,
|
|
45792
45792
|
VD as build_scene_functions,
|
|
45793
45793
|
da as builtinComponentKeyName,
|
|
45794
45794
|
Yx as calculateProgress01,
|
|
45795
45795
|
bD as clearMessages,
|
|
45796
45796
|
n2 as colorSerializer,
|
|
45797
|
-
|
|
45797
|
+
Lk as compareAssociation,
|
|
45798
45798
|
np as componentSerializer,
|
|
45799
45799
|
F1 as copyTexture,
|
|
45800
45800
|
dM as createMotion,
|
|
@@ -45806,7 +45806,7 @@ export {
|
|
|
45806
45806
|
xu as delayForFrames,
|
|
45807
45807
|
rm as deserializeObject,
|
|
45808
45808
|
Ki as destroy,
|
|
45809
|
-
|
|
45809
|
+
eO as destroyComponentInstance,
|
|
45810
45810
|
SE as determineMimeTypeFromExtension,
|
|
45811
45811
|
Ae as disposeObjectResources,
|
|
45812
45812
|
xs as disposeStream,
|
|
@@ -45815,25 +45815,25 @@ export {
|
|
|
45815
45815
|
s2 as euler,
|
|
45816
45816
|
o2 as eventListSerializer,
|
|
45817
45817
|
b2 as exportAsGLTF,
|
|
45818
|
-
|
|
45818
|
+
L0 as findByGuid,
|
|
45819
45819
|
Xc as findObjectOfType,
|
|
45820
|
-
|
|
45821
|
-
|
|
45820
|
+
tO as findObjectsOfType,
|
|
45821
|
+
m0 as findResourceUsers,
|
|
45822
45822
|
vM as fitCamera,
|
|
45823
45823
|
$1 as fitObjectIntoVolume,
|
|
45824
45824
|
Qa as foreachComponent,
|
|
45825
|
-
|
|
45825
|
+
Cg as foreachComponentEnumerator,
|
|
45826
45826
|
SD as forward,
|
|
45827
|
-
|
|
45828
|
-
|
|
45827
|
+
DO as generateQRCode,
|
|
45828
|
+
Pk as generateSeed,
|
|
45829
45829
|
di as getBoundingBox,
|
|
45830
45830
|
w1 as getCameraController,
|
|
45831
45831
|
el as getComponent,
|
|
45832
45832
|
Ru as getComponentInChildren,
|
|
45833
|
-
|
|
45833
|
+
Vd as getComponentInParent,
|
|
45834
45834
|
Eu as getComponents,
|
|
45835
45835
|
qc as getComponentsInChildren,
|
|
45836
|
-
|
|
45836
|
+
wg as getComponentsInParent,
|
|
45837
45837
|
uR as getFormattedDate,
|
|
45838
45838
|
Ft as getIconElement,
|
|
45839
45839
|
q_ as getIconTexture,
|
|
@@ -45842,9 +45842,9 @@ export {
|
|
|
45842
45842
|
x as getParam,
|
|
45843
45843
|
CD as getParentHierarchyPath,
|
|
45844
45844
|
rD as getPath,
|
|
45845
|
-
|
|
45846
|
-
|
|
45847
|
-
|
|
45845
|
+
TD as getPeerOptions,
|
|
45846
|
+
IP as getPeerjsInstance,
|
|
45847
|
+
UD as getResourceUserCount,
|
|
45848
45848
|
M1 as getTempColor,
|
|
45849
45849
|
bi as getTempQuaternion,
|
|
45850
45850
|
z as getTempVector,
|
|
@@ -45864,33 +45864,33 @@ export {
|
|
|
45864
45864
|
ER as imageToCanvas,
|
|
45865
45865
|
Rr as instantiate,
|
|
45866
45866
|
KE as invokeLoadedImportPluginHooks,
|
|
45867
|
-
|
|
45868
|
-
|
|
45869
|
-
|
|
45867
|
+
SP as invokeXRSessionEnd,
|
|
45868
|
+
xP as invokeXRSessionStart,
|
|
45869
|
+
oO as isActiveInHierarchy,
|
|
45870
45870
|
Qc as isActiveSelf,
|
|
45871
45871
|
dD as isAndroidDevice,
|
|
45872
45872
|
B1 as isAnimationAction,
|
|
45873
|
-
|
|
45873
|
+
W0 as isComponent,
|
|
45874
45874
|
iD as isDebugMode,
|
|
45875
45875
|
aD as isDesktop,
|
|
45876
45876
|
Xa as isDestroyed,
|
|
45877
45877
|
L as isDevEnvironment,
|
|
45878
|
-
|
|
45878
|
+
BD as isDisposed,
|
|
45879
45879
|
_2 as isExporting,
|
|
45880
|
-
|
|
45880
|
+
zO as isGLTFModel,
|
|
45881
45881
|
JC as isHostedOnGlitch,
|
|
45882
45882
|
tb as isHotReloadEnabled,
|
|
45883
45883
|
YD as isHotReloading,
|
|
45884
45884
|
cD as isIPad,
|
|
45885
|
-
|
|
45885
|
+
BO as isIconElement,
|
|
45886
45886
|
Qi as isLocalNetwork,
|
|
45887
45887
|
fD as isMacOS,
|
|
45888
45888
|
lD as isMobileDevice,
|
|
45889
45889
|
uD as isMozillaXR,
|
|
45890
45890
|
gD as isQuest,
|
|
45891
|
-
|
|
45891
|
+
dk as isResourceTrackingEnabled,
|
|
45892
45892
|
mD as isSafari,
|
|
45893
|
-
|
|
45893
|
+
Sg as isUsingInstancing,
|
|
45894
45894
|
pD as isiOS,
|
|
45895
45895
|
hD as isiPad,
|
|
45896
45896
|
m2 as loadAsset,
|
|
@@ -45903,13 +45903,13 @@ export {
|
|
|
45903
45903
|
sD as makeId,
|
|
45904
45904
|
i1 as makeIdFromRandomWords,
|
|
45905
45905
|
Ji as makeNameSafe,
|
|
45906
|
-
|
|
45906
|
+
rO as markAsInstancedRendered,
|
|
45907
45907
|
yD as microphonePermissionsGranted,
|
|
45908
45908
|
tD as nameof,
|
|
45909
45909
|
e1 as nameofFactory,
|
|
45910
45910
|
RM as objectSerializer,
|
|
45911
|
-
|
|
45912
|
-
|
|
45911
|
+
ED as offXRSessionEnd,
|
|
45912
|
+
MD as offXRSessionStart,
|
|
45913
45913
|
QD as onAfterRender,
|
|
45914
45914
|
XD as onBeforeRender,
|
|
45915
45915
|
GD as onClear,
|
|
@@ -45917,15 +45917,15 @@ export {
|
|
|
45917
45917
|
V0 as onInitialized,
|
|
45918
45918
|
Eg as onStart,
|
|
45919
45919
|
QO as onUpdate,
|
|
45920
|
-
|
|
45921
|
-
|
|
45920
|
+
s0 as onXRSessionEnd,
|
|
45921
|
+
ug as onXRSessionStart,
|
|
45922
45922
|
kL as parseSync,
|
|
45923
45923
|
W1 as placeOnSurface,
|
|
45924
45924
|
Gv as postprocessFBXMaterials,
|
|
45925
45925
|
i2 as prefix,
|
|
45926
45926
|
t1 as pushState,
|
|
45927
45927
|
oD as randomNumber,
|
|
45928
|
-
|
|
45928
|
+
l0 as registerBinaryType,
|
|
45929
45929
|
Mg as registerComponent,
|
|
45930
45930
|
bw as registerComponentExtension,
|
|
45931
45931
|
Mn as registerCustomEffectType,
|
|
@@ -45933,37 +45933,37 @@ export {
|
|
|
45933
45933
|
Pm as registerExtensions,
|
|
45934
45934
|
nM as registerHotReloadType,
|
|
45935
45935
|
t0 as registerLoader,
|
|
45936
|
-
|
|
45937
|
-
|
|
45938
|
-
|
|
45936
|
+
Mk as registerPrefabProvider,
|
|
45937
|
+
Qk as registerPrototypeExtensions,
|
|
45938
|
+
P0 as registerType,
|
|
45939
45939
|
s1 as relativePathPrefix,
|
|
45940
45940
|
Lv as removeAttributeChangeCallback,
|
|
45941
|
-
|
|
45941
|
+
T0 as removeComponent,
|
|
45942
45942
|
l2 as removeCustomImportExtensionType,
|
|
45943
|
-
|
|
45943
|
+
OD as removePatch,
|
|
45944
45944
|
Eo as resolveUrl,
|
|
45945
45945
|
n1 as sanitizeString,
|
|
45946
45946
|
hL as saveImage,
|
|
45947
45947
|
p2 as screenshot,
|
|
45948
45948
|
Wx as screenshot2,
|
|
45949
|
-
|
|
45949
|
+
w0 as sendDestroyed,
|
|
45950
45950
|
u as serializable,
|
|
45951
|
-
|
|
45951
|
+
zk as serializeObject,
|
|
45952
45952
|
et as serializeable,
|
|
45953
45953
|
pd as setActive,
|
|
45954
45954
|
u1 as setAllowBalloonMessages,
|
|
45955
45955
|
_D as setAllowOverlayMessages,
|
|
45956
45956
|
Gp as setAutoFitEnabled,
|
|
45957
45957
|
i_ as setCameraController,
|
|
45958
|
-
|
|
45958
|
+
aO as setDestroyed,
|
|
45959
45959
|
kD as setDevEnvironment,
|
|
45960
|
-
|
|
45960
|
+
uk as setDisposable,
|
|
45961
45961
|
Al as setDontDestroy,
|
|
45962
45962
|
Yy as setOrAddParamsToUrl,
|
|
45963
45963
|
nD as setParam,
|
|
45964
45964
|
Id as setParamWithoutReload,
|
|
45965
|
-
|
|
45966
|
-
|
|
45965
|
+
AD as setPeerOptions,
|
|
45966
|
+
jD as setResourceTrackingEnabled,
|
|
45967
45967
|
Tv as setState,
|
|
45968
45968
|
Hv as setVisibleInCustomShadowRendering,
|
|
45969
45969
|
Vv as setWorldEuler,
|
|
@@ -45981,14 +45981,14 @@ export {
|
|
|
45981
45981
|
vD as slerp,
|
|
45982
45982
|
Ou as syncDestroy,
|
|
45983
45983
|
Hw as syncField,
|
|
45984
|
-
|
|
45984
|
+
x0 as syncInstantiate,
|
|
45985
45985
|
PD as textureToCanvas,
|
|
45986
45986
|
o1 as toSourceId,
|
|
45987
|
-
|
|
45987
|
+
TP as tryCastBinary,
|
|
45988
45988
|
PE as tryDetermineMimetypeFromBinary,
|
|
45989
45989
|
CE as tryDetermineMimetypeFromURL,
|
|
45990
45990
|
Mc as tryFindObject,
|
|
45991
|
-
|
|
45991
|
+
AP as tryGetGuid,
|
|
45992
45992
|
sM as unregisterHotReloadType,
|
|
45993
45993
|
Av as unwatchWrite,
|
|
45994
45994
|
x1 as useForAutoFit,
|