@needle-tools/engine 4.8.6-next.eb205d6 → 4.8.6
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-Ctm8br06.js → needle-engine.bundle-BTJDRZkJ.js} +2 -2
- package/dist/{needle-engine.bundle-De23SUHN.min.js → needle-engine.bundle-CQIq7Zg-.min.js} +1 -1
- package/dist/{needle-engine.bundle-BlBdO0pR.umd.cjs → needle-engine.bundle-CaNItSG7.umd.cjs} +2 -2
- package/dist/needle-engine.js +2 -2
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/package.json +2 -2
|
@@ -1755,9 +1755,9 @@ uo('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUIL
|
|
|
1755
1755
|
uo('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";');
|
|
1756
1756
|
uo('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.8.6";');
|
|
1757
1757
|
uo('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');
|
|
1758
|
-
uo('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:
|
|
1758
|
+
uo('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";');
|
|
1759
1759
|
uo('globalThis["__NEEDLE_PUBLIC_KEY__"] = "' + NEEDLE_PUBLIC_KEY + '";');
|
|
1760
|
-
const An = "4.8.6", ym = "undefined", Wb = "Wed Aug 20 2025 16:
|
|
1760
|
+
const An = "4.8.6", ym = "undefined", Wb = "Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";
|
|
1761
1761
|
$b && console.log(`Engine version: ${An} (generator: ${ym})
|
|
1762
1762
|
Project built at ${Wb}`);
|
|
1763
1763
|
const _l = NEEDLE_PUBLIC_KEY, so = "needle_isActiveInHierarchy", jr = "builtin_components", Ch = "needle_editor_guid";
|
|
@@ -141,7 +141,7 @@ void main(){
|
|
|
141
141
|
#__vconsole .vc-mask {
|
|
142
142
|
overflow: hidden;
|
|
143
143
|
}
|
|
144
|
-
`,sr?.prepend(i),o===!0&&nb()<=0&&Rb(),console.log("\u{1F335} Debug console has loaded")}},e.onerror=()=>{console.warn("\u{1F335} Debug console failed to load."+(window.crossOriginIsolated?"This page is using cross-origin isolation, so external scripts can't be loaded.":"")),Ul=!1,Ni=null},e.src="https://cdn.jsdelivr.net/npm/vconsole@3.15.1/dist/vconsole.min.js",document.body.appendChild(e)}function VP(){if(!globalThis.VConsole)return;const o=new VConsole.VConsolePlugin("needle-console","\u{1F335} Inspect glTF"),e=()=>document.querySelector("#__vc_plug_"+o._id+" iframe");return o.on("renderTab",function(t){const i=globalThis["needle:codegen_files"];if(!i||i.length===0)return;let n=globalThis["needle:codegen_files"][0];const s=n.indexOf("?");s>-1&&(n=n.substring(0,s));const r=location.protocol+"//"+location.host+location.pathname+"/"+n,a=encodeURIComponent(r);o.fullUrl="https://viewer.needle.tools?inspect&file="+a;var l='<iframe src="" style="width: 100%; height: 99%; border: none;"></iframe>';t(l)}),o.on("show",function(){const t=e();t&&t.src!==o.fullUrl&&(t.src=o.fullUrl)}),o.on("hide",function(){const t=e();t&&(t.src="")}),o.on("addTopBar",function(t){var i=new Array;i.push({name:"Open in new window \u2197",onClick:function(n){window.open(o.fullUrl,"_blank"),Ni?.hide()}}),i.push({name:"Reload",onClick:function(n){const s=e();s&&(s.src=o.fullUrl)}}),i.push({name:"Fullscreen",onClick:function(n){const s=e();s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen instanceof Function&&s.webkitRequestFullscreen()}}),t(i)}),o}function $P(){return document.querySelector("#__vconsole .vc-switch")||null}function HP(){return document.querySelector("#__vconsole")||null}const Eb=w("debugdefines");as('if(!globalThis["NEEDLE_ENGINE_VERSION"]) globalThis["NEEDLE_ENGINE_VERSION"] = "0.0.0";'),as('if(!globalThis["NEEDLE_ENGINE_GENERATOR"]) globalThis["NEEDLE_ENGINE_GENERATOR"] = "unknown";'),as('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUILD_TIME"] = "unknown";'),as('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";'),as('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.8.6";'),as('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";'),as('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:
|
|
144
|
+
`,sr?.prepend(i),o===!0&&nb()<=0&&Rb(),console.log("\u{1F335} Debug console has loaded")}},e.onerror=()=>{console.warn("\u{1F335} Debug console failed to load."+(window.crossOriginIsolated?"This page is using cross-origin isolation, so external scripts can't be loaded.":"")),Ul=!1,Ni=null},e.src="https://cdn.jsdelivr.net/npm/vconsole@3.15.1/dist/vconsole.min.js",document.body.appendChild(e)}function VP(){if(!globalThis.VConsole)return;const o=new VConsole.VConsolePlugin("needle-console","\u{1F335} Inspect glTF"),e=()=>document.querySelector("#__vc_plug_"+o._id+" iframe");return o.on("renderTab",function(t){const i=globalThis["needle:codegen_files"];if(!i||i.length===0)return;let n=globalThis["needle:codegen_files"][0];const s=n.indexOf("?");s>-1&&(n=n.substring(0,s));const r=location.protocol+"//"+location.host+location.pathname+"/"+n,a=encodeURIComponent(r);o.fullUrl="https://viewer.needle.tools?inspect&file="+a;var l='<iframe src="" style="width: 100%; height: 99%; border: none;"></iframe>';t(l)}),o.on("show",function(){const t=e();t&&t.src!==o.fullUrl&&(t.src=o.fullUrl)}),o.on("hide",function(){const t=e();t&&(t.src="")}),o.on("addTopBar",function(t){var i=new Array;i.push({name:"Open in new window \u2197",onClick:function(n){window.open(o.fullUrl,"_blank"),Ni?.hide()}}),i.push({name:"Reload",onClick:function(n){const s=e();s&&(s.src=o.fullUrl)}}),i.push({name:"Fullscreen",onClick:function(n){const s=e();s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen instanceof Function&&s.webkitRequestFullscreen()}}),t(i)}),o}function $P(){return document.querySelector("#__vconsole .vc-switch")||null}function HP(){return document.querySelector("#__vconsole")||null}const Eb=w("debugdefines");as('if(!globalThis["NEEDLE_ENGINE_VERSION"]) globalThis["NEEDLE_ENGINE_VERSION"] = "0.0.0";'),as('if(!globalThis["NEEDLE_ENGINE_GENERATOR"]) globalThis["NEEDLE_ENGINE_GENERATOR"] = "unknown";'),as('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUILD_TIME"] = "unknown";'),as('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";'),as('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.8.6";'),as('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";'),as('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";'),as('globalThis["__NEEDLE_PUBLIC_KEY__"] = "'+NEEDLE_PUBLIC_KEY+'";');const pn="4.8.6",dd="undefined",Om="Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";Eb&&console.log(`Engine version: ${pn} (generator: ${dd})
|
|
145
145
|
Project built at ${Om}`);const ma=NEEDLE_PUBLIC_KEY,fo="needle_isActiveInHierarchy",rr="builtin_components",zl="needle_editor_guid";function as(o){try{(0,eval)(o)}catch(e){Eb&&console.error(e)}}let Ab,Ib=null;function mn(){return Ab}function km(o){if(o==null){console.warn("Oh no: someone tried registering a non-existend gltf-loader. When you see this log it might mean that needle-engine is being imported multiple times. Please check your project setup.");return}Ib!==o&&(Ib=o,Ab=new o)}const _i=Symbol("shadowDomOwner"),GP=w("debugpatch");function ud(o,e,t,i){const n=GP===e;if(!t&&!i)return;const s=e+"___needle";XP(o,e,t,i);const r=Object.getOwnPropertyDescriptor(o,e),a=o[e];n&&console.log("Patch",o.constructor.name,e,r,a),r?(n&&console.log("Apply patch with existing descriptor",o.constructor.name,e,r),typeof r.value=="function"&&(o[e]=jb(r.value,o,e))):(n&&console.log("Create patch with new property",o.constructor.name,e,r),Object.defineProperty(o,e,{set:function(l){if(typeof l=="function")this[s]=jb(l,o,e);else{const c=this[s];Db(o,e,this,c,l),this[s]=l,Bb(o,e,this,c,l)}},get:function(){const l=this[s];return typeof l=="function"&&l[s]?l[s]:l}}))}function qP(o,e,t){const i=Rm(o,e);if(i)for(let n=i.length-1;n>=0;n--){const s=i[n];s.prefix===t&&(s.prefix=null),s.postfix===t&&(s.postfix=null),!s.prefix&&!s.postfix&&i.splice(n,1)}}const Lb=Symbol("Needle:Patches:WrappedFunction");function jb(o,e,t){if(o[Lb])return o;const i=function(...n){Db(e,t,this,...n);const s=o.apply(this,n);return Bb(e,t,this,s,...n),s};return i[Lb]=!0,i}const pd="Needle:Patches";function Mm(){return globalThis[pd]||(globalThis[pd]=new WeakMap),globalThis[pd]}function Rm(o,e){const t=Mm().get(o);return t?t.get(e):null}function XP(o,e,t,i){let n=Mm().get(o);n||(n=new Map,Mm().set(o,n));let s=n.get(e);s||(s=[],n.set(e,s)),s.push({prefix:t,postfix:i})}function Db(o,e,t,...i){if(!t)return;const n=Rm(o,e);if(n)for(const s of n)s.prefix?.call(t,...i)}function Bb(o,e,t,i,...n){if(!t)return;const s=Rm(o,e);if(s)for(const r of s)r.postfix?.call(t,i,...n)}const ga=[];function md(o){ga.indexOf(o)===-1&&ga.push(o)}function QP(o){const e=ga.indexOf(o);e!==-1&&ga.splice(e,1)}const fa=[];function Tm(o){fa.indexOf(o)===-1&&fa.push(o)}function YP(o){const e=fa.indexOf(o);e!==-1&&fa.splice(e,1)}function Fb(o){globalThis.dispatchEvent(new CustomEvent("needle-xrsession-start",{detail:o}));for(let e=0;e<ga.length;e++)ga[e](o)}function Ub(o){globalThis.dispatchEvent(new CustomEvent("needle-xrsession-end",{detail:o}));for(let e=0;e<fa.length;e++)fa[e](o)}const it=w("debuginput");var gd=(o=>(o.Mouse="mouse",o.Touch="touch",o.Controller="controller",o.Hand="hand",o))(gd||{}),Ee=(o=>(o.PointerDown="pointerdown",o.PointerUp="pointerup",o.PointerMove="pointermove",o.KeyDown="keydown",o.KeyUp="keyup",o.KeyPressed="keypress",o))(Ee||{});class yo extends PointerEvent{clientZ;deviceIndex;origin;source;mode;get isSpatial(){return this.mode!="screen"}get ray(){return this._ray||(this._ray=new ts(this.space.worldPosition.clone(),this.space.worldForward.clone())),this._ray}set ray(e){this._ray=e}get hasRay(){return this._ray!==void 0}_ray;space;isClick=!1;isDoubleClick=!1;get used(){return this._used}_used=!1;use(){this._used=!0}get pointerId(){return this._pointerid}_pointerid;get pointerType(){return this._pointerType}_pointerType;get type(){return this._type}_type;metadata={};intersections=new Array;constructor(e,t,i){super(e,i),this.clientZ=i.clientZ,this._pointerid=i.pointerId,this._pointerType=i.pointerType,this._type=e,this.deviceIndex=i.deviceIndex,this.origin=i.origin,this.source=t,this.mode=i.mode,this._ray=i.ray,this.space=i.device}_immediatePropagationStopped=!1;get immediatePropagationStopped(){return this._immediatePropagationStopped}_propagationStopped=!1;get propagationStopped(){return this._immediatePropagationStopped||this._propagationStopped}stopImmediatePropagation(){this._immediatePropagationStopped=!0,super.stopImmediatePropagation(),this.source?.stopImmediatePropagation()}stopPropagation(){this._propagationStopped=!0,super.stopPropagation(),this.source?.stopPropagation(),it&&console.warn("Stop propagation...",this.pointerId,this.pointerType)}}class Nl extends KeyboardEvent{source;constructor(e,t,i){super(e,i),this.source=t}stopImmediatePropagation(){super.stopImmediatePropagation(),this.source?.stopImmediatePropagation()}}class KP{key;keyType;source;constructor(e){this.key=e.key,this.keyType=e.type,this.source=e}}var Jt=(o=>(o[o.Early=-100]="Early",o[o.Default=0]="Default",o[o.Late=100]="Late",o))(Jt||{});class zb{_eventListeners={};addEventListener(e,t,i){if(this._eventListeners[e]||(this._eventListeners[e]=[]),!t||typeof t!="function"){console.error("Invalid call to addEventListener: callback is required and must be a function!");return}i?i={...i}:i={};let n=0;i?.queue!=null&&(n=i.queue);const s=this._eventListeners[e],r=s.find(a=>a.priority===n);r?r.listeners.push({callback:t,options:i}):(s.push({priority:n,listeners:[{callback:t,options:i}]}),s.sort((a,l)=>a.priority-l.priority))}removeEventListener(e,t,i){if(!this._eventListeners[e]||!t)return;const n=this._eventListeners[e];if(i?.queue!=null){const s=n.find(a=>a.priority===i.queue);if(!s)return;const r=s.listeners.findIndex(a=>a.callback===t);r>=0&&s.listeners.splice(r,1)}else for(const s of n){const r=s.listeners.findIndex(a=>a.callback===t);r>=0&&s.listeners.splice(r,1)}}dispatchEvent(e){let t=!1;if(e instanceof Nl){const i=this._eventListeners[e.type];if(i)for(const n of i)for(let s=0;s<n.listeners.length;s++){const r=n.listeners[s];if(r.options?.signal?.aborted){n.listeners.splice(s,1),s--;continue}r.options.once&&(n.listeners.splice(s,1),s--),r.callback(e)}}if(e instanceof yo){const i=this._eventListeners[e.type];if(i)for(const n of i){if(t)break;for(let s=0;s<n.listeners.length;s++){const r=n.listeners[s];if(r.options?.signal?.aborted){n.listeners.splice(s,1),s--;continue}if(e.immediatePropagationStopped){t=!0,it&&console.log("immediatePropagationStopped",e.type);break}else e.propagationStopped&&(t=!0,it&&console.log("propagationStopped",e.type));r.options.once&&(n.listeners.splice(s,1),s--),r.callback(e)}}}}_doubleClickTimeThreshold=.2;_longPressTimeThreshold=1;get mousePosition(){return this._pointerPositions[0]}get mousePositionRC(){return this._pointerPositionsRC[0]}get mouseDown(){return this._pointerDown[0]}get mouseUp(){return this._pointerUp[0]}get mouseClick(){return this._pointerClick[0]}get mouseDoubleClick(){return this._pointerDoubleClick[0]}get mousePressed(){return this._pointerPressed[0]}get mouseWheelChanged(){return this.getMouseWheelChanged(0)}get click(){return this._pointerClick[0]}get doubleClick(){return this._pointerDoubleClick[0]}getGamepad(e=0){return typeof navigator<"u"&&"getGamepads"in navigator&&navigator.getGamepads()[e]||null}_setCursorTypes=[];setCursorPointer(){this.setCursor("pointer")}setCursorNormal(){this.unsetCursor("pointer")}setCursor(e){this._setCursorTypes.push(e),this._setCursorTypes.length>10&&this._setCursorTypes.shift(),this.updateCursor()}unsetCursor(e){for(let t=this._setCursorTypes.length-1;t>=0;t--)if(this._setCursorTypes[t]===e){this._setCursorTypes.splice(t,1),this.updateCursor();break}}updateCursor(){this._setCursorTypes?.length==0?this.context.domElement.style.cursor="default":this.context.domElement.style.cursor=this._setCursorTypes[this._setCursorTypes.length-1]}getIsPointerIdInUse(e){for(const t of this._pointerEventsPressed)if(t.pointerId===e&&t.used)return!0;return!1}getPointerPressedCount(){let e=0;for(let t=0;t<this._pointerPressed.length;t++)this._pointerPressed[t]&&e++;return e}getPointerPosition(e){return e>=this._pointerPositions.length?null:this._pointerPositions[e]}getPointerPositionLastFrame(e){return e>=this._pointerPositionsLastFrame.length?null:this._pointerPositionsLastFrame[e]}getPointerPositionDelta(e){return e>=this._pointerPositionsDelta.length?null:this._pointerPositionsDelta[e]}getPointerPositionRC(e){return e>=this._pointerPositionsRC.length?null:this._pointerPositionsRC[e]}getPointerDown(e){return e>=this._pointerDown.length?!1:this._pointerDown[e]}getPointerUp(e){return e>=this._pointerUp.length?!1:this._pointerUp[e]}getPointerPressed(e){return e>=this._pointerPressed.length?!1:this._pointerPressed[e]}getPointerClicked(e){return e>=this._pointerClick.length?!1:this._pointerClick[e]}getPointerDoubleClicked(e){return e>=this._pointerDoubleClick.length?!1:this._pointerDoubleClick[e]}getPointerDownTime(e){return e>=this._pointerDownTime.length?-1:this._pointerDownTime[e]}getPointerUpTime(e){return e>=this._pointerUpTime.length?-1:this._pointerUpTime[e]}getPointerLongPress(e){return e>=this._pointerDownTime.length?!1:this.getPointerPressed(e)&&this.context.time.time-this._pointerDownTime[e]>this._longPressTimeThreshold}getIsMouse(e){return e<0||e>=this._pointerTypes.length?!1:this._pointerTypes[e]==="mouse"}getIsTouch(e){return e<0||e>=this._pointerTypes.length?!1:this._pointerTypes[e]==="touch"}getTouchesPressedCount(){let e=0;for(let t=0;t<this._pointerPressed.length;t++)this._pointerPressed[t]&&this.getIsTouch(t)&&e++;return e}getMouseWheelChanged(e=0){return e>=this._mouseWheelChanged.length?!1:this._mouseWheelChanged[e]}getMouseWheelDeltaY(e=0){return e>=this._mouseWheelDeltaY.length?0:this._mouseWheelDeltaY[e]}getPointerEvent(e){if(!(e>=this._pointerEvent.length))return this._pointerEvent[e]??void 0}*foreachPointerId(e){for(let t=0;t<this._pointerTypes.length;t++)if(this._pointerIsActive(t)){if(e!==void 0){const i=this._pointerTypes[t];if(Array.isArray(e)){let n=!1;for(const s of e)if(i===s){n=!0;break}if(!n)continue}else if(e!==i)continue}yield t}}*foreachTouchId(){for(let e=0;e<this._pointerTypes.length;e++)this._pointerTypes[e]==="touch"&&this._pointerIsActive[e]&&(yield e)}_pointerIsActive(e){return e<0?!1:this._pointerPressed[e]||this._pointerDown[e]||this._pointerUp[e]}context;_pointerDown=[!1];_pointerUp=[!1];_pointerClick=[!1];_pointerDoubleClick=[!1];_pointerPressed=[!1];_pointerPositions=[new J];_pointerPositionsLastFrame=[new J];_pointerPositionsDelta=[new J];_pointerPositionsRC=[new J];_pointerPositionDown=[new b];_pointerDownTime=[];_pointerUpTime=[];_pointerUpTimestamp=[];_pointerIds=[];_pointerTypes=[""];_mouseWheelChanged=[!1];_mouseWheelDeltaY=[0];_pointerEvent=[];_pointerEventsPressed=[];_pointerSpace=[];_pressedStack=new Map;onDownButton(e,t){let i=this._pressedStack.get(e);i||(i=[],this._pressedStack.set(e,i)),i.push(t)}onReleaseButton(e,t){const i=this._pressedStack.get(e);if(!i)return;const n=i.indexOf(t);n>=0&&i.splice(n,1)}getFirstPressedButtonForPointer(e){const t=this._pressedStack.get(e);if(t)return t[0]}getLatestPressedButtonForPointer(e){const t=this._pressedStack.get(e);if(t)return t[t.length-1]}getKeyDown(e){if(e!==void 0)return this.isKeyDown(e);for(const t in this.keysPressed){const i=this.keysPressed[t];if(i.startFrame===this.context.time.frameCount)return i.key}return null}getKeyPressed(e){if(e!==void 0)return this.isKeyPressed(e);for(const t in this.keysPressed){const i=this.keysPressed[t];if(i.pressed)return i.key}return null}getKeyUp(e){if(e!==void 0)return this.isKeyUp(e);for(const t in this.keysPressed){const i=this.keysPressed[t];return i.pressed===!1&&i.frame===this.context.time.frameCount}return null}isKeyDown(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyDown(n))return!0;return!1}const i=this.keysPressed[e];return i?i.startFrame===this.context.time.frameCount&&i.pressed:!1}isKeyUp(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyUp(n))return!0;return!1}const i=this.keysPressed[e];return i?i.frame===this.context.time.frameCount&&i.pressed===!1:!1}isKeyPressed(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyPressed(n))return!0;return!1}const i=this.keysPressed[e];return i&&i.pressed||!1}getCodeForCommonKeyName(e){if(e.length===1){if(e>="0"&&e<="9")return["Digit"+e];if(e>="a"&&e<="z")return["Key"+e.toUpperCase()];if(e==" ")return["Space"]}switch(e){case"shift":case"Shift":return["ShiftLeft","ShiftRight"];case"control":case"Control":return["ControlLeft","ControlRight"];case"alt":case"Alt":return["AltLeft","AltRight"]}return null}createInputEvent(e){switch(e.type){case"pointerdown":it&&Te("Create Pointer down"),this.onDownButton(e.deviceIndex,e.button),this.onDown(e);break;case"pointermove":it&&Te("Create Pointer move"),this.onMove(e);break;case"pointerup":it&&Te("Create Pointer up"),this.onUp(e),this.onReleaseButton(e.deviceIndex,e.button);break}}convertScreenspaceToRaycastSpace(e){return e.x=(e.x-this.context.domX)/this.context.domWidth*2-1,e.y=-((e.y-this.context.domY)/this.context.domHeight)*2+1,e}constructor(e){this.context=e,this.context.post_render_callbacks.push(this.onEndOfFrame)}_htmlEventSource;bindEvents(){this.unbindEvents(),this._htmlEventSource=this.context.renderer.domElement,window.addEventListener("contextmenu",this.onContextMenu),this._htmlEventSource.addEventListener("pointerdown",this.onPointerDown,{passive:!0}),window.addEventListener("pointermove",this.onPointerMove,{passive:!0,capture:!0}),window.addEventListener("pointerup",this.onPointerUp,{passive:!0}),window.addEventListener("pointercancel",this.onPointerCancel,{passive:!0}),window.addEventListener("touchstart",this.onTouchStart,{passive:!0}),window.addEventListener("touchmove",this.onTouchMove,{passive:!0}),window.addEventListener("touchend",this.onTouchEnd,{passive:!0}),this._htmlEventSource.addEventListener("wheel",this.onMouseWheel,{passive:!0}),window.addEventListener("wheel",this.onWheelWindow,{passive:!0}),window.addEventListener("keydown",this.onKeyDown,!1),window.addEventListener("keypress",this.onKeyPressed,!1),window.addEventListener("keyup",this.onKeyUp,!1),window.addEventListener("blur",this.onLostFocus)}unbindEvents(){for(const e in this._eventListeners)this._eventListeners[e].length=0;window.removeEventListener("contextmenu",this.onContextMenu),this._htmlEventSource?.removeEventListener("pointerdown",this.onPointerDown),window.removeEventListener("pointermove",this.onPointerMove),window.removeEventListener("pointerup",this.onPointerUp),window.removeEventListener("pointercancel",this.onPointerCancel),window.removeEventListener("touchstart",this.onTouchStart),window.removeEventListener("touchmove",this.onTouchMove),window.removeEventListener("touchend",this.onTouchEnd),this._htmlEventSource?.removeEventListener("wheel",this.onMouseWheel,!1),window.removeEventListener("wheel",this.onWheelWindow,!1),window.removeEventListener("keydown",this.onKeyDown,!1),window.removeEventListener("keypress",this.onKeyPressed,!1),window.removeEventListener("keyup",this.onKeyUp,!1),window.removeEventListener("blur",this.onLostFocus)}dispose(){const e=this.context.post_render_callbacks.indexOf(this.onEndOfFrame);e>=0&&this.context.post_render_callbacks.splice(e,1),this.unbindEvents()}onLostFocus=()=>{for(const e in this.keysPressed)this.keysPressed[e].pressed=!1};_receivedPointerMoveEventsThisFrame=new Array;onEndOfFrame=()=>{this._receivedPointerMoveEventsThisFrame.length=0;for(let e=0;e<this._pointerUp.length;e++)this._pointerUp[e]=!1;for(let e=0;e<this._pointerDown.length;e++)this._pointerDown[e]=!1;for(let e=0;e<this._pointerClick.length;e++)this._pointerClick[e]=!1;for(let e=0;e<this._pointerDoubleClick.length;e++)this._pointerDoubleClick[e]=!1;for(const e of this._pointerPositionsDelta)e.set(0,0);for(let e=0;e<this._mouseWheelChanged.length;e++)this._mouseWheelChanged[e]=!1;for(let e=0;e<this._mouseWheelDeltaY.length;e++)this._mouseWheelDeltaY[e]=0};canReceiveInput(e){return e.target===this.context.renderer?.domElement||e.target===this.context.domElement||this.context.isInAR||this.context.isInAR&&e.target===document.body&&G.isMozillaXR()?!0:(it&&console.warn("CanReceiveInput:False for",e.target),!1)}onContextMenu=e=>{this.canReceiveInput(e)!==!1&&e instanceof PointerEvent&&e.pointerType};keysPressed={};onKeyDown=e=>{if(it&&console.log(`key down ${e.code}, ${this.context.application.hasFocus}`,e),!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(t&&t.pressed)return;this.keysPressed[e.code]={pressed:!0,frame:this.context.time.frameCount+1,startFrame:this.context.time.frameCount+1,key:e.key,code:e.code};const i=new Nl("keydown",e,e);this.onDispatchEvent(i)};onKeyPressed=e=>{if(!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(!t)return;t.pressed=!0,t.frame=this.context.time.frameCount+1;const i=new Nl("keypress",e,e);this.onDispatchEvent(i)};onKeyUp=e=>{if(!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(!t)return;t.pressed=!1,t.frame=this.context.time.frameCount+1;const i=new Nl("keyup",e,e);this.onDispatchEvent(i)};onWheelWindow=e=>{document.pointerLockElement&&this.onMouseWheel(e)};onMouseWheel=e=>{if(this.canReceiveInput(e)===!1)return;this._mouseWheelDeltaY.length<=0&&this._mouseWheelDeltaY.push(0),this._mouseWheelChanged.length<=0&&this._mouseWheelChanged.push(!1),this._mouseWheelChanged[0]=!0;const t=this._mouseWheelDeltaY[0];this._mouseWheelDeltaY[0]=t+e.deltaY};onPointerDown=e=>{if(this.context.isInAR||this.canReceiveInput(e)===!1)return;e.target instanceof HTMLElement&&e.target.setPointerCapture(e.pointerId);const t=this.getPointerId(e);it&&Te(`pointer down #${t}, identifier:${e.pointerId}`);const i=this.getAndUpdateSpatialObjectForScreenPosition(t,e.clientX,e.clientY),n=new yo("pointerdown",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:t,button:e.button,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:i,pressure:e.pressure});this.onDown(n)};onPointerMove=e=>{if(this.context.isInAR||this._receivedPointerMoveEventsThisFrame.includes(e.pointerId))return;this._receivedPointerMoveEventsThisFrame.push(e.pointerId);let t=e.button;e.pointerType==="mouse"&&(t=this.getFirstPressedButtonForPointer(0)??0);const i=this.getPointerId(e,t);t===-1&&(t=i);const n=this.getAndUpdateSpatialObjectForScreenPosition(i,e.clientX,e.clientY),s=new yo("pointermove",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:i,button:t,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:n,pressure:e.pressure});this.onMove(s)};onPointerCancel=e=>{this.context.isInAR||(it&&console.log("Pointer cancel",e),this.onPointerUp(e))};onPointerUp=e=>{if(this.context.isInAR)return;e.target instanceof HTMLElement&&e.target.releasePointerCapture(e.pointerId);const t=this.getPointerId(e),i=new yo("pointerup",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:t,button:e.button,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:this.getAndUpdateSpatialObjectForScreenPosition(t,e.clientX,e.clientY),pressure:e.pressure});this.onUp(i),this._pointerIds[t]=-1,it&&console.log("ID="+t,"PointerId="+e.pointerId,"ALL:",[...this._pointerIds])};getPointerId(e,t){return e.pointerType==="mouse"?0+(t??e.button):this.getPointerIndex(e.pointerId)}getButtonName(e){const t=e.button;if(e.pointerType==="mouse")switch(t){case 0:return"left";case 1:return"middle";case 2:return"right"}return"unknown"}onTouchStart=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),s=this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),r=new yo("pointerdown",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:s,pressure:i.force});this.onDown(r)}};onTouchMove=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),s=this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),r=new yo("pointermove",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:s,pressure:i.force});this.onMove(r)}};onTouchEnd=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),s=new yo("pointerup",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),pressure:i.force});this.onUp(s),this._pointerIds[n]=-1}};tempNearPlaneVector=new b;tempFarPlaneVector=new b;tempLookMatrix=new te;getAndUpdateSpatialObjectForScreenPosition(e,t,i){let n=this._pointerSpace[e];n||(n=new M,this._pointerSpace[e]=n),this._pointerSpace[e]=n;const s=this.context.mainCamera;if(s){const r=this.tempNearPlaneVector.set(t,i,-1);this.convertScreenspaceToRaycastSpace(r);const a=this.tempFarPlaneVector.set(r.x,r.y,1);r.unproject(s),a.unproject(s);const l=s.worldUp||H(0,1,0).applyQuaternion(be(s));this.tempLookMatrix.lookAt(a,r,l),n.position.set(r.x,r.y,r.z),n.quaternion.setFromRotationMatrix(this.tempLookMatrix)}return n}isInRect(e){if(this.context.isInXR)return!0;const t=this.context.domElement.getBoundingClientRect(),i=e.clientX,n=e.clientY,s=i>=t.x&&i<=t.right&&n>=t.y&&n<=t.bottom;return it&&!s&&console.log("Not in rect",t,i,n),s}onDown(e){const t=e.pointerId;if(this.getPointerPressed(t)&&console.warn(`Received pointerDown for pointerId that is already pressed: ${t}`,it?e:""),it&&console.log(e.pointerType,"DOWN",t),!!this.isInRect(e)){for(this.setPointerState(t,this._pointerPressed,!0),this.setPointerState(t,this._pointerDown,!0),this.setPointerStateT(t,this._pointerEvent,e.source);t>=this._pointerTypes.length;)this._pointerTypes.push(e.pointerType);for(this._pointerTypes[t]=e.pointerType;t>=this._pointerPositionDown.length;)this._pointerPositionDown.push(new b);for(this._pointerPositionDown[t].set(e.clientX,e.clientY,e.clientZ??0);t>=this._pointerPositions.length;)this._pointerPositions.push(new J);this._pointerPositions[t].set(e.clientX,e.clientY),t>=this._pointerDownTime.length&&this._pointerDownTime.push(0),this._pointerDownTime[t]=this.context.time.realtimeSinceStartup,this.updatePointerPosition(e),this._pointerEventsPressed.push(e),this.onDispatchEvent(e)}}onMove(e){const t=e.pointerId,i=this.getPointerPressed(t);i===!1&&!this.isInRect(e)||e.pointerType==="touch"&&!i||(this.updatePointerPosition(e),this.setPointerStateT(t,this._pointerEvent,e.source),this.onDispatchEvent(e))}onUp(e){const t=e.pointerId;if(!this.getPointerPressed(t)){it&&console.log(e.pointerType,"UP",t,"was not down");return}it&&console.log(e.pointerType,"UP",t),this.setPointerState(t,this._pointerPressed,!1),this.setPointerStateT(t,this._pointerEvent,e.source),this.setPointerState(t,this._pointerUp,!0),this.updatePointerPosition(e);for(let a=this._pointerEventsPressed.length-1;a>=0;a--)if(this._pointerEventsPressed[a].pointerId===t){this._pointerEventsPressed.splice(a,1);break}if(!this._pointerPositionDown[t]){it&&pe("Received pointer up event without matching down event for button: "+t),console.warn("Received pointer up event without matching down event for button: "+t);return}const i=this._pointerUpTime[t],n=this._pointerDownTime[t],s=this.context.time.realtimeSinceStartup,r=s-n;if(t>=this._pointerUpTime.length&&this._pointerUpTime.push(-99),this._pointerUpTime[t]=s,r<1){let a=e.clientX-this._pointerPositionDown[t].x,l=e.clientY-this._pointerPositionDown[t].y,c=0;if(e.isSpatial&&e.clientZ!=null&&(c=e.clientZ-this._pointerPositionDown[t].z,a*=200,l*=200,c*=200),Math.abs(a)<5&&Math.abs(l)<5&&Math.abs(c)<5){this.setPointerState(t,this._pointerClick,!0),e.isClick=!0;const h=s-i;it&&console.log("CLICK",t,a,l,c,h),h<this._doubleClickTimeThreshold&&h>0&&(this.setPointerState(t,this._pointerDoubleClick,!0),e.isDoubleClick=!0)}}this.onDispatchEvent(e)}updatePointerPosition(e){const t=e.pointerId;for(;t>=this._pointerPositions.length;)this._pointerPositions.push(new J);for(;t>=this._pointerPositionsLastFrame.length;)this._pointerPositionsLastFrame.push(new J);for(;t>=this._pointerPositionsDelta.length;)this._pointerPositionsDelta.push(new J);const i=this._pointerPositionsLastFrame[t];i.copy(this._pointerPositions[t]);const n=this._pointerPositionsDelta[t];let s=e.clientX-i.x,r=e.clientY-i.y;if(e.source instanceof MouseEvent||e.source instanceof TouchEvent){const h=e.source;s===0&&h.movementX!==0&&(s=h.movementX||0),r===0&&h.movementY!==0&&(r=h.movementY||0)}n.x+=s,n.y+=r,this._pointerPositions[t].x=e.clientX,this._pointerPositions[t].y=e.clientY;const a=e.clientX,l=e.clientY;for(;t>=this._pointerPositionsRC.length;)this._pointerPositionsRC.push(new J);const c=this._pointerPositionsRC[t];c.set(a,l),this.convertScreenspaceToRaycastSpace(c)}getPointerIndex(e){let t=-1;for(let i=0;i<this._pointerIds.length;i++){if(this._pointerIds[i]===e)return i;t===-1&&this._pointerIds[i]===-1&&(t=i)}return t!==-1?(this._pointerIds[t]=e,t):(it&&console.log("PUSH pointerId:",e),this._pointerIds.push(e),this._pointerIds.length-1)}setPointerState(e,t,i){t[e]=i}setPointerStateT(e,t,i){return t[e]=i,i}onDispatchEvent(e){const t=U.Current;try{U.Current=this.context,this.dispatchEvent(e)}finally{U.Current=t}}}const ya=new te().makeRotationY(Math.PI),Wi=new z().setFromAxisAngle(new b(0,1,0),Math.PI),ZP=w("debugwebxr");class JP{priority=-1e5;gameObject;isXRRig(){return!0}get isActive(){return this.gameObject.visible}constructor(){if(this.gameObject=new M,this.gameObject.name="Implicit XR Rig",ZP){const e=Hm(16733661);e.position.y+=.5,this.gameObject.add(e)}}}const bo=w("debugwebxr"),fd=w("debugcustomgesture"),eO="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",tO="generic-trigger",iO=new z().setFromEuler(new Et(lo.degToRad(0),lo.degToRad(-90),lo.degToRad(-90))),nO=new b(.04,-.04,0);class Em{xr;get context(){return this.xr.context}inputSource;index=0;emitEvents=!0;get connected(){return this._connected}_connected=!0;get isTracking(){return this._isTracking}_isTracking=!1;get gamepad(){return this.__gamepad??=this.inputSource.gamepad}__gamepad;get isHand(){return this.hand!=null}get hand(){return this.__hand??=this.inputSource.hand}__hand;get handObject(){return this.context.renderer.xr.getHand(this.index)}get profiles(){return this.inputSource.profiles}get layout(){return this._layout}get targetRayMode(){return this.inputSource.targetRayMode}get targetRaySpace(){return this.inputSource.targetRaySpace}get gripSpace(){return this.inputSource.gripSpace}get side(){return this.__side??=this.inputSource.handedness}__side=void 0;get isRight(){return this.side==="right"}get isLeft(){return this.side==="left"}get isStylus(){return this._isMxInk}getHitTestSource(){return this._hitTestSource||this._requestHitTestSource(),this._hitTestSource}get hasHitTestSource(){return this._hitTestSource}cancelHitTestSource(){this._hitTestSource&&(this._hitTestSource.cancel(),this._hitTestSource=void 0)}_hitTestSource=void 0;_hasSelectEvent=!1;get hasSelectEvent(){return this._hasSelectEvent}_isMxInk=!1;_isMetaQuestTouchController=!1;getHitTest(){return this.xr.getHitTest(this)}_handJointPoses=new Map;getHandJointPose(e,t){if(t=t||this.xr.frame,!this.hand||!t?.getJointPose||!this.xr.referenceSpace)return null;let i=this._handJointPoses?.get(e);return i||(i=t.getJointPose(e,this.xr.referenceSpace),i&&this._handJointPoses.set(e,i),i)}_gripMatrix=new te;_gripPosition=new b;_gripQuaternion=new z;_linearVelocity=new b;_rayPositionRaw=new b;_rayRotationRaw=new z;_rayMatrix=new te;_rayPosition=new b;_rayQuaternion=new z;get gripPosition(){return H(this._gripPosition)}get gripQuaternion(){return un(this._gripQuaternion)}get gripMatrix(){return this._gripMatrix}get gripLinearVelocity(){return H(this._linearVelocity).applyQuaternion(Wi)}get rayPosition(){return H(this._rayPosition)}get rayQuaternion(){return un(this._rayQuaternion)}get gripWorldPosition(){return H(this._gripWorldPosition)}_gripWorldPosition=new b;get gripWorldQuaternion(){return un(this._gripWorldQuaternion)}_gripWorldQuaternion=new z;get rayWorldPosition(){return H(this._rayWorldPosition)}_rayWorldPosition=new b;updateRayWorldPosition(){const e=this.xr.context.mainCamera?.parent;this._rayWorldPosition.copy(this._rayPositionRaw),e&&this._rayWorldPosition.applyMatrix4(e.matrixWorld)}get rayWorldQuaternion(){return un(this._rayWorldQuaternion)}_rayWorldQuaternion=new z;get pinchPosition(){return H(this._pinchPosition)}_pinchPosition=new b;updateRayWorldQuaternion(){const e=this.xr.context.mainCamera?.parent,t=e?be(e):void 0;this._rayWorldQuaternion.copy(this._rayRotationRaw).multiply(Wi),t&&this._rayWorldQuaternion.premultiply(t)}get ray(){return this._ray.origin.copy(this.rayWorldPosition),this._ray.direction.copy(H(0,0,1).applyQuaternion(this.rayWorldQuaternion)),this._ray}_ray;_hand_wristDotUp=void 0;get handWristDotUp(){if(this._hand_wristDotUp!==void 0)return this._hand_wristDotUp;const e=this.handObject?.joints.wrist;if(e){const t=H(0,1,0).applyQuaternion(e.quaternion),i=H(0,1,0).dot(t);return this._hand_wristDotUp=i}}get isHandUpsideDown(){return this.handWristDotUp!==void 0?this.handWristDotUp<-.7:!1}get isTeleportGesture(){return this.isHandUpsideDown&&this.getGesture("pinch")?.isDown}get object(){return this._object}_object;_gripSpaceObject;_raySpaceObject;model=null;_debugAxesHelper=new gi(.15);_debugGripAxesHelper=new gi(.07);_debugRayAxesHelper=new gi(.07);async getModelUrl(){return this.getMotionController?.then(e=>e?.assetUrl||null)}constructor(e,t,i){this.xr=e,this.inputSource=t,this.index=i,this._object=new M,this._object.name=`NeedleXRController_${i}`,bo&&(this._object.add(this._debugAxesHelper),this._gripSpaceObject=new M,this._raySpaceObject=new M,this._gripSpaceObject.name=`NeedleXRController_${i}_gripSpace`,this._raySpaceObject.name=`NeedleXRController_${i}_raySpace`,this._gripSpaceObject.add(this._debugGripAxesHelper),this._raySpaceObject.add(this._debugRayAxesHelper),this.xr.context.scene.add(this._gripSpaceObject),this.xr.context.scene.add(this._raySpaceObject)),this.xr.context.scene.add(this._object),this._ray=new ts,this.pointerInit={origin:this,pointerType:this.hand?"hand":"controller",deviceIndex:this.index,pointerId:-1,mode:this.inputSource.targetRayMode,ray:this._ray,device:this._object,buttonName:"none"},this.initialize(),this.subscribeEvents()}_hitTestSourcePromise=null;_requestHitTestSource(){return this._hitTestSourcePromise?this._hitTestSourcePromise:this.xr.mode==="immersive-ar"&&this.inputSource.targetRayMode==="tracked-pointer"&&this.xr.session.requestHitTestSourceForTransientInput?this._hitTestSourcePromise=this.xr.session.requestHitTestSourceForTransientInput({profile:this.inputSource.profiles[0],offsetRay:new XRRay})?.then(e=>(this._hitTestSourcePromise=null,this.connected?this._hitTestSource=e:(e.cancel(),null)))??null:null}onPointerHits=e=>{};onUpdate(e){this.onUpdateFrame(e),this.updateInputEvents(),this.onUpdateMove()}onRenderDebug(){F.DrawSphere(this.rayWorldPosition,.003),F.DrawDirection(this.rayWorldPosition,H(0,0,10).applyQuaternion(this.rayWorldQuaternion));const e=(this.inputSource.gripSpace?this.gripWorldPosition:this.object.worldPosition).sub(this.object.worldForward.multiplyScalar(.1)),t=this.inputSource.profiles.join(`
|
|
146
146
|
`);let i=`Controller[${this.index}] (${this.inputSource.targetRayMode}, ${this.side})
|
|
147
147
|
C:${this.connected?"x":"-"} T:${this.isTracking?"x":"-"} Hand:${this.inputSource.hand?"x":"-"} Pen: ${this._isMxInk?"x":"-"}`;if(this.inputSource.hand&&(i+=`
|
package/dist/{needle-engine.bundle-BlBdO0pR.umd.cjs → needle-engine.bundle-CaNItSG7.umd.cjs}
RENAMED
|
@@ -141,7 +141,7 @@ void main(){
|
|
|
141
141
|
#__vconsole .vc-mask {
|
|
142
142
|
overflow: hidden;
|
|
143
143
|
}
|
|
144
|
-
`,fo?.prepend(i),s===!0&&Y_()<=0&&pb(),console.log("🌵 Debug console has loaded")}},e.onerror=()=>{console.warn("🌵 Debug console failed to load."+(window.crossOriginIsolated?"This page is using cross-origin isolation, so external scripts can't be loaded.":"")),Ba=!1,ki=null},e.src="https://cdn.jsdelivr.net/npm/vconsole@3.15.1/dist/vconsole.min.js",document.body.appendChild(e)}function Wx(){if(!globalThis.VConsole)return;const s=new VConsole.VConsolePlugin("needle-console","🌵 Inspect glTF"),e=()=>document.querySelector("#__vc_plug_"+s._id+" iframe");return s.on("renderTab",function(t){const i=globalThis["needle:codegen_files"];if(!i||i.length===0)return;let n=globalThis["needle:codegen_files"][0];const o=n.indexOf("?");o>-1&&(n=n.substring(0,o));const a=location.protocol+"//"+location.host+location.pathname+"/"+n,l=encodeURIComponent(a);s.fullUrl="https://viewer.needle.tools?inspect&file="+l;var h='<iframe src="" style="width: 100%; height: 99%; border: none;"></iframe>';t(h)}),s.on("show",function(){const t=e();t&&t.src!==s.fullUrl&&(t.src=s.fullUrl)}),s.on("hide",function(){const t=e();t&&(t.src="")}),s.on("addTopBar",function(t){var i=new Array;i.push({name:"Open in new window ↗",onClick:function(n){window.open(s.fullUrl,"_blank"),ki?.hide()}}),i.push({name:"Reload",onClick:function(n){const o=e();o&&(o.src=s.fullUrl)}}),i.push({name:"Fullscreen",onClick:function(n){const o=e();o.requestFullscreen?o.requestFullscreen():o.webkitRequestFullscreen instanceof Function&&o.webkitRequestFullscreen()}}),t(i)}),s}function Gx(){const s=document.querySelector("#__vconsole .vc-switch");return s||null}function Hx(){const s=document.querySelector("#__vconsole");return s||null}const mb=w("debugdefines");Ys('if(!globalThis["NEEDLE_ENGINE_VERSION"]) globalThis["NEEDLE_ENGINE_VERSION"] = "0.0.0";');Ys('if(!globalThis["NEEDLE_ENGINE_GENERATOR"]) globalThis["NEEDLE_ENGINE_GENERATOR"] = "unknown";');Ys('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUILD_TIME"] = "unknown";');Ys('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";');Ys('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.8.6";');Ys('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');Ys('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:
|
|
144
|
+
`,fo?.prepend(i),s===!0&&Y_()<=0&&pb(),console.log("🌵 Debug console has loaded")}},e.onerror=()=>{console.warn("🌵 Debug console failed to load."+(window.crossOriginIsolated?"This page is using cross-origin isolation, so external scripts can't be loaded.":"")),Ba=!1,ki=null},e.src="https://cdn.jsdelivr.net/npm/vconsole@3.15.1/dist/vconsole.min.js",document.body.appendChild(e)}function Wx(){if(!globalThis.VConsole)return;const s=new VConsole.VConsolePlugin("needle-console","🌵 Inspect glTF"),e=()=>document.querySelector("#__vc_plug_"+s._id+" iframe");return s.on("renderTab",function(t){const i=globalThis["needle:codegen_files"];if(!i||i.length===0)return;let n=globalThis["needle:codegen_files"][0];const o=n.indexOf("?");o>-1&&(n=n.substring(0,o));const a=location.protocol+"//"+location.host+location.pathname+"/"+n,l=encodeURIComponent(a);s.fullUrl="https://viewer.needle.tools?inspect&file="+l;var h='<iframe src="" style="width: 100%; height: 99%; border: none;"></iframe>';t(h)}),s.on("show",function(){const t=e();t&&t.src!==s.fullUrl&&(t.src=s.fullUrl)}),s.on("hide",function(){const t=e();t&&(t.src="")}),s.on("addTopBar",function(t){var i=new Array;i.push({name:"Open in new window ↗",onClick:function(n){window.open(s.fullUrl,"_blank"),ki?.hide()}}),i.push({name:"Reload",onClick:function(n){const o=e();o&&(o.src=s.fullUrl)}}),i.push({name:"Fullscreen",onClick:function(n){const o=e();o.requestFullscreen?o.requestFullscreen():o.webkitRequestFullscreen instanceof Function&&o.webkitRequestFullscreen()}}),t(i)}),s}function Gx(){const s=document.querySelector("#__vconsole .vc-switch");return s||null}function Hx(){const s=document.querySelector("#__vconsole");return s||null}const mb=w("debugdefines");Ys('if(!globalThis["NEEDLE_ENGINE_VERSION"]) globalThis["NEEDLE_ENGINE_VERSION"] = "0.0.0";');Ys('if(!globalThis["NEEDLE_ENGINE_GENERATOR"]) globalThis["NEEDLE_ENGINE_GENERATOR"] = "unknown";');Ys('if(!globalThis["NEEDLE_PROJECT_BUILD_TIME"]) globalThis["NEEDLE_PROJECT_BUILD_TIME"] = "unknown";');Ys('if(!globalThis["NEEDLE_PUBLIC_KEY"]) globalThis["NEEDLE_PUBLIC_KEY"] = "unknown";');Ys('globalThis["__NEEDLE_ENGINE_VERSION__"] = "4.8.6";');Ys('globalThis["__NEEDLE_ENGINE_GENERATOR__"] = "undefined";');Ys('globalThis["__NEEDLE_PROJECT_BUILD_TIME__"] = "Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";');Ys('globalThis["__NEEDLE_PUBLIC_KEY__"] = "'+NEEDLE_PUBLIC_KEY+'";');const Zi="4.8.6",Md="undefined",Wp="Wed Aug 20 2025 16:42:48 GMT+0000 (Coordinated Universal Time)";mb&&console.log(`Engine version: ${Zi} (generator: ${Md})
|
|
145
145
|
Project built at ${Wp}`);const Br=NEEDLE_PUBLIC_KEY,ss="needle_isActiveInHierarchy",wo="builtin_components",wl="needle_editor_guid";function Ys(s){try{(0,eval)(s)}catch(e){mb&&console.error(e)}}let gb,ey=null;function Ji(){return gb}function Gp(s){if(s==null){console.warn("Oh no: someone tried registering a non-existend gltf-loader. When you see this log it might mean that needle-engine is being imported multiple times. Please check your project setup.");return}ey!==s&&(ey=s,gb=new s)}const ii=Symbol("shadowDomOwner"),qx=w("debugpatch");function Od(s,e,t,i){const n=qx===e;if(!t&&!i)return;const o=e+"___needle";Qx(s,e,t,i);const r=Object.getOwnPropertyDescriptor(s,e),a=s[e];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]=iy(r.value,s,e))):(n&&console.log("Create patch with new property",s.constructor.name,e,r),Object.defineProperty(s,e,{set:function(l){if(typeof l=="function")this[o]=iy(l,s,e);else{const h=this[o];yb(s,e,this,h,l),this[o]=l,_b(s,e,this,h,l)}},get:function(){const l=this[o];return typeof l=="function"&&l[o]?l[o]:l}}))}function Xx(s,e,t){const i=Hp(s,e);if(i)for(let n=i.length-1;n>=0;n--){const o=i[n];o.prefix===t&&(o.prefix=null),o.postfix===t&&(o.postfix=null),!o.prefix&&!o.postfix&&i.splice(n,1)}}const ty=Symbol("Needle:Patches:WrappedFunction");function iy(s,e,t){if(s[ty])return s;const i=function(...n){yb(e,t,this,...n);const o=s.apply(this,n);return _b(e,t,this,o,...n),o};return i[ty]=!0,i}const kh="Needle:Patches";function Wf(){return globalThis[kh]||(globalThis[kh]=new WeakMap),globalThis[kh]}function Hp(s,e){const t=Wf().get(s);return t?t.get(e):null}function Qx(s,e,t,i){let n=Wf().get(s);n||(n=new Map,Wf().set(s,n));let o=n.get(e);o||(o=[],n.set(e,o)),o.push({prefix:t,postfix:i})}function yb(s,e,t,...i){if(!t)return;const n=Hp(s,e);if(n)for(const o of n)o.prefix?.call(t,...i)}function _b(s,e,t,i,...n){if(!t)return;const o=Hp(s,e);if(o)for(const r of o)r.postfix?.call(t,i,...n)}const ea=[];function kd(s){ea.indexOf(s)===-1&&ea.push(s)}function Yx(s){const e=ea.indexOf(s);e!==-1&&ea.splice(e,1)}const ta=[];function qp(s){ta.indexOf(s)===-1&&ta.push(s)}function Kx(s){const e=ta.indexOf(s);e!==-1&&ta.splice(e,1)}function bb(s){globalThis.dispatchEvent(new CustomEvent("needle-xrsession-start",{detail:s}));for(let e=0;e<ea.length;e++)ea[e](s)}function vb(s){globalThis.dispatchEvent(new CustomEvent("needle-xrsession-end",{detail:s}));for(let e=0;e<ta.length;e++)ta[e](s)}const He=w("debuginput");var Rd=(s=>(s.Mouse="mouse",s.Touch="touch",s.Controller="controller",s.Hand="hand",s))(Rd||{}),we=(s=>(s.PointerDown="pointerdown",s.PointerUp="pointerup",s.PointerMove="pointermove",s.KeyDown="keydown",s.KeyUp="keyup",s.KeyPressed="keypress",s))(we||{});class Xn extends PointerEvent{clientZ;deviceIndex;origin;source;mode;get isSpatial(){return this.mode!="screen"}get ray(){return this._ray||(this._ray=new c.Ray(this.space.worldPosition.clone(),this.space.worldForward.clone())),this._ray}set ray(e){this._ray=e}get hasRay(){return this._ray!==void 0}_ray;space;isClick=!1;isDoubleClick=!1;get used(){return this._used}_used=!1;use(){this._used=!0}get pointerId(){return this._pointerid}_pointerid;get pointerType(){return this._pointerType}_pointerType;get type(){return this._type}_type;metadata={};intersections=new Array;constructor(e,t,i){super(e,i),this.clientZ=i.clientZ,this._pointerid=i.pointerId,this._pointerType=i.pointerType,this._type=e,this.deviceIndex=i.deviceIndex,this.origin=i.origin,this.source=t,this.mode=i.mode,this._ray=i.ray,this.space=i.device}_immediatePropagationStopped=!1;get immediatePropagationStopped(){return this._immediatePropagationStopped}_propagationStopped=!1;get propagationStopped(){return this._immediatePropagationStopped||this._propagationStopped}stopImmediatePropagation(){this._immediatePropagationStopped=!0,super.stopImmediatePropagation(),this.source?.stopImmediatePropagation()}stopPropagation(){this._propagationStopped=!0,super.stopPropagation(),this.source?.stopPropagation(),He&&console.warn("Stop propagation...",this.pointerId,this.pointerType)}}class il extends KeyboardEvent{source;constructor(e,t,i){super(e,i),this.source=t}stopImmediatePropagation(){super.stopImmediatePropagation(),this.source?.stopImmediatePropagation()}}class Zx{key;keyType;source;constructor(e){this.key=e.key,this.keyType=e.type,this.source=e}}var Vt=(s=>(s[s.Early=-100]="Early",s[s.Default=0]="Default",s[s.Late=100]="Late",s))(Vt||{});class wb{_eventListeners={};addEventListener(e,t,i){if(this._eventListeners[e]||(this._eventListeners[e]=[]),!t||typeof t!="function"){console.error("Invalid call to addEventListener: callback is required and must be a function!");return}i?i={...i}:i={};let n=0;i?.queue!=null&&(n=i.queue);const o=this._eventListeners[e],r=o.find(a=>a.priority===n);r?r.listeners.push({callback:t,options:i}):(o.push({priority:n,listeners:[{callback:t,options:i}]}),o.sort((a,l)=>a.priority-l.priority))}removeEventListener(e,t,i){if(!this._eventListeners[e]||!t)return;const n=this._eventListeners[e];if(i?.queue!=null){const o=n.find(a=>a.priority===i.queue);if(!o)return;const r=o.listeners.findIndex(a=>a.callback===t);r>=0&&o.listeners.splice(r,1)}else for(const o of n){const r=o.listeners.findIndex(a=>a.callback===t);r>=0&&o.listeners.splice(r,1)}}dispatchEvent(e){let t=!1;if(e instanceof il){const i=this._eventListeners[e.type];if(i)for(const n of i)for(let o=0;o<n.listeners.length;o++){const r=n.listeners[o];if(r.options?.signal?.aborted){n.listeners.splice(o,1),o--;continue}r.options.once&&(n.listeners.splice(o,1),o--),r.callback(e)}}if(e instanceof Xn){const i=this._eventListeners[e.type];if(i)for(const n of i){if(t)break;for(let o=0;o<n.listeners.length;o++){const r=n.listeners[o];if(r.options?.signal?.aborted){n.listeners.splice(o,1),o--;continue}if(e.immediatePropagationStopped){t=!0,He&&console.log("immediatePropagationStopped",e.type);break}else e.propagationStopped&&(t=!0,He&&console.log("propagationStopped",e.type));r.options.once&&(n.listeners.splice(o,1),o--),r.callback(e)}}}}_doubleClickTimeThreshold=.2;_longPressTimeThreshold=1;get mousePosition(){return this._pointerPositions[0]}get mousePositionRC(){return this._pointerPositionsRC[0]}get mouseDown(){return this._pointerDown[0]}get mouseUp(){return this._pointerUp[0]}get mouseClick(){return this._pointerClick[0]}get mouseDoubleClick(){return this._pointerDoubleClick[0]}get mousePressed(){return this._pointerPressed[0]}get mouseWheelChanged(){return this.getMouseWheelChanged(0)}get click(){return this._pointerClick[0]}get doubleClick(){return this._pointerDoubleClick[0]}getGamepad(e=0){return typeof navigator<"u"&&"getGamepads"in navigator&&navigator.getGamepads()[e]||null}_setCursorTypes=[];setCursorPointer(){this.setCursor("pointer")}setCursorNormal(){this.unsetCursor("pointer")}setCursor(e){this._setCursorTypes.push(e),this._setCursorTypes.length>10&&this._setCursorTypes.shift(),this.updateCursor()}unsetCursor(e){for(let t=this._setCursorTypes.length-1;t>=0;t--)if(this._setCursorTypes[t]===e){this._setCursorTypes.splice(t,1),this.updateCursor();break}}updateCursor(){this._setCursorTypes?.length==0?this.context.domElement.style.cursor="default":this.context.domElement.style.cursor=this._setCursorTypes[this._setCursorTypes.length-1]}getIsPointerIdInUse(e){for(const t of this._pointerEventsPressed)if(t.pointerId===e&&t.used)return!0;return!1}getPointerPressedCount(){let e=0;for(let t=0;t<this._pointerPressed.length;t++)this._pointerPressed[t]&&e++;return e}getPointerPosition(e){return e>=this._pointerPositions.length?null:this._pointerPositions[e]}getPointerPositionLastFrame(e){return e>=this._pointerPositionsLastFrame.length?null:this._pointerPositionsLastFrame[e]}getPointerPositionDelta(e){return e>=this._pointerPositionsDelta.length?null:this._pointerPositionsDelta[e]}getPointerPositionRC(e){return e>=this._pointerPositionsRC.length?null:this._pointerPositionsRC[e]}getPointerDown(e){return e>=this._pointerDown.length?!1:this._pointerDown[e]}getPointerUp(e){return e>=this._pointerUp.length?!1:this._pointerUp[e]}getPointerPressed(e){return e>=this._pointerPressed.length?!1:this._pointerPressed[e]}getPointerClicked(e){return e>=this._pointerClick.length?!1:this._pointerClick[e]}getPointerDoubleClicked(e){return e>=this._pointerDoubleClick.length?!1:this._pointerDoubleClick[e]}getPointerDownTime(e){return e>=this._pointerDownTime.length?-1:this._pointerDownTime[e]}getPointerUpTime(e){return e>=this._pointerUpTime.length?-1:this._pointerUpTime[e]}getPointerLongPress(e){return e>=this._pointerDownTime.length?!1:this.getPointerPressed(e)&&this.context.time.time-this._pointerDownTime[e]>this._longPressTimeThreshold}getIsMouse(e){return e<0||e>=this._pointerTypes.length?!1:this._pointerTypes[e]==="mouse"}getIsTouch(e){return e<0||e>=this._pointerTypes.length?!1:this._pointerTypes[e]==="touch"}getTouchesPressedCount(){let e=0;for(let t=0;t<this._pointerPressed.length;t++)this._pointerPressed[t]&&this.getIsTouch(t)&&e++;return e}getMouseWheelChanged(e=0){return e>=this._mouseWheelChanged.length?!1:this._mouseWheelChanged[e]}getMouseWheelDeltaY(e=0){return e>=this._mouseWheelDeltaY.length?0:this._mouseWheelDeltaY[e]}getPointerEvent(e){if(!(e>=this._pointerEvent.length))return this._pointerEvent[e]??void 0}*foreachPointerId(e){for(let t=0;t<this._pointerTypes.length;t++)if(this._pointerIsActive(t)){if(e!==void 0){const i=this._pointerTypes[t];if(Array.isArray(e)){let n=!1;for(const o of e)if(i===o){n=!0;break}if(!n)continue}else if(e!==i)continue}yield t}}*foreachTouchId(){for(let e=0;e<this._pointerTypes.length;e++)this._pointerTypes[e]==="touch"&&this._pointerIsActive[e]&&(yield e)}_pointerIsActive(e){return e<0?!1:this._pointerPressed[e]||this._pointerDown[e]||this._pointerUp[e]}context;_pointerDown=[!1];_pointerUp=[!1];_pointerClick=[!1];_pointerDoubleClick=[!1];_pointerPressed=[!1];_pointerPositions=[new c.Vector2];_pointerPositionsLastFrame=[new c.Vector2];_pointerPositionsDelta=[new c.Vector2];_pointerPositionsRC=[new c.Vector2];_pointerPositionDown=[new c.Vector3];_pointerDownTime=[];_pointerUpTime=[];_pointerUpTimestamp=[];_pointerIds=[];_pointerTypes=[""];_mouseWheelChanged=[!1];_mouseWheelDeltaY=[0];_pointerEvent=[];_pointerEventsPressed=[];_pointerSpace=[];_pressedStack=new Map;onDownButton(e,t){let i=this._pressedStack.get(e);i||(i=[],this._pressedStack.set(e,i)),i.push(t)}onReleaseButton(e,t){const i=this._pressedStack.get(e);if(!i)return;const n=i.indexOf(t);n>=0&&i.splice(n,1)}getFirstPressedButtonForPointer(e){const t=this._pressedStack.get(e);if(t)return t[0]}getLatestPressedButtonForPointer(e){const t=this._pressedStack.get(e);if(t)return t[t.length-1]}getKeyDown(e){if(e!==void 0)return this.isKeyDown(e);for(const t in this.keysPressed){const i=this.keysPressed[t];if(i.startFrame===this.context.time.frameCount)return i.key}return null}getKeyPressed(e){if(e!==void 0)return this.isKeyPressed(e);for(const t in this.keysPressed){const i=this.keysPressed[t];if(i.pressed)return i.key}return null}getKeyUp(e){if(e!==void 0)return this.isKeyUp(e);for(const t in this.keysPressed){const i=this.keysPressed[t];return i.pressed===!1&&i.frame===this.context.time.frameCount}return null}isKeyDown(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyDown(n))return!0;return!1}const i=this.keysPressed[e];return i?i.startFrame===this.context.time.frameCount&&i.pressed:!1}isKeyUp(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyUp(n))return!0;return!1}const i=this.keysPressed[e];return i?i.frame===this.context.time.frameCount&&i.pressed===!1:!1}isKeyPressed(e){if(!this.context.application.isVisible||!this.context.application.hasFocus)return!1;const t=this.getCodeForCommonKeyName(e);if(t!==null){for(const n of t)if(this.isKeyPressed(n))return!0;return!1}const i=this.keysPressed[e];return i&&i.pressed||!1}getCodeForCommonKeyName(e){if(e.length===1){if(e>="0"&&e<="9")return["Digit"+e];if(e>="a"&&e<="z")return["Key"+e.toUpperCase()];if(e==" ")return["Space"]}switch(e){case"shift":case"Shift":return["ShiftLeft","ShiftRight"];case"control":case"Control":return["ControlLeft","ControlRight"];case"alt":case"Alt":return["AltLeft","AltRight"]}return null}createInputEvent(e){switch(e.type){case"pointerdown":He&&Se("Create Pointer down"),this.onDownButton(e.deviceIndex,e.button),this.onDown(e);break;case"pointermove":He&&Se("Create Pointer move"),this.onMove(e);break;case"pointerup":He&&Se("Create Pointer up"),this.onUp(e),this.onReleaseButton(e.deviceIndex,e.button);break}}convertScreenspaceToRaycastSpace(e){return e.x=(e.x-this.context.domX)/this.context.domWidth*2-1,e.y=-((e.y-this.context.domY)/this.context.domHeight)*2+1,e}constructor(e){this.context=e,this.context.post_render_callbacks.push(this.onEndOfFrame)}_htmlEventSource;bindEvents(){this.unbindEvents(),this._htmlEventSource=this.context.renderer.domElement,window.addEventListener("contextmenu",this.onContextMenu),this._htmlEventSource.addEventListener("pointerdown",this.onPointerDown,{passive:!0}),window.addEventListener("pointermove",this.onPointerMove,{passive:!0,capture:!0}),window.addEventListener("pointerup",this.onPointerUp,{passive:!0}),window.addEventListener("pointercancel",this.onPointerCancel,{passive:!0}),window.addEventListener("touchstart",this.onTouchStart,{passive:!0}),window.addEventListener("touchmove",this.onTouchMove,{passive:!0}),window.addEventListener("touchend",this.onTouchEnd,{passive:!0}),this._htmlEventSource.addEventListener("wheel",this.onMouseWheel,{passive:!0}),window.addEventListener("wheel",this.onWheelWindow,{passive:!0}),window.addEventListener("keydown",this.onKeyDown,!1),window.addEventListener("keypress",this.onKeyPressed,!1),window.addEventListener("keyup",this.onKeyUp,!1),window.addEventListener("blur",this.onLostFocus)}unbindEvents(){for(const e in this._eventListeners)this._eventListeners[e].length=0;window.removeEventListener("contextmenu",this.onContextMenu),this._htmlEventSource?.removeEventListener("pointerdown",this.onPointerDown),window.removeEventListener("pointermove",this.onPointerMove),window.removeEventListener("pointerup",this.onPointerUp),window.removeEventListener("pointercancel",this.onPointerCancel),window.removeEventListener("touchstart",this.onTouchStart),window.removeEventListener("touchmove",this.onTouchMove),window.removeEventListener("touchend",this.onTouchEnd),this._htmlEventSource?.removeEventListener("wheel",this.onMouseWheel,!1),window.removeEventListener("wheel",this.onWheelWindow,!1),window.removeEventListener("keydown",this.onKeyDown,!1),window.removeEventListener("keypress",this.onKeyPressed,!1),window.removeEventListener("keyup",this.onKeyUp,!1),window.removeEventListener("blur",this.onLostFocus)}dispose(){const e=this.context.post_render_callbacks.indexOf(this.onEndOfFrame);e>=0&&this.context.post_render_callbacks.splice(e,1),this.unbindEvents()}onLostFocus=()=>{for(const e in this.keysPressed)this.keysPressed[e].pressed=!1};_receivedPointerMoveEventsThisFrame=new Array;onEndOfFrame=()=>{this._receivedPointerMoveEventsThisFrame.length=0;for(let e=0;e<this._pointerUp.length;e++)this._pointerUp[e]=!1;for(let e=0;e<this._pointerDown.length;e++)this._pointerDown[e]=!1;for(let e=0;e<this._pointerClick.length;e++)this._pointerClick[e]=!1;for(let e=0;e<this._pointerDoubleClick.length;e++)this._pointerDoubleClick[e]=!1;for(const e of this._pointerPositionsDelta)e.set(0,0);for(let e=0;e<this._mouseWheelChanged.length;e++)this._mouseWheelChanged[e]=!1;for(let e=0;e<this._mouseWheelDeltaY.length;e++)this._mouseWheelDeltaY[e]=0};canReceiveInput(e){return e.target===this.context.renderer?.domElement||e.target===this.context.domElement||this.context.isInAR||this.context.isInAR&&e.target===document.body&&exports.DeviceUtilities.isMozillaXR()?!0:(He&&console.warn("CanReceiveInput:False for",e.target),!1)}onContextMenu=e=>{this.canReceiveInput(e)!==!1&&e instanceof PointerEvent&&e.pointerType};keysPressed={};onKeyDown=e=>{if(He&&console.log(`key down ${e.code}, ${this.context.application.hasFocus}`,e),!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(t&&t.pressed)return;this.keysPressed[e.code]={pressed:!0,frame:this.context.time.frameCount+1,startFrame:this.context.time.frameCount+1,key:e.key,code:e.code};const i=new il("keydown",e,e);this.onDispatchEvent(i)};onKeyPressed=e=>{if(!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(!t)return;t.pressed=!0,t.frame=this.context.time.frameCount+1;const i=new il("keypress",e,e);this.onDispatchEvent(i)};onKeyUp=e=>{if(!this.context.application.hasFocus)return;const t=this.keysPressed[e.code];if(!t)return;t.pressed=!1,t.frame=this.context.time.frameCount+1;const i=new il("keyup",e,e);this.onDispatchEvent(i)};onWheelWindow=e=>{document.pointerLockElement&&this.onMouseWheel(e)};onMouseWheel=e=>{if(this.canReceiveInput(e)===!1)return;this._mouseWheelDeltaY.length<=0&&this._mouseWheelDeltaY.push(0),this._mouseWheelChanged.length<=0&&this._mouseWheelChanged.push(!1),this._mouseWheelChanged[0]=!0;const t=this._mouseWheelDeltaY[0];this._mouseWheelDeltaY[0]=t+e.deltaY};onPointerDown=e=>{if(this.context.isInAR||this.canReceiveInput(e)===!1)return;e.target instanceof HTMLElement&&e.target.setPointerCapture(e.pointerId);const t=this.getPointerId(e);He&&Se(`pointer down #${t}, identifier:${e.pointerId}`);const i=this.getAndUpdateSpatialObjectForScreenPosition(t,e.clientX,e.clientY),n=new Xn("pointerdown",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:t,button:e.button,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:i,pressure:e.pressure});this.onDown(n)};onPointerMove=e=>{if(this.context.isInAR||this._receivedPointerMoveEventsThisFrame.includes(e.pointerId))return;this._receivedPointerMoveEventsThisFrame.push(e.pointerId);let t=e.button;e.pointerType==="mouse"&&(t=this.getFirstPressedButtonForPointer(0)??0);const i=this.getPointerId(e,t);t===-1&&(t=i);const n=this.getAndUpdateSpatialObjectForScreenPosition(i,e.clientX,e.clientY),o=new Xn("pointermove",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:i,button:t,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:n,pressure:e.pressure});this.onMove(o)};onPointerCancel=e=>{this.context.isInAR||(He&&console.log("Pointer cancel",e),this.onPointerUp(e))};onPointerUp=e=>{if(this.context.isInAR)return;e.target instanceof HTMLElement&&e.target.releasePointerCapture(e.pointerId);const t=this.getPointerId(e),i=new Xn("pointerup",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:t,button:e.button,clientX:e.clientX,clientY:e.clientY,pointerType:e.pointerType,buttonName:this.getButtonName(e),device:this.getAndUpdateSpatialObjectForScreenPosition(t,e.clientX,e.clientY),pressure:e.pressure});this.onUp(i),this._pointerIds[t]=-1,He&&console.log("ID="+t,"PointerId="+e.pointerId,"ALL:",[...this._pointerIds])};getPointerId(e,t){return e.pointerType==="mouse"?0+(t??e.button):this.getPointerIndex(e.pointerId)}getButtonName(e){const t=e.button;if(e.pointerType==="mouse")switch(t){case 0:return"left";case 1:return"middle";case 2:return"right"}return"unknown"}onTouchStart=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),o=this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),r=new Xn("pointerdown",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:o,pressure:i.force});this.onDown(r)}};onTouchMove=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),o=this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),r=new Xn("pointermove",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:o,pressure:i.force});this.onMove(r)}};onTouchEnd=e=>{if(this.context.isInAR)for(let t=0;t<e.changedTouches.length;t++){const i=e.changedTouches[t],n=this.getPointerIndex(i.identifier),o=new Xn("pointerup",e,{origin:this,mode:"screen",deviceIndex:0,pointerId:n,button:0,clientX:i.clientX,clientY:i.clientY,pointerType:"touch",buttonName:"unknown",device:this.getAndUpdateSpatialObjectForScreenPosition(n,i.clientX,i.clientY),pressure:i.force});this.onUp(o),this._pointerIds[n]=-1}};tempNearPlaneVector=new c.Vector3;tempFarPlaneVector=new c.Vector3;tempLookMatrix=new c.Matrix4;getAndUpdateSpatialObjectForScreenPosition(e,t,i){let n=this._pointerSpace[e];n||(n=new c.Object3D,this._pointerSpace[e]=n),this._pointerSpace[e]=n;const o=this.context.mainCamera;if(o){const r=this.tempNearPlaneVector.set(t,i,-1);this.convertScreenspaceToRaycastSpace(r);const a=this.tempFarPlaneVector.set(r.x,r.y,1);r.unproject(o),a.unproject(o);const l=o.worldUp||V(0,1,0).applyQuaternion(ue(o));this.tempLookMatrix.lookAt(a,r,l),n.position.set(r.x,r.y,r.z),n.quaternion.setFromRotationMatrix(this.tempLookMatrix)}return n}isInRect(e){if(this.context.isInXR)return!0;const t=this.context.domElement.getBoundingClientRect(),i=e.clientX,n=e.clientY,o=i>=t.x&&i<=t.right&&n>=t.y&&n<=t.bottom;return He&&!o&&console.log("Not in rect",t,i,n),o}onDown(e){const t=e.pointerId;if(this.getPointerPressed(t)&&console.warn(`Received pointerDown for pointerId that is already pressed: ${t}`,He?e:""),He&&console.log(e.pointerType,"DOWN",t),!!this.isInRect(e)){for(this.setPointerState(t,this._pointerPressed,!0),this.setPointerState(t,this._pointerDown,!0),this.setPointerStateT(t,this._pointerEvent,e.source);t>=this._pointerTypes.length;)this._pointerTypes.push(e.pointerType);for(this._pointerTypes[t]=e.pointerType;t>=this._pointerPositionDown.length;)this._pointerPositionDown.push(new c.Vector3);for(this._pointerPositionDown[t].set(e.clientX,e.clientY,e.clientZ??0);t>=this._pointerPositions.length;)this._pointerPositions.push(new c.Vector2);this._pointerPositions[t].set(e.clientX,e.clientY),t>=this._pointerDownTime.length&&this._pointerDownTime.push(0),this._pointerDownTime[t]=this.context.time.realtimeSinceStartup,this.updatePointerPosition(e),this._pointerEventsPressed.push(e),this.onDispatchEvent(e)}}onMove(e){const t=e.pointerId,i=this.getPointerPressed(t);i===!1&&!this.isInRect(e)||e.pointerType==="touch"&&!i||(this.updatePointerPosition(e),this.setPointerStateT(t,this._pointerEvent,e.source),this.onDispatchEvent(e))}onUp(e){const t=e.pointerId;if(!this.getPointerPressed(t)){He&&console.log(e.pointerType,"UP",t,"was not down");return}He&&console.log(e.pointerType,"UP",t),this.setPointerState(t,this._pointerPressed,!1),this.setPointerStateT(t,this._pointerEvent,e.source),this.setPointerState(t,this._pointerUp,!0),this.updatePointerPosition(e);for(let l=this._pointerEventsPressed.length-1;l>=0;l--)if(this._pointerEventsPressed[l].pointerId===t){this._pointerEventsPressed.splice(l,1);break}if(!this._pointerPositionDown[t]){He&&ce("Received pointer up event without matching down event for button: "+t),console.warn("Received pointer up event without matching down event for button: "+t);return}const n=this._pointerUpTime[t],o=this._pointerDownTime[t],r=this.context.time.realtimeSinceStartup,a=r-o;if(t>=this._pointerUpTime.length&&this._pointerUpTime.push(-99),this._pointerUpTime[t]=r,a<1){let l=e.clientX-this._pointerPositionDown[t].x,h=e.clientY-this._pointerPositionDown[t].y,d=0;if(e.isSpatial&&e.clientZ!=null&&(d=e.clientZ-this._pointerPositionDown[t].z,l*=200,h*=200,d*=200),Math.abs(l)<5&&Math.abs(h)<5&&Math.abs(d)<5){this.setPointerState(t,this._pointerClick,!0),e.isClick=!0;const u=r-n;He&&console.log("CLICK",t,l,h,d,u),u<this._doubleClickTimeThreshold&&u>0&&(this.setPointerState(t,this._pointerDoubleClick,!0),e.isDoubleClick=!0)}}this.onDispatchEvent(e)}updatePointerPosition(e){const t=e.pointerId;for(;t>=this._pointerPositions.length;)this._pointerPositions.push(new c.Vector2);for(;t>=this._pointerPositionsLastFrame.length;)this._pointerPositionsLastFrame.push(new c.Vector2);for(;t>=this._pointerPositionsDelta.length;)this._pointerPositionsDelta.push(new c.Vector2);const i=this._pointerPositionsLastFrame[t];i.copy(this._pointerPositions[t]);const n=this._pointerPositionsDelta[t];let o=e.clientX-i.x,r=e.clientY-i.y;if(e.source instanceof MouseEvent||e.source instanceof TouchEvent){const d=e.source;o===0&&d.movementX!==0&&(o=d.movementX||0),r===0&&d.movementY!==0&&(r=d.movementY||0)}n.x+=o,n.y+=r,this._pointerPositions[t].x=e.clientX,this._pointerPositions[t].y=e.clientY;const a=e.clientX,l=e.clientY;for(;t>=this._pointerPositionsRC.length;)this._pointerPositionsRC.push(new c.Vector2);const h=this._pointerPositionsRC[t];h.set(a,l),this.convertScreenspaceToRaycastSpace(h)}getPointerIndex(e){let t=-1;for(let i=0;i<this._pointerIds.length;i++){if(this._pointerIds[i]===e)return i;t===-1&&this._pointerIds[i]===-1&&(t=i)}return t!==-1?(this._pointerIds[t]=e,t):(He&&console.log("PUSH pointerId:",e),this._pointerIds.push(e),this._pointerIds.length-1)}setPointerState(e,t,i){t[e]=i}setPointerStateT(e,t,i){return t[e]=i,i}onDispatchEvent(e){const t=U.Current;try{U.Current=this.context,this.dispatchEvent(e)}finally{U.Current=t}}}const Wr=new c.Matrix4().makeRotationY(Math.PI),Mi=new c.Quaternion().setFromAxisAngle(new c.Vector3(0,1,0),Math.PI),Jx=w("debugwebxr");class eS{priority=-1e5;gameObject;isXRRig(){return!0}get isActive(){return this.gameObject.visible}constructor(){if(this.gameObject=new c.Object3D,this.gameObject.name="Implicit XR Rig",Jx){const e=em(16733661);e.position.y+=.5,this.gameObject.add(e)}}}const Fn=w("debugwebxr"),Kc=w("debugcustomgesture"),tS="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",iS="generic-trigger",nS=new c.Quaternion().setFromEuler(new c.Euler(c.MathUtils.degToRad(0),c.MathUtils.degToRad(-90),c.MathUtils.degToRad(-90))),sS=new c.Vector3(.04,-.04,0);class Xp{xr;get context(){return this.xr.context}inputSource;index=0;emitEvents=!0;get connected(){return this._connected}_connected=!0;get isTracking(){return this._isTracking}_isTracking=!1;get gamepad(){return this.__gamepad??=this.inputSource.gamepad}__gamepad;get isHand(){return this.hand!=null}get hand(){return this.__hand??=this.inputSource.hand}__hand;get handObject(){return this.context.renderer.xr.getHand(this.index)}get profiles(){return this.inputSource.profiles}get layout(){return this._layout}get targetRayMode(){return this.inputSource.targetRayMode}get targetRaySpace(){return this.inputSource.targetRaySpace}get gripSpace(){return this.inputSource.gripSpace}get side(){return this.__side??=this.inputSource.handedness}__side=void 0;get isRight(){return this.side==="right"}get isLeft(){return this.side==="left"}get isStylus(){return this._isMxInk}getHitTestSource(){return this._hitTestSource||this._requestHitTestSource(),this._hitTestSource}get hasHitTestSource(){return this._hitTestSource}cancelHitTestSource(){this._hitTestSource&&(this._hitTestSource.cancel(),this._hitTestSource=void 0)}_hitTestSource=void 0;_hasSelectEvent=!1;get hasSelectEvent(){return this._hasSelectEvent}_isMxInk=!1;_isMetaQuestTouchController=!1;getHitTest(){return this.xr.getHitTest(this)}_handJointPoses=new Map;getHandJointPose(e,t){if(t=t||this.xr.frame,!this.hand||!t?.getJointPose||!this.xr.referenceSpace)return null;let i=this._handJointPoses?.get(e);return i||(i=t.getJointPose(e,this.xr.referenceSpace),i&&this._handJointPoses.set(e,i),i)}_gripMatrix=new c.Matrix4;_gripPosition=new c.Vector3;_gripQuaternion=new c.Quaternion;_linearVelocity=new c.Vector3;_rayPositionRaw=new c.Vector3;_rayRotationRaw=new c.Quaternion;_rayMatrix=new c.Matrix4;_rayPosition=new c.Vector3;_rayQuaternion=new c.Quaternion;get gripPosition(){return V(this._gripPosition)}get gripQuaternion(){return Xi(this._gripQuaternion)}get gripMatrix(){return this._gripMatrix}get gripLinearVelocity(){return V(this._linearVelocity).applyQuaternion(Mi)}get rayPosition(){return V(this._rayPosition)}get rayQuaternion(){return Xi(this._rayQuaternion)}get gripWorldPosition(){return V(this._gripWorldPosition)}_gripWorldPosition=new c.Vector3;get gripWorldQuaternion(){return Xi(this._gripWorldQuaternion)}_gripWorldQuaternion=new c.Quaternion;get rayWorldPosition(){return V(this._rayWorldPosition)}_rayWorldPosition=new c.Vector3;updateRayWorldPosition(){const e=this.xr.context.mainCamera?.parent;this._rayWorldPosition.copy(this._rayPositionRaw),e&&this._rayWorldPosition.applyMatrix4(e.matrixWorld)}get rayWorldQuaternion(){return Xi(this._rayWorldQuaternion)}_rayWorldQuaternion=new c.Quaternion;get pinchPosition(){return V(this._pinchPosition)}_pinchPosition=new c.Vector3;updateRayWorldQuaternion(){const e=this.xr.context.mainCamera?.parent,t=e?ue(e):void 0;this._rayWorldQuaternion.copy(this._rayRotationRaw).multiply(Mi),t&&this._rayWorldQuaternion.premultiply(t)}get ray(){return this._ray.origin.copy(this.rayWorldPosition),this._ray.direction.copy(V(0,0,1).applyQuaternion(this.rayWorldQuaternion)),this._ray}_ray;_hand_wristDotUp=void 0;get handWristDotUp(){if(this._hand_wristDotUp!==void 0)return this._hand_wristDotUp;const e=this.handObject?.joints.wrist;if(e){const t=V(0,1,0).applyQuaternion(e.quaternion),i=V(0,1,0).dot(t);return this._hand_wristDotUp=i}}get isHandUpsideDown(){return this.handWristDotUp!==void 0?this.handWristDotUp<-.7:!1}get isTeleportGesture(){return this.isHandUpsideDown&&this.getGesture("pinch")?.isDown}get object(){return this._object}_object;_gripSpaceObject;_raySpaceObject;model=null;_debugAxesHelper=new c.AxesHelper(.15);_debugGripAxesHelper=new c.AxesHelper(.07);_debugRayAxesHelper=new c.AxesHelper(.07);async getModelUrl(){return this.getMotionController?.then(e=>e?.assetUrl||null)}constructor(e,t,i){this.xr=e,this.inputSource=t,this.index=i,this._object=new c.Object3D,this._object.name=`NeedleXRController_${i}`,Fn&&(this._object.add(this._debugAxesHelper),this._gripSpaceObject=new c.Object3D,this._raySpaceObject=new c.Object3D,this._gripSpaceObject.name=`NeedleXRController_${i}_gripSpace`,this._raySpaceObject.name=`NeedleXRController_${i}_raySpace`,this._gripSpaceObject.add(this._debugGripAxesHelper),this._raySpaceObject.add(this._debugRayAxesHelper),this.xr.context.scene.add(this._gripSpaceObject),this.xr.context.scene.add(this._raySpaceObject)),this.xr.context.scene.add(this._object),this._ray=new c.Ray,this.pointerInit={origin:this,pointerType:this.hand?"hand":"controller",deviceIndex:this.index,pointerId:-1,mode:this.inputSource.targetRayMode,ray:this._ray,device:this._object,buttonName:"none"},this.initialize(),this.subscribeEvents()}_hitTestSourcePromise=null;_requestHitTestSource(){return this._hitTestSourcePromise?this._hitTestSourcePromise:this.xr.mode==="immersive-ar"&&this.inputSource.targetRayMode==="tracked-pointer"&&this.xr.session.requestHitTestSourceForTransientInput?this._hitTestSourcePromise=this.xr.session.requestHitTestSourceForTransientInput({profile:this.inputSource.profiles[0],offsetRay:new XRRay})?.then(e=>(this._hitTestSourcePromise=null,this.connected?this._hitTestSource=e:(e.cancel(),null)))??null:null}onPointerHits=e=>{};onUpdate(e){this.onUpdateFrame(e),this.updateInputEvents(),this.onUpdateMove()}onRenderDebug(){j.DrawSphere(this.rayWorldPosition,.003),j.DrawDirection(this.rayWorldPosition,V(0,0,10).applyQuaternion(this.rayWorldQuaternion));const t=(this.inputSource.gripSpace?this.gripWorldPosition:this.object.worldPosition).sub(this.object.worldForward.multiplyScalar(.1)),i=this.inputSource.profiles.join(`
|
|
146
146
|
`);let n=`Controller[${this.index}] (${this.inputSource.targetRayMode}, ${this.side})
|
|
147
147
|
C:${this.connected?"x":"-"} T:${this.isTracking?"x":"-"} Hand:${this.inputSource.hand?"x":"-"} Pen: ${this._isMxInk?"x":"-"}`;if(this.inputSource.hand&&(n+=`
|
|
@@ -1613,4 +1613,4 @@ Error:`,r),null}}updateColliderCollisionGroups(e){const t=e[Rt],i=e.membership;l
|
|
|
1613
1613
|
justify-content: center;
|
|
1614
1614
|
gap: .5rem;
|
|
1615
1615
|
}
|
|
1616
|
-
`),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),rd(op,{element:this.#t}),this.#o?.disconnect(),this.#o??=new MutationObserver(()=>this.#l()),this.#o.observe(this.#e,{attributes:!0}),jf&&console.log("Needle Button updated")}#l(){this.#e&&(this.#e.style.display==="none"?this.style.display="none":this.style.display==="none"&&(this.style.display=""))}#r=e=>{jf&&console.log("Needle Button clicked"),!e.defaultPrevented&&this.#e&&this.#e.click()}}typeof window<"u"&&!window.customElements.get(U_)&&window.customElements.define(U_,xw);const tl=w("debugavatar");class zg{root;head;leftHand;rigthHand;get isValid(){return this.head!==null&&this.head!==void 0}constructor(e,t,i,n){this.root=e,this.head=t,this.leftHand=i,this.rigthHand=n,this.root?.traverse(o=>o.layers.set(2))}}class Sw{avatarRegistryUrl=null;async getOrCreateNewAvatarInstance(e,t){if(!t)return console.error("Can not create avatar: failed to provide id or root object"),null;let i=null;if(typeof t=="string"){if(i=await this.loadAvatar(e,t),!i){const o=new sn;i=x.instantiate(Zr(t,e.scene),o)}}else i=t;if(!i)return null;const n=this.findAvatar(i);return n.isValid?(tl&&console.log("[Custom Avatar] valid config",t,tl?n:""),n):(console.warn("[Custom Avatar] config isn't valid",t,tl?n:""),null)}async loadAvatar(e,t){if(console.assert(t!=null&&typeof t=="string","Avatar id must not be null"),t.length<=0||!t)return null;if(tl&&console.log("[Custom Avatar] "+t+", loading..."),t.endsWith(".glb")||(t+=".glb"),this.avatarRegistryUrl===null){const n=await fetch("./"+t);let o=null;if(n.ok){const a=await n.blob();a&&(o=await a.arrayBuffer())}return o?(await Ji().parseSync(e,o,null,0))?.scene??null:null}const i=new q.GLTFLoader;return mm(i,e),new Promise((n,o)=>{const r=this.avatarRegistryUrl+"/"+t;i.load(r,async a=>{await Ji().createBuiltinComponents(e,r,a,null,void 0),n(a.scene)},a=>{tl&&console.log("[Custom Avatar] "+a.loaded/a.total*100+"% loaded of "+a.total/1024+"kB")},a=>{console.error("[Custom Avatar] Error when loading: "+a),n(null)})})}cacheModel(e,t){}findAvatar(e){const t=e;let i=t;i.children.length==1&&(i=e.children[0]);let n=this.findAvatarPart(i,["head"]);const o=this.findAvatarPart(i,["left","hand"]),r=this.findAvatarPart(i,["right","hand"]);if(!n){n=t;const l=new c.Vector3;new c.Box3().setFromObject(n).getSize(l);const h=Math.max(l.x,l.y,l.z);console.warn("[Custom Avatar] Normalizing head scale, it's too big: "+h+" meters! Should be < 0.3m"),h>.3&&n.scale.multiplyScalar(1/h*.3)}return new zg(t,n,o,r)}findAvatarPart(e,t){const i=e.name.toLowerCase();let n=!0;for(const o of t){if(!n)break;i.indexOf(o)===-1&&(n=!1)}if(n)return e;if(e.children)for(const o of e.children){const r=this.findAvatarPart(o,t);if(r)return r}return null}handleCustomAvatarErrors(e){if(!e.ok)throw Error(e.statusText);return e}}class Cw{get extensionName(){return"DocumentExtension"}onAfterBuildDocument(e){}}class Pw{}const ZR=Object.freeze(Object.defineProperty({__proto__:null,ActionBuilder:ae,ActionCollection:Av,ActionModel:Nt,AlignmentConstraint:hc,Animation:vt,AnimationCurve:Rc,AnimationExtension:Kd,AnimationTrackHandler:vu,Animator:mt,AnimatorController:Ai,Antialiasing:Tc,AudioExtension:ar,AudioListener:es,AudioSource:Ii,AudioTrackHandler:is,Avatar:Hs,AvatarBlink_Simple:nr,AvatarEyeLook_Rotation:Cm,AvatarLoader:Sw,AvatarMarker:xe,AvatarModel:zg,Avatar_Brain_LookAt:Nl,Avatar_MouthShapes:pc,Avatar_MustacheShake:xm,Avatar_POI:Fo,AxesHelper:ma,BaseUIComponent:Bi,BasicIKConstraint:Mm,BehaviorExtension:tg,BehaviorModel:pt,BloomEffect:du,BoxCollider:Hd,BoxGizmo:dr,BoxHelperComponent:nt,Button:ys,CallInfo:Jn,Camera:$t,CameraTargetReachedEvent:zl,Canvas:ca,CanvasGroup:qs,CapsuleCollider:os,ChangeMaterialOnClick:Hm,ChangeTransformOnClick:lr,CharacterController:sr,CharacterControllerInput:cs,ChromaticAberration:Ac,Collider:Xt,ColorAdjustments:ao,ColorBySpeedModule:Oa,ColorOverLifetimeModule:lu,ContactShadows:mc,ControlTrackHandler:wu,CustomBranding:hr,Deletable:Em,DeleteBox:Ns,DepthOfField:an,DeviceFlag:qd,DocumentExtension:Cw,DragControls:Mo,DropListener:hs,Duplicatable:Lm,EffectWrapper:Hl,EmissionModule:ms,EmphasizeOnClick:ba,EnvironmentScene:Mu,EventList:de,EventListEvent:Nd,EventSystem:It,EventTrigger:Qd,FieldWithDefault:yv,FixedJoint:mg,Fog:Ca,GltfExport:Vm,GltfExportBox:zm,Gradient:fr,Graphic:Cc,GraphicRaycaster:Vd,GridHelper:Pa,GridLayoutGroup:ag,GroundProjectedEnv:An,GroupActionModel:Oo,HideOnStart:Oi,HingeJoint:Mc,HorizontalLayoutGroup:rg,Image:Ea,InheritVelocityModule:bg,InputField:Ag,InstanceHandle:Uo,InstancingHandler:qo,Interactable:Rm,Keyframe:Wt,LODGroup:kc,LODModel:Ma,Light:mi,LimitVelocityOverLifetimeModule:et,LogStats:km,LookAt:Lg,LookAtConstraint:ir,MainModule:Ct,MaskableGraphic:Pc,MeshCollider:eo,MeshRenderer:yc,MinMaxCurve:G,MinMaxGradient:pr,NeedleMenu:Dn,NestedGltf:ou,Networking:yg,NoiseModule:fe,ObjectRaycaster:hi,OffsetConstraint:ur,OpenURL:Ta,OrbitControls:he,Outline:Sa,Padding:cr,ParticleBurst:bd,ParticleSubEmitter:vg,ParticleSystem:Gl,ParticleSystemRenderer:Vi,PhysicsExtension:ig,PixelationEffect:Lc,PlayAnimationOnClick:$l,PlayAudioOnClick:Gs,PlayableDirector:da,PlayerColor:ha,PointerEventData:uc,PostProcessingHandler:Cg,PreliminaryAction:va,PreliminaryTrigger:vc,RawImage:Cu,Rect:Bv,RectTransform:nn,ReflectionProbe:Vl,RegisteredAnimationInfo:Fs,RemoteSkybox:fu,Renderer:di,RendererLightmap:md,Rigidbody:Ke,RotationBySpeedModule:Ni,RotationOverLifetimeModule:rn,SceneSwitcher:Ie,ScreenCapture:lo,ScreenSpaceAmbientOcclusion:gs,ScreenSpaceAmbientOcclusionN8:ln,SetActiveOnClick:qm,ShadowCatcher:Bc,ShapeModule:_g,SharpeningEffect:Ic,SignalAsset:bu,SignalReceiver:Vc,SignalReceiverEvent:Nc,SignalTrackHandler:ql,Size:jv,SizeBySpeedModule:Kt,SizeOverLifetimeModule:mr,SkinnedMeshRenderer:Um,SmoothFollow:mu,SpatialGrabRaycaster:Go,SpatialHtml:Gc,SpatialTrigger:gu,SpatialTriggerReceiver:En,SpectatorCamera:yu,SphereCollider:ga,Sprite:us,SpriteData:Yr,SpriteRenderer:Qt,SpriteSheet:la,SubEmitterSystem:vd,SyncedCamera:Mg,SyncedRoom:cn,SyncedTransform:tn,TapGestureTrigger:Qm,TeleportTarget:iu,TestRunner:Og,TestSimulateUserData:kg,Text:St,TextBuilder:sg,TextExtension:su,TextureSheetAnimationModule:Pt,TiltShiftEffect:Bn,ToneMappingEffect:Xs,TrailModule:Ee,TransformData:ke,TransformGizmo:br,TriggerBuilder:wt,TriggerModel:Vs,UIRaycastUtils:_m,UIRootComponent:xc,USDZExporter:Rn,USDZText:Vr,USDZUIExtension:cg,UsageMarker:gc,VariantAction:Gm,VelocityOverLifetimeModule:Le,VerticalLayoutGroup:og,VideoPlayer:Ze,Vignette:_r,VisibilityAction:wc,Voip:Js,Volume:Ra,VolumeParameter:D,VolumeProfile:cu,WebARCameraBackground:qc,WebARSessionRoot:ri,WebXR:nu,WebXRImageTracking:Xl,WebXRImageTrackingModel:bs,WebXRPlaneTracking:vs,WebXRTrackedImage:ua,XRControllerFollow:_s,XRControllerModel:rs,XRControllerMovement:ui,XRFlag:Ri,XRRig:ku,XRState:Dt,__Ignore:Pw},Symbol.toStringTag,{value:"Module"})),Sd=w("debugmissingcamera");re.registerCallback(oe.MissingCamera,s=>{Sd&&console.warn("Creating missing camera");const e=s.context.scene,t=new c.PerspectiveCamera;t.name="Default Fallback Camera",e.add(t);const i=new $t;if(i.sourceId=s.files?.[0]?.src??"unknown",i.fieldOfView=35,s.context.domElement.getAttribute("transparent")!=null)i.clearFlags=Bo.Uninitialized;else if(s.context.domElement.getAttribute("background-image")?.length||s.context.lightmaps.tryGetSkybox(i.sourceId))i.clearFlags=Bo.Skybox;else{if(i.clearFlags=Bo.SolidColor,!s.context.domElement.getAttribute("background-color")){let a="#efefef";typeof window!==void 0&&window.matchMedia("(prefers-color-scheme: dark)").matches&&(a="#1f1f1f"),e.background=new c.Color(a)}if(!e.environment){const a=new c.PMREMGenerator$1(s.context.renderer),l=new Mu("neutral");e.environment=a.fromScene(l,.025).texture}}const o=Ao(t,i,!0);return t.position.x=0,t.position.y=1,t.position.z=2,s.context.domElement?.cameraControls!=!1&&Mw(s.context,o),o});re.registerCallback(oe.ContextCreated,s=>{if(!s.context.mainCamera){Sd&&console.log("Will not auto-fit because a default camera exists");return}if(s.context.domElement?.cameraControls==!0){if(tb(s.context.mainCamera)?.isCameraController==!0){Sd&&console.log("Will not auto-fit because a camera controller exists");return}Mw(s.context)}});function Mw(s,e){e=e??s.mainCameraComponent;const t=e?.gameObject;if(Sd&&console.log("Creating default camera controls",e?.name),t){const i=sc(t,he);i.sourceId=e?.sourceId??"unknown";const n=s.domElement.getAttribute("auto-rotate");if(i.autoRotate=n!=null&&n!="0"&&n?.toLowerCase()!="false",i.autoRotateSpeed=.5,i.autoFit=!0,i.autoRotate&&n){const o=parseFloat(n);isNaN(o)||(i.autoRotateSpeed=o)}}else console.warn("Missing camera object, can not add orbit controls")}re.registerCallback(oe.ContextCreated,s=>{const e=s.context.domElement.getAttribute("autoplay");if(e!==void 0&&(e===""||e==="true"||e==="1")&&s.files)for(const t of s.files)x.foreachComponent(t.file.scene,n=>{if(n.enabled!==!1){if(n instanceof vt&&n.playAutomatically||n instanceof mt||n instanceof da&&n.playOnAwake===!0)return!0;if(n instanceof vt)return n.playAutomatically=!0,!0;if(n instanceof da)return n.playOnAwake=!0,!0}},!0)!==!0&&oa.assignAnimationsFromFile(t.file,{createAnimationComponent:(n,o)=>ai(n,vt)})});class JR extends se.WorkerBase{constructor(){super(new Worker(new URL("/generateMeshBVH.worker-2qGLkQjg.js",typeof document>"u"?require("url").pathToFileURL(__filename).href:Eu&&Eu.tagName.toUpperCase()==="SCRIPT"&&Eu.src||new URL("needle-engine.bundle-BlBdO0pR.umd.cjs",document.baseURI).href),{type:"module"})),this.name="GenerateMeshBVHWorker"}runTask(e,t,i={}){return new Promise((n,o)=>{if(t.getAttribute("position").isInterleavedBufferAttribute||t.index&&t.index.isInterleavedBufferAttribute)throw new Error("GenerateMeshBVHWorker: InterleavedBufferAttribute are not supported for the geometry attributes.");e.onerror=h=>{o(new Error(`[GenerateMeshBVHWorker] ${h.message||"Unknown error. Please check the server console. If you're using vite try adding 'three-mesh-bvh' to 'optimizeDeps.exclude' in your vite.config.js"}`))},e.onmessage=h=>{const{data:d}=h;if(d.error)o(new Error(d.error)),e.onmessage=null;else if(d.serialized){const{serialized:u,position:p}=d,m=se.MeshBVH.deserialize(u,t,{setIndex:!1}),y=Object.assign({setBoundingBox:!0},i);if(t.attributes.position.array=p,u.index)if(t.index)t.index.array=u.index;else{const b=new c.BufferAttribute(u.index,1,!1);t.setIndex(b)}y.setBoundingBox&&(t.boundingBox=m.getBoundingBox(new c.Box3)),i.onProgress&&i.onProgress(d.progress),n(m),e.onmessage=null}else i.onProgress&&i.onProgress(d.progress)};const r=t.index?t.index.array:null,a=t.attributes.position.array,l=[a];r&&l.push(r),e.postMessage({index:r,position:a,options:{...i,onProgress:null,includedProgressCallback:!!i.onProgress,groups:[...t.groups]}},l.map(h=>h.buffer).filter(h=>typeof SharedArrayBuffer>"u"||!(h instanceof SharedArrayBuffer)))})}}const eE=Object.freeze(Object.defineProperty({__proto__:null,GenerateMeshBVHWorker:JR},Symbol.toStringTag,{value:"Module"}));exports.$physicsKey=z1;exports.ActionBuilder=ae;exports.ActionCollection=Av;exports.ActionModel=Nt;exports.Addressables=g0;exports.AlignmentConstraint=hc;exports.AmbientMode=Xr;exports.Animation=vt;exports.AnimationCurve=Rc;exports.AnimationExtension=Kd;exports.AnimationTrackHandler=vu;exports.AnimationUtils=oa;exports.Animator=mt;exports.AnimatorConditionMode=Ls;exports.AnimatorController=Ai;exports.AnimatorControllerParameterType=gm;exports.AnimatorStateInfo=rl;exports.Antialiasing=Tc;exports.Application=en;exports.AssetDatabase=Lb;exports.AssetReference=Y;exports.AudioExtension=ar;exports.AudioListener=es;exports.AudioSource=Ii;exports.AudioTrackHandler=is;exports.Avatar=Hs;exports.AvatarBlink_Simple=nr;exports.AvatarEyeLook_Rotation=Cm;exports.AvatarLoader=Sw;exports.AvatarMarker=xe;exports.AvatarModel=zg;exports.Avatar_Brain_LookAt=Nl;exports.Avatar_MouthShapes=pc;exports.Avatar_MustacheShake=xm;exports.Avatar_POI=Fo;exports.Axes=zr;exports.AxesHelper=ma;exports.BUILD_TIME=Wp;exports.BaseUIComponent=Bi;exports.BasicIKConstraint=Mm;exports.BehaviorExtension=tg;exports.BehaviorModel=pt;exports.BloomEffect=du;exports.BoxCollider=Hd;exports.BoxGizmo=dr;exports.BoxHelperComponent=nt;exports.Button=ys;exports.ButtonsFactory=Yi;exports.CallDirection=K0;exports.CallInfo=Jn;exports.Camera=$t;exports.CameraTargetReachedEvent=zl;exports.Canvas=ca;exports.CanvasGroup=qs;exports.CapsuleCollider=os;exports.ChangeMaterialOnClick=Hm;exports.ChangeTransformOnClick=lr;exports.CharacterController=sr;exports.CharacterControllerInput=cs;exports.ChromaticAberration=Ac;exports.CircularBuffer=li;exports.ClearFlags=Bo;exports.ClipExtrapolation=pn;exports.Collider=Xt;exports.Collision=X0;exports.CollisionDetectionMode=zd;exports.ColorAdjustments=ao;exports.ColorBySpeedModule=Oa;exports.ColorOverLifetimeModule=lu;exports.Component=QC;exports.Component$1=k;exports.ComponentLifecycleEvents=Ad;exports.Components=ZR;exports.ConnectionEvents=Ob;exports.ContactPoint=q0;exports.ContactShadows=mc;exports.Context=U;exports.ContextArgs=DC;exports.ContextEvent=oe;exports.ContextRegistry=re;exports.ControlTrackHandler=wu;exports.CustomBranding=hr;exports.CustomShader=_e;exports.DefaultReflectionMode=od;exports.Deletable=Em;exports.DeleteBox=Ns;exports.DepthOfField=an;exports.DeviceFlag=qd;exports.DocumentExtension=Cw;exports.DragControls=Mo;exports.DragMode=Tm;exports.DropListener=hs;exports.Duplicatable=Lm;exports.EffectWrapper=Hl;exports.EmissionModule=ms;exports.EmphasizeOnClick=ba;exports.EngineLoadingView=Ql;exports.EnvironmentScene=Mu;exports.EventList=de;exports.EventListEvent=Nd;exports.EventSystem=It;exports.EventTrigger=Qd;exports.FieldWithDefault=yv;exports.FileReference=Io;exports.FileReferenceSerializer=_0;exports.FileSpawnModel=cP;exports.File_Event=sv;exports.FixedJoint=mg;exports.Fog=Ca;exports.FrameEvent=pe;exports.GENERATOR=Md;exports.GameObject=x;exports.Gizmos=j;exports.GltfExport=Vm;exports.GltfExportBox=zm;exports.Gradient=fr;exports.Graphic=Cc;exports.GraphicRaycaster=Vd;exports.Graphics=Ws;exports.GridHelper=Pa;exports.GridLayoutGroup=ag;exports.GroundProjectedEnv=An;exports.GroupActionModel=Oo;exports.HideFlags=$d;exports.HideOnStart=Oi;exports.HingeJoint=Mc;exports.HorizontalLayoutGroup=rg;exports.HostData=FS;exports.Image=Ea;exports.ImageReference=Do;exports.ImageReferenceSerializer=y0;exports.InheritVelocityModule=bg;exports.Input=wb;exports.InputEventQueue=Vt;exports.InputEvents=we;exports.InputField=Ag;exports.InstanceHandle=Uo;exports.InstancingHandler=qo;exports.InstancingUtil=Ti;exports.InstantiateEvent=Wb;exports.InstantiateIdProvider=ft;exports.InstantiateOptions=sn;exports.Interactable=Rm;exports.JoinedRoomResponse=cS;exports.KeyEventArgs=Zx;exports.Keyframe=Wt;exports.LODGroup=kc;exports.LODModel=Ma;exports.LeftRoomResponse=hS;exports.Light=mi;exports.LightData=S0;exports.LimitVelocityOverLifetimeModule=et;exports.LoadingElementOptions=BR;exports.LogStats=km;exports.LogType=oi;exports.LookAt=Lg;exports.LookAtConstraint=ir;exports.MainModule=Ct;exports.MarkerType=Rg;exports.MaskableGraphic=Pc;exports.Mathf=I;exports.MeshCollider=eo;exports.MeshRenderer=yc;exports.MinMaxCurve=G;exports.MinMaxGradient=pr;exports.NEKeyboardEvent=il;exports.NEPointerEvent=Xn;exports.NeedleButtonElement=xw;exports.NeedleEngineWebComponent=Ug;exports.NeedleMenu=Dn;exports.NeedlePatchesKey=kh;exports.NeedleXRController=Xp;exports.NeedleXRSession=H;exports.NeedleXRSync=Eb;exports.NeedleXRUtils=Ab;exports.NestedGltf=ou;exports.NetworkConnection=Rb;exports.NetworkedStreamEvents=xn;exports.NetworkedStreams=fc;exports.Networking=yg;exports.NewInstanceModel=Hb;exports.NoiseModule=fe;exports.ObjectRaycaster=hi;exports.ObjectUtils=Ko;exports.OffsetConstraint=ur;exports.OneEuroFilter=Mh;exports.OneEuroFilterXYZ=jp;exports.OpenURL=Ta;exports.OrbitControls=he;exports.Outline=Sa;exports.OwnershipEvent=kb;exports.OwnershipModel=Zp;exports.PUBLIC_KEY=Br;exports.Padding=cr;exports.ParticleBurst=bd;exports.ParticleSubEmitter=vg;exports.ParticleSystem=Gl;exports.ParticleSystemBaseBehaviour=ro;exports.ParticleSystemRenderer=Vi;exports.ParticleSystemShapeType=_d;exports.PeerHandle=ts;exports.PeerNetworking=Mb;exports.Physics=na;exports.PhysicsExtension=ig;exports.PhysicsMaterialCombine=it;exports.PixelationEffect=Lc;exports.PlayAnimationOnClick=$l;exports.PlayAudioOnClick=Gs;exports.PlayableDirector=da;exports.PlayerColor=ha;exports.PlayerState=Ki;exports.PlayerStateEvent=Iv;exports.PlayerSync=Jm;exports.PlayerView=v0;exports.PlayerViewManager=w0;exports.PointerEventData=uc;exports.PointerType=Rd;exports.PostProcessingEffect=Ne;exports.PostProcessingEffectOrder=Qe;exports.PostProcessingHandler=Cg;exports.PreliminaryAction=va;exports.PreliminaryTrigger=vc;exports.PrimitiveType=No;exports.Progress=ie;exports.PromiseAllWithErrors=Dp;exports.PromiseErrorResult=Uf;exports.RGBAColor=Z;exports.RapierPhysics=Kr;exports.RawImage=Cu;exports.RaycastOptions=Zs;exports.Rect=Bv;exports.RectTransform=nn;exports.ReflectionProbe=Vl;exports.RegisteredAnimationInfo=Fs;exports.RemoteSkybox=fu;exports.RenderTexture=wn;exports.RenderTextureSerializer=$0;exports.Renderer=di;exports.RendererData=x0;exports.RendererLightmap=md;exports.Rigidbody=Ke;exports.RigidbodyConstraints=De;exports.RoomEvents=Q;exports.RotationBySpeedModule=Ni;exports.RotationOverLifetimeModule=rn;exports.SceneLightSettings=ud;exports.SceneSwitcher=Ie;exports.ScreenCapture=lo;exports.ScreenSpaceAmbientOcclusion=gs;exports.ScreenSpaceAmbientOcclusionN8=ln;exports.SendQueue=Qi;exports.SerializationContext=lm;exports.SetActiveOnClick=qm;exports.ShadowCatcher=Bc;exports.ShapeModule=_g;exports.ShapeOverlapResult=Q0;exports.SharpeningEffect=Ic;exports.SignalAsset=bu;exports.SignalReceiver=Vc;exports.SignalReceiverEvent=Nc;exports.SignalTrackHandler=ql;exports.Size=jv;exports.SizeBySpeedModule=Kt;exports.SizeOverLifetimeModule=mr;exports.SkinnedMeshRenderer=Um;exports.SmoothFollow=mu;exports.SpatialGrabRaycaster=Go;exports.SpatialHtml=Gc;exports.SpatialTrigger=gu;exports.SpatialTriggerReceiver=En;exports.SpectatorCamera=yu;exports.SphereCollider=ga;exports.SphereIntersection=tm;exports.Sprite=us;exports.SpriteData=Yr;exports.SpriteRenderer=Qt;exports.SpriteSheet=la;exports.StateMachineBehaviour=t1;exports.StreamEndedEvent=vm;exports.StreamReceivedEvent=Y0;exports.SubEmitterSystem=vd;exports.SyncedCamera=Mg;exports.SyncedRoom=cn;exports.SyncedTransform=tn;exports.TapGestureTrigger=Qm;exports.TeleportTarget=iu;exports.TestRunner=Og;exports.TestSceneUtils=HR;exports.TestSimulateUserData=kg;exports.Text=St;exports.TextBuilder=sg;exports.TextExtension=su;exports.TextureSheetAnimationModule=Pt;exports.TiltShiftEffect=Bn;exports.Time=C0;exports.ToneMappingEffect=Xs;exports.TrackHandler=$c;exports.TrackType=ei;exports.TrailModule=Ee;exports.TransformData=ke;exports.TransformGizmo=br;exports.TriggerBuilder=wt;exports.TriggerModel=Vs;exports.TypeStore=P;exports.UIRaycastUtils=_m;exports.UIRootComponent=xc;exports.USDDocument=$m;exports.USDObject=ze;exports.USDWriter=Sv;exports.USDZExporter=Rn;exports.USDZExporter$1=Cv;exports.USDZText=Vr;exports.USDZUIExtension=cg;exports.UriSerializer=W0;exports.UsageMarker=gc;exports.UserJoinedOrLeftRoomModel=dS;exports.VERSION=Zi;exports.VariantAction=Gm;exports.VelocityOverLifetimeModule=Le;exports.VerticalLayoutGroup=og;exports.VideoPlayer=Ze;exports.ViewDevice=Us;exports.Vignette=_r;exports.VisibilityAction=wc;exports.Voip=Js;exports.Volume=Ra;exports.VolumeParameter=D;exports.VolumeProfile=cu;exports.WaitForFrames=fC;exports.WaitForPromise=b0;exports.WaitForSeconds=dm;exports.Watch=ns;exports.WebARCameraBackground=qc;exports.WebARSessionRoot=ri;exports.WebXR=nu;exports.WebXRButtonFactory=$s;exports.WebXRImageTracking=Xl;exports.WebXRImageTrackingModel=bs;exports.WebXRPlaneTracking=vs;exports.WebXRTrackedImage=ua;exports.XRControllerFollow=_s;exports.XRControllerModel=rs;exports.XRControllerMovement=ui;exports.XRFlag=Ri;exports.XRRig=ku;exports.XRState=Dt;exports.XRStateFlag=bn;exports.__Ignore=Pw;exports.__internalNotifyObjectDestroyed=Fb;exports.activeInHierarchyFieldName=ss;exports.addAttributeChangeCallback=q_;exports.addComponent=ai;exports.addCustomExtensionPlugin=TP;exports.addNewComponent=Ao;exports.addPatch=Od;exports.apply=Dd;exports.applyHMRChanges=XC;exports.applyPrototypeExtensions=s0;exports.beginListenDestroy=Gb;exports.beginListenInstantiate=Xb;exports.binaryIdentifierCasts=Qp;exports.build_scene_functions=LC;exports.builtinComponentKeyName=wo;exports.calculateProgress01=Fg;exports.clearMessages=hx;exports.colorSerializer=_1;exports.compareAssociation=Zb;exports.componentSerializer=Bh;exports.copyTexture=lb;exports.createMotion=U0;exports.debugNet=Bt;exports.debugOwner=nl;exports.decompressGpuTexture=kv;exports.deepClone=Kl;exports.delay=Tn;exports.delayForFrames=Zl;exports.deserializeObject=nd;exports.destroy=ci;exports.destroyComponentInstance=a0;exports.determineMimeTypeFromExtension=ov;exports.disposeObjectResources=ge;exports.disposeStream=Sn;exports.editorGuidKeyName=wl;exports.enableSpatialConsole=Ro;exports.euler=v1;exports.eventListSerializer=C1;exports.exportAsGLTF=QR;exports.findByGuid=hm;exports.findObjectOfType=ac;exports.findObjectsOfType=c0;exports.findResourceUsers=im;exports.fitObjectIntoVolume=hb;exports.foreachComponent=$o;exports.foreachComponentEnumerator=jd;exports.forward=Px;exports.generateQRCode=Q_;exports.generateSeed=qb;exports.getBoundingBox=Gt;exports.getCameraController=tb;exports.getComponent=Jo;exports.getComponentInChildren=rc;exports.getComponentInParent=Bl;exports.getComponents=oc;exports.getComponentsInChildren=fa;exports.getComponentsInParent=Ld;exports.getFormattedDate=bv;exports.getIconElement=ut;exports.getIconTexture=sp;exports.getLoader=Ji;exports.getOrAddComponent=sc;exports.getParam=w;exports.getParentHierarchyPath=kx;exports.getPath=Nw;exports.getPeerOptions=oS;exports.getPeerjsInstance=Pb;exports.getResourceUserCount=RS;exports.getTempColor=sb;exports.getTempQuaternion=Xi;exports.getTempVector=V;exports.getUrlParams=Yl;exports.getVisibleInCustomShadowRendering=cb;exports.getWorldDirection=ob;exports.getWorldEuler=Up;exports.getWorldPosition=X;exports.getWorldQuaternion=ue;exports.getWorldRotation=Pd;exports.getWorldScale=Ae;exports.hasCommercialLicense=kn;exports.hasIndieLicense=cc;exports.hasPointerEventComponent=ld;exports.hasProLicense=On;exports.hideDebugConsole=pb;exports.imageToCanvas=Rv;exports.instantiate=Wo;exports.invokeLoadedImportPluginHooks=pv;exports.invokeXRSessionEnd=vb;exports.invokeXRSessionStart=bb;exports.isActiveInHierarchy=h0;exports.isActiveSelf=pa;exports.isAndroidDevice=qw;exports.isAnimationAction=ab;exports.isComponent=H0;exports.isDebugMode=Bw;exports.isDesktop=$w;exports.isDestroyed=Vo;exports.isDevEnvironment=A;exports.isDisposed=OS;exports.isExporting=qR;exports.isGLTFModel=G0;exports.isHostedOnGlitch=z_;exports.isHotReloadEnabled=cp;exports.isHotReloading=HC;exports.isIPad=Gw;exports.isIconElement=O0;exports.isLocalNetwork=Li;exports.isMacOS=Qw;exports.isMobileDevice=Ww;exports.isMozillaXR=Xw;exports.isQuest=Zw;exports.isResourceTrackingEnabled=Ib;exports.isSafari=Kw;exports.isUsingInstancing=Id;exports.isiOS=Yw;exports.isiPad=Hw;exports.loadAsset=TR;exports.loadSync=Bg;exports.logHierarchy=Qh;exports.lookAtInverse=yx;exports.lookAtObject=Jl;exports.lookAtScreenPoint=_x;exports.makeId=Uw;exports.makeIdFromRandomWords=W_;exports.makeNameSafe=ji;exports.markAsInstancedRendered=d0;exports.microphonePermissionsGranted=Jw;exports.nameof=jw;exports.nameofFactory=V_;exports.objectSerializer=V0;exports.offXRSessionEnd=Kx;exports.offXRSessionStart=Yx;exports.onAfterRender=WC;exports.onBeforeRender=$C;exports.onClear=NC;exports.onDestroy=VC;exports.onInitialized=A0;exports.onStart=pm;exports.onUpdate=L0;exports.onXRSessionEnd=qp;exports.onXRSessionStart=kd;exports.parseSync=yw;exports.placeOnSurface=db;exports.postprocessFBXMaterials=Vp;exports.prefix=u1;exports.pushState=$_;exports.randomNumber=zw;exports.registerBinaryType=Yp;exports.registerComponent=Fd;exports.registerComponentExtension=jm;exports.registerCustomEffectType=$i;exports.registerExportExtensions=Bm;exports.registerExtensions=pd;exports.registerHotReloadType=I0;exports.registerLoader=Gp;exports.registerPrefabProvider=Yb;exports.registerPrototypeExtensions=o0;exports.registerType=$S;exports.relativePathPrefix=H_;exports.removeAttributeChangeCallback=X_;exports.removeComponent=cm;exports.removeCustomImportExtensionType=AP;exports.removePatch=Xx;exports.resolveUrl=Qs;exports.sanitizeString=G_;exports.saveImage=fw;exports.screenshot=pR;exports.screenshot2=Ig;exports.sendDestroyed=sm;exports.serializable=f;exports.serializeObject=e0;exports.serializeable=er;exports.setActive=Cl;exports.setAllowBalloonMessages=Z_;exports.setAllowOverlayMessages=rx;exports.setAutoFitEnabled=qh;exports.setCameraController=Nf;exports.setDestroyed=f0;exports.setDevEnvironment=jx;exports.setDisposable=Td;exports.setDontDestroy=Tr;exports.setOrAddParamsToUrl=Ff;exports.setParam=Fw;exports.setParamWithoutReload=Ll;exports.setPeerOptions=rS;exports.setResourceTrackingEnabled=MS;exports.setState=Ap;exports.setVisibleInCustomShadowRendering=Np;exports.setWorldEuler=zp;exports.setWorldPosition=Ye;exports.setWorldPositionXYZ=zo;exports.setWorldQuaternion=Di;exports.setWorldQuaternionXYZW=Fp;exports.setWorldRotation=rb;exports.setWorldRotationXYZ=ec;exports.setWorldScale=Jr;exports.showBalloonError=tc;exports.showBalloonMessage=Se;exports.showBalloonWarning=ce;exports.showDebugConsole=$p;exports.slerp=gx;exports.syncDestroy=ic;exports.syncField=Zm;exports.syncInstantiate=om;exports.textureToCanvas=Rx;exports.tryCastBinary=Sb;exports.tryDetermineMimetypeFromBinary=av;exports.tryDetermineMimetypeFromURL=rv;exports.tryFindObject=Zr;exports.tryGetGuid=Cb;exports.unregisterHotReloadType=j0;exports.unwatchWrite=Lp;exports.useForAutoFit=ib;exports.validate=gt;exports.watchWrite=Cd;
|
|
1616
|
+
`),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),rd(op,{element:this.#t}),this.#o?.disconnect(),this.#o??=new MutationObserver(()=>this.#l()),this.#o.observe(this.#e,{attributes:!0}),jf&&console.log("Needle Button updated")}#l(){this.#e&&(this.#e.style.display==="none"?this.style.display="none":this.style.display==="none"&&(this.style.display=""))}#r=e=>{jf&&console.log("Needle Button clicked"),!e.defaultPrevented&&this.#e&&this.#e.click()}}typeof window<"u"&&!window.customElements.get(U_)&&window.customElements.define(U_,xw);const tl=w("debugavatar");class zg{root;head;leftHand;rigthHand;get isValid(){return this.head!==null&&this.head!==void 0}constructor(e,t,i,n){this.root=e,this.head=t,this.leftHand=i,this.rigthHand=n,this.root?.traverse(o=>o.layers.set(2))}}class Sw{avatarRegistryUrl=null;async getOrCreateNewAvatarInstance(e,t){if(!t)return console.error("Can not create avatar: failed to provide id or root object"),null;let i=null;if(typeof t=="string"){if(i=await this.loadAvatar(e,t),!i){const o=new sn;i=x.instantiate(Zr(t,e.scene),o)}}else i=t;if(!i)return null;const n=this.findAvatar(i);return n.isValid?(tl&&console.log("[Custom Avatar] valid config",t,tl?n:""),n):(console.warn("[Custom Avatar] config isn't valid",t,tl?n:""),null)}async loadAvatar(e,t){if(console.assert(t!=null&&typeof t=="string","Avatar id must not be null"),t.length<=0||!t)return null;if(tl&&console.log("[Custom Avatar] "+t+", loading..."),t.endsWith(".glb")||(t+=".glb"),this.avatarRegistryUrl===null){const n=await fetch("./"+t);let o=null;if(n.ok){const a=await n.blob();a&&(o=await a.arrayBuffer())}return o?(await Ji().parseSync(e,o,null,0))?.scene??null:null}const i=new q.GLTFLoader;return mm(i,e),new Promise((n,o)=>{const r=this.avatarRegistryUrl+"/"+t;i.load(r,async a=>{await Ji().createBuiltinComponents(e,r,a,null,void 0),n(a.scene)},a=>{tl&&console.log("[Custom Avatar] "+a.loaded/a.total*100+"% loaded of "+a.total/1024+"kB")},a=>{console.error("[Custom Avatar] Error when loading: "+a),n(null)})})}cacheModel(e,t){}findAvatar(e){const t=e;let i=t;i.children.length==1&&(i=e.children[0]);let n=this.findAvatarPart(i,["head"]);const o=this.findAvatarPart(i,["left","hand"]),r=this.findAvatarPart(i,["right","hand"]);if(!n){n=t;const l=new c.Vector3;new c.Box3().setFromObject(n).getSize(l);const h=Math.max(l.x,l.y,l.z);console.warn("[Custom Avatar] Normalizing head scale, it's too big: "+h+" meters! Should be < 0.3m"),h>.3&&n.scale.multiplyScalar(1/h*.3)}return new zg(t,n,o,r)}findAvatarPart(e,t){const i=e.name.toLowerCase();let n=!0;for(const o of t){if(!n)break;i.indexOf(o)===-1&&(n=!1)}if(n)return e;if(e.children)for(const o of e.children){const r=this.findAvatarPart(o,t);if(r)return r}return null}handleCustomAvatarErrors(e){if(!e.ok)throw Error(e.statusText);return e}}class Cw{get extensionName(){return"DocumentExtension"}onAfterBuildDocument(e){}}class Pw{}const ZR=Object.freeze(Object.defineProperty({__proto__:null,ActionBuilder:ae,ActionCollection:Av,ActionModel:Nt,AlignmentConstraint:hc,Animation:vt,AnimationCurve:Rc,AnimationExtension:Kd,AnimationTrackHandler:vu,Animator:mt,AnimatorController:Ai,Antialiasing:Tc,AudioExtension:ar,AudioListener:es,AudioSource:Ii,AudioTrackHandler:is,Avatar:Hs,AvatarBlink_Simple:nr,AvatarEyeLook_Rotation:Cm,AvatarLoader:Sw,AvatarMarker:xe,AvatarModel:zg,Avatar_Brain_LookAt:Nl,Avatar_MouthShapes:pc,Avatar_MustacheShake:xm,Avatar_POI:Fo,AxesHelper:ma,BaseUIComponent:Bi,BasicIKConstraint:Mm,BehaviorExtension:tg,BehaviorModel:pt,BloomEffect:du,BoxCollider:Hd,BoxGizmo:dr,BoxHelperComponent:nt,Button:ys,CallInfo:Jn,Camera:$t,CameraTargetReachedEvent:zl,Canvas:ca,CanvasGroup:qs,CapsuleCollider:os,ChangeMaterialOnClick:Hm,ChangeTransformOnClick:lr,CharacterController:sr,CharacterControllerInput:cs,ChromaticAberration:Ac,Collider:Xt,ColorAdjustments:ao,ColorBySpeedModule:Oa,ColorOverLifetimeModule:lu,ContactShadows:mc,ControlTrackHandler:wu,CustomBranding:hr,Deletable:Em,DeleteBox:Ns,DepthOfField:an,DeviceFlag:qd,DocumentExtension:Cw,DragControls:Mo,DropListener:hs,Duplicatable:Lm,EffectWrapper:Hl,EmissionModule:ms,EmphasizeOnClick:ba,EnvironmentScene:Mu,EventList:de,EventListEvent:Nd,EventSystem:It,EventTrigger:Qd,FieldWithDefault:yv,FixedJoint:mg,Fog:Ca,GltfExport:Vm,GltfExportBox:zm,Gradient:fr,Graphic:Cc,GraphicRaycaster:Vd,GridHelper:Pa,GridLayoutGroup:ag,GroundProjectedEnv:An,GroupActionModel:Oo,HideOnStart:Oi,HingeJoint:Mc,HorizontalLayoutGroup:rg,Image:Ea,InheritVelocityModule:bg,InputField:Ag,InstanceHandle:Uo,InstancingHandler:qo,Interactable:Rm,Keyframe:Wt,LODGroup:kc,LODModel:Ma,Light:mi,LimitVelocityOverLifetimeModule:et,LogStats:km,LookAt:Lg,LookAtConstraint:ir,MainModule:Ct,MaskableGraphic:Pc,MeshCollider:eo,MeshRenderer:yc,MinMaxCurve:G,MinMaxGradient:pr,NeedleMenu:Dn,NestedGltf:ou,Networking:yg,NoiseModule:fe,ObjectRaycaster:hi,OffsetConstraint:ur,OpenURL:Ta,OrbitControls:he,Outline:Sa,Padding:cr,ParticleBurst:bd,ParticleSubEmitter:vg,ParticleSystem:Gl,ParticleSystemRenderer:Vi,PhysicsExtension:ig,PixelationEffect:Lc,PlayAnimationOnClick:$l,PlayAudioOnClick:Gs,PlayableDirector:da,PlayerColor:ha,PointerEventData:uc,PostProcessingHandler:Cg,PreliminaryAction:va,PreliminaryTrigger:vc,RawImage:Cu,Rect:Bv,RectTransform:nn,ReflectionProbe:Vl,RegisteredAnimationInfo:Fs,RemoteSkybox:fu,Renderer:di,RendererLightmap:md,Rigidbody:Ke,RotationBySpeedModule:Ni,RotationOverLifetimeModule:rn,SceneSwitcher:Ie,ScreenCapture:lo,ScreenSpaceAmbientOcclusion:gs,ScreenSpaceAmbientOcclusionN8:ln,SetActiveOnClick:qm,ShadowCatcher:Bc,ShapeModule:_g,SharpeningEffect:Ic,SignalAsset:bu,SignalReceiver:Vc,SignalReceiverEvent:Nc,SignalTrackHandler:ql,Size:jv,SizeBySpeedModule:Kt,SizeOverLifetimeModule:mr,SkinnedMeshRenderer:Um,SmoothFollow:mu,SpatialGrabRaycaster:Go,SpatialHtml:Gc,SpatialTrigger:gu,SpatialTriggerReceiver:En,SpectatorCamera:yu,SphereCollider:ga,Sprite:us,SpriteData:Yr,SpriteRenderer:Qt,SpriteSheet:la,SubEmitterSystem:vd,SyncedCamera:Mg,SyncedRoom:cn,SyncedTransform:tn,TapGestureTrigger:Qm,TeleportTarget:iu,TestRunner:Og,TestSimulateUserData:kg,Text:St,TextBuilder:sg,TextExtension:su,TextureSheetAnimationModule:Pt,TiltShiftEffect:Bn,ToneMappingEffect:Xs,TrailModule:Ee,TransformData:ke,TransformGizmo:br,TriggerBuilder:wt,TriggerModel:Vs,UIRaycastUtils:_m,UIRootComponent:xc,USDZExporter:Rn,USDZText:Vr,USDZUIExtension:cg,UsageMarker:gc,VariantAction:Gm,VelocityOverLifetimeModule:Le,VerticalLayoutGroup:og,VideoPlayer:Ze,Vignette:_r,VisibilityAction:wc,Voip:Js,Volume:Ra,VolumeParameter:D,VolumeProfile:cu,WebARCameraBackground:qc,WebARSessionRoot:ri,WebXR:nu,WebXRImageTracking:Xl,WebXRImageTrackingModel:bs,WebXRPlaneTracking:vs,WebXRTrackedImage:ua,XRControllerFollow:_s,XRControllerModel:rs,XRControllerMovement:ui,XRFlag:Ri,XRRig:ku,XRState:Dt,__Ignore:Pw},Symbol.toStringTag,{value:"Module"})),Sd=w("debugmissingcamera");re.registerCallback(oe.MissingCamera,s=>{Sd&&console.warn("Creating missing camera");const e=s.context.scene,t=new c.PerspectiveCamera;t.name="Default Fallback Camera",e.add(t);const i=new $t;if(i.sourceId=s.files?.[0]?.src??"unknown",i.fieldOfView=35,s.context.domElement.getAttribute("transparent")!=null)i.clearFlags=Bo.Uninitialized;else if(s.context.domElement.getAttribute("background-image")?.length||s.context.lightmaps.tryGetSkybox(i.sourceId))i.clearFlags=Bo.Skybox;else{if(i.clearFlags=Bo.SolidColor,!s.context.domElement.getAttribute("background-color")){let a="#efefef";typeof window!==void 0&&window.matchMedia("(prefers-color-scheme: dark)").matches&&(a="#1f1f1f"),e.background=new c.Color(a)}if(!e.environment){const a=new c.PMREMGenerator$1(s.context.renderer),l=new Mu("neutral");e.environment=a.fromScene(l,.025).texture}}const o=Ao(t,i,!0);return t.position.x=0,t.position.y=1,t.position.z=2,s.context.domElement?.cameraControls!=!1&&Mw(s.context,o),o});re.registerCallback(oe.ContextCreated,s=>{if(!s.context.mainCamera){Sd&&console.log("Will not auto-fit because a default camera exists");return}if(s.context.domElement?.cameraControls==!0){if(tb(s.context.mainCamera)?.isCameraController==!0){Sd&&console.log("Will not auto-fit because a camera controller exists");return}Mw(s.context)}});function Mw(s,e){e=e??s.mainCameraComponent;const t=e?.gameObject;if(Sd&&console.log("Creating default camera controls",e?.name),t){const i=sc(t,he);i.sourceId=e?.sourceId??"unknown";const n=s.domElement.getAttribute("auto-rotate");if(i.autoRotate=n!=null&&n!="0"&&n?.toLowerCase()!="false",i.autoRotateSpeed=.5,i.autoFit=!0,i.autoRotate&&n){const o=parseFloat(n);isNaN(o)||(i.autoRotateSpeed=o)}}else console.warn("Missing camera object, can not add orbit controls")}re.registerCallback(oe.ContextCreated,s=>{const e=s.context.domElement.getAttribute("autoplay");if(e!==void 0&&(e===""||e==="true"||e==="1")&&s.files)for(const t of s.files)x.foreachComponent(t.file.scene,n=>{if(n.enabled!==!1){if(n instanceof vt&&n.playAutomatically||n instanceof mt||n instanceof da&&n.playOnAwake===!0)return!0;if(n instanceof vt)return n.playAutomatically=!0,!0;if(n instanceof da)return n.playOnAwake=!0,!0}},!0)!==!0&&oa.assignAnimationsFromFile(t.file,{createAnimationComponent:(n,o)=>ai(n,vt)})});class JR extends se.WorkerBase{constructor(){super(new Worker(new URL("/generateMeshBVH.worker-2qGLkQjg.js",typeof document>"u"?require("url").pathToFileURL(__filename).href:Eu&&Eu.tagName.toUpperCase()==="SCRIPT"&&Eu.src||new URL("needle-engine.bundle-CaNItSG7.umd.cjs",document.baseURI).href),{type:"module"})),this.name="GenerateMeshBVHWorker"}runTask(e,t,i={}){return new Promise((n,o)=>{if(t.getAttribute("position").isInterleavedBufferAttribute||t.index&&t.index.isInterleavedBufferAttribute)throw new Error("GenerateMeshBVHWorker: InterleavedBufferAttribute are not supported for the geometry attributes.");e.onerror=h=>{o(new Error(`[GenerateMeshBVHWorker] ${h.message||"Unknown error. Please check the server console. If you're using vite try adding 'three-mesh-bvh' to 'optimizeDeps.exclude' in your vite.config.js"}`))},e.onmessage=h=>{const{data:d}=h;if(d.error)o(new Error(d.error)),e.onmessage=null;else if(d.serialized){const{serialized:u,position:p}=d,m=se.MeshBVH.deserialize(u,t,{setIndex:!1}),y=Object.assign({setBoundingBox:!0},i);if(t.attributes.position.array=p,u.index)if(t.index)t.index.array=u.index;else{const b=new c.BufferAttribute(u.index,1,!1);t.setIndex(b)}y.setBoundingBox&&(t.boundingBox=m.getBoundingBox(new c.Box3)),i.onProgress&&i.onProgress(d.progress),n(m),e.onmessage=null}else i.onProgress&&i.onProgress(d.progress)};const r=t.index?t.index.array:null,a=t.attributes.position.array,l=[a];r&&l.push(r),e.postMessage({index:r,position:a,options:{...i,onProgress:null,includedProgressCallback:!!i.onProgress,groups:[...t.groups]}},l.map(h=>h.buffer).filter(h=>typeof SharedArrayBuffer>"u"||!(h instanceof SharedArrayBuffer)))})}}const eE=Object.freeze(Object.defineProperty({__proto__:null,GenerateMeshBVHWorker:JR},Symbol.toStringTag,{value:"Module"}));exports.$physicsKey=z1;exports.ActionBuilder=ae;exports.ActionCollection=Av;exports.ActionModel=Nt;exports.Addressables=g0;exports.AlignmentConstraint=hc;exports.AmbientMode=Xr;exports.Animation=vt;exports.AnimationCurve=Rc;exports.AnimationExtension=Kd;exports.AnimationTrackHandler=vu;exports.AnimationUtils=oa;exports.Animator=mt;exports.AnimatorConditionMode=Ls;exports.AnimatorController=Ai;exports.AnimatorControllerParameterType=gm;exports.AnimatorStateInfo=rl;exports.Antialiasing=Tc;exports.Application=en;exports.AssetDatabase=Lb;exports.AssetReference=Y;exports.AudioExtension=ar;exports.AudioListener=es;exports.AudioSource=Ii;exports.AudioTrackHandler=is;exports.Avatar=Hs;exports.AvatarBlink_Simple=nr;exports.AvatarEyeLook_Rotation=Cm;exports.AvatarLoader=Sw;exports.AvatarMarker=xe;exports.AvatarModel=zg;exports.Avatar_Brain_LookAt=Nl;exports.Avatar_MouthShapes=pc;exports.Avatar_MustacheShake=xm;exports.Avatar_POI=Fo;exports.Axes=zr;exports.AxesHelper=ma;exports.BUILD_TIME=Wp;exports.BaseUIComponent=Bi;exports.BasicIKConstraint=Mm;exports.BehaviorExtension=tg;exports.BehaviorModel=pt;exports.BloomEffect=du;exports.BoxCollider=Hd;exports.BoxGizmo=dr;exports.BoxHelperComponent=nt;exports.Button=ys;exports.ButtonsFactory=Yi;exports.CallDirection=K0;exports.CallInfo=Jn;exports.Camera=$t;exports.CameraTargetReachedEvent=zl;exports.Canvas=ca;exports.CanvasGroup=qs;exports.CapsuleCollider=os;exports.ChangeMaterialOnClick=Hm;exports.ChangeTransformOnClick=lr;exports.CharacterController=sr;exports.CharacterControllerInput=cs;exports.ChromaticAberration=Ac;exports.CircularBuffer=li;exports.ClearFlags=Bo;exports.ClipExtrapolation=pn;exports.Collider=Xt;exports.Collision=X0;exports.CollisionDetectionMode=zd;exports.ColorAdjustments=ao;exports.ColorBySpeedModule=Oa;exports.ColorOverLifetimeModule=lu;exports.Component=QC;exports.Component$1=k;exports.ComponentLifecycleEvents=Ad;exports.Components=ZR;exports.ConnectionEvents=Ob;exports.ContactPoint=q0;exports.ContactShadows=mc;exports.Context=U;exports.ContextArgs=DC;exports.ContextEvent=oe;exports.ContextRegistry=re;exports.ControlTrackHandler=wu;exports.CustomBranding=hr;exports.CustomShader=_e;exports.DefaultReflectionMode=od;exports.Deletable=Em;exports.DeleteBox=Ns;exports.DepthOfField=an;exports.DeviceFlag=qd;exports.DocumentExtension=Cw;exports.DragControls=Mo;exports.DragMode=Tm;exports.DropListener=hs;exports.Duplicatable=Lm;exports.EffectWrapper=Hl;exports.EmissionModule=ms;exports.EmphasizeOnClick=ba;exports.EngineLoadingView=Ql;exports.EnvironmentScene=Mu;exports.EventList=de;exports.EventListEvent=Nd;exports.EventSystem=It;exports.EventTrigger=Qd;exports.FieldWithDefault=yv;exports.FileReference=Io;exports.FileReferenceSerializer=_0;exports.FileSpawnModel=cP;exports.File_Event=sv;exports.FixedJoint=mg;exports.Fog=Ca;exports.FrameEvent=pe;exports.GENERATOR=Md;exports.GameObject=x;exports.Gizmos=j;exports.GltfExport=Vm;exports.GltfExportBox=zm;exports.Gradient=fr;exports.Graphic=Cc;exports.GraphicRaycaster=Vd;exports.Graphics=Ws;exports.GridHelper=Pa;exports.GridLayoutGroup=ag;exports.GroundProjectedEnv=An;exports.GroupActionModel=Oo;exports.HideFlags=$d;exports.HideOnStart=Oi;exports.HingeJoint=Mc;exports.HorizontalLayoutGroup=rg;exports.HostData=FS;exports.Image=Ea;exports.ImageReference=Do;exports.ImageReferenceSerializer=y0;exports.InheritVelocityModule=bg;exports.Input=wb;exports.InputEventQueue=Vt;exports.InputEvents=we;exports.InputField=Ag;exports.InstanceHandle=Uo;exports.InstancingHandler=qo;exports.InstancingUtil=Ti;exports.InstantiateEvent=Wb;exports.InstantiateIdProvider=ft;exports.InstantiateOptions=sn;exports.Interactable=Rm;exports.JoinedRoomResponse=cS;exports.KeyEventArgs=Zx;exports.Keyframe=Wt;exports.LODGroup=kc;exports.LODModel=Ma;exports.LeftRoomResponse=hS;exports.Light=mi;exports.LightData=S0;exports.LimitVelocityOverLifetimeModule=et;exports.LoadingElementOptions=BR;exports.LogStats=km;exports.LogType=oi;exports.LookAt=Lg;exports.LookAtConstraint=ir;exports.MainModule=Ct;exports.MarkerType=Rg;exports.MaskableGraphic=Pc;exports.Mathf=I;exports.MeshCollider=eo;exports.MeshRenderer=yc;exports.MinMaxCurve=G;exports.MinMaxGradient=pr;exports.NEKeyboardEvent=il;exports.NEPointerEvent=Xn;exports.NeedleButtonElement=xw;exports.NeedleEngineWebComponent=Ug;exports.NeedleMenu=Dn;exports.NeedlePatchesKey=kh;exports.NeedleXRController=Xp;exports.NeedleXRSession=H;exports.NeedleXRSync=Eb;exports.NeedleXRUtils=Ab;exports.NestedGltf=ou;exports.NetworkConnection=Rb;exports.NetworkedStreamEvents=xn;exports.NetworkedStreams=fc;exports.Networking=yg;exports.NewInstanceModel=Hb;exports.NoiseModule=fe;exports.ObjectRaycaster=hi;exports.ObjectUtils=Ko;exports.OffsetConstraint=ur;exports.OneEuroFilter=Mh;exports.OneEuroFilterXYZ=jp;exports.OpenURL=Ta;exports.OrbitControls=he;exports.Outline=Sa;exports.OwnershipEvent=kb;exports.OwnershipModel=Zp;exports.PUBLIC_KEY=Br;exports.Padding=cr;exports.ParticleBurst=bd;exports.ParticleSubEmitter=vg;exports.ParticleSystem=Gl;exports.ParticleSystemBaseBehaviour=ro;exports.ParticleSystemRenderer=Vi;exports.ParticleSystemShapeType=_d;exports.PeerHandle=ts;exports.PeerNetworking=Mb;exports.Physics=na;exports.PhysicsExtension=ig;exports.PhysicsMaterialCombine=it;exports.PixelationEffect=Lc;exports.PlayAnimationOnClick=$l;exports.PlayAudioOnClick=Gs;exports.PlayableDirector=da;exports.PlayerColor=ha;exports.PlayerState=Ki;exports.PlayerStateEvent=Iv;exports.PlayerSync=Jm;exports.PlayerView=v0;exports.PlayerViewManager=w0;exports.PointerEventData=uc;exports.PointerType=Rd;exports.PostProcessingEffect=Ne;exports.PostProcessingEffectOrder=Qe;exports.PostProcessingHandler=Cg;exports.PreliminaryAction=va;exports.PreliminaryTrigger=vc;exports.PrimitiveType=No;exports.Progress=ie;exports.PromiseAllWithErrors=Dp;exports.PromiseErrorResult=Uf;exports.RGBAColor=Z;exports.RapierPhysics=Kr;exports.RawImage=Cu;exports.RaycastOptions=Zs;exports.Rect=Bv;exports.RectTransform=nn;exports.ReflectionProbe=Vl;exports.RegisteredAnimationInfo=Fs;exports.RemoteSkybox=fu;exports.RenderTexture=wn;exports.RenderTextureSerializer=$0;exports.Renderer=di;exports.RendererData=x0;exports.RendererLightmap=md;exports.Rigidbody=Ke;exports.RigidbodyConstraints=De;exports.RoomEvents=Q;exports.RotationBySpeedModule=Ni;exports.RotationOverLifetimeModule=rn;exports.SceneLightSettings=ud;exports.SceneSwitcher=Ie;exports.ScreenCapture=lo;exports.ScreenSpaceAmbientOcclusion=gs;exports.ScreenSpaceAmbientOcclusionN8=ln;exports.SendQueue=Qi;exports.SerializationContext=lm;exports.SetActiveOnClick=qm;exports.ShadowCatcher=Bc;exports.ShapeModule=_g;exports.ShapeOverlapResult=Q0;exports.SharpeningEffect=Ic;exports.SignalAsset=bu;exports.SignalReceiver=Vc;exports.SignalReceiverEvent=Nc;exports.SignalTrackHandler=ql;exports.Size=jv;exports.SizeBySpeedModule=Kt;exports.SizeOverLifetimeModule=mr;exports.SkinnedMeshRenderer=Um;exports.SmoothFollow=mu;exports.SpatialGrabRaycaster=Go;exports.SpatialHtml=Gc;exports.SpatialTrigger=gu;exports.SpatialTriggerReceiver=En;exports.SpectatorCamera=yu;exports.SphereCollider=ga;exports.SphereIntersection=tm;exports.Sprite=us;exports.SpriteData=Yr;exports.SpriteRenderer=Qt;exports.SpriteSheet=la;exports.StateMachineBehaviour=t1;exports.StreamEndedEvent=vm;exports.StreamReceivedEvent=Y0;exports.SubEmitterSystem=vd;exports.SyncedCamera=Mg;exports.SyncedRoom=cn;exports.SyncedTransform=tn;exports.TapGestureTrigger=Qm;exports.TeleportTarget=iu;exports.TestRunner=Og;exports.TestSceneUtils=HR;exports.TestSimulateUserData=kg;exports.Text=St;exports.TextBuilder=sg;exports.TextExtension=su;exports.TextureSheetAnimationModule=Pt;exports.TiltShiftEffect=Bn;exports.Time=C0;exports.ToneMappingEffect=Xs;exports.TrackHandler=$c;exports.TrackType=ei;exports.TrailModule=Ee;exports.TransformData=ke;exports.TransformGizmo=br;exports.TriggerBuilder=wt;exports.TriggerModel=Vs;exports.TypeStore=P;exports.UIRaycastUtils=_m;exports.UIRootComponent=xc;exports.USDDocument=$m;exports.USDObject=ze;exports.USDWriter=Sv;exports.USDZExporter=Rn;exports.USDZExporter$1=Cv;exports.USDZText=Vr;exports.USDZUIExtension=cg;exports.UriSerializer=W0;exports.UsageMarker=gc;exports.UserJoinedOrLeftRoomModel=dS;exports.VERSION=Zi;exports.VariantAction=Gm;exports.VelocityOverLifetimeModule=Le;exports.VerticalLayoutGroup=og;exports.VideoPlayer=Ze;exports.ViewDevice=Us;exports.Vignette=_r;exports.VisibilityAction=wc;exports.Voip=Js;exports.Volume=Ra;exports.VolumeParameter=D;exports.VolumeProfile=cu;exports.WaitForFrames=fC;exports.WaitForPromise=b0;exports.WaitForSeconds=dm;exports.Watch=ns;exports.WebARCameraBackground=qc;exports.WebARSessionRoot=ri;exports.WebXR=nu;exports.WebXRButtonFactory=$s;exports.WebXRImageTracking=Xl;exports.WebXRImageTrackingModel=bs;exports.WebXRPlaneTracking=vs;exports.WebXRTrackedImage=ua;exports.XRControllerFollow=_s;exports.XRControllerModel=rs;exports.XRControllerMovement=ui;exports.XRFlag=Ri;exports.XRRig=ku;exports.XRState=Dt;exports.XRStateFlag=bn;exports.__Ignore=Pw;exports.__internalNotifyObjectDestroyed=Fb;exports.activeInHierarchyFieldName=ss;exports.addAttributeChangeCallback=q_;exports.addComponent=ai;exports.addCustomExtensionPlugin=TP;exports.addNewComponent=Ao;exports.addPatch=Od;exports.apply=Dd;exports.applyHMRChanges=XC;exports.applyPrototypeExtensions=s0;exports.beginListenDestroy=Gb;exports.beginListenInstantiate=Xb;exports.binaryIdentifierCasts=Qp;exports.build_scene_functions=LC;exports.builtinComponentKeyName=wo;exports.calculateProgress01=Fg;exports.clearMessages=hx;exports.colorSerializer=_1;exports.compareAssociation=Zb;exports.componentSerializer=Bh;exports.copyTexture=lb;exports.createMotion=U0;exports.debugNet=Bt;exports.debugOwner=nl;exports.decompressGpuTexture=kv;exports.deepClone=Kl;exports.delay=Tn;exports.delayForFrames=Zl;exports.deserializeObject=nd;exports.destroy=ci;exports.destroyComponentInstance=a0;exports.determineMimeTypeFromExtension=ov;exports.disposeObjectResources=ge;exports.disposeStream=Sn;exports.editorGuidKeyName=wl;exports.enableSpatialConsole=Ro;exports.euler=v1;exports.eventListSerializer=C1;exports.exportAsGLTF=QR;exports.findByGuid=hm;exports.findObjectOfType=ac;exports.findObjectsOfType=c0;exports.findResourceUsers=im;exports.fitObjectIntoVolume=hb;exports.foreachComponent=$o;exports.foreachComponentEnumerator=jd;exports.forward=Px;exports.generateQRCode=Q_;exports.generateSeed=qb;exports.getBoundingBox=Gt;exports.getCameraController=tb;exports.getComponent=Jo;exports.getComponentInChildren=rc;exports.getComponentInParent=Bl;exports.getComponents=oc;exports.getComponentsInChildren=fa;exports.getComponentsInParent=Ld;exports.getFormattedDate=bv;exports.getIconElement=ut;exports.getIconTexture=sp;exports.getLoader=Ji;exports.getOrAddComponent=sc;exports.getParam=w;exports.getParentHierarchyPath=kx;exports.getPath=Nw;exports.getPeerOptions=oS;exports.getPeerjsInstance=Pb;exports.getResourceUserCount=RS;exports.getTempColor=sb;exports.getTempQuaternion=Xi;exports.getTempVector=V;exports.getUrlParams=Yl;exports.getVisibleInCustomShadowRendering=cb;exports.getWorldDirection=ob;exports.getWorldEuler=Up;exports.getWorldPosition=X;exports.getWorldQuaternion=ue;exports.getWorldRotation=Pd;exports.getWorldScale=Ae;exports.hasCommercialLicense=kn;exports.hasIndieLicense=cc;exports.hasPointerEventComponent=ld;exports.hasProLicense=On;exports.hideDebugConsole=pb;exports.imageToCanvas=Rv;exports.instantiate=Wo;exports.invokeLoadedImportPluginHooks=pv;exports.invokeXRSessionEnd=vb;exports.invokeXRSessionStart=bb;exports.isActiveInHierarchy=h0;exports.isActiveSelf=pa;exports.isAndroidDevice=qw;exports.isAnimationAction=ab;exports.isComponent=H0;exports.isDebugMode=Bw;exports.isDesktop=$w;exports.isDestroyed=Vo;exports.isDevEnvironment=A;exports.isDisposed=OS;exports.isExporting=qR;exports.isGLTFModel=G0;exports.isHostedOnGlitch=z_;exports.isHotReloadEnabled=cp;exports.isHotReloading=HC;exports.isIPad=Gw;exports.isIconElement=O0;exports.isLocalNetwork=Li;exports.isMacOS=Qw;exports.isMobileDevice=Ww;exports.isMozillaXR=Xw;exports.isQuest=Zw;exports.isResourceTrackingEnabled=Ib;exports.isSafari=Kw;exports.isUsingInstancing=Id;exports.isiOS=Yw;exports.isiPad=Hw;exports.loadAsset=TR;exports.loadSync=Bg;exports.logHierarchy=Qh;exports.lookAtInverse=yx;exports.lookAtObject=Jl;exports.lookAtScreenPoint=_x;exports.makeId=Uw;exports.makeIdFromRandomWords=W_;exports.makeNameSafe=ji;exports.markAsInstancedRendered=d0;exports.microphonePermissionsGranted=Jw;exports.nameof=jw;exports.nameofFactory=V_;exports.objectSerializer=V0;exports.offXRSessionEnd=Kx;exports.offXRSessionStart=Yx;exports.onAfterRender=WC;exports.onBeforeRender=$C;exports.onClear=NC;exports.onDestroy=VC;exports.onInitialized=A0;exports.onStart=pm;exports.onUpdate=L0;exports.onXRSessionEnd=qp;exports.onXRSessionStart=kd;exports.parseSync=yw;exports.placeOnSurface=db;exports.postprocessFBXMaterials=Vp;exports.prefix=u1;exports.pushState=$_;exports.randomNumber=zw;exports.registerBinaryType=Yp;exports.registerComponent=Fd;exports.registerComponentExtension=jm;exports.registerCustomEffectType=$i;exports.registerExportExtensions=Bm;exports.registerExtensions=pd;exports.registerHotReloadType=I0;exports.registerLoader=Gp;exports.registerPrefabProvider=Yb;exports.registerPrototypeExtensions=o0;exports.registerType=$S;exports.relativePathPrefix=H_;exports.removeAttributeChangeCallback=X_;exports.removeComponent=cm;exports.removeCustomImportExtensionType=AP;exports.removePatch=Xx;exports.resolveUrl=Qs;exports.sanitizeString=G_;exports.saveImage=fw;exports.screenshot=pR;exports.screenshot2=Ig;exports.sendDestroyed=sm;exports.serializable=f;exports.serializeObject=e0;exports.serializeable=er;exports.setActive=Cl;exports.setAllowBalloonMessages=Z_;exports.setAllowOverlayMessages=rx;exports.setAutoFitEnabled=qh;exports.setCameraController=Nf;exports.setDestroyed=f0;exports.setDevEnvironment=jx;exports.setDisposable=Td;exports.setDontDestroy=Tr;exports.setOrAddParamsToUrl=Ff;exports.setParam=Fw;exports.setParamWithoutReload=Ll;exports.setPeerOptions=rS;exports.setResourceTrackingEnabled=MS;exports.setState=Ap;exports.setVisibleInCustomShadowRendering=Np;exports.setWorldEuler=zp;exports.setWorldPosition=Ye;exports.setWorldPositionXYZ=zo;exports.setWorldQuaternion=Di;exports.setWorldQuaternionXYZW=Fp;exports.setWorldRotation=rb;exports.setWorldRotationXYZ=ec;exports.setWorldScale=Jr;exports.showBalloonError=tc;exports.showBalloonMessage=Se;exports.showBalloonWarning=ce;exports.showDebugConsole=$p;exports.slerp=gx;exports.syncDestroy=ic;exports.syncField=Zm;exports.syncInstantiate=om;exports.textureToCanvas=Rx;exports.tryCastBinary=Sb;exports.tryDetermineMimetypeFromBinary=av;exports.tryDetermineMimetypeFromURL=rv;exports.tryFindObject=Zr;exports.tryGetGuid=Cb;exports.unregisterHotReloadType=j0;exports.unwatchWrite=Lp;exports.useForAutoFit=ib;exports.validate=gt;exports.watchWrite=Cd;
|
package/dist/needle-engine.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { GameObject as r, onClear as i, onDestroy as a, onInitialized as s, onAfterRender as l, onBeforeRender as d, onUpdate as c, onStart as m, loadAsset as g, NeedleXRSession as p, Context as u, VERSION as S, Component as C, Components as y } from "./needle-engine.bundle-
|
|
2
|
-
import { $physicsKey as P, ActionBuilder as T, ActionCollection as b, ActionModel as A, Addressables as M, AlignmentConstraint as I, AmbientMode as O, Animation as D, AnimationCurve as x, AnimationExtension as k, AnimationTrackHandler as L, AnimationUtils as N, Animator as B, AnimatorConditionMode as F, AnimatorController as U, AnimatorControllerParameterType as w, AnimatorStateInfo as G, Antialiasing as W, Application as H, AssetDatabase as X, AssetReference as z, AudioExtension as V, AudioListener as _, AudioSource as j, AudioTrackHandler as K, Avatar as Z, AvatarBlink_Simple as Q, AvatarEyeLook_Rotation as Y, AvatarLoader as $, AvatarMarker as J, AvatarModel as q, Avatar_Brain_LookAt as ee, Avatar_MouthShapes as te, Avatar_MustacheShake as oe, Avatar_POI as re, Axes as ne, AxesHelper as ie, BUILD_TIME as ae, BaseUIComponent as se, BasicIKConstraint as le, BehaviorExtension as de, BehaviorModel as ce, Component$1 as me, BlobStorage as ge, BloomEffect as pe, BoxCollider as ue, BoxGizmo as Se, BoxHelperComponent as Ce, Button as ye, ButtonsFactory as Ee, CallDirection as Re, CallInfo as he, Camera as fe, CameraTargetReachedEvent as ve, Canvas as Pe, CanvasGroup as Te, CapsuleCollider as be, ChangeMaterialOnClick as Ae, ChangeTransformOnClick as Me, CharacterController as Ie, CharacterControllerInput as Oe, ChromaticAberration as De, CircularBuffer as xe, ClearFlags as ke, ClipExtrapolation as Le, Collider as Ne, Collision as Be, CollisionDetectionMode as Fe, ColorAdjustments as Ue, ColorBySpeedModule as we, ColorOverLifetimeModule as Ge, Component$1 as We, ComponentLifecycleEvents as He, ConnectionEvents as Xe, ContactPoint as ze, ContactShadows as Ve, ContextArgs as _e, ContextEvent as je, ContextRegistry as Ke, ControlTrackHandler as Ze, CustomBranding as Qe, CustomShader as Ye, DefaultReflectionMode as $e, Deletable as Je, DeleteBox as qe, DepthOfField as et, DeviceFlag as tt, DeviceUtilities as ot, DocumentExtension as rt, DragControls as nt, DragMode as it, DropListener as at, Duplicatable as st, EffectWrapper as lt, EmissionModule as dt, EmphasizeOnClick as ct, EngineLoadingView as mt, EnvironmentScene as gt, EventList as pt, EventListEvent as ut, EventSystem as St, EventTrigger as Ct, FieldWithDefault as yt, FileReference as Et, FileReferenceSerializer as Rt, FileSpawnModel as ht, File_Event as ft, FixedJoint as vt, Fog as Pt, FrameEvent as Tt, GENERATOR as bt, Gizmos as At, GltfExport as Mt, GltfExportBox as It, Gradient as Ot, Graphic as Dt, GraphicRaycaster as xt, Graphics as kt, GridHelper as Lt, GridLayoutGroup as Nt, GroundProjectedEnv as Bt, GroupActionModel as Ft, HideFlags as Ut, HideOnStart as wt, HingeJoint as Gt, HorizontalLayoutGroup as Wt, HostData as Ht, Image as Xt, ImageReference as zt, ImageReferenceSerializer as Vt, InheritVelocityModule as _t, Input as jt, InputEventQueue as Kt, InputEvents as Zt, InputField as Qt, InstanceHandle as Yt, InstancingHandler as $t, InstancingUtil as Jt, InstantiateEvent as qt, InstantiateIdProvider as eo, InstantiateOptions as to, Interactable as oo, InternalScreenshotUtils as ro, JoinedRoomResponse as no, KeyEventArgs as io, Keyframe as ao, LODGroup as so, LODModel as lo, LeftRoomResponse as co, Light as mo, LightData as go, LimitVelocityOverLifetimeModule as po, LoadingElementOptions as uo, LogStats as So, LogType as Co, LookAt as yo, LookAtConstraint as Eo, MainModule as Ro, MarkerType as ho, MaskableGraphic as fo, Mathf as vo, MeshCollider as Po, MeshRenderer as To, MinMaxCurve as bo, MinMaxGradient as Ao, MODULES as Mo, NEKeyboardEvent as Io, NEPointerEvent as Oo, NeedleButtonElement as Do, ContextRegistry as xo, NeedleEngineModelLoader as ko, NeedleEngineWebComponent as Lo, NeedleMenu as No, NeedlePatchesKey as Bo, USDZExporter$1 as Fo, NeedleXRController as Uo, NeedleXRSync as wo, NeedleXRUtils as Go, NestedGltf as Wo, NetworkConnection as Ho, NetworkedStreamEvents as Xo, NetworkedStreams as zo, Networking as Vo, NewInstanceModel as _o, NoiseModule as jo, ObjectRaycaster as Ko, ObjectUtils as Zo, OffsetConstraint as Qo, OneEuroFilter as Yo, OneEuroFilterXYZ as $o, OpenURL as Jo, OrbitControls as qo, Outline as er, OwnershipEvent as tr, OwnershipModel as or, PUBLIC_KEY as rr, Padding as nr, ParticleBurst as ir, ParticleSubEmitter as ar, ParticleSystem as sr, ParticleSystemBaseBehaviour as lr, ParticleSystemRenderer as dr, ParticleSystemShapeType as cr, PeerHandle as mr, PeerNetworking as gr, Physics as pr, PhysicsExtension as ur, PhysicsMaterialCombine as Sr, PixelationEffect as Cr, PlayAnimationOnClick as yr, PlayAudioOnClick as Er, PlayableDirector as Rr, PlayerColor as hr, PlayerState as fr, PlayerStateEvent as vr, PlayerSync as Pr, PlayerView as Tr, PlayerViewManager as br, PointerEventData as Ar, PointerType as Mr, PostProcessingEffect as Ir, PostProcessingEffectOrder as Or, PostProcessingHandler as Dr, Volume as xr, PreliminaryAction as kr, PreliminaryTrigger as Lr, PreviewHelper as Nr, PrimitiveType as Br, Progress as Fr, PromiseAllWithErrors as Ur, PromiseErrorResult as wr, RGBAColor as Gr, RapierPhysics as Wr, RawImage as Hr, RaycastOptions as Xr, Rect as zr, RectTransform as Vr, ReflectionProbe as _r, RegisteredAnimationInfo as jr, RemoteSkybox as Kr, RenderTexture as Zr, RenderTextureSerializer as Qr, Renderer as Yr, RendererData as $r, RendererLightmap as Jr, Rigidbody as qr, RigidbodyConstraints as en, RoomEvents as tn, RotationBySpeedModule as on, RotationOverLifetimeModule as rn, SceneLightSettings as nn, SceneSwitcher as an, ScreenCapture as sn, ScreenSpaceAmbientOcclusion as ln, ScreenSpaceAmbientOcclusionN8 as dn, SendQueue as cn, SerializationContext as mn, SetActiveOnClick as gn, ShadowCatcher as pn, ShapeModule as un, ShapeOverlapResult as Sn, SharpeningEffect as Cn, SignalAsset as yn, SignalReceiver as En, SignalReceiverEvent as Rn, SignalTrackHandler as hn, Size as fn, SizeBySpeedModule as vn, SizeOverLifetimeModule as Pn, SkinnedMeshRenderer as Tn, SmoothFollow as bn, SpatialGrabRaycaster as An, SpatialHtml as Mn, SpatialTrigger as In, SpatialTriggerReceiver as On, SpectatorCamera as Dn, SphereCollider as xn, SphereIntersection as kn, Sprite as Ln, SpriteData as Nn, SpriteRenderer as Bn, SpriteSheet as Fn, StateMachineBehaviour as Un, StreamEndedEvent as wn, StreamReceivedEvent as Gn, SubEmitterSystem as Wn, SyncedCamera as Hn, SyncedRoom as Xn, SyncedTransform as zn, TapGestureTrigger as Vn, TeleportTarget as _n, TestRunner as jn, TestSceneUtils as Kn, TestSimulateUserData as Zn, Text as Qn, TextBuilder as Yn, TextExtension as $n, TextureSheetAnimationModule as Jn, TiltShiftEffect as qn, Time as ei, ToneMappingEffect as ti, TrackHandler as oi, TrackType as ri, TrailModule as ni, TransformData as ii, TransformGizmo as ai, TriggerBuilder as si, TriggerModel as li, TypeStore as di, UIRaycastUtils as ci, UIRootComponent as mi, USDDocument as gi, USDObject as pi, USDWriter as ui, USDZExporter as Si, USDZText as Ci, USDZUIExtension as yi, UriSerializer as Ei, UsageMarker as Ri, UserJoinedOrLeftRoomModel as hi, VariantAction as fi, VelocityOverLifetimeModule as vi, VerticalLayoutGroup as Pi, VideoPlayer as Ti, ViewDevice as bi, Vignette as Ai, VisibilityAction as Mi, Voip as Ii, Volume as Oi, VolumeParameter as Di, VolumeProfile as xi, WaitForFrames as ki, WaitForPromise as Li, WaitForSeconds as Ni, Watch as Bi, WebARCameraBackground as Fi, WebARSessionRoot as Ui, WebXR as wi, WebXRButtonFactory as Gi, WebXRImageTracking as Wi, WebXRImageTrackingModel as Hi, WebXRPlaneTracking as Xi, WebXRTrackedImage as zi, XRControllerFollow as Vi, XRControllerModel as _i, XRControllerMovement as ji, XRFlag as Ki, XRRig as Zi, XRState as Qi, XRStateFlag as Yi, __Ignore as $i, __internalNotifyObjectDestroyed as Ji, activeInHierarchyFieldName as qi, addAttributeChangeCallback as ea, addComponent as ta, addCustomExtensionPlugin as oa, addNewComponent as ra, addPatch as na, apply as ia, applyHMRChanges as aa, applyPrototypeExtensions as sa, beginListenDestroy as la, beginListenInstantiate as da, binaryIdentifierCasts as ca, build_scene_functions as ma, builtinComponentKeyName as ga, calculateProgress01 as pa, clearMessages as ua, clearMessages as Sa, colorSerializer as Ca, compareAssociation as ya, componentSerializer as Ea, copyTexture as Ra, createMotion as ha, debugNet as fa, debugOwner as va, decompressGpuTexture as Pa, deepClone as Ta, delay as ba, delayForFrames as Aa, deserializeObject as Ma, destroy as Ia, destroyComponentInstance as Oa, determineMimeTypeFromExtension as Da, disposeObjectResources as xa, disposeStream as ka, editorGuidKeyName as La, enableSpatialConsole as Na, euler as Ba, eventListSerializer as Fa, exportAsGLTF as Ua, findByGuid as wa, findObjectOfType as Ga, findObjectsOfType as Wa, findResourceUsers as Ha, fitObjectIntoVolume as Xa, foreachComponent as za, foreachComponentEnumerator as Va, forward as _a, generateQRCode as ja, generateSeed as Ka, getBoundingBox as Za, getCameraController as Qa, getComponent as Ya, getComponentInChildren as $a, getComponentInParent as Ja, getComponents as qa, getComponentsInChildren as es, getComponentsInParent as ts, getFormattedDate as os, getIconElement as rs, getIconTexture as ns, getLoader as is, getOrAddComponent as as, getParam as ss, getParentHierarchyPath as ls, getPath as ds, getPeerOptions as cs, getPeerjsInstance as ms, getResourceUserCount as gs, getTempColor as ps, getTempQuaternion as us, getTempVector as Ss, getUrlParams as Cs, getVisibleInCustomShadowRendering as ys, getWorldDirection as Es, getWorldEuler as Rs, getWorldPosition as hs, getWorldQuaternion as fs, getWorldRotation as vs, getWorldScale as Ps, hasCommercialLicense as Ts, hasIndieLicense as bs, hasPointerEventComponent as As, hasProLicense as Ms, hideDebugConsole as Is, imageToCanvas as Os, instantiate as Ds, invokeLoadedImportPluginHooks as xs, invokeXRSessionEnd as ks, invokeXRSessionStart as Ls, isActiveInHierarchy as Ns, isActiveSelf as Bs, isAndroidDevice as Fs, isAnimationAction as Us, isComponent as ws, isDebugMode as Gs, isDesktop as Ws, isDestroyed as Hs, isDevEnvironment as Xs, isDisposed as zs, isExporting as Vs, isGLTFModel as _s, isHostedOnGlitch as js, isHotReloadEnabled as Ks, isHotReloading as Zs, isIPad as Qs, isIconElement as Ys, isLocalNetwork as $s, isMacOS as Js, isMobileDevice as qs, isMozillaXR as el, isQuest as tl, isResourceTrackingEnabled as ol, isSafari as rl, isUsingInstancing as nl, isiOS as il, isiPad as al, loadSync as sl, logHierarchy as ll, lookAtInverse as dl, lookAtObject as cl, lookAtScreenPoint as ml, makeId as gl, makeIdFromRandomWords as pl, makeNameSafe as ul, markAsInstancedRendered as Sl, microphonePermissionsGranted as Cl, nameof as yl, nameofFactory as El, objectSerializer as Rl, offXRSessionEnd as hl, offXRSessionStart as fl, onXRSessionEnd as vl, onXRSessionStart as Pl, parseSync as Tl, placeOnSurface as bl, postprocessFBXMaterials as Al, prefix as Ml, pushState as Il, randomNumber as Ol, registerBinaryType as Dl, registerComponent as xl, registerComponentExtension as kl, registerCustomEffectType as Ll, registerExportExtensions as Nl, registerExtensions as Bl, registerHotReloadType as Fl, registerLoader as Ul, registerPrefabProvider as wl, registerPrototypeExtensions as Gl, registerType as Wl, relativePathPrefix as Hl, removeAttributeChangeCallback as Xl, removeComponent as zl, removeCustomImportExtensionType as Vl, removePatch as _l, resolveUrl as jl, sanitizeString as Kl, saveImage as Zl, screenshot as Ql, screenshot2 as Yl, sendDestroyed as $l, serializable as Jl, serializeObject as ql, serializeable as ed, setActive as td, setAllowBalloonMessages as od, setAllowOverlayMessages as rd, setAutoFitEnabled as nd, setCameraController as id, setDestroyed as ad, setDevEnvironment as sd, setDisposable as ld, setDontDestroy as dd, setOrAddParamsToUrl as cd, setParam as md, setParamWithoutReload as gd, setPeerOptions as pd, setResourceTrackingEnabled as ud, setState as Sd, setVisibleInCustomShadowRendering as Cd, setWorldEuler as yd, setWorldPosition as Ed, setWorldPositionXYZ as Rd, setWorldQuaternion as hd, setWorldQuaternionXYZW as fd, setWorldRotation as vd, setWorldRotationXYZ as Pd, setWorldScale as Td, showBalloonError as bd, showBalloonMessage as Ad, showBalloonWarning as Md, showDebugConsole as Id, slerp as Od, syncDestroy as Dd, syncField as xd, syncInstantiate as kd, textureToCanvas as Ld, tryCastBinary as Nd, tryDetermineMimetypeFromBinary as Bd, tryDetermineMimetypeFromURL as Fd, tryFindObject as Ud, tryGetGuid as wd, unregisterHotReloadType as Gd, unwatchWrite as Wd, useForAutoFit as Hd, validate as Xd, watchWrite as zd } from "./needle-engine.bundle-Ctm8br06.js";
|
|
1
|
+
import { GameObject as r, onClear as i, onDestroy as a, onInitialized as s, onAfterRender as l, onBeforeRender as d, onUpdate as c, onStart as m, loadAsset as g, NeedleXRSession as p, Context as u, VERSION as S, Component as C, Components as y } from "./needle-engine.bundle-BTJDRZkJ.js";
|
|
2
|
+
import { $physicsKey as P, ActionBuilder as T, ActionCollection as b, ActionModel as A, Addressables as M, AlignmentConstraint as I, AmbientMode as O, Animation as D, AnimationCurve as x, AnimationExtension as k, AnimationTrackHandler as L, AnimationUtils as N, Animator as B, AnimatorConditionMode as F, AnimatorController as U, AnimatorControllerParameterType as w, AnimatorStateInfo as G, Antialiasing as W, Application as H, AssetDatabase as X, AssetReference as z, AudioExtension as V, AudioListener as _, AudioSource as j, AudioTrackHandler as K, Avatar as Z, AvatarBlink_Simple as Q, AvatarEyeLook_Rotation as Y, AvatarLoader as $, AvatarMarker as J, AvatarModel as q, Avatar_Brain_LookAt as ee, Avatar_MouthShapes as te, Avatar_MustacheShake as oe, Avatar_POI as re, Axes as ne, AxesHelper as ie, BUILD_TIME as ae, BaseUIComponent as se, BasicIKConstraint as le, BehaviorExtension as de, BehaviorModel as ce, Component$1 as me, BlobStorage as ge, BloomEffect as pe, BoxCollider as ue, BoxGizmo as Se, BoxHelperComponent as Ce, Button as ye, ButtonsFactory as Ee, CallDirection as Re, CallInfo as he, Camera as fe, CameraTargetReachedEvent as ve, Canvas as Pe, CanvasGroup as Te, CapsuleCollider as be, ChangeMaterialOnClick as Ae, ChangeTransformOnClick as Me, CharacterController as Ie, CharacterControllerInput as Oe, ChromaticAberration as De, CircularBuffer as xe, ClearFlags as ke, ClipExtrapolation as Le, Collider as Ne, Collision as Be, CollisionDetectionMode as Fe, ColorAdjustments as Ue, ColorBySpeedModule as we, ColorOverLifetimeModule as Ge, Component$1 as We, ComponentLifecycleEvents as He, ConnectionEvents as Xe, ContactPoint as ze, ContactShadows as Ve, ContextArgs as _e, ContextEvent as je, ContextRegistry as Ke, ControlTrackHandler as Ze, CustomBranding as Qe, CustomShader as Ye, DefaultReflectionMode as $e, Deletable as Je, DeleteBox as qe, DepthOfField as et, DeviceFlag as tt, DeviceUtilities as ot, DocumentExtension as rt, DragControls as nt, DragMode as it, DropListener as at, Duplicatable as st, EffectWrapper as lt, EmissionModule as dt, EmphasizeOnClick as ct, EngineLoadingView as mt, EnvironmentScene as gt, EventList as pt, EventListEvent as ut, EventSystem as St, EventTrigger as Ct, FieldWithDefault as yt, FileReference as Et, FileReferenceSerializer as Rt, FileSpawnModel as ht, File_Event as ft, FixedJoint as vt, Fog as Pt, FrameEvent as Tt, GENERATOR as bt, Gizmos as At, GltfExport as Mt, GltfExportBox as It, Gradient as Ot, Graphic as Dt, GraphicRaycaster as xt, Graphics as kt, GridHelper as Lt, GridLayoutGroup as Nt, GroundProjectedEnv as Bt, GroupActionModel as Ft, HideFlags as Ut, HideOnStart as wt, HingeJoint as Gt, HorizontalLayoutGroup as Wt, HostData as Ht, Image as Xt, ImageReference as zt, ImageReferenceSerializer as Vt, InheritVelocityModule as _t, Input as jt, InputEventQueue as Kt, InputEvents as Zt, InputField as Qt, InstanceHandle as Yt, InstancingHandler as $t, InstancingUtil as Jt, InstantiateEvent as qt, InstantiateIdProvider as eo, InstantiateOptions as to, Interactable as oo, InternalScreenshotUtils as ro, JoinedRoomResponse as no, KeyEventArgs as io, Keyframe as ao, LODGroup as so, LODModel as lo, LeftRoomResponse as co, Light as mo, LightData as go, LimitVelocityOverLifetimeModule as po, LoadingElementOptions as uo, LogStats as So, LogType as Co, LookAt as yo, LookAtConstraint as Eo, MainModule as Ro, MarkerType as ho, MaskableGraphic as fo, Mathf as vo, MeshCollider as Po, MeshRenderer as To, MinMaxCurve as bo, MinMaxGradient as Ao, MODULES as Mo, NEKeyboardEvent as Io, NEPointerEvent as Oo, NeedleButtonElement as Do, ContextRegistry as xo, NeedleEngineModelLoader as ko, NeedleEngineWebComponent as Lo, NeedleMenu as No, NeedlePatchesKey as Bo, USDZExporter$1 as Fo, NeedleXRController as Uo, NeedleXRSync as wo, NeedleXRUtils as Go, NestedGltf as Wo, NetworkConnection as Ho, NetworkedStreamEvents as Xo, NetworkedStreams as zo, Networking as Vo, NewInstanceModel as _o, NoiseModule as jo, ObjectRaycaster as Ko, ObjectUtils as Zo, OffsetConstraint as Qo, OneEuroFilter as Yo, OneEuroFilterXYZ as $o, OpenURL as Jo, OrbitControls as qo, Outline as er, OwnershipEvent as tr, OwnershipModel as or, PUBLIC_KEY as rr, Padding as nr, ParticleBurst as ir, ParticleSubEmitter as ar, ParticleSystem as sr, ParticleSystemBaseBehaviour as lr, ParticleSystemRenderer as dr, ParticleSystemShapeType as cr, PeerHandle as mr, PeerNetworking as gr, Physics as pr, PhysicsExtension as ur, PhysicsMaterialCombine as Sr, PixelationEffect as Cr, PlayAnimationOnClick as yr, PlayAudioOnClick as Er, PlayableDirector as Rr, PlayerColor as hr, PlayerState as fr, PlayerStateEvent as vr, PlayerSync as Pr, PlayerView as Tr, PlayerViewManager as br, PointerEventData as Ar, PointerType as Mr, PostProcessingEffect as Ir, PostProcessingEffectOrder as Or, PostProcessingHandler as Dr, Volume as xr, PreliminaryAction as kr, PreliminaryTrigger as Lr, PreviewHelper as Nr, PrimitiveType as Br, Progress as Fr, PromiseAllWithErrors as Ur, PromiseErrorResult as wr, RGBAColor as Gr, RapierPhysics as Wr, RawImage as Hr, RaycastOptions as Xr, Rect as zr, RectTransform as Vr, ReflectionProbe as _r, RegisteredAnimationInfo as jr, RemoteSkybox as Kr, RenderTexture as Zr, RenderTextureSerializer as Qr, Renderer as Yr, RendererData as $r, RendererLightmap as Jr, Rigidbody as qr, RigidbodyConstraints as en, RoomEvents as tn, RotationBySpeedModule as on, RotationOverLifetimeModule as rn, SceneLightSettings as nn, SceneSwitcher as an, ScreenCapture as sn, ScreenSpaceAmbientOcclusion as ln, ScreenSpaceAmbientOcclusionN8 as dn, SendQueue as cn, SerializationContext as mn, SetActiveOnClick as gn, ShadowCatcher as pn, ShapeModule as un, ShapeOverlapResult as Sn, SharpeningEffect as Cn, SignalAsset as yn, SignalReceiver as En, SignalReceiverEvent as Rn, SignalTrackHandler as hn, Size as fn, SizeBySpeedModule as vn, SizeOverLifetimeModule as Pn, SkinnedMeshRenderer as Tn, SmoothFollow as bn, SpatialGrabRaycaster as An, SpatialHtml as Mn, SpatialTrigger as In, SpatialTriggerReceiver as On, SpectatorCamera as Dn, SphereCollider as xn, SphereIntersection as kn, Sprite as Ln, SpriteData as Nn, SpriteRenderer as Bn, SpriteSheet as Fn, StateMachineBehaviour as Un, StreamEndedEvent as wn, StreamReceivedEvent as Gn, SubEmitterSystem as Wn, SyncedCamera as Hn, SyncedRoom as Xn, SyncedTransform as zn, TapGestureTrigger as Vn, TeleportTarget as _n, TestRunner as jn, TestSceneUtils as Kn, TestSimulateUserData as Zn, Text as Qn, TextBuilder as Yn, TextExtension as $n, TextureSheetAnimationModule as Jn, TiltShiftEffect as qn, Time as ei, ToneMappingEffect as ti, TrackHandler as oi, TrackType as ri, TrailModule as ni, TransformData as ii, TransformGizmo as ai, TriggerBuilder as si, TriggerModel as li, TypeStore as di, UIRaycastUtils as ci, UIRootComponent as mi, USDDocument as gi, USDObject as pi, USDWriter as ui, USDZExporter as Si, USDZText as Ci, USDZUIExtension as yi, UriSerializer as Ei, UsageMarker as Ri, UserJoinedOrLeftRoomModel as hi, VariantAction as fi, VelocityOverLifetimeModule as vi, VerticalLayoutGroup as Pi, VideoPlayer as Ti, ViewDevice as bi, Vignette as Ai, VisibilityAction as Mi, Voip as Ii, Volume as Oi, VolumeParameter as Di, VolumeProfile as xi, WaitForFrames as ki, WaitForPromise as Li, WaitForSeconds as Ni, Watch as Bi, WebARCameraBackground as Fi, WebARSessionRoot as Ui, WebXR as wi, WebXRButtonFactory as Gi, WebXRImageTracking as Wi, WebXRImageTrackingModel as Hi, WebXRPlaneTracking as Xi, WebXRTrackedImage as zi, XRControllerFollow as Vi, XRControllerModel as _i, XRControllerMovement as ji, XRFlag as Ki, XRRig as Zi, XRState as Qi, XRStateFlag as Yi, __Ignore as $i, __internalNotifyObjectDestroyed as Ji, activeInHierarchyFieldName as qi, addAttributeChangeCallback as ea, addComponent as ta, addCustomExtensionPlugin as oa, addNewComponent as ra, addPatch as na, apply as ia, applyHMRChanges as aa, applyPrototypeExtensions as sa, beginListenDestroy as la, beginListenInstantiate as da, binaryIdentifierCasts as ca, build_scene_functions as ma, builtinComponentKeyName as ga, calculateProgress01 as pa, clearMessages as ua, clearMessages as Sa, colorSerializer as Ca, compareAssociation as ya, componentSerializer as Ea, copyTexture as Ra, createMotion as ha, debugNet as fa, debugOwner as va, decompressGpuTexture as Pa, deepClone as Ta, delay as ba, delayForFrames as Aa, deserializeObject as Ma, destroy as Ia, destroyComponentInstance as Oa, determineMimeTypeFromExtension as Da, disposeObjectResources as xa, disposeStream as ka, editorGuidKeyName as La, enableSpatialConsole as Na, euler as Ba, eventListSerializer as Fa, exportAsGLTF as Ua, findByGuid as wa, findObjectOfType as Ga, findObjectsOfType as Wa, findResourceUsers as Ha, fitObjectIntoVolume as Xa, foreachComponent as za, foreachComponentEnumerator as Va, forward as _a, generateQRCode as ja, generateSeed as Ka, getBoundingBox as Za, getCameraController as Qa, getComponent as Ya, getComponentInChildren as $a, getComponentInParent as Ja, getComponents as qa, getComponentsInChildren as es, getComponentsInParent as ts, getFormattedDate as os, getIconElement as rs, getIconTexture as ns, getLoader as is, getOrAddComponent as as, getParam as ss, getParentHierarchyPath as ls, getPath as ds, getPeerOptions as cs, getPeerjsInstance as ms, getResourceUserCount as gs, getTempColor as ps, getTempQuaternion as us, getTempVector as Ss, getUrlParams as Cs, getVisibleInCustomShadowRendering as ys, getWorldDirection as Es, getWorldEuler as Rs, getWorldPosition as hs, getWorldQuaternion as fs, getWorldRotation as vs, getWorldScale as Ps, hasCommercialLicense as Ts, hasIndieLicense as bs, hasPointerEventComponent as As, hasProLicense as Ms, hideDebugConsole as Is, imageToCanvas as Os, instantiate as Ds, invokeLoadedImportPluginHooks as xs, invokeXRSessionEnd as ks, invokeXRSessionStart as Ls, isActiveInHierarchy as Ns, isActiveSelf as Bs, isAndroidDevice as Fs, isAnimationAction as Us, isComponent as ws, isDebugMode as Gs, isDesktop as Ws, isDestroyed as Hs, isDevEnvironment as Xs, isDisposed as zs, isExporting as Vs, isGLTFModel as _s, isHostedOnGlitch as js, isHotReloadEnabled as Ks, isHotReloading as Zs, isIPad as Qs, isIconElement as Ys, isLocalNetwork as $s, isMacOS as Js, isMobileDevice as qs, isMozillaXR as el, isQuest as tl, isResourceTrackingEnabled as ol, isSafari as rl, isUsingInstancing as nl, isiOS as il, isiPad as al, loadSync as sl, logHierarchy as ll, lookAtInverse as dl, lookAtObject as cl, lookAtScreenPoint as ml, makeId as gl, makeIdFromRandomWords as pl, makeNameSafe as ul, markAsInstancedRendered as Sl, microphonePermissionsGranted as Cl, nameof as yl, nameofFactory as El, objectSerializer as Rl, offXRSessionEnd as hl, offXRSessionStart as fl, onXRSessionEnd as vl, onXRSessionStart as Pl, parseSync as Tl, placeOnSurface as bl, postprocessFBXMaterials as Al, prefix as Ml, pushState as Il, randomNumber as Ol, registerBinaryType as Dl, registerComponent as xl, registerComponentExtension as kl, registerCustomEffectType as Ll, registerExportExtensions as Nl, registerExtensions as Bl, registerHotReloadType as Fl, registerLoader as Ul, registerPrefabProvider as wl, registerPrototypeExtensions as Gl, registerType as Wl, relativePathPrefix as Hl, removeAttributeChangeCallback as Xl, removeComponent as zl, removeCustomImportExtensionType as Vl, removePatch as _l, resolveUrl as jl, sanitizeString as Kl, saveImage as Zl, screenshot as Ql, screenshot2 as Yl, sendDestroyed as $l, serializable as Jl, serializeObject as ql, serializeable as ed, setActive as td, setAllowBalloonMessages as od, setAllowOverlayMessages as rd, setAutoFitEnabled as nd, setCameraController as id, setDestroyed as ad, setDevEnvironment as sd, setDisposable as ld, setDontDestroy as dd, setOrAddParamsToUrl as cd, setParam as md, setParamWithoutReload as gd, setPeerOptions as pd, setResourceTrackingEnabled as ud, setState as Sd, setVisibleInCustomShadowRendering as Cd, setWorldEuler as yd, setWorldPosition as Ed, setWorldPositionXYZ as Rd, setWorldQuaternion as hd, setWorldQuaternionXYZW as fd, setWorldRotation as vd, setWorldRotationXYZ as Pd, setWorldScale as Td, showBalloonError as bd, showBalloonMessage as Ad, showBalloonWarning as Md, showDebugConsole as Id, slerp as Od, syncDestroy as Dd, syncField as xd, syncInstantiate as kd, textureToCanvas as Ld, tryCastBinary as Nd, tryDetermineMimetypeFromBinary as Bd, tryDetermineMimetypeFromURL as Fd, tryFindObject as Ud, tryGetGuid as wd, unregisterHotReloadType as Gd, unwatchWrite as Wd, useForAutoFit as Hd, validate as Xd, watchWrite as zd } from "./needle-engine.bundle-BTJDRZkJ.js";
|
|
3
3
|
import { NEEDLE_progressive as _d } from "./gltf-progressive-DXRy9EQz.js";
|
|
4
4
|
import { THREE as E } from "./three-BRSLmpyi.js";
|
|
5
5
|
const t = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{GameObject as s,onClear as o,onDestroy as r,onInitialized as n,onAfterRender as i,onBeforeRender as l,onUpdate as d,onStart as c,loadAsset as m,NeedleXRSession as p,Context as g,VERSION as u,Component as C,Components as y}from"./needle-engine.bundle-De23SUHN.min.js";import{$physicsKey as R,ActionBuilder as E,ActionCollection as h,ActionModel as v,Addressables as f,AlignmentConstraint as P,AmbientMode as A,Animation as b,AnimationCurve as T,AnimationExtension as M,AnimationTrackHandler as I,AnimationUtils as O,Animator as D,AnimatorConditionMode as x,AnimatorController as k,AnimatorControllerParameterType as L,AnimatorStateInfo as B,Antialiasing as F,Application as N,AssetDatabase as W,AssetReference as U,AudioExtension as w,AudioListener as G,AudioSource as H,AudioTrackHandler as X,Avatar as z,AvatarBlink_Simple as V,AvatarEyeLook_Rotation as _,AvatarLoader as j,AvatarMarker as K,AvatarModel as Q,Avatar_Brain_LookAt as Z,Avatar_MouthShapes as Y,Avatar_MustacheShake as J,Avatar_POI as $,Axes as q,AxesHelper as ee,BUILD_TIME as ae,BaseUIComponent as se,BasicIKConstraint as te,BehaviorExtension as oe,BehaviorModel as re,Component$1 as ne,BlobStorage as ie,BloomEffect as le,BoxCollider as de,BoxGizmo as ce,BoxHelperComponent as me,Button as pe,ButtonsFactory as ge,CallDirection as ue,CallInfo as Se,Camera as Ce,CameraTargetReachedEvent as ye,Canvas as Re,CanvasGroup as Ee,CapsuleCollider as he,ChangeMaterialOnClick as ve,ChangeTransformOnClick as fe,CharacterController as Pe,CharacterControllerInput as Ae,ChromaticAberration as be,CircularBuffer as Te,ClearFlags as Me,ClipExtrapolation as Ie,Collider as Oe,Collision as De,CollisionDetectionMode as xe,ColorAdjustments as ke,ColorBySpeedModule as Le,ColorOverLifetimeModule as Be,Component$1 as Fe,ComponentLifecycleEvents as Ne,ConnectionEvents as We,ContactPoint as Ue,ContactShadows as we,ContextArgs as Ge,ContextEvent as He,ContextRegistry as Xe,ControlTrackHandler as ze,CustomBranding as Ve,CustomShader as _e,DefaultReflectionMode as je,Deletable as Ke,DeleteBox as Qe,DepthOfField as Ze,DeviceFlag as Ye,DeviceUtilities as Je,DocumentExtension as $e,DragControls as qe,DragMode as ea,DropListener as aa,Duplicatable as sa,EffectWrapper as ta,EmissionModule as oa,EmphasizeOnClick as ra,EngineLoadingView as na,EnvironmentScene as ia,EventList as la,EventListEvent as da,EventSystem as ca,EventTrigger as ma,FieldWithDefault as pa,FileReference as ga,FileReferenceSerializer as ua,FileSpawnModel as Sa,File_Event as Ca,FixedJoint as ya,Fog as Ra,FrameEvent as Ea,GENERATOR as ha,Gizmos as va,GltfExport as fa,GltfExportBox as Pa,Gradient as Aa,Graphic as ba,GraphicRaycaster as Ta,Graphics as Ma,GridHelper as Ia,GridLayoutGroup as Oa,GroundProjectedEnv as Da,GroupActionModel as xa,HideFlags as ka,HideOnStart as La,HingeJoint as Ba,HorizontalLayoutGroup as Fa,HostData as Na,Image as Wa,ImageReference as Ua,ImageReferenceSerializer as wa,InheritVelocityModule as Ga,Input as Ha,InputEventQueue as Xa,InputEvents as za,InputField as Va,InstanceHandle as _a,InstancingHandler as ja,InstancingUtil as Ka,InstantiateEvent as Qa,InstantiateIdProvider as Za,InstantiateOptions as Ya,Interactable as Ja,InternalScreenshotUtils as $a,JoinedRoomResponse as qa,KeyEventArgs as es,Keyframe as as,LODGroup as ss,LODModel as ts,LeftRoomResponse as os,Light as rs,LightData as ns,LimitVelocityOverLifetimeModule as is,LoadingElementOptions as ls,LogStats as ds,LogType as cs,LookAt as ms,LookAtConstraint as ps,MainModule as gs,MarkerType as us,MaskableGraphic as Ss,Mathf as Cs,MeshCollider as ys,MeshRenderer as Rs,MinMaxCurve as Es,MinMaxGradient as hs,MODULES as vs,NEKeyboardEvent as fs,NEPointerEvent as Ps,NeedleButtonElement as As,ContextRegistry as bs,NeedleEngineModelLoader as Ts,NeedleEngineWebComponent as Ms,NeedleMenu as Is,NeedlePatchesKey as Os,USDZExporter$1 as Ds,NeedleXRController as xs,NeedleXRSync as ks,NeedleXRUtils as Ls,NestedGltf as Bs,NetworkConnection as Fs,NetworkedStreamEvents as Ns,NetworkedStreams as Ws,Networking as Us,NewInstanceModel as ws,NoiseModule as Gs,ObjectRaycaster as Hs,ObjectUtils as Xs,OffsetConstraint as zs,OneEuroFilter as Vs,OneEuroFilterXYZ as _s,OpenURL as js,OrbitControls as Ks,Outline as Qs,OwnershipEvent as Zs,OwnershipModel as Ys,PUBLIC_KEY as Js,Padding as $s,ParticleBurst as qs,ParticleSubEmitter as et,ParticleSystem as at,ParticleSystemBaseBehaviour as st,ParticleSystemRenderer as tt,ParticleSystemShapeType as ot,PeerHandle as rt,PeerNetworking as nt,Physics as it,PhysicsExtension as lt,PhysicsMaterialCombine as dt,PixelationEffect as ct,PlayAnimationOnClick as mt,PlayAudioOnClick as pt,PlayableDirector as gt,PlayerColor as ut,PlayerState as St,PlayerStateEvent as Ct,PlayerSync as yt,PlayerView as Rt,PlayerViewManager as Et,PointerEventData as ht,PointerType as vt,PostProcessingEffect as ft,PostProcessingEffectOrder as Pt,PostProcessingHandler as At,Volume as bt,PreliminaryAction as Tt,PreliminaryTrigger as Mt,PreviewHelper as It,PrimitiveType as Ot,Progress as Dt,PromiseAllWithErrors as xt,PromiseErrorResult as kt,RGBAColor as Lt,RapierPhysics as Bt,RawImage as Ft,RaycastOptions as Nt,Rect as Wt,RectTransform as Ut,ReflectionProbe as wt,RegisteredAnimationInfo as Gt,RemoteSkybox as Ht,RenderTexture as Xt,RenderTextureSerializer as zt,Renderer as Vt,RendererData as _t,RendererLightmap as jt,Rigidbody as Kt,RigidbodyConstraints as Qt,RoomEvents as Zt,RotationBySpeedModule as Yt,RotationOverLifetimeModule as Jt,SceneLightSettings as $t,SceneSwitcher as qt,ScreenCapture as eo,ScreenSpaceAmbientOcclusion as ao,ScreenSpaceAmbientOcclusionN8 as so,SendQueue as to,SerializationContext as oo,SetActiveOnClick as ro,ShadowCatcher as no,ShapeModule as io,ShapeOverlapResult as lo,SharpeningEffect as co,SignalAsset as mo,SignalReceiver as po,SignalReceiverEvent as go,SignalTrackHandler as uo,Size as So,SizeBySpeedModule as Co,SizeOverLifetimeModule as yo,SkinnedMeshRenderer as Ro,SmoothFollow as Eo,SpatialGrabRaycaster as ho,SpatialHtml as vo,SpatialTrigger as fo,SpatialTriggerReceiver as Po,SpectatorCamera as Ao,SphereCollider as bo,SphereIntersection as To,Sprite as Mo,SpriteData as Io,SpriteRenderer as Oo,SpriteSheet as Do,StateMachineBehaviour as xo,StreamEndedEvent as ko,StreamReceivedEvent as Lo,SubEmitterSystem as Bo,SyncedCamera as Fo,SyncedRoom as No,SyncedTransform as Wo,TapGestureTrigger as Uo,TeleportTarget as wo,TestRunner as Go,TestSceneUtils as Ho,TestSimulateUserData as Xo,Text as zo,TextBuilder as Vo,TextExtension as _o,TextureSheetAnimationModule as jo,TiltShiftEffect as Ko,Time as Qo,ToneMappingEffect as Zo,TrackHandler as Yo,TrackType as Jo,TrailModule as $o,TransformData as qo,TransformGizmo as er,TriggerBuilder as ar,TriggerModel as sr,TypeStore as tr,UIRaycastUtils as or,UIRootComponent as rr,USDDocument as nr,USDObject as ir,USDWriter as lr,USDZExporter as dr,USDZText as cr,USDZUIExtension as mr,UriSerializer as pr,UsageMarker as gr,UserJoinedOrLeftRoomModel as ur,VariantAction as Sr,VelocityOverLifetimeModule as Cr,VerticalLayoutGroup as yr,VideoPlayer as Rr,ViewDevice as Er,Vignette as hr,VisibilityAction as vr,Voip as fr,Volume as Pr,VolumeParameter as Ar,VolumeProfile as br,WaitForFrames as Tr,WaitForPromise as Mr,WaitForSeconds as Ir,Watch as Or,WebARCameraBackground as Dr,WebARSessionRoot as xr,WebXR as kr,WebXRButtonFactory as Lr,WebXRImageTracking as Br,WebXRImageTrackingModel as Fr,WebXRPlaneTracking as Nr,WebXRTrackedImage as Wr,XRControllerFollow as Ur,XRControllerModel as wr,XRControllerMovement as Gr,XRFlag as Hr,XRRig as Xr,XRState as zr,XRStateFlag as Vr,__Ignore as _r,__internalNotifyObjectDestroyed as jr,activeInHierarchyFieldName as Kr,addAttributeChangeCallback as Qr,addComponent as Zr,addCustomExtensionPlugin as Yr,addNewComponent as Jr,addPatch as $r,apply as qr,applyHMRChanges as en,applyPrototypeExtensions as an,beginListenDestroy as sn,beginListenInstantiate as tn,binaryIdentifierCasts as on,build_scene_functions as rn,builtinComponentKeyName as nn,calculateProgress01 as ln,clearMessages as dn,clearMessages as cn,colorSerializer as mn,compareAssociation as pn,componentSerializer as gn,copyTexture as un,createMotion as Sn,debugNet as Cn,debugOwner as yn,decompressGpuTexture as Rn,deepClone as En,delay as hn,delayForFrames as vn,deserializeObject as fn,destroy as Pn,destroyComponentInstance as An,determineMimeTypeFromExtension as bn,disposeObjectResources as Tn,disposeStream as Mn,editorGuidKeyName as In,enableSpatialConsole as On,euler as Dn,eventListSerializer as xn,exportAsGLTF as kn,findByGuid as Ln,findObjectOfType as Bn,findObjectsOfType as Fn,findResourceUsers as Nn,fitObjectIntoVolume as Wn,foreachComponent as Un,foreachComponentEnumerator as wn,forward as Gn,generateQRCode as Hn,generateSeed as Xn,getBoundingBox as zn,getCameraController as Vn,getComponent as _n,getComponentInChildren as jn,getComponentInParent as Kn,getComponents as Qn,getComponentsInChildren as Zn,getComponentsInParent as Yn,getFormattedDate as Jn,getIconElement as $n,getIconTexture as qn,getLoader as ei,getOrAddComponent as ai,getParam as si,getParentHierarchyPath as ti,getPath as oi,getPeerOptions as ri,getPeerjsInstance as ni,getResourceUserCount as ii,getTempColor as li,getTempQuaternion as di,getTempVector as ci,getUrlParams as mi,getVisibleInCustomShadowRendering as pi,getWorldDirection as gi,getWorldEuler as ui,getWorldPosition as Si,getWorldQuaternion as Ci,getWorldRotation as yi,getWorldScale as Ri,hasCommercialLicense as Ei,hasIndieLicense as hi,hasPointerEventComponent as vi,hasProLicense as fi,hideDebugConsole as Pi,imageToCanvas as Ai,instantiate as bi,invokeLoadedImportPluginHooks as Ti,invokeXRSessionEnd as Mi,invokeXRSessionStart as Ii,isActiveInHierarchy as Oi,isActiveSelf as Di,isAndroidDevice as xi,isAnimationAction as ki,isComponent as Li,isDebugMode as Bi,isDesktop as Fi,isDestroyed as Ni,isDevEnvironment as Wi,isDisposed as Ui,isExporting as wi,isGLTFModel as Gi,isHostedOnGlitch as Hi,isHotReloadEnabled as Xi,isHotReloading as zi,isIPad as Vi,isIconElement as _i,isLocalNetwork as ji,isMacOS as Ki,isMobileDevice as Qi,isMozillaXR as Zi,isQuest as Yi,isResourceTrackingEnabled as Ji,isSafari as $i,isUsingInstancing as qi,isiOS as el,isiPad as al,loadSync as sl,logHierarchy as tl,lookAtInverse as ol,lookAtObject as rl,lookAtScreenPoint as nl,makeId as il,makeIdFromRandomWords as ll,makeNameSafe as dl,markAsInstancedRendered as cl,microphonePermissionsGranted as ml,nameof as pl,nameofFactory as gl,objectSerializer as ul,offXRSessionEnd as Sl,offXRSessionStart as Cl,onXRSessionEnd as yl,onXRSessionStart as Rl,parseSync as El,placeOnSurface as hl,postprocessFBXMaterials as vl,prefix as fl,pushState as Pl,randomNumber as Al,registerBinaryType as bl,registerComponent as Tl,registerComponentExtension as Ml,registerCustomEffectType as Il,registerExportExtensions as Ol,registerExtensions as Dl,registerHotReloadType as xl,registerLoader as kl,registerPrefabProvider as Ll,registerPrototypeExtensions as Bl,registerType as Fl,relativePathPrefix as Nl,removeAttributeChangeCallback as Wl,removeComponent as Ul,removeCustomImportExtensionType as wl,removePatch as Gl,resolveUrl as Hl,sanitizeString as Xl,saveImage as zl,screenshot as Vl,screenshot2 as _l,sendDestroyed as jl,serializable as Kl,serializeObject as Ql,serializeable as Zl,setActive as Yl,setAllowBalloonMessages as Jl,setAllowOverlayMessages as $l,setAutoFitEnabled as ql,setCameraController as ed,setDestroyed as ad,setDevEnvironment as sd,setDisposable as td,setDontDestroy as od,setOrAddParamsToUrl as rd,setParam as nd,setParamWithoutReload as id,setPeerOptions as ld,setResourceTrackingEnabled as dd,setState as cd,setVisibleInCustomShadowRendering as md,setWorldEuler as pd,setWorldPosition as gd,setWorldPositionXYZ as ud,setWorldQuaternion as Sd,setWorldQuaternionXYZW as Cd,setWorldRotation as yd,setWorldRotationXYZ as Rd,setWorldScale as Ed,showBalloonError as hd,showBalloonMessage as vd,showBalloonWarning as fd,showDebugConsole as Pd,slerp as Ad,syncDestroy as bd,syncField as Td,syncInstantiate as Md,textureToCanvas as Id,tryCastBinary as Od,tryDetermineMimetypeFromBinary as Dd,tryDetermineMimetypeFromURL as xd,tryFindObject as kd,tryGetGuid as Ld,unregisterHotReloadType as Bd,unwatchWrite as Fd,useForAutoFit as Nd,validate as Wd,watchWrite as Ud}from"./needle-engine.bundle-De23SUHN.min.js";import{NEEDLE_progressive as wd}from"./gltf-progressive-DViD_J_l.min.js";import{THREE as Gd}from"./three-CsmWHVn7.min.js";const a={VERSION:u,Context:g,NeedleXRSession:p,assets:{loadFromURL:m},onStart:c,onUpdate:d,onBeforeRender:l,onAfterRender:i,onInitializedContext:n,onDestroyContext:r,onClearContext:o};globalThis.Needle?.VERSION!==void 0&&console.warn(`Needle Engine is already imported: ${globalThis.Needle.VERSION}`);function S(e){for(const t in e)a[t]=e[t]}S(C),S(y);for(const e of Object.getOwnPropertyNames(s))switch(e){case"prototype":case"constructor":case"length":case"name":continue;default:a[e]=s[e];break}if(!globalThis.Needle)globalThis.Needle=a;else for(const e in a)globalThis.Needle[e]=a[e];globalThis.THREE?console.warn("Three.js is already imported"):globalThis.THREE=Gd;export{R as $physicsKey,E as ActionBuilder,h as ActionCollection,v as ActionModel,f as Addressables,P as AlignmentConstraint,A as AmbientMode,b as Animation,T as AnimationCurve,M as AnimationExtension,I as AnimationTrackHandler,O as AnimationUtils,D as Animator,x as AnimatorConditionMode,k as AnimatorController,L as AnimatorControllerParameterType,B as AnimatorStateInfo,F as Antialiasing,N as Application,W as AssetDatabase,U as AssetReference,w as AudioExtension,G as AudioListener,H as AudioSource,X as AudioTrackHandler,z as Avatar,V as AvatarBlink_Simple,_ as AvatarEyeLook_Rotation,j as AvatarLoader,K as AvatarMarker,Q as AvatarModel,Z as Avatar_Brain_LookAt,Y as Avatar_MouthShapes,J as Avatar_MustacheShake,$ as Avatar_POI,q as Axes,ee as AxesHelper,ae as BUILD_TIME,se as BaseUIComponent,te as BasicIKConstraint,oe as BehaviorExtension,re as BehaviorModel,ne as Behaviour,ie as BlobStorage,le as BloomEffect,de as BoxCollider,ce as BoxGizmo,me as BoxHelperComponent,pe as Button,ge as ButtonsFactory,ue as CallDirection,Se as CallInfo,Ce as Camera,ye as CameraTargetReachedEvent,Re as Canvas,Ee as CanvasGroup,he as CapsuleCollider,ve as ChangeMaterialOnClick,fe as ChangeTransformOnClick,Pe as CharacterController,Ae as CharacterControllerInput,be as ChromaticAberration,Te as CircularBuffer,Me as ClearFlags,Ie as ClipExtrapolation,Oe as Collider,De as Collision,xe as CollisionDetectionMode,ke as ColorAdjustments,Le as ColorBySpeedModule,Be as ColorOverLifetimeModule,Fe as Component,Ne as ComponentLifecycleEvents,We as ConnectionEvents,Ue as ContactPoint,we as ContactShadows,g as Context,Ge as ContextArgs,He as ContextEvent,Xe as ContextRegistry,ze as ControlTrackHandler,Ve as CustomBranding,_e as CustomShader,je as DefaultReflectionMode,Ke as Deletable,Qe as DeleteBox,Ze as DepthOfField,Ye as DeviceFlag,Je as DeviceUtilities,$e as DocumentExtension,qe as DragControls,ea as DragMode,aa as DropListener,sa as Duplicatable,ta as EffectWrapper,oa as EmissionModule,ra as EmphasizeOnClick,na as EngineLoadingView,ia as EnvironmentScene,la as EventList,da as EventListEvent,ca as EventSystem,ma as EventTrigger,pa as FieldWithDefault,ga as FileReference,ua as FileReferenceSerializer,Sa as FileSpawnModel,Ca as File_Event,ya as FixedJoint,Ra as Fog,Ea as FrameEvent,ha as GENERATOR,s as GameObject,va as Gizmos,fa as GltfExport,Pa as GltfExportBox,Aa as Gradient,ba as Graphic,Ta as GraphicRaycaster,Ma as Graphics,Ia as GridHelper,Oa as GridLayoutGroup,Da as GroundProjectedEnv,xa as GroupActionModel,ka as HideFlags,La as HideOnStart,Ba as HingeJoint,Fa as HorizontalLayoutGroup,Na as HostData,Wa as Image,Ua as ImageReference,wa as ImageReferenceSerializer,Ga as InheritVelocityModule,Ha as Input,Xa as InputEventQueue,za as InputEvents,Va as InputField,_a as InstanceHandle,ja as InstancingHandler,Ka as InstancingUtil,Qa as InstantiateEvent,Za as InstantiateIdProvider,Ya as InstantiateOptions,Ja as Interactable,$a as InternalScreenshotUtils,qa as JoinedRoomResponse,es as KeyEventArgs,as as Keyframe,ss as LODGroup,ts as LODModel,os as LeftRoomResponse,rs as Light,ns as LightData,is as LimitVelocityOverLifetimeModule,ls as LoadingElementOptions,ds as LogStats,cs as LogType,ms as LookAt,ps as LookAtConstraint,gs as MainModule,us as MarkerType,Ss as MaskableGraphic,Cs as Mathf,ys as MeshCollider,Rs as MeshRenderer,Es as MinMaxCurve,hs as MinMaxGradient,vs as NEEDLE_ENGINE_MODULES,wd as NEEDLE_progressive,fs as NEKeyboardEvent,Ps as NEPointerEvent,As as NeedleButtonElement,bs as NeedleEngine,Ts as NeedleEngineModelLoader,Ms as NeedleEngineWebComponent,Is as NeedleMenu,Os as NeedlePatchesKey,Ds as NeedleUSDZExporter,xs as NeedleXRController,p as NeedleXRSession,ks as NeedleXRSync,Ls as NeedleXRUtils,Bs as NestedGltf,Fs as NetworkConnection,Ns as NetworkedStreamEvents,Ws as NetworkedStreams,Us as Networking,ws as NewInstanceModel,Gs as NoiseModule,Hs as ObjectRaycaster,Xs as ObjectUtils,zs as OffsetConstraint,Vs as OneEuroFilter,_s as OneEuroFilterXYZ,js as OpenURL,Ks as OrbitControls,Qs as Outline,Zs as OwnershipEvent,Ys as OwnershipModel,Js as PUBLIC_KEY,$s as Padding,qs as ParticleBurst,et as ParticleSubEmitter,at as ParticleSystem,st as ParticleSystemBaseBehaviour,tt as ParticleSystemRenderer,ot as ParticleSystemShapeType,rt as PeerHandle,nt as PeerNetworking,it as Physics,lt as PhysicsExtension,dt as PhysicsMaterialCombine,ct as PixelationEffect,mt as PlayAnimationOnClick,pt as PlayAudioOnClick,gt as PlayableDirector,ut as PlayerColor,St as PlayerState,Ct as PlayerStateEvent,yt as PlayerSync,Rt as PlayerView,Et as PlayerViewManager,ht as PointerEventData,vt as PointerType,ft as PostProcessingEffect,Pt as PostProcessingEffectOrder,At as PostProcessingHandler,bt as PostProcessingManager,Tt as PreliminaryAction,Mt as PreliminaryTrigger,It as PreviewHelper,Ot as PrimitiveType,Dt as Progress,xt as PromiseAllWithErrors,kt as PromiseErrorResult,Lt as RGBAColor,Bt as RapierPhysics,Ft as RawImage,Nt as RaycastOptions,Wt as Rect,Ut as RectTransform,wt as ReflectionProbe,Gt as RegisteredAnimationInfo,Ht as RemoteSkybox,Xt as RenderTexture,zt as RenderTextureSerializer,Vt as Renderer,_t as RendererData,jt as RendererLightmap,Kt as Rigidbody,Qt as RigidbodyConstraints,Zt as RoomEvents,Yt as RotationBySpeedModule,Jt as RotationOverLifetimeModule,$t as SceneLightSettings,qt as SceneSwitcher,eo as ScreenCapture,ao as ScreenSpaceAmbientOcclusion,so as ScreenSpaceAmbientOcclusionN8,to as SendQueue,oo as SerializationContext,ro as SetActiveOnClick,no as ShadowCatcher,io as ShapeModule,lo as ShapeOverlapResult,co as SharpeningEffect,mo as SignalAsset,po as SignalReceiver,go as SignalReceiverEvent,uo as SignalTrackHandler,So as Size,Co as SizeBySpeedModule,yo as SizeOverLifetimeModule,Ro as SkinnedMeshRenderer,Eo as SmoothFollow,ho as SpatialGrabRaycaster,vo as SpatialHtml,fo as SpatialTrigger,Po as SpatialTriggerReceiver,Ao as SpectatorCamera,bo as SphereCollider,To as SphereIntersection,Mo as Sprite,Io as SpriteData,Oo as SpriteRenderer,Do as SpriteSheet,xo as StateMachineBehaviour,ko as StreamEndedEvent,Lo as StreamReceivedEvent,Bo as SubEmitterSystem,Fo as SyncedCamera,No as SyncedRoom,Wo as SyncedTransform,Uo as TapGestureTrigger,wo as TeleportTarget,Go as TestRunner,Ho as TestSceneUtils,Xo as TestSimulateUserData,zo as Text,Vo as TextBuilder,_o as TextExtension,jo as TextureSheetAnimationModule,Ko as TiltShiftEffect,Qo as Time,Zo as ToneMappingEffect,Yo as TrackHandler,Jo as TrackType,$o as TrailModule,qo as TransformData,er as TransformGizmo,ar as TriggerBuilder,sr as TriggerModel,tr as TypeStore,or as UIRaycastUtils,rr as UIRootComponent,nr as USDDocument,ir as USDObject,lr as USDWriter,dr as USDZExporter,cr as USDZText,mr as USDZUIExtension,pr as UriSerializer,gr as UsageMarker,ur as UserJoinedOrLeftRoomModel,u as VERSION,Sr as VariantAction,Cr as VelocityOverLifetimeModule,yr as VerticalLayoutGroup,Rr as VideoPlayer,Er as ViewDevice,hr as Vignette,vr as VisibilityAction,fr as Voip,Pr as Volume,Ar as VolumeParameter,br as VolumeProfile,Tr as WaitForFrames,Mr as WaitForPromise,Ir as WaitForSeconds,Or as Watch,Dr as WebARCameraBackground,xr as WebARSessionRoot,kr as WebXR,Lr as WebXRButtonFactory,Br as WebXRImageTracking,Fr as WebXRImageTrackingModel,Nr as WebXRPlaneTracking,Wr as WebXRTrackedImage,Ur as XRControllerFollow,wr as XRControllerModel,Gr as XRControllerMovement,Hr as XRFlag,Xr as XRRig,zr as XRState,Vr as XRStateFlag,_r as __Ignore,jr as __internalNotifyObjectDestroyed,Kr as activeInHierarchyFieldName,Qr as addAttributeChangeCallback,Zr as addComponent,Yr as addCustomExtensionPlugin,Jr as addNewComponent,$r as addPatch,qr as apply,en as applyHMRChanges,an as applyPrototypeExtensions,sn as beginListenDestroy,tn as beginListenInstantiate,on as binaryIdentifierCasts,rn as build_scene_functions,nn as builtinComponentKeyName,ln as calculateProgress01,dn as clearBalloonMessages,cn as clearOverlayMessages,mn as colorSerializer,pn as compareAssociation,gn as componentSerializer,un as copyTexture,Sn as createMotion,Cn as debugNet,yn as debugOwner,Rn as decompressGpuTexture,En as deepClone,hn as delay,vn as delayForFrames,fn as deserializeObject,Pn as destroy,An as destroyComponentInstance,bn as determineMimeTypeFromExtension,Tn as disposeObjectResources,Mn as disposeStream,In as editorGuidKeyName,On as enableSpatialConsole,Dn as euler,xn as eventListSerializer,kn as exportAsGLTF,Ln as findByGuid,Bn as findObjectOfType,Fn as findObjectsOfType,Nn as findResourceUsers,Wn as fitObjectIntoVolume,Un as foreachComponent,wn as foreachComponentEnumerator,Gn as forward,Hn as generateQRCode,Xn as generateSeed,zn as getBoundingBox,Vn as getCameraController,_n as getComponent,jn as getComponentInChildren,Kn as getComponentInParent,Qn as getComponents,Zn as getComponentsInChildren,Yn as getComponentsInParent,Jn as getFormattedDate,$n as getIconElement,qn as getIconTexture,ei as getLoader,ai as getOrAddComponent,si as getParam,ti as getParentHierarchyPath,oi as getPath,ri as getPeerOptions,ni as getPeerjsInstance,ii as getResourceUserCount,li as getTempColor,di as getTempQuaternion,ci as getTempVector,mi as getUrlParams,pi as getVisibleInCustomShadowRendering,gi as getWorldDirection,ui as getWorldEuler,Si as getWorldPosition,Ci as getWorldQuaternion,yi as getWorldRotation,Ri as getWorldScale,Ei as hasCommercialLicense,hi as hasIndieLicense,vi as hasPointerEventComponent,fi as hasProLicense,Pi as hideDebugConsole,Ai as imageToCanvas,bi as instantiate,Ti as invokeLoadedImportPluginHooks,Mi as invokeXRSessionEnd,Ii as invokeXRSessionStart,Oi as isActiveInHierarchy,Di as isActiveSelf,xi as isAndroidDevice,ki as isAnimationAction,Li as isComponent,Bi as isDebugMode,Fi as isDesktop,Ni as isDestroyed,Wi as isDevEnvironment,Ui as isDisposed,wi as isExporting,Gi as isGLTFModel,Hi as isHostedOnGlitch,Xi as isHotReloadEnabled,zi as isHotReloading,Vi as isIPad,_i as isIconElement,ji as isLocalNetwork,Ki as isMacOS,Qi as isMobileDevice,Zi as isMozillaXR,Yi as isQuest,Ji as isResourceTrackingEnabled,$i as isSafari,qi as isUsingInstancing,el as isiOS,al as isiPad,m as loadAsset,sl as loadSync,tl as logHierarchy,ol as lookAtInverse,rl as lookAtObject,nl as lookAtScreenPoint,il as makeId,ll as makeIdFromRandomWords,dl as makeNameSafeForUSD,cl as markAsInstancedRendered,ml as microphonePermissionsGranted,pl as nameof,gl as nameofFactory,ul as objectSerializer,Sl as offXRSessionEnd,Cl as offXRSessionStart,i as onAfterRender,l as onBeforeRender,o as onClear,r as onDestroy,n as onInitialized,c as onStart,d as onUpdate,yl as onXRSessionEnd,Rl as onXRSessionStart,El as parseSync,hl as placeOnSurface,vl as postprocessFBXMaterials,fl as prefix,Pl as pushState,Al as randomNumber,bl as registerBinaryType,Tl as registerComponent,Ml as registerComponentExtension,Il as registerCustomEffectType,Ol as registerExportExtensions,Dl as registerExtensions,xl as registerHotReloadType,kl as registerLoader,Ll as registerPrefabProvider,Bl as registerPrototypeExtensions,Fl as registerType,Nl as relativePathPrefix,Wl as removeAttributeChangeCallback,Ul as removeComponent,wl as removeCustomImportExtensionType,Gl as removePatch,Hl as resolveUrl,Xl as sanitizeString,zl as saveImage,Vl as screenshot,_l as screenshot2,jl as sendDestroyed,Kl as serializable,Ql as serializeObject,Zl as serializeable,Yl as setActive,Jl as setAllowBalloonMessages,$l as setAllowOverlayMessages,ql as setAutoFitEnabled,ed as setCameraController,ad as setDestroyed,sd as setDevEnvironment,td as setDisposable,od as setDontDestroy,rd as setOrAddParamsToUrl,nd as setParam,id as setParamWithoutReload,ld as setPeerOptions,dd as setResourceTrackingEnabled,cd as setState,md as setVisibleInCustomShadowRendering,pd as setWorldEuler,gd as setWorldPosition,ud as setWorldPositionXYZ,Sd as setWorldQuaternion,Cd as setWorldQuaternionXYZW,yd as setWorldRotation,Rd as setWorldRotationXYZ,Ed as setWorldScale,hd as showBalloonError,vd as showBalloonMessage,fd as showBalloonWarning,Pd as showDebugConsole,Ad as slerp,bd as syncDestroy,Td as syncField,Md as syncInstantiate,Id as textureToCanvas,Od as tryCastBinary,Dd as tryDetermineMimetypeFromBinary,xd as tryDetermineMimetypeFromURL,kd as tryFindObject,Ld as tryGetGuid,Bd as unregisterHotReloadType,Fd as unwatchWrite,Nd as useForAutoFit,Wd as validate,Ud as watchWrite};
|
|
1
|
+
import{GameObject as s,onClear as o,onDestroy as r,onInitialized as n,onAfterRender as i,onBeforeRender as l,onUpdate as d,onStart as c,loadAsset as m,NeedleXRSession as p,Context as g,VERSION as u,Component as C,Components as y}from"./needle-engine.bundle-CQIq7Zg-.min.js";import{$physicsKey as R,ActionBuilder as E,ActionCollection as h,ActionModel as v,Addressables as f,AlignmentConstraint as P,AmbientMode as A,Animation as b,AnimationCurve as T,AnimationExtension as M,AnimationTrackHandler as I,AnimationUtils as O,Animator as D,AnimatorConditionMode as x,AnimatorController as k,AnimatorControllerParameterType as L,AnimatorStateInfo as B,Antialiasing as F,Application as N,AssetDatabase as W,AssetReference as U,AudioExtension as w,AudioListener as G,AudioSource as H,AudioTrackHandler as X,Avatar as z,AvatarBlink_Simple as V,AvatarEyeLook_Rotation as _,AvatarLoader as j,AvatarMarker as K,AvatarModel as Q,Avatar_Brain_LookAt as Z,Avatar_MouthShapes as Y,Avatar_MustacheShake as J,Avatar_POI as $,Axes as q,AxesHelper as ee,BUILD_TIME as ae,BaseUIComponent as se,BasicIKConstraint as te,BehaviorExtension as oe,BehaviorModel as re,Component$1 as ne,BlobStorage as ie,BloomEffect as le,BoxCollider as de,BoxGizmo as ce,BoxHelperComponent as me,Button as pe,ButtonsFactory as ge,CallDirection as ue,CallInfo as Se,Camera as Ce,CameraTargetReachedEvent as ye,Canvas as Re,CanvasGroup as Ee,CapsuleCollider as he,ChangeMaterialOnClick as ve,ChangeTransformOnClick as fe,CharacterController as Pe,CharacterControllerInput as Ae,ChromaticAberration as be,CircularBuffer as Te,ClearFlags as Me,ClipExtrapolation as Ie,Collider as Oe,Collision as De,CollisionDetectionMode as xe,ColorAdjustments as ke,ColorBySpeedModule as Le,ColorOverLifetimeModule as Be,Component$1 as Fe,ComponentLifecycleEvents as Ne,ConnectionEvents as We,ContactPoint as Ue,ContactShadows as we,ContextArgs as Ge,ContextEvent as He,ContextRegistry as Xe,ControlTrackHandler as ze,CustomBranding as Ve,CustomShader as _e,DefaultReflectionMode as je,Deletable as Ke,DeleteBox as Qe,DepthOfField as Ze,DeviceFlag as Ye,DeviceUtilities as Je,DocumentExtension as $e,DragControls as qe,DragMode as ea,DropListener as aa,Duplicatable as sa,EffectWrapper as ta,EmissionModule as oa,EmphasizeOnClick as ra,EngineLoadingView as na,EnvironmentScene as ia,EventList as la,EventListEvent as da,EventSystem as ca,EventTrigger as ma,FieldWithDefault as pa,FileReference as ga,FileReferenceSerializer as ua,FileSpawnModel as Sa,File_Event as Ca,FixedJoint as ya,Fog as Ra,FrameEvent as Ea,GENERATOR as ha,Gizmos as va,GltfExport as fa,GltfExportBox as Pa,Gradient as Aa,Graphic as ba,GraphicRaycaster as Ta,Graphics as Ma,GridHelper as Ia,GridLayoutGroup as Oa,GroundProjectedEnv as Da,GroupActionModel as xa,HideFlags as ka,HideOnStart as La,HingeJoint as Ba,HorizontalLayoutGroup as Fa,HostData as Na,Image as Wa,ImageReference as Ua,ImageReferenceSerializer as wa,InheritVelocityModule as Ga,Input as Ha,InputEventQueue as Xa,InputEvents as za,InputField as Va,InstanceHandle as _a,InstancingHandler as ja,InstancingUtil as Ka,InstantiateEvent as Qa,InstantiateIdProvider as Za,InstantiateOptions as Ya,Interactable as Ja,InternalScreenshotUtils as $a,JoinedRoomResponse as qa,KeyEventArgs as es,Keyframe as as,LODGroup as ss,LODModel as ts,LeftRoomResponse as os,Light as rs,LightData as ns,LimitVelocityOverLifetimeModule as is,LoadingElementOptions as ls,LogStats as ds,LogType as cs,LookAt as ms,LookAtConstraint as ps,MainModule as gs,MarkerType as us,MaskableGraphic as Ss,Mathf as Cs,MeshCollider as ys,MeshRenderer as Rs,MinMaxCurve as Es,MinMaxGradient as hs,MODULES as vs,NEKeyboardEvent as fs,NEPointerEvent as Ps,NeedleButtonElement as As,ContextRegistry as bs,NeedleEngineModelLoader as Ts,NeedleEngineWebComponent as Ms,NeedleMenu as Is,NeedlePatchesKey as Os,USDZExporter$1 as Ds,NeedleXRController as xs,NeedleXRSync as ks,NeedleXRUtils as Ls,NestedGltf as Bs,NetworkConnection as Fs,NetworkedStreamEvents as Ns,NetworkedStreams as Ws,Networking as Us,NewInstanceModel as ws,NoiseModule as Gs,ObjectRaycaster as Hs,ObjectUtils as Xs,OffsetConstraint as zs,OneEuroFilter as Vs,OneEuroFilterXYZ as _s,OpenURL as js,OrbitControls as Ks,Outline as Qs,OwnershipEvent as Zs,OwnershipModel as Ys,PUBLIC_KEY as Js,Padding as $s,ParticleBurst as qs,ParticleSubEmitter as et,ParticleSystem as at,ParticleSystemBaseBehaviour as st,ParticleSystemRenderer as tt,ParticleSystemShapeType as ot,PeerHandle as rt,PeerNetworking as nt,Physics as it,PhysicsExtension as lt,PhysicsMaterialCombine as dt,PixelationEffect as ct,PlayAnimationOnClick as mt,PlayAudioOnClick as pt,PlayableDirector as gt,PlayerColor as ut,PlayerState as St,PlayerStateEvent as Ct,PlayerSync as yt,PlayerView as Rt,PlayerViewManager as Et,PointerEventData as ht,PointerType as vt,PostProcessingEffect as ft,PostProcessingEffectOrder as Pt,PostProcessingHandler as At,Volume as bt,PreliminaryAction as Tt,PreliminaryTrigger as Mt,PreviewHelper as It,PrimitiveType as Ot,Progress as Dt,PromiseAllWithErrors as xt,PromiseErrorResult as kt,RGBAColor as Lt,RapierPhysics as Bt,RawImage as Ft,RaycastOptions as Nt,Rect as Wt,RectTransform as Ut,ReflectionProbe as wt,RegisteredAnimationInfo as Gt,RemoteSkybox as Ht,RenderTexture as Xt,RenderTextureSerializer as zt,Renderer as Vt,RendererData as _t,RendererLightmap as jt,Rigidbody as Kt,RigidbodyConstraints as Qt,RoomEvents as Zt,RotationBySpeedModule as Yt,RotationOverLifetimeModule as Jt,SceneLightSettings as $t,SceneSwitcher as qt,ScreenCapture as eo,ScreenSpaceAmbientOcclusion as ao,ScreenSpaceAmbientOcclusionN8 as so,SendQueue as to,SerializationContext as oo,SetActiveOnClick as ro,ShadowCatcher as no,ShapeModule as io,ShapeOverlapResult as lo,SharpeningEffect as co,SignalAsset as mo,SignalReceiver as po,SignalReceiverEvent as go,SignalTrackHandler as uo,Size as So,SizeBySpeedModule as Co,SizeOverLifetimeModule as yo,SkinnedMeshRenderer as Ro,SmoothFollow as Eo,SpatialGrabRaycaster as ho,SpatialHtml as vo,SpatialTrigger as fo,SpatialTriggerReceiver as Po,SpectatorCamera as Ao,SphereCollider as bo,SphereIntersection as To,Sprite as Mo,SpriteData as Io,SpriteRenderer as Oo,SpriteSheet as Do,StateMachineBehaviour as xo,StreamEndedEvent as ko,StreamReceivedEvent as Lo,SubEmitterSystem as Bo,SyncedCamera as Fo,SyncedRoom as No,SyncedTransform as Wo,TapGestureTrigger as Uo,TeleportTarget as wo,TestRunner as Go,TestSceneUtils as Ho,TestSimulateUserData as Xo,Text as zo,TextBuilder as Vo,TextExtension as _o,TextureSheetAnimationModule as jo,TiltShiftEffect as Ko,Time as Qo,ToneMappingEffect as Zo,TrackHandler as Yo,TrackType as Jo,TrailModule as $o,TransformData as qo,TransformGizmo as er,TriggerBuilder as ar,TriggerModel as sr,TypeStore as tr,UIRaycastUtils as or,UIRootComponent as rr,USDDocument as nr,USDObject as ir,USDWriter as lr,USDZExporter as dr,USDZText as cr,USDZUIExtension as mr,UriSerializer as pr,UsageMarker as gr,UserJoinedOrLeftRoomModel as ur,VariantAction as Sr,VelocityOverLifetimeModule as Cr,VerticalLayoutGroup as yr,VideoPlayer as Rr,ViewDevice as Er,Vignette as hr,VisibilityAction as vr,Voip as fr,Volume as Pr,VolumeParameter as Ar,VolumeProfile as br,WaitForFrames as Tr,WaitForPromise as Mr,WaitForSeconds as Ir,Watch as Or,WebARCameraBackground as Dr,WebARSessionRoot as xr,WebXR as kr,WebXRButtonFactory as Lr,WebXRImageTracking as Br,WebXRImageTrackingModel as Fr,WebXRPlaneTracking as Nr,WebXRTrackedImage as Wr,XRControllerFollow as Ur,XRControllerModel as wr,XRControllerMovement as Gr,XRFlag as Hr,XRRig as Xr,XRState as zr,XRStateFlag as Vr,__Ignore as _r,__internalNotifyObjectDestroyed as jr,activeInHierarchyFieldName as Kr,addAttributeChangeCallback as Qr,addComponent as Zr,addCustomExtensionPlugin as Yr,addNewComponent as Jr,addPatch as $r,apply as qr,applyHMRChanges as en,applyPrototypeExtensions as an,beginListenDestroy as sn,beginListenInstantiate as tn,binaryIdentifierCasts as on,build_scene_functions as rn,builtinComponentKeyName as nn,calculateProgress01 as ln,clearMessages as dn,clearMessages as cn,colorSerializer as mn,compareAssociation as pn,componentSerializer as gn,copyTexture as un,createMotion as Sn,debugNet as Cn,debugOwner as yn,decompressGpuTexture as Rn,deepClone as En,delay as hn,delayForFrames as vn,deserializeObject as fn,destroy as Pn,destroyComponentInstance as An,determineMimeTypeFromExtension as bn,disposeObjectResources as Tn,disposeStream as Mn,editorGuidKeyName as In,enableSpatialConsole as On,euler as Dn,eventListSerializer as xn,exportAsGLTF as kn,findByGuid as Ln,findObjectOfType as Bn,findObjectsOfType as Fn,findResourceUsers as Nn,fitObjectIntoVolume as Wn,foreachComponent as Un,foreachComponentEnumerator as wn,forward as Gn,generateQRCode as Hn,generateSeed as Xn,getBoundingBox as zn,getCameraController as Vn,getComponent as _n,getComponentInChildren as jn,getComponentInParent as Kn,getComponents as Qn,getComponentsInChildren as Zn,getComponentsInParent as Yn,getFormattedDate as Jn,getIconElement as $n,getIconTexture as qn,getLoader as ei,getOrAddComponent as ai,getParam as si,getParentHierarchyPath as ti,getPath as oi,getPeerOptions as ri,getPeerjsInstance as ni,getResourceUserCount as ii,getTempColor as li,getTempQuaternion as di,getTempVector as ci,getUrlParams as mi,getVisibleInCustomShadowRendering as pi,getWorldDirection as gi,getWorldEuler as ui,getWorldPosition as Si,getWorldQuaternion as Ci,getWorldRotation as yi,getWorldScale as Ri,hasCommercialLicense as Ei,hasIndieLicense as hi,hasPointerEventComponent as vi,hasProLicense as fi,hideDebugConsole as Pi,imageToCanvas as Ai,instantiate as bi,invokeLoadedImportPluginHooks as Ti,invokeXRSessionEnd as Mi,invokeXRSessionStart as Ii,isActiveInHierarchy as Oi,isActiveSelf as Di,isAndroidDevice as xi,isAnimationAction as ki,isComponent as Li,isDebugMode as Bi,isDesktop as Fi,isDestroyed as Ni,isDevEnvironment as Wi,isDisposed as Ui,isExporting as wi,isGLTFModel as Gi,isHostedOnGlitch as Hi,isHotReloadEnabled as Xi,isHotReloading as zi,isIPad as Vi,isIconElement as _i,isLocalNetwork as ji,isMacOS as Ki,isMobileDevice as Qi,isMozillaXR as Zi,isQuest as Yi,isResourceTrackingEnabled as Ji,isSafari as $i,isUsingInstancing as qi,isiOS as el,isiPad as al,loadSync as sl,logHierarchy as tl,lookAtInverse as ol,lookAtObject as rl,lookAtScreenPoint as nl,makeId as il,makeIdFromRandomWords as ll,makeNameSafe as dl,markAsInstancedRendered as cl,microphonePermissionsGranted as ml,nameof as pl,nameofFactory as gl,objectSerializer as ul,offXRSessionEnd as Sl,offXRSessionStart as Cl,onXRSessionEnd as yl,onXRSessionStart as Rl,parseSync as El,placeOnSurface as hl,postprocessFBXMaterials as vl,prefix as fl,pushState as Pl,randomNumber as Al,registerBinaryType as bl,registerComponent as Tl,registerComponentExtension as Ml,registerCustomEffectType as Il,registerExportExtensions as Ol,registerExtensions as Dl,registerHotReloadType as xl,registerLoader as kl,registerPrefabProvider as Ll,registerPrototypeExtensions as Bl,registerType as Fl,relativePathPrefix as Nl,removeAttributeChangeCallback as Wl,removeComponent as Ul,removeCustomImportExtensionType as wl,removePatch as Gl,resolveUrl as Hl,sanitizeString as Xl,saveImage as zl,screenshot as Vl,screenshot2 as _l,sendDestroyed as jl,serializable as Kl,serializeObject as Ql,serializeable as Zl,setActive as Yl,setAllowBalloonMessages as Jl,setAllowOverlayMessages as $l,setAutoFitEnabled as ql,setCameraController as ed,setDestroyed as ad,setDevEnvironment as sd,setDisposable as td,setDontDestroy as od,setOrAddParamsToUrl as rd,setParam as nd,setParamWithoutReload as id,setPeerOptions as ld,setResourceTrackingEnabled as dd,setState as cd,setVisibleInCustomShadowRendering as md,setWorldEuler as pd,setWorldPosition as gd,setWorldPositionXYZ as ud,setWorldQuaternion as Sd,setWorldQuaternionXYZW as Cd,setWorldRotation as yd,setWorldRotationXYZ as Rd,setWorldScale as Ed,showBalloonError as hd,showBalloonMessage as vd,showBalloonWarning as fd,showDebugConsole as Pd,slerp as Ad,syncDestroy as bd,syncField as Td,syncInstantiate as Md,textureToCanvas as Id,tryCastBinary as Od,tryDetermineMimetypeFromBinary as Dd,tryDetermineMimetypeFromURL as xd,tryFindObject as kd,tryGetGuid as Ld,unregisterHotReloadType as Bd,unwatchWrite as Fd,useForAutoFit as Nd,validate as Wd,watchWrite as Ud}from"./needle-engine.bundle-CQIq7Zg-.min.js";import{NEEDLE_progressive as wd}from"./gltf-progressive-DViD_J_l.min.js";import{THREE as Gd}from"./three-CsmWHVn7.min.js";const a={VERSION:u,Context:g,NeedleXRSession:p,assets:{loadFromURL:m},onStart:c,onUpdate:d,onBeforeRender:l,onAfterRender:i,onInitializedContext:n,onDestroyContext:r,onClearContext:o};globalThis.Needle?.VERSION!==void 0&&console.warn(`Needle Engine is already imported: ${globalThis.Needle.VERSION}`);function S(e){for(const t in e)a[t]=e[t]}S(C),S(y);for(const e of Object.getOwnPropertyNames(s))switch(e){case"prototype":case"constructor":case"length":case"name":continue;default:a[e]=s[e];break}if(!globalThis.Needle)globalThis.Needle=a;else for(const e in a)globalThis.Needle[e]=a[e];globalThis.THREE?console.warn("Three.js is already imported"):globalThis.THREE=Gd;export{R as $physicsKey,E as ActionBuilder,h as ActionCollection,v as ActionModel,f as Addressables,P as AlignmentConstraint,A as AmbientMode,b as Animation,T as AnimationCurve,M as AnimationExtension,I as AnimationTrackHandler,O as AnimationUtils,D as Animator,x as AnimatorConditionMode,k as AnimatorController,L as AnimatorControllerParameterType,B as AnimatorStateInfo,F as Antialiasing,N as Application,W as AssetDatabase,U as AssetReference,w as AudioExtension,G as AudioListener,H as AudioSource,X as AudioTrackHandler,z as Avatar,V as AvatarBlink_Simple,_ as AvatarEyeLook_Rotation,j as AvatarLoader,K as AvatarMarker,Q as AvatarModel,Z as Avatar_Brain_LookAt,Y as Avatar_MouthShapes,J as Avatar_MustacheShake,$ as Avatar_POI,q as Axes,ee as AxesHelper,ae as BUILD_TIME,se as BaseUIComponent,te as BasicIKConstraint,oe as BehaviorExtension,re as BehaviorModel,ne as Behaviour,ie as BlobStorage,le as BloomEffect,de as BoxCollider,ce as BoxGizmo,me as BoxHelperComponent,pe as Button,ge as ButtonsFactory,ue as CallDirection,Se as CallInfo,Ce as Camera,ye as CameraTargetReachedEvent,Re as Canvas,Ee as CanvasGroup,he as CapsuleCollider,ve as ChangeMaterialOnClick,fe as ChangeTransformOnClick,Pe as CharacterController,Ae as CharacterControllerInput,be as ChromaticAberration,Te as CircularBuffer,Me as ClearFlags,Ie as ClipExtrapolation,Oe as Collider,De as Collision,xe as CollisionDetectionMode,ke as ColorAdjustments,Le as ColorBySpeedModule,Be as ColorOverLifetimeModule,Fe as Component,Ne as ComponentLifecycleEvents,We as ConnectionEvents,Ue as ContactPoint,we as ContactShadows,g as Context,Ge as ContextArgs,He as ContextEvent,Xe as ContextRegistry,ze as ControlTrackHandler,Ve as CustomBranding,_e as CustomShader,je as DefaultReflectionMode,Ke as Deletable,Qe as DeleteBox,Ze as DepthOfField,Ye as DeviceFlag,Je as DeviceUtilities,$e as DocumentExtension,qe as DragControls,ea as DragMode,aa as DropListener,sa as Duplicatable,ta as EffectWrapper,oa as EmissionModule,ra as EmphasizeOnClick,na as EngineLoadingView,ia as EnvironmentScene,la as EventList,da as EventListEvent,ca as EventSystem,ma as EventTrigger,pa as FieldWithDefault,ga as FileReference,ua as FileReferenceSerializer,Sa as FileSpawnModel,Ca as File_Event,ya as FixedJoint,Ra as Fog,Ea as FrameEvent,ha as GENERATOR,s as GameObject,va as Gizmos,fa as GltfExport,Pa as GltfExportBox,Aa as Gradient,ba as Graphic,Ta as GraphicRaycaster,Ma as Graphics,Ia as GridHelper,Oa as GridLayoutGroup,Da as GroundProjectedEnv,xa as GroupActionModel,ka as HideFlags,La as HideOnStart,Ba as HingeJoint,Fa as HorizontalLayoutGroup,Na as HostData,Wa as Image,Ua as ImageReference,wa as ImageReferenceSerializer,Ga as InheritVelocityModule,Ha as Input,Xa as InputEventQueue,za as InputEvents,Va as InputField,_a as InstanceHandle,ja as InstancingHandler,Ka as InstancingUtil,Qa as InstantiateEvent,Za as InstantiateIdProvider,Ya as InstantiateOptions,Ja as Interactable,$a as InternalScreenshotUtils,qa as JoinedRoomResponse,es as KeyEventArgs,as as Keyframe,ss as LODGroup,ts as LODModel,os as LeftRoomResponse,rs as Light,ns as LightData,is as LimitVelocityOverLifetimeModule,ls as LoadingElementOptions,ds as LogStats,cs as LogType,ms as LookAt,ps as LookAtConstraint,gs as MainModule,us as MarkerType,Ss as MaskableGraphic,Cs as Mathf,ys as MeshCollider,Rs as MeshRenderer,Es as MinMaxCurve,hs as MinMaxGradient,vs as NEEDLE_ENGINE_MODULES,wd as NEEDLE_progressive,fs as NEKeyboardEvent,Ps as NEPointerEvent,As as NeedleButtonElement,bs as NeedleEngine,Ts as NeedleEngineModelLoader,Ms as NeedleEngineWebComponent,Is as NeedleMenu,Os as NeedlePatchesKey,Ds as NeedleUSDZExporter,xs as NeedleXRController,p as NeedleXRSession,ks as NeedleXRSync,Ls as NeedleXRUtils,Bs as NestedGltf,Fs as NetworkConnection,Ns as NetworkedStreamEvents,Ws as NetworkedStreams,Us as Networking,ws as NewInstanceModel,Gs as NoiseModule,Hs as ObjectRaycaster,Xs as ObjectUtils,zs as OffsetConstraint,Vs as OneEuroFilter,_s as OneEuroFilterXYZ,js as OpenURL,Ks as OrbitControls,Qs as Outline,Zs as OwnershipEvent,Ys as OwnershipModel,Js as PUBLIC_KEY,$s as Padding,qs as ParticleBurst,et as ParticleSubEmitter,at as ParticleSystem,st as ParticleSystemBaseBehaviour,tt as ParticleSystemRenderer,ot as ParticleSystemShapeType,rt as PeerHandle,nt as PeerNetworking,it as Physics,lt as PhysicsExtension,dt as PhysicsMaterialCombine,ct as PixelationEffect,mt as PlayAnimationOnClick,pt as PlayAudioOnClick,gt as PlayableDirector,ut as PlayerColor,St as PlayerState,Ct as PlayerStateEvent,yt as PlayerSync,Rt as PlayerView,Et as PlayerViewManager,ht as PointerEventData,vt as PointerType,ft as PostProcessingEffect,Pt as PostProcessingEffectOrder,At as PostProcessingHandler,bt as PostProcessingManager,Tt as PreliminaryAction,Mt as PreliminaryTrigger,It as PreviewHelper,Ot as PrimitiveType,Dt as Progress,xt as PromiseAllWithErrors,kt as PromiseErrorResult,Lt as RGBAColor,Bt as RapierPhysics,Ft as RawImage,Nt as RaycastOptions,Wt as Rect,Ut as RectTransform,wt as ReflectionProbe,Gt as RegisteredAnimationInfo,Ht as RemoteSkybox,Xt as RenderTexture,zt as RenderTextureSerializer,Vt as Renderer,_t as RendererData,jt as RendererLightmap,Kt as Rigidbody,Qt as RigidbodyConstraints,Zt as RoomEvents,Yt as RotationBySpeedModule,Jt as RotationOverLifetimeModule,$t as SceneLightSettings,qt as SceneSwitcher,eo as ScreenCapture,ao as ScreenSpaceAmbientOcclusion,so as ScreenSpaceAmbientOcclusionN8,to as SendQueue,oo as SerializationContext,ro as SetActiveOnClick,no as ShadowCatcher,io as ShapeModule,lo as ShapeOverlapResult,co as SharpeningEffect,mo as SignalAsset,po as SignalReceiver,go as SignalReceiverEvent,uo as SignalTrackHandler,So as Size,Co as SizeBySpeedModule,yo as SizeOverLifetimeModule,Ro as SkinnedMeshRenderer,Eo as SmoothFollow,ho as SpatialGrabRaycaster,vo as SpatialHtml,fo as SpatialTrigger,Po as SpatialTriggerReceiver,Ao as SpectatorCamera,bo as SphereCollider,To as SphereIntersection,Mo as Sprite,Io as SpriteData,Oo as SpriteRenderer,Do as SpriteSheet,xo as StateMachineBehaviour,ko as StreamEndedEvent,Lo as StreamReceivedEvent,Bo as SubEmitterSystem,Fo as SyncedCamera,No as SyncedRoom,Wo as SyncedTransform,Uo as TapGestureTrigger,wo as TeleportTarget,Go as TestRunner,Ho as TestSceneUtils,Xo as TestSimulateUserData,zo as Text,Vo as TextBuilder,_o as TextExtension,jo as TextureSheetAnimationModule,Ko as TiltShiftEffect,Qo as Time,Zo as ToneMappingEffect,Yo as TrackHandler,Jo as TrackType,$o as TrailModule,qo as TransformData,er as TransformGizmo,ar as TriggerBuilder,sr as TriggerModel,tr as TypeStore,or as UIRaycastUtils,rr as UIRootComponent,nr as USDDocument,ir as USDObject,lr as USDWriter,dr as USDZExporter,cr as USDZText,mr as USDZUIExtension,pr as UriSerializer,gr as UsageMarker,ur as UserJoinedOrLeftRoomModel,u as VERSION,Sr as VariantAction,Cr as VelocityOverLifetimeModule,yr as VerticalLayoutGroup,Rr as VideoPlayer,Er as ViewDevice,hr as Vignette,vr as VisibilityAction,fr as Voip,Pr as Volume,Ar as VolumeParameter,br as VolumeProfile,Tr as WaitForFrames,Mr as WaitForPromise,Ir as WaitForSeconds,Or as Watch,Dr as WebARCameraBackground,xr as WebARSessionRoot,kr as WebXR,Lr as WebXRButtonFactory,Br as WebXRImageTracking,Fr as WebXRImageTrackingModel,Nr as WebXRPlaneTracking,Wr as WebXRTrackedImage,Ur as XRControllerFollow,wr as XRControllerModel,Gr as XRControllerMovement,Hr as XRFlag,Xr as XRRig,zr as XRState,Vr as XRStateFlag,_r as __Ignore,jr as __internalNotifyObjectDestroyed,Kr as activeInHierarchyFieldName,Qr as addAttributeChangeCallback,Zr as addComponent,Yr as addCustomExtensionPlugin,Jr as addNewComponent,$r as addPatch,qr as apply,en as applyHMRChanges,an as applyPrototypeExtensions,sn as beginListenDestroy,tn as beginListenInstantiate,on as binaryIdentifierCasts,rn as build_scene_functions,nn as builtinComponentKeyName,ln as calculateProgress01,dn as clearBalloonMessages,cn as clearOverlayMessages,mn as colorSerializer,pn as compareAssociation,gn as componentSerializer,un as copyTexture,Sn as createMotion,Cn as debugNet,yn as debugOwner,Rn as decompressGpuTexture,En as deepClone,hn as delay,vn as delayForFrames,fn as deserializeObject,Pn as destroy,An as destroyComponentInstance,bn as determineMimeTypeFromExtension,Tn as disposeObjectResources,Mn as disposeStream,In as editorGuidKeyName,On as enableSpatialConsole,Dn as euler,xn as eventListSerializer,kn as exportAsGLTF,Ln as findByGuid,Bn as findObjectOfType,Fn as findObjectsOfType,Nn as findResourceUsers,Wn as fitObjectIntoVolume,Un as foreachComponent,wn as foreachComponentEnumerator,Gn as forward,Hn as generateQRCode,Xn as generateSeed,zn as getBoundingBox,Vn as getCameraController,_n as getComponent,jn as getComponentInChildren,Kn as getComponentInParent,Qn as getComponents,Zn as getComponentsInChildren,Yn as getComponentsInParent,Jn as getFormattedDate,$n as getIconElement,qn as getIconTexture,ei as getLoader,ai as getOrAddComponent,si as getParam,ti as getParentHierarchyPath,oi as getPath,ri as getPeerOptions,ni as getPeerjsInstance,ii as getResourceUserCount,li as getTempColor,di as getTempQuaternion,ci as getTempVector,mi as getUrlParams,pi as getVisibleInCustomShadowRendering,gi as getWorldDirection,ui as getWorldEuler,Si as getWorldPosition,Ci as getWorldQuaternion,yi as getWorldRotation,Ri as getWorldScale,Ei as hasCommercialLicense,hi as hasIndieLicense,vi as hasPointerEventComponent,fi as hasProLicense,Pi as hideDebugConsole,Ai as imageToCanvas,bi as instantiate,Ti as invokeLoadedImportPluginHooks,Mi as invokeXRSessionEnd,Ii as invokeXRSessionStart,Oi as isActiveInHierarchy,Di as isActiveSelf,xi as isAndroidDevice,ki as isAnimationAction,Li as isComponent,Bi as isDebugMode,Fi as isDesktop,Ni as isDestroyed,Wi as isDevEnvironment,Ui as isDisposed,wi as isExporting,Gi as isGLTFModel,Hi as isHostedOnGlitch,Xi as isHotReloadEnabled,zi as isHotReloading,Vi as isIPad,_i as isIconElement,ji as isLocalNetwork,Ki as isMacOS,Qi as isMobileDevice,Zi as isMozillaXR,Yi as isQuest,Ji as isResourceTrackingEnabled,$i as isSafari,qi as isUsingInstancing,el as isiOS,al as isiPad,m as loadAsset,sl as loadSync,tl as logHierarchy,ol as lookAtInverse,rl as lookAtObject,nl as lookAtScreenPoint,il as makeId,ll as makeIdFromRandomWords,dl as makeNameSafeForUSD,cl as markAsInstancedRendered,ml as microphonePermissionsGranted,pl as nameof,gl as nameofFactory,ul as objectSerializer,Sl as offXRSessionEnd,Cl as offXRSessionStart,i as onAfterRender,l as onBeforeRender,o as onClear,r as onDestroy,n as onInitialized,c as onStart,d as onUpdate,yl as onXRSessionEnd,Rl as onXRSessionStart,El as parseSync,hl as placeOnSurface,vl as postprocessFBXMaterials,fl as prefix,Pl as pushState,Al as randomNumber,bl as registerBinaryType,Tl as registerComponent,Ml as registerComponentExtension,Il as registerCustomEffectType,Ol as registerExportExtensions,Dl as registerExtensions,xl as registerHotReloadType,kl as registerLoader,Ll as registerPrefabProvider,Bl as registerPrototypeExtensions,Fl as registerType,Nl as relativePathPrefix,Wl as removeAttributeChangeCallback,Ul as removeComponent,wl as removeCustomImportExtensionType,Gl as removePatch,Hl as resolveUrl,Xl as sanitizeString,zl as saveImage,Vl as screenshot,_l as screenshot2,jl as sendDestroyed,Kl as serializable,Ql as serializeObject,Zl as serializeable,Yl as setActive,Jl as setAllowBalloonMessages,$l as setAllowOverlayMessages,ql as setAutoFitEnabled,ed as setCameraController,ad as setDestroyed,sd as setDevEnvironment,td as setDisposable,od as setDontDestroy,rd as setOrAddParamsToUrl,nd as setParam,id as setParamWithoutReload,ld as setPeerOptions,dd as setResourceTrackingEnabled,cd as setState,md as setVisibleInCustomShadowRendering,pd as setWorldEuler,gd as setWorldPosition,ud as setWorldPositionXYZ,Sd as setWorldQuaternion,Cd as setWorldQuaternionXYZW,yd as setWorldRotation,Rd as setWorldRotationXYZ,Ed as setWorldScale,hd as showBalloonError,vd as showBalloonMessage,fd as showBalloonWarning,Pd as showDebugConsole,Ad as slerp,bd as syncDestroy,Td as syncField,Md as syncInstantiate,Id as textureToCanvas,Od as tryCastBinary,Dd as tryDetermineMimetypeFromBinary,xd as tryDetermineMimetypeFromURL,kd as tryFindObject,Ld as tryGetGuid,Bd as unregisterHotReloadType,Fd as unwatchWrite,Nd as useForAutoFit,Wd as validate,Ud as watchWrite};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./needle-engine.bundle-BlBdO0pR.umd.cjs"),i=require("./gltf-progressive-C-U_onhf.umd.cjs"),a=require("./three-Dceyffus.umd.cjs"),o={VERSION:e.VERSION,Context:e.Context,NeedleXRSession:e.NeedleXRSession,assets:{loadFromURL:e.loadAsset},onStart:e.onStart,onUpdate:e.onUpdate,onBeforeRender:e.onBeforeRender,onAfterRender:e.onAfterRender,onInitializedContext:e.onInitialized,onDestroyContext:e.onDestroy,onClearContext:e.onClear};globalThis.Needle?.VERSION!==void 0&&console.warn(`Needle Engine is already imported: ${globalThis.Needle.VERSION}`);function n(t){for(const r in t)o[r]=t[r]}n(e.Component);n(e.Components);for(const t of Object.getOwnPropertyNames(e.GameObject))switch(t){case"prototype":case"constructor":case"length":case"name":continue;default:o[t]=e.GameObject[t];break}if(!globalThis.Needle)globalThis.Needle=o;else for(const t in o)globalThis.Needle[t]=o[t];globalThis.THREE?console.warn("Three.js is already imported"):globalThis.THREE=a.THREE;exports.$physicsKey=e.$physicsKey;exports.ActionBuilder=e.ActionBuilder;exports.ActionCollection=e.ActionCollection;exports.ActionModel=e.ActionModel;exports.Addressables=e.Addressables;exports.AlignmentConstraint=e.AlignmentConstraint;exports.AmbientMode=e.AmbientMode;exports.Animation=e.Animation;exports.AnimationCurve=e.AnimationCurve;exports.AnimationExtension=e.AnimationExtension;exports.AnimationTrackHandler=e.AnimationTrackHandler;exports.AnimationUtils=e.AnimationUtils;exports.Animator=e.Animator;exports.AnimatorConditionMode=e.AnimatorConditionMode;exports.AnimatorController=e.AnimatorController;exports.AnimatorControllerParameterType=e.AnimatorControllerParameterType;exports.AnimatorStateInfo=e.AnimatorStateInfo;exports.Antialiasing=e.Antialiasing;exports.Application=e.Application;exports.AssetDatabase=e.AssetDatabase;exports.AssetReference=e.AssetReference;exports.AudioExtension=e.AudioExtension;exports.AudioListener=e.AudioListener;exports.AudioSource=e.AudioSource;exports.AudioTrackHandler=e.AudioTrackHandler;exports.Avatar=e.Avatar;exports.AvatarBlink_Simple=e.AvatarBlink_Simple;exports.AvatarEyeLook_Rotation=e.AvatarEyeLook_Rotation;exports.AvatarLoader=e.AvatarLoader;exports.AvatarMarker=e.AvatarMarker;exports.AvatarModel=e.AvatarModel;exports.Avatar_Brain_LookAt=e.Avatar_Brain_LookAt;exports.Avatar_MouthShapes=e.Avatar_MouthShapes;exports.Avatar_MustacheShake=e.Avatar_MustacheShake;exports.Avatar_POI=e.Avatar_POI;exports.Axes=e.Axes;exports.AxesHelper=e.AxesHelper;exports.BUILD_TIME=e.BUILD_TIME;exports.BaseUIComponent=e.BaseUIComponent;exports.BasicIKConstraint=e.BasicIKConstraint;exports.BehaviorExtension=e.BehaviorExtension;exports.BehaviorModel=e.BehaviorModel;exports.Behaviour=e.Component$1;Object.defineProperty(exports,"BlobStorage",{enumerable:!0,get:()=>e.BlobStorage});exports.BloomEffect=e.BloomEffect;exports.BoxCollider=e.BoxCollider;exports.BoxGizmo=e.BoxGizmo;exports.BoxHelperComponent=e.BoxHelperComponent;exports.Button=e.Button;exports.ButtonsFactory=e.ButtonsFactory;exports.CallDirection=e.CallDirection;exports.CallInfo=e.CallInfo;exports.Camera=e.Camera;exports.CameraTargetReachedEvent=e.CameraTargetReachedEvent;exports.Canvas=e.Canvas;exports.CanvasGroup=e.CanvasGroup;exports.CapsuleCollider=e.CapsuleCollider;exports.ChangeMaterialOnClick=e.ChangeMaterialOnClick;exports.ChangeTransformOnClick=e.ChangeTransformOnClick;exports.CharacterController=e.CharacterController;exports.CharacterControllerInput=e.CharacterControllerInput;exports.ChromaticAberration=e.ChromaticAberration;exports.CircularBuffer=e.CircularBuffer;exports.ClearFlags=e.ClearFlags;exports.ClipExtrapolation=e.ClipExtrapolation;exports.Collider=e.Collider;exports.Collision=e.Collision;exports.CollisionDetectionMode=e.CollisionDetectionMode;exports.ColorAdjustments=e.ColorAdjustments;exports.ColorBySpeedModule=e.ColorBySpeedModule;exports.ColorOverLifetimeModule=e.ColorOverLifetimeModule;exports.Component=e.Component$1;exports.ComponentLifecycleEvents=e.ComponentLifecycleEvents;exports.ConnectionEvents=e.ConnectionEvents;exports.ContactPoint=e.ContactPoint;exports.ContactShadows=e.ContactShadows;exports.Context=e.Context;exports.ContextArgs=e.ContextArgs;exports.ContextEvent=e.ContextEvent;exports.ContextRegistry=e.ContextRegistry;exports.ControlTrackHandler=e.ControlTrackHandler;exports.CustomBranding=e.CustomBranding;exports.CustomShader=e.CustomShader;exports.DefaultReflectionMode=e.DefaultReflectionMode;exports.Deletable=e.Deletable;exports.DeleteBox=e.DeleteBox;exports.DepthOfField=e.DepthOfField;exports.DeviceFlag=e.DeviceFlag;Object.defineProperty(exports,"DeviceUtilities",{enumerable:!0,get:()=>e.DeviceUtilities});exports.DocumentExtension=e.DocumentExtension;exports.DragControls=e.DragControls;exports.DragMode=e.DragMode;exports.DropListener=e.DropListener;exports.Duplicatable=e.Duplicatable;exports.EffectWrapper=e.EffectWrapper;exports.EmissionModule=e.EmissionModule;exports.EmphasizeOnClick=e.EmphasizeOnClick;exports.EngineLoadingView=e.EngineLoadingView;exports.EnvironmentScene=e.EnvironmentScene;exports.EventList=e.EventList;exports.EventListEvent=e.EventListEvent;exports.EventSystem=e.EventSystem;exports.EventTrigger=e.EventTrigger;exports.FieldWithDefault=e.FieldWithDefault;exports.FileReference=e.FileReference;exports.FileReferenceSerializer=e.FileReferenceSerializer;exports.FileSpawnModel=e.FileSpawnModel;exports.File_Event=e.File_Event;exports.FixedJoint=e.FixedJoint;exports.Fog=e.Fog;exports.FrameEvent=e.FrameEvent;exports.GENERATOR=e.GENERATOR;exports.GameObject=e.GameObject;exports.Gizmos=e.Gizmos;exports.GltfExport=e.GltfExport;exports.GltfExportBox=e.GltfExportBox;exports.Gradient=e.Gradient;exports.Graphic=e.Graphic;exports.GraphicRaycaster=e.GraphicRaycaster;exports.Graphics=e.Graphics;exports.GridHelper=e.GridHelper;exports.GridLayoutGroup=e.GridLayoutGroup;exports.GroundProjectedEnv=e.GroundProjectedEnv;exports.GroupActionModel=e.GroupActionModel;exports.HideFlags=e.HideFlags;exports.HideOnStart=e.HideOnStart;exports.HingeJoint=e.HingeJoint;exports.HorizontalLayoutGroup=e.HorizontalLayoutGroup;exports.HostData=e.HostData;exports.Image=e.Image;exports.ImageReference=e.ImageReference;exports.ImageReferenceSerializer=e.ImageReferenceSerializer;exports.InheritVelocityModule=e.InheritVelocityModule;exports.Input=e.Input;exports.InputEventQueue=e.InputEventQueue;exports.InputEvents=e.InputEvents;exports.InputField=e.InputField;exports.InstanceHandle=e.InstanceHandle;exports.InstancingHandler=e.InstancingHandler;exports.InstancingUtil=e.InstancingUtil;exports.InstantiateEvent=e.InstantiateEvent;exports.InstantiateIdProvider=e.InstantiateIdProvider;exports.InstantiateOptions=e.InstantiateOptions;exports.Interactable=e.Interactable;Object.defineProperty(exports,"InternalScreenshotUtils",{enumerable:!0,get:()=>e.InternalScreenshotUtils});exports.JoinedRoomResponse=e.JoinedRoomResponse;exports.KeyEventArgs=e.KeyEventArgs;exports.Keyframe=e.Keyframe;exports.LODGroup=e.LODGroup;exports.LODModel=e.LODModel;exports.LeftRoomResponse=e.LeftRoomResponse;exports.Light=e.Light;exports.LightData=e.LightData;exports.LimitVelocityOverLifetimeModule=e.LimitVelocityOverLifetimeModule;exports.LoadingElementOptions=e.LoadingElementOptions;exports.LogStats=e.LogStats;exports.LogType=e.LogType;exports.LookAt=e.LookAt;exports.LookAtConstraint=e.LookAtConstraint;exports.MainModule=e.MainModule;exports.MarkerType=e.MarkerType;exports.MaskableGraphic=e.MaskableGraphic;exports.Mathf=e.Mathf;exports.MeshCollider=e.MeshCollider;exports.MeshRenderer=e.MeshRenderer;exports.MinMaxCurve=e.MinMaxCurve;exports.MinMaxGradient=e.MinMaxGradient;Object.defineProperty(exports,"NEEDLE_ENGINE_MODULES",{enumerable:!0,get:()=>e.MODULES});exports.NEKeyboardEvent=e.NEKeyboardEvent;exports.NEPointerEvent=e.NEPointerEvent;exports.NeedleButtonElement=e.NeedleButtonElement;exports.NeedleEngine=e.ContextRegistry;Object.defineProperty(exports,"NeedleEngineModelLoader",{enumerable:!0,get:()=>e.NeedleEngineModelLoader});exports.NeedleEngineWebComponent=e.NeedleEngineWebComponent;exports.NeedleMenu=e.NeedleMenu;exports.NeedlePatchesKey=e.NeedlePatchesKey;exports.NeedleUSDZExporter=e.USDZExporter$1;exports.NeedleXRController=e.NeedleXRController;exports.NeedleXRSession=e.NeedleXRSession;exports.NeedleXRSync=e.NeedleXRSync;exports.NeedleXRUtils=e.NeedleXRUtils;exports.NestedGltf=e.NestedGltf;exports.NetworkConnection=e.NetworkConnection;exports.NetworkedStreamEvents=e.NetworkedStreamEvents;exports.NetworkedStreams=e.NetworkedStreams;exports.Networking=e.Networking;exports.NewInstanceModel=e.NewInstanceModel;exports.NoiseModule=e.NoiseModule;exports.ObjectRaycaster=e.ObjectRaycaster;exports.ObjectUtils=e.ObjectUtils;exports.OffsetConstraint=e.OffsetConstraint;exports.OneEuroFilter=e.OneEuroFilter;exports.OneEuroFilterXYZ=e.OneEuroFilterXYZ;exports.OpenURL=e.OpenURL;exports.OrbitControls=e.OrbitControls;exports.Outline=e.Outline;exports.OwnershipEvent=e.OwnershipEvent;exports.OwnershipModel=e.OwnershipModel;exports.PUBLIC_KEY=e.PUBLIC_KEY;exports.Padding=e.Padding;exports.ParticleBurst=e.ParticleBurst;exports.ParticleSubEmitter=e.ParticleSubEmitter;exports.ParticleSystem=e.ParticleSystem;exports.ParticleSystemBaseBehaviour=e.ParticleSystemBaseBehaviour;exports.ParticleSystemRenderer=e.ParticleSystemRenderer;exports.ParticleSystemShapeType=e.ParticleSystemShapeType;exports.PeerHandle=e.PeerHandle;exports.PeerNetworking=e.PeerNetworking;exports.Physics=e.Physics;exports.PhysicsExtension=e.PhysicsExtension;exports.PhysicsMaterialCombine=e.PhysicsMaterialCombine;exports.PixelationEffect=e.PixelationEffect;exports.PlayAnimationOnClick=e.PlayAnimationOnClick;exports.PlayAudioOnClick=e.PlayAudioOnClick;exports.PlayableDirector=e.PlayableDirector;exports.PlayerColor=e.PlayerColor;exports.PlayerState=e.PlayerState;exports.PlayerStateEvent=e.PlayerStateEvent;exports.PlayerSync=e.PlayerSync;exports.PlayerView=e.PlayerView;exports.PlayerViewManager=e.PlayerViewManager;exports.PointerEventData=e.PointerEventData;exports.PointerType=e.PointerType;exports.PostProcessingEffect=e.PostProcessingEffect;exports.PostProcessingEffectOrder=e.PostProcessingEffectOrder;exports.PostProcessingHandler=e.PostProcessingHandler;exports.PostProcessingManager=e.Volume;exports.PreliminaryAction=e.PreliminaryAction;exports.PreliminaryTrigger=e.PreliminaryTrigger;Object.defineProperty(exports,"PreviewHelper",{enumerable:!0,get:()=>e.PreviewHelper});exports.PrimitiveType=e.PrimitiveType;exports.Progress=e.Progress;exports.PromiseAllWithErrors=e.PromiseAllWithErrors;exports.PromiseErrorResult=e.PromiseErrorResult;exports.RGBAColor=e.RGBAColor;exports.RapierPhysics=e.RapierPhysics;exports.RawImage=e.RawImage;exports.RaycastOptions=e.RaycastOptions;exports.Rect=e.Rect;exports.RectTransform=e.RectTransform;exports.ReflectionProbe=e.ReflectionProbe;exports.RegisteredAnimationInfo=e.RegisteredAnimationInfo;exports.RemoteSkybox=e.RemoteSkybox;exports.RenderTexture=e.RenderTexture;exports.RenderTextureSerializer=e.RenderTextureSerializer;exports.Renderer=e.Renderer;exports.RendererData=e.RendererData;exports.RendererLightmap=e.RendererLightmap;exports.Rigidbody=e.Rigidbody;exports.RigidbodyConstraints=e.RigidbodyConstraints;exports.RoomEvents=e.RoomEvents;exports.RotationBySpeedModule=e.RotationBySpeedModule;exports.RotationOverLifetimeModule=e.RotationOverLifetimeModule;exports.SceneLightSettings=e.SceneLightSettings;exports.SceneSwitcher=e.SceneSwitcher;exports.ScreenCapture=e.ScreenCapture;exports.ScreenSpaceAmbientOcclusion=e.ScreenSpaceAmbientOcclusion;exports.ScreenSpaceAmbientOcclusionN8=e.ScreenSpaceAmbientOcclusionN8;exports.SendQueue=e.SendQueue;exports.SerializationContext=e.SerializationContext;exports.SetActiveOnClick=e.SetActiveOnClick;exports.ShadowCatcher=e.ShadowCatcher;exports.ShapeModule=e.ShapeModule;exports.ShapeOverlapResult=e.ShapeOverlapResult;exports.SharpeningEffect=e.SharpeningEffect;exports.SignalAsset=e.SignalAsset;exports.SignalReceiver=e.SignalReceiver;exports.SignalReceiverEvent=e.SignalReceiverEvent;exports.SignalTrackHandler=e.SignalTrackHandler;exports.Size=e.Size;exports.SizeBySpeedModule=e.SizeBySpeedModule;exports.SizeOverLifetimeModule=e.SizeOverLifetimeModule;exports.SkinnedMeshRenderer=e.SkinnedMeshRenderer;exports.SmoothFollow=e.SmoothFollow;exports.SpatialGrabRaycaster=e.SpatialGrabRaycaster;exports.SpatialHtml=e.SpatialHtml;exports.SpatialTrigger=e.SpatialTrigger;exports.SpatialTriggerReceiver=e.SpatialTriggerReceiver;exports.SpectatorCamera=e.SpectatorCamera;exports.SphereCollider=e.SphereCollider;exports.SphereIntersection=e.SphereIntersection;exports.Sprite=e.Sprite;exports.SpriteData=e.SpriteData;exports.SpriteRenderer=e.SpriteRenderer;exports.SpriteSheet=e.SpriteSheet;exports.StateMachineBehaviour=e.StateMachineBehaviour;exports.StreamEndedEvent=e.StreamEndedEvent;exports.StreamReceivedEvent=e.StreamReceivedEvent;exports.SubEmitterSystem=e.SubEmitterSystem;exports.SyncedCamera=e.SyncedCamera;exports.SyncedRoom=e.SyncedRoom;exports.SyncedTransform=e.SyncedTransform;exports.TapGestureTrigger=e.TapGestureTrigger;exports.TeleportTarget=e.TeleportTarget;exports.TestRunner=e.TestRunner;exports.TestSceneUtils=e.TestSceneUtils;exports.TestSimulateUserData=e.TestSimulateUserData;exports.Text=e.Text;exports.TextBuilder=e.TextBuilder;exports.TextExtension=e.TextExtension;exports.TextureSheetAnimationModule=e.TextureSheetAnimationModule;exports.TiltShiftEffect=e.TiltShiftEffect;exports.Time=e.Time;exports.ToneMappingEffect=e.ToneMappingEffect;exports.TrackHandler=e.TrackHandler;exports.TrackType=e.TrackType;exports.TrailModule=e.TrailModule;exports.TransformData=e.TransformData;exports.TransformGizmo=e.TransformGizmo;exports.TriggerBuilder=e.TriggerBuilder;exports.TriggerModel=e.TriggerModel;exports.TypeStore=e.TypeStore;exports.UIRaycastUtils=e.UIRaycastUtils;exports.UIRootComponent=e.UIRootComponent;exports.USDDocument=e.USDDocument;exports.USDObject=e.USDObject;exports.USDWriter=e.USDWriter;exports.USDZExporter=e.USDZExporter;exports.USDZText=e.USDZText;exports.USDZUIExtension=e.USDZUIExtension;exports.UriSerializer=e.UriSerializer;exports.UsageMarker=e.UsageMarker;exports.UserJoinedOrLeftRoomModel=e.UserJoinedOrLeftRoomModel;exports.VERSION=e.VERSION;exports.VariantAction=e.VariantAction;exports.VelocityOverLifetimeModule=e.VelocityOverLifetimeModule;exports.VerticalLayoutGroup=e.VerticalLayoutGroup;exports.VideoPlayer=e.VideoPlayer;exports.ViewDevice=e.ViewDevice;exports.Vignette=e.Vignette;exports.VisibilityAction=e.VisibilityAction;exports.Voip=e.Voip;exports.Volume=e.Volume;exports.VolumeParameter=e.VolumeParameter;exports.VolumeProfile=e.VolumeProfile;exports.WaitForFrames=e.WaitForFrames;exports.WaitForPromise=e.WaitForPromise;exports.WaitForSeconds=e.WaitForSeconds;exports.Watch=e.Watch;exports.WebARCameraBackground=e.WebARCameraBackground;exports.WebARSessionRoot=e.WebARSessionRoot;exports.WebXR=e.WebXR;exports.WebXRButtonFactory=e.WebXRButtonFactory;exports.WebXRImageTracking=e.WebXRImageTracking;exports.WebXRImageTrackingModel=e.WebXRImageTrackingModel;exports.WebXRPlaneTracking=e.WebXRPlaneTracking;exports.WebXRTrackedImage=e.WebXRTrackedImage;exports.XRControllerFollow=e.XRControllerFollow;exports.XRControllerModel=e.XRControllerModel;exports.XRControllerMovement=e.XRControllerMovement;exports.XRFlag=e.XRFlag;exports.XRRig=e.XRRig;exports.XRState=e.XRState;exports.XRStateFlag=e.XRStateFlag;exports.__Ignore=e.__Ignore;exports.__internalNotifyObjectDestroyed=e.__internalNotifyObjectDestroyed;exports.activeInHierarchyFieldName=e.activeInHierarchyFieldName;exports.addAttributeChangeCallback=e.addAttributeChangeCallback;exports.addComponent=e.addComponent;exports.addCustomExtensionPlugin=e.addCustomExtensionPlugin;exports.addNewComponent=e.addNewComponent;exports.addPatch=e.addPatch;exports.apply=e.apply;exports.applyHMRChanges=e.applyHMRChanges;exports.applyPrototypeExtensions=e.applyPrototypeExtensions;exports.beginListenDestroy=e.beginListenDestroy;exports.beginListenInstantiate=e.beginListenInstantiate;exports.binaryIdentifierCasts=e.binaryIdentifierCasts;exports.build_scene_functions=e.build_scene_functions;exports.builtinComponentKeyName=e.builtinComponentKeyName;exports.calculateProgress01=e.calculateProgress01;exports.clearBalloonMessages=e.clearMessages;exports.clearOverlayMessages=e.clearMessages;exports.colorSerializer=e.colorSerializer;exports.compareAssociation=e.compareAssociation;exports.componentSerializer=e.componentSerializer;exports.copyTexture=e.copyTexture;exports.createMotion=e.createMotion;exports.debugNet=e.debugNet;exports.debugOwner=e.debugOwner;exports.decompressGpuTexture=e.decompressGpuTexture;exports.deepClone=e.deepClone;exports.delay=e.delay;exports.delayForFrames=e.delayForFrames;exports.deserializeObject=e.deserializeObject;exports.destroy=e.destroy;exports.destroyComponentInstance=e.destroyComponentInstance;exports.determineMimeTypeFromExtension=e.determineMimeTypeFromExtension;exports.disposeObjectResources=e.disposeObjectResources;exports.disposeStream=e.disposeStream;exports.editorGuidKeyName=e.editorGuidKeyName;exports.enableSpatialConsole=e.enableSpatialConsole;exports.euler=e.euler;exports.eventListSerializer=e.eventListSerializer;exports.exportAsGLTF=e.exportAsGLTF;exports.findByGuid=e.findByGuid;exports.findObjectOfType=e.findObjectOfType;exports.findObjectsOfType=e.findObjectsOfType;exports.findResourceUsers=e.findResourceUsers;exports.fitObjectIntoVolume=e.fitObjectIntoVolume;exports.foreachComponent=e.foreachComponent;exports.foreachComponentEnumerator=e.foreachComponentEnumerator;exports.forward=e.forward;exports.generateQRCode=e.generateQRCode;exports.generateSeed=e.generateSeed;exports.getBoundingBox=e.getBoundingBox;exports.getCameraController=e.getCameraController;exports.getComponent=e.getComponent;exports.getComponentInChildren=e.getComponentInChildren;exports.getComponentInParent=e.getComponentInParent;exports.getComponents=e.getComponents;exports.getComponentsInChildren=e.getComponentsInChildren;exports.getComponentsInParent=e.getComponentsInParent;exports.getFormattedDate=e.getFormattedDate;exports.getIconElement=e.getIconElement;exports.getIconTexture=e.getIconTexture;exports.getLoader=e.getLoader;exports.getOrAddComponent=e.getOrAddComponent;exports.getParam=e.getParam;exports.getParentHierarchyPath=e.getParentHierarchyPath;exports.getPath=e.getPath;exports.getPeerOptions=e.getPeerOptions;exports.getPeerjsInstance=e.getPeerjsInstance;exports.getResourceUserCount=e.getResourceUserCount;exports.getTempColor=e.getTempColor;exports.getTempQuaternion=e.getTempQuaternion;exports.getTempVector=e.getTempVector;exports.getUrlParams=e.getUrlParams;exports.getVisibleInCustomShadowRendering=e.getVisibleInCustomShadowRendering;exports.getWorldDirection=e.getWorldDirection;exports.getWorldEuler=e.getWorldEuler;exports.getWorldPosition=e.getWorldPosition;exports.getWorldQuaternion=e.getWorldQuaternion;exports.getWorldRotation=e.getWorldRotation;exports.getWorldScale=e.getWorldScale;exports.hasCommercialLicense=e.hasCommercialLicense;exports.hasIndieLicense=e.hasIndieLicense;exports.hasPointerEventComponent=e.hasPointerEventComponent;exports.hasProLicense=e.hasProLicense;exports.hideDebugConsole=e.hideDebugConsole;exports.imageToCanvas=e.imageToCanvas;exports.instantiate=e.instantiate;exports.invokeLoadedImportPluginHooks=e.invokeLoadedImportPluginHooks;exports.invokeXRSessionEnd=e.invokeXRSessionEnd;exports.invokeXRSessionStart=e.invokeXRSessionStart;exports.isActiveInHierarchy=e.isActiveInHierarchy;exports.isActiveSelf=e.isActiveSelf;exports.isAndroidDevice=e.isAndroidDevice;exports.isAnimationAction=e.isAnimationAction;exports.isComponent=e.isComponent;exports.isDebugMode=e.isDebugMode;exports.isDesktop=e.isDesktop;exports.isDestroyed=e.isDestroyed;exports.isDevEnvironment=e.isDevEnvironment;exports.isDisposed=e.isDisposed;exports.isExporting=e.isExporting;exports.isGLTFModel=e.isGLTFModel;exports.isHostedOnGlitch=e.isHostedOnGlitch;exports.isHotReloadEnabled=e.isHotReloadEnabled;exports.isHotReloading=e.isHotReloading;exports.isIPad=e.isIPad;exports.isIconElement=e.isIconElement;exports.isLocalNetwork=e.isLocalNetwork;exports.isMacOS=e.isMacOS;exports.isMobileDevice=e.isMobileDevice;exports.isMozillaXR=e.isMozillaXR;exports.isQuest=e.isQuest;exports.isResourceTrackingEnabled=e.isResourceTrackingEnabled;exports.isSafari=e.isSafari;exports.isUsingInstancing=e.isUsingInstancing;exports.isiOS=e.isiOS;exports.isiPad=e.isiPad;exports.loadAsset=e.loadAsset;exports.loadSync=e.loadSync;exports.logHierarchy=e.logHierarchy;exports.lookAtInverse=e.lookAtInverse;exports.lookAtObject=e.lookAtObject;exports.lookAtScreenPoint=e.lookAtScreenPoint;exports.makeId=e.makeId;exports.makeIdFromRandomWords=e.makeIdFromRandomWords;exports.makeNameSafeForUSD=e.makeNameSafe;exports.markAsInstancedRendered=e.markAsInstancedRendered;exports.microphonePermissionsGranted=e.microphonePermissionsGranted;exports.nameof=e.nameof;exports.nameofFactory=e.nameofFactory;exports.objectSerializer=e.objectSerializer;exports.offXRSessionEnd=e.offXRSessionEnd;exports.offXRSessionStart=e.offXRSessionStart;exports.onAfterRender=e.onAfterRender;exports.onBeforeRender=e.onBeforeRender;exports.onClear=e.onClear;exports.onDestroy=e.onDestroy;exports.onInitialized=e.onInitialized;exports.onStart=e.onStart;exports.onUpdate=e.onUpdate;exports.onXRSessionEnd=e.onXRSessionEnd;exports.onXRSessionStart=e.onXRSessionStart;exports.parseSync=e.parseSync;exports.placeOnSurface=e.placeOnSurface;exports.postprocessFBXMaterials=e.postprocessFBXMaterials;exports.prefix=e.prefix;exports.pushState=e.pushState;exports.randomNumber=e.randomNumber;exports.registerBinaryType=e.registerBinaryType;exports.registerComponent=e.registerComponent;exports.registerComponentExtension=e.registerComponentExtension;exports.registerCustomEffectType=e.registerCustomEffectType;exports.registerExportExtensions=e.registerExportExtensions;exports.registerExtensions=e.registerExtensions;exports.registerHotReloadType=e.registerHotReloadType;exports.registerLoader=e.registerLoader;exports.registerPrefabProvider=e.registerPrefabProvider;exports.registerPrototypeExtensions=e.registerPrototypeExtensions;exports.registerType=e.registerType;exports.relativePathPrefix=e.relativePathPrefix;exports.removeAttributeChangeCallback=e.removeAttributeChangeCallback;exports.removeComponent=e.removeComponent;exports.removeCustomImportExtensionType=e.removeCustomImportExtensionType;exports.removePatch=e.removePatch;exports.resolveUrl=e.resolveUrl;exports.sanitizeString=e.sanitizeString;exports.saveImage=e.saveImage;exports.screenshot=e.screenshot;exports.screenshot2=e.screenshot2;exports.sendDestroyed=e.sendDestroyed;exports.serializable=e.serializable;exports.serializeObject=e.serializeObject;exports.serializeable=e.serializeable;exports.setActive=e.setActive;exports.setAllowBalloonMessages=e.setAllowBalloonMessages;exports.setAllowOverlayMessages=e.setAllowOverlayMessages;exports.setAutoFitEnabled=e.setAutoFitEnabled;exports.setCameraController=e.setCameraController;exports.setDestroyed=e.setDestroyed;exports.setDevEnvironment=e.setDevEnvironment;exports.setDisposable=e.setDisposable;exports.setDontDestroy=e.setDontDestroy;exports.setOrAddParamsToUrl=e.setOrAddParamsToUrl;exports.setParam=e.setParam;exports.setParamWithoutReload=e.setParamWithoutReload;exports.setPeerOptions=e.setPeerOptions;exports.setResourceTrackingEnabled=e.setResourceTrackingEnabled;exports.setState=e.setState;exports.setVisibleInCustomShadowRendering=e.setVisibleInCustomShadowRendering;exports.setWorldEuler=e.setWorldEuler;exports.setWorldPosition=e.setWorldPosition;exports.setWorldPositionXYZ=e.setWorldPositionXYZ;exports.setWorldQuaternion=e.setWorldQuaternion;exports.setWorldQuaternionXYZW=e.setWorldQuaternionXYZW;exports.setWorldRotation=e.setWorldRotation;exports.setWorldRotationXYZ=e.setWorldRotationXYZ;exports.setWorldScale=e.setWorldScale;exports.showBalloonError=e.showBalloonError;exports.showBalloonMessage=e.showBalloonMessage;exports.showBalloonWarning=e.showBalloonWarning;exports.showDebugConsole=e.showDebugConsole;exports.slerp=e.slerp;exports.syncDestroy=e.syncDestroy;exports.syncField=e.syncField;exports.syncInstantiate=e.syncInstantiate;exports.textureToCanvas=e.textureToCanvas;exports.tryCastBinary=e.tryCastBinary;exports.tryDetermineMimetypeFromBinary=e.tryDetermineMimetypeFromBinary;exports.tryDetermineMimetypeFromURL=e.tryDetermineMimetypeFromURL;exports.tryFindObject=e.tryFindObject;exports.tryGetGuid=e.tryGetGuid;exports.unregisterHotReloadType=e.unregisterHotReloadType;exports.unwatchWrite=e.unwatchWrite;exports.useForAutoFit=e.useForAutoFit;exports.validate=e.validate;exports.watchWrite=e.watchWrite;exports.NEEDLE_progressive=i.NEEDLE_progressive;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./needle-engine.bundle-CaNItSG7.umd.cjs"),i=require("./gltf-progressive-C-U_onhf.umd.cjs"),a=require("./three-Dceyffus.umd.cjs"),o={VERSION:e.VERSION,Context:e.Context,NeedleXRSession:e.NeedleXRSession,assets:{loadFromURL:e.loadAsset},onStart:e.onStart,onUpdate:e.onUpdate,onBeforeRender:e.onBeforeRender,onAfterRender:e.onAfterRender,onInitializedContext:e.onInitialized,onDestroyContext:e.onDestroy,onClearContext:e.onClear};globalThis.Needle?.VERSION!==void 0&&console.warn(`Needle Engine is already imported: ${globalThis.Needle.VERSION}`);function n(t){for(const r in t)o[r]=t[r]}n(e.Component);n(e.Components);for(const t of Object.getOwnPropertyNames(e.GameObject))switch(t){case"prototype":case"constructor":case"length":case"name":continue;default:o[t]=e.GameObject[t];break}if(!globalThis.Needle)globalThis.Needle=o;else for(const t in o)globalThis.Needle[t]=o[t];globalThis.THREE?console.warn("Three.js is already imported"):globalThis.THREE=a.THREE;exports.$physicsKey=e.$physicsKey;exports.ActionBuilder=e.ActionBuilder;exports.ActionCollection=e.ActionCollection;exports.ActionModel=e.ActionModel;exports.Addressables=e.Addressables;exports.AlignmentConstraint=e.AlignmentConstraint;exports.AmbientMode=e.AmbientMode;exports.Animation=e.Animation;exports.AnimationCurve=e.AnimationCurve;exports.AnimationExtension=e.AnimationExtension;exports.AnimationTrackHandler=e.AnimationTrackHandler;exports.AnimationUtils=e.AnimationUtils;exports.Animator=e.Animator;exports.AnimatorConditionMode=e.AnimatorConditionMode;exports.AnimatorController=e.AnimatorController;exports.AnimatorControllerParameterType=e.AnimatorControllerParameterType;exports.AnimatorStateInfo=e.AnimatorStateInfo;exports.Antialiasing=e.Antialiasing;exports.Application=e.Application;exports.AssetDatabase=e.AssetDatabase;exports.AssetReference=e.AssetReference;exports.AudioExtension=e.AudioExtension;exports.AudioListener=e.AudioListener;exports.AudioSource=e.AudioSource;exports.AudioTrackHandler=e.AudioTrackHandler;exports.Avatar=e.Avatar;exports.AvatarBlink_Simple=e.AvatarBlink_Simple;exports.AvatarEyeLook_Rotation=e.AvatarEyeLook_Rotation;exports.AvatarLoader=e.AvatarLoader;exports.AvatarMarker=e.AvatarMarker;exports.AvatarModel=e.AvatarModel;exports.Avatar_Brain_LookAt=e.Avatar_Brain_LookAt;exports.Avatar_MouthShapes=e.Avatar_MouthShapes;exports.Avatar_MustacheShake=e.Avatar_MustacheShake;exports.Avatar_POI=e.Avatar_POI;exports.Axes=e.Axes;exports.AxesHelper=e.AxesHelper;exports.BUILD_TIME=e.BUILD_TIME;exports.BaseUIComponent=e.BaseUIComponent;exports.BasicIKConstraint=e.BasicIKConstraint;exports.BehaviorExtension=e.BehaviorExtension;exports.BehaviorModel=e.BehaviorModel;exports.Behaviour=e.Component$1;Object.defineProperty(exports,"BlobStorage",{enumerable:!0,get:()=>e.BlobStorage});exports.BloomEffect=e.BloomEffect;exports.BoxCollider=e.BoxCollider;exports.BoxGizmo=e.BoxGizmo;exports.BoxHelperComponent=e.BoxHelperComponent;exports.Button=e.Button;exports.ButtonsFactory=e.ButtonsFactory;exports.CallDirection=e.CallDirection;exports.CallInfo=e.CallInfo;exports.Camera=e.Camera;exports.CameraTargetReachedEvent=e.CameraTargetReachedEvent;exports.Canvas=e.Canvas;exports.CanvasGroup=e.CanvasGroup;exports.CapsuleCollider=e.CapsuleCollider;exports.ChangeMaterialOnClick=e.ChangeMaterialOnClick;exports.ChangeTransformOnClick=e.ChangeTransformOnClick;exports.CharacterController=e.CharacterController;exports.CharacterControllerInput=e.CharacterControllerInput;exports.ChromaticAberration=e.ChromaticAberration;exports.CircularBuffer=e.CircularBuffer;exports.ClearFlags=e.ClearFlags;exports.ClipExtrapolation=e.ClipExtrapolation;exports.Collider=e.Collider;exports.Collision=e.Collision;exports.CollisionDetectionMode=e.CollisionDetectionMode;exports.ColorAdjustments=e.ColorAdjustments;exports.ColorBySpeedModule=e.ColorBySpeedModule;exports.ColorOverLifetimeModule=e.ColorOverLifetimeModule;exports.Component=e.Component$1;exports.ComponentLifecycleEvents=e.ComponentLifecycleEvents;exports.ConnectionEvents=e.ConnectionEvents;exports.ContactPoint=e.ContactPoint;exports.ContactShadows=e.ContactShadows;exports.Context=e.Context;exports.ContextArgs=e.ContextArgs;exports.ContextEvent=e.ContextEvent;exports.ContextRegistry=e.ContextRegistry;exports.ControlTrackHandler=e.ControlTrackHandler;exports.CustomBranding=e.CustomBranding;exports.CustomShader=e.CustomShader;exports.DefaultReflectionMode=e.DefaultReflectionMode;exports.Deletable=e.Deletable;exports.DeleteBox=e.DeleteBox;exports.DepthOfField=e.DepthOfField;exports.DeviceFlag=e.DeviceFlag;Object.defineProperty(exports,"DeviceUtilities",{enumerable:!0,get:()=>e.DeviceUtilities});exports.DocumentExtension=e.DocumentExtension;exports.DragControls=e.DragControls;exports.DragMode=e.DragMode;exports.DropListener=e.DropListener;exports.Duplicatable=e.Duplicatable;exports.EffectWrapper=e.EffectWrapper;exports.EmissionModule=e.EmissionModule;exports.EmphasizeOnClick=e.EmphasizeOnClick;exports.EngineLoadingView=e.EngineLoadingView;exports.EnvironmentScene=e.EnvironmentScene;exports.EventList=e.EventList;exports.EventListEvent=e.EventListEvent;exports.EventSystem=e.EventSystem;exports.EventTrigger=e.EventTrigger;exports.FieldWithDefault=e.FieldWithDefault;exports.FileReference=e.FileReference;exports.FileReferenceSerializer=e.FileReferenceSerializer;exports.FileSpawnModel=e.FileSpawnModel;exports.File_Event=e.File_Event;exports.FixedJoint=e.FixedJoint;exports.Fog=e.Fog;exports.FrameEvent=e.FrameEvent;exports.GENERATOR=e.GENERATOR;exports.GameObject=e.GameObject;exports.Gizmos=e.Gizmos;exports.GltfExport=e.GltfExport;exports.GltfExportBox=e.GltfExportBox;exports.Gradient=e.Gradient;exports.Graphic=e.Graphic;exports.GraphicRaycaster=e.GraphicRaycaster;exports.Graphics=e.Graphics;exports.GridHelper=e.GridHelper;exports.GridLayoutGroup=e.GridLayoutGroup;exports.GroundProjectedEnv=e.GroundProjectedEnv;exports.GroupActionModel=e.GroupActionModel;exports.HideFlags=e.HideFlags;exports.HideOnStart=e.HideOnStart;exports.HingeJoint=e.HingeJoint;exports.HorizontalLayoutGroup=e.HorizontalLayoutGroup;exports.HostData=e.HostData;exports.Image=e.Image;exports.ImageReference=e.ImageReference;exports.ImageReferenceSerializer=e.ImageReferenceSerializer;exports.InheritVelocityModule=e.InheritVelocityModule;exports.Input=e.Input;exports.InputEventQueue=e.InputEventQueue;exports.InputEvents=e.InputEvents;exports.InputField=e.InputField;exports.InstanceHandle=e.InstanceHandle;exports.InstancingHandler=e.InstancingHandler;exports.InstancingUtil=e.InstancingUtil;exports.InstantiateEvent=e.InstantiateEvent;exports.InstantiateIdProvider=e.InstantiateIdProvider;exports.InstantiateOptions=e.InstantiateOptions;exports.Interactable=e.Interactable;Object.defineProperty(exports,"InternalScreenshotUtils",{enumerable:!0,get:()=>e.InternalScreenshotUtils});exports.JoinedRoomResponse=e.JoinedRoomResponse;exports.KeyEventArgs=e.KeyEventArgs;exports.Keyframe=e.Keyframe;exports.LODGroup=e.LODGroup;exports.LODModel=e.LODModel;exports.LeftRoomResponse=e.LeftRoomResponse;exports.Light=e.Light;exports.LightData=e.LightData;exports.LimitVelocityOverLifetimeModule=e.LimitVelocityOverLifetimeModule;exports.LoadingElementOptions=e.LoadingElementOptions;exports.LogStats=e.LogStats;exports.LogType=e.LogType;exports.LookAt=e.LookAt;exports.LookAtConstraint=e.LookAtConstraint;exports.MainModule=e.MainModule;exports.MarkerType=e.MarkerType;exports.MaskableGraphic=e.MaskableGraphic;exports.Mathf=e.Mathf;exports.MeshCollider=e.MeshCollider;exports.MeshRenderer=e.MeshRenderer;exports.MinMaxCurve=e.MinMaxCurve;exports.MinMaxGradient=e.MinMaxGradient;Object.defineProperty(exports,"NEEDLE_ENGINE_MODULES",{enumerable:!0,get:()=>e.MODULES});exports.NEKeyboardEvent=e.NEKeyboardEvent;exports.NEPointerEvent=e.NEPointerEvent;exports.NeedleButtonElement=e.NeedleButtonElement;exports.NeedleEngine=e.ContextRegistry;Object.defineProperty(exports,"NeedleEngineModelLoader",{enumerable:!0,get:()=>e.NeedleEngineModelLoader});exports.NeedleEngineWebComponent=e.NeedleEngineWebComponent;exports.NeedleMenu=e.NeedleMenu;exports.NeedlePatchesKey=e.NeedlePatchesKey;exports.NeedleUSDZExporter=e.USDZExporter$1;exports.NeedleXRController=e.NeedleXRController;exports.NeedleXRSession=e.NeedleXRSession;exports.NeedleXRSync=e.NeedleXRSync;exports.NeedleXRUtils=e.NeedleXRUtils;exports.NestedGltf=e.NestedGltf;exports.NetworkConnection=e.NetworkConnection;exports.NetworkedStreamEvents=e.NetworkedStreamEvents;exports.NetworkedStreams=e.NetworkedStreams;exports.Networking=e.Networking;exports.NewInstanceModel=e.NewInstanceModel;exports.NoiseModule=e.NoiseModule;exports.ObjectRaycaster=e.ObjectRaycaster;exports.ObjectUtils=e.ObjectUtils;exports.OffsetConstraint=e.OffsetConstraint;exports.OneEuroFilter=e.OneEuroFilter;exports.OneEuroFilterXYZ=e.OneEuroFilterXYZ;exports.OpenURL=e.OpenURL;exports.OrbitControls=e.OrbitControls;exports.Outline=e.Outline;exports.OwnershipEvent=e.OwnershipEvent;exports.OwnershipModel=e.OwnershipModel;exports.PUBLIC_KEY=e.PUBLIC_KEY;exports.Padding=e.Padding;exports.ParticleBurst=e.ParticleBurst;exports.ParticleSubEmitter=e.ParticleSubEmitter;exports.ParticleSystem=e.ParticleSystem;exports.ParticleSystemBaseBehaviour=e.ParticleSystemBaseBehaviour;exports.ParticleSystemRenderer=e.ParticleSystemRenderer;exports.ParticleSystemShapeType=e.ParticleSystemShapeType;exports.PeerHandle=e.PeerHandle;exports.PeerNetworking=e.PeerNetworking;exports.Physics=e.Physics;exports.PhysicsExtension=e.PhysicsExtension;exports.PhysicsMaterialCombine=e.PhysicsMaterialCombine;exports.PixelationEffect=e.PixelationEffect;exports.PlayAnimationOnClick=e.PlayAnimationOnClick;exports.PlayAudioOnClick=e.PlayAudioOnClick;exports.PlayableDirector=e.PlayableDirector;exports.PlayerColor=e.PlayerColor;exports.PlayerState=e.PlayerState;exports.PlayerStateEvent=e.PlayerStateEvent;exports.PlayerSync=e.PlayerSync;exports.PlayerView=e.PlayerView;exports.PlayerViewManager=e.PlayerViewManager;exports.PointerEventData=e.PointerEventData;exports.PointerType=e.PointerType;exports.PostProcessingEffect=e.PostProcessingEffect;exports.PostProcessingEffectOrder=e.PostProcessingEffectOrder;exports.PostProcessingHandler=e.PostProcessingHandler;exports.PostProcessingManager=e.Volume;exports.PreliminaryAction=e.PreliminaryAction;exports.PreliminaryTrigger=e.PreliminaryTrigger;Object.defineProperty(exports,"PreviewHelper",{enumerable:!0,get:()=>e.PreviewHelper});exports.PrimitiveType=e.PrimitiveType;exports.Progress=e.Progress;exports.PromiseAllWithErrors=e.PromiseAllWithErrors;exports.PromiseErrorResult=e.PromiseErrorResult;exports.RGBAColor=e.RGBAColor;exports.RapierPhysics=e.RapierPhysics;exports.RawImage=e.RawImage;exports.RaycastOptions=e.RaycastOptions;exports.Rect=e.Rect;exports.RectTransform=e.RectTransform;exports.ReflectionProbe=e.ReflectionProbe;exports.RegisteredAnimationInfo=e.RegisteredAnimationInfo;exports.RemoteSkybox=e.RemoteSkybox;exports.RenderTexture=e.RenderTexture;exports.RenderTextureSerializer=e.RenderTextureSerializer;exports.Renderer=e.Renderer;exports.RendererData=e.RendererData;exports.RendererLightmap=e.RendererLightmap;exports.Rigidbody=e.Rigidbody;exports.RigidbodyConstraints=e.RigidbodyConstraints;exports.RoomEvents=e.RoomEvents;exports.RotationBySpeedModule=e.RotationBySpeedModule;exports.RotationOverLifetimeModule=e.RotationOverLifetimeModule;exports.SceneLightSettings=e.SceneLightSettings;exports.SceneSwitcher=e.SceneSwitcher;exports.ScreenCapture=e.ScreenCapture;exports.ScreenSpaceAmbientOcclusion=e.ScreenSpaceAmbientOcclusion;exports.ScreenSpaceAmbientOcclusionN8=e.ScreenSpaceAmbientOcclusionN8;exports.SendQueue=e.SendQueue;exports.SerializationContext=e.SerializationContext;exports.SetActiveOnClick=e.SetActiveOnClick;exports.ShadowCatcher=e.ShadowCatcher;exports.ShapeModule=e.ShapeModule;exports.ShapeOverlapResult=e.ShapeOverlapResult;exports.SharpeningEffect=e.SharpeningEffect;exports.SignalAsset=e.SignalAsset;exports.SignalReceiver=e.SignalReceiver;exports.SignalReceiverEvent=e.SignalReceiverEvent;exports.SignalTrackHandler=e.SignalTrackHandler;exports.Size=e.Size;exports.SizeBySpeedModule=e.SizeBySpeedModule;exports.SizeOverLifetimeModule=e.SizeOverLifetimeModule;exports.SkinnedMeshRenderer=e.SkinnedMeshRenderer;exports.SmoothFollow=e.SmoothFollow;exports.SpatialGrabRaycaster=e.SpatialGrabRaycaster;exports.SpatialHtml=e.SpatialHtml;exports.SpatialTrigger=e.SpatialTrigger;exports.SpatialTriggerReceiver=e.SpatialTriggerReceiver;exports.SpectatorCamera=e.SpectatorCamera;exports.SphereCollider=e.SphereCollider;exports.SphereIntersection=e.SphereIntersection;exports.Sprite=e.Sprite;exports.SpriteData=e.SpriteData;exports.SpriteRenderer=e.SpriteRenderer;exports.SpriteSheet=e.SpriteSheet;exports.StateMachineBehaviour=e.StateMachineBehaviour;exports.StreamEndedEvent=e.StreamEndedEvent;exports.StreamReceivedEvent=e.StreamReceivedEvent;exports.SubEmitterSystem=e.SubEmitterSystem;exports.SyncedCamera=e.SyncedCamera;exports.SyncedRoom=e.SyncedRoom;exports.SyncedTransform=e.SyncedTransform;exports.TapGestureTrigger=e.TapGestureTrigger;exports.TeleportTarget=e.TeleportTarget;exports.TestRunner=e.TestRunner;exports.TestSceneUtils=e.TestSceneUtils;exports.TestSimulateUserData=e.TestSimulateUserData;exports.Text=e.Text;exports.TextBuilder=e.TextBuilder;exports.TextExtension=e.TextExtension;exports.TextureSheetAnimationModule=e.TextureSheetAnimationModule;exports.TiltShiftEffect=e.TiltShiftEffect;exports.Time=e.Time;exports.ToneMappingEffect=e.ToneMappingEffect;exports.TrackHandler=e.TrackHandler;exports.TrackType=e.TrackType;exports.TrailModule=e.TrailModule;exports.TransformData=e.TransformData;exports.TransformGizmo=e.TransformGizmo;exports.TriggerBuilder=e.TriggerBuilder;exports.TriggerModel=e.TriggerModel;exports.TypeStore=e.TypeStore;exports.UIRaycastUtils=e.UIRaycastUtils;exports.UIRootComponent=e.UIRootComponent;exports.USDDocument=e.USDDocument;exports.USDObject=e.USDObject;exports.USDWriter=e.USDWriter;exports.USDZExporter=e.USDZExporter;exports.USDZText=e.USDZText;exports.USDZUIExtension=e.USDZUIExtension;exports.UriSerializer=e.UriSerializer;exports.UsageMarker=e.UsageMarker;exports.UserJoinedOrLeftRoomModel=e.UserJoinedOrLeftRoomModel;exports.VERSION=e.VERSION;exports.VariantAction=e.VariantAction;exports.VelocityOverLifetimeModule=e.VelocityOverLifetimeModule;exports.VerticalLayoutGroup=e.VerticalLayoutGroup;exports.VideoPlayer=e.VideoPlayer;exports.ViewDevice=e.ViewDevice;exports.Vignette=e.Vignette;exports.VisibilityAction=e.VisibilityAction;exports.Voip=e.Voip;exports.Volume=e.Volume;exports.VolumeParameter=e.VolumeParameter;exports.VolumeProfile=e.VolumeProfile;exports.WaitForFrames=e.WaitForFrames;exports.WaitForPromise=e.WaitForPromise;exports.WaitForSeconds=e.WaitForSeconds;exports.Watch=e.Watch;exports.WebARCameraBackground=e.WebARCameraBackground;exports.WebARSessionRoot=e.WebARSessionRoot;exports.WebXR=e.WebXR;exports.WebXRButtonFactory=e.WebXRButtonFactory;exports.WebXRImageTracking=e.WebXRImageTracking;exports.WebXRImageTrackingModel=e.WebXRImageTrackingModel;exports.WebXRPlaneTracking=e.WebXRPlaneTracking;exports.WebXRTrackedImage=e.WebXRTrackedImage;exports.XRControllerFollow=e.XRControllerFollow;exports.XRControllerModel=e.XRControllerModel;exports.XRControllerMovement=e.XRControllerMovement;exports.XRFlag=e.XRFlag;exports.XRRig=e.XRRig;exports.XRState=e.XRState;exports.XRStateFlag=e.XRStateFlag;exports.__Ignore=e.__Ignore;exports.__internalNotifyObjectDestroyed=e.__internalNotifyObjectDestroyed;exports.activeInHierarchyFieldName=e.activeInHierarchyFieldName;exports.addAttributeChangeCallback=e.addAttributeChangeCallback;exports.addComponent=e.addComponent;exports.addCustomExtensionPlugin=e.addCustomExtensionPlugin;exports.addNewComponent=e.addNewComponent;exports.addPatch=e.addPatch;exports.apply=e.apply;exports.applyHMRChanges=e.applyHMRChanges;exports.applyPrototypeExtensions=e.applyPrototypeExtensions;exports.beginListenDestroy=e.beginListenDestroy;exports.beginListenInstantiate=e.beginListenInstantiate;exports.binaryIdentifierCasts=e.binaryIdentifierCasts;exports.build_scene_functions=e.build_scene_functions;exports.builtinComponentKeyName=e.builtinComponentKeyName;exports.calculateProgress01=e.calculateProgress01;exports.clearBalloonMessages=e.clearMessages;exports.clearOverlayMessages=e.clearMessages;exports.colorSerializer=e.colorSerializer;exports.compareAssociation=e.compareAssociation;exports.componentSerializer=e.componentSerializer;exports.copyTexture=e.copyTexture;exports.createMotion=e.createMotion;exports.debugNet=e.debugNet;exports.debugOwner=e.debugOwner;exports.decompressGpuTexture=e.decompressGpuTexture;exports.deepClone=e.deepClone;exports.delay=e.delay;exports.delayForFrames=e.delayForFrames;exports.deserializeObject=e.deserializeObject;exports.destroy=e.destroy;exports.destroyComponentInstance=e.destroyComponentInstance;exports.determineMimeTypeFromExtension=e.determineMimeTypeFromExtension;exports.disposeObjectResources=e.disposeObjectResources;exports.disposeStream=e.disposeStream;exports.editorGuidKeyName=e.editorGuidKeyName;exports.enableSpatialConsole=e.enableSpatialConsole;exports.euler=e.euler;exports.eventListSerializer=e.eventListSerializer;exports.exportAsGLTF=e.exportAsGLTF;exports.findByGuid=e.findByGuid;exports.findObjectOfType=e.findObjectOfType;exports.findObjectsOfType=e.findObjectsOfType;exports.findResourceUsers=e.findResourceUsers;exports.fitObjectIntoVolume=e.fitObjectIntoVolume;exports.foreachComponent=e.foreachComponent;exports.foreachComponentEnumerator=e.foreachComponentEnumerator;exports.forward=e.forward;exports.generateQRCode=e.generateQRCode;exports.generateSeed=e.generateSeed;exports.getBoundingBox=e.getBoundingBox;exports.getCameraController=e.getCameraController;exports.getComponent=e.getComponent;exports.getComponentInChildren=e.getComponentInChildren;exports.getComponentInParent=e.getComponentInParent;exports.getComponents=e.getComponents;exports.getComponentsInChildren=e.getComponentsInChildren;exports.getComponentsInParent=e.getComponentsInParent;exports.getFormattedDate=e.getFormattedDate;exports.getIconElement=e.getIconElement;exports.getIconTexture=e.getIconTexture;exports.getLoader=e.getLoader;exports.getOrAddComponent=e.getOrAddComponent;exports.getParam=e.getParam;exports.getParentHierarchyPath=e.getParentHierarchyPath;exports.getPath=e.getPath;exports.getPeerOptions=e.getPeerOptions;exports.getPeerjsInstance=e.getPeerjsInstance;exports.getResourceUserCount=e.getResourceUserCount;exports.getTempColor=e.getTempColor;exports.getTempQuaternion=e.getTempQuaternion;exports.getTempVector=e.getTempVector;exports.getUrlParams=e.getUrlParams;exports.getVisibleInCustomShadowRendering=e.getVisibleInCustomShadowRendering;exports.getWorldDirection=e.getWorldDirection;exports.getWorldEuler=e.getWorldEuler;exports.getWorldPosition=e.getWorldPosition;exports.getWorldQuaternion=e.getWorldQuaternion;exports.getWorldRotation=e.getWorldRotation;exports.getWorldScale=e.getWorldScale;exports.hasCommercialLicense=e.hasCommercialLicense;exports.hasIndieLicense=e.hasIndieLicense;exports.hasPointerEventComponent=e.hasPointerEventComponent;exports.hasProLicense=e.hasProLicense;exports.hideDebugConsole=e.hideDebugConsole;exports.imageToCanvas=e.imageToCanvas;exports.instantiate=e.instantiate;exports.invokeLoadedImportPluginHooks=e.invokeLoadedImportPluginHooks;exports.invokeXRSessionEnd=e.invokeXRSessionEnd;exports.invokeXRSessionStart=e.invokeXRSessionStart;exports.isActiveInHierarchy=e.isActiveInHierarchy;exports.isActiveSelf=e.isActiveSelf;exports.isAndroidDevice=e.isAndroidDevice;exports.isAnimationAction=e.isAnimationAction;exports.isComponent=e.isComponent;exports.isDebugMode=e.isDebugMode;exports.isDesktop=e.isDesktop;exports.isDestroyed=e.isDestroyed;exports.isDevEnvironment=e.isDevEnvironment;exports.isDisposed=e.isDisposed;exports.isExporting=e.isExporting;exports.isGLTFModel=e.isGLTFModel;exports.isHostedOnGlitch=e.isHostedOnGlitch;exports.isHotReloadEnabled=e.isHotReloadEnabled;exports.isHotReloading=e.isHotReloading;exports.isIPad=e.isIPad;exports.isIconElement=e.isIconElement;exports.isLocalNetwork=e.isLocalNetwork;exports.isMacOS=e.isMacOS;exports.isMobileDevice=e.isMobileDevice;exports.isMozillaXR=e.isMozillaXR;exports.isQuest=e.isQuest;exports.isResourceTrackingEnabled=e.isResourceTrackingEnabled;exports.isSafari=e.isSafari;exports.isUsingInstancing=e.isUsingInstancing;exports.isiOS=e.isiOS;exports.isiPad=e.isiPad;exports.loadAsset=e.loadAsset;exports.loadSync=e.loadSync;exports.logHierarchy=e.logHierarchy;exports.lookAtInverse=e.lookAtInverse;exports.lookAtObject=e.lookAtObject;exports.lookAtScreenPoint=e.lookAtScreenPoint;exports.makeId=e.makeId;exports.makeIdFromRandomWords=e.makeIdFromRandomWords;exports.makeNameSafeForUSD=e.makeNameSafe;exports.markAsInstancedRendered=e.markAsInstancedRendered;exports.microphonePermissionsGranted=e.microphonePermissionsGranted;exports.nameof=e.nameof;exports.nameofFactory=e.nameofFactory;exports.objectSerializer=e.objectSerializer;exports.offXRSessionEnd=e.offXRSessionEnd;exports.offXRSessionStart=e.offXRSessionStart;exports.onAfterRender=e.onAfterRender;exports.onBeforeRender=e.onBeforeRender;exports.onClear=e.onClear;exports.onDestroy=e.onDestroy;exports.onInitialized=e.onInitialized;exports.onStart=e.onStart;exports.onUpdate=e.onUpdate;exports.onXRSessionEnd=e.onXRSessionEnd;exports.onXRSessionStart=e.onXRSessionStart;exports.parseSync=e.parseSync;exports.placeOnSurface=e.placeOnSurface;exports.postprocessFBXMaterials=e.postprocessFBXMaterials;exports.prefix=e.prefix;exports.pushState=e.pushState;exports.randomNumber=e.randomNumber;exports.registerBinaryType=e.registerBinaryType;exports.registerComponent=e.registerComponent;exports.registerComponentExtension=e.registerComponentExtension;exports.registerCustomEffectType=e.registerCustomEffectType;exports.registerExportExtensions=e.registerExportExtensions;exports.registerExtensions=e.registerExtensions;exports.registerHotReloadType=e.registerHotReloadType;exports.registerLoader=e.registerLoader;exports.registerPrefabProvider=e.registerPrefabProvider;exports.registerPrototypeExtensions=e.registerPrototypeExtensions;exports.registerType=e.registerType;exports.relativePathPrefix=e.relativePathPrefix;exports.removeAttributeChangeCallback=e.removeAttributeChangeCallback;exports.removeComponent=e.removeComponent;exports.removeCustomImportExtensionType=e.removeCustomImportExtensionType;exports.removePatch=e.removePatch;exports.resolveUrl=e.resolveUrl;exports.sanitizeString=e.sanitizeString;exports.saveImage=e.saveImage;exports.screenshot=e.screenshot;exports.screenshot2=e.screenshot2;exports.sendDestroyed=e.sendDestroyed;exports.serializable=e.serializable;exports.serializeObject=e.serializeObject;exports.serializeable=e.serializeable;exports.setActive=e.setActive;exports.setAllowBalloonMessages=e.setAllowBalloonMessages;exports.setAllowOverlayMessages=e.setAllowOverlayMessages;exports.setAutoFitEnabled=e.setAutoFitEnabled;exports.setCameraController=e.setCameraController;exports.setDestroyed=e.setDestroyed;exports.setDevEnvironment=e.setDevEnvironment;exports.setDisposable=e.setDisposable;exports.setDontDestroy=e.setDontDestroy;exports.setOrAddParamsToUrl=e.setOrAddParamsToUrl;exports.setParam=e.setParam;exports.setParamWithoutReload=e.setParamWithoutReload;exports.setPeerOptions=e.setPeerOptions;exports.setResourceTrackingEnabled=e.setResourceTrackingEnabled;exports.setState=e.setState;exports.setVisibleInCustomShadowRendering=e.setVisibleInCustomShadowRendering;exports.setWorldEuler=e.setWorldEuler;exports.setWorldPosition=e.setWorldPosition;exports.setWorldPositionXYZ=e.setWorldPositionXYZ;exports.setWorldQuaternion=e.setWorldQuaternion;exports.setWorldQuaternionXYZW=e.setWorldQuaternionXYZW;exports.setWorldRotation=e.setWorldRotation;exports.setWorldRotationXYZ=e.setWorldRotationXYZ;exports.setWorldScale=e.setWorldScale;exports.showBalloonError=e.showBalloonError;exports.showBalloonMessage=e.showBalloonMessage;exports.showBalloonWarning=e.showBalloonWarning;exports.showDebugConsole=e.showDebugConsole;exports.slerp=e.slerp;exports.syncDestroy=e.syncDestroy;exports.syncField=e.syncField;exports.syncInstantiate=e.syncInstantiate;exports.textureToCanvas=e.textureToCanvas;exports.tryCastBinary=e.tryCastBinary;exports.tryDetermineMimetypeFromBinary=e.tryDetermineMimetypeFromBinary;exports.tryDetermineMimetypeFromURL=e.tryDetermineMimetypeFromURL;exports.tryFindObject=e.tryFindObject;exports.tryGetGuid=e.tryGetGuid;exports.unregisterHotReloadType=e.unregisterHotReloadType;exports.unwatchWrite=e.unwatchWrite;exports.useForAutoFit=e.useForAutoFit;exports.validate=e.validate;exports.watchWrite=e.watchWrite;exports.NEEDLE_progressive=i.NEEDLE_progressive;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@needle-tools/engine",
|
|
3
|
-
"version": "4.8.6
|
|
3
|
+
"version": "4.8.6",
|
|
4
4
|
"description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.",
|
|
5
5
|
"main": "dist/needle-engine.min.js",
|
|
6
6
|
"exports": {
|
|
@@ -167,4 +167,4 @@
|
|
|
167
167
|
"module": "lib/needle-engine.js",
|
|
168
168
|
"typings": "lib/needle-engine.d.ts",
|
|
169
169
|
"types": "lib/needle-engine.d.ts"
|
|
170
|
-
}
|
|
170
|
+
}
|