diff --git a/CNAME b/CNAME deleted file mode 100644 index fb373d7..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -www.ucbugg.com \ No newline at end of file diff --git a/asset-manifest.json b/asset-manifest.json index a064146..887e19a 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,7 +1,7 @@ { "files": { "main.css": "/static/css/main.b4bf52f5.css", - "main.js": "/static/js/main.d986eb63.js", + "main.js": "/static/js/main.4cf2c6ef.js", "static/js/526.a1046954.chunk.js": "/static/js/526.a1046954.chunk.js", "static/js/811.294da54e.chunk.js": "/static/js/811.294da54e.chunk.js", "static/js/206.24d8eb7c.chunk.js": "/static/js/206.24d8eb7c.chunk.js", @@ -1412,7 +1412,7 @@ "static/media/rightFootForwardBlock.png": "/static/media/rightFootForwardBlock.a28d8c42c797163f4b86.png", "static/media/character animation.md": "/static/media/character animation.9520ea648effca8017da.md", "static/media/peel_off.png": "/static/media/peel_off.2ae587f825376c47a72d.png", - "static/media/production management.md": "/static/media/production management.3a2397aac8e59cf535de.md", + "static/media/production management.md": "/static/media/production management.0b4aa1415b2a07e16755.md", "static/media/Bifrost7.png": "/static/media/Bifrost7.f6ddd3aecf0eb9d70f18.png", "static/media/ty_curve.png": "/static/media/ty_curve.b391728a08ac17913344.png", "static/media/4 - delete top and bottom faces.png": "/static/media/4 - delete top and bottom faces.35767454ce0214fcdded.png", @@ -1482,6 +1482,6 @@ }, "entrypoints": [ "static/css/main.b4bf52f5.css", - "static/js/main.d986eb63.js" + "static/js/main.4cf2c6ef.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 969f811..0eddf96 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -UCBUGG
\ No newline at end of file +UCBUGG
\ No newline at end of file diff --git a/static/js/main.d986eb63.js b/static/js/main.4cf2c6ef.js similarity index 99% rename from static/js/main.d986eb63.js rename to static/js/main.4cf2c6ef.js index 5e8addb..2ee0957 100644 --- a/static/js/main.d986eb63.js +++ b/static/js/main.4cf2c6ef.js @@ -1,2 +1,2 @@ -/*! For license information please see main.d986eb63.js.LICENSE.txt */ -(()=>{var e={58240:(e,t,n)=>{"use strict";n.d(t,{A:()=>le,B:()=>T,C:()=>ce,E:()=>C,F:()=>pe,a:()=>x,b:()=>ye,c:()=>Y,d:()=>xe,e:()=>m,f:()=>K,g:()=>Se,i:()=>E,j:()=>Ae,u:()=>S});var i=n(13437),r=n(9950),a=n(13878),s=n(39298),o=n(9235),l=n.n(o),c=n(75340);const u=[];function d(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:(e,t)=>e===t;if(e===t)return!0;if(!e||!t)return!1;const i=e.length;if(t.length!==i)return!1;for(let r=0;r1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};null===t&&(t=[e]);for(const s of u)if(d(t,s.keys,s.equal)){if(n)return;if(Object.prototype.hasOwnProperty.call(s,"error"))throw s.error;if(Object.prototype.hasOwnProperty.call(s,"response"))return i.lifespan&&i.lifespan>0&&(s.timeout&&clearTimeout(s.timeout),s.timeout=setTimeout(s.remove,i.lifespan)),s.response;if(!n)throw s.promise}const r={keys:t,equal:i.equal,remove:()=>{const e=u.indexOf(r);-1!==e&&u.splice(e,1)},promise:(a=e,"object"===typeof a&&"function"===typeof a.then?e:e(...t)).then((e=>{r.response=e,i.lifespan&&i.lifespan>0&&(r.timeout=setTimeout(r.remove,i.lifespan))})).catch((e=>r.error=e))};var a;if(u.push(r),!n)throw r.promise}const h=(e,t,n)=>p(e,t,!1,n);const f={},m=e=>{Object.assign(f,e)};var g,A;const v=e=>"colorSpace"in e||"outputColorSpace"in e,b=()=>{var e;return null!=(e=f.ColorManagement)?e:null},y=e=>e&&e.isOrthographicCamera,E=e=>e&&e.hasOwnProperty("current"),x="undefined"!==typeof window&&(null!=(g=window.document)&&g.createElement||"ReactNative"===(null==(A=window.navigator)?void 0:A.product))?r.useLayoutEffect:r.useEffect;function S(e){const t=r.useRef(e);return x((()=>{t.current=e}),[e]),t}function T(e){let{set:t}=e;return x((()=>(t(new Promise((()=>null))),()=>t(!1))),[t]),null}class C extends r.Component{constructor(){super(...arguments),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}C.getDerivedStateFromError=()=>({error:!0});const w="__default",M=new Map,I=e=>e&&!!e.memoized&&!!e.changes;function R(e){var t;const n="undefined"!==typeof window?null!=(t=window.devicePixelRatio)?t:2:1;return Array.isArray(e)?Math.min(Math.max(e[0],n),e[1]):e}const P=e=>{var t;return null==(t=e.__r3f)?void 0:t.root.getState()};function _(e){let t=e.__r3f.root;for(;t.getState().previousRoot;)t=t.getState().previousRoot;return t}const N={obj:e=>e===Object(e)&&!N.arr(e)&&"function"!==typeof e,fun:e=>"function"===typeof e,str:e=>"string"===typeof e,num:e=>"number"===typeof e,boo:e=>"boolean"===typeof e,und:e=>void 0===e,arr:e=>Array.isArray(e),equ(e,t){let{arrays:n="shallow",objects:i="reference",strict:r=!0}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(typeof e!==typeof t||!!e!==!!t)return!1;if(N.str(e)||N.num(e))return e===t;const a=N.obj(e);if(a&&"reference"===i)return e===t;const s=N.arr(e);if(s&&"reference"===n)return e===t;if((s||a)&&e===t)return!0;let o;for(o in e)if(!(o in t))return!1;if(a&&"shallow"===n&&"shallow"===i){for(o in r?t:e)if(!N.equ(e[o],t[o],{strict:r,objects:"reference"}))return!1}else for(o in r?t:e)if(e[o]!==t[o])return!1;if(N.und(o)){if(s&&0===e.length&&0===t.length)return!0;if(a&&0===Object.keys(e).length&&0===Object.keys(t).length)return!0;if(e!==t)return!1}return!0}};function L(e){const t={nodes:{},materials:{}};return e&&e.traverse((e=>{e.name&&(t.nodes[e.name]=e),e.material&&!t.materials[e.material.name]&&(t.materials[e.material.name]=e.material)})),t}function D(e,t){return e.__r3f={type:"",root:null,previousAttach:null,memoizedProps:{},eventCount:0,handlers:{},objects:[],parent:null,...t},e}function k(e,t){let n=e;if(t.includes("-")){const i=t.split("-"),r=i.pop();return n=i.reduce(((e,t)=>e[t]),e),{target:n,key:r}}return{target:n,key:t}}const O=/-\d+$/;function B(e,t,n){if(N.str(n)){if(O.test(n)){const t=n.replace(O,""),{target:i,key:r}=k(e,t);Array.isArray(i[r])||(i[r]=[])}const{target:i,key:r}=k(e,n);t.__r3f.previousAttach=i[r],i[r]=t}else t.__r3f.previousAttach=n(e,t)}function U(e,t,n){var i,r;if(N.str(n)){const{target:i,key:r}=k(e,n),a=t.__r3f.previousAttach;void 0===a?delete i[r]:i[r]=a}else null==(i=t.__r3f)||null==i.previousAttach||i.previousAttach(e,t);null==(r=t.__r3f)||delete r.previousAttach}function F(e,t){let{children:n,key:i,ref:r,...a}=t,{children:s,key:o,ref:l,...c}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=arguments.length>3&&void 0!==arguments[3]&&arguments[3];var d;const p=null!=(d=null==e?void 0:e.__r3f)?d:{},h=Object.entries(a),f=[];if(u){const e=Object.keys(c);for(let t=0;t{let[n,i]=t;var r;if(null!=(r=e.__r3f)&&r.primitive&&"object"===n)return;if(N.equ(i,c[n]))return;if(/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/.test(n))return f.push([n,i,!0,[]]);let s=[];n.includes("-")&&(s=n.split("-")),f.push([n,i,!1,s]);for(const e in a){const t=a[e];e.startsWith("".concat(n,"-"))&&f.push([e,t,!1,e.split("-")])}}));const m={...a};return p.memoizedProps&&p.memoizedProps.args&&(m.args=p.memoizedProps.args),p.memoizedProps&&p.memoizedProps.attach&&(m.attach=p.memoizedProps.attach),{memoized:m,changes:f}}const H="undefined"!==typeof process&&!1;function z(e,t){var n,r,a;const s=null!=(n=e.__r3f)?n:{},o=s.root,l=null!=(r=null==o||null==o.getState?void 0:o.getState())?r:{},{memoized:c,changes:u}=I(t)?t:F(e,t),d=s.eventCount;e.__r3f&&(e.__r3f.memoizedProps=c);for(let p=0;pe[t]),e),!c||!c.set)){const[n,...i]=a.reverse();o=i.reverse().reduce(((e,t)=>e[t]),e),t=n}if(n===w+"remove")if(o.constructor){let e=M.get(o.constructor);e||(e=new o.constructor,M.set(o.constructor,e)),n=e[t]}else n=0;if(r)n?s.handlers[t]=n:delete s.handlers[t],s.eventCount=Object.keys(s.handlers).length;else if(c&&c.set&&(c.copy||c instanceof i.Layers)){if(Array.isArray(n))c.fromArray?c.fromArray(n):c.set(...n);else if(c.copy&&n&&n.constructor&&(H?c.constructor.name===n.constructor.name:c.constructor===n.constructor))c.copy(n);else if(void 0!==n){const e=c instanceof i.Color;!e&&c.setScalar?c.setScalar(n):c instanceof i.Layers&&n instanceof i.Layers?c.mask=n.mask:c.set(n),b()||l.linear||!e||c.convertSRGBToLinear()}}else if(o[t]=n,o[t]instanceof i.Texture&&o[t].format===i.RGBAFormat&&o[t].type===i.UnsignedByteType){const e=o[t];v(e)&&v(l.gl)?e.colorSpace=l.gl.outputColorSpace:e.encoding=l.gl.outputEncoding}j(e)}if(s.parent&&e.raycast&&d!==s.eventCount){const t=_(e).getState().internal,n=t.interaction.indexOf(e);n>-1&&t.interaction.splice(n,1),s.eventCount&&t.interaction.push(e)}return!(1===u.length&&"onUpdate"===u[0][0])&&u.length&&null!=(a=e.__r3f)&&a.parent&&G(e),e}function j(e){var t,n;const i=null==(t=e.__r3f)||null==(n=t.root)||null==n.getState?void 0:n.getState();i&&0===i.internal.frames&&i.invalidate()}function G(e){null==e.onUpdate||e.onUpdate(e)}function Q(e,t){e.manual||(y(e)?(e.left=t.width/-2,e.right=t.width/2,e.top=t.height/2,e.bottom=t.height/-2):e.aspect=t.width/t.height,e.updateProjectionMatrix(),e.updateMatrixWorld())}function V(e){return(e.eventObject||e.object).uuid+"/"+e.index+e.instanceId}function W(e,t,n,i){const r=n.get(t);r&&(n.delete(t),0===n.size&&(e.delete(i),r.target.releasePointerCapture(i)))}function Y(e){function t(e){return e.filter((e=>["Move","Over","Enter","Out","Leave"].some((t=>{var n;return null==(n=e.__r3f)?void 0:n.handlers["onPointer"+t]}))))}function n(t){const{internal:n}=e.getState();for(const e of n.hovered.values())if(!t.length||!t.find((t=>t.object===e.object&&t.index===e.index&&t.instanceId===e.instanceId))){const i=e.eventObject.__r3f,r=null==i?void 0:i.handlers;if(n.hovered.delete(V(e)),null!=i&&i.eventCount){const n={...e,intersections:t};null==r.onPointerOut||r.onPointerOut(n),null==r.onPointerLeave||r.onPointerLeave(n)}}}function r(e,t){for(let n=0;nn([]);case"onLostPointerCapture":return t=>{const{internal:i}=e.getState();"pointerId"in t&&i.capturedMap.has(t.pointerId)&&requestAnimationFrame((()=>{i.capturedMap.has(t.pointerId)&&(i.capturedMap.delete(t.pointerId),n([]))}))}}return function(s){const{onPointerMissed:o,internal:l}=e.getState();l.lastEvent.current=s;const c="onPointerMove"===a,u="onClick"===a||"onContextMenu"===a||"onDoubleClick"===a,d=function(t,n){const i=e.getState(),r=new Set,a=[],s=n?n(i.internal.interaction):i.internal.interaction;for(let e=0;e{const n=P(e.object),i=P(t.object);return n&&i&&i.events.priority-n.events.priority||e.distance-t.distance})).filter((e=>{const t=V(e);return!r.has(t)&&(r.add(t),!0)}));i.events.filter&&(o=i.events.filter(o,i));for(const e of o){let t=e.object;for(;t;){var l;null!=(l=t.__r3f)&&l.eventCount&&a.push({...e,eventObject:t}),t=t.parent}}if("pointerId"in t&&i.internal.capturedMap.has(t.pointerId))for(let e of i.internal.capturedMap.get(t.pointerId).values())r.has(V(e.intersection))||a.push(e.intersection);return a}(s,c?t:void 0),p=u?function(t){const{internal:n}=e.getState(),i=t.offsetX-n.initialClick[0],r=t.offsetY-n.initialClick[1];return Math.round(Math.sqrt(i*i+r*r))}(s):0;"onPointerDown"===a&&(l.initialClick=[s.offsetX,s.offsetY],l.initialHits=d.map((e=>e.eventObject))),u&&!d.length&&p<=2&&(r(s,l.interaction),o&&o(s)),c&&n(d),function(t,r,a,s){const o=e.getState();if(t.length){const e={stopped:!1};for(const l of t){const c=P(l.object)||o,{raycaster:u,pointer:d,camera:p,internal:h}=c,f=new i.Vector3(d.x,d.y,0).unproject(p),m=e=>{var t,n;return null!=(t=null==(n=h.capturedMap.get(e))?void 0:n.has(l.eventObject))&&t},g=e=>{const t={intersection:l,target:r.target};h.capturedMap.has(e)?h.capturedMap.get(e).set(l.eventObject,t):h.capturedMap.set(e,new Map([[l.eventObject,t]])),r.target.setPointerCapture(e)},A=e=>{const t=h.capturedMap.get(e);t&&W(h.capturedMap,l.eventObject,t,e)};let v={};for(let e in r){let t=r[e];"function"!==typeof t&&(v[e]=t)}let b={...l,...v,pointer:d,intersections:t,stopped:e.stopped,delta:a,unprojectedPoint:f,ray:u.ray,camera:p,stopPropagation(){const i="pointerId"in r&&h.capturedMap.get(r.pointerId);(!i||i.has(l.eventObject))&&(b.stopped=e.stopped=!0,h.hovered.size&&Array.from(h.hovered.values()).find((e=>e.eventObject===l.eventObject)))&&n([...t.slice(0,t.indexOf(l)),l])},target:{hasPointerCapture:m,setPointerCapture:g,releasePointerCapture:A},currentTarget:{hasPointerCapture:m,setPointerCapture:g,releasePointerCapture:A},nativeEvent:r};if(s(b),!0===e.stopped)break}}}(d,s,p,(function(e){const t=e.eventObject,n=t.__r3f,i=null==n?void 0:n.handlers;if(null!=n&&n.eventCount)if(c){if(i.onPointerOver||i.onPointerEnter||i.onPointerOut||i.onPointerLeave){const t=V(e),n=l.hovered.get(t);n?n.stopped&&e.stopPropagation():(l.hovered.set(t,e),null==i.onPointerOver||i.onPointerOver(e),null==i.onPointerEnter||i.onPointerEnter(e))}null==i.onPointerMove||i.onPointerMove(e)}else{const n=i[a];n?u&&!l.initialHits.includes(t)||(r(s,l.interaction.filter((e=>!l.initialHits.includes(e)))),n(e)):u&&l.initialHits.includes(t)&&r(s,l.interaction.filter((e=>!l.initialHits.includes(e))))}}))}}}}const X=["set","get","setSize","setFrameloop","setDpr","events","invalidate","advance","size","viewport"],q=e=>!(null==e||!e.render),K=r.createContext(null),Z=(e,t)=>{const n=(0,s.A)(((n,a)=>{const s=new i.Vector3,o=new i.Vector3,l=new i.Vector3;function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a().camera,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a().size;const{width:r,height:c,top:u,left:d}=n,p=r/c;t instanceof i.Vector3?l.copy(t):l.set(...t);const h=e.getWorldPosition(s).distanceTo(l);if(y(e))return{width:r/e.zoom,height:c/e.zoom,top:u,left:d,factor:1,distance:h,aspect:p};{const t=e.fov*Math.PI/180,n=2*Math.tan(t/2)*h,i=n*(r/c);return{width:i,height:n,top:u,left:d,factor:r/i,distance:h,aspect:p}}}let u;const d=e=>n((t=>({performance:{...t.performance,current:e}}))),p=new i.Vector2,h={set:n,get:a,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},xr:null,scene:null,invalidate:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return e(a(),t)},advance:(e,n)=>t(e,n,a()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new i.Clock,pointer:p,mouse:p,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{const e=a();u&&clearTimeout(u),e.performance.current!==e.performance.min&&d(e.performance.min),u=setTimeout((()=>d(a().performance.max)),e.performance.debounce)}},size:{width:0,height:0,top:0,left:0,updateStyle:!1},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:c},setEvents:e=>n((t=>({...t,events:{...t.events,...e}}))),setSize:(e,t,i,r,s)=>{const l=a().camera,u={width:e,height:t,top:r||0,left:s||0,updateStyle:i};n((e=>({size:u,viewport:{...e.viewport,...c(l,o,u)}})))},setDpr:e=>n((t=>{const n=R(e);return{viewport:{...t.viewport,dpr:n,initialDpr:t.viewport.initialDpr||n}}})),setFrameloop:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"always";const t=a().clock;t.stop(),t.elapsedTime=0,"never"!==e&&(t.start(),t.elapsedTime=0),n((()=>({frameloop:e})))},previousRoot:void 0,internal:{active:!1,priority:0,frames:0,lastEvent:r.createRef(),interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,subscribe:(e,t,n)=>{const i=a().internal;return i.priority=i.priority+(t>0?1:0),i.subscribers.push({ref:e,priority:t,store:n}),i.subscribers=i.subscribers.sort(((e,t)=>e.priority-t.priority)),()=>{const n=a().internal;null!=n&&n.subscribers&&(n.priority=n.priority-(t>0?1:0),n.subscribers=n.subscribers.filter((t=>t.ref!==e)))}}}};return h})),a=n.getState();let o=a.size,l=a.viewport.dpr,c=a.camera;return n.subscribe((()=>{const{camera:e,size:t,viewport:i,gl:r,set:a}=n.getState();if(t.width!==o.width||t.height!==o.height||i.dpr!==l){var s;o=t,l=i.dpr,Q(e,t),r.setPixelRatio(i.dpr);const n=null!=(s=t.updateStyle)?s:"undefined"!==typeof HTMLCanvasElement&&r.domElement instanceof HTMLCanvasElement;r.setSize(t.width,t.height,n)}e!==c&&(c=e,a((t=>({viewport:{...t.viewport,...t.viewport.getCurrentViewport(e)}}))))})),n.subscribe((t=>e(t))),n};let J,$=new Set,ee=new Set,te=new Set;function ne(e,t){if(e.size)for(const{callback:n}of e.values())n(t)}function ie(e,t){switch(e){case"before":return ne($,t);case"after":return ne(ee,t);case"tail":return ne(te,t)}}let re,ae;function se(e,t,n){let i=t.clock.getDelta();for("never"===t.frameloop&&"number"===typeof e&&(i=e-t.clock.elapsedTime,t.clock.oldTime=t.clock.elapsedTime,t.clock.elapsedTime=e),re=t.internal.subscribers,J=0;J0&&void 0!==arguments[0]?arguments[0]:e=>e,t=arguments.length>1?arguments[1]:void 0;return oe()(e,t)}function ce(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const n=oe(),i=n.getState().internal.subscribe,r=S(e);return x((()=>i(r,t,n)),[t,i,n]),null}const ue=new WeakMap;function de(e,t){return function(n){let i=ue.get(n);i||(i=new n,ue.set(n,i)),e&&e(i);for(var r=arguments.length,a=new Array(r>1?r-1:0),s=1;snew Promise(((n,r)=>i.load(e,(e=>{e.scene&&Object.assign(e,L(e.scene)),n(e)}),t,(t=>r(new Error("Could not load ".concat(e,": ").concat(null==t?void 0:t.message)))))))))).finally((()=>null==i.dispose?void 0:i.dispose()))}}function pe(e,t,n,i){const r=Array.isArray(t)?t:[t],a=h(de(n,i),[e,...r],{equal:N.equ});return Array.isArray(t)?a:a[0]}pe.preload=function(e,t,n){const i=Array.isArray(t)?t:[t];return((e,t,n)=>{p(e,t,!0,n)})(de(n),[e,...i])},pe.clear=function(e,t){return(e=>{if(void 0===e||0===e.length)u.splice(0,u.length);else{const t=u.find((t=>d(e,t.keys,t.equal)));t&&t.remove()}})([e,...Array.isArray(t)?t:[t]])};const he=new Map,{invalidate:fe,advance:me}=function(e){let t,n,i,r=!1;function a(s){n=requestAnimationFrame(a),r=!0,t=0,ie("before",s);for(const n of e.values()){var o;i=n.store.getState(),!i.internal.active||!("always"===i.frameloop||i.internal.frames>0)||null!=(o=i.gl.xr)&&o.isPresenting||(t+=se(s,i))}if(ie("after",s),0===t)return ie("tail",s),r=!1,cancelAnimationFrame(n)}return{loop:a,invalidate:function t(n){let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;var s;if(!n)return e.forEach((e=>t(e.store.getState(),i)));null!=(s=n.gl.xr)&&s.isPresenting||!n.internal.active||"never"===n.frameloop||(n.internal.frames=Math.min(60,n.internal.frames+i),r||(r=!0,requestAnimationFrame(a)))},advance:function(t){let n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0;if(n&&ie("before",t),i)se(t,i,r);else for(const a of e.values())se(t,a.store.getState());n&&ie("after",t)}}}(he),{reconciler:ge,applyProps:Ae}=function(e,t){function n(e,t,n){let r,{args:a=[],attach:s,...o}=t,l="".concat(e[0].toUpperCase()).concat(e.slice(1));if("primitive"===e){if(void 0===o.object)throw new Error("R3F: Primitives without 'object' are invalid!");r=D(o.object,{type:e,root:n,attach:s,primitive:!0})}else{const t=f[l];if(!t)throw new Error("R3F: ".concat(l," is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively"));if(!Array.isArray(a))throw new Error("R3F: The args prop must be an array!");r=D(new t(...a),{type:e,root:n,attach:s,memoizedProps:{args:a}})}return void 0===r.__r3f.attach&&(r instanceof i.BufferGeometry?r.__r3f.attach="geometry":r instanceof i.Material&&(r.__r3f.attach="material")),"inject"!==l&&z(r,o),r}function r(e,t){let n=!1;var i,r;t&&(null!=(i=t.__r3f)&&i.attach?B(e,t,t.__r3f.attach):t.isObject3D&&e.isObject3D&&(e.add(t),n=!0),n||null==(r=e.__r3f)||r.objects.push(t),t.__r3f||D(t,{}),t.__r3f.parent=e,G(t),j(t))}function s(e,t,n){let i=!1;if(t){var r,a;if(null!=(r=t.__r3f)&&r.attach)B(e,t,t.__r3f.attach);else if(t.isObject3D&&e.isObject3D){t.parent=e,t.dispatchEvent({type:"added"});const r=e.children.filter((e=>e!==t)),a=r.indexOf(n);e.children=[...r.slice(0,a),t,...r.slice(a)],i=!0}i||null==(a=e.__r3f)||a.objects.push(t),t.__r3f||D(t,{}),t.__r3f.parent=e,G(t),j(t)}}function o(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];e&&[...e].forEach((e=>u(t,e,n)))}function u(e,t,n){if(t){var i,r,a;if(t.__r3f&&(t.__r3f.parent=null),null!=(i=e.__r3f)&&i.objects&&(e.__r3f.objects=e.__r3f.objects.filter((e=>e!==t))),null!=(r=t.__r3f)&&r.attach)U(e,t,t.__r3f.attach);else if(t.isObject3D&&e.isObject3D){var s;e.remove(t),null!=(s=t.__r3f)&&s.root&&function(e,t){const{internal:n}=e.getState();n.interaction=n.interaction.filter((e=>e!==t)),n.initialHits=n.initialHits.filter((e=>e!==t)),n.hovered.forEach(((e,i)=>{e.eventObject!==t&&e.object!==t||n.hovered.delete(i)})),n.capturedMap.forEach(((e,i)=>{W(n.capturedMap,t,e,i)}))}(_(t),t)}const u=null==(a=t.__r3f)?void 0:a.primitive,d=!u&&(void 0===n?null!==t.dispose:n);var l;if(!u)o(null==(l=t.__r3f)?void 0:l.objects,t,d),o(t.children,t,d);if(delete t.__r3f,d&&t.dispose&&"Scene"!==t.type){const e=()=>{try{t.dispose()}catch(e){}};"undefined"===typeof IS_REACT_ACT_ENVIRONMENT?(0,c.unstable_scheduleCallback)(c.unstable_IdlePriority,e):e()}j(e)}}const d=()=>console.warn("Text is not allowed in the R3F tree! This could be stray whitespace or characters.");return{reconciler:l()({createInstance:n,removeChild:u,appendChild:r,appendInitialChild:r,insertBefore:s,supportsMutation:!0,isPrimaryRenderer:!1,supportsPersistence:!1,supportsHydration:!1,noTimeout:-1,appendChildToContainer:(e,t)=>{if(!t)return;const n=e.getState().scene;n.__r3f&&(n.__r3f.root=e,r(n,t))},removeChildFromContainer:(e,t)=>{t&&u(e.getState().scene,t)},insertInContainerBefore:(e,t,n)=>{if(!t||!n)return;const i=e.getState().scene;i.__r3f&&s(i,t,n)},getRootHostContext:()=>null,getChildHostContext:e=>e,finalizeInitialChildren(e){var t;const n=null!=(t=null==e?void 0:e.__r3f)?t:{};return Boolean(n.handlers)},prepareUpdate(e,t,n,i){var r;if((null!=(r=null==e?void 0:e.__r3f)?r:{}).primitive&&i.object&&i.object!==e)return[!0];{const{args:t=[],children:r,...a}=i,{args:s=[],children:o,...l}=n;if(!Array.isArray(t))throw new Error("R3F: the args prop must be an array!");if(t.some(((e,t)=>e!==s[t])))return[!0];const c=F(e,a,l,!0);return c.changes.length?[!1,c]:null}},commitUpdate(e,t,i,a,s,o){let[l,c]=t;l?function(e,t,i,a){var s;const o=null==(s=e.__r3f)?void 0:s.parent;if(!o)return;const l=n(t,i,e.__r3f.root);if(e.children){for(const t of e.children)t.__r3f&&r(l,t);e.children=e.children.filter((e=>!e.__r3f))}e.__r3f.objects.forEach((e=>r(l,e))),e.__r3f.objects=[],e.__r3f.autoRemovedBeforeAppend||u(o,e),l.parent&&(l.__r3f.autoRemovedBeforeAppend=!0),r(o,l),l.raycast&&l.__r3f.eventCount&&_(l).getState().internal.interaction.push(l);[a,a.alternate].forEach((e=>{null!==e&&(e.stateNode=l,e.ref&&("function"===typeof e.ref?e.ref(l):e.ref.current=l))}))}(e,i,s,o):z(e,c)},commitMount(e,t,n,i){var r;const a=null!=(r=e.__r3f)?r:{};e.raycast&&a.handlers&&a.eventCount&&_(e).getState().internal.interaction.push(e)},getPublicInstance:e=>e,prepareForCommit:()=>null,preparePortalMount:e=>D(e.getState().scene),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance(e){var t;const{attach:n,parent:i}=null!=(t=e.__r3f)?t:{};n&&i&&U(i,e,n),e.isObject3D&&(e.visible=!1),j(e)},unhideInstance(e,t){var n;const{attach:i,parent:r}=null!=(n=e.__r3f)?n:{};i&&r&&B(r,e,i),(e.isObject3D&&null==t.visible||t.visible)&&(e.visible=!0),j(e)},createTextInstance:d,hideTextInstance:d,unhideTextInstance:d,getCurrentEventPriority:()=>t?t():a.DefaultEventPriority,beforeActiveInstanceBlur:()=>{},afterActiveInstanceBlur:()=>{},detachDeletedInstance:()=>{},now:"undefined"!==typeof performance&&N.fun(performance.now)?performance.now:N.fun(Date.now)?Date.now:()=>0,scheduleTimeout:N.fun(setTimeout)?setTimeout:void 0,cancelTimeout:N.fun(clearTimeout)?clearTimeout:void 0}),applyProps:z}}(0,(function(){var e;const t="undefined"!==typeof self&&self||"undefined"!==typeof window&&window;if(!t)return a.DefaultEventPriority;switch(null==(e=t.event)?void 0:e.type){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return a.DiscreteEventPriority;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return a.ContinuousEventPriority;default:return a.DefaultEventPriority}})),ve={objects:"shallow",strict:!1},be=(e,t)=>{const n="function"===typeof e?e(t):e;return q(n)?n:new i.WebGLRenderer({powerPreference:"high-performance",canvas:t,antialias:!0,alpha:!0,...e})};function ye(e){const t=he.get(e),n=null==t?void 0:t.fiber,s=null==t?void 0:t.store;t&&console.warn("R3F.createRoot should only be called once!");const o="function"===typeof reportError?reportError:console.error,l=s||Z(fe,me),c=n||ge.createContainer(l,a.ConcurrentRoot,null,!1,null,"",o,null);let u;t||he.set(e,{fiber:c,store:l});let d,p=!1;return{configure(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{gl:n,size:r,scene:a,events:s,onCreated:o,shadows:c=!1,linear:h=!1,flat:f=!1,legacy:m=!1,orthographic:g=!1,frameloop:A="always",dpr:v=[1,2],performance:y,raycaster:E,camera:x,onPointerMissed:S}=t,T=l.getState(),C=T.gl;T.gl||T.set({gl:C=be(n,e)});let w=T.raycaster;w||T.set({raycaster:w=new i.Raycaster});const{params:M,...I}=E||{};if(N.equ(I,w,ve)||Ae(w,{...I}),N.equ(M,w.params,ve)||Ae(w,{params:{...w.params,...M}}),!T.camera||T.camera===d&&!N.equ(d,x,ve)){d=x;const e=x instanceof i.Camera,t=e?x:g?new i.OrthographicCamera(0,0,0,0,.1,1e3):new i.PerspectiveCamera(75,0,.1,1e3);e||(t.position.z=5,x&&Ae(t,x),T.camera||null!=x&&x.rotation||t.lookAt(0,0,0)),T.set({camera:t}),w.camera=t}if(!T.scene){let e;a instanceof i.Scene?e=a:(e=new i.Scene,a&&Ae(e,a)),T.set({scene:D(e)})}if(!T.xr){var P;const e=(e,t)=>{const n=l.getState();"never"!==n.frameloop&&me(e,!0,n,t)},t=()=>{const t=l.getState();t.gl.xr.enabled=t.gl.xr.isPresenting,t.gl.xr.setAnimationLoop(t.gl.xr.isPresenting?e:null),t.gl.xr.isPresenting||fe(t)},n={connect(){const e=l.getState().gl;e.xr.addEventListener("sessionstart",t),e.xr.addEventListener("sessionend",t)},disconnect(){const e=l.getState().gl;e.xr.removeEventListener("sessionstart",t),e.xr.removeEventListener("sessionend",t)}};"function"===typeof(null==(P=C.xr)?void 0:P.addEventListener)&&n.connect(),T.set({xr:n})}if(C.shadowMap){const e=C.shadowMap.enabled,t=C.shadowMap.type;if(C.shadowMap.enabled=!!c,N.boo(c))C.shadowMap.type=i.PCFSoftShadowMap;else if(N.str(c)){var _;const e={basic:i.BasicShadowMap,percentage:i.PCFShadowMap,soft:i.PCFSoftShadowMap,variance:i.VSMShadowMap};C.shadowMap.type=null!=(_=e[c])?_:i.PCFSoftShadowMap}else N.obj(c)&&Object.assign(C.shadowMap,c);e===C.shadowMap.enabled&&t===C.shadowMap.type||(C.shadowMap.needsUpdate=!0)}const L=b();if(L&&("enabled"in L?L.enabled=!m:"legacyMode"in L&&(L.legacyMode=m)),!p){Ae(C,{outputEncoding:h?3e3:3001,toneMapping:f?i.NoToneMapping:i.ACESFilmicToneMapping})}T.legacy!==m&&T.set((()=>({legacy:m}))),T.linear!==h&&T.set((()=>({linear:h}))),T.flat!==f&&T.set((()=>({flat:f}))),!n||N.fun(n)||q(n)||N.equ(n,C,ve)||Ae(C,n),s&&!T.events.handlers&&T.set({events:s(l)});const k=function(e,t){const n="undefined"!==typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement;if(t){const{width:e,height:i,top:r,left:a,updateStyle:s=n}=t;return{width:e,height:i,top:r,left:a,updateStyle:s}}if("undefined"!==typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&e.parentElement){const{width:t,height:i,top:r,left:a}=e.parentElement.getBoundingClientRect();return{width:t,height:i,top:r,left:a,updateStyle:n}}return"undefined"!==typeof OffscreenCanvas&&e instanceof OffscreenCanvas?{width:e.width,height:e.height,top:0,left:0,updateStyle:n}:{width:0,height:0,top:0,left:0}}(e,r);return N.equ(k,T.size,ve)||T.setSize(k.width,k.height,k.updateStyle,k.top,k.left),v&&T.viewport.dpr!==R(v)&&T.setDpr(v),T.frameloop!==A&&T.setFrameloop(A),T.onPointerMissed||T.set({onPointerMissed:S}),y&&!N.equ(y,T.performance,ve)&&T.set((e=>({performance:{...e.performance,...y}}))),u=o,p=!0,this},render(t){return p||this.configure(),ge.updateContainer(r.createElement(Ee,{store:l,children:t,onCreated:u,rootElement:e}),c,null,(()=>{})),l},unmount(){xe(e)}}}function Ee(e){let{store:t,children:n,onCreated:i,rootElement:a}=e;return x((()=>{const e=t.getState();e.set((e=>({internal:{...e.internal,active:!0}}))),i&&i(e),t.getState().events.connected||null==e.events.connect||e.events.connect(a)}),[]),r.createElement(K.Provider,{value:t},n)}function xe(e,t){const n=he.get(e),i=null==n?void 0:n.fiber;if(i){const r=null==n?void 0:n.store.getState();r&&(r.internal.active=!1),ge.updateContainer(null,i,null,(()=>{r&&setTimeout((()=>{try{var n,i,a,s;null==r.events.disconnect||r.events.disconnect(),null==(n=r.gl)||null==(i=n.renderLists)||null==i.dispose||i.dispose(),null==(a=r.gl)||null==a.forceContextLoss||a.forceContextLoss(),null!=(s=r.gl)&&s.xr&&r.xr.disconnect(),function(e){e.dispose&&"Scene"!==e.type&&e.dispose();for(const t in e)null==t.dispose||t.dispose(),delete e[t]}(r),he.delete(e),t&&t(e)}catch(o){}}),500)}))}}function Se(e,t,n){return r.createElement(Te,{key:t.uuid,children:e,container:t,state:n})}function Te(e){let{state:t={},children:n,container:a}=e;const{events:o,size:l,...c}=t,u=oe(),[d]=r.useState((()=>new i.Raycaster)),[p]=r.useState((()=>new i.Vector2)),h=r.useCallback(((e,t)=>{const n={...e};let r;if(Object.keys(e).forEach((i=>{(X.includes(i)||e[i]!==t[i]&&t[i])&&delete n[i]})),t&&l){const n=t.camera;r=e.viewport.getCurrentViewport(n,new i.Vector3,l),n!==e.camera&&Q(n,l)}return{...n,scene:a,raycaster:d,pointer:p,mouse:p,previousRoot:u,events:{...e.events,...null==t?void 0:t.events,...o},size:{...e.size,...l},viewport:{...e.viewport,...r},...c}}),[t]),[f]=r.useState((()=>{const e=u.getState(),t=(0,s.A)(((t,n)=>({...e,scene:a,raycaster:d,pointer:p,mouse:p,previousRoot:u,events:{...e.events,...o},size:{...e.size,...l},...c,set:t,get:n,setEvents:e=>t((t=>({...t,events:{...t.events,...e}})))})));return t}));return r.useEffect((()=>{const e=u.subscribe((e=>f.setState((t=>h(e,t)))));return()=>{e(),f.destroy()}}),[]),r.useEffect((()=>{f.setState((e=>h(u.getState(),e)))}),[h]),r.createElement(r.Fragment,null,ge.createPortal(r.createElement(K.Provider,{value:f},n),f,null))}ge.injectIntoDevTools({bundleType:0,rendererPackageName:"@react-three/fiber",version:r.version});r.unstable_act},19356:e=>{function t(e,t,n){var i,r,a,s,o;function l(){var c=Date.now()-s;c=0?i=setTimeout(l,t-c):(i=null,n||(o=e.apply(a,r),a=r=null))}null==t&&(t=100);var c=function(){a=this,r=arguments,s=Date.now();var c=n&&!i;return i||(i=setTimeout(l,t)),c&&(o=e.apply(a,r),a=r=null),o};return c.clear=function(){i&&(clearTimeout(i),i=null)},c.flush=function(){i&&(o=e.apply(a,r),a=r=null,clearTimeout(i),i=null)},c}t.debounce=t,e.exports=t},80755:e=>{"use strict";var t=Object.prototype.hasOwnProperty,n=Object.prototype.toString,i=Object.defineProperty,r=Object.getOwnPropertyDescriptor,a=function(e){return"function"===typeof Array.isArray?Array.isArray(e):"[object Array]"===n.call(e)},s=function(e){if(!e||"[object Object]"!==n.call(e))return!1;var i,r=t.call(e,"constructor"),a=e.constructor&&e.constructor.prototype&&t.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!r&&!a)return!1;for(i in e);return"undefined"===typeof i||t.call(e,i)},o=function(e,t){i&&"__proto__"===t.name?i(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},l=function(e,n){if("__proto__"===n){if(!t.call(e,n))return;if(r)return r(e,n).value}return e[n]};e.exports=function e(){var t,n,i,r,c,u,d=arguments[0],p=1,h=arguments.length,f=!1;for("boolean"===typeof d&&(f=d,d=arguments[1]||{},p=2),(null==d||"object"!==typeof d&&"function"!==typeof d)&&(d={});p{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,i=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,o=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(l,c):c}e.exports=function(e,l){if("string"!==typeof e)throw new TypeError("First argument must be a string");if(!e)return[];l=l||{};var d=1,p=1;function h(e){var t=e.match(n);t&&(d+=t.length);var i=e.lastIndexOf("\n");p=~i?e.length-i:p+e.length}function f(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=l.source}m.prototype.content=e;var g=[];function A(t){var n=new Error(l.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=l.source,n.line=d,n.column=p,n.source=e,!l.silent)throw n;g.push(n)}function v(t){var n=t.exec(e);if(n){var i=n[0];return h(i),e=e.slice(i.length),n}}function b(){v(i)}function y(e){var t;for(e=e||[];t=E();)!1!==t&&e.push(t);return e}function E(){var t=f();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return A("End of comment missing");var i=e.slice(2,n-2);return p+=2,h(i),e=e.slice(n),p+=2,t({type:"comment",comment:i})}}function x(){var e=f(),n=v(r);if(n){if(E(),!v(a))return A("property missing ':'");var i=v(s),l=e({type:"declaration",property:u(n[0].replace(t,c)),value:i?u(i[0].replace(t,c)):c});return v(o),l}}return b(),function(){var e,t=[];for(y(t);e=x();)!1!==e&&(t.push(e),y(t));return t}()}},90540:(e,t,n)=>{"use strict";n(5084),n(75885),t.Ay=t.ih=void 0;var i,r=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!==typeof e)return{default:e};var t=s();if(t&&t.has(e))return t.get(e);var n={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){var a=i?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(n,r,a):n[r]=e[r]}n.default=e,t&&t.set(e,n);return n}(n(50094)),a=(i=n(11942))&&i.__esModule?i:{default:i};function s(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return s=function(){return e},e}function o(e){return o="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function l(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t{"use strict";var i=n(26470),r="function"===typeof Symbol&&Symbol.for,a=r?Symbol.for("react.element"):60103,s=r?Symbol.for("react.portal"):60106,o=r?Symbol.for("react.fragment"):60107,l=r?Symbol.for("react.strict_mode"):60108,c=r?Symbol.for("react.profiler"):60114,u=r?Symbol.for("react.provider"):60109,d=r?Symbol.for("react.context"):60110,p=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,f=r?Symbol.for("react.memo"):60115,m=r?Symbol.for("react.lazy"):60116,g="function"===typeof Symbol&&Symbol.iterator;function A(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nP.length&&P.push(e)}function L(e,t,n,i){var r=typeof e;"undefined"!==r&&"boolean"!==r||(e=null);var o=!1;if(null===e)o=!0;else switch(r){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case a:case s:o=!0}}if(o)return n(i,e,""===t?"."+k(e,0):t),1;if(o=0,t=""===t?".":t+":",Array.isArray(e))for(var l=0;l{"use strict";e.exports=n(88289)},26470:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach((function(e){i[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(r){return!1}}()?Object.assign:function(e,r){for(var a,s,o=function(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l{"use strict";var i=n(93959);function r(){}function a(){}a.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,a,s){if(s!==i){var o=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw o.name="Invariant Violation",o}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:r};return n.PropTypes=n,n}},11942:(e,t,n)=>{e.exports=n(43488)()},93959:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},38345:(e,t,n)=>{"use strict";var i=n(9950),r=n(13204);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n