@quick-threejs/reactive 0.1.22 → 0.1.24
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/app.module-Da11YIUG.js +29 -0
- package/dist/app.module-Dg_0i25D.mjs +2640 -0
- package/dist/main.js +7 -7017
- package/dist/main.mjs +2834 -0
- package/dist/worker.js +3 -0
- package/dist/worker.mjs +318 -0
- package/package.json +12 -17
- package/dist/main.umd.cjs +0 -68
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";var sn=Object.defineProperty;var an=(t,e,n)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var h=(t,e,n)=>an(t,typeof e!="symbol"?e+"":e,n);const z=require("rxjs"),ln=require("@quick-threejs/utils"),f=require("three");var at=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function hn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var lt={};/*! *****************************************************************************
|
|
2
|
+
Copyright (C) Microsoft. All rights reserved.
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
4
|
+
this file except in compliance with the License. You may obtain a copy of the
|
|
5
|
+
License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
|
|
7
|
+
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
8
|
+
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
|
9
|
+
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
|
10
|
+
MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
11
|
+
|
|
12
|
+
See the Apache Version 2.0 License for specific language governing permissions
|
|
13
|
+
and limitations under the License.
|
|
14
|
+
***************************************************************************** */var ht;function cn(){if(ht)return lt;ht=1;var t;return function(e){(function(n){var r=typeof globalThis=="object"?globalThis:typeof at=="object"?at:typeof self=="object"?self:typeof this=="object"?this:g(),i=o(e);typeof r.Reflect<"u"&&(i=o(r.Reflect,i)),n(i,r),typeof r.Reflect>"u"&&(r.Reflect=e);function o(y,D){return function(N,B){Object.defineProperty(y,N,{configurable:!0,writable:!0,value:B}),D&&D(N,B)}}function a(){try{return Function("return this;")()}catch{}}function v(){try{return(0,eval)("(function() { return this; })()")}catch{}}function g(){return a()||v()}})(function(n,r){var i=Object.prototype.hasOwnProperty,o=typeof Symbol=="function",a=o&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",v=o&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",g=typeof Object.create=="function",y={__proto__:[]}instanceof Array,D=!g&&!y,N={create:g?function(){return be(Object.create(null))}:y?function(){return be({__proto__:null})}:function(){return be({})},has:D?function(s,l){return i.call(s,l)}:function(s,l){return l in s},get:D?function(s,l){return i.call(s,l)?s[l]:void 0}:function(s,l){return s[l]}},B=Object.getPrototypeOf(Function),k=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:en(),de=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:tn(),me=typeof WeakMap=="function"?WeakMap:nn(),F=o?Symbol.for("@reflect-metadata:registry"):void 0,ne=kt(),Fe=Qt(ne);function xt(s,l,c,u){if(w(c)){if(!Je(s))throw new TypeError;if(!et(l))throw new TypeError;return Zt(s,l)}else{if(!Je(s))throw new TypeError;if(!S(l))throw new TypeError;if(!S(u)&&!w(u)&&!G(u))throw new TypeError;return G(u)&&(u=void 0),c=L(c),Ft(s,l,c,u)}}n("decorate",xt);function At(s,l){function c(u,b){if(!S(u))throw new TypeError;if(!w(b)&&!Kt(b))throw new TypeError;qe(s,l,u,b)}return c}n("metadata",At);function It(s,l,c,u){if(!S(c))throw new TypeError;return w(u)||(u=L(u)),qe(s,l,c,u)}n("defineMetadata",It);function zt(s,l,c){if(!S(l))throw new TypeError;return w(c)||(c=L(c)),Ge(s,l,c)}n("hasMetadata",zt);function Nt(s,l,c){if(!S(l))throw new TypeError;return w(c)||(c=L(c)),_e(s,l,c)}n("hasOwnMetadata",Nt);function Ht(s,l,c){if(!S(l))throw new TypeError;return w(c)||(c=L(c)),We(s,l,c)}n("getMetadata",Ht);function Lt(s,l,c){if(!S(l))throw new TypeError;return w(c)||(c=L(c)),Xe(s,l,c)}n("getOwnMetadata",Lt);function Ut(s,l){if(!S(s))throw new TypeError;return w(l)||(l=L(l)),Ke(s,l)}n("getMetadataKeys",Ut);function Vt(s,l){if(!S(s))throw new TypeError;return w(l)||(l=L(l)),Be(s,l)}n("getOwnMetadataKeys",Vt);function Yt(s,l,c){if(!S(l))throw new TypeError;if(w(c)||(c=L(c)),!S(l))throw new TypeError;w(c)||(c=L(c));var u=Q(l,c,!1);return w(u)?!1:u.OrdinaryDeleteMetadata(s,l,c)}n("deleteMetadata",Yt);function Zt(s,l){for(var c=s.length-1;c>=0;--c){var u=s[c],b=u(l);if(!w(b)&&!G(b)){if(!et(b))throw new TypeError;l=b}}return l}function Ft(s,l,c,u){for(var b=s.length-1;b>=0;--b){var x=s[b],R=x(l,c,u);if(!w(R)&&!G(R)){if(!S(R))throw new TypeError;u=R}}return u}function Ge(s,l,c){var u=_e(s,l,c);if(u)return!0;var b=ve(l);return G(b)?!1:Ge(s,b,c)}function _e(s,l,c){var u=Q(l,c,!1);return w(u)?!1:Qe(u.OrdinaryHasOwnMetadata(s,l,c))}function We(s,l,c){var u=_e(s,l,c);if(u)return Xe(s,l,c);var b=ve(l);if(!G(b))return We(s,b,c)}function Xe(s,l,c){var u=Q(l,c,!1);if(!w(u))return u.OrdinaryGetOwnMetadata(s,l,c)}function qe(s,l,c,u){var b=Q(c,u,!0);b.OrdinaryDefineOwnMetadata(s,l,c,u)}function Ke(s,l){var c=Be(s,l),u=ve(s);if(u===null)return c;var b=Ke(u,l);if(b.length<=0)return c;if(c.length<=0)return b;for(var x=new de,R=[],C=0,p=c;C<p.length;C++){var d=p[C],m=x.has(d);m||(x.add(d),R.push(d))}for(var _=0,O=b;_<O.length;_++){var d=O[_],m=x.has(d);m||(x.add(d),R.push(d))}return R}function Be(s,l){var c=Q(s,l,!1);return c?c.OrdinaryOwnMetadataKeys(s,l):[]}function ke(s){if(s===null)return 1;switch(typeof s){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return s===null?1:6;default:return 6}}function w(s){return s===void 0}function G(s){return s===null}function Gt(s){return typeof s=="symbol"}function S(s){return typeof s=="object"?s!==null:typeof s=="function"}function Wt(s,l){switch(ke(s)){case 0:return s;case 1:return s;case 2:return s;case 3:return s;case 4:return s;case 5:return s}var c="string",u=tt(s,a);if(u!==void 0){var b=u.call(s,c);if(S(b))throw new TypeError;return b}return Xt(s)}function Xt(s,l){var c,u;{var b=s.toString;if(ie(b)){var u=b.call(s);if(!S(u))return u}var c=s.valueOf;if(ie(c)){var u=c.call(s);if(!S(u))return u}}throw new TypeError}function Qe(s){return!!s}function qt(s){return""+s}function L(s){var l=Wt(s);return Gt(l)?l:qt(l)}function Je(s){return Array.isArray?Array.isArray(s):s instanceof Object?s instanceof Array:Object.prototype.toString.call(s)==="[object Array]"}function ie(s){return typeof s=="function"}function et(s){return typeof s=="function"}function Kt(s){switch(ke(s)){case 3:return!0;case 4:return!0;default:return!1}}function ye(s,l){return s===l||s!==s&&l!==l}function tt(s,l){var c=s[l];if(c!=null){if(!ie(c))throw new TypeError;return c}}function nt(s){var l=tt(s,v);if(!ie(l))throw new TypeError;var c=l.call(s);if(!S(c))throw new TypeError;return c}function it(s){return s.value}function rt(s){var l=s.next();return l.done?!1:l}function ot(s){var l=s.return;l&&l.call(s)}function ve(s){var l=Object.getPrototypeOf(s);if(typeof s!="function"||s===B||l!==B)return l;var c=s.prototype,u=c&&Object.getPrototypeOf(c);if(u==null||u===Object.prototype)return l;var b=u.constructor;return typeof b!="function"||b===s?l:b}function Bt(){var s;!w(F)&&typeof r.Reflect<"u"&&!(F in r.Reflect)&&typeof r.Reflect.defineMetadata=="function"&&(s=Jt(r.Reflect));var l,c,u,b=new me,x={registerProvider:R,getProvider:p,setProvider:m};return x;function R(_){if(!Object.isExtensible(x))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case s===_:break;case w(l):l=_;break;case l===_:break;case w(c):c=_;break;case c===_:break;default:u===void 0&&(u=new de),u.add(_);break}}function C(_,O){if(!w(l)){if(l.isProviderFor(_,O))return l;if(!w(c)){if(c.isProviderFor(_,O))return l;if(!w(u))for(var $=nt(u);;){var T=rt($);if(!T)return;var H=it(T);if(H.isProviderFor(_,O))return ot($),H}}}if(!w(s)&&s.isProviderFor(_,O))return s}function p(_,O){var $=b.get(_),T;return w($)||(T=$.get(O)),w(T)&&(T=C(_,O),w(T)||(w($)&&($=new k,b.set(_,$)),$.set(O,T))),T}function d(_){if(w(_))throw new TypeError;return l===_||c===_||!w(u)&&u.has(_)}function m(_,O,$){if(!d($))throw new Error("Metadata provider not registered.");var T=p(_,O);if(T!==$){if(!w(T))return!1;var H=b.get(_);w(H)&&(H=new k,b.set(_,H)),H.set(O,$)}return!0}}function kt(){var s;return!w(F)&&S(r.Reflect)&&Object.isExtensible(r.Reflect)&&(s=r.Reflect[F]),w(s)&&(s=Bt()),!w(F)&&S(r.Reflect)&&Object.isExtensible(r.Reflect)&&Object.defineProperty(r.Reflect,F,{enumerable:!1,configurable:!1,writable:!1,value:s}),s}function Qt(s){var l=new me,c={isProviderFor:function(d,m){var _=l.get(d);return w(_)?!1:_.has(m)},OrdinaryDefineOwnMetadata:R,OrdinaryHasOwnMetadata:b,OrdinaryGetOwnMetadata:x,OrdinaryOwnMetadataKeys:C,OrdinaryDeleteMetadata:p};return ne.registerProvider(c),c;function u(d,m,_){var O=l.get(d),$=!1;if(w(O)){if(!_)return;O=new k,l.set(d,O),$=!0}var T=O.get(m);if(w(T)){if(!_)return;if(T=new k,O.set(m,T),!s.setProvider(d,m,c))throw O.delete(m),$&&l.delete(d),new Error("Wrong provider for target.")}return T}function b(d,m,_){var O=u(m,_,!1);return w(O)?!1:Qe(O.has(d))}function x(d,m,_){var O=u(m,_,!1);if(!w(O))return O.get(d)}function R(d,m,_,O){var $=u(_,O,!0);$.set(d,m)}function C(d,m){var _=[],O=u(d,m,!1);if(w(O))return _;for(var $=O.keys(),T=nt($),H=0;;){var st=rt(T);if(!st)return _.length=H,_;var rn=it(st);try{_[H]=rn}catch(on){try{ot(T)}finally{throw on}}H++}}function p(d,m,_){var O=u(m,_,!1);if(w(O)||!O.delete(d))return!1;if(O.size===0){var $=l.get(m);w($)||($.delete(_),$.size===0&&l.delete($))}return!0}}function Jt(s){var l=s.defineMetadata,c=s.hasOwnMetadata,u=s.getOwnMetadata,b=s.getOwnMetadataKeys,x=s.deleteMetadata,R=new me,C={isProviderFor:function(p,d){var m=R.get(p);return!w(m)&&m.has(d)?!0:b(p,d).length?(w(m)&&(m=new de,R.set(p,m)),m.add(d),!0):!1},OrdinaryDefineOwnMetadata:l,OrdinaryHasOwnMetadata:c,OrdinaryGetOwnMetadata:u,OrdinaryOwnMetadataKeys:b,OrdinaryDeleteMetadata:x};return C}function Q(s,l,c){var u=ne.getProvider(s,l);if(!w(u))return u;if(c){if(ne.setProvider(s,l,Fe))return Fe;throw new Error("Illegal state.")}}function en(){var s={},l=[],c=function(){function C(p,d,m){this._index=0,this._keys=p,this._values=d,this._selector=m}return C.prototype["@@iterator"]=function(){return this},C.prototype[v]=function(){return this},C.prototype.next=function(){var p=this._index;if(p>=0&&p<this._keys.length){var d=this._selector(this._keys[p],this._values[p]);return p+1>=this._keys.length?(this._index=-1,this._keys=l,this._values=l):this._index++,{value:d,done:!1}}return{value:void 0,done:!0}},C.prototype.throw=function(p){throw this._index>=0&&(this._index=-1,this._keys=l,this._values=l),p},C.prototype.return=function(p){return this._index>=0&&(this._index=-1,this._keys=l,this._values=l),{value:p,done:!0}},C}(),u=function(){function C(){this._keys=[],this._values=[],this._cacheKey=s,this._cacheIndex=-2}return Object.defineProperty(C.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),C.prototype.has=function(p){return this._find(p,!1)>=0},C.prototype.get=function(p){var d=this._find(p,!1);return d>=0?this._values[d]:void 0},C.prototype.set=function(p,d){var m=this._find(p,!0);return this._values[m]=d,this},C.prototype.delete=function(p){var d=this._find(p,!1);if(d>=0){for(var m=this._keys.length,_=d+1;_<m;_++)this._keys[_-1]=this._keys[_],this._values[_-1]=this._values[_];return this._keys.length--,this._values.length--,ye(p,this._cacheKey)&&(this._cacheKey=s,this._cacheIndex=-2),!0}return!1},C.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=s,this._cacheIndex=-2},C.prototype.keys=function(){return new c(this._keys,this._values,b)},C.prototype.values=function(){return new c(this._keys,this._values,x)},C.prototype.entries=function(){return new c(this._keys,this._values,R)},C.prototype["@@iterator"]=function(){return this.entries()},C.prototype[v]=function(){return this.entries()},C.prototype._find=function(p,d){if(!ye(this._cacheKey,p)){this._cacheIndex=-1;for(var m=0;m<this._keys.length;m++)if(ye(this._keys[m],p)){this._cacheIndex=m;break}}return this._cacheIndex<0&&d&&(this._cacheIndex=this._keys.length,this._keys.push(p),this._values.push(void 0)),this._cacheIndex},C}();return u;function b(C,p){return C}function x(C,p){return p}function R(C,p){return[C,p]}}function tn(){var s=function(){function l(){this._map=new k}return Object.defineProperty(l.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),l.prototype.has=function(c){return this._map.has(c)},l.prototype.add=function(c){return this._map.set(c,c),this},l.prototype.delete=function(c){return this._map.delete(c)},l.prototype.clear=function(){this._map.clear()},l.prototype.keys=function(){return this._map.keys()},l.prototype.values=function(){return this._map.keys()},l.prototype.entries=function(){return this._map.entries()},l.prototype["@@iterator"]=function(){return this.keys()},l.prototype[v]=function(){return this.keys()},l}();return s}function nn(){var s=16,l=N.create(),c=u();return function(){function p(){this._key=u()}return p.prototype.has=function(d){var m=b(d,!1);return m!==void 0?N.has(m,this._key):!1},p.prototype.get=function(d){var m=b(d,!1);return m!==void 0?N.get(m,this._key):void 0},p.prototype.set=function(d,m){var _=b(d,!0);return _[this._key]=m,this},p.prototype.delete=function(d){var m=b(d,!1);return m!==void 0?delete m[this._key]:!1},p.prototype.clear=function(){this._key=u()},p}();function u(){var p;do p="@@WeakMap@@"+C();while(N.has(l,p));return l[p]=!0,p}function b(p,d){if(!i.call(p,c)){if(!d)return;Object.defineProperty(p,c,{value:N.create()})}return p[c]}function x(p,d){for(var m=0;m<d;++m)p[m]=Math.random()*255|0;return p}function R(p){if(typeof Uint8Array=="function"){var d=new Uint8Array(p);return typeof crypto<"u"?crypto.getRandomValues(d):typeof msCrypto<"u"?msCrypto.getRandomValues(d):x(d,p),d}return x(new Array(p),p)}function C(){var p=R(s);p[6]=p[6]&79|64,p[8]=p[8]&191|128;for(var d="",m=0;m<s;++m){var _=p[m];(m===4||m===6||m===8)&&(d+="-"),_<16&&(d+="0"),d+=_.toString(16).toLowerCase()}return d}}function be(s){return s.__=void 0,delete s.__,s}})}(t||(t={})),lt}cn();var Ee;(function(t){t[t.Transient=0]="Transient",t[t.Singleton=1]="Singleton",t[t.ResolutionScoped=2]="ResolutionScoped",t[t.ContainerScoped=3]="ContainerScoped"})(Ee||(Ee={}));const A=Ee;/*! *****************************************************************************
|
|
15
|
+
Copyright (c) Microsoft Corporation.
|
|
16
|
+
|
|
17
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
18
|
+
purpose with or without fee is hereby granted.
|
|
19
|
+
|
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
21
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
22
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
23
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
24
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
25
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
26
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
27
|
+
***************************************************************************** */var $e=function(t,e){return $e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)r.hasOwnProperty(i)&&(n[i]=r[i])},$e(t,e)};function Le(t,e){$e(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}function un(t,e,n,r){function i(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function v(D){try{y(r.next(D))}catch(N){a(N)}}function g(D){try{y(r.throw(D))}catch(N){a(N)}}function y(D){D.done?o(D.value):i(D.value).then(v,g)}y((r=r.apply(t,[])).next())})}function pn(t,e){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,a;return a={next:v(0),throw:v(1),return:v(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function v(y){return function(D){return g([y,D])}}function g(y){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,i&&(o=y[0]&2?i.return:y[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,y[1])).done)return o;switch(i=0,o&&(y=[y[0]&2,o.value]),y[0]){case 0:case 1:o=y;break;case 4:return n.label++,{value:y[1],done:!1};case 5:n.label++,i=y[1],y=[0];continue;case 7:y=n.ops.pop(),n.trys.pop();continue;default:if(o=n.trys,!(o=o.length>0&&o[o.length-1])&&(y[0]===6||y[0]===2)){n=0;continue}if(y[0]===3&&(!o||y[1]>o[0]&&y[1]<o[3])){n.label=y[1];break}if(y[0]===6&&n.label<o[1]){n.label=o[1],o=y;break}if(o&&n.label<o[2]){n.label=o[2],n.ops.push(y);break}o[2]&&n.ops.pop(),n.trys.pop();continue}y=e.call(t,n)}catch(D){y=[6,D],i=0}finally{r=o=0}if(y[0]&5)throw y[1];return{value:y[0]?y[1]:void 0,done:!0}}}function re(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function he(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,o=[],a;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(v){a={error:v}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return o}function V(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(he(arguments[e]));return t}var Me="injectionTokens";function fn(t){var e=Reflect.getMetadata("design:paramtypes",t)||[],n=Reflect.getOwnMetadata(Me,t)||{};return Object.keys(n).forEach(function(r){e[+r]=n[r]}),e}function dn(t,e){return function(n,r,i){var o=Reflect.getOwnMetadata(Me,n)||{};o[i]=t,Reflect.defineMetadata(Me,o,n)}}function Pt(t){return!!t.useClass}function De(t){return!!t.useFactory}var Ct=function(){function t(e){this.wrap=e,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}return t.prototype.createProxy=function(e){var n=this,r={},i=!1,o,a=function(){return i||(o=e(n.wrap()),i=!0),o};return new Proxy(r,this.createHandler(a))},t.prototype.createHandler=function(e){var n={},r=function(i){n[i]=function(){for(var o=[],a=0;a<arguments.length;a++)o[a]=arguments[a];o[0]=e();var v=Reflect[i];return v.apply(void 0,V(o))}};return this.reflectMethods.forEach(r),n},t}();function W(t){return typeof t=="string"||typeof t=="symbol"}function mn(t){return typeof t=="object"&&"token"in t&&"multiple"in t}function ct(t){return typeof t=="object"&&"token"in t&&"transform"in t}function _n(t){return typeof t=="function"||t instanceof Ct}function ae(t){return!!t.useToken}function le(t){return t.useValue!=null}function yn(t){return Pt(t)||le(t)||ae(t)||De(t)}var Ue=function(){function t(){this._registryMap=new Map}return t.prototype.entries=function(){return this._registryMap.entries()},t.prototype.getAll=function(e){return this.ensure(e),this._registryMap.get(e)},t.prototype.get=function(e){this.ensure(e);var n=this._registryMap.get(e);return n[n.length-1]||null},t.prototype.set=function(e,n){this.ensure(e),this._registryMap.get(e).push(n)},t.prototype.setAll=function(e,n){this._registryMap.set(e,n)},t.prototype.has=function(e){return this.ensure(e),this._registryMap.get(e).length>0},t.prototype.clear=function(){this._registryMap.clear()},t.prototype.ensure=function(e){this._registryMap.has(e)||this._registryMap.set(e,[])},t}(),vn=function(t){Le(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e}(Ue),ut=function(){function t(){this.scopedResolutions=new Map}return t}();function bn(t,e){if(t===null)return"at position #"+e;var n=t.split(",")[e].trim();return'"'+n+'" at position #'+e}function wn(t,e,n){return n===void 0&&(n=" "),V([t],e.message.split(`
|
|
28
|
+
`).map(function(r){return n+r})).join(`
|
|
29
|
+
`)}function gn(t,e,n){var r=he(t.toString().match(/constructor\(([\w, ]+)\)/)||[],2),i=r[1],o=i===void 0?null:i,a=bn(o,e);return wn("Cannot inject the dependency "+a+' of "'+t.name+'" constructor. Reason:',n)}function Pn(t){if(typeof t.dispose!="function")return!1;var e=t.dispose;return!(e.length>0)}var Cn=function(t){Le(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e}(Ue),On=function(t){Le(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e}(Ue),En=function(){function t(){this.preResolution=new Cn,this.postResolution=new On}return t}(),Ot=new Map,$n=function(){function t(e){this.parent=e,this._registry=new vn,this.interceptors=new En,this.disposed=!1,this.disposables=new Set}return t.prototype.register=function(e,n,r){r===void 0&&(r={lifecycle:A.Transient}),this.ensureNotDisposed();var i;if(yn(n)?i=n:i={useClass:n},ae(i))for(var o=[e],a=i;a!=null;){var v=a.useToken;if(o.includes(v))throw new Error("Token registration cycle detected! "+V(o,[v]).join(" -> "));o.push(v);var g=this._registry.get(v);g&&ae(g.provider)?a=g.provider:a=null}if((r.lifecycle===A.Singleton||r.lifecycle==A.ContainerScoped||r.lifecycle==A.ResolutionScoped)&&(le(i)||De(i)))throw new Error('Cannot use lifecycle "'+A[r.lifecycle]+'" with ValueProviders or FactoryProviders');return this._registry.set(e,{provider:i,options:r}),this},t.prototype.registerType=function(e,n){return this.ensureNotDisposed(),W(n)?this.register(e,{useToken:n}):this.register(e,{useClass:n})},t.prototype.registerInstance=function(e,n){return this.ensureNotDisposed(),this.register(e,{useValue:n})},t.prototype.registerSingleton=function(e,n){if(this.ensureNotDisposed(),W(e)){if(W(n))return this.register(e,{useToken:n},{lifecycle:A.Singleton});if(n)return this.register(e,{useClass:n},{lifecycle:A.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}var r=e;return n&&!W(n)&&(r=n),this.register(e,{useClass:r},{lifecycle:A.Singleton})},t.prototype.resolve=function(e,n){n===void 0&&(n=new ut),this.ensureNotDisposed();var r=this.getRegistration(e);if(!r&&W(e))throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"');if(this.executePreResolutionInterceptor(e,"Single"),r){var i=this.resolveRegistration(r,n);return this.executePostResolutionInterceptor(e,i,"Single"),i}if(_n(e)){var i=this.construct(e,n);return this.executePostResolutionInterceptor(e,i,"Single"),i}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")},t.prototype.executePreResolutionInterceptor=function(e,n){var r,i;if(this.interceptors.preResolution.has(e)){var o=[];try{for(var a=re(this.interceptors.preResolution.getAll(e)),v=a.next();!v.done;v=a.next()){var g=v.value;g.options.frequency!="Once"&&o.push(g),g.callback(e,n)}}catch(y){r={error:y}}finally{try{v&&!v.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}this.interceptors.preResolution.setAll(e,o)}},t.prototype.executePostResolutionInterceptor=function(e,n,r){var i,o;if(this.interceptors.postResolution.has(e)){var a=[];try{for(var v=re(this.interceptors.postResolution.getAll(e)),g=v.next();!g.done;g=v.next()){var y=g.value;y.options.frequency!="Once"&&a.push(y),y.callback(e,n,r)}}catch(D){i={error:D}}finally{try{g&&!g.done&&(o=v.return)&&o.call(v)}finally{if(i)throw i.error}}this.interceptors.postResolution.setAll(e,a)}},t.prototype.resolveRegistration=function(e,n){if(this.ensureNotDisposed(),e.options.lifecycle===A.ResolutionScoped&&n.scopedResolutions.has(e))return n.scopedResolutions.get(e);var r=e.options.lifecycle===A.Singleton,i=e.options.lifecycle===A.ContainerScoped,o=r||i,a;return le(e.provider)?a=e.provider.useValue:ae(e.provider)?a=o?e.instance||(e.instance=this.resolve(e.provider.useToken,n)):this.resolve(e.provider.useToken,n):Pt(e.provider)?a=o?e.instance||(e.instance=this.construct(e.provider.useClass,n)):this.construct(e.provider.useClass,n):De(e.provider)?a=e.provider.useFactory(this):a=this.construct(e.provider,n),e.options.lifecycle===A.ResolutionScoped&&n.scopedResolutions.set(e,a),a},t.prototype.resolveAll=function(e,n){var r=this;n===void 0&&(n=new ut),this.ensureNotDisposed();var i=this.getAllRegistrations(e);if(!i&&W(e))throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"');if(this.executePreResolutionInterceptor(e,"All"),i){var o=i.map(function(v){return r.resolveRegistration(v,n)});return this.executePostResolutionInterceptor(e,o,"All"),o}var a=[this.construct(e,n)];return this.executePostResolutionInterceptor(e,a,"All"),a},t.prototype.isRegistered=function(e,n){return n===void 0&&(n=!1),this.ensureNotDisposed(),this._registry.has(e)||n&&(this.parent||!1)&&this.parent.isRegistered(e,!0)},t.prototype.reset=function(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()},t.prototype.clearInstances=function(){var e,n;this.ensureNotDisposed();try{for(var r=re(this._registry.entries()),i=r.next();!i.done;i=r.next()){var o=he(i.value,2),a=o[0],v=o[1];this._registry.setAll(a,v.filter(function(g){return!le(g.provider)}).map(function(g){return g.instance=void 0,g}))}}catch(g){e={error:g}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}},t.prototype.createChildContainer=function(){var e,n;this.ensureNotDisposed();var r=new t(this);try{for(var i=re(this._registry.entries()),o=i.next();!o.done;o=i.next()){var a=he(o.value,2),v=a[0],g=a[1];g.some(function(y){var D=y.options;return D.lifecycle===A.ContainerScoped})&&r._registry.setAll(v,g.map(function(y){return y.options.lifecycle===A.ContainerScoped?{provider:y.provider,options:y.options}:y}))}}catch(y){e={error:y}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}return r},t.prototype.beforeResolution=function(e,n,r){r===void 0&&(r={frequency:"Always"}),this.interceptors.preResolution.set(e,{callback:n,options:r})},t.prototype.afterResolution=function(e,n,r){r===void 0&&(r={frequency:"Always"}),this.interceptors.postResolution.set(e,{callback:n,options:r})},t.prototype.dispose=function(){return un(this,void 0,void 0,function(){var e;return pn(this,function(n){switch(n.label){case 0:return this.disposed=!0,e=[],this.disposables.forEach(function(r){var i=r.dispose();i&&e.push(i)}),[4,Promise.all(e)];case 1:return n.sent(),[2]}})})},t.prototype.getRegistration=function(e){return this.isRegistered(e)?this._registry.get(e):this.parent?this.parent.getRegistration(e):null},t.prototype.getAllRegistrations=function(e){return this.isRegistered(e)?this._registry.getAll(e):this.parent?this.parent.getAllRegistrations(e):null},t.prototype.construct=function(e,n){var r=this;if(e instanceof Ct)return e.createProxy(function(o){return r.resolve(o,n)});var i=function(){var o=Ot.get(e);if(!o||o.length===0){if(e.length===0)return new e;throw new Error('TypeInfo not known for "'+e.name+'"')}var a=o.map(r.resolveParams(n,e));return new(e.bind.apply(e,V([void 0],a)))}();return Pn(i)&&this.disposables.add(i),i},t.prototype.resolveParams=function(e,n){var r=this;return function(i,o){var a,v,g;try{return mn(i)?ct(i)?i.multiple?(a=r.resolve(i.transform)).transform.apply(a,V([r.resolveAll(i.token)],i.transformArgs)):(v=r.resolve(i.transform)).transform.apply(v,V([r.resolve(i.token,e)],i.transformArgs)):i.multiple?r.resolveAll(i.token):r.resolve(i.token,e):ct(i)?(g=r.resolve(i.transform,e)).transform.apply(g,V([r.resolve(i.token,e)],i.transformArgs)):r.resolve(i,e)}catch(y){throw new Error(gn(n,o,y))}}},t.prototype.ensureNotDisposed=function(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")},t}(),Ve=new $n;function P(t){return dn(t)}function Et(){return function(t){Ot.set(t,fn(t))}}function M(){return function(t){Et()(t),Ve.registerSingleton(t)}}if(typeof Reflect>"u"||!Reflect.getMetadata)throw new Error(`tsyringe requires a reflect polyfill. Please add 'import "reflect-metadata"' to the top of your entry point.`);var Mn=Object.defineProperty,Dn=Object.getOwnPropertyDescriptor,Tn=(t,e,n,r)=>{for(var i=r>1?void 0:r?Dn(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Mn(e,n,i),i};let J=class{constructor(){h(this,"proxyReceiver",new ln.ProxyReceiver);h(this,"initialized",!1);h(this,"canvas")}};J=Tn([M()],J);class $t{constructor(){h(this,"contextmenu$$");h(this,"resize$$");h(this,"mousedown$$");h(this,"mousemove$$");h(this,"mouseup$$");h(this,"pointerdown$$");h(this,"pointermove$$");h(this,"pointercancel$$");h(this,"pointerup$$");h(this,"touchstart$$");h(this,"touchmove$$");h(this,"touchend$$");h(this,"wheel$$");h(this,"keydown$$")}}class Mt extends $t{constructor(){super(...arguments);h(this,"contextmenu$");h(this,"resize$");h(this,"mousedown$");h(this,"mousemove$");h(this,"mouseup$");h(this,"pointerdown$");h(this,"pointermove$");h(this,"pointercancel$");h(this,"pointerup$");h(this,"touchstart$");h(this,"touchmove$");h(this,"touchend$");h(this,"wheel$");h(this,"keydown$")}}class Dt extends Mt{constructor(){super(...arguments);h(this,"contextmenu");h(this,"resize");h(this,"mousedown");h(this,"mousemove");h(this,"mouseup");h(this,"pointerdown");h(this,"pointermove");h(this,"pointercancel");h(this,"pointerup");h(this,"touchstart");h(this,"touchmove");h(this,"touchend");h(this,"wheel");h(this,"keydown")}}const Sn=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Ye=["contextmenu","resize","mousedown","mousemove","mouseup","pointerdown","pointermove","pointercancel","pointerup","touchstart","touchmove","touchend","wheel","keydown"];var Rn=Object.defineProperty,jn=Object.getOwnPropertyDescriptor,xn=(t,e,n,r)=>{for(var i=r>1?void 0:r?jn(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Rn(e,n,i),i},An=(t,e)=>(n,r)=>e(n,r,t);let ee=class extends Dt{constructor(e){super();h(this,"lifecycle$$",new z.Subject);h(this,"lifecycle$",this.lifecycle$$.pipe());this.component=e;for(const n of Ye)this[`${n}$$`]=new z.Subject,this[`${n}$`]=this[`${n}$$`].pipe(),this[n]=r=>{this.component.proxyReceiver.handleEvent({...r,type:r.type||n}),this[`${n}$$`].next(r)}}};ee=xn([M(),An(0,P(J))],ee);var In=Object.defineProperty,zn=Object.getOwnPropertyDescriptor,Nn=(t,e,n,r)=>{for(var i=r>1?void 0:r?zn(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&In(e,n,i),i};let ce=class{constructor(){h(this,"clock",new f.Clock);h(this,"frame",1e3/60);h(this,"delta",0);h(this,"deltaRatio",0);h(this,"enabled",!1)}};ce=Nn([M()],ce);var Hn=Object.defineProperty,Ln=Object.getOwnPropertyDescriptor,Un=(t,e,n,r)=>{for(var i=r>1?void 0:r?Ln(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Hn(e,n,i),i};let te=class{constructor(){h(this,"scene",new f.Scene);h(this,"enabled",!0)}};te=Un([M()],te);var Vn=Object.defineProperty,Yn=Object.getOwnPropertyDescriptor,Zn=(t,e,n,r)=>{for(var i=r>1?void 0:r?Yn(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Vn(e,n,i),i};let Y=class{constructor(){h(this,"width",0);h(this,"height",0);h(this,"aspect",0);h(this,"pixelRatio",0);h(this,"frustrum",5);h(this,"enabled",!0)}init(t,e){this.height=Number(t.height??this.height),this.width=Number(t.width??this.width),this.aspect=this.width/this.height,this.enabled=e===void 0?!0:!!e}};Y=Zn([M()],Y);var ue=(t=>(t[t.PERSPECTIVE=0]="PERSPECTIVE",t[t.ORTHOGRAPHIC=1]="ORTHOGRAPHIC",t))(ue||{}),Fn=Object.defineProperty,Gn=Object.getOwnPropertyDescriptor,Wn=(t,e,n,r)=>{for(var i=r>1?void 0:r?Gn(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Fn(e,n,i),i},Xn=(t,e)=>(n,r)=>e(n,r,t);let X=class{constructor(t){h(this,"instance");h(this,"miniCamera");h(this,"enabled",!0);this.sizesComponent=t}set aspectRatio(t){var e;this.instance instanceof f.PerspectiveCamera&&(this.instance.aspect=t),(this.instance instanceof f.PerspectiveCamera||this.instance instanceof f.OrthographicCamera)&&((e=this.instance)==null||e.updateProjectionMatrix())}set quaternion(t){var e;(e=this.instance)==null||e.quaternion.copy(t)}set position(t){var e;(e=this.instance)==null||e.position.copy(t)}set rotation(t){var e;(e=this.instance)==null||e.rotation.copy(t)}initDefaultCamera(t){if(this.removeCamera(),t===ue.PERSPECTIVE||t===void 0){this.instance=new f.PerspectiveCamera(70,this.sizesComponent.width/this.sizesComponent.height,1e-4,100),this.instance.position.z=8;return}t===ue.ORTHOGRAPHIC&&(this.instance=new f.OrthographicCamera(-this.sizesComponent.aspect*this.sizesComponent.frustrum/2,this.sizesComponent.aspect*this.sizesComponent.frustrum/2,this.sizesComponent.frustrum/2,-this.sizesComponent.frustrum/2,-50,50))}setMiniCamera(){this.removeMiniCamera(),this.miniCamera=new f.PerspectiveCamera(75,this.sizesComponent.width/this.sizesComponent.height,.1,500),this.miniCamera.position.z=10,this.miniCamera.position.x=-5}removeCamera(){this.instance instanceof f.Camera&&((this.instance instanceof f.PerspectiveCamera||this.instance instanceof f.OrthographicCamera)&&this.instance.clearViewOffset(),this.instance.clear(),this.instance=void 0)}removeMiniCamera(){this.miniCamera instanceof f.Camera&&(this.miniCamera.clearViewOffset(),this.miniCamera.clear(),this.miniCamera=void 0)}};X=Wn([M(),Xn(0,P(Y))],X);const pt={type:"change"},Ze={type:"start"},Tt={type:"end"},oe=new f.Ray,ft=new f.Plane,qn=Math.cos(70*f.MathUtils.DEG2RAD),j=new f.Vector3,I=2*Math.PI,E={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},we=1e-6;class dt extends f.Controls{constructor(e,n=null){super(e,n),this.state=E.NONE,this.enabled=!0,this.target=new f.Vector3,this.cursor=new f.Vector3,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:f.MOUSE.ROTATE,MIDDLE:f.MOUSE.DOLLY,RIGHT:f.MOUSE.PAN},this.touches={ONE:f.TOUCH.ROTATE,TWO:f.TOUCH.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this._lastPosition=new f.Vector3,this._lastQuaternion=new f.Quaternion,this._lastTargetPosition=new f.Vector3,this._quat=new f.Quaternion().setFromUnitVectors(e.up,new f.Vector3(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new f.Spherical,this._sphericalDelta=new f.Spherical,this._scale=1,this._panOffset=new f.Vector3,this._rotateStart=new f.Vector2,this._rotateEnd=new f.Vector2,this._rotateDelta=new f.Vector2,this._panStart=new f.Vector2,this._panEnd=new f.Vector2,this._panDelta=new f.Vector2,this._dollyStart=new f.Vector2,this._dollyEnd=new f.Vector2,this._dollyDelta=new f.Vector2,this._dollyDirection=new f.Vector3,this._mouse=new f.Vector2,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=Bn.bind(this),this._onPointerDown=Kn.bind(this),this._onPointerUp=kn.bind(this),this._onContextMenu=ri.bind(this),this._onMouseWheel=ei.bind(this),this._onKeyDown=ti.bind(this),this._onTouchStart=ni.bind(this),this._onTouchMove=ii.bind(this),this._onMouseDown=Qn.bind(this),this._onMouseMove=Jn.bind(this),this._interceptControlDown=oi.bind(this),this._interceptControlUp=si.bind(this),this.domElement!==null&&this.connect(),this.update()}connect(){this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointercancel",this._onPointerUp),this.domElement.addEventListener("contextmenu",this._onContextMenu),this.domElement.addEventListener("wheel",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener("keydown",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction="none"}disconnect(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.domElement.removeEventListener("pointercancel",this._onPointerUp),this.domElement.removeEventListener("wheel",this._onMouseWheel),this.domElement.removeEventListener("contextmenu",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener("keydown",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction="auto"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(e){e.addEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=e}stopListenToKeyEvents(){this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(pt),this.update(),this.state=E.NONE}update(e=null){const n=this.object.position;j.copy(n).sub(this.target),j.applyQuaternion(this._quat),this._spherical.setFromVector3(j),this.autoRotate&&this.state===E.NONE&&this._rotateLeft(this._getAutoRotationAngle(e)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let r=this.minAzimuthAngle,i=this.maxAzimuthAngle;isFinite(r)&&isFinite(i)&&(r<-Math.PI?r+=I:r>Math.PI&&(r-=I),i<-Math.PI?i+=I:i>Math.PI&&(i-=I),r<=i?this._spherical.theta=Math.max(r,Math.min(i,this._spherical.theta)):this._spherical.theta=this._spherical.theta>(r+i)/2?Math.max(r,this._spherical.theta):Math.min(i,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),this.enableDamping===!0?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let o=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{const a=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),o=a!=this._spherical.radius}if(j.setFromSpherical(this._spherical),j.applyQuaternion(this._quatInverse),n.copy(this.target).add(j),this.object.lookAt(this.target),this.enableDamping===!0?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let a=null;if(this.object.isPerspectiveCamera){const v=j.length();a=this._clampDistance(v*this._scale);const g=v-a;this.object.position.addScaledVector(this._dollyDirection,g),this.object.updateMatrixWorld(),o=!!g}else if(this.object.isOrthographicCamera){const v=new f.Vector3(this._mouse.x,this._mouse.y,0);v.unproject(this.object);const g=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),o=g!==this.object.zoom;const y=new f.Vector3(this._mouse.x,this._mouse.y,0);y.unproject(this.object),this.object.position.sub(y).add(v),this.object.updateMatrixWorld(),a=j.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),this.zoomToCursor=!1;a!==null&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(a).add(this.object.position):(oe.origin.copy(this.object.position),oe.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(oe.direction))<qn?this.object.lookAt(this.target):(ft.setFromNormalAndCoplanarPoint(this.object.up,this.target),oe.intersectPlane(ft,this.target))))}else if(this.object.isOrthographicCamera){const a=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),a!==this.object.zoom&&(this.object.updateProjectionMatrix(),o=!0)}return this._scale=1,this._performCursorZoom=!1,o||this._lastPosition.distanceToSquared(this.object.position)>we||8*(1-this._lastQuaternion.dot(this.object.quaternion))>we||this._lastTargetPosition.distanceToSquared(this.target)>we?(this.dispatchEvent(pt),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0):!1}_getAutoRotationAngle(e){return e!==null?I/60*this.autoRotateSpeed*e:I/60/60*this.autoRotateSpeed}_getZoomScale(e){const n=Math.abs(e*.01);return Math.pow(.95,this.zoomSpeed*n)}_rotateLeft(e){this._sphericalDelta.theta-=e}_rotateUp(e){this._sphericalDelta.phi-=e}_panLeft(e,n){j.setFromMatrixColumn(n,0),j.multiplyScalar(-e),this._panOffset.add(j)}_panUp(e,n){this.screenSpacePanning===!0?j.setFromMatrixColumn(n,1):(j.setFromMatrixColumn(n,0),j.crossVectors(this.object.up,j)),j.multiplyScalar(e),this._panOffset.add(j)}_pan(e,n){const r=this.domElement;if(this.object.isPerspectiveCamera){const i=this.object.position;j.copy(i).sub(this.target);let o=j.length();o*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*e*o/r.clientHeight,this.object.matrix),this._panUp(2*n*o/r.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(e*(this.object.right-this.object.left)/this.object.zoom/r.clientWidth,this.object.matrix),this._panUp(n*(this.object.top-this.object.bottom)/this.object.zoom/r.clientHeight,this.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),this.enablePan=!1)}_dollyOut(e){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=e:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_dollyIn(e){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=e:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_updateZoomParameters(e,n){if(!this.zoomToCursor)return;this._performCursorZoom=!0;const r=this.domElement.getBoundingClientRect(),i=e-r.left,o=n-r.top,a=r.width,v=r.height;this._mouse.x=i/a*2-1,this._mouse.y=-(o/v)*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(e){return Math.max(this.minDistance,Math.min(this.maxDistance,e))}_handleMouseDownRotate(e){this._rotateStart.set(e.clientX,e.clientY)}_handleMouseDownDolly(e){this._updateZoomParameters(e.clientX,e.clientX),this._dollyStart.set(e.clientX,e.clientY)}_handleMouseDownPan(e){this._panStart.set(e.clientX,e.clientY)}_handleMouseMoveRotate(e){this._rotateEnd.set(e.clientX,e.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const n=this.domElement;this._rotateLeft(I*this._rotateDelta.x/n.clientHeight),this._rotateUp(I*this._rotateDelta.y/n.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(e){this._dollyEnd.set(e.clientX,e.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(e){this._panEnd.set(e.clientX,e.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(e){this._updateZoomParameters(e.clientX,e.clientY),e.deltaY<0?this._dollyIn(this._getZoomScale(e.deltaY)):e.deltaY>0&&this._dollyOut(this._getZoomScale(e.deltaY)),this.update()}_handleKeyDown(e){let n=!1;switch(e.code){case this.keys.UP:e.ctrlKey||e.metaKey||e.shiftKey?this._rotateUp(I*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,this.keyPanSpeed),n=!0;break;case this.keys.BOTTOM:e.ctrlKey||e.metaKey||e.shiftKey?this._rotateUp(-I*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,-this.keyPanSpeed),n=!0;break;case this.keys.LEFT:e.ctrlKey||e.metaKey||e.shiftKey?this._rotateLeft(I*this.rotateSpeed/this.domElement.clientHeight):this._pan(this.keyPanSpeed,0),n=!0;break;case this.keys.RIGHT:e.ctrlKey||e.metaKey||e.shiftKey?this._rotateLeft(-I*this.rotateSpeed/this.domElement.clientHeight):this._pan(-this.keyPanSpeed,0),n=!0;break}n&&(e.preventDefault(),this.update())}_handleTouchStartRotate(e){if(this._pointers.length===1)this._rotateStart.set(e.pageX,e.pageY);else{const n=this._getSecondPointerPosition(e),r=.5*(e.pageX+n.x),i=.5*(e.pageY+n.y);this._rotateStart.set(r,i)}}_handleTouchStartPan(e){if(this._pointers.length===1)this._panStart.set(e.pageX,e.pageY);else{const n=this._getSecondPointerPosition(e),r=.5*(e.pageX+n.x),i=.5*(e.pageY+n.y);this._panStart.set(r,i)}}_handleTouchStartDolly(e){const n=this._getSecondPointerPosition(e),r=e.pageX-n.x,i=e.pageY-n.y,o=Math.sqrt(r*r+i*i);this._dollyStart.set(0,o)}_handleTouchStartDollyPan(e){this.enableZoom&&this._handleTouchStartDolly(e),this.enablePan&&this._handleTouchStartPan(e)}_handleTouchStartDollyRotate(e){this.enableZoom&&this._handleTouchStartDolly(e),this.enableRotate&&this._handleTouchStartRotate(e)}_handleTouchMoveRotate(e){if(this._pointers.length==1)this._rotateEnd.set(e.pageX,e.pageY);else{const r=this._getSecondPointerPosition(e),i=.5*(e.pageX+r.x),o=.5*(e.pageY+r.y);this._rotateEnd.set(i,o)}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const n=this.domElement;this._rotateLeft(I*this._rotateDelta.x/n.clientHeight),this._rotateUp(I*this._rotateDelta.y/n.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(e){if(this._pointers.length===1)this._panEnd.set(e.pageX,e.pageY);else{const n=this._getSecondPointerPosition(e),r=.5*(e.pageX+n.x),i=.5*(e.pageY+n.y);this._panEnd.set(r,i)}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(e){const n=this._getSecondPointerPosition(e),r=e.pageX-n.x,i=e.pageY-n.y,o=Math.sqrt(r*r+i*i);this._dollyEnd.set(0,o),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd);const a=(e.pageX+n.x)*.5,v=(e.pageY+n.y)*.5;this._updateZoomParameters(a,v)}_handleTouchMoveDollyPan(e){this.enableZoom&&this._handleTouchMoveDolly(e),this.enablePan&&this._handleTouchMovePan(e)}_handleTouchMoveDollyRotate(e){this.enableZoom&&this._handleTouchMoveDolly(e),this.enableRotate&&this._handleTouchMoveRotate(e)}_addPointer(e){this._pointers.push(e.pointerId)}_removePointer(e){delete this._pointerPositions[e.pointerId];for(let n=0;n<this._pointers.length;n++)if(this._pointers[n]==e.pointerId){this._pointers.splice(n,1);return}}_isTrackingPointer(e){for(let n=0;n<this._pointers.length;n++)if(this._pointers[n]==e.pointerId)return!0;return!1}_trackPointer(e){let n=this._pointerPositions[e.pointerId];n===void 0&&(n=new f.Vector2,this._pointerPositions[e.pointerId]=n),n.set(e.pageX,e.pageY)}_getSecondPointerPosition(e){const n=e.pointerId===this._pointers[0]?this._pointers[1]:this._pointers[0];return this._pointerPositions[n]}_customWheelEvent(e){const n=e.deltaMode,r={clientX:e.clientX,clientY:e.clientY,deltaY:e.deltaY};switch(n){case 1:r.deltaY*=16;break;case 2:r.deltaY*=100;break}return e.ctrlKey&&!this._controlActive&&(r.deltaY*=10),r}}function Kn(t){this.enabled!==!1&&(this._pointers.length===0&&(this.domElement.setPointerCapture(t.pointerId),this.domElement.addEventListener("pointermove",this._onPointerMove),this.domElement.addEventListener("pointerup",this._onPointerUp)),!this._isTrackingPointer(t)&&(this._addPointer(t),t.pointerType==="touch"?this._onTouchStart(t):this._onMouseDown(t)))}function Bn(t){this.enabled!==!1&&(t.pointerType==="touch"?this._onTouchMove(t):this._onMouseMove(t))}function kn(t){switch(this._removePointer(t),this._pointers.length){case 0:this.domElement.releasePointerCapture(t.pointerId),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.dispatchEvent(Tt),this.state=E.NONE;break;case 1:const e=this._pointers[0],n=this._pointerPositions[e];this._onTouchStart({pointerId:e,pageX:n.x,pageY:n.y});break}}function Qn(t){let e;switch(t.button){case 0:e=this.mouseButtons.LEFT;break;case 1:e=this.mouseButtons.MIDDLE;break;case 2:e=this.mouseButtons.RIGHT;break;default:e=-1}switch(e){case f.MOUSE.DOLLY:if(this.enableZoom===!1)return;this._handleMouseDownDolly(t),this.state=E.DOLLY;break;case f.MOUSE.ROTATE:if(t.ctrlKey||t.metaKey||t.shiftKey){if(this.enablePan===!1)return;this._handleMouseDownPan(t),this.state=E.PAN}else{if(this.enableRotate===!1)return;this._handleMouseDownRotate(t),this.state=E.ROTATE}break;case f.MOUSE.PAN:if(t.ctrlKey||t.metaKey||t.shiftKey){if(this.enableRotate===!1)return;this._handleMouseDownRotate(t),this.state=E.ROTATE}else{if(this.enablePan===!1)return;this._handleMouseDownPan(t),this.state=E.PAN}break;default:this.state=E.NONE}this.state!==E.NONE&&this.dispatchEvent(Ze)}function Jn(t){switch(this.state){case E.ROTATE:if(this.enableRotate===!1)return;this._handleMouseMoveRotate(t);break;case E.DOLLY:if(this.enableZoom===!1)return;this._handleMouseMoveDolly(t);break;case E.PAN:if(this.enablePan===!1)return;this._handleMouseMovePan(t);break}}function ei(t){this.enabled===!1||this.enableZoom===!1||this.state!==E.NONE||(t.preventDefault(),this.dispatchEvent(Ze),this._handleMouseWheel(this._customWheelEvent(t)),this.dispatchEvent(Tt))}function ti(t){this.enabled===!1||this.enablePan===!1||this._handleKeyDown(t)}function ni(t){switch(this._trackPointer(t),this._pointers.length){case 1:switch(this.touches.ONE){case f.TOUCH.ROTATE:if(this.enableRotate===!1)return;this._handleTouchStartRotate(t),this.state=E.TOUCH_ROTATE;break;case f.TOUCH.PAN:if(this.enablePan===!1)return;this._handleTouchStartPan(t),this.state=E.TOUCH_PAN;break;default:this.state=E.NONE}break;case 2:switch(this.touches.TWO){case f.TOUCH.DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchStartDollyPan(t),this.state=E.TOUCH_DOLLY_PAN;break;case f.TOUCH.DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchStartDollyRotate(t),this.state=E.TOUCH_DOLLY_ROTATE;break;default:this.state=E.NONE}break;default:this.state=E.NONE}this.state!==E.NONE&&this.dispatchEvent(Ze)}function ii(t){switch(this._trackPointer(t),this.state){case E.TOUCH_ROTATE:if(this.enableRotate===!1)return;this._handleTouchMoveRotate(t),this.update();break;case E.TOUCH_PAN:if(this.enablePan===!1)return;this._handleTouchMovePan(t),this.update();break;case E.TOUCH_DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchMoveDollyPan(t),this.update();break;case E.TOUCH_DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchMoveDollyRotate(t),this.update();break;default:this.state=E.NONE}}function ri(t){this.enabled!==!1&&t.preventDefault()}function oi(t){t.key==="Control"&&(this._controlActive=!0,this.domElement.getRootNode().addEventListener("keyup",this._interceptControlUp,{passive:!0,capture:!0}))}function si(t){t.key==="Control"&&(this._controlActive=!1,this.domElement.getRootNode().removeEventListener("keyup",this._interceptControlUp,{passive:!0,capture:!0}))}var ai=Object.defineProperty,li=Object.getOwnPropertyDescriptor,hi=(t,e,n,r)=>{for(var i=r>1?void 0:r?li(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&ai(e,n,i),i},ge=(t,e)=>(n,r)=>e(n,r,t);let pe=class{constructor(t,e,n){h(this,"enabled",!0);h(this,"cameraControls");h(this,"miniCameraControls");h(this,"cameraHelper");h(this,"axesHelper");h(this,"gridHelper");this.appComponent=t,this.cameraComponent=e,this.worldComponent=n}_setCameraOrbitControl(){var t;this.cameraControls&&((t=this.cameraControls)==null||t.dispose(),this.cameraControls=void 0),!(!this.enabled||!(this.cameraComponent.instance instanceof f.Camera))&&this.cameraComponent.instance instanceof f.Camera&&(this.cameraControls=new dt(this.cameraComponent.instance,this.appComponent.proxyReceiver),this.cameraControls&&(this.cameraControls.enableDamping=!0))}_setMiniCameraOrbitControls(){this.miniCameraControls&&(this.miniCameraControls.dispose(),this.miniCameraControls=void 0),this.enabled&&this.cameraComponent.miniCamera&&(this.miniCameraControls=new dt(this.cameraComponent.miniCamera,this.appComponent.proxyReceiver),this.miniCameraControls.enableDamping=!0)}_setCameraHelper(){this.cameraHelper&&(this.worldComponent.scene.remove(this.cameraHelper),this.cameraHelper=void 0),this.enabled&&this.cameraComponent.instance&&(this.cameraHelper=new f.CameraHelper(this.cameraComponent.instance),this.worldComponent.scene.add(this.cameraHelper))}_setAxesHelper(t){const e=new f.AxesHelper(t);this.worldComponent.scene.add(e)}_setGridHelper(t){const e=new f.GridHelper(t,t);this.worldComponent.scene.add(e)}init(t){this._setCameraOrbitControl(),this._setMiniCameraOrbitControls(),this._setCameraHelper(),typeof(t==null?void 0:t.axesSizes)=="number"&&this._setAxesHelper(t.axesSizes),typeof(t==null?void 0:t.gridSizes)=="number"&&this._setGridHelper(t.gridSizes)}update(){var t,e;this.enabled&&((t=this.cameraControls)==null||t.update(),(e=this.miniCameraControls)==null||e.update())}dispose(){this.cameraHelper&&(this.worldComponent.scene.remove(this.cameraHelper),this.cameraHelper=void 0),this.cameraControls&&(this.cameraControls.dispose(),this.cameraControls=void 0),this.miniCameraControls&&(this.miniCameraControls.dispose(),this.miniCameraControls=void 0)}};pe=hi([M(),ge(0,P(J)),ge(1,P(X)),ge(2,P(te))],pe);var St=Object.defineProperty,ci=Object.getOwnPropertyDescriptor,ui=(t,e,n)=>e in t?St(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,pi=(t,e,n,r)=>{for(var i=r>1?void 0:r?ci(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&St(e,n,i),i},se=(t,e)=>(n,r)=>e(n,r,t),fi=(t,e,n)=>ui(t,e+"",n);let Z=class{constructor(t,e,n,r){h(this,"enabled",!0);h(this,"instance");this.worldComponent=t,this.cameraComponent=e,this.sizesComponent=n,this.debugComponent=r}init(t){this.instance=new f.WebGLRenderer({canvas:t,context:t.getContext("webgl2",{stencil:!0,powerPreference:"high-performance"}),powerPreference:"high-performance",depth:!0,antialias:!0}),this.instance.autoClear=!1,this.instance.setPixelRatio(Z.RENDERER_PIXEL_RATIO),this.instance.setClearColor(0,0),this.instance.shadowMap.enabled=!0,this.instance.shadowMap.type=f.PCFSoftShadowMap,this.instance.outputColorSpace=f.SRGBColorSpace,this.instance.toneMapping=f.CineonToneMapping,this.instance.toneMappingExposure=1.75}setSize(t,e){var n;(n=this.instance)==null||n.setSize(t,e)}render(){this.enabled&&this.cameraComponent.instance instanceof f.Camera&&this.instance instanceof f.WebGLRenderer&&(this.instance.setViewport(0,0,this.sizesComponent.width,this.sizesComponent.height),this.instance.render(this.worldComponent.scene,this.cameraComponent.instance),this.debugComponent.enabled&&this.cameraComponent.miniCamera&&(this.instance.setScissorTest(!0),this.instance.setViewport(this.sizesComponent.width-this.sizesComponent.width/3,this.sizesComponent.height-this.sizesComponent.height/3,this.sizesComponent.width/3,this.sizesComponent.height/3),this.instance.setScissor(this.sizesComponent.width-this.sizesComponent.width/3,this.sizesComponent.height-this.sizesComponent.height/3,this.sizesComponent.width/3,this.sizesComponent.height/3),this.instance.render(this.worldComponent.scene,this.cameraComponent.miniCamera),this.instance.setScissorTest(!1)))}};fi(Z,"RENDERER_PIXEL_RATIO",1);Z=pi([M(),se(0,P(te)),se(1,P(X)),se(2,P(Y)),se(3,P(pe))],Z);var Rt=(t=>(t[t.INITIALIZED=0]="INITIALIZED",t[t.DISPOSED=1]="DISPOSED",t))(Rt||{}),q=(t=>(t[t.INITIALIZED=0]="INITIALIZED",t[t.STEP_STARTED=1]="STEP_STARTED",t[t.STEP_ENDED=2]="STEP_ENDED",t[t.DISPOSED=3]="DISPOSED",t))(q||{}),di=Object.defineProperty,mi=Object.getOwnPropertyDescriptor,_i=(t,e,n,r)=>{for(var i=r>1?void 0:r?mi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&di(e,n,i),i},mt=(t,e)=>(n,r)=>e(n,r,t);let K=class{constructor(t,e){h(this,"step$$",new z.Subject);h(this,"enable$$",new z.Subject);h(this,"step$",this.step$$.pipe());h(this,"enable$",this.enable$$.pipe());this.component=t,this.appController=e}step(){this.appController.lifecycle$$.next(q.STEP_STARTED),this.component.enabled&&(this.component.delta=this.component.clock.getDelta()??this.component.frame,this.component.deltaRatio=this.component.delta*1e3/this.component.frame,this.step$$.next({delta:this.component.delta,deltaRatio:this.component.deltaRatio})),this.appController.lifecycle$$.next(q.STEP_ENDED)}};K=_i([M(),mt(0,P(ce)),mt(1,P(ee))],K);var yi=Object.defineProperty,vi=Object.getOwnPropertyDescriptor,bi=(t,e,n,r)=>{for(var i=r>1?void 0:r?vi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&yi(e,n,i),i},Pe=(t,e)=>(n,r)=>e(n,r,t);let Te=class{constructor(t,e,n){this.component=t,this.controller=e,this.rendererComponent=n}init(t){this.controller.enable$.subscribe(e=>{var n,r;this.component.enabled=!!e,e?(n=this.rendererComponent.instance)==null||n.setAnimationLoop(this.controller.step.bind(this.controller)):(r=this.rendererComponent.instance)==null||r.setAnimationLoop(null)}),t&&this.enabled(!0)}clock(){return this.component.clock}frame(){return this.component.frame}delta(t){return typeof t=="number"&&(this.component.delta=t),this.component.delta}deltaRatio(t){return typeof t=="number"&&(this.component.deltaRatio=t),this.component.deltaRatio}enabled(t){return typeof t=="boolean"&&this.controller.enable$$.next(t),this.component.enabled}dispose(){this.controller.step$$.complete(),this.controller.enable$$.complete()}enabled$(){return this.controller.enable$}step$(){return this.controller.step$}};Te=bi([M(),Pe(0,P(ce)),Pe(1,P(K)),Pe(2,P(Z))],Te);var wi=Object.defineProperty,gi=Object.getOwnPropertyDescriptor,Pi=(t,e,n,r)=>{for(var i=r>1?void 0:r?gi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&wi(e,n,i),i},_t=(t,e)=>(n,r)=>e(n,r,t);let Se=class{constructor(t,e){h(this,"enable$$",new z.Subject);h(this,"enable$",this.enable$$.pipe());h(this,"step$");this.component=t,this.timerController=e,this.step$=this.timerController.step$.pipe(z.filter(()=>this.component.enabled))}};Se=Pi([M(),_t(0,P(X)),_t(1,P(K))],Se);var Ci=Object.defineProperty,Oi=Object.getOwnPropertyDescriptor,Ei=(t,e,n,r)=>{for(var i=r>1?void 0:r?Oi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Ci(e,n,i),i},Ce=(t,e)=>(n,r)=>e(n,r,t);let Re=class{constructor(t,e,n){this.component=t,this.sizesComponent=e,this.controller=n}init(t){this.component.initDefaultCamera(),t&&this.component.setMiniCamera(),this.controller.enable$.subscribe(e=>{this.component.enabled=!!e}),this.controller.step$.subscribe(()=>{var e,n;this.component.enabled&&(this.component.aspectRatio=this.sizesComponent.aspect,(this.component.instance instanceof f.PerspectiveCamera||this.component.instance instanceof f.OrthographicCamera)&&((e=this.component.instance)==null||e.updateProjectionMatrix()),(n=this.component.miniCamera)==null||n.updateProjectionMatrix())})}dispose(){this.component.removeCamera(),this.component.removeMiniCamera()}aspectRatio(t){return t&&(this.component.aspectRatio=t),this.component.aspectRatio}enabled(t){return typeof t=="boolean"&&this.controller.enable$$.next(t),this.component.enabled}instance(t){return t&&(this.component.instance=t),this.component.instance}miniCamera(t){return t&&(this.component.miniCamera=t),this.component.miniCamera}position(t){return t&&(this.component.position=t),this.component.position}quaternion(t){return t&&(this.component.quaternion=t),this.component.quaternion}enabled$(){return this.controller.enable$}};Re=Ei([M(),Ce(0,P(X)),Ce(1,P(Y)),Ce(2,P(Se))],Re);var $i=Object.defineProperty,Mi=Object.getOwnPropertyDescriptor,Di=(t,e,n,r)=>{for(var i=r>1?void 0:r?Mi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&$i(e,n,i),i},yt=(t,e)=>(n,r)=>e(n,r,t);let fe=class{constructor(t,e){h(this,"enable$$",new z.Subject);h(this,"enable$",this.enable$$.pipe());h(this,"resize$");this.appController=t,this.component=e,this.resize$=this.appController.resize$$.pipe(z.filter(()=>this.component.enabled))}};fe=Di([M(),yt(0,P(ee)),yt(1,P(Y))],fe);var Ti=Object.defineProperty,Si=Object.getOwnPropertyDescriptor,Ri=(t,e,n,r)=>{for(var i=r>1?void 0:r?Si(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Ti(e,n,i),i},Oe=(t,e)=>(n,r)=>e(n,r,t);let je=class{constructor(t,e,n){h(this,"enable$$",new z.Subject);h(this,"enable$",this.enable$$.pipe());h(this,"step$");h(this,"resize$");this.rendererComponent=t,this.timerController=e,this.sizesController=n,this.step$=this.timerController.step$.pipe(z.filter(()=>this.rendererComponent.enabled)),this.resize$=this.sizesController.resize$.pipe(z.filter(()=>this.rendererComponent.enabled))}};je=Ri([M(),Oe(0,P(Z)),Oe(1,P(K)),Oe(2,P(fe))],je);var ji=Object.defineProperty,xi=Object.getOwnPropertyDescriptor,Ai=(t,e,n,r)=>{for(var i=r>1?void 0:r?xi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&ji(e,n,i),i},vt=(t,e)=>(n,r)=>e(n,r,t);let xe=class{constructor(t,e){this.component=t,this.controller=e}init(t){this.controller.enable$.subscribe(e=>{this.component.enabled=!!e}),this.controller.step$.subscribe(()=>this.component.render()),this.controller.resize$.subscribe(e=>this.component.setSize(e.windowWidth,e.windowHeight)),this.component.init(t)}dispose(){this.controller.enable$$.unsubscribe()}enabled(t){return typeof t=="boolean"&&this.controller.enable$$.next(t),this.component.enabled}instance(){return this.component.instance}setSize(t){return this.component.setSize(t.x,t.y)}render(){return this.component.render()}enabled$(){return this.controller.enable$}};xe=Ai([M(),vt(0,P(Z)),vt(1,P(je))],xe);var Ii=Object.defineProperty,zi=Object.getOwnPropertyDescriptor,Ni=(t,e,n,r)=>{for(var i=r>1?void 0:r?zi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Ii(e,n,i),i},bt=(t,e)=>(n,r)=>e(n,r,t);let Ae=class{constructor(t,e){this.component=t,this.controller=e}init(t){this.controller.enable$.subscribe(e=>{this.component.enabled=!!e}),this.controller.resize$.subscribe(e=>{this.component.width=e.windowWidth,this.component.height=e.windowHeight,this.component.aspect=e.windowWidth/e.windowHeight}),this.component.init(t)}dispose(){}aspect(t){return typeof t=="number"&&(this.component.aspect=t),this.component.aspect}enabled(t){return typeof t=="boolean"&&this.controller.enable$$.next(t),this.component.enabled}frustrum(t){return typeof t=="number"&&(this.component.frustrum=t),this.component.frustrum}height(t){return typeof t=="number"&&(this.component.height=t),this.component.height}pixelRatio(t){return typeof t=="number"&&(this.component.pixelRatio=t),this.component.pixelRatio}width(t){return typeof t=="number"&&(this.component.width=t),this.component.width}enabled$(){return this.controller.enable$}resize$(){return this.controller.resize$}};Ae=Ni([M(),bt(0,P(Y)),bt(1,P(fe))],Ae);var Hi=Object.defineProperty,Li=Object.getOwnPropertyDescriptor,Ui=(t,e,n,r)=>{for(var i=r>1?void 0:r?Li(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Hi(e,n,i),i};let Ie=class{constructor(){h(this,"enable$$",new z.Subject);h(this,"enable$",this.enable$$.pipe())}};Ie=Ui([M()],Ie);var Vi=Object.defineProperty,Yi=Object.getOwnPropertyDescriptor,Zi=(t,e,n,r)=>{for(var i=r>1?void 0:r?Yi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Vi(e,n,i),i},wt=(t,e)=>(n,r)=>e(n,r,t);let ze=class{constructor(t,e){this.component=t,this.controller=e}init(){this.controller.enable$.subscribe(t=>{this.component.enabled=!!t})}dispose(){}scene(t){return t instanceof f.Scene&&(this.component.scene=t),this.component.scene}enabled(t){return typeof t=="boolean"&&this.controller.enable$$.next(t),this.component.enabled}get enable$(){return this.controller.enable$}};ze=Zi([M(),wt(0,P(te)),wt(1,P(Ie))],ze);var Fi=Object.defineProperty,Gi=Object.getOwnPropertyDescriptor,Wi=(t,e,n,r)=>{for(var i=r>1?void 0:r?Gi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&Fi(e,n,i),i},Xi=(t,e)=>(n,r)=>e(n,r,t);let Ne=class{constructor(t){h(this,"enable$$",new z.Subject);h(this,"enable$",this.enable$$.pipe());h(this,"step$");this.timerController=t,this.step$=this.timerController.step$}};Ne=Wi([M(),Xi(0,P(K))],Ne);var qi=Object.defineProperty,Ki=Object.getOwnPropertyDescriptor,Bi=(t,e,n,r)=>{for(var i=r>1?void 0:r?Ki(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&qi(e,n,i),i},gt=(t,e)=>(n,r)=>e(n,r,t);let He=class{constructor(t,e){this.component=t,this.controller=e,this.controller.step$.subscribe(()=>{this.component.update()})}init(t){this.component.init(t)}dispose(){this.component.dispose()}axesHelper(){return this.component.axesHelper}cameraControls(){return this.component.cameraControls}cameraHelper(){return this.component.cameraHelper}enabled(t){return t&&(this.component.enabled=t),this.component.enabled}gridHelper(){return this.component.gridHelper}miniCameraControls(){return this.component.miniCameraControls}enabled$(){return this.controller.enable$}};He=Bi([M(),gt(0,P(pe)),gt(1,P(Ne))],He);class jt{constructor(){h(this,"contextmenu$");h(this,"resize$");h(this,"mousedown$");h(this,"mousemove$");h(this,"mouseup$");h(this,"pointerdown$");h(this,"pointermove$");h(this,"pointercancel$");h(this,"pointerup$");h(this,"touchstart$");h(this,"touchmove$");h(this,"touchend$");h(this,"wheel$");h(this,"keydown$");h(this,"contextmenu");h(this,"resize");h(this,"mousedown");h(this,"mousemove");h(this,"mouseup");h(this,"pointerdown");h(this,"pointermove");h(this,"pointercancel");h(this,"pointerup");h(this,"touchstart");h(this,"touchmove");h(this,"touchend");h(this,"wheel");h(this,"keydown")}}var ki=Object.defineProperty,Qi=Object.getOwnPropertyDescriptor,Ji=(t,e,n,r)=>{for(var i=r>1?void 0:r?Qi(e,n):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(i=(r?a(e,n,i):a(i))||i);return r&&i&&ki(e,n,i),i},U=(t,e)=>(n,r)=>e(n,r,t);exports.AppModule=class extends jt{constructor(e,n,r,i,o,a,v,g){super(),this.controller=e,this.component=n,this.timer=r,this.sizes=i,this.camera=o,this.world=a,this.renderer=v,this.debug=g,this._initProxyEvents(),typeof(self==null?void 0:self.addEventListener)=="function"&&self.addEventListener("message",this._onMessage.bind(this))}_initProxyEvents(){Ye.forEach(e=>{this[`${e}$`]=()=>{var n;return(n=this.controller)==null?void 0:n[`${e}$`]},this[e]=n=>{var r,i;return(i=(r=this.controller)==null?void 0:r[e])==null?void 0:i.call(r,n)}})}_onMessage(e){var o,a,v,g;if(!((o=e.data)!=null&&o.canvas)||this.component.initialized)return;const n=!!((a=e.data)!=null&&a.startTimer),r=!!((v=e.data)!=null&&v.withMiniCamera),i=!!((g=e.data)!=null&&g.fullScreen);this.init({...e.data,startTimer:n,withMiniCamera:r,fullScreen:i})}init(e){if(!e.canvas||this.component.initialized)return;this.component.initialized=!0,e.canvas.style={width:e.canvas.width+"",height:e.canvas.height+""};const n=e.canvas;this.component.canvas=n,this.sizes.init(n),this.camera.init(e.withMiniCamera),this.world.init(),this.renderer.init(n),this.timer.init(e.startTimer),this.debug.init(e),this.controller.lifecycle$$.next(q.INITIALIZED)}get canvas(){return this.component.canvas}get initialized(){return this.component.initialized}isInitialized(){return this.component.initialized}dispose(){this.sizes.dispose(),this.camera.dispose(),this.world.dispose(),this.renderer.dispose(),this.timer.dispose(),this.debug.dispose(),this.controller.lifecycle$$.next(q.DISPOSED),this.controller.lifecycle$$.complete(),typeof self<"u"&&self.removeEventListener("message",this._onMessage.bind(this))}lifecycle$(){return this.controller.lifecycle$}};exports.AppModule=Ji([M(),U(0,P(ee)),U(1,P(J)),U(2,P(Te)),U(3,P(Ae)),U(4,P(Re)),U(5,P(ze)),U(6,P(xe)),U(7,P(He))],exports.AppModule);const er=Ve.resolve(exports.AppModule);exports.AppLifecycleState=q;exports.AppProxyEventHandlersModel=jt;exports.DefaultCameraType=ue;exports.KEYBOARD_EVENT_CODES=Sn;exports.Lifecycle=A;exports.PROXY_EVENT_LISTENERS=Ye;exports.ProxyEventHandlersModel=Dt;exports.ProxyEventObservablesModel=Mt;exports.ProxyEventSubjectsModel=$t;exports.RegisterLifecycleState=Rt;exports.appModule=er;exports.getDefaultExportFromCjs=hn;exports.inject=P;exports.injectable=Et;exports.instance=Ve;exports.singleton=M;
|