cuelo 0.8.1 → 0.8.2

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.
Files changed (92) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +7 -7
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/react-loadable-manifest.json +3 -3
  6. package/.next/required-server-files.js +2 -2
  7. package/.next/required-server-files.json +2 -2
  8. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_global-error.html +1 -1
  10. package/.next/server/app/_global-error.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/server/app/_not-found.html +1 -1
  19. package/.next/server/app/_not-found.rsc +2 -2
  20. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  21. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  23. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  26. package/.next/server/app/api/updates/route.js +1 -1
  27. package/.next/server/app/index.html +1 -1
  28. package/.next/server/app/index.rsc +6 -6
  29. package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  30. package/.next/server/app/index.segments/_full.segment.rsc +6 -6
  31. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  32. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  33. package/.next/server/app/index.segments/_tree.segment.rsc +3 -3
  34. package/.next/server/app/office-preview/page.js +1 -1
  35. package/.next/server/app/office-preview/page.js.nft.json +1 -1
  36. package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
  37. package/.next/server/app/office-preview.html +1 -1
  38. package/.next/server/app/office-preview.rsc +3 -3
  39. package/.next/server/app/office-preview.segments/_full.segment.rsc +3 -3
  40. package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
  41. package/.next/server/app/office-preview.segments/_index.segment.rsc +2 -2
  42. package/.next/server/app/office-preview.segments/_tree.segment.rsc +2 -2
  43. package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +2 -2
  44. package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
  45. package/.next/server/app/page.js +16 -16
  46. package/.next/server/app/page.js.nft.json +1 -1
  47. package/.next/server/app/page_client-reference-manifest.js +1 -1
  48. package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
  49. package/.next/server/app/recover.html +1 -1
  50. package/.next/server/app/recover.rsc +2 -2
  51. package/.next/server/app/recover.segments/_full.segment.rsc +2 -2
  52. package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
  53. package/.next/server/app/recover.segments/_index.segment.rsc +2 -2
  54. package/.next/server/app/recover.segments/_tree.segment.rsc +1 -1
  55. package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
  56. package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
  57. package/.next/server/app-paths-manifest.json +7 -7
  58. package/.next/server/chunks/1933.js +353 -0
  59. package/.next/server/chunks/2607.js +1 -1
  60. package/.next/server/middleware-build-manifest.js +1 -1
  61. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  62. package/.next/server/pages/404.html +1 -1
  63. package/.next/server/pages/500.html +1 -1
  64. package/.next/server/server-reference-manifest.json +1 -1
  65. package/.next/static/chunks/8637.5c189b15878e878b.js +1 -0
  66. package/.next/static/chunks/9703.36cc00cc10e10f45.js +1 -0
  67. package/.next/static/chunks/9889-4e472951b0a45120.js +1 -0
  68. package/.next/static/chunks/app/{layout-27cec017946e8765.js → layout-78440a2c8d3cd1c7.js} +1 -1
  69. package/.next/static/chunks/app/office-preview/page-68828399eb58177b.js +1 -0
  70. package/.next/static/chunks/app/page-a4c4acecc034872f.js +22 -0
  71. package/.next/static/chunks/webpack-aba44445f0ef2ed9.js +1 -0
  72. package/.next/static/css/aab5fc8ab1b53780.css +1 -0
  73. package/.next/static/css/d6462eb5a4d2cb8c.css +1 -0
  74. package/.next/trace +107 -106
  75. package/.next/trace-build +1 -1
  76. package/README.md +2 -2
  77. package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
  78. package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +253 -18
  79. package/package.json +7 -7
  80. package/public/office3d/ASSETS.md +51 -4
  81. package/public/office3d/office-kit.glb +0 -0
  82. package/.next/server/chunks/3602.js +0 -353
  83. package/.next/static/chunks/1937.70e7ce89f87f1119.js +0 -1
  84. package/.next/static/chunks/2992.16b931bb2dfe8845.js +0 -1
  85. package/.next/static/chunks/9889-481b318dcf48ee30.js +0 -1
  86. package/.next/static/chunks/app/office-preview/page-5874dc1ab28d3b1d.js +0 -1
  87. package/.next/static/chunks/app/page-95261aed574d5860.js +0 -22
  88. package/.next/static/chunks/webpack-d2da69f7c8164141.js +0 -1
  89. package/.next/static/css/001d6e9d9d06b017.css +0 -1
  90. package/.next/static/css/abd3d00cca9457f7.css +0 -1
  91. /package/.next/static/{_VEUT2T9aZcGJdOeXmxhm → 3xAqEONTnox8I-4Te8HCx}/_buildManifest.js +0 -0
  92. /package/.next/static/{_VEUT2T9aZcGJdOeXmxhm → 3xAqEONTnox8I-4Te8HCx}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1937],{11937:(e,t,s)=>{s.r(t),s.d(t,{default:()=>W});var a=s(95155),o=s(12115),n=s(15692),r=s(86275),i=s(42412),l=s(3270),h=s(56369);let d=[{hair:"#1d1719",length:"long",bangs:"curtain",eyes:"#c97828",eyeShape:"sharp",skin:"#f6d5c3",outfit:"#1c1a1f",inner:"#2e282d",accent:"#d4a853",skirt:"#151417",legs:"#1a171b",accessories:[{kind:"bow",color:"#a82e37",x:-.16,y:.1,z:-.12,size:1.35,tails:!0},{kind:"pendant",color:"#d6a84c"}]},{hair:"#b08261",length:"bob",bangs:"wispy",eyes:"#3b9b52",eyeShape:"round",skin:"#ffe8d6",outfit:"#2d292b",inner:"#e6e1dc",accent:"#c0b8b2",hood:!0,skirt:"#3b3a40",legs:"#2c2b30",accessories:[{kind:"pendant",color:"#cba052"}]},{hair:"#c8d3e6",length:"short",bangs:"swept",ahoge:!0,eyes:"#2d76c9",eyeShape:"round",skin:"#fce6d6",outfit:"#222b38",inner:"#15171b",accent:"#29c4d8",stripe:"#d97026",skirt:"#2a3545",legs:"#262b34",accessories:[{kind:"goggles",frame:"#b88636",lens:"#d98a2c"},{kind:"pendant",color:"#b88b46"}]},{hair:"#f48cb6",length:"bob",bangs:"choppy",ahoge:!0,ponytail:{x:1,high:!0},eyes:"#7638b5",eyeShape:"sharp",skin:"#fde8e1",outfit:"#1b1822",inner:"#2e2a36",accent:"#8a5cf6",skirt:"#15131c",legs:"#1b1820",accessories:[{kind:"bow",color:"#18151d",x:.215,y:.17,z:-.02,size:1.1},{kind:"choker",color:"#18151d"}]},{hair:"#162650",streak:"#3d9be9",length:"long",bangs:"choppy",ahoge:!0,ponytail:{x:-1,high:!0},eyes:"#2c8ef8",eyeShape:"round",skin:"#fde8de",outfit:"#141720",inner:"#1f2433",accent:"#68b2f8",hood:!0,skirt:"#1f2433",legs:"#14161f",accessories:[{kind:"clip",color:"#b8dcff",x:-1,shape:"whale"},{kind:"choker",color:"#4ee2ec"}]},{hair:"#11161b",streak:"#00c9b4",length:"bob",bangs:"swept",ahoge:!0,braid:{x:1,color:"#00a896"},eyes:"#00d6bc",eyeShape:"sharp",skin:"#fcece5",outfit:"#1d1f24",inner:"#141416",accent:"#e0e5eb",skirt:"#151517",legs:"#18191c",accessories:[{kind:"clip",color:"#00f0ff",x:1,shape:"x"},{kind:"glasses",color:"#d8dfe5"}]},{hair:"#9c5430",length:"bob",bangs:"curtain",braid:{x:1},eyes:"#c88225",eyeShape:"round",skin:"#f6d3b6",outfit:"#d8bc94",inner:"#efeae0",accent:"#2e2a27",skirt:"#5a4636",legs:"#3f3732",accessories:[{kind:"clip",color:"#a8a49d",x:1,shape:"camera"},{kind:"pendant",color:"#2e2a27"}]}],c={hair:"#9aa0a8",length:"short",bangs:"choppy",eyes:"#4b5058",eyeShape:"round",skin:"#c9ccd2",outfit:"#7d838d",inner:"#9aa0a8",accent:"#b6bbc3",legs:"#5d626b",accessories:[]},p=.36+.31+.19+.2+.02,f=.36+.31+.19+.2+.02+.12;function g(e,t,s,a,o,n,r=[0,0,0],l="XYZ"){let h=new i.eaF(s,"string"==typeof a?e.material(a):a);return h.position.set(...o),h.scale.set(...n),h.rotation.set(r[0],r[1],r[2],l),t.add(h),h}function u(e,t){let s=new i.YJl;return s.position.set(...t),e.add(s),s}function m(e,t,s,{angle:a,rootY:o,length:n,width:r,tilt:i=.32,roll:l=0,depth:h=.035,lift:d=.012}){g(e,t,e.geometry.cone,s,function(e,t,s=0){let a=.2*Math.sqrt(Math.max(0,1-(e/.194)**2))+s;return[Math.sin(t)*a,.19+e,Math.cos(t)*a*.95]}(o-.45*n,a,d),[r,n,h],[Math.PI-i,a,l],"YXZ")}let x={choppy:[{angle:-.95,length:.15,width:.055},{angle:-.55,length:.125,width:.06},{angle:-.18,length:.11,width:.06},{angle:.2,length:.13,width:.06},{angle:.58,length:.115,width:.06},{angle:.95,length:.15,width:.055}],curtain:[{angle:-1,length:.19,width:.055,roll:.12},{angle:-.62,length:.15,width:.06,roll:.22},{angle:-.26,length:.1,width:.055,roll:.35},{angle:.26,length:.1,width:.055,roll:-.35},{angle:.62,length:.15,width:.06,roll:-.22},{angle:1,length:.19,width:.055,roll:-.12}],swept:[{angle:-.95,length:.16,width:.06,roll:-.25},{angle:-.55,length:.14,width:.065,roll:-.4},{angle:-.15,length:.125,width:.065,roll:-.45},{angle:.25,length:.11,width:.065,roll:-.45},{angle:.62,length:.1,width:.06,roll:-.35},{angle:.98,length:.13,width:.055,roll:-.2}],wispy:[{angle:-.95,length:.16,width:.05},{angle:-.5,length:.12,width:.042,roll:.15},{angle:-.12,length:.105,width:.04},{angle:.3,length:.12,width:.042,roll:-.15},{angle:.95,length:.16,width:.05}]},b={short:.22,bob:.27,long:.44},w=new i.Pq0(-.15,.35,.2),y=new i.Pq0(1.2,4.9,8.2),k=[-3.95,3.4].flatMap(e=>[0,1.15].flatMap(t=>[-2,3].map(s=>new i.Pq0(e,t,s))));function M(e,t){return Math.atan2(Math.sin(t-e),Math.cos(t-e))}function j(){let e=(0,n.D)(e=>e.camera),t=(0,n.D)(e=>e.size.width/Math.max(e.size.height,1)),s=(0,n.D)(e=>e.invalidate);return(0,o.useEffect)(()=>{e instanceof i.ubm&&(e.aspect=t,e.updateProjectionMatrix());let a=new i.Pq0,o=t=>(e.position.copy(y).multiplyScalar(t).add(w),e.lookAt(w),e.updateMatrixWorld(),k.every(t=>(a.copy(t).project(e),.94>=Math.abs(a.x)&&.94>=Math.abs(a.y)))),n=1,r=2.6;if(!o(1)){for(let e=0;e<14;e+=1){let e=(n+r)/2;o(e)?r=e:n=e}o(r)}s()},[t,e,s]),null}function v(e,t,s){return s<t?(t+s)/2:Math.min(s,Math.max(t,e))}function S(e,t,s,a,o,n,r){let i=s;for(let s=0;s<=t.length;s+=1){e.top=i-o,e.bottom=i;let s=t.find(t=>e.left<t.right&&t.left<e.right&&e.top<t.bottom&&t.top<e.bottom);if(!s)return i;if((i=a?s.top-4:s.bottom+4+o)<n||i>r)break}return null}function P({shared:e,bubbles:t,reserved:s,onReady:a}){let r=(0,n.D)(e=>e.camera),l=(0,n.D)(e=>e.size),h=(0,n.D)(e=>e.invalidate),d=(0,o.useMemo)(()=>({point:new i.Pq0,written:new Map,sizes:new Map,observer:null,items:[],placed:[],blocked:[],ready:!1}),[]);return(0,o.useEffect)(()=>{let e="u"<typeof ResizeObserver?null:new ResizeObserver(e=>{for(let t of e){let e=t.borderBoxSize?.[0],s=t.target;d.sizes.set(s,e?{width:e.inlineSize,height:e.blockSize}:{width:s.offsetWidth,height:s.offsetHeight})}h()});return d.observer=e,()=>{e?.disconnect(),d.observer=null,d.sizes.clear(),d.written.clear()}},[h,d]),(0,n.F)(()=>{let o=d.blocked;for(let e of(o.length=0,s.values())){let t=e.offsetLeft,s=e.offsetTop;o.push({left:t,top:s,right:t+e.offsetWidth,bottom:s+e.offsetHeight})}let n=d.items;for(let[s,a]of(n.length=0,e.heads)){let e=t.get(s);if(!e)continue;let o=d.sizes.get(e);o||(o={width:e.offsetWidth,height:e.offsetHeight},d.sizes.set(e,o),d.observer?.observe(e)),a.head.getWorldPosition(d.point),d.point.y+=f-p+.22+.42*a.lift,d.point.project(r),n.push({key:s,element:e,x:(d.point.x+1)/2*l.width,y:(1-d.point.y)/2*l.height,depth:d.point.z,width:o.width,height:o.height,rest:a.rest})}n.sort((e,t)=>e.rest===t.rest?e.rest?t.y-e.y:0:e.rest?1:-1);let i=d.placed;for(let e of(i.length=0,n)){let t=6*!e.rest,s=e.width/2,a=v(e.x,s+4,l.width-s-4),n=e.height+4;for(let t of o)a-s<t.right&&t.left<a+s&&(n=Math.max(n,t.bottom+4+e.height));let r=l.height-4-t,h=v(e.y,n,r),c={left:a-s,right:a+s,top:h-e.height,bottom:h+t};e.rest&&(h=S(c,i,h,!0,e.height,n,r)??S(c,i,h,!1,e.height,n,r)??h,c.top=h-e.height,c.bottom=h),i.push(c);let p=`translate(${Math.round(a)}px, ${Math.round(h)}px) translate(-50%, -100%)`;d.written.get(e.key)!==p&&(d.written.set(e.key,p),e.element.style.transform=p,e.element.style.zIndex=String(Math.round((1-e.depth)*1e4)),e.element.dataset.placed="true")}d.ready||(d.ready=!0,a())}),null}function z({x:e,z:t,width:s,cushion:o,chairs:n,lit:r}){let i=s/2-.05,l=n.length>0?n:[{x:e,z:t-.3,key:""}];return(0,a.jsxs)("group",{children:[(0,a.jsxs)("mesh",{position:[e,.42,t],children:[(0,a.jsx)("boxGeometry",{args:[s,.04,.5]}),(0,a.jsx)("meshStandardMaterial",{color:"#b48a62",roughness:.7})]}),[[-i,-.2],[i,-.2],[-i,.2],[i,.2]].map(([s,o])=>(0,a.jsxs)("mesh",{position:[e+s,.21,t+o],children:[(0,a.jsx)("boxGeometry",{args:[.04,.42,.04]}),(0,a.jsx)("meshStandardMaterial",{color:"#5b4a3b"})]},`${s}:${o}`)),l.map(e=>{let t=!!e.key&&!0===r.get(e.key),s=""!==e.key;return(0,a.jsxs)("group",{children:[(0,a.jsxs)("group",{position:[e.x,.445,e.z+.3],children:[(0,a.jsxs)("mesh",{children:[(0,a.jsx)("boxGeometry",{args:[.3,.012,.2]}),(0,a.jsx)("meshStandardMaterial",{color:"#3a3e45"})]}),s?(0,a.jsxs)("group",{position:[0,.005,.1],"rotation-x":-.25,children:[(0,a.jsxs)("mesh",{position:[0,.1,0],children:[(0,a.jsx)("boxGeometry",{args:[.3,.2,.012]}),(0,a.jsx)("meshStandardMaterial",{color:"#3a3e45"})]}),(0,a.jsxs)("mesh",{position:[0,.1,-.007],"rotation-y":Math.PI,children:[(0,a.jsx)("planeGeometry",{args:[.27,.17]}),(0,a.jsx)("meshStandardMaterial",{color:t?"#a8d8ff":"#1f2329",emissive:t?"#5fb2ff":"#000000",emissiveIntensity:.9*!!t})]}),(0,a.jsxs)("mesh",{position:[0,.11,.007],children:[(0,a.jsx)("circleGeometry",{args:[.025,16]}),(0,a.jsx)("meshStandardMaterial",{color:t?"#cfe9ff":"#565b63",emissive:t?"#7cc4ff":"#000000",emissiveIntensity:1.2*!!t})]})]}):(0,a.jsxs)("mesh",{position:[0,.012,0],children:[(0,a.jsx)("boxGeometry",{args:[.3,.012,.2]}),(0,a.jsx)("meshStandardMaterial",{color:"#4a4f57"})]})]}),(0,a.jsxs)("group",{position:[e.x,0,e.z-.06*!!s],children:[(0,a.jsxs)("mesh",{position:[0,.2,0],children:[(0,a.jsx)("boxGeometry",{args:[.36,.05,.34]}),(0,a.jsx)("meshStandardMaterial",{color:o,roughness:.85})]}),(0,a.jsxs)("mesh",{position:[0,.25+.17,-.18],children:[(0,a.jsx)("boxGeometry",{args:[.36,.38,.04]}),(0,a.jsx)("meshStandardMaterial",{color:o,roughness:.85})]}),(0,a.jsxs)("mesh",{position:[0,.1,0],children:[(0,a.jsx)("cylinderGeometry",{args:[.025,.025,.2,8]}),(0,a.jsx)("meshStandardMaterial",{color:"#2f3236"})]})]})]},e.key||"tucked")})]})}function G({layout:e,lit:t}){let s=(0,o.useMemo)(()=>e.desks.map((t,s)=>e.stations.filter(e=>e.deskIndex===s).map(e=>({x:e.desk.point.x,z:e.desk.point.z,key:e.key}))),[e]);return(0,a.jsxs)("group",{children:[(0,a.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[0,0,.15],children:[(0,a.jsx)("planeGeometry",{args:[8.4,5.9]}),(0,a.jsx)("meshStandardMaterial",{color:"#ddd6ca",roughness:.95})]}),(0,a.jsxs)("mesh",{position:[0,1.2,-2.85],children:[(0,a.jsx)("boxGeometry",{args:[8.4,2.4,.1]}),(0,a.jsx)("meshStandardMaterial",{color:"#ece7dd",roughness:1})]}),(0,a.jsxs)("mesh",{position:[-4.25,1.2,.15],children:[(0,a.jsx)("boxGeometry",{args:[.1,2.4,6]}),(0,a.jsx)("meshStandardMaterial",{color:"#e3ddd1",roughness:1})]}),(0,a.jsxs)("mesh",{position:[-4.195,.95,l.kn.z],"rotation-y":Math.PI/2,children:[(0,a.jsx)("planeGeometry",{args:[.9,1.9]}),(0,a.jsx)("meshStandardMaterial",{color:"#8a7a66",roughness:.8})]}),(0,a.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[.3,.004,1.85],children:[(0,a.jsx)("circleGeometry",{args:[1.25,48]}),(0,a.jsx)("meshStandardMaterial",{color:"#c3ccbd",roughness:1})]}),(0,a.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[-2.95,.004,2],children:[(0,a.jsx)("planeGeometry",{args:[2.3,2.1]}),(0,a.jsx)("meshStandardMaterial",{color:"#e8d9c2",roughness:1})]}),(0,a.jsxs)("group",{position:[l.JE.center.x,0,l.JE.center.z],children:[(0,a.jsxs)("mesh",{position:[0,.18,.12],children:[(0,a.jsx)("boxGeometry",{args:[l.JE.width,.14,.42]}),(0,a.jsx)("meshStandardMaterial",{color:"#8c9a8a",roughness:.9})]}),(0,a.jsxs)("mesh",{position:[0,.37,-.12],children:[(0,a.jsx)("boxGeometry",{args:[l.JE.width,.42,.12]}),(0,a.jsx)("meshStandardMaterial",{color:"#7d8b7b",roughness:.9})]}),[-1,1].map(e=>(0,a.jsxs)("mesh",{position:[e*(l.JE.width/2+.05),.25,.06],children:[(0,a.jsx)("boxGeometry",{args:[.1,.3,.5]}),(0,a.jsx)("meshStandardMaterial",{color:"#7d8b7b",roughness:.9})]},e))]}),(0,a.jsxs)("group",{position:[-1.95,0,1.15],children:[(0,a.jsxs)("mesh",{position:[0,.15,0],children:[(0,a.jsx)("cylinderGeometry",{args:[.13,.1,.3,14]}),(0,a.jsx)("meshStandardMaterial",{color:"#b0704a"})]}),(0,a.jsxs)("mesh",{position:[0,.48,0],children:[(0,a.jsx)("sphereGeometry",{args:[.24,14,10]}),(0,a.jsx)("meshStandardMaterial",{color:"#6f9a62",roughness:.9})]})]}),e.desks.map((e,o)=>(0,a.jsx)(z,{x:e.center.x,z:e.center.z,width:e.width,cushion:null===e.seat?"#9aa0a8":d[e.seat%d.length].hair,chairs:s[o],lit:t},`${e.seat??"guest"}:${o}`))]})}function E({actorKey:e,seat:t,shared:s,target:r,selected:f,onSelect:w,onHover:y,onMotionChange:k}){let j=(0,n.D)(e=>e.gl),v=(0,n.D)(e=>e.invalidate),S=(0,o.useMemo)(()=>{let e=null===t?c:d[t%d.length];return function(e,t,s=!1){let{sphere:a,cylinder:o,torso:n,box:r}=e.geometry,l=new i.YJl,d=u(l,[0,0,0]),c=u(d,[.062,.36,0]),p=u(d,[-.062,.36,0]);for(let s of[c,p])g(e,s,o,t.legs,[0,-.15,0],[.048,.3,.048]),g(e,s,r,"#2b2a2e",[0,-.322,.022],[.08,.045,.13]);let f=u(d,[0,.36,0]);g(e,f,n,t.outfit,[0,.15,0],[.15,.3,.122]),g(e,f,r,t.inner,[0,.17,.106],[.075,.2,.02],[-.13,0,0]),g(e,f,e.geometry.ring,t.accent,[0,.3,0],[.08,.08,.065],[Math.PI/2,0,0]),g(e,f,o,t.skin,[0,.31,0],[.04,.06,.04]),t.hood&&g(e,f,a,t.outfit,[0,.29,-.1],[.13,.065,.07],[.3,0,0]),t.skirt&&g(e,f,n,t.skirt,[0,-.045,0],[.19,.13,.17]);let w=u(f,[.14,.27,0]),y=u(f,[-.14,.27,0]);for(let s of[w,y])g(e,s,o,t.outfit,[0,-.12,0],[.042,.24,.042]),t.stripe&&g(e,s,o,t.stripe,[0,-.108,0],[.045,.03,.045]),g(e,s,o,t.accent,[0,-.24+.015,0],[.046,.03,.046]),g(e,s,a,t.skin,[0,-.266,0],[.04,.042,.04]);let k=u(f,[0,.33,0]);if(g(e,k,a,t.skin,[0,.19,0],[.2,.194,.19]),s)for(let s of[-1,1])g(e,k,a,t.eyes,[.072*s,.17,.178],[.034,.046,.02]);else{let s=`#${new i.Q1f(t.eyes).multiplyScalar(.32).getHexString()}`;for(let o of[-1,1])!function(e,t,s,a,o){let{sphere:n}=e.geometry,r="sharp"===s.eyeShape,i=r?.05:.058,l=.078*a,h=.38*a;g(e,t,n,e.flat(s.eyes),[l,.155,.168],[.043,i,.02],[0,h,0]),g(e,t,n,e.flat(o),[l-.003*a,.149,.184],[.023,.55*i,.008],[0,h,0]),g(e,t,n,e.flat("#2a1d22"),[l,.155+.1*i,.167],[.049,1.1*i,.016],[0,h,0]),r&&g(e,t,n,e.flat("#2a1d22"),[l+.046*a,.155+.92*i,.17],[.018,.007,.008],[0,h,.5*a]),g(e,t,n,e.flat("#ffffff"),[l+.013*a,.155+.3*i,.19],[.014,.017,.006],[0,h,0]),g(e,t,n,e.flat("#ffffff"),[l-.014*a,.155-.5*i,.188],[.007,.007,.004],[0,h,0])}(e,k,t,o,s),g(e,k,a,"#f6aaa6",[.105*o,.085,.122],[.03,.012,.01],[0,.6*o,0])}g(e,k,a,"#b85a5c",[0,.065,.143],[.018,.007,.006]),s||function(e,t,s){let{sphere:a,dome:o,box:n,cone:r}=e.geometry,i=s.hair;for(let a of(g(e,t,o,i,[0,.19+.014,-.01],[.22400000000000003,.22400000000000003,.22799999999999998],[-.36,0,0]),x[s.bangs]))m(e,t,i,{angle:a.angle,rootY:.145,length:a.length,width:a.width,roll:a.roll??0});s.streak&&m(e,t,s.streak,{angle:.4,rootY:.13,length:.1,width:.026,roll:-.3,lift:.022});let l=b[s.length];for(let a of[-1,1])g(e,t,r,i,[.19*a,.22-.5*l,.055],[.05,l,.045],[Math.PI,0,.1*a]),s.streak&&g(e,t,r,s.streak,[.168*a,.2-.42*l,.075],[.022,.7*l,.02],[Math.PI,0,.06*a]);if("short"===s.length)for(let s of(g(e,t,a,i,[0,.2,-.065],[.212,.205,.175]),[-.1,0,.1]))g(e,t,r,i,[s,.19-.14,-.1],[.05,.11,.045],[Math.PI+.45,0,2.5*s]);else if(g(e,t,a,i,[0,.155,-.085],[.232,.24,.188]),"bob"===s.length)for(let s of[-1,1])g(e,t,a,i,[.175*s,.19-.2,-.05],[.075,.055,.09],[0,0,-.5*s]);else for(let s of(g(e,t,a,i,[0,.19-.3,-.13],[.215,.33,.09],[-.16,0,0]),[-.12,0,.12]))g(e,t,r,i,[s,-.44,-.17],[.075,.13,.055],[Math.PI-.1,0,1.5*s]);if(s.ahoge&&g(e,t,r,i,[.02,.45,.03],[.02,.13,.015],[.45,0,-.55]),s.ponytail){let o=s.ponytail.x,n=s.ponytail.high?.32:.21;g(e,t,a,i,[.18*o,n,-.07],[.055,.055,.055]),g(e,t,a,i,[.25*o,n-.06,-.09],[.075,.08,.075],[0,0,.3*o]),g(e,t,a,i,[.29*o,n-.18,-.1],[.062,.11,.064],[0,0,.2*o]),g(e,t,r,i,[.3*o,n-.33,-.1],[.05,.13,.05],[Math.PI,0,-.15*o])}if(s.braid){let o=s.braid.x,r=s.braid.color??i;for(let s=0;s<5;s+=1){let n=.048-.004*s;g(e,t,a,r,[o*(.17-.008*s),.09-.068*s,.06+.022*s],[n,1.15*n,n])}g(e,t,n,"#2b2b2b",[.135*o,-.26,.16],[.045,.02,.045])}}(e,k,t),function(e,t,s,a){let{sphere:o,box:n,ring:r,cone:i}=e.geometry;for(let l of a.accessories)switch(l.kind){case"bow":{let s=l.size,a=[l.x,.19+l.y,l.z];for(let n of[-1,1])g(e,t,o,l.color,[a[0]+.058*n*s,a[1],a[2]],[.064*s,.042*s,.026*s],[0,0,.35*n]),l.tails&&g(e,t,i,l.color,[a[0]+.03*n*s,a[1]-.09*s,a[2]-.01],[.024*s,.13*s,.01],[Math.PI,0,-.25*n]);g(e,t,o,l.color,a,[.026*s,.026*s,.026*s]);break}case"goggles":for(let s of[-1,1])g(e,t,r,l.frame,[.066*s,.36,.12],[.047,.047,.047],[-.95,0,0]),g(e,t,o,l.lens,[.066*s,.363,.122],[.04,.012,.04],[-.95+Math.PI/2,0,0]);break;case"clip":{let s=l.x,a=[.15*s,.19+.1,.125];switch(l.shape??"bar"){case"x":for(let o of[.78,-.78])g(e,t,n,l.color,a,[.06,.016,.016],[0,.5*s,o]);break;case"whale":g(e,t,o,l.color,a,[.04,.027,.02],[0,.5*s,0]),g(e,t,i,l.color,[a[0]+.045*s,a[1]+.012,a[2]-.012],[.018,.035,.008],[0,.5*s,.9*s]);break;case"camera":g(e,t,n,l.color,a,[.055,.036,.022],[0,.5*s,0]),g(e,t,o,"#2b2b2b",[a[0]-.005*s,a[1],a[2]+.012],[.012,.012,.008]);break;default:g(e,t,n,l.color,a,[.055,.022,.02],[0,0,-.5*s])}break}case"glasses":for(let s of[-1,1])g(e,t,r,l.color,[.078*s,.155,.198],[.056,.056,.03],[0,.3*s,0]);g(e,t,n,l.color,[0,.165,.205],[.04,.007,.007]);break;case"pendant":g(e,s,o,l.color,[0,.235,.1],[.022,.022,.012]);break;case"choker":g(e,s,r,l.color,[0,.305,0],[.05,.05,.07],[Math.PI/2,0,0]),g(e,s,o,l.color,[0,.28,.052],[.014,.016,.01])}}(e,k,f,t);let M=[];for(let e of[c,p,f,w,y,k])!function(e,t){let s=new Map;for(let t of e.children.filter(e=>e instanceof i.eaF)){t.updateMatrix();let a=t.geometry.clone().applyMatrix4(t.matrix),o=t.material,n=s.get(o)??[];n.push(a),s.set(o,n),e.remove(t)}for(let[a,o]of s){let s=1===o.length?o[0]:(0,h.pP)(o,!1);if(o.length>1)for(let e of o)e.dispose();s&&(t.push(s),e.add(new i.eaF(s,a)))}}(e,M);return{root:l,body:d,torso:f,head:k,armLeft:w,armRight:y,legLeft:c,legRight:p,baked:M}}(s.kit,e,null===t)},[t,s.kit]),P=(0,o.useRef)(null),z=(0,o.useRef)(r),G="rest"===r.kind?r.place.point:l.kn,I=(0,o.useRef)({point:{...G},heading:0,phase:"rest"===r.kind?"pose":"walk",sit:0,walkPhase:0,blend:{walk:0,type:0,wave:0,slump:0},paceLeg:0,paceWait:(t??0)%3*2.6/3,motion:null,time:(t??7)*1.37});(0,o.useEffect)(()=>{z.current=r,v()},[r,v]);let L="participant"===r.kind?r.station.bubbleLift:0,D="rest"===r.kind;return(0,o.useLayoutEffect)(()=>{let a=I.current;if(null!==t){let e=s.departed.get(t);e&&(s.departed.delete(t),a.point={...e.point},a.heading=e.heading,a.phase="walk")}return s.heads.set(e,{head:S.head,lift:L,rest:D}),()=>{s.heads.delete(e),null!==t&&s.departed.set(t,{point:{...a.point},heading:a.heading})}},[e,L,D,S,t,s]),(0,o.useEffect)(()=>()=>(function(e){for(let t of e.baked)t.dispose()})(S),[S]),(0,o.useEffect)(()=>()=>{j.domElement.style.cursor=""},[j]),(0,n.F)((e,t)=>{var a,o,n,r,i,h,d,c;let p,f,g,u,m,x,b,w,y,j,v=Math.min(t,.1),G=s.reducedMotion.current,E=I.current;E.time+=v;let L=z.current;if("participant"===L.kind)y="desk"===L.plan.spot?L.station.desk:L.station.lounge,j=L.plan.pose;else{let e=L.place;j=e.pose,y={point:e.to&&1===E.paceLeg&&!G?e.to:e.point,facing:e.facing}}let D="work"===j||"sofa"===j,R=G?1:v/.45,W=!1;if("sitDown"===E.phase||"seated"===E.phase)D?"sitDown"===E.phase?(E.sit=Math.min(1,E.sit+R),E.sit>=1&&(E.phase="seated")):W=!0:E.phase="standUp";else if("standUp"===E.phase)E.sit=Math.max(0,E.sit-R),E.sit<=0&&(E.phase="walk");else{let e=(0,l.yA)(E.point,y.point,G?1/0:1.15*v);if(e.arrived){E.point=e.point;let t=M(E.heading,y.facing);Math.abs(t)>.12&&!G?(E.heading+=t*Math.min(1,7*v),E.phase="turn"):(E.heading=y.facing,D?E.phase="sitDown":(E.phase="pose","pace"!==j||G?W=!0:(E.paceWait-=v,E.paceWait<=0&&(E.paceWait=2.6,E.paceLeg=+(1!==E.paceLeg)))))}else{let t=Math.atan2(e.point.x-E.point.x,e.point.z-E.point.z);E.heading+=M(E.heading,t)*Math.min(1,7*v),E.point=e.point,E.phase="walk",E.walkPhase+=9*v}}let H=G?1:Math.min(1,8*v),C=E.blend;if(C.walk+=(("walk"===E.phase)-C.walk)*H,C.type+=(("seated"===E.phase&&"work"===j)-C.type)*H,C.wave+=(("pose"===E.phase&&"wave"===j)-C.wave)*H,C.slump+=(("pose"===E.phase&&"slump"===j)-C.slump)*H,a=S,o={walkPhase:E.walkPhase,walk:C.walk,sit:E.sit,type:C.type,wave:C.wave,slump:C.slump,breathe:+!G},n=E.time,p=.6*Math.sin(o.walkPhase)*o.walk,f=-Math.PI/2*o.sit,a.legLeft.rotation.x=f+p,a.legRight.rotation.x=f-p,g=Math.sin(2.1*n)*o.breathe,u=.025*Math.abs(Math.sin(o.walkPhase))*o.walk,a.body.position.y=-(.36-.25)*o.sit+u+.004*g,a.torso.scale.y=1+.012*g,m=e=>.07*Math.sin(9*n+1.7*e)*o.breathe,x=(r=-(.8*p))+(-1.15+m(1)-r)*o.type,b=(i=.8*p)+(-1.15+m(-1)-i)*o.type,w=.12*o.slump,a.armLeft.rotation.set(x+w,0,.1+-.08*o.slump),a.armRight.rotation.set(b+w,0,-.1+.08*o.slump),o.wave>0&&(a.armRight.rotation.z=-.1+(-2.55+.35*Math.sin(7*n)*o.breathe- -.1)*o.wave,a.armRight.rotation.x=(h=a.armRight.rotation.x)+(0-h)*o.wave),a.head.rotation.x=.05*o.type+.3*o.slump+.02*g,a.head.rotation.y=.06*Math.sin(.6*n)*o.breathe*(1-o.type),a.torso.rotation.x=.1*o.slump,P.current&&(P.current.position.set(E.point.x,0,E.point.z),P.current.rotation.y=E.heading),"participant"===L.kind&&k){let e=(d=E.phase,c=L.plan,"walk"===d?"desk"===c.spot?"toDesk":"toLounge":"sitDown"===d||"seated"===d?"work":"standUp"===d?"desk"===c.spot?"atDesk":"toLounge":"desk"===c.spot?"slump"===c.pose?"slump":"atDesk":"wave"===c.pose?"wave":"idle");e!==E.motion&&(E.motion=e,k(e))}G&&!W&&e.invalidate()}),(0,a.jsxs)("group",{ref:P,children:[(0,a.jsx)("primitive",{object:S.root}),(0,a.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[0,.01,0],children:[(0,a.jsx)("circleGeometry",{args:[.26,28]}),(0,a.jsx)("meshBasicMaterial",{color:"#000000",transparent:!0,opacity:"rest"===r.kind?.1:.16,depthWrite:!1})]}),f&&(0,a.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[0,.015,0],children:[(0,a.jsx)("ringGeometry",{args:[.3,.37,48]}),(0,a.jsx)("meshBasicMaterial",{color:"#ff6f0f",depthWrite:!1})]}),(0,a.jsxs)("mesh",{position:[0,p/2,0],onClick:e=>{e.stopPropagation(),w?.()},onPointerOver:t=>{t.stopPropagation(),j.domElement.style.cursor=w?"pointer":"help",y(e)},onPointerOut:()=>{j.domElement.style.cursor="",y(null)},children:[(0,a.jsx)("boxGeometry",{args:[.5,p,.45]}),(0,a.jsx)("meshBasicMaterial",{transparent:!0,opacity:0,depthWrite:!1})]})]})}function I({onContextLost:e}){let t=(0,n.D)(e=>e.gl.domElement);return(0,o.useEffect)(()=>(t.addEventListener("webglcontextlost",e),()=>t.removeEventListener("webglcontextlost",e)),[t,e]),null}function L({layout:e,participants:t,bubbles:s,reserved:r,onSelect:h,onHover:d,onReady:c,onMotionChange:p}){let f=(0,o.useMemo)(()=>{let e,t,s;return{kit:(e={sphere:new i.Gu$(1,20,14),dome:new i.Gu$(1,22,12,0,2*Math.PI,0,.56*Math.PI),cylinder:new i.Ho_(1,1,1,12),torso:new i.Ho_(.76,1,1,16),box:new i.iNn(1,1,1),ring:new i.O3Y(1,.16,8,24),cone:new i.qFE(1,1,10)},t=new Map,s=new Map,{geometry:e,material:e=>{let s=t.get(e);return s||(s=new i._4j({color:e,roughness:.78,metalness:0}),t.set(e,s)),s},flat:e=>{let t=s.get(e);return t||(t=new i.V9B({color:e}),s.set(e,t)),t},dispose:()=>{for(let t of Object.values(e))t.dispose();for(let e of t.values())e.dispose();for(let e of s.values())e.dispose();t.clear(),s.clear()}}),heads:new Map,departed:new Map,reducedMotion:{current:window.matchMedia("(prefers-reduced-motion: reduce)").matches}}},[]);(0,o.useEffect)(()=>()=>f.kit.dispose(),[f]);let g=(0,n.D)(e=>e.invalidate);(0,o.useEffect)(()=>{let e=window.matchMedia("(prefers-reduced-motion: reduce)"),t=e=>{f.reducedMotion.current=e.matches,g()};return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[g,f]);let u=(0,o.useMemo)(()=>new Map(e.stations.map(e=>[e.key,e])),[e]),m=(0,o.useMemo)(()=>new Map(t.map(e=>[e.key,"desk"===e.plan.spot&&"work"===e.plan.pose])),[t]),x=(0,o.useRef)(new Map),b=(0,o.useRef)({onSelect:h,onMotionChange:p});return b.current={onSelect:h,onMotionChange:p},(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(j,{}),(0,a.jsx)("hemisphereLight",{args:["#ffffff","#b5a993",1.7]}),(0,a.jsx)("directionalLight",{position:[3,6,5],intensity:1.5}),(0,a.jsx)(G,{layout:e,lit:m}),t.map(e=>{var t;let s,o=u.get(e.key);if(!o)return null;let n=(t=e.key,(s=x.current.get(t))||(s={select:()=>b.current.onSelect(t),motion:e=>b.current.onMotionChange(t,e)},x.current.set(t,s)),s);return(0,a.jsx)(D,{participant:e,station:o,shared:f,onSelect:n.select,onHover:d,onMotionChange:n.motion},e.key)}),e.rest.map(e=>(0,a.jsx)(R,{place:e,shared:f,onHover:d},(0,l.wC)(e.seat))),(0,a.jsx)(P,{shared:f,bubbles:s,reserved:r,onReady:c})]})}function D({participant:e,station:t,shared:s,onSelect:n,onHover:r,onMotionChange:i}){let{plan:l}=e,h=(0,o.useMemo)(()=>({kind:"participant",station:t,plan:l}),[t,l.spot,l.pose]);return(0,a.jsx)(E,{actorKey:e.key,seat:e.seat,shared:s,target:h,selected:e.selected,onSelect:n,onHover:r,onMotionChange:i})}function R({place:e,shared:t,onHover:s}){let n=(0,o.useMemo)(()=>({kind:"rest",place:e}),[e]);return(0,a.jsx)(E,{actorKey:(0,l.wC)(e.seat),seat:e.seat,shared:t,target:n,selected:!1,onHover:s})}function W({onContextLost:e,...t}){let s=window.matchMedia("(prefers-reduced-motion: reduce)").matches;return(0,a.jsxs)(r.Hl,{dpr:[1,1.75],frameloop:s?"demand":"always",camera:{fov:36,near:.1,far:60,position:y.clone().add(w).toArray()},gl:{antialias:!0,alpha:!0,powerPreference:"low-power"},children:[(0,a.jsx)(I,{onContextLost:e}),(0,a.jsx)(L,{...t})]})}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2992],{8039:(e,t,r)=>{e.exports=r(65538)},50916:(e,t,r)=>{r.d(t,{h:()=>s});var n=r(12115),i=r(94577);let o=e=>{let t,r=new Set,n=(e,n)=>{let i="function"==typeof e?e(t):e;if(!Object.is(i,t)){let e=t;t=(null!=n?n:"object"!=typeof i||null===i)?i:Object.assign({},t,i),r.forEach(r=>r(t,e))}},i=()=>t,o={setState:n,getState:i,getInitialState:()=>l,subscribe:e=>(r.add(e),()=>r.delete(e))},l=t=e(n,i,o);return o},{useSyncExternalStoreWithSelector:l}=i,u=(e,t)=>{let r=e?o(e):o,i=(e,i=t)=>(function(e,t=e=>e,r){let i=l(e.subscribe,e.getState,e.getInitialState,t,r);return n.useDebugValue(i),i})(r,e,i);return Object.assign(i,r),i},s=(e,t)=>e?u(e,t):u},56369:(e,t,r)=>{r.d(t,{pP:()=>i});var n=r(42412);function i(e,t=!1){let r=null!==e[0].index,l=new Set(Object.keys(e[0].attributes)),u=new Set(Object.keys(e[0].morphAttributes)),s={},a={},c=e[0].morphTargetsRelative,f=new n.LoY,d=0;for(let n=0;n<e.length;++n){let i=e[n],o=0;if(r!==(null!==i.index))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let e in i.attributes){if(!l.has(e))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+'. All geometries must have compatible attributes; make sure "'+e+'" attribute exists among all geometries, or in none of them.'),null;void 0===s[e]&&(s[e]=[]),s[e].push(i.attributes[e]),o++}if(o!==l.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+". Make sure all geometries have the same number of attributes."),null;if(c!==i.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let e in i.morphAttributes){if(!u.has(e))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+". .morphAttributes must be consistent throughout all geometries."),null;void 0===a[e]&&(a[e]=[]),a[e].push(i.morphAttributes[e])}if(t){let e;if(r)e=i.index.count;else{if(void 0===i.attributes.position)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+n+". The geometry must have either an index or a position attribute"),null;e=i.attributes.position.count}f.addGroup(d,e,n),d+=e}}if(r){let t=0,r=[];for(let n=0;n<e.length;++n){let i=e[n].index;for(let e=0;e<i.count;++e)r.push(i.getX(e)+t);t+=e[n].attributes.position.count}f.setIndex(r)}for(let e in s){let t=o(s[e]);if(!t)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+e+" attribute."),null;f.setAttribute(e,t)}for(let e in a){let t=a[e][0].length;if(0!==t){f.morphAttributes=f.morphAttributes||{},f.morphAttributes[e]=[];for(let r=0;r<t;++r){let t=[];for(let n=0;n<a[e].length;++n)t.push(a[e][n][r]);let n=o(t);if(!n)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+e+" morphAttribute."),null;f.morphAttributes[e].push(n)}}}return f}function o(e){let t,r,i,o=-1,l=0;for(let n=0;n<e.length;++n){let u=e[n];if(void 0===t&&(t=u.array.constructor),t!==u.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(void 0===r&&(r=u.itemSize),r!==u.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(void 0===i&&(i=u.normalized),i!==u.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(-1===o&&(o=u.gpuType),o!==u.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;l+=u.count*r}let u=new t(l),s=new n.THS(u,r,i),a=0;for(let t=0;t<e.length;++t){let n=e[t];if(n.isInterleavedBufferAttribute){let e=a/r;for(let t=0,i=n.count;t<i;t++)for(let i=0;i<r;i++){let r=n.getComponent(t,i);s.setComponent(t+e,i,r)}}else u.set(n.array,a);a+=n.count*r}return void 0!==o&&(s.gpuType=o),s}},65538:(e,t,r)=>{var n=r(12115),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=n.useState,l=n.useEffect,u=n.useLayoutEffect,s=n.useDebugValue;function a(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!i(e,r)}catch(e){return!0}}var c="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=o({inst:{value:r,getSnapshot:t}}),i=n[0].inst,c=n[1];return u(function(){i.value=r,i.getSnapshot=t,a(i)&&c({inst:i})},[e,r,t]),l(function(){return a(i)&&c({inst:i}),e(function(){a(i)&&c({inst:i})})},[e]),s(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:c},69326:(e,t,r)=>{r.d(t,{DY:()=>l,IU:()=>s,uv:()=>u});let n=[];function i(e,t,r=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;let n=e.length;if(t.length!==n)return!1;for(let i=0;i<n;i++)if(!r(e[i],t[i]))return!1;return!0}function o(e,t=null,r=!1,l={}){for(let o of(null===t&&(t=[e]),n))if(i(t,o.keys,o.equal)){if(r)return;if(Object.prototype.hasOwnProperty.call(o,"error"))throw o.error;if(Object.prototype.hasOwnProperty.call(o,"response"))return l.lifespan&&l.lifespan>0&&(o.timeout&&clearTimeout(o.timeout),o.timeout=setTimeout(o.remove,l.lifespan)),o.response;if(!r)throw o.promise}let u={keys:t,equal:l.equal,remove:()=>{let e=n.indexOf(u);-1!==e&&n.splice(e,1)},promise:("object"==typeof e&&"function"==typeof e.then?e:e(...t)).then(e=>{u.response=e,l.lifespan&&l.lifespan>0&&(u.timeout=setTimeout(u.remove,l.lifespan))}).catch(e=>u.error=e)};if(n.push(u),!r)throw u.promise}let l=(e,t,r)=>o(e,t,!1,r),u=(e,t,r)=>void o(e,t,!0,r),s=e=>{if(void 0===e||0===e.length)n.splice(0,n.length);else{let t=n.find(t=>i(e,t.keys,t.equal));t&&t.remove()}}},77930:(e,t)=>{function r(e,t){var r=e.length;for(e.push(t);0<r;){var n=r-1>>>1,i=e[n];if(0<o(i,t))e[n]=t,e[r]=i,r=n;else break}}function n(e){return 0===e.length?null:e[0]}function i(e){if(0===e.length)return null;var t=e[0],r=e.pop();if(r!==t){e[0]=r;for(var n=0,i=e.length,l=i>>>1;n<l;){var u=2*(n+1)-1,s=e[u],a=u+1,c=e[a];if(0>o(s,r))a<i&&0>o(c,s)?(e[n]=c,e[a]=r,n=a):(e[n]=s,e[u]=r,n=u);else if(a<i&&0>o(c,r))e[n]=c,e[a]=r,n=a;else break}}return t}function o(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if(t.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var l,u=performance;t.unstable_now=function(){return u.now()}}else{var s=Date,a=s.now();t.unstable_now=function(){return s.now()-a}}var c=[],f=[],d=1,m=null,h=3,v=!1,b=!1,p=!1,y=!1,g="function"==typeof setTimeout?setTimeout:null,w="function"==typeof clearTimeout?clearTimeout:null,E="u">typeof setImmediate?setImmediate:null;function x(e){for(var t=n(f);null!==t;){if(null===t.callback)i(f);else if(t.startTime<=e)i(f),t.sortIndex=t.expirationTime,r(c,t);else break;t=n(f)}}function T(e){if(p=!1,x(e),!b)if(null!==n(c))b=!0,S||(S=!0,l());else{var t=n(f);null!==t&&C(T,t.startTime-e)}}var S=!1,k=-1,A=5,R=-1;function _(){return!!y||!(t.unstable_now()-R<A)}function z(){if(y=!1,S){var e=t.unstable_now();R=e;var r=!0;try{e:{b=!1,p&&(p=!1,w(k),k=-1),v=!0;var o=h;try{t:{for(x(e),m=n(c);null!==m&&!(m.expirationTime>e&&_());){var u=m.callback;if("function"==typeof u){m.callback=null,h=m.priorityLevel;var s=u(m.expirationTime<=e);if(e=t.unstable_now(),"function"==typeof s){m.callback=s,x(e),r=!0;break t}m===n(c)&&i(c),x(e)}else i(c);m=n(c)}if(null!==m)r=!0;else{var a=n(f);null!==a&&C(T,a.startTime-e),r=!1}}break e}finally{m=null,h=o,v=!1}}}finally{r?l():S=!1}}}if("function"==typeof E)l=function(){E(z)};else if("u">typeof MessageChannel){var j=new MessageChannel,B=j.port2;j.port1.onmessage=z,l=function(){B.postMessage(null)}}else l=function(){g(z,0)};function C(e,r){k=g(function(){e(t.unstable_now())},r)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):A=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return h},t.unstable_next=function(e){switch(h){case 1:case 2:case 3:var t=3;break;default:t=h}var r=h;h=t;try{return e()}finally{h=r}},t.unstable_requestPaint=function(){y=!0},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=h;h=e;try{return t()}finally{h=r}},t.unstable_scheduleCallback=function(e,i,o){var u=t.unstable_now();switch(o="object"==typeof o&&null!==o&&"number"==typeof(o=o.delay)&&0<o?u+o:u,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=0x3fffffff;break;case 4:s=1e4;break;default:s=5e3}return s=o+s,e={id:d++,callback:i,priorityLevel:e,startTime:o,expirationTime:s,sortIndex:-1},o>u?(e.sortIndex=o,r(f,e),null===n(c)&&e===n(f)&&(p?(w(k),k=-1):p=!0,C(T,o-u))):(e.sortIndex=s,r(c,e),b||v||(b=!0,S||(S=!0,l()))),e},t.unstable_shouldYield=_,t.unstable_wrapCallback=function(e){var t=h;return function(){var r=h;h=t;try{return e.apply(this,arguments)}finally{h=r}}}},86275:(e,t,r)=>{r.d(t,{Hl:()=>f});var n=r(15692),i=r(12115),o=r(29625);function l(e,t){let r;return(...n)=>{window.clearTimeout(r),r=window.setTimeout(()=>e(...n),t)}}let u=["x","y","top","bottom","left","right","width","height"];var s=r(94400),a=r(95155);function c({ref:e,children:t,fallback:r,resize:s,style:f,gl:d,events:m=n.f,eventSource:h,eventPrefix:v,shadows:b,linear:p,flat:y,legacy:g,orthographic:w,frameloop:E,dpr:x,performance:T,raycaster:S,camera:k,scene:A,onPointerMissed:R,onCreated:_,...z}){i.useMemo(()=>(0,n.e)(o),[]);let j=(0,n.u)(),[B,C]=function({debounce:e,scroll:t,polyfill:r,offsetSize:n}={debounce:0,scroll:!1,offsetSize:!1}){var o,s,a;let c=r||("u"<typeof window?class{}:window.ResizeObserver);if(!c)throw Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[f,d]=(0,i.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),m=(0,i.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:f,orientationHandler:null}),h=e?"number"==typeof e?e:e.scroll:null,v=e?"number"==typeof e?e:e.resize:null,b=(0,i.useRef)(!1);(0,i.useEffect)(()=>(b.current=!0,()=>void(b.current=!1)));let[p,y,g]=(0,i.useMemo)(()=>{let e=()=>{let e,t;if(!m.current.element)return;let{left:r,top:i,width:o,height:l,bottom:s,right:a,x:c,y:f}=m.current.element.getBoundingClientRect(),h={left:r,top:i,width:o,height:l,bottom:s,right:a,x:c,y:f};m.current.element instanceof HTMLElement&&n&&(h.height=m.current.element.offsetHeight,h.width=m.current.element.offsetWidth),Object.freeze(h),b.current&&(e=m.current.lastBounds,t=h,!u.every(r=>e[r]===t[r]))&&d(m.current.lastBounds=h)};return[e,v?l(e,v):e,h?l(e,h):e]},[d,n,h,v]);function w(){m.current.scrollContainers&&(m.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",g,!0)),m.current.scrollContainers=null),m.current.resizeObserver&&(m.current.resizeObserver.disconnect(),m.current.resizeObserver=null),m.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",m.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",m.current.orientationHandler))}function E(){m.current.element&&(m.current.resizeObserver=new c(g),m.current.resizeObserver.observe(m.current.element),t&&m.current.scrollContainers&&m.current.scrollContainers.forEach(e=>e.addEventListener("scroll",g,{capture:!0,passive:!0})),m.current.orientationHandler=()=>{g()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",m.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",m.current.orientationHandler))}return o=g,s=!!t,(0,i.useEffect)(()=>{if(s)return window.addEventListener("scroll",o,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",o,!0)},[o,s]),a=y,(0,i.useEffect)(()=>(window.addEventListener("resize",a),()=>void window.removeEventListener("resize",a)),[a]),(0,i.useEffect)(()=>{w(),E()},[t,g,y]),(0,i.useEffect)(()=>w,[]),[e=>{e&&e!==m.current.element&&(w(),m.current.element=e,m.current.scrollContainers=function e(t){let r=[];if(!t||t===document.body)return r;let{overflow:n,overflowX:i,overflowY:o}=window.getComputedStyle(t);return[n,i,o].some(e=>"auto"===e||"scroll"===e)&&r.push(t),[...r,...e(t.parentElement)]}(e),E())},f,p]}({scroll:!0,debounce:{scroll:50,resize:0},...s}),H=i.useRef(null),O=i.useRef(null);i.useImperativeHandle(e,()=>H.current);let G=(0,n.a)(R),L=i.useCallback(e=>null==G.current?void 0:G.current(e),[G]),[I,P]=i.useState(!1),[M,U]=i.useState(!1);if(I)throw I;if(M)throw M;let q=i.useRef(null),[F,N]=(0,n.b)(),V=i.useRef(null),D=()=>h?(0,n.i)(h)?h.current:h:O.current;i.useInsertionEffect(()=>()=>{let e=q.current;q.current=null,null==e||e.unmount()},[]),(0,n.c)(()=>{let e=H.current;C.width>0&&C.height>0&&e&&(q.current||(q.current=(0,n.d)(e)),q.current.configure({gl:d,scene:A,events:m,shadows:b,linear:p,flat:y,legacy:g,orthographic:w,frameloop:E,dpr:x,performance:T,raycaster:S,camera:k,size:C,onPointerMissed:L,onCreated:e=>{var t;V.current=e,null==e.events.connect||e.events.connect(null!=(t=D())?t:O.current),v&&e.setEvents({compute:(e,t)=>{let r=e[v+"X"],n=e[v+"Y"];t.pointer.set(r/t.size.width*2-1,-(2*(n/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==_||_(e)}}).catch(U),"fulfilled"===q.current.ready.status?q.current.render((0,a.jsx)(j,{children:(0,a.jsx)(n.E,{set:U,children:(0,a.jsx)(i.Suspense,{fallback:(0,a.jsx)(n.B,{set:P}),children:null!=t?t:null})})})):"pending"===q.current.ready.status&&N(q.current.ready))}),i.useEffect(()=>{var e;let t=null==(e=V.current)?void 0:e.get(),r=D();t&&r&&t.events.connected!==r&&(null==t.events.connect||t.events.connect(r))}),i.useEffect(()=>{let e=H.current;return()=>{var t;e.isConnected||null==(t=q.current)||t.unmount()}},[]);let Y=h?"none":"auto";return(0,a.jsxs)("div",{ref:O,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:Y,...f},...z,children:[(0,a.jsx)("div",{ref:B,style:{width:"100%",height:"100%"},children:(0,a.jsx)("canvas",{ref:H,style:{display:"block"},children:r})}),F]})}function f(e){return(0,a.jsx)(s.Af,{children:(0,a.jsx)(c,{...e})})}r(88745)},88745:(e,t,r)=>{e.exports=r(77930)},94400:(e,t,r)=>{r.d(t,{Af:()=>a,Go:()=>h,Nz:()=>l,u5:()=>c,y3:()=>m});var n,i,o=r(12115);function l(e,t,r){if(!e)return;if(!0===r(e))return e;let n=t?e.return:e.child;for(;n;){let e=l(n,t,r);if(e)return e;n=t?null:n.sibling}}function u(e){try{return Object.defineProperties(e,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(t){return e}}"u">typeof window&&((null==(n=window.document)?void 0:n.createElement)||(null==(i=window.navigator)?void 0:i.product)==="ReactNative")?o.useLayoutEffect:o.useEffect;let s=u(o.createContext(null));class a extends o.Component{render(){return o.createElement(s.Provider,{value:this._reactInternals},this.props.children)}}function c(){let e=o.useContext(s);if(null===e)throw Error("its-fine: useFiber must be called within a <FiberProvider />!");let t=o.useId();return o.useMemo(()=>{for(let r of[e,null==e?void 0:e.alternate]){if(!r)continue;let e=l(r,!1,e=>{let r=e.memoizedState;for(;r;){if(r.memoizedState===t)return!0;r=r.next}});if(e)return e}},[e,t])}let f=Symbol.for("react.context"),d=e=>null!==e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===f;function m(){let e=function(){let e=c(),[t]=o.useState(()=>new Map);t.clear();let r=e;for(;r;){let e=r.type;d(e)&&e!==s&&!t.has(e)&&t.set(e,o.use(u(e))),r=r.return}return t}();return o.useMemo(()=>Array.from(e.keys()).reduce((t,r)=>n=>o.createElement(t,null,o.createElement(r.Provider,{...n,value:e.get(r)})),e=>o.createElement(a,{...e})),[e])}function h(){if(!o.Activity)throw Error("its-fine: useActivityBridge requires React 19.2 or later!");let e=c(),[t]=o.useState(()=>{let t,r=[],n=!1;l(e,!0,e=>{var t,i;if(e.elementType===o.Activity){let n=(null==(t=e.child)?void 0:t.tag)===22?e.child.stateNode:null;if("number"!=typeof(null==n?void 0:n._visibility))throw Error("its-fine: unsupported React Activity internals!");r.push(n)}else 22===e.tag&&(null==(i=e.return)?void 0:i.elementType)!==o.Activity&&(n=!0)});let i="hidden",u=new Set,s={mounted:!1,connected:!1,subscribe:e=>(u.add(e),()=>{u.delete(e)}),sync(e){s.mounted&&!s.connected&&n&&r.length>0?t||(t=function(e){if("function"==typeof requestAnimationFrame){let t=requestAnimationFrame(e);return()=>cancelAnimationFrame(t)}let t=setTimeout(e,16);return()=>clearTimeout(t)}(()=>{t=void 0,s.sync(!0)})):(null==t||t(),t=void 0);let o=i;if(s.mounted?s.connected?o="visible":e&&(o=r.every(e=>(1&e._visibility)!=0)?"visible":"hidden"):o="hidden",i!==o)for(let e of(i=o,u))e()},Bridge:({children:e})=>o.createElement(o.Activity,{mode:o.useSyncExternalStore(s.subscribe,()=>i,()=>"hidden")},e)};return s});return o.useInsertionEffect(()=>(t.mounted=!0,queueMicrotask(()=>t.sync(!1)),()=>{t.mounted=!1,queueMicrotask(()=>t.sync(!1))}),[t]),o.useLayoutEffect(()=>(t.connected=!0,t.sync(!1),()=>{t.connected=!1,t.sync(!0)}),[t]),t.Bridge}},94577:(e,t,r)=>{e.exports=r(99617)},99617:(e,t,r)=>{var n=r(12115),i=r(8039),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},l=i.useSyncExternalStore,u=n.useRef,s=n.useEffect,a=n.useMemo,c=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,i){var f=u(null);if(null===f.current){var d={hasValue:!1,value:null};f.current=d}else d=f.current;var m=l(e,(f=a(function(){function e(e){if(!s){if(s=!0,l=e,e=n(e),void 0!==i&&d.hasValue){var t=d.value;if(i(t,e))return u=t}return u=e}if(t=u,o(l,e))return t;var r=n(e);return void 0!==i&&i(t,r)?(l=e,t):(l=e,u=r)}var l,u,s=!1,a=void 0===r?null:r;return[function(){return e(t())},null===a?void 0:function(){return e(a())}]},[t,r,n,i]))[0],f[1]);return s(function(){d.hasValue=!0,d.value=m},[m]),c(m),m}}}]);