@uptimizr/dashboard 0.3.5 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/out/404.html +1 -1
  2. package/out/__next.__PAGE__.txt +4 -4
  3. package/out/__next._full.txt +10 -10
  4. package/out/__next._head.txt +4 -4
  5. package/out/__next._index.txt +3 -3
  6. package/out/__next._tree.txt +1 -1
  7. package/out/_next/static/chunks/{020h1b22yfzjc.js → 0-0hui1_v3h8b.js} +9 -9
  8. package/out/_next/static/chunks/{2dqg85hsevk3c.js → 0-tzsd_n-ywom.js} +4 -4
  9. package/out/_next/static/chunks/00g5suuoa-_wn.js +1 -0
  10. package/out/_next/static/chunks/00o9hr_3hd0r8.js +1 -0
  11. package/out/_next/static/chunks/{0jxklh_ayjd4b.js → 00xc-0pj7on2s.js} +12 -12
  12. package/out/_next/static/chunks/01fh3_bncbe5u.js +1 -0
  13. package/out/_next/static/chunks/01urdkl1j8o6l.js +1 -0
  14. package/out/_next/static/chunks/{2j-sax2xfdv7l.js → 026vw95s88gsy.js} +1 -1
  15. package/out/_next/static/chunks/02eui3ctddbd2.js +1 -0
  16. package/out/_next/static/chunks/{3kr1polwvt6o_.js → 03zip1uidm6x9.js} +1 -1
  17. package/out/_next/static/chunks/{3gi0f1kg72xsf.js → 04_3ri5emyfcu.js} +1 -1
  18. package/out/_next/static/chunks/04c4nksb5y9r-.js +1 -0
  19. package/out/_next/static/chunks/04g-l-_b4payc.js +1 -0
  20. package/out/_next/static/chunks/04j9pexbmysdy.js +1 -0
  21. package/out/_next/static/chunks/{1rcfy_gzean3n.js → 055baac5e-c2o.js} +1 -1
  22. package/out/_next/static/chunks/05bdni_jrobq1.js +1 -0
  23. package/out/_next/static/chunks/05o0tb8l_htmw.js +1 -0
  24. package/out/_next/static/chunks/{1bxxv3nsl2-o_.js → 05uqfgf-hh-p5.js} +1 -1
  25. package/out/_next/static/chunks/06f-0kw8s0mqo.js +3 -0
  26. package/out/_next/static/chunks/{18r387bj9iv0j.js → 077eo-0dhbxz-.js} +1 -1
  27. package/out/_next/static/chunks/{18k-0jn63_5ie.js → 07z6p262h5hgl.js} +1 -1
  28. package/out/_next/static/chunks/{08bm3ye5govev.js → 08m_4cihfmik8.js} +1 -1
  29. package/out/_next/static/chunks/08obqw64faj8j.js +1 -0
  30. package/out/_next/static/chunks/{2k4s5rt7-l8jr.js → 099ilz3dmm1jw.js} +1 -1
  31. package/out/_next/static/chunks/09ppu_k464q-n.js +1 -0
  32. package/out/_next/static/chunks/{1rne-b-ktit5c.js → 0av6n_6q6kzo3.js} +2 -2
  33. package/out/_next/static/chunks/0bgcaf2x51kms.js +1 -0
  34. package/out/_next/static/chunks/{0ptp4ne7j6yg6.js → 0bj_310rugcn1.js} +11 -11
  35. package/out/_next/static/chunks/0c5d3qn2mb3ew.js +1 -0
  36. package/out/_next/static/chunks/{2gtebfttq1v0o.js → 0dck67in84de0.js} +1 -1
  37. package/out/_next/static/chunks/0dg4wxz-6u5lo.js +1 -0
  38. package/out/_next/static/chunks/{2apt1vh-7rl2l.js → 0dva036n8ab62.js} +1 -1
  39. package/out/_next/static/chunks/{159u-hx80yfaw.js → 0erga_bzezbza.js} +1 -1
  40. package/out/_next/static/chunks/0f0-i105odxqd.js +1 -0
  41. package/out/_next/static/chunks/{1fvlbwp6r93wo.js → 0g2wngc6oe7fd.js} +24 -24
  42. package/out/_next/static/chunks/0gyeqz9pagssf.js +1 -0
  43. package/out/_next/static/chunks/0i82k-t0fbn8f.js +1 -0
  44. package/out/_next/static/chunks/0kzw45f61wm3j.js +1 -0
  45. package/out/_next/static/chunks/0l8bfa2xewq69.js +1 -0
  46. package/out/_next/static/chunks/{390fogn9oz13i.js → 0n-zml1gn0o1u.js} +1 -1
  47. package/out/_next/static/chunks/{44gsjajjdhf51.js → 0n92hec_jb_-_.js} +1 -1
  48. package/out/_next/static/chunks/{366e7izc386pj.js → 0okbyggxe6mx5.js} +1 -1
  49. package/out/_next/static/chunks/{0h-ohf4gntwtj.js → 0pv2wirx45e1m.js} +1 -1
  50. package/out/_next/static/chunks/0qxd_8t3nca36.js +1 -0
  51. package/out/_next/static/chunks/0s1jghzw8jufz.js +1 -0
  52. package/out/_next/static/chunks/{0ngai1_zxwsk8.js → 0s84ekz_f9ngx.js} +1 -1
  53. package/out/_next/static/chunks/{16d4a4iopj2if.js → 0t89-lfct-7m6.js} +5 -5
  54. package/out/_next/static/chunks/0ti58h622yo-_.js +2 -0
  55. package/out/_next/static/chunks/{2jfmqd86u1tzv.js → 0tn-9w46cwydp.js} +32 -32
  56. package/out/_next/static/chunks/0u8yr4k1y6m2t.js +1 -0
  57. package/out/_next/static/chunks/0ubxyut5rr600.js +1 -0
  58. package/out/_next/static/chunks/{3_bzxvqtk1t53.js → 0uxdbfa8gv6tk.js} +12 -12
  59. package/out/_next/static/chunks/0vso09vdz38sr.js +1 -0
  60. package/out/_next/static/chunks/{0_tqu60oxaj7q.js → 0w-hm7g7trtjg.js} +1 -1
  61. package/out/_next/static/chunks/0wbw9h7rsis2r.js +1 -0
  62. package/out/_next/static/chunks/{3sbm1ak54_2ep.js → 0wq_9f98weoe3.js} +1 -1
  63. package/out/_next/static/chunks/0y4e49hpuucdi.js +1 -0
  64. package/out/_next/static/chunks/{0ioyy42h35hnd.js → 0yvevihll7sz-.js} +1 -1
  65. package/out/_next/static/chunks/{33h_kt3pzks_y.js → 0zf26k6juhlzo.js} +50 -18
  66. package/out/_next/static/chunks/{3sg4zff4-h3t1.js → 1-b44873bjsdw.js} +1 -1
  67. package/out/_next/static/chunks/1-c3a1vnl8v1q.js +1 -0
  68. package/out/_next/static/chunks/1-xf86jgea22y.js +1 -0
  69. package/out/_next/static/chunks/10b0qqdnb_nox.js +1 -0
  70. package/out/_next/static/chunks/{2ib62lnqqaf4p.js → 11p92pnn5el0v.js} +1 -1
  71. package/out/_next/static/chunks/{06ljadw2-i91-.js → 12kdmh0h_mboy.js} +1 -1
  72. package/out/_next/static/chunks/141tngxsk32hq.js +1 -0
  73. package/out/_next/static/chunks/14ijcpo72av4r.js +1 -0
  74. package/out/_next/static/chunks/16hdip1drt8o-.js +1 -0
  75. package/out/_next/static/chunks/{3g5ae-38cepwm.js → 17aahvhpls1l7.js} +199 -199
  76. package/out/_next/static/chunks/{17d1isrw8gtnb.js → 18txc1wwwu9f9.js} +1 -1
  77. package/out/_next/static/chunks/{2716si10ouwu-.js → 18wa83g0qfh-b.js} +1 -1
  78. package/out/_next/static/chunks/19dp8nr4uygg2.js +5 -0
  79. package/out/_next/static/chunks/1_8acnu6_-qe-.js +1 -0
  80. package/out/_next/static/chunks/1__nujzr9e352.js +3 -0
  81. package/out/_next/static/chunks/1bmyq1b0by7ug.js +1 -0
  82. package/out/_next/static/chunks/{1wyr4at61q29n.js → 1ccn725by19i1.js} +1 -1
  83. package/out/_next/static/chunks/{0f_nv15a8q415.js → 1d1tpj9nm1nhf.js} +1 -1
  84. package/out/_next/static/chunks/1dfwa563iciz3.js +1 -0
  85. package/out/_next/static/chunks/1di5enkavl9vx.js +4 -0
  86. package/out/_next/static/chunks/{006nix8mv66z_.js → 1e_-_7biavwmb.js} +1 -1
  87. package/out/_next/static/chunks/{1y12bjsbq18_t.js → 1ephzzweysylq.js} +34 -34
  88. package/out/_next/static/chunks/1fwsjnd1y-lx_.js +1 -0
  89. package/out/_next/static/chunks/{2z9ot-w1x60fv.js → 1fyh50hjt7hi_.js} +1 -1
  90. package/out/_next/static/chunks/1gaexq_suxai0.js +1 -0
  91. package/out/_next/static/chunks/1gtj_l5ame5mw.js +1 -0
  92. package/out/_next/static/chunks/{2cqxw5m39njar.js → 1gvdmbr65lpud.js} +39 -39
  93. package/out/_next/static/chunks/{02tc9r3sc7fgc.js → 1ho02fc091nj2.js} +1 -1
  94. package/out/_next/static/chunks/{3v0td-ziuai2i.js → 1hsvckd0sgdgr.js} +1 -1
  95. package/out/_next/static/chunks/1i4f3n_2_3ery.js +1 -0
  96. package/out/_next/static/chunks/1j7e3qpjuj89a.js +1 -0
  97. package/out/_next/static/chunks/{2btqzk0tj0gz6.js → 1mrvp94tietcv.js} +1 -1
  98. package/out/_next/static/chunks/{3vxkkhs0vi_xa.js → 1mvadj46owrck.js} +1 -1
  99. package/out/_next/static/chunks/{1b2tkk7e_2o0k.js → 1n_gxvu31aofy.js} +2 -2
  100. package/out/_next/static/chunks/{0gblbgw7w7r9w.js → 1nasz7q3tvb53.js} +1 -1
  101. package/out/_next/static/chunks/{2_7dp91937mqi.js → 1ng-fqh2_n984.js} +1 -1
  102. package/out/_next/static/chunks/{0x4-zyy8pzmlq.js → 1nqojcig-0m3c.js} +1 -1
  103. package/out/_next/static/chunks/1o3ggu95lfu6i.js +1 -0
  104. package/out/_next/static/chunks/{2dolerz81xb52.js → 1og49_atcksim.js} +1 -1
  105. package/out/_next/static/chunks/{0c2k-gvwph4qs.js → 1oljzgz5jistn.js} +1 -1
  106. package/out/_next/static/chunks/1ozi46t8jajqh.js +1 -0
  107. package/out/_next/static/chunks/{1w9xu1qa9-wmv.js → 1ph0tfo-4hl-f.js} +1 -1
  108. package/out/_next/static/chunks/{17dmbt396_tyq.js → 1qjsgebn9m-0l.js} +1 -1
  109. package/out/_next/static/chunks/{168r9r65o9jnc.js → 1qsut_e3msg0l.js} +1 -1
  110. package/out/_next/static/chunks/{3efuvh_35yhes.js → 1qxhgauuomthl.js} +39 -39
  111. package/out/_next/static/chunks/{2w7yf7ouyrlkb.js → 1rb8wewjbdisv.js} +1 -1
  112. package/out/_next/static/chunks/1rr74xxjtckyv.js +1 -0
  113. package/out/_next/static/chunks/{1kl5xxohpr6-4.js → 1solqr18og2ot.js} +1 -1
  114. package/out/_next/static/chunks/{2rjc8yn50ducj.js → 1t2exh89lnazc.js} +34 -34
  115. package/out/_next/static/chunks/{0_ux41xcoea3u.js → 1t7nl8rx7mabd.js} +40 -40
  116. package/out/_next/static/chunks/{3fx3sriw1w3sa.js → 1tt1bbry-4f-6.js} +1 -1
  117. package/out/_next/static/chunks/{36waz9xq39n4t.js → 1upkv4ltuh3s5.js} +40 -40
  118. package/out/_next/static/chunks/{2npk7tr63h7rl.js → 1uu55ejvi7q5u.js} +1 -1
  119. package/out/_next/static/chunks/{2cvvxifoedn6j.js → 1ux1rpe-n1mai.js} +1 -1
  120. package/out/_next/static/chunks/{091ll-lp6spu3.js → 1vmpltnr0cyos.js} +1 -1
  121. package/out/_next/static/chunks/1x99m91nt1m3b.js +1 -0
  122. package/out/_next/static/chunks/1xbzxfeq9789f.js +1 -0
  123. package/out/_next/static/chunks/1ybiu-rkt50_1.js +1 -0
  124. package/out/_next/static/chunks/{3y9c26fv1poq_.js → 2-hdejef-mpka.js} +199 -199
  125. package/out/_next/static/chunks/{22qzld31fbhbv.js → 2-p206i_ihx09.js} +1 -1
  126. package/out/_next/static/chunks/{3rx1jhuop94-l.js → 20qelrstvz9_n.js} +1 -1
  127. package/out/_next/static/chunks/21at65obnoo8z.js +1 -0
  128. package/out/_next/static/chunks/21ko5mxfderw0.js +1 -0
  129. package/out/_next/static/chunks/21muzwu43o8xg.js +1 -0
  130. package/out/_next/static/chunks/{3he9bxsc67ivq.js → 22ja7c3gk0_ko.js} +1 -1
  131. package/out/_next/static/chunks/{0mqi0xn_c010j.js → 22rl_arnzs-ve.js} +1 -1
  132. package/out/_next/static/chunks/23d-hvrwpixpm.js +1 -0
  133. package/out/_next/static/chunks/{1f-2upk7uaxky.js → 255knovck7pv2.js} +4 -4
  134. package/out/_next/static/chunks/2569rrrffvm2w.js +31 -0
  135. package/out/_next/static/chunks/{229mkx-mtfcgf.js → 25gf6xn9u1c57.js} +1 -1
  136. package/out/_next/static/chunks/{2vmybybb3dvia.js → 267q_eg-c6f6m.js} +1 -1
  137. package/out/_next/static/chunks/{0e7xuupmrw4-e.js → 28ndw4nsw2t_4.js} +1 -1
  138. package/out/_next/static/chunks/{0m3yjobjg36ce.js → 29gv2swsp7tzu.js} +1 -1
  139. package/out/_next/static/chunks/29o74k0d6hkdf.js +1 -0
  140. package/out/_next/static/chunks/{0kr-bd6fuqc2s.js → 2bm95r0011asw.js} +1 -1
  141. package/out/_next/static/chunks/2btabnibkm0db.js +1 -0
  142. package/out/_next/static/chunks/2c--awgkdcikq.js +1 -0
  143. package/out/_next/static/chunks/{2ab-99frxpah-.js → 2c2dspoukng-5.js} +1 -1
  144. package/out/_next/static/chunks/{0zo4x1j8ug-kb.js → 2e46-2ubc90do.js} +5 -5
  145. package/out/_next/static/chunks/2ep7mjbaoeou0.js +1 -0
  146. package/out/_next/static/chunks/{1kq86iv41cet4.js → 2ezgqm7atphi6.js} +1 -1
  147. package/out/_next/static/chunks/{2owp-uukmhm4s.js → 2ftp5xmq_w23j.js} +35 -35
  148. package/out/_next/static/chunks/{38g9jpxjoxn2x.js → 2g_1ov-0j2kwd.js} +1 -1
  149. package/out/_next/static/chunks/2gfjzq_vjea4w.js +1 -0
  150. package/out/_next/static/chunks/{1tdg_eolxlcdl.js → 2h5hase6ewoyc.js} +1 -1
  151. package/out/_next/static/chunks/{0m0n7kjzscx0y.js → 2h5nvlgky7fpa.js} +1 -1
  152. package/out/_next/static/chunks/{17dabmbnkkplu.js → 2i82rmjta9ijs.js} +1 -1
  153. package/out/_next/static/chunks/2ies66gmou203.js +1 -0
  154. package/out/_next/static/chunks/2jenu2eek9viz.js +1 -0
  155. package/out/_next/static/chunks/{3043pprgv9ors.js → 2khh_pmm224k5.js} +23 -23
  156. package/out/_next/static/chunks/2kv9_bt15v83g.js +1 -0
  157. package/out/_next/static/chunks/{0msckddycfy76.js → 2luaj_cf5f19-.js} +1 -1
  158. package/out/_next/static/chunks/2mgmvz66gh5ub.js +1 -0
  159. package/out/_next/static/chunks/2nwlqtv3vrzcv.js +1 -0
  160. package/out/_next/static/chunks/{18ss4ls60s31e.js → 2o8k8x5zcepfy.js} +1 -1
  161. package/out/_next/static/chunks/{1e1zozntzsx42.js → 2pbgsq7vvtk8_.js} +1 -1
  162. package/out/_next/static/chunks/{0b7-mrrg7ryj2.js → 2pcdnd4nzcw4c.js} +1 -1
  163. package/out/_next/static/chunks/2q0rz76kj6h5z.js +1 -0
  164. package/out/_next/static/chunks/{3w1a2o8nevap8.js → 2rjfrjhp4kjev.js} +18 -18
  165. package/out/_next/static/chunks/2si5cg3hl5dtf.js +4 -0
  166. package/out/_next/static/chunks/2uhrhq35bki6u.js +1 -0
  167. package/out/_next/static/chunks/{1l12hkz1g7uhf.js → 2ymtumj-hfrjo.js} +1 -1
  168. package/out/_next/static/chunks/{2yr9wt421xdjr.js → 2z9mdtudj8crz.js} +17 -17
  169. package/out/_next/static/chunks/{1iaxzjly2pap1.js → 2zdzgmacaoor9.js} +1 -1
  170. package/out/_next/static/chunks/{0mk8tangq9equ.js → 2zpn7010iqgsy.js} +1 -1
  171. package/out/_next/static/chunks/2zyjw8g4tiu51.js +1 -0
  172. package/out/_next/static/chunks/{2kn_dqzbyabtn.js → 3-_08i4_7yhno.js} +1 -1
  173. package/out/_next/static/chunks/3-irhmtm1q5qw.js +1 -0
  174. package/out/_next/static/chunks/3-k74vn9exnb6.js +1 -0
  175. package/out/_next/static/chunks/{18avgwx9nlxp9.js → 3-x7522okdy-7.js} +1 -1
  176. package/out/_next/static/chunks/{39dscgnk4__gl.js → 309f81l5ucsb_.js} +16 -16
  177. package/out/_next/static/chunks/{1f1vq3goue1w4.js → 31ei992g8gqz9.js} +1 -1
  178. package/out/_next/static/chunks/{0i9oqg-xbq-a9.js → 32vaw89wdwv5_.js} +1 -1
  179. package/out/_next/static/chunks/34y7nx6qmat06.js +1 -0
  180. package/out/_next/static/chunks/{1f92k-xa0pl-3.js → 35aagg46wp139.js} +1 -1
  181. package/out/_next/static/chunks/36rqw8h6ildpl.js +1 -0
  182. package/out/_next/static/chunks/{0zwkmsojeuekb.js → 380ivzcfb4o_3.js} +4 -4
  183. package/out/_next/static/chunks/{10w513bgw-bgi.js → 3a_khw6q6pyh1.js} +1 -1
  184. package/out/_next/static/chunks/3c_31f20z4jrl.js +1 -0
  185. package/out/_next/static/chunks/3ckp70rgr63u9.js +1 -0
  186. package/out/_next/static/chunks/{08rk1dp1wb-gm.js → 3d76e_yd8l_0x.js} +38 -38
  187. package/out/_next/static/chunks/{2p8dbh81chhon.js → 3ed24zmt8qfys.js} +1 -1
  188. package/out/_next/static/chunks/3ez20hi1mxw0w.js +1 -0
  189. package/out/_next/static/chunks/3fdx-rnos5ft-.js +1 -0
  190. package/out/_next/static/chunks/3fgfbxxb-j_bn.js +4 -0
  191. package/out/_next/static/chunks/{03st_hmor6qju.js → 3go-mst7n3udd.js} +1 -1
  192. package/out/_next/static/chunks/{3d0ejsnhbzi-j.js → 3gyyjsot8mdav.js} +1 -1
  193. package/out/_next/static/chunks/{2t9zu9v_g9kr9.js → 3iwf5yeurp57i.js} +3 -3
  194. package/out/_next/static/chunks/{0rruvj1cyflrh.js → 3k-gz8qf-mj-p.js} +1 -1
  195. package/out/_next/static/chunks/{2enlv4yy0t-9j.js → 3kalvwsf11-ss.js} +12 -12
  196. package/out/_next/static/chunks/3lehc5pujwhsz.js +1 -0
  197. package/out/_next/static/chunks/{05l3dluxivcor.js → 3m0ytnc241yfz.js} +1 -1
  198. package/out/_next/static/chunks/3mpe7c3iyxn5h.js +1 -0
  199. package/out/_next/static/chunks/{0tl8j9f8lt0yf.js → 3mvaub8qjdyuc.js} +1 -1
  200. package/out/_next/static/chunks/{0k79ryqehst0b.js → 3n-7bcmfbh299.js} +48 -18
  201. package/out/_next/static/chunks/{38ea9kqlbxt86.js → 3nw7u4bie0-g6.js} +1 -1
  202. package/out/_next/static/chunks/3qatb38-tk_gd.js +1 -0
  203. package/out/_next/static/chunks/3tdcdi_utmoy_.js +1 -0
  204. package/out/_next/static/chunks/{3x6wpv_z5m6rz.js → 3tdzweqszru4y.js} +1 -1
  205. package/out/_next/static/chunks/3tt_ir_va6262.js +1 -0
  206. package/out/_next/static/chunks/{16hx9_epo71u-.js → 3w4qettzp7khe.js} +32 -32
  207. package/out/_next/static/chunks/{2op88btas-hl8.js → 3w_umk1xtj6to.js} +1 -1
  208. package/out/_next/static/chunks/{1kmsg9ef5djl3.js → 3y_51bmdnc0ey.js} +1 -1
  209. package/out/_next/static/chunks/{1ajmblsp0wj0_.js → 3yr66ufoli71t.js} +1 -1
  210. package/out/_next/static/chunks/{348hdbpkkcq_2.js → 3z4suna4kq4j5.js} +20 -20
  211. package/out/_next/static/chunks/{1y20bv6vl4ylk.js → 41qxc142snm22.js} +1 -1
  212. package/out/_next/static/chunks/{404f_93w2e8ty.js → 41yy4p3-rtyz1.js} +1 -1
  213. package/out/_next/static/chunks/{3fz7tc-4j13uv.js → 425epvuw3yy-n.js} +21 -21
  214. package/out/_next/static/chunks/{1t60cososq7b0.js → 43hwl25uke0l_.js} +1 -1
  215. package/out/_next/static/chunks/43qmngblcab8f.js +1 -0
  216. package/out/_next/static/chunks/{2bn9u9r0rfhvc.js → 442e2l3jzxd-_.js} +1 -1
  217. package/out/_next/static/chunks/{turbopack-16ab30_1p4vhq.js → turbopack-3r8yn0j92tqw_.js} +1 -1
  218. package/out/_not-found/__next._full.txt +8 -8
  219. package/out/_not-found/__next._head.txt +4 -4
  220. package/out/_not-found/__next._index.txt +3 -3
  221. package/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
  222. package/out/_not-found/__next._not-found.txt +3 -3
  223. package/out/_not-found/__next._tree.txt +1 -1
  224. package/out/_not-found.html +1 -1
  225. package/out/_not-found.txt +8 -8
  226. package/out/index.html +1 -1
  227. package/out/index.txt +10 -10
  228. package/package.json +10 -10
  229. package/out/_next/static/chunks/0-29qf-q72olu.js +0 -1
  230. package/out/_next/static/chunks/0-tk5ptli--r0.js +0 -1
  231. package/out/_next/static/chunks/0296l8lzd69ns.js +0 -1
  232. package/out/_next/static/chunks/04pk6n3z75dcy.js +0 -1
  233. package/out/_next/static/chunks/0g6u34xkzrpjn.js +0 -1
  234. package/out/_next/static/chunks/0g7p8zp2kxve5.js +0 -1
  235. package/out/_next/static/chunks/0gwa154w_0wuh.js +0 -1
  236. package/out/_next/static/chunks/0h1o0cr3327tt.js +0 -1
  237. package/out/_next/static/chunks/0jf3n5n5yrr4o.js +0 -1
  238. package/out/_next/static/chunks/0jsh6juckq525.js +0 -1
  239. package/out/_next/static/chunks/0kcbdjbdxu_wa.js +0 -1
  240. package/out/_next/static/chunks/0l3wwyl93sqh9.js +0 -1
  241. package/out/_next/static/chunks/0n0thxa3jkour.js +0 -4
  242. package/out/_next/static/chunks/0ngiuj5k-or6g.js +0 -1
  243. package/out/_next/static/chunks/0nx_t8iq-324h.js +0 -1
  244. package/out/_next/static/chunks/0oap0o8a8a_cl.js +0 -1
  245. package/out/_next/static/chunks/0ostjlqtwkhqr.js +0 -1
  246. package/out/_next/static/chunks/0vddljjnmozzx.js +0 -1
  247. package/out/_next/static/chunks/0w0sx062qmcsh.js +0 -1
  248. package/out/_next/static/chunks/0x6i6e6863tir.js +0 -1
  249. package/out/_next/static/chunks/0yvei5e7uye4f.js +0 -3
  250. package/out/_next/static/chunks/1--kelnig7pxx.js +0 -1
  251. package/out/_next/static/chunks/1-ud6hztxiazp.js +0 -1
  252. package/out/_next/static/chunks/10v4rskkrjgd_.js +0 -1
  253. package/out/_next/static/chunks/117ys3lltfmcu.js +0 -1
  254. package/out/_next/static/chunks/14klj_i6-l-10.js +0 -1
  255. package/out/_next/static/chunks/17ev44x54_jrd.js +0 -1
  256. package/out/_next/static/chunks/17svumd4o0qnc.js +0 -1
  257. package/out/_next/static/chunks/17v12p4sfraa0.js +0 -1
  258. package/out/_next/static/chunks/1a7cup181rjod.js +0 -1
  259. package/out/_next/static/chunks/1ek5rtpo6rxev.js +0 -1
  260. package/out/_next/static/chunks/1evp209qbr4cr.js +0 -5
  261. package/out/_next/static/chunks/1fa265388524p.js +0 -1
  262. package/out/_next/static/chunks/1g3z43o3h-024.js +0 -31
  263. package/out/_next/static/chunks/1g_27texazqcj.js +0 -1
  264. package/out/_next/static/chunks/1j--a56ji33_x.js +0 -1
  265. package/out/_next/static/chunks/1oara6fkfvgs3.js +0 -1
  266. package/out/_next/static/chunks/1par9m038tiov.js +0 -1
  267. package/out/_next/static/chunks/1q-gcxr6o4bx2.js +0 -1
  268. package/out/_next/static/chunks/1st81sc3owvku.js +0 -4
  269. package/out/_next/static/chunks/1vkww9l6lgqag.js +0 -1
  270. package/out/_next/static/chunks/1vpcaaf-0dn7q.js +0 -1
  271. package/out/_next/static/chunks/1vzmzrjhlm1q5.js +0 -1
  272. package/out/_next/static/chunks/245h82k-g1nxr.js +0 -1
  273. package/out/_next/static/chunks/24cqjhy669845.js +0 -1
  274. package/out/_next/static/chunks/25ctnyh7njp-d.js +0 -4
  275. package/out/_next/static/chunks/286ggpetqnwyo.js +0 -3
  276. package/out/_next/static/chunks/28f1onw3nywbz.js +0 -1
  277. package/out/_next/static/chunks/28ud4w7xswcir.js +0 -1
  278. package/out/_next/static/chunks/28ycc-1519hl2.js +0 -1
  279. package/out/_next/static/chunks/2dhv35o59yzao.js +0 -1
  280. package/out/_next/static/chunks/2ey30qeaob985.js +0 -1
  281. package/out/_next/static/chunks/2f0r-df7tb3pu.js +0 -1
  282. package/out/_next/static/chunks/2fle007r0cdnq.js +0 -1
  283. package/out/_next/static/chunks/2gh4z57fem0_v.js +0 -1
  284. package/out/_next/static/chunks/2h1uw3cluvmmo.js +0 -1
  285. package/out/_next/static/chunks/2kje_jvmwsvwo.js +0 -1
  286. package/out/_next/static/chunks/2l_oqx9idxcs8.js +0 -1
  287. package/out/_next/static/chunks/2pkoed609lf41.js +0 -1
  288. package/out/_next/static/chunks/2reukv9c7cq_9.js +0 -1
  289. package/out/_next/static/chunks/2vaoftqgc44cg.js +0 -1
  290. package/out/_next/static/chunks/2wdk-kbm-n-m5.js +0 -1
  291. package/out/_next/static/chunks/2y75diyxqlhzl.js +0 -1
  292. package/out/_next/static/chunks/2zljunurdji0q.js +0 -1
  293. package/out/_next/static/chunks/30_2jsjk52x2i.js +0 -1
  294. package/out/_next/static/chunks/34gp3hvr3j6um.js +0 -1
  295. package/out/_next/static/chunks/3ajhvedcs_lzb.js +0 -1
  296. package/out/_next/static/chunks/3g4e2txsrb2p2.js +0 -1
  297. package/out/_next/static/chunks/3g_h_00xs9u59.js +0 -1
  298. package/out/_next/static/chunks/3ghwe2mr2ig7e.js +0 -1
  299. package/out/_next/static/chunks/3hr-mlwi78nov.js +0 -1
  300. package/out/_next/static/chunks/3mcfjxvxo0o3e.js +0 -1
  301. package/out/_next/static/chunks/3mwoauxszd3mn.js +0 -1
  302. package/out/_next/static/chunks/3oj29s_tuqbkm.js +0 -1
  303. package/out/_next/static/chunks/3ovd8o_usay7j.js +0 -1
  304. package/out/_next/static/chunks/3pdpaqzwhhijn.js +0 -1
  305. package/out/_next/static/chunks/3r2hbpm4wju16.js +0 -1
  306. package/out/_next/static/chunks/3rl45k759wfi1.js +0 -1
  307. package/out/_next/static/chunks/3urd7r018nel4.js +0 -1
  308. package/out/_next/static/chunks/3vaho-xrtuchd.js +0 -2
  309. package/out/_next/static/chunks/3wqs57qehored.js +0 -1
  310. package/out/_next/static/chunks/40acif2eh_unv.js +0 -1
  311. package/out/_next/static/chunks/4227p7752rnny.js +0 -1
  312. /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → yF_tmb8VExvESewet-_To}/_buildManifest.js +0 -0
  313. /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → yF_tmb8VExvESewet-_To}/_clientMiddlewareManifest.js +0 -0
  314. /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → yF_tmb8VExvESewet-_To}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,96714,e=>{"use strict";e.s(["StringDictionary",0,class{constructor(){this._count=0,this._data={}}copyFrom(e){this.clear(),e.forEach((e,t)=>this.add(e,t))}get(e){let t=this._data[e];if(void 0!==t)return t}getOrAddWithFactory(e,t){let i=this.get(e);return void 0!==i||(i=t(e))&&this.add(e,i),i}getOrAdd(e,t){let i=this.get(e);return void 0!==i?i:(this.add(e,t),t)}contains(e){return void 0!==this._data[e]}add(e,t){return void 0===this._data[e]&&(this._data[e]=t,++this._count,!0)}set(e,t){return void 0!==this._data[e]&&(this._data[e]=t,!0)}getAndRemove(e){let t=this.get(e);return void 0!==t?(delete this._data[e],--this._count,t):null}remove(e){return!!this.contains(e)&&(delete this._data[e],--this._count,!0)}clear(){this._data={},this._count=0}get count(){return this._count}forEach(e){for(let t in this._data){let i=this._data[t];e(t,i)}}first(e){for(let t in this._data){let i=this._data[t],s=e(t,i);if(s)return s}return null}}])},66052,e=>{"use strict";var t=e.i(16147),i=e.i(40220),s=e.i(57554),r=e.i(75053),n=e.i(95397);function a(e){e.push("vCameraColorCurveNeutral","vCameraColorCurvePositive","vCameraColorCurveNegative")}class o{constructor(){this._dirty=!0,this._tempColor=new r.Color4(0,0,0,0),this._globalCurve=new r.Color4(0,0,0,0),this._highlightsCurve=new r.Color4(0,0,0,0),this._midtonesCurve=new r.Color4(0,0,0,0),this._shadowsCurve=new r.Color4(0,0,0,0),this._positiveCurve=new r.Color4(0,0,0,0),this._negativeCurve=new r.Color4(0,0,0,0),this._globalHue=30,this._globalDensity=0,this._globalSaturation=0,this._globalExposure=0,this._highlightsHue=30,this._highlightsDensity=0,this._highlightsSaturation=0,this._highlightsExposure=0,this._midtonesHue=30,this._midtonesDensity=0,this._midtonesSaturation=0,this._midtonesExposure=0,this._shadowsHue=30,this._shadowsDensity=0,this._shadowsSaturation=0,this._shadowsExposure=0}get globalHue(){return this._globalHue}set globalHue(e){this._globalHue=e,this._dirty=!0}get globalDensity(){return this._globalDensity}set globalDensity(e){this._globalDensity=e,this._dirty=!0}get globalSaturation(){return this._globalSaturation}set globalSaturation(e){this._globalSaturation=e,this._dirty=!0}get globalExposure(){return this._globalExposure}set globalExposure(e){this._globalExposure=e,this._dirty=!0}get highlightsHue(){return this._highlightsHue}set highlightsHue(e){this._highlightsHue=e,this._dirty=!0}get highlightsDensity(){return this._highlightsDensity}set highlightsDensity(e){this._highlightsDensity=e,this._dirty=!0}get highlightsSaturation(){return this._highlightsSaturation}set highlightsSaturation(e){this._highlightsSaturation=e,this._dirty=!0}get highlightsExposure(){return this._highlightsExposure}set highlightsExposure(e){this._highlightsExposure=e,this._dirty=!0}get midtonesHue(){return this._midtonesHue}set midtonesHue(e){this._midtonesHue=e,this._dirty=!0}get midtonesDensity(){return this._midtonesDensity}set midtonesDensity(e){this._midtonesDensity=e,this._dirty=!0}get midtonesSaturation(){return this._midtonesSaturation}set midtonesSaturation(e){this._midtonesSaturation=e,this._dirty=!0}get midtonesExposure(){return this._midtonesExposure}set midtonesExposure(e){this._midtonesExposure=e,this._dirty=!0}get shadowsHue(){return this._shadowsHue}set shadowsHue(e){this._shadowsHue=e,this._dirty=!0}get shadowsDensity(){return this._shadowsDensity}set shadowsDensity(e){this._shadowsDensity=e,this._dirty=!0}get shadowsSaturation(){return this._shadowsSaturation}set shadowsSaturation(e){this._shadowsSaturation=e,this._dirty=!0}get shadowsExposure(){return this._shadowsExposure}set shadowsExposure(e){this._shadowsExposure=e,this._dirty=!0}getClassName(){return"ColorCurves"}_getColorGradingDataToRef(e,t,i,s,r){null!=e&&(e=o._Clamp(e,0,360),t=o._Clamp(t,-100,100),i=o._Clamp(i,-100,100),s=o._Clamp(s,-100,100),t=.5*o._ApplyColorGradingSliderNonlinear(t),s=o._ApplyColorGradingSliderNonlinear(s),t<0&&(t*=-1,e=(e+180)%360),o._FromHSBToRef(e,t,50+.25*s,r),r.scaleToRef(2,r),r.a=1+.01*i)}static _ApplyColorGradingSliderNonlinear(e){let t=Math.abs(e/=100);return t=Math.pow(t,2),e<0&&(t*=-1),t*=100}static _FromHSBToRef(e,t,i,s){let r=o._Clamp(e,0,360),n=o._Clamp(t/100,0,1),a=o._Clamp(i/100,0,1);if(0===n)s.r=a,s.g=a,s.b=a;else{let e=Math.floor(r/=60),t=r-e,i=a*(1-n),o=a*(1-n*t),h=a*(1-n*(1-t));switch(e){case 0:s.r=a,s.g=h,s.b=i;break;case 1:s.r=o,s.g=a,s.b=i;break;case 2:s.r=i,s.g=a,s.b=h;break;case 3:s.r=i,s.g=o,s.b=a;break;case 4:s.r=h,s.g=i,s.b=a;break;default:s.r=a,s.g=i,s.b=o}}s.a=1}static _Clamp(e,t,i){return Math.min(Math.max(e,t),i)}clone(){return n.SerializationHelper.Clone(()=>new o,this)}serialize(){return n.SerializationHelper.Serialize(this)}_bind(e,t="vCameraColorCurvePositive",i="vCameraColorCurveNeutral",s="vCameraColorCurveNegative"){this._dirty&&(this._dirty=!1,this._getColorGradingDataToRef(this._globalHue,this._globalDensity,this._globalSaturation,this._globalExposure,this._globalCurve),this._getColorGradingDataToRef(this._highlightsHue,this._highlightsDensity,this._highlightsSaturation,this._highlightsExposure,this._tempColor),this._tempColor.multiplyToRef(this._globalCurve,this._highlightsCurve),this._getColorGradingDataToRef(this._midtonesHue,this._midtonesDensity,this._midtonesSaturation,this._midtonesExposure,this._tempColor),this._tempColor.multiplyToRef(this._globalCurve,this._midtonesCurve),this._getColorGradingDataToRef(this._shadowsHue,this._shadowsDensity,this._shadowsSaturation,this._shadowsExposure,this._tempColor),this._tempColor.multiplyToRef(this._globalCurve,this._shadowsCurve),this._highlightsCurve.subtractToRef(this._midtonesCurve,this._positiveCurve),this._midtonesCurve.subtractToRef(this._shadowsCurve,this._negativeCurve)),e&&(e.setFloat4(t,this._positiveCurve.r,this._positiveCurve.g,this._positiveCurve.b,this._positiveCurve.a),e.setFloat4(i,this._midtonesCurve.r,this._midtonesCurve.g,this._midtonesCurve.b,this._midtonesCurve.a),e.setFloat4(s,this._negativeCurve.r,this._negativeCurve.g,this._negativeCurve.b,this._negativeCurve.a))}}o.PrepareUniforms=a,(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_globalHue",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_globalDensity",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_globalSaturation",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_globalExposure",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_highlightsHue",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_highlightsDensity",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_highlightsSaturation",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_highlightsExposure",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_midtonesHue",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_midtonesDensity",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_midtonesSaturation",void 0),(0,t.__decorate)([(0,i.serialize)()],o.prototype,"_midtonesExposure",void 0);var h=e.i(65679);class l{constructor(){this.colorCurves=new o,this._colorCurvesEnabled=!1,this._colorGradingEnabled=!1,this._colorGradingWithGreenDepth=!0,this._colorGradingBGR=!0,this._exposure=1,this._toneMappingEnabled=!1,this._toneMappingType=l.TONEMAPPING_STANDARD,this._contrast=1,this.vignetteStretch=0,this.vignetteCenterX=0,this.vignetteCenterY=0,this.vignetteWeight=1.5,this.vignetteColor=new r.Color4(0,0,0,0),this.vignetteCameraFov=.5,this._vignetteBlendMode=l.VIGNETTEMODE_MULTIPLY,this._vignetteEnabled=!1,this._ditheringEnabled=!1,this._ditheringIntensity=1/255,this._skipFinalColorClamp=!1,this._applyByPostProcess=!1,this._isEnabled=!0,this.outputTextureWidth=0,this.outputTextureHeight=0,this.onUpdateParameters=new s.Observable}get colorCurvesEnabled(){return this._colorCurvesEnabled}set colorCurvesEnabled(e){this._colorCurvesEnabled!==e&&(this._colorCurvesEnabled=e,this._updateParameters())}get colorGradingTexture(){return this._colorGradingTexture}set colorGradingTexture(e){this._colorGradingTexture!==e&&(this._colorGradingTexture=e,this._updateParameters())}get colorGradingEnabled(){return this._colorGradingEnabled}set colorGradingEnabled(e){this._colorGradingEnabled!==e&&(this._colorGradingEnabled=e,this._updateParameters())}get colorGradingWithGreenDepth(){return this._colorGradingWithGreenDepth}set colorGradingWithGreenDepth(e){this._colorGradingWithGreenDepth!==e&&(this._colorGradingWithGreenDepth=e,this._updateParameters())}get colorGradingBGR(){return this._colorGradingBGR}set colorGradingBGR(e){this._colorGradingBGR!==e&&(this._colorGradingBGR=e,this._updateParameters())}get exposure(){return this._exposure}set exposure(e){this._exposure!==e&&(this._exposure=e,this._updateParameters())}get toneMappingEnabled(){return this._toneMappingEnabled}set toneMappingEnabled(e){this._toneMappingEnabled!==e&&(this._toneMappingEnabled=e,this._updateParameters())}get toneMappingType(){return this._toneMappingType}set toneMappingType(e){this._toneMappingType!==e&&(this._toneMappingType=e,this._updateParameters())}get contrast(){return this._contrast}set contrast(e){this._contrast!==e&&(this._contrast=e,this._updateParameters())}get vignetteCentreY(){return this.vignetteCenterY}set vignetteCentreY(e){this.vignetteCenterY=e}get vignetteCentreX(){return this.vignetteCenterX}set vignetteCentreX(e){this.vignetteCenterX=e}get vignetteBlendMode(){return this._vignetteBlendMode}set vignetteBlendMode(e){this._vignetteBlendMode!==e&&(this._vignetteBlendMode=e,this._updateParameters())}get vignetteEnabled(){return this._vignetteEnabled}set vignetteEnabled(e){this._vignetteEnabled!==e&&(this._vignetteEnabled=e,this._updateParameters())}get ditheringEnabled(){return this._ditheringEnabled}set ditheringEnabled(e){this._ditheringEnabled!==e&&(this._ditheringEnabled=e,this._updateParameters())}get ditheringIntensity(){return this._ditheringIntensity}set ditheringIntensity(e){this._ditheringIntensity!==e&&(this._ditheringIntensity=e,this._updateParameters())}get skipFinalColorClamp(){return this._skipFinalColorClamp}set skipFinalColorClamp(e){this._skipFinalColorClamp!==e&&(this._skipFinalColorClamp=e,this._updateParameters())}get applyByPostProcess(){return this._applyByPostProcess}set applyByPostProcess(e){this._applyByPostProcess!==e&&(this._applyByPostProcess=e,this._updateParameters())}get isEnabled(){return this._isEnabled}set isEnabled(e){this._isEnabled!==e&&(this._isEnabled=e,this._updateParameters())}_updateParameters(){this.onUpdateParameters.notifyObservers(this)}getClassName(){return"ImageProcessingConfiguration"}prepareDefines(e,t=!1){if(t!==this.applyByPostProcess||!this._isEnabled){e.VIGNETTE=!1,e.TONEMAPPING=0,e.CONTRAST=!1,e.EXPOSURE=!1,e.COLORCURVES=!1,e.COLORGRADING=!1,e.COLORGRADING3D=!1,e.DITHER=!1,e.IMAGEPROCESSING=!1,e.SKIPFINALCOLORCLAMP=this.skipFinalColorClamp,e.IMAGEPROCESSINGPOSTPROCESS=this.applyByPostProcess&&this._isEnabled;return}if(e.VIGNETTE=this.vignetteEnabled,e.VIGNETTEBLENDMODEMULTIPLY=this.vignetteBlendMode===l._VIGNETTEMODE_MULTIPLY,e.VIGNETTEBLENDMODEOPAQUE=!e.VIGNETTEBLENDMODEMULTIPLY,this._toneMappingEnabled)switch(this._toneMappingType){case l.TONEMAPPING_KHR_PBR_NEUTRAL:e.TONEMAPPING=3;break;case l.TONEMAPPING_ACES:e.TONEMAPPING=2;break;default:e.TONEMAPPING=1}else e.TONEMAPPING=0;e.CONTRAST=1!==this.contrast,e.EXPOSURE=1!==this.exposure,e.COLORCURVES=this.colorCurvesEnabled&&!!this.colorCurves,e.COLORGRADING=this.colorGradingEnabled&&!!this.colorGradingTexture,e.COLORGRADING?e.COLORGRADING3D=this.colorGradingTexture.is3D:e.COLORGRADING3D=!1,e.SAMPLER3DGREENDEPTH=this.colorGradingWithGreenDepth,e.SAMPLER3DBGRMAP=this.colorGradingBGR,e.DITHER=this._ditheringEnabled,e.IMAGEPROCESSINGPOSTPROCESS=this.applyByPostProcess,e.SKIPFINALCOLORCLAMP=this.skipFinalColorClamp,e.IMAGEPROCESSING=e.VIGNETTE||!!e.TONEMAPPING||e.CONTRAST||e.EXPOSURE||e.COLORCURVES||e.COLORGRADING||e.DITHER}isReady(){return!this.colorGradingEnabled||!this.colorGradingTexture||this.colorGradingTexture.isReady()}bind(e,t){if(this._colorCurvesEnabled&&this.colorCurves&&function(e,t,i="vCameraColorCurvePositive",s="vCameraColorCurveNeutral",r="vCameraColorCurveNegative"){e._bind(t,i,s,r)}(this.colorCurves,e),this._vignetteEnabled||this._ditheringEnabled){let i=1/(this.outputTextureWidth||e.getEngine().getRenderWidth()),s=1/(this.outputTextureHeight||e.getEngine().getRenderHeight());if(e.setFloat2("vInverseScreenSize",i,s),this._ditheringEnabled&&e.setFloat("ditherIntensity",.5*this._ditheringIntensity),this._vignetteEnabled){let r=null!=t?t:s/i,n=Math.tan(.5*this.vignetteCameraFov),a=n*r,o=Math.sqrt(a*n);a=(0,h.Mix)(a,o,this.vignetteStretch),n=(0,h.Mix)(n,o,this.vignetteStretch),e.setFloat4("vignetteSettings1",a,n,-a*this.vignetteCenterX,-n*this.vignetteCenterY);let l=-2*this.vignetteWeight;e.setFloat4("vignetteSettings2",this.vignetteColor.r,this.vignetteColor.g,this.vignetteColor.b,l)}}if(e.setFloat("exposureLinear",this.exposure),e.setFloat("contrast",this.contrast),this.colorGradingTexture){e.setTexture("txColorTransform",this.colorGradingTexture);let t=this.colorGradingTexture.getSize().height;e.setFloat4("colorTransformSettings",(t-1)/t,.5/t,t,this.colorGradingTexture.level)}}clone(){return n.SerializationHelper.Clone(()=>new l,this)}serialize(){return n.SerializationHelper.Serialize(this)}static get VIGNETTEMODE_MULTIPLY(){return this._VIGNETTEMODE_MULTIPLY}static get VIGNETTEMODE_OPAQUE(){return this._VIGNETTEMODE_OPAQUE}}l.TONEMAPPING_STANDARD=0,l.TONEMAPPING_ACES=1,l.TONEMAPPING_KHR_PBR_NEUTRAL=2,l.PrepareUniforms=function(e,t){t.EXPOSURE&&e.push("exposureLinear"),t.CONTRAST&&e.push("contrast"),t.COLORGRADING&&e.push("colorTransformSettings"),(t.VIGNETTE||t.DITHER)&&e.push("vInverseScreenSize"),t.VIGNETTE&&(e.push("vignetteSettings1"),e.push("vignetteSettings2")),t.COLORCURVES&&a(e),t.DITHER&&e.push("ditherIntensity")},l.PrepareSamplers=function(e,t){t.COLORGRADING&&e.push("txColorTransform")},l._VIGNETTEMODE_MULTIPLY=0,l._VIGNETTEMODE_OPAQUE=1,(0,t.__decorate)([(0,i.serializeAsColorCurves)()],l.prototype,"colorCurves",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_colorCurvesEnabled",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)("colorGradingTexture")],l.prototype,"_colorGradingTexture",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_colorGradingEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_colorGradingWithGreenDepth",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_colorGradingBGR",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_exposure",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_toneMappingEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_toneMappingType",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_contrast",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"vignetteStretch",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"vignetteCenterX",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"vignetteCenterY",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"vignetteWeight",void 0),(0,t.__decorate)([(0,i.serializeAsColor4)()],l.prototype,"vignetteColor",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"vignetteCameraFov",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_vignetteBlendMode",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_vignetteEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_ditheringEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_ditheringIntensity",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_skipFinalColorClamp",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_applyByPostProcess",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"_isEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"outputTextureWidth",void 0),(0,t.__decorate)([(0,i.serialize)()],l.prototype,"outputTextureHeight",void 0),e.s(["ImageProcessingConfiguration",0,l],66052)},64858,49369,47237,e=>{"use strict";class t{constructor(e,t,i,s,r,n){this.source=e,this.pointerX=t,this.pointerY=i,this.meshUnderPointer=s,this.sourceEvent=r,this.additionalData=n}static CreateNew(e,i,s){let r=e.getScene();return new t(e,r.pointerX,r.pointerY,r.meshUnderPointer||e,i,s)}static CreateNewFromSprite(e,i,s,r){return new t(e,i.pointerX,i.pointerY,i.meshUnderPointer,s,r)}static CreateNewFromScene(e,i){return new t(null,e.pointerX,e.pointerY,e.meshUnderPointer,i)}static CreateNewFromPrimitive(e,i,s,r){return new t(e,i.x,i.y,null,s,r)}}e.s(["ActionEvent",0,t],64858);var i,s,r,n,a,o,h,l,d,c,u,g,p,_,v=e.i(11437);class m{constructor(){this.hoverCursor="",this.actions=[],this.isRecursive=!1,this.disposeWhenUnowned=!0}static get HasTriggers(){for(let e in m.Triggers)if(Object.prototype.hasOwnProperty.call(m.Triggers,e))return!0;return!1}static get HasPickTriggers(){for(let e in m.Triggers)if(Object.prototype.hasOwnProperty.call(m.Triggers,e)){let t=parseInt(e);if(t>=1&&t<=7)return!0}return!1}static HasSpecificTrigger(e){for(let t in m.Triggers)if(Object.prototype.hasOwnProperty.call(m.Triggers,t)&&parseInt(t)===e)return!0;return!1}}m.Triggers={};var f=e.i(66476),b=e.i(10534),y=e.i(70463);(i=l||(l={}))[i.Generic=0]="Generic",i[i.Keyboard=1]="Keyboard",i[i.Mouse=2]="Mouse",i[i.Touch=3]="Touch",i[i.DualShock=4]="DualShock",i[i.Xbox=5]="Xbox",i[i.Switch=6]="Switch",i[i.DualSense=7]="DualSense",(s=d||(d={}))[s.Horizontal=0]="Horizontal",s[s.Vertical=1]="Vertical",s[s.LeftClick=2]="LeftClick",s[s.MiddleClick=3]="MiddleClick",s[s.RightClick=4]="RightClick",s[s.BrowserBack=5]="BrowserBack",s[s.BrowserForward=6]="BrowserForward",s[s.MouseWheelX=7]="MouseWheelX",s[s.MouseWheelY=8]="MouseWheelY",s[s.MouseWheelZ=9]="MouseWheelZ",s[s.Move=12]="Move",(r=c||(c={}))[r.Horizontal=0]="Horizontal",r[r.Vertical=1]="Vertical",r[r.LeftClick=2]="LeftClick",r[r.MiddleClick=3]="MiddleClick",r[r.RightClick=4]="RightClick",r[r.BrowserBack=5]="BrowserBack",r[r.BrowserForward=6]="BrowserForward",r[r.MouseWheelX=7]="MouseWheelX",r[r.MouseWheelY=8]="MouseWheelY",r[r.MouseWheelZ=9]="MouseWheelZ",r[r.DeltaHorizontal=10]="DeltaHorizontal",r[r.DeltaVertical=11]="DeltaVertical",(n=u||(u={}))[n.Cross=0]="Cross",n[n.Circle=1]="Circle",n[n.Square=2]="Square",n[n.Triangle=3]="Triangle",n[n.L1=4]="L1",n[n.R1=5]="R1",n[n.L2=6]="L2",n[n.R2=7]="R2",n[n.Share=8]="Share",n[n.Options=9]="Options",n[n.L3=10]="L3",n[n.R3=11]="R3",n[n.DPadUp=12]="DPadUp",n[n.DPadDown=13]="DPadDown",n[n.DPadLeft=14]="DPadLeft",n[n.DPadRight=15]="DPadRight",n[n.Home=16]="Home",n[n.TouchPad=17]="TouchPad",n[n.LStickXAxis=18]="LStickXAxis",n[n.LStickYAxis=19]="LStickYAxis",n[n.RStickXAxis=20]="RStickXAxis",n[n.RStickYAxis=21]="RStickYAxis",(a=g||(g={}))[a.Cross=0]="Cross",a[a.Circle=1]="Circle",a[a.Square=2]="Square",a[a.Triangle=3]="Triangle",a[a.L1=4]="L1",a[a.R1=5]="R1",a[a.L2=6]="L2",a[a.R2=7]="R2",a[a.Create=8]="Create",a[a.Options=9]="Options",a[a.L3=10]="L3",a[a.R3=11]="R3",a[a.DPadUp=12]="DPadUp",a[a.DPadDown=13]="DPadDown",a[a.DPadLeft=14]="DPadLeft",a[a.DPadRight=15]="DPadRight",a[a.Home=16]="Home",a[a.TouchPad=17]="TouchPad",a[a.LStickXAxis=18]="LStickXAxis",a[a.LStickYAxis=19]="LStickYAxis",a[a.RStickXAxis=20]="RStickXAxis",a[a.RStickYAxis=21]="RStickYAxis",(o=p||(p={}))[o.A=0]="A",o[o.B=1]="B",o[o.X=2]="X",o[o.Y=3]="Y",o[o.LB=4]="LB",o[o.RB=5]="RB",o[o.LT=6]="LT",o[o.RT=7]="RT",o[o.Back=8]="Back",o[o.Start=9]="Start",o[o.LS=10]="LS",o[o.RS=11]="RS",o[o.DPadUp=12]="DPadUp",o[o.DPadDown=13]="DPadDown",o[o.DPadLeft=14]="DPadLeft",o[o.DPadRight=15]="DPadRight",o[o.Home=16]="Home",o[o.LStickXAxis=17]="LStickXAxis",o[o.LStickYAxis=18]="LStickYAxis",o[o.RStickXAxis=19]="RStickXAxis",o[o.RStickYAxis=20]="RStickYAxis",(h=_||(_={}))[h.B=0]="B",h[h.A=1]="A",h[h.Y=2]="Y",h[h.X=3]="X",h[h.L=4]="L",h[h.R=5]="R",h[h.ZL=6]="ZL",h[h.ZR=7]="ZR",h[h.Minus=8]="Minus",h[h.Plus=9]="Plus",h[h.LS=10]="LS",h[h.RS=11]="RS",h[h.DPadUp=12]="DPadUp",h[h.DPadDown=13]="DPadDown",h[h.DPadLeft=14]="DPadLeft",h[h.DPadRight=15]="DPadRight",h[h.Home=16]="Home",h[h.Capture=17]="Capture",h[h.LStickXAxis=18]="LStickXAxis",h[h.LStickYAxis=19]="LStickYAxis",h[h.RStickXAxis=20]="RStickXAxis",h[h.RStickYAxis=21]="RStickYAxis";var P=e.i(57554),C=e.i(24423);class M{static CreateDeviceEvent(e,t,i,s,r,n,a){switch(e){case l.Keyboard:return this._CreateKeyboardEvent(i,s,r,n);case l.Mouse:if(i===d.MouseWheelX||i===d.MouseWheelY||i===d.MouseWheelZ)return this._CreateWheelEvent(e,t,i,s,r,n);case l.Touch:return this._CreatePointerEvent(e,t,i,s,r,n,a);default:throw`Unable to generate event for device ${l[e]}`}}static _CreatePointerEvent(e,t,i,s,r,n,a){let o=this._CreateMouseEvent(e,t,i,s,r,n);return e===l.Mouse?(o.deviceType=l.Mouse,o.pointerId=1,o.pointerType="mouse"):(o.deviceType=l.Touch,o.pointerId=a??t,o.pointerType="touch"),o.buttons=0+r.pollInput(e,t,d.LeftClick)+2*r.pollInput(e,t,d.RightClick)+4*r.pollInput(e,t,d.MiddleClick),i===d.Move?o.type="pointermove":i>=d.LeftClick&&i<=d.RightClick&&(o.type=1===s?"pointerdown":"pointerup",o.button=i-2),o}static _CreateWheelEvent(e,t,i,s,r,n){let a=this._CreateMouseEvent(e,t,i,s,r,n);switch(a.pointerId=1,a.type="wheel",a.deltaMode=C.EventConstants.DOM_DELTA_PIXEL,a.deltaX=0,a.deltaY=0,a.deltaZ=0,i){case d.MouseWheelX:a.deltaX=s;break;case d.MouseWheelY:a.deltaY=s;break;case d.MouseWheelZ:a.deltaZ=s}return a}static _CreateMouseEvent(e,t,i,s,r,n){let a=this._CreateEvent(n),o=r.pollInput(e,t,d.Horizontal),h=r.pollInput(e,t,d.Vertical);return n?(a.movementX=0,a.movementY=0,a.offsetX=a.movementX-n.getBoundingClientRect().x,a.offsetY=a.movementY-n.getBoundingClientRect().y):(a.movementX=r.pollInput(e,t,10),a.movementY=r.pollInput(e,t,11),a.offsetX=0,a.offsetY=0),this._CheckNonCharacterKeys(a,r),a.clientX=o,a.clientY=h,a.x=o,a.y=h,a.deviceType=e,a.deviceSlot=t,a.inputIndex=i,a}static _CreateKeyboardEvent(e,t,i,s){let r=this._CreateEvent(s);return this._CheckNonCharacterKeys(r,i),r.deviceType=l.Keyboard,r.deviceSlot=0,r.inputIndex=e,r.type=1===t?"keydown":"keyup",r.key=String.fromCharCode(e),r.keyCode=e,r}static _CheckNonCharacterKeys(e,t){let i=t.isDeviceAvailable(l.Keyboard),s=i&&1===t.pollInput(l.Keyboard,0,18),r=i&&1===t.pollInput(l.Keyboard,0,17),n=i&&(1===t.pollInput(l.Keyboard,0,91)||1===t.pollInput(l.Keyboard,0,92)||1===t.pollInput(l.Keyboard,0,93)),a=i&&1===t.pollInput(l.Keyboard,0,16);e.altKey=s,e.ctrlKey=r,e.metaKey=n,e.shiftKey=a}static _CreateEvent(e){let t={};return t.preventDefault=()=>{},t.target=e,t}}class O{constructor(e,t,i){this._nativeInput=_native.DeviceInputSystem?new _native.DeviceInputSystem(e,t,(e,t,s,r)=>{let n=M.CreateDeviceEvent(e,t,s,r,this);i(e,t,n)}):this._createDummyNativeInput()}pollInput(e,t,i){return this._nativeInput.pollInput(e,t,i)}isDeviceAvailable(e){return e===l.Mouse||e===l.Touch}dispose(){this._nativeInput.dispose()}_createDummyNativeInput(){return{pollInput:()=>0,isDeviceAvailable:()=>!1,dispose:()=>{}}}}var T=e.i(75865),S=e.i(29711);let R=Object.keys(d).length/2;class E{constructor(e,t,i,s){this._inputs=[],this._keyboardActive=!1,this._pointerActive=!1,this._usingSafari=S.Tools.IsSafari(),this._usingMacOs=(0,T.IsNavigatorAvailable)()&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform),this._keyboardDownEvent=e=>{},this._keyboardUpEvent=e=>{},this._keyboardBlurEvent=e=>{},this._pointerMoveEvent=e=>{},this._pointerDownEvent=e=>{},this._pointerUpEvent=e=>{},this._pointerCancelEvent=e=>{},this._pointerCancelTouch=e=>{},this._pointerLeaveEvent=e=>{},this._pointerWheelEvent=e=>{},this._pointerBlurEvent=e=>{},this._pointerMacOsChromeOutEvent=e=>{},this._eventsAttached=!1,this._mouseId=-1,this._isUsingFirefox=(0,T.IsNavigatorAvailable)()&&navigator.userAgent&&-1!==navigator.userAgent.indexOf("Firefox"),this._isUsingChromium=(0,T.IsNavigatorAvailable)()&&navigator.userAgent&&-1!==navigator.userAgent.indexOf("Chrome"),this._maxTouchPoints=0,this._pointerInputClearObserver=null,this._gamepadConnectedEvent=e=>{},this._gamepadDisconnectedEvent=e=>{},this._eventPrefix=S.Tools.GetPointerPrefix(e),this._engine=e,this._onDeviceConnected=t,this._onDeviceDisconnected=i,this._onInputChanged=s,this._mouseId=+!this._isUsingFirefox,this._enableEvents(),this._usingMacOs&&(this._metaKeys=[]),this._engine._onEngineViewChanged||(this._engine._onEngineViewChanged=()=>{this._enableEvents()})}pollInput(e,t,i){let s=this._inputs[e][t];if(!s)throw`Unable to find device ${l[e]}`;e>=l.DualShock&&e<=l.DualSense&&this._updateDevice(e,t,i);let r=s[i];if(void 0===r)throw`Unable to find input ${i} for device ${l[e]} in slot ${t}`;return i===d.Move&&S.Tools.Warn("Unable to provide information for PointerInput.Move. Try using PointerInput.Horizontal or PointerInput.Vertical for move data."),r}isDeviceAvailable(e){return void 0!==this._inputs[e]}dispose(){this._onDeviceConnected=()=>{},this._onDeviceDisconnected=()=>{},this._onInputChanged=()=>{},delete this._engine._onEngineViewChanged,this._elementToAttachTo&&this._disableEvents()}_enableEvents(){let e=this?._engine.getInputElement();if(e&&(!this._eventsAttached||this._elementToAttachTo!==e)){if(this._disableEvents(),this._inputs){for(let e of this._inputs)if(e)for(let t in e){let i=e[+t];if(i)for(let e=0;e<i.length;e++)i[e]=0}}this._elementToAttachTo=e,this._elementToAttachTo.tabIndex=-1!==this._elementToAttachTo.tabIndex?this._elementToAttachTo.tabIndex:this._engine.canvasTabIndex,this._handleKeyActions(),this._handlePointerActions(),this._handleGamepadActions(),this._eventsAttached=!0,this._checkForConnectedDevices()}}_disableEvents(){this._elementToAttachTo&&(this._elementToAttachTo.removeEventListener("blur",this._keyboardBlurEvent),this._elementToAttachTo.removeEventListener("blur",this._pointerBlurEvent),this._elementToAttachTo.removeEventListener("keydown",this._keyboardDownEvent),this._elementToAttachTo.removeEventListener("keyup",this._keyboardUpEvent),this._elementToAttachTo.removeEventListener(this._eventPrefix+"move",this._pointerMoveEvent),this._elementToAttachTo.removeEventListener(this._eventPrefix+"down",this._pointerDownEvent),this._elementToAttachTo.removeEventListener(this._eventPrefix+"up",this._pointerUpEvent),this._elementToAttachTo.removeEventListener(this._eventPrefix+"cancel",this._pointerCancelEvent),this._elementToAttachTo.removeEventListener(this._eventPrefix+"leave",this._pointerLeaveEvent),this._elementToAttachTo.removeEventListener(this._wheelEventName,this._pointerWheelEvent),this._usingMacOs&&this._isUsingChromium&&this._elementToAttachTo.removeEventListener("lostpointercapture",this._pointerMacOsChromeOutEvent),window.removeEventListener("gamepadconnected",this._gamepadConnectedEvent),window.removeEventListener("gamepaddisconnected",this._gamepadDisconnectedEvent)),this._pointerInputClearObserver&&this._engine.onEndFrameObservable.remove(this._pointerInputClearObserver),this._eventsAttached=!1}_checkForConnectedDevices(){if(navigator.getGamepads)for(let e of navigator.getGamepads())e&&this._addGamePad(e);"function"==typeof matchMedia&&matchMedia("(pointer:fine)").matches&&this._addPointerDevice(l.Mouse,0,0,0)}_addGamePad(e){let t=this._getGamepadDeviceType(e.id),i=e.index;this._gamepads=this._gamepads||Array(e.index+1),this._registerDevice(t,i,e.buttons.length+e.axes.length),this._gamepads[i]=t}_addPointerDevice(e,t,i,s){this._pointerActive||(this._pointerActive=!0),this._registerDevice(e,t,R);let r=this._inputs[e][t];r[0]=i,r[1]=s}_registerDevice(e,t,i){if(void 0===t)throw`Unable to register device ${l[e]} to undefined slot.`;if(this._inputs[e]||(this._inputs[e]={}),!this._inputs[e][t]){let s=Array(i);s.fill(0),this._inputs[e][t]=s,this._onDeviceConnected(e,t)}}_unregisterDevice(e,t){this._inputs[e][t]&&(delete this._inputs[e][t],this._onDeviceDisconnected(e,t))}_handleKeyActions(){this._keyboardDownEvent=e=>{this._keyboardActive||(this._keyboardActive=!0,this._registerDevice(l.Keyboard,0,255));let t=this._inputs[l.Keyboard][0];t&&(t[e.keyCode]=1,e.inputIndex=e.keyCode,this._usingMacOs&&e.metaKey&&"Meta"!==e.key&&!this._metaKeys.includes(e.keyCode)&&this._metaKeys.push(e.keyCode),this._onInputChanged(l.Keyboard,0,e))},this._keyboardUpEvent=e=>{this._keyboardActive||(this._keyboardActive=!0,this._registerDevice(l.Keyboard,0,255));let t=this._inputs[l.Keyboard][0];if(t){if(t[e.keyCode]=0,e.inputIndex=e.keyCode,this._usingMacOs&&"Meta"===e.key&&this._metaKeys.length>0){for(let e of this._metaKeys){let i=M.CreateDeviceEvent(l.Keyboard,0,e,0,this,this._elementToAttachTo);t[e]=0,this._onInputChanged(l.Keyboard,0,i)}this._metaKeys.splice(0,this._metaKeys.length)}this._onInputChanged(l.Keyboard,0,e)}},this._keyboardBlurEvent=()=>{if(this._keyboardActive){let e=this._inputs[l.Keyboard][0];for(let t=0;t<e.length;t++)if(0!==e[t]){e[t]=0;let i=M.CreateDeviceEvent(l.Keyboard,0,t,0,this,this._elementToAttachTo);this._onInputChanged(l.Keyboard,0,i)}this._usingMacOs&&this._metaKeys.splice(0,this._metaKeys.length)}},this._elementToAttachTo.addEventListener("keydown",this._keyboardDownEvent),this._elementToAttachTo.addEventListener("keyup",this._keyboardUpEvent),this._elementToAttachTo.addEventListener("blur",this._keyboardBlurEvent)}_handlePointerActions(){this._maxTouchPoints=(0,T.IsNavigatorAvailable)()&&navigator.maxTouchPoints||2,this._activeTouchIds||(this._activeTouchIds=Array(this._maxTouchPoints));for(let e=0;e<this._maxTouchPoints;e++)this._activeTouchIds[e]=-1;this._pointerMoveEvent=e=>{let t=this._getPointerType(e),i=t===l.Mouse?0:this._activeTouchIds.indexOf(e.pointerId);if(t===l.Touch&&-1===i){let s=this._activeTouchIds.indexOf(-1);if(!(s>=0))return void S.Tools.Warn(`Max number of touches exceeded. Ignoring touches in excess of ${this._maxTouchPoints}`);i=s,this._activeTouchIds[s]=e.pointerId,this._onDeviceConnected(t,i)}this._inputs[t]||(this._inputs[t]={}),this._inputs[t][i]||this._addPointerDevice(t,i,e.clientX,e.clientY);let s=this._inputs[t][i];s&&(e.inputIndex=d.Move,s[d.Horizontal]=e.clientX,s[d.Vertical]=e.clientY,t===l.Touch&&0===s[d.LeftClick]&&(s[d.LeftClick]=1),void 0===e.pointerId&&(e.pointerId=this._mouseId),this._onInputChanged(t,i,e),this._usingSafari||-1===e.button||(e.inputIndex=e.button+2,s[e.button+2]=+!s[e.button+2],this._onInputChanged(t,i,e)))},this._pointerDownEvent=e=>{let t=this._getPointerType(e),i=t===l.Mouse?0:e.pointerId;if(t===l.Touch){let t=this._activeTouchIds.indexOf(e.pointerId);if(-1===t&&(t=this._activeTouchIds.indexOf(-1)),!(t>=0))return void S.Tools.Warn(`Max number of touches exceeded. Ignoring touches in excess of ${this._maxTouchPoints}`);i=t,this._activeTouchIds[t]=e.pointerId}this._inputs[t]||(this._inputs[t]={}),this._inputs[t][i]?t===l.Touch&&this._onDeviceConnected(t,i):this._addPointerDevice(t,i,e.clientX,e.clientY);let s=this._inputs[t][i];if(s){let r=s[d.Horizontal],n=s[d.Vertical];if(t===l.Mouse){if(void 0===e.pointerId&&(e.pointerId=this._mouseId),!document.pointerLockElement)try{this._elementToAttachTo.setPointerCapture(this._mouseId)}catch(e){}}else if(e.pointerId&&!document.pointerLockElement)try{this._elementToAttachTo.setPointerCapture(e.pointerId)}catch(e){}s[d.Horizontal]=e.clientX,s[d.Vertical]=e.clientY,s[e.button+2]=1,e.inputIndex=e.button+2,this._onInputChanged(t,i,e),(r!==e.clientX||n!==e.clientY)&&(e.inputIndex=d.Move,this._onInputChanged(t,i,e))}},this._pointerUpEvent=e=>{let t=this._getPointerType(e),i=t===l.Mouse?0:this._activeTouchIds.indexOf(e.pointerId);if(t===l.Touch)if(-1===i)return;else this._activeTouchIds[i]=-1;let s=this._inputs[t]?.[i],r=e.button,n=s&&0!==s[r+2];if(!n&&this._isUsingFirefox&&this._usingMacOs&&s&&(n=0!==s[(r=2*(2!==r))+2]),n){let n=s[d.Horizontal],a=s[d.Vertical];s[d.Horizontal]=e.clientX,s[d.Vertical]=e.clientY,s[r+2]=0,void 0===e.pointerId&&(e.pointerId=this._mouseId),(n!==e.clientX||a!==e.clientY)&&(e.inputIndex=d.Move,this._onInputChanged(t,i,e)),e.inputIndex=r+2,t===l.Mouse&&this._mouseId>=0&&this._elementToAttachTo.hasPointerCapture?.(this._mouseId)?this._elementToAttachTo.releasePointerCapture(this._mouseId):e.pointerId&&this._elementToAttachTo.hasPointerCapture?.(e.pointerId)&&this._elementToAttachTo.releasePointerCapture(e.pointerId),this._onInputChanged(t,i,e),t===l.Touch&&this._onDeviceDisconnected(t,i)}},this._pointerCancelTouch=e=>{let t=this._activeTouchIds.indexOf(e);if(-1===t)return;this._elementToAttachTo.hasPointerCapture?.(e)&&this._elementToAttachTo.releasePointerCapture(e),this._inputs[l.Touch][t][d.LeftClick]=0;let i=M.CreateDeviceEvent(l.Touch,t,d.LeftClick,0,this,this._elementToAttachTo,e);this._onInputChanged(l.Touch,t,i),this._activeTouchIds[t]=-1,this._onDeviceDisconnected(l.Touch,t)},this._pointerCancelEvent=e=>{if("mouse"===e.pointerType){let e=this._inputs[l.Mouse][0];this._mouseId>=0&&this._elementToAttachTo.hasPointerCapture?.(this._mouseId)&&this._elementToAttachTo.releasePointerCapture(this._mouseId);for(let t=d.LeftClick;t<=d.BrowserForward;t++)if(1===e[t]){e[t]=0;let i=M.CreateDeviceEvent(l.Mouse,0,t,0,this,this._elementToAttachTo);this._onInputChanged(l.Mouse,0,i)}}else this._pointerCancelTouch(e.pointerId)},this._pointerLeaveEvent=e=>{"pen"===e.pointerType&&this._pointerCancelTouch(e.pointerId)},this._wheelEventName="onwheel"in document.createElement("div")?"wheel":void 0!==document.onmousewheel?"mousewheel":"DOMMouseScroll";let e=!1,t=function(){};try{let i=Object.defineProperty({},"passive",{get:function(){e=!0}});this._elementToAttachTo.addEventListener("test",t,i),this._elementToAttachTo.removeEventListener("test",t,i)}catch(e){}this._pointerBlurEvent=()=>{if(this.isDeviceAvailable(l.Mouse)){let e=this._inputs[l.Mouse][0];this._mouseId>=0&&this._elementToAttachTo.hasPointerCapture?.(this._mouseId)&&this._elementToAttachTo.releasePointerCapture(this._mouseId);for(let t=d.LeftClick;t<=d.BrowserForward;t++)if(1===e[t]){e[t]=0;let i=M.CreateDeviceEvent(l.Mouse,0,t,0,this,this._elementToAttachTo);this._onInputChanged(l.Mouse,0,i)}}if(this.isDeviceAvailable(l.Touch)){let e=this._inputs[l.Touch];for(let t=0;t<this._activeTouchIds.length;t++){let i=this._activeTouchIds[t];if(this._elementToAttachTo.hasPointerCapture?.(i)&&this._elementToAttachTo.releasePointerCapture(i),-1!==i&&e[t]?.[d.LeftClick]===1){e[t][d.LeftClick]=0;let s=M.CreateDeviceEvent(l.Touch,t,d.LeftClick,0,this,this._elementToAttachTo,i);this._onInputChanged(l.Touch,t,s),this._activeTouchIds[t]=-1,this._onDeviceDisconnected(l.Touch,t)}}}},this._pointerWheelEvent=e=>{let t=l.Mouse;this._inputs[t]||(this._inputs[t]=[]),this._inputs[t][0]||(this._pointerActive=!0,this._registerDevice(t,0,R));let i=this._inputs[t][0];i&&(i[d.MouseWheelX]=e.deltaX||0,i[d.MouseWheelY]=e.deltaY||e.wheelDelta||0,i[d.MouseWheelZ]=e.deltaZ||0,void 0===e.pointerId&&(e.pointerId=this._mouseId),0!==i[d.MouseWheelX]&&(e.inputIndex=d.MouseWheelX,this._onInputChanged(t,0,e)),0!==i[d.MouseWheelY]&&(e.inputIndex=d.MouseWheelY,this._onInputChanged(t,0,e)),0!==i[d.MouseWheelZ]&&(e.inputIndex=d.MouseWheelZ,this._onInputChanged(t,0,e)))},this._usingMacOs&&this._isUsingChromium&&(this._pointerMacOsChromeOutEvent=e=>{e.buttons>1&&this._pointerCancelEvent(e)},this._elementToAttachTo.addEventListener("lostpointercapture",this._pointerMacOsChromeOutEvent)),this._elementToAttachTo.addEventListener(this._eventPrefix+"move",this._pointerMoveEvent),this._elementToAttachTo.addEventListener(this._eventPrefix+"down",this._pointerDownEvent),this._elementToAttachTo.addEventListener(this._eventPrefix+"up",this._pointerUpEvent),this._elementToAttachTo.addEventListener(this._eventPrefix+"cancel",this._pointerCancelEvent),this._elementToAttachTo.addEventListener(this._eventPrefix+"leave",this._pointerLeaveEvent),this._elementToAttachTo.addEventListener("blur",this._pointerBlurEvent),this._elementToAttachTo.addEventListener(this._wheelEventName,this._pointerWheelEvent,!!e&&{passive:!1}),this._pointerInputClearObserver=this._engine.onEndFrameObservable.add(()=>{if(this.isDeviceAvailable(l.Mouse)){let e=this._inputs[l.Mouse][0];e[d.MouseWheelX]=0,e[d.MouseWheelY]=0,e[d.MouseWheelZ]=0}})}_handleGamepadActions(){this._gamepadConnectedEvent=e=>{this._addGamePad(e.gamepad)},this._gamepadDisconnectedEvent=e=>{if(this._gamepads){let t=this._getGamepadDeviceType(e.gamepad.id),i=e.gamepad.index;this._unregisterDevice(t,i),delete this._gamepads[i]}},window.addEventListener("gamepadconnected",this._gamepadConnectedEvent),window.addEventListener("gamepaddisconnected",this._gamepadDisconnectedEvent)}_updateDevice(e,t,i){let s=navigator.getGamepads()[t];if(s&&e===this._gamepads[t]){let r=this._inputs[e][t];i>=s.buttons.length?r[i]=s.axes[i-s.buttons.length].valueOf():r[i]=s.buttons[i].value}}_getGamepadDeviceType(e){return -1!==e.indexOf("054c")?-1!==e.indexOf("0ce6")?l.DualSense:l.DualShock:-1!==e.indexOf("Xbox One")||-1!==e.search("Xbox 360")||-1!==e.search("xinput")||-1!==e.indexOf("045e")&&-1===e.indexOf("Surface Dock")?l.Xbox:-1!==e.indexOf("057e")?l.Switch:l.Generic}_getPointerType(e){let t=l.Mouse;return("touch"===e.pointerType||"pen"===e.pointerType||e.touches)&&(t=l.Touch),t}}class I{constructor(e,t,i=0){this.deviceType=t,this.deviceSlot=i,this.onInputChangedObservable=new P.Observable,this._deviceInputSystem=e}getInput(e){return this._deviceInputSystem.pollInput(this.deviceType,this.deviceSlot,e)}}class k{constructor(e){this._registeredManagers=[],this._refCount=0,this.registerManager=e=>{for(let t=0;t<this._devices.length;t++){let i=this._devices[t];for(let s in i){let i=+s;e._addDevice(new I(this._deviceInputSystem,t,i))}}this._registeredManagers.push(e)},this.unregisterManager=e=>{let t=this._registeredManagers.indexOf(e);t>-1&&this._registeredManagers.splice(t,1)};const t=Object.keys(l).length/2;this._devices=Array(t);const i=(e,t)=>{for(let i of(this._devices[e]||(this._devices[e]=[]),this._devices[e][t]||(this._devices[e][t]=t),this._registeredManagers)){let s=new I(this._deviceInputSystem,e,t);i._addDevice(s)}},s=(e,t)=>{for(let i of(this._devices[e]?.[t]&&delete this._devices[e][t],this._registeredManagers))i._removeDevice(e,t)},r=(e,t,i)=>{if(i)for(let s of this._registeredManagers)s._onInputChanged(e,t,i)};"u">typeof _native?this._deviceInputSystem=new O(i,s,r):this._deviceInputSystem=new E(e,i,s,r)}dispose(){this._deviceInputSystem.dispose()}}class D{getDeviceSource(e,t){if(void 0===t){if(void 0===this._firstDevice[e])return null;t=this._firstDevice[e]}return this._devices[e]&&void 0!==this._devices[e][t]?this._devices[e][t]:null}getDeviceSources(e){return this._devices[e]?this._devices[e].filter(e=>!!e):[]}constructor(e){const t=Object.keys(l).length/2;this._devices=Array(t),this._firstDevice=Array(t),this._engine=e,this._engine._deviceSourceManager||(this._engine._deviceSourceManager=new k(e)),this._engine._deviceSourceManager._refCount++,this.onDeviceConnectedObservable=new P.Observable(e=>{for(let t of this._devices)if(t)for(let i of t)i&&this.onDeviceConnectedObservable.notifyObserver(e,i)}),this.onDeviceDisconnectedObservable=new P.Observable,this._engine._deviceSourceManager.registerManager(this),this._onDisposeObserver=e.onDisposeObservable.add(()=>{this.dispose()})}dispose(){this.onDeviceConnectedObservable.clear(),this.onDeviceDisconnectedObservable.clear(),this._engine._deviceSourceManager&&(this._engine._deviceSourceManager.unregisterManager(this),--this._engine._deviceSourceManager._refCount<1&&(this._engine._deviceSourceManager.dispose(),delete this._engine._deviceSourceManager)),this._engine.onDisposeObservable.remove(this._onDisposeObserver)}_addDevice(e){this._devices[e.deviceType]||(this._devices[e.deviceType]=[]),this._devices[e.deviceType][e.deviceSlot]||(this._devices[e.deviceType][e.deviceSlot]=e,this._updateFirstDevices(e.deviceType)),this.onDeviceConnectedObservable.notifyObservers(e)}_removeDevice(e,t){let i=this._devices[e]?.[t];this.onDeviceDisconnectedObservable.notifyObservers(i),this._devices[e]?.[t]&&delete this._devices[e][t],this._updateFirstDevices(e)}_onInputChanged(e,t,i){this._devices[e]?.[t]?.onInputChangedObservable.notifyObservers(i)}_updateFirstDevices(e){switch(e){case l.Keyboard:case l.Mouse:this._firstDevice[e]=0;break;case l.Touch:case l.DualSense:case l.DualShock:case l.Xbox:case l.Switch:case l.Generic:{delete this._firstDevice[e];let t=this._devices[e];if(t){for(let i=0;i<t.length;i++)if(t[i]){this._firstDevice[e]=i;break}}}}}}var A=e.i(47867);class w{}w._IsPickingAvailable=!1,e.s(["_ImportHelper",0,w],49369);class x{constructor(){this._singleClick=!1,this._doubleClick=!1,this._hasSwiped=!1,this._ignore=!1}get singleClick(){return this._singleClick}get doubleClick(){return this._doubleClick}get hasSwiped(){return this._hasSwiped}get ignore(){return this._ignore}set singleClick(e){this._singleClick=e}set doubleClick(e){this._doubleClick=e}set hasSwiped(e){this._hasSwiped=e}set ignore(e){this._ignore=e}}class B{constructor(e){if(this._alreadyAttached=!1,this._meshPickProceed=!1,this._currentPickResult=null,this._previousPickResult=null,this._activePointerIds=[],this._activePointerIdsCount=0,this._doubleClickOccured=!1,this._isSwiping=!1,this._swipeButtonPressed=-1,this._skipPointerTap=!1,this._isMultiTouchGesture=!1,this._pointerX=0,this._pointerY=0,this._startingPointerPosition=new b.Vector2(0,0),this._previousStartingPointerPosition=new b.Vector2(0,0),this._startingPointerTime=0,this._previousStartingPointerTime=0,this._pointerCaptures={},this._meshUnderPointerId={},this._movePointerInfo=null,this._cameraObserverCount=0,this._delayedClicks=[null,null,null,null,null],this._deviceSourceManager=null,this._scene=e||A.EngineStore.LastCreatedScene,!this._scene)return}get meshUnderPointer(){return this._movePointerInfo&&(this._movePointerInfo._generatePickInfo(),this._movePointerInfo=null),this._pointerOverMesh}getMeshUnderPointerByPointerId(e){return this._meshUnderPointerId[e]||null}get unTranslatedPointer(){return new b.Vector2(this._unTranslatedPointerX,this._unTranslatedPointerY)}get pointerX(){return this._pointerX}set pointerX(e){this._pointerX=e}get pointerY(){return this._pointerY}set pointerY(e){this._pointerY=e}_updatePointerPosition(e){let t=this._scene.getEngine().getInputElementClientRect();t&&(this._pointerX=e.clientX-t.left,this._pointerY=e.clientY-t.top,this._unTranslatedPointerX=this._pointerX,this._unTranslatedPointerY=this._pointerY)}_processPointerMove(e,t){let i,s=this._scene,r=s.getEngine(),n=r.getInputElement();for(let i of(n&&(n.tabIndex=r.canvasTabIndex,s.doNotHandleCursors||(n.style.cursor=s.defaultCursor)),this._setCursorAndPointerOverMesh(e,t,s),s._pointerMoveStage)){e=e||this._pickMove(t);let s=!!e?.pickedMesh;e=i.action(this._unTranslatedPointerX,this._unTranslatedPointerY,e,s,n)}let a=t.inputIndex>=d.MouseWheelX&&t.inputIndex<=d.MouseWheelZ?v.PointerEventTypes.POINTERWHEEL:v.PointerEventTypes.POINTERMOVE;s.onPointerMove&&(e=e||this._pickMove(t),s.onPointerMove(t,e,a)),e?(i=new v.PointerInfo(a,t,e),this._setRayOnPointerInfo(e,t)):(i=new v.PointerInfo(a,t,null,this),this._movePointerInfo=i),s.onPointerObservable.hasObservers()&&s.onPointerObservable.notifyObservers(i,a)}_setRayOnPointerInfo(e,t){let i=this._scene;e&&w._IsPickingAvailable&&!e.ray&&(e.ray=i.createPickingRay(t.offsetX,t.offsetY,b.Matrix.Identity(),i.activeCamera))}_addCameraPointerObserver(e,t){return this._cameraObserverCount++,this._scene.onPointerObservable.add(e,t)}_removeCameraPointerObserver(e){return this._cameraObserverCount--,this._scene.onPointerObservable.remove(e)}_checkForPicking(){return!!(this._scene.onPointerObservable.observers.length>this._cameraObserverCount||this._scene.onPointerPick)}_checkPrePointerObservable(e,t,i){let s=this._scene,r=new v.PointerInfoPre(i,t,this._unTranslatedPointerX,this._unTranslatedPointerY);return e&&(r.originalPickingInfo=e,r.ray=e.ray,"xr-near"===t.pointerType&&e.originMesh&&(r.nearInteractionPickingInfo=e)),s.onPrePointerObservable.notifyObservers(r,i),!!r.skipOnPointerObservable}_pickMove(e){let t=this._scene,i=t.pick(this._unTranslatedPointerX,this._unTranslatedPointerY,t.pointerMovePredicate,t.pointerMoveFastCheck,t.cameraToUseForPointers,t.pointerMoveTrianglePredicate);return this._setCursorAndPointerOverMesh(i,e,t),i}_setCursorAndPointerOverMesh(e,t,i){let s=i.getEngine().getInputElement();if(e?.pickedMesh){if(this.setPointerOverMesh(e.pickedMesh,t.pointerId,e,t),!i.doNotHandleCursors&&s&&this._pointerOverMesh){let e=this._pointerOverMesh._getActionManagerForTrigger();e&&e.hasPointerTriggers&&(s.style.cursor=e.hoverCursor||i.hoverCursor)}}else this.setPointerOverMesh(null,t.pointerId,e,t)}simulatePointerMove(e,t){let i=new PointerEvent("pointermove",t);i.inputIndex=d.Move,this._checkPrePointerObservable(e,i,v.PointerEventTypes.POINTERMOVE)||this._processPointerMove(e,i)}simulatePointerDown(e,t){let i=new PointerEvent("pointerdown",t);i.inputIndex=i.button+2,this._checkPrePointerObservable(e,i,v.PointerEventTypes.POINTERDOWN)||this._processPointerDown(e,i)}_processPointerDown(e,i){let s,r=this._scene;if(e?.pickedMesh){this._pickedDownMesh=e.pickedMesh;let s=e.pickedMesh._getActionManagerForTrigger();if(s){if(s.hasPickTriggers)switch(s.processTrigger(5,new t(e.pickedMesh,r.pointerX,r.pointerY,e.pickedMesh,i,e)),i.button){case 0:s.processTrigger(2,new t(e.pickedMesh,r.pointerX,r.pointerY,e.pickedMesh,i,e));break;case 1:s.processTrigger(4,new t(e.pickedMesh,r.pointerX,r.pointerY,e.pickedMesh,i,e));break;case 2:s.processTrigger(3,new t(e.pickedMesh,r.pointerX,r.pointerY,e.pickedMesh,i,e))}s.hasSpecificTrigger(8)&&window.setTimeout(()=>{let e=r.pick(this._unTranslatedPointerX,this._unTranslatedPointerY,e=>e.isPickable&&e.isVisible&&e.isReady()&&e.actionManager&&e.actionManager.hasSpecificTrigger(8)&&e===this._pickedDownMesh,!1,r.cameraToUseForPointers);e?.pickedMesh&&s&&0!==this._activePointerIdsCount&&Date.now()-this._startingPointerTime>B.LongPressDelay&&!this._isPointerSwiping()&&(this._startingPointerTime=0,s.processTrigger(8,t.CreateNew(e.pickedMesh,i)))},B.LongPressDelay)}}else for(let t of r._pointerDownStage)e=t.action(this._unTranslatedPointerX,this._unTranslatedPointerY,e,i,!1);let n=v.PointerEventTypes.POINTERDOWN;e?(r.onPointerDown&&r.onPointerDown(i,e,n),s=new v.PointerInfo(n,i,e),this._setRayOnPointerInfo(e,i)):s=new v.PointerInfo(n,i,null,this),r.onPointerObservable.hasObservers()&&r.onPointerObservable.notifyObservers(s,n)}_isPointerSwiping(){return this._isSwiping}simulatePointerUp(e,t,i){let s=new PointerEvent("pointerup",t);s.inputIndex=d.Move;let r=new x;i?r.doubleClick=!0:r.singleClick=!0,this._checkPrePointerObservable(e,s,v.PointerEventTypes.POINTERUP)||this._processPointerUp(e,s,r)}_processPointerUp(e,i,s){let r=this._scene;if(e?.pickedMesh){if(this._pickedUpMesh=e.pickedMesh,this._pickedDownMesh===this._pickedUpMesh&&(r.onPointerPick&&r.onPointerPick(i,e),s.singleClick&&!s.ignore&&r.onPointerObservable.observers.length>this._cameraObserverCount)){let t=v.PointerEventTypes.POINTERPICK,s=new v.PointerInfo(t,i,e);this._setRayOnPointerInfo(e,i),r.onPointerObservable.notifyObservers(s,t)}let n=e.pickedMesh._getActionManagerForTrigger();if(n&&!s.ignore){n.processTrigger(7,t.CreateNew(e.pickedMesh,i,e)),!s.hasSwiped&&s.singleClick&&n.processTrigger(1,t.CreateNew(e.pickedMesh,i,e));let r=e.pickedMesh._getActionManagerForTrigger(6);s.doubleClick&&r&&r.processTrigger(6,t.CreateNew(e.pickedMesh,i,e))}}else if(!s.ignore)for(let t of r._pointerUpStage)e=t.action(this._unTranslatedPointerX,this._unTranslatedPointerY,e,i,s.doubleClick);if(this._pickedDownMesh&&this._pickedDownMesh!==this._pickedUpMesh){let e=this._pickedDownMesh._getActionManagerForTrigger(16);e&&e.processTrigger(16,t.CreateNew(this._pickedDownMesh,i))}if(!s.ignore){let t=new v.PointerInfo(v.PointerEventTypes.POINTERUP,i,e);if(this._setRayOnPointerInfo(e,i),r.onPointerObservable.notifyObservers(t,v.PointerEventTypes.POINTERUP),r.onPointerUp&&r.onPointerUp(i,e,v.PointerEventTypes.POINTERUP),!s.hasSwiped&&!this._skipPointerTap&&!this._isMultiTouchGesture){let t=0;if(s.singleClick?t=v.PointerEventTypes.POINTERTAP:s.doubleClick&&(t=v.PointerEventTypes.POINTERDOUBLETAP),t){let s=new v.PointerInfo(t,i,e);r.onPointerObservable.hasObservers()&&r.onPointerObservable.hasSpecificMask(t)&&r.onPointerObservable.notifyObservers(s,t)}}}}isPointerCaptured(e=0){return this._pointerCaptures[e]}attachControl(e=!0,i=!0,s=!0,r=null){let n=this._scene,a=n.getEngine();r||(r=a.getInputElement()),this._alreadyAttached&&this.detachControl(),r&&(this._alreadyAttachedTo=r),this._deviceSourceManager=new D(a),this._initActionManager=e=>{if(!this._meshPickProceed){let t=!n.skipPointerUpPicking&&(0!==n._registeredActions||this._checkForPicking()||n.onPointerUp)?n.pick(this._unTranslatedPointerX,this._unTranslatedPointerY,n.pointerUpPredicate,n.pointerUpFastCheck,n.cameraToUseForPointers,n.pointerUpTrianglePredicate):null;this._currentPickResult=t,t&&(e=t.hit&&t.pickedMesh?t.pickedMesh._getActionManagerForTrigger():null),this._meshPickProceed=!0}return e},this._delayedSimpleClick=(e,t,i)=>{if((Date.now()-this._previousStartingPointerTime>B.DoubleClickDelay&&!this._doubleClickOccured||e!==this._previousButtonPressed)&&(this._doubleClickOccured=!1,t.singleClick=!0,t.ignore=!1,this._delayedClicks[e])){let t=this._delayedClicks[e].evt,i=v.PointerEventTypes.POINTERTAP,s=new v.PointerInfo(i,t,this._currentPickResult);n.onPointerObservable.hasObservers()&&n.onPointerObservable.hasSpecificMask(i)&&n.onPointerObservable.notifyObservers(s,i),this._delayedClicks[e]=null}},this._initClickEvent=(e,t,i,s)=>{let r=new x;this._currentPickResult=null;let n=null,a=e.hasSpecificMask(v.PointerEventTypes.POINTERPICK)||t.hasSpecificMask(v.PointerEventTypes.POINTERPICK)||e.hasSpecificMask(v.PointerEventTypes.POINTERTAP)||t.hasSpecificMask(v.PointerEventTypes.POINTERTAP)||e.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP)||t.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP);!a&&m&&(n=this._initActionManager(n,r))&&(a=n.hasPickTriggers);let o=!1;if(a=a&&!this._isMultiTouchGesture){let a=i.button;if(r.hasSwiped=this._isPointerSwiping(),!r.hasSwiped){let h=!B.ExclusiveDoubleClickMode;if(!h&&(h=!e.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP)&&!t.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP))&&!m.HasSpecificTrigger(6)&&(n=this._initActionManager(n,r))&&(h=!n.hasSpecificTrigger(6)),h)(Date.now()-this._previousStartingPointerTime>B.DoubleClickDelay||a!==this._previousButtonPressed)&&(r.singleClick=!0,s(r,this._currentPickResult),o=!0);else{let e={evt:i,clickInfo:r,timeoutId:window.setTimeout(this._delayedSimpleClick.bind(this,a,r,s),B.DoubleClickDelay)};this._delayedClicks[a]=e}let l=e.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP)||t.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP);!l&&m.HasSpecificTrigger(6)&&(n=this._initActionManager(n,r))&&(l=n.hasSpecificTrigger(6)),l&&(a===this._previousButtonPressed&&Date.now()-this._previousStartingPointerTime<B.DoubleClickDelay&&!this._doubleClickOccured?(r.hasSwiped||this._isPointerSwiping()?(this._doubleClickOccured=!1,this._previousStartingPointerTime=this._startingPointerTime,this._previousStartingPointerPosition.x=this._startingPointerPosition.x,this._previousStartingPointerPosition.y=this._startingPointerPosition.y,this._previousButtonPressed=a,B.ExclusiveDoubleClickMode?(this._delayedClicks[a]&&(clearTimeout(this._delayedClicks[a]?.timeoutId),this._delayedClicks[a]=null),s(r,this._previousPickResult)):s(r,this._currentPickResult)):(this._previousStartingPointerTime=0,this._doubleClickOccured=!0,r.doubleClick=!0,r.ignore=!1,B.ExclusiveDoubleClickMode&&this._delayedClicks[a]&&(clearTimeout(this._delayedClicks[a]?.timeoutId),this._delayedClicks[a]=null),s(r,this._currentPickResult)),o=!0):(this._doubleClickOccured=!1,this._previousStartingPointerTime=this._startingPointerTime,this._previousStartingPointerPosition.x=this._startingPointerPosition.x,this._previousStartingPointerPosition.y=this._startingPointerPosition.y,this._previousButtonPressed=a))}}o||s(r,this._currentPickResult)},this._onPointerMove=e=>{if(this._updatePointerPosition(e),this._isSwiping||-1===this._swipeButtonPressed||(this._isSwiping=Math.abs(this._startingPointerPosition.x-this._pointerX)>B.DragMovementThreshold||Math.abs(this._startingPointerPosition.y-this._pointerY)>B.DragMovementThreshold),a.isPointerLock&&a._verifyPointerLock(),this._checkPrePointerObservable(null,e,e.inputIndex>=d.MouseWheelX&&e.inputIndex<=d.MouseWheelZ?v.PointerEventTypes.POINTERWHEEL:v.PointerEventTypes.POINTERMOVE)||!n.cameraToUseForPointers&&!n.activeCamera)return;if(n.skipPointerMovePicking)return void this._processPointerMove(new f.PickingInfo,e);n.pointerMovePredicate||(n.pointerMovePredicate=e=>e.isPickable&&e.isVisible&&e.isReady()&&e.isEnabled()&&(e.enablePointerMoveEvents||n.constantlyUpdateMeshUnderPointer||null!==e._getActionManagerForTrigger())&&(!n.cameraToUseForPointers||(n.cameraToUseForPointers.layerMask&e.layerMask)!=0));let t=n._registeredActions>0||n.constantlyUpdateMeshUnderPointer?this._pickMove(e):null;this._processPointerMove(t,e)},this._onPointerDown=e=>{let t,i=this._activePointerIds.indexOf(-1);if(-1===i?this._activePointerIds.push(e.pointerId):this._activePointerIds[i]=e.pointerId,this._activePointerIdsCount++,this._pickedDownMesh=null,this._meshPickProceed=!1,B.ExclusiveDoubleClickMode){for(let t=0;t<this._delayedClicks.length;t++)if(this._delayedClicks[t])if(e.button===t)clearTimeout(this._delayedClicks[t]?.timeoutId);else{let e=this._delayedClicks[t].clickInfo;this._doubleClickOccured=!1,e.singleClick=!0,e.ignore=!1;let i=this._delayedClicks[t].evt,s=v.PointerEventTypes.POINTERTAP,r=new v.PointerInfo(s,i,this._currentPickResult);n.onPointerObservable.hasObservers()&&n.onPointerObservable.hasSpecificMask(s)&&n.onPointerObservable.notifyObservers(r,s),this._delayedClicks[t]=null}}this._updatePointerPosition(e),-1===this._swipeButtonPressed&&(this._swipeButtonPressed=e.button),n.preventDefaultOnPointerDown&&r&&(e.preventDefault(),r.focus()),this._startingPointerPosition.x=this._pointerX,this._startingPointerPosition.y=this._pointerY,this._startingPointerTime=Date.now(),this._checkPrePointerObservable(null,e,v.PointerEventTypes.POINTERDOWN)||(n.cameraToUseForPointers||n.activeCamera)&&(this._pointerCaptures[e.pointerId]=!0,n.pointerDownPredicate||(n.pointerDownPredicate=e=>e.isPickable&&e.isVisible&&e.isReady()&&e.isEnabled()&&(!n.cameraToUseForPointers||(n.cameraToUseForPointers.layerMask&e.layerMask)!=0)),this._pickedDownMesh=null,t=!n.skipPointerDownPicking&&(0!==n._registeredActions||this._checkForPicking()||n.onPointerDown)?n.pick(this._unTranslatedPointerX,this._unTranslatedPointerY,n.pointerDownPredicate,n.pointerDownFastCheck,n.cameraToUseForPointers,n.pointerDownTrianglePredicate):new f.PickingInfo,this._processPointerDown(t,e))},this._onPointerUp=e=>{let t=this._activePointerIds.indexOf(e.pointerId);-1!==t&&(this._activePointerIds[t]=-1,this._activePointerIdsCount--,this._pickedUpMesh=null,this._meshPickProceed=!1,this._updatePointerPosition(e),n.preventDefaultOnPointerUp&&r&&(e.preventDefault(),r.focus()),this._initClickEvent(n.onPrePointerObservable,n.onPointerObservable,e,(t,i)=>{if(n.onPrePointerObservable.hasObservers()&&(this._skipPointerTap=!1,!t.ignore)){if(this._checkPrePointerObservable(null,e,v.PointerEventTypes.POINTERUP)){this._swipeButtonPressed===e.button&&(this._isSwiping=!1,this._swipeButtonPressed=-1),0===e.buttons&&(this._pointerCaptures[e.pointerId]=!1);return}!t.hasSwiped&&(t.singleClick&&n.onPrePointerObservable.hasSpecificMask(v.PointerEventTypes.POINTERTAP)&&this._checkPrePointerObservable(null,e,v.PointerEventTypes.POINTERTAP)&&(this._skipPointerTap=!0),t.doubleClick&&n.onPrePointerObservable.hasSpecificMask(v.PointerEventTypes.POINTERDOUBLETAP)&&this._checkPrePointerObservable(null,e,v.PointerEventTypes.POINTERDOUBLETAP)&&(this._skipPointerTap=!0))}if(!this._pointerCaptures[e.pointerId]){this._swipeButtonPressed===e.button&&(this._isSwiping=!1,this._swipeButtonPressed=-1);return}0===e.buttons&&(this._pointerCaptures[e.pointerId]=!1),(n.cameraToUseForPointers||n.activeCamera)&&(n.pointerUpPredicate||(n.pointerUpPredicate=e=>e.isPickable&&e.isVisible&&e.isReady()&&e.isEnabled()&&(!n.cameraToUseForPointers||(n.cameraToUseForPointers.layerMask&e.layerMask)!=0)),!this._meshPickProceed&&(m&&m.HasTriggers||this._checkForPicking()||n.onPointerUp)&&this._initActionManager(null,t),i||(i=this._currentPickResult),this._processPointerUp(i,e,t),this._previousPickResult=this._currentPickResult,this._swipeButtonPressed===e.button&&(this._isSwiping=!1,this._swipeButtonPressed=-1))}))},this._onKeyDown=e=>{let i=y.KeyboardEventTypes.KEYDOWN;if(n.onPreKeyboardObservable.hasObservers()){let t=new y.KeyboardInfoPre(i,e);if(n.onPreKeyboardObservable.notifyObservers(t,i),t.skipOnKeyboardObservable)return}if(n.onKeyboardObservable.hasObservers()){let t=new y.KeyboardInfo(i,e);n.onKeyboardObservable.notifyObservers(t,i)}n.actionManager&&n.actionManager.processTrigger(14,t.CreateNewFromScene(n,e))},this._onKeyUp=e=>{let i=y.KeyboardEventTypes.KEYUP;if(n.onPreKeyboardObservable.hasObservers()){let t=new y.KeyboardInfoPre(i,e);if(n.onPreKeyboardObservable.notifyObservers(t,i),t.skipOnKeyboardObservable)return}if(n.onKeyboardObservable.hasObservers()){let t=new y.KeyboardInfo(i,e);n.onKeyboardObservable.notifyObservers(t,i)}n.actionManager&&n.actionManager.processTrigger(15,t.CreateNewFromScene(n,e))},this._deviceSourceManager.onDeviceConnectedObservable.add(t=>{t.deviceType===l.Mouse?t.onInputChangedObservable.add(r=>{this._originMouseEvent=r,r.inputIndex===d.LeftClick||r.inputIndex===d.MiddleClick||r.inputIndex===d.RightClick||r.inputIndex===d.BrowserBack||r.inputIndex===d.BrowserForward?i&&1===t.getInput(r.inputIndex)?this._onPointerDown(r):e&&0===t.getInput(r.inputIndex)&&this._onPointerUp(r):s&&(r.inputIndex===d.Move?this._onPointerMove(r):(r.inputIndex===d.MouseWheelX||r.inputIndex===d.MouseWheelY||r.inputIndex===d.MouseWheelZ)&&this._onPointerMove(r))}):t.deviceType===l.Touch?t.onInputChangedObservable.add(r=>{r.inputIndex===d.LeftClick&&(i&&1===t.getInput(r.inputIndex)?(this._onPointerDown(r),this._activePointerIdsCount>1&&(this._isMultiTouchGesture=!0)):e&&0===t.getInput(r.inputIndex)&&(this._onPointerUp(r),0===this._activePointerIdsCount&&(this._isMultiTouchGesture=!1))),s&&r.inputIndex===d.Move&&this._onPointerMove(r)}):t.deviceType===l.Keyboard&&t.onInputChangedObservable.add(e=>{"keydown"===e.type?this._onKeyDown(e):"keyup"===e.type&&this._onKeyUp(e)})}),this._alreadyAttached=!0}detachControl(){this._alreadyAttached&&(this._deviceSourceManager.dispose(),this._deviceSourceManager=null,this._alreadyAttachedTo&&!this._scene.doNotHandleCursors&&(this._alreadyAttachedTo.style.cursor=this._scene.defaultCursor),this._alreadyAttached=!1,this._alreadyAttachedTo=null)}setPointerOverMesh(e,i=0,s,r){let n;if(this._meshUnderPointerId[i]===e&&(!e||!e._internalAbstractMeshDataInfo._pointerOverDisableMeshTesting))return;let a=this._meshUnderPointerId[i];a&&(n=a._getActionManagerForTrigger(10))&&n.processTrigger(10,new t(a,this._pointerX,this._pointerY,e,r,{pointerId:i})),e?(this._meshUnderPointerId[i]=e,this._pointerOverMesh=e,(n=e._getActionManagerForTrigger(9))&&n.processTrigger(9,new t(e,this._pointerX,this._pointerY,e,r,{pointerId:i,pickResult:s}))):(delete this._meshUnderPointerId[i],this._pointerOverMesh=null),this._scene.onMeshUnderPointerUpdatedObservable.hasObservers()&&this._scene.onMeshUnderPointerUpdatedObservable.notifyObservers({mesh:e,pointerId:i})}getPointerOverMesh(){return this.meshUnderPointer}_invalidateMesh(e){for(let t in this._pointerOverMesh===e&&(this._pointerOverMesh=null),this._pickedDownMesh===e&&(this._pickedDownMesh=null),this._pickedUpMesh===e&&(this._pickedUpMesh=null),this._meshUnderPointerId)this._meshUnderPointerId[t]===e&&delete this._meshUnderPointerId[t]}}B.DragMovementThreshold=10,B.LongPressDelay=500,B.DoubleClickDelay=300,B.ExclusiveDoubleClickMode=!1,e.s(["InputManager",0,B],47237)},5382,e=>{"use strict";class t{static get UniqueId(){let e=this._UniqueIdCounter;return this._UniqueIdCounter++,e}}t._UniqueIdCounter=1,e.s(["UniqueIdGenerator",0,t])},56770,e=>{"use strict";var t,i,s,r,n,a,o,h,l,d,c,u,g,p,_,v,m,f,b,y,P,C,M,O,T,S,R,E,I,k,D,A,w,x,B,N,L,F,U,G,W,X,z,j,Y,H,V,q,K,Z,$,Q,J,ee,et,ei=e.i(29711),es=e.i(4775),er=e.i(85240),en=e.i(57554),ea=e.i(95294),eo=e.i(96714),eh=e.i(55250),el=e.i(10534),ed=e.i(66052),ec=e.i(39766),eu=e.i(66476),eg=e.i(64858),ep=e.i(93357),e_=e.i(41777),ev=e.i(29665),em=e.i(93127),ef=e.i(75865),eb=e.i(47867),ey=e.i(54670),eP=e.i(47237),eC=e.i(3367),eM=e.i(75053),eO=e.i(16475),eT=e.i(5382),eS=e.i(25746),eR=e.i(86143),eE=e.i(27745);class eI{constructor(){this.pointerDownFastCheck=!1,this.pointerUpFastCheck=!1,this.pointerMoveFastCheck=!1,this.skipPointerMovePicking=!1,this.skipPointerDownPicking=!1,this.skipPointerUpPicking=!1}}var ek=e.i(83464),eD=e.i(48477);let eA=new el.Vector4,ew=new el.Vector4;(t=et||(et={}))[t.BackwardCompatible=0]="BackwardCompatible",t[t.Intermediate=1]="Intermediate",t[t.Aggressive=2]="Aggressive";class ex{static DefaultMaterialFactory(e){throw(0,ey._WarnImport)("StandardMaterial")}static CollisionCoordinatorFactory(){throw(0,ey._WarnImport)("DefaultCollisionCoordinator")}get clearColor(){return this._clearColor}set clearColor(e){e!==this._clearColor&&(this._clearColor=e,this.onClearColorChangedObservable.notifyObservers(this._clearColor))}get imageProcessingConfiguration(){return this._imageProcessingConfiguration}get performancePriority(){return this._performancePriority}set performancePriority(e){if(e!==this._performancePriority){switch(this._performancePriority=e,e){case 0:this.skipFrustumClipping=!1,this._renderingManager.maintainStateBetweenFrames=!1,this.skipPointerMovePicking=!1,this.autoClear=!0;break;case 1:this.skipFrustumClipping=!1,this._renderingManager.maintainStateBetweenFrames=!1,this.skipPointerMovePicking=!0,this.autoClear=!1;break;case 2:this.skipFrustumClipping=!0,this._renderingManager.maintainStateBetweenFrames=!0,this.skipPointerMovePicking=!0,this.autoClear=!1}this.onScenePerformancePriorityChangedObservable.notifyObservers(e)}}set forceWireframe(e){this._forceWireframe!==e&&(this._forceWireframe=e,this.markAllMaterialsAsDirty(16))}get forceWireframe(){return this._forceWireframe}set skipFrustumClipping(e){this._skipFrustumClipping!==e&&(this._skipFrustumClipping=e)}get skipFrustumClipping(){return this._skipFrustumClipping}set forcePointsCloud(e){this._forcePointsCloud!==e&&(this._forcePointsCloud=e,this.markAllMaterialsAsDirty(16))}get forcePointsCloud(){return this._forcePointsCloud}get environmentTexture(){return this._environmentTexture}set environmentTexture(e){this._environmentTexture!==e&&(this._environmentTexture=e,this.onEnvironmentTextureChangedObservable.notifyObservers(e),this.markAllMaterialsAsDirty(1))}getNodes(){let e=[];for(let t of(e=(e=(e=(e=e.concat(this.meshes)).concat(this.lights)).concat(this.cameras)).concat(this.transformNodes),this.skeletons))e=e.concat(t.bones);return e}get animationPropertiesOverride(){return this._animationPropertiesOverride}set animationPropertiesOverride(e){this._animationPropertiesOverride=e}set onDispose(e){this._onDisposeObserver&&this.onDisposeObservable.remove(this._onDisposeObserver),this._onDisposeObserver=this.onDisposeObservable.add(e)}set beforeRender(e){this._onBeforeRenderObserver&&this.onBeforeRenderObservable.remove(this._onBeforeRenderObserver),e&&(this._onBeforeRenderObserver=this.onBeforeRenderObservable.add(e))}set afterRender(e){this._onAfterRenderObserver&&this.onAfterRenderObservable.remove(this._onAfterRenderObserver),e&&(this._onAfterRenderObserver=this.onAfterRenderObservable.add(e))}set beforeCameraRender(e){this._onBeforeCameraRenderObserver&&this.onBeforeCameraRenderObservable.remove(this._onBeforeCameraRenderObserver),this._onBeforeCameraRenderObserver=this.onBeforeCameraRenderObservable.add(e)}set afterCameraRender(e){this._onAfterCameraRenderObserver&&this.onAfterCameraRenderObservable.remove(this._onAfterCameraRenderObserver),this._onAfterCameraRenderObserver=this.onAfterCameraRenderObservable.add(e)}get pointerDownPredicate(){return this._pointerPickingConfiguration.pointerDownPredicate}set pointerDownPredicate(e){this._pointerPickingConfiguration.pointerDownPredicate=e}get pointerUpPredicate(){return this._pointerPickingConfiguration.pointerUpPredicate}set pointerUpPredicate(e){this._pointerPickingConfiguration.pointerUpPredicate=e}get pointerMovePredicate(){return this._pointerPickingConfiguration.pointerMovePredicate}set pointerMovePredicate(e){this._pointerPickingConfiguration.pointerMovePredicate=e}get pointerDownFastCheck(){return this._pointerPickingConfiguration.pointerDownFastCheck}set pointerDownFastCheck(e){this._pointerPickingConfiguration.pointerDownFastCheck=e}get pointerUpFastCheck(){return this._pointerPickingConfiguration.pointerUpFastCheck}set pointerUpFastCheck(e){this._pointerPickingConfiguration.pointerUpFastCheck=e}get pointerMoveFastCheck(){return this._pointerPickingConfiguration.pointerMoveFastCheck}set pointerMoveFastCheck(e){this._pointerPickingConfiguration.pointerMoveFastCheck=e}get skipPointerMovePicking(){return this._pointerPickingConfiguration.skipPointerMovePicking}set skipPointerMovePicking(e){this._pointerPickingConfiguration.skipPointerMovePicking=e}get skipPointerDownPicking(){return this._pointerPickingConfiguration.skipPointerDownPicking}set skipPointerDownPicking(e){this._pointerPickingConfiguration.skipPointerDownPicking=e}get skipPointerUpPicking(){return this._pointerPickingConfiguration.skipPointerUpPicking}set skipPointerUpPicking(e){this._pointerPickingConfiguration.skipPointerUpPicking=e}get unTranslatedPointer(){return this._inputManager.unTranslatedPointer}static get DragMovementThreshold(){return eP.InputManager.DragMovementThreshold}static set DragMovementThreshold(e){eP.InputManager.DragMovementThreshold=e}static get LongPressDelay(){return eP.InputManager.LongPressDelay}static set LongPressDelay(e){eP.InputManager.LongPressDelay=e}static get DoubleClickDelay(){return eP.InputManager.DoubleClickDelay}static set DoubleClickDelay(e){eP.InputManager.DoubleClickDelay=e}static get ExclusiveDoubleClickMode(){return eP.InputManager.ExclusiveDoubleClickMode}static set ExclusiveDoubleClickMode(e){eP.InputManager.ExclusiveDoubleClickMode=e}get _eyePosition(){return this._forcedViewPosition??this.activeCamera?.globalPosition??el.Vector3.ZeroReadOnly}bindEyePosition(e,t="vEyePosition",i=!1){let s=this._eyePosition,r=this.useRightHandedSystem===(null!=this._mirroredCameraPosition),n=this.floatingOriginOffset,a=eA.set(s.x,s.y,s.z,r?-1:1),o=a.subtractFromFloatsToRef(n.x,n.y,n.z,0,ew);return e&&(i?e.setFloat3(t,o.x,o.y,o.z):e.setVector4(t,o)),a}finalizeSceneUbo(){let e=this.getSceneUniformBuffer(),t=this.bindEyePosition(null),i=this.floatingOriginOffset;return e.updateFloat4("vEyePosition",t.x-i.x,t.y-i.y,t.z-i.z,t.w),e.update(),e}set useRightHandedSystem(e){this._useRightHandedSystem!==e&&(this._useRightHandedSystem=e,this.markAllMaterialsAsDirty(16))}get useRightHandedSystem(){return this._useRightHandedSystem}setStepId(e){this._currentStepId=e}getStepId(){return this._currentStepId}getInternalStep(){return this._currentInternalStep}set fogEnabled(e){this._fogEnabled!==e&&(this._fogEnabled=e,this.markAllMaterialsAsDirty(16))}get fogEnabled(){return this._fogEnabled}set fogMode(e){this._fogMode!==e&&(this._fogMode=e,this.markAllMaterialsAsDirty(16))}get fogMode(){return this._fogMode}get prePass(){return!!this.prePassRenderer&&this.prePassRenderer.defaultRT.enabled}set shadowsEnabled(e){this._shadowsEnabled!==e&&(this._shadowsEnabled=e,this.markAllMaterialsAsDirty(2))}get shadowsEnabled(){return this._shadowsEnabled}set lightsEnabled(e){this._lightsEnabled!==e&&(this._lightsEnabled=e,this.markAllMaterialsAsDirty(2))}get lightsEnabled(){return this._lightsEnabled}get activeCameras(){return this._activeCameras}set activeCameras(e){this._unObserveActiveCameras&&(this._unObserveActiveCameras(),this._unObserveActiveCameras=null),e&&(this._unObserveActiveCameras=(0,eE._ObserveArray)(e,()=>{this.onActiveCamerasChanged.notifyObservers(this)})),this._activeCameras=e}get activeCamera(){return this._activeCamera}set activeCamera(e){e!==this._activeCamera&&(this._activeCamera=e,this.onActiveCameraChanged.notifyObservers(this))}get _hasDefaultMaterial(){return ex.DefaultMaterialFactory!==ex._OriginalDefaultMaterialFactory}get defaultMaterial(){return this._defaultMaterial||(this._defaultMaterial=ex.DefaultMaterialFactory(this)),this._defaultMaterial}set defaultMaterial(e){this._defaultMaterial=e}set texturesEnabled(e){this._texturesEnabled!==e&&(this._texturesEnabled=e,this.markAllMaterialsAsDirty(1))}get texturesEnabled(){return this._texturesEnabled}get frameGraph(){return this._frameGraph}set frameGraph(e){if(this._frameGraph){this._frameGraph=e,e||(this.customRenderFunction=this._currentCustomRenderFunction);return}this._frameGraph=e,e&&(this._currentCustomRenderFunction=this.customRenderFunction,this.customRenderFunction=this._renderWithFrameGraph,this.activeCamera=null)}set skeletonsEnabled(e){this._skeletonsEnabled!==e&&(this._skeletonsEnabled=e,this.markAllMaterialsAsDirty(8))}get skeletonsEnabled(){return this._skeletonsEnabled}get collisionCoordinator(){return this._collisionCoordinator||(this._collisionCoordinator=ex.CollisionCoordinatorFactory(),this._collisionCoordinator.init(this)),this._collisionCoordinator}get renderingManager(){return this._renderingManager}get frustumPlanes(){return this._frustumPlanes}_registerTransientComponents(){if(this._transientComponents.length>0){for(let e of this._transientComponents)e.register();this._transientComponents.length=0}}_addComponent(e){this._components.push(e),this._transientComponents.push(e),e.addFromContainer&&e.serialize&&this._serializableComponents.push(e)}_getComponent(e){for(let t of this._components)if(t.name===e)return t;return null}get uniqueId(){return this._uniqueId}constructor(e,t){this._inputManager=new eP.InputManager(this),this.cameraToUseForPointers=null,this._isScene=!0,this._blockEntityCollection=!1,this.autoClear=!0,this.autoClearDepthAndStencil=!0,this._clearColor=new eM.Color4(.2,.2,.3,1),this.onClearColorChangedObservable=new en.Observable,this.ambientColor=new eM.Color3(0,0,0),this.environmentIntensity=1,this.iblIntensity=1,this._performancePriority=0,this.onScenePerformancePriorityChangedObservable=new en.Observable,this._forceWireframe=!1,this._skipFrustumClipping=!1,this._forcePointsCloud=!1,this.rootNodes=[],this.cameras=[],this.lights=[],this.meshes=[],this.skeletons=[],this.particleSystems=[],this.animations=[],this.animationGroups=[],this.multiMaterials=[],this.materials=[],this.morphTargetManagers=[],this.geometries=[],this.transformNodes=[],this.actionManagers=[],this.objectRenderers=[],this.textures=[],this._environmentTexture=null,this.postProcesses=[],this.effectLayers=[],this.sounds=null,this.layers=[],this.lensFlareSystems=[],this.proceduralTextures=[],this.animationsEnabled=!0,this._animationPropertiesOverride=null,this.useConstantAnimationDeltaTime=!1,this.constantlyUpdateMeshUnderPointer=!1,this.hoverCursor="pointer",this.defaultCursor="",this.doNotHandleCursors=!1,this.preventDefaultOnPointerDown=!0,this.preventDefaultOnPointerUp=!0,this.metadata=null,this.reservedDataStore=null,this.disableOfflineSupportExceptionRules=[],this.onDisposeObservable=new en.Observable,this._onDisposeObserver=null,this.onBeforeRenderObservable=new en.Observable,this._onBeforeRenderObserver=null,this.onAfterRenderObservable=new en.Observable,this.onAfterRenderCameraObservable=new en.Observable,this._onAfterRenderObserver=null,this.onBeforeAnimationsObservable=new en.Observable,this.onAfterAnimationsObservable=new en.Observable,this.onBeforeDrawPhaseObservable=new en.Observable,this.onAfterDrawPhaseObservable=new en.Observable,this.onReadyObservable=new en.Observable,this.onBeforeCameraRenderObservable=new en.Observable,this._onBeforeCameraRenderObserver=null,this.onAfterCameraRenderObservable=new en.Observable,this._onAfterCameraRenderObserver=null,this.onBeforeActiveMeshesEvaluationObservable=new en.Observable,this.onAfterActiveMeshesEvaluationObservable=new en.Observable,this.onBeforeParticlesRenderingObservable=new en.Observable,this.onAfterParticlesRenderingObservable=new en.Observable,this.onDataLoadedObservable=new en.Observable,this.onNewCameraAddedObservable=new en.Observable,this.onCameraRemovedObservable=new en.Observable,this.onNewLightAddedObservable=new en.Observable,this.onLightRemovedObservable=new en.Observable,this.onNewGeometryAddedObservable=new en.Observable,this.onGeometryRemovedObservable=new en.Observable,this.onNewTransformNodeAddedObservable=new en.Observable,this.onTransformNodeRemovedObservable=new en.Observable,this.onNewMeshAddedObservable=new en.Observable,this.onMeshRemovedObservable=new en.Observable,this.onNewSkeletonAddedObservable=new en.Observable,this.onSkeletonRemovedObservable=new en.Observable,this.onNewParticleSystemAddedObservable=new en.Observable,this.onParticleSystemRemovedObservable=new en.Observable,this.onNewAnimationGroupAddedObservable=new en.Observable,this.onAnimationGroupRemovedObservable=new en.Observable,this.onNewMaterialAddedObservable=new en.Observable,this.onNewMultiMaterialAddedObservable=new en.Observable,this.onMaterialRemovedObservable=new en.Observable,this.onMultiMaterialRemovedObservable=new en.Observable,this.onNewTextureAddedObservable=new en.Observable,this.onTextureRemovedObservable=new en.Observable,this.onNewFrameGraphAddedObservable=new en.Observable,this.onFrameGraphRemovedObservable=new en.Observable,this.onNewObjectRendererAddedObservable=new en.Observable,this.onObjectRendererRemovedObservable=new en.Observable,this.onNewPostProcessAddedObservable=new en.Observable,this.onPostProcessRemovedObservable=new en.Observable,this.onNewEffectLayerAddedObservable=new en.Observable,this.onEffectLayerRemovedObservable=new en.Observable,this.onBeforeRenderTargetsRenderObservable=new en.Observable,this.onAfterRenderTargetsRenderObservable=new en.Observable,this.onBeforeStepObservable=new en.Observable,this.onAfterStepObservable=new en.Observable,this.onActiveCameraChanged=new en.Observable,this.onActiveCamerasChanged=new en.Observable,this.onBeforeRenderingGroupObservable=new en.Observable,this.onAfterRenderingGroupObservable=new en.Observable,this.onMeshImportedObservable=new en.Observable,this.onAnimationFileImportedObservable=new en.Observable,this.onEnvironmentTextureChangedObservable=new en.Observable,this.onMeshUnderPointerUpdatedObservable=new en.Observable,this._registeredForLateAnimationBindings=new ea.SmartArrayNoDuplicate(256),this._pointerPickingConfiguration=new eI,this.onPrePointerObservable=new en.Observable,this.onPointerObservable=new en.Observable,this.onPreKeyboardObservable=new en.Observable,this.onKeyboardObservable=new en.Observable,this._useRightHandedSystem=!1,this._timeAccumulator=0,this._currentStepId=0,this._currentInternalStep=0,this._fogEnabled=!0,this._fogMode=ex.FOGMODE_NONE,this.fogColor=new eM.Color3(.2,.2,.3),this.fogDensity=.1,this.fogStart=0,this.fogEnd=1e3,this.needsPreviousWorldMatrices=!1,this._shadowsEnabled=!0,this._lightsEnabled=!0,this._unObserveActiveCameras=null,this._texturesEnabled=!0,this._frameGraph=null,this.frameGraphs=[],this.physicsEnabled=!0,this.particlesEnabled=!0,this.spritesEnabled=!0,this._skeletonsEnabled=!0,this.lensFlaresEnabled=!0,this.collisionsEnabled=!0,this.gravity=new el.Vector3(0,-9.807,0),this.postProcessesEnabled=!0,this.renderTargetsEnabled=!0,this.dumpNextRenderTargets=!1,this.customRenderTargets=[],this.importedMeshesFiles=[],this.probesEnabled=!0,this._meshesForIntersections=new ea.SmartArrayNoDuplicate(256),this.proceduralTexturesEnabled=!0,this._totalVertices=new eC.PerfCounter,this._activeIndices=new eC.PerfCounter,this._activeParticles=new eC.PerfCounter,this._activeBones=new eC.PerfCounter,this._animationTime=0,this.animationTimeScale=1,this._renderId=0,this._frameId=0,this._executeWhenReadyTimeoutId=null,this._intermediateRendering=!1,this._defaultFrameBufferCleared=!1,this._viewUpdateFlag=-1,this._projectionUpdateFlag=-1,this._toBeDisposed=Array(256),this._activeRequests=[],this._delayedFileRequests=null,this._pendingData=[],this._isDisposed=!1,this._isReadyChecks=[],this.dispatchAllSubMeshesOfActiveMeshes=!1,this._activeMeshes=new ea.SmartArray(256),this._processedMaterials=new ea.SmartArray(256),this._renderTargets=new ea.SmartArrayNoDuplicate(256),this._materialsRenderTargets=new ea.SmartArrayNoDuplicate(256),this._activeParticleSystems=new ea.SmartArray(256),this._activeSkeletons=new ea.SmartArrayNoDuplicate(32),this._softwareSkinnedMeshes=new ea.SmartArrayNoDuplicate(32),this._activeAnimatables=[],this._transformMatrix=el.Matrix.Zero(),this.requireLightSorting=!1,this._components=[],this._serializableComponents=[],this._transientComponents=[],this._beforeCameraUpdateStage=em.Stage.Create(),this._beforeClearStage=em.Stage.Create(),this._beforeRenderTargetClearStage=em.Stage.Create(),this._gatherRenderTargetsStage=em.Stage.Create(),this._gatherActiveCameraRenderTargetsStage=em.Stage.Create(),this._isReadyForMeshStage=em.Stage.Create(),this._beforeEvaluateActiveMeshStage=em.Stage.Create(),this._evaluateSubMeshStage=em.Stage.Create(),this._preActiveMeshStage=em.Stage.Create(),this._cameraDrawRenderTargetStage=em.Stage.Create(),this._beforeCameraDrawStage=em.Stage.Create(),this._beforeRenderTargetDrawStage=em.Stage.Create(),this._beforeRenderingGroupDrawStage=em.Stage.Create(),this._beforeRenderingMeshStage=em.Stage.Create(),this._afterRenderingMeshStage=em.Stage.Create(),this._afterRenderingGroupDrawStage=em.Stage.Create(),this._afterCameraDrawStage=em.Stage.Create(),this._afterCameraPostProcessStage=em.Stage.Create(),this._afterRenderTargetDrawStage=em.Stage.Create(),this._afterRenderTargetPostProcessStage=em.Stage.Create(),this._afterRenderStage=em.Stage.Create(),this._pointerMoveStage=em.Stage.Create(),this._pointerDownStage=em.Stage.Create(),this._pointerUpStage=em.Stage.Create(),this._geometriesByUniqueId=null,this._uniqueId=0,this._defaultMeshCandidates={data:[],length:0},this._defaultSubMeshCandidates={data:[],length:0},this.onReadyTimeoutObservable=new en.Observable,this.onReadyTimeoutDuration=12e4,this._timeoutChecksStartTime=0,this._floatingOriginScene=void 0,this._preventFreeActiveMeshesAndRenderingGroups=!1,this._activeMeshesFrozen=!1,this._activeMeshesFrozenButKeepClipping=!1,this._skipEvaluateActiveMeshesCompletely=!1,this._freezeActiveMeshesCancel=null,this._useCurrentFrameBuffer=!1,this._allowPostProcessClearColor=!0,this.getDeterministicFrameTime=()=>this._engine.getTimeStep(),this._getFloatingOriginScene=()=>this._floatingOriginScene,this._registeredActions=0,this._blockMaterialDirtyMechanism=!1,this._perfCollector=null,this.activeCameras=[],this._uniqueId=this.getUniqueId();const i={useGeometryUniqueIdsMap:!0,useMaterialMeshMap:!0,useClonedMeshMap:!0,virtual:!1,defaultCameraLayerMask:0xfffffff,defaultRenderableLayerMask:0xfffffff,...t};this.defaultCameraLayerMask=i.defaultCameraLayerMask,this.defaultRenderableLayerMask=i.defaultRenderableLayerMask,e=this._engine=e||eb.EngineStore.LastCreatedEngine,i.virtual?e._virtualScenes.push(this):(eb.EngineStore._LastCreatedScene=this,e.scenes.push(this)),(e.getCreationOptions().useLargeWorldRendering||t?.useFloatingOrigin)&&((0,e_.OverrideMatrixFunctions)(),this._floatingOriginScene=this,e_.FloatingOriginCurrentScene.getScene=this._getFloatingOriginScene),this._uid=null,this._renderingManager=new ev.RenderingManager(this),ep.PostProcessManager&&(this.postProcessManager=new ep.PostProcessManager(this)),(0,ef.IsWindowObjectExist)()&&this.attachControl(),this._createUbo(),ed.ImageProcessingConfiguration&&(this._imageProcessingConfiguration=new ed.ImageProcessingConfiguration),this.setDefaultCandidateProviders(),i.useGeometryUniqueIdsMap&&(this._geometriesByUniqueId={}),this.useMaterialMeshMap=i.useMaterialMeshMap,this.useClonedMeshMap=i.useClonedMeshMap,t&&t.virtual||e.onNewSceneAddedObservable.notifyObservers(this)}getClassName(){return"Scene"}_getDefaultMeshCandidates(){return this._defaultMeshCandidates.data=this.meshes,this._defaultMeshCandidates.length=this.meshes.length,this._defaultMeshCandidates}_getDefaultSubMeshCandidates(e){return this._defaultSubMeshCandidates.data=e.subMeshes,this._defaultSubMeshCandidates.length=e.subMeshes.length,this._defaultSubMeshCandidates}setDefaultCandidateProviders(){this.getActiveMeshCandidates=()=>this._getDefaultMeshCandidates(),this.getActiveSubMeshCandidates=e=>this._getDefaultSubMeshCandidates(e),this.getIntersectingSubMeshCandidates=(e,t)=>this._getDefaultSubMeshCandidates(e),this.getCollidingSubMeshCandidates=(e,t)=>this._getDefaultSubMeshCandidates(e)}get meshUnderPointer(){return this._inputManager.meshUnderPointer}get pointerX(){return this._inputManager.pointerX}set pointerX(e){this._inputManager.pointerX=e}get pointerY(){return this._inputManager.pointerY}set pointerY(e){this._inputManager.pointerY=e}getCachedMaterial(){return this._cachedMaterial}getCachedEffect(){return this._cachedEffect}getCachedVisibility(){return this._cachedVisibility}isCachedMaterialInvalid(e,t,i=1){return this._cachedEffect!==t||this._cachedMaterial!==e||this._cachedVisibility!==i}getEngine(){return this._engine}getTotalVertices(){return this._totalVertices.current}get totalVerticesPerfCounter(){return this._totalVertices}getActiveIndices(){return this._activeIndices.current}get totalActiveIndicesPerfCounter(){return this._activeIndices}getActiveParticles(){return this._activeParticles.current}get activeParticlesPerfCounter(){return this._activeParticles}getActiveBones(){return this._activeBones.current}get activeBonesPerfCounter(){return this._activeBones}getActiveMeshes(){return this._activeMeshes}getAnimationRatio(){return void 0!==this._animationRatio?this._animationRatio:1}getRenderId(){return this._renderId}getFrameId(){return this._frameId}incrementRenderId(){this._renderId++}_createUbo(){this.setSceneUniformBuffer(this.createSceneUniformBuffer())}simulatePointerMove(e,t){return this._inputManager.simulatePointerMove(e,t),this}simulatePointerDown(e,t){return this._inputManager.simulatePointerDown(e,t),this}simulatePointerUp(e,t,i){return this._inputManager.simulatePointerUp(e,t,i),this}isPointerCaptured(e=0){return this._inputManager.isPointerCaptured(e)}attachControl(e=!0,t=!0,i=!0){this._inputManager.attachControl(e,t,i)}detachControl(){this._inputManager.detachControl()}isReady(e=!0){let t;if(this._isDisposed)return!1;let i=this.getEngine(),s=i.currentRenderPassId;i.currentRenderPassId=this.activeCamera?.renderPassId??s;let r=!0;for(this._pendingData.length>0&&(r=!1),this.prePassRenderer?.update(),this.useOrderIndependentTransparency&&this.depthPeelingRenderer&&r&&(r=this.depthPeelingRenderer.isReady()),e&&(this._processedMaterials.reset(),this._materialsRenderTargets.reset()),t=0;t<this.meshes.length;t++){let s=this.meshes[t];if(!s.subMeshes||0===s.subMeshes.length)continue;if(!s.isReady(!0)){r=!1;continue}let n=s.hasThinInstances||"InstancedMesh"===s.getClassName()||"InstancedLinesMesh"===s.getClassName()||i.getCaps().instancedArrays&&s.instances.length>0;for(let e of this._isReadyForMeshStage)e.action(s,n)||(r=!1);if(!e)continue;let a=s.material||this.defaultMaterial;if(a)if(a._storeEffectOnSubMeshes)for(let e of s.subMeshes){let t=e.getMaterial();t&&t.hasRenderTargetTextures&&null!=t.getRenderTargetTextures&&-1===this._processedMaterials.indexOf(t)&&(this._processedMaterials.push(t),this._materialsRenderTargets.concatWithNoDuplicate(t.getRenderTargetTextures()))}else a.hasRenderTargetTextures&&null!=a.getRenderTargetTextures&&-1===this._processedMaterials.indexOf(a)&&(this._processedMaterials.push(a),this._materialsRenderTargets.concatWithNoDuplicate(a.getRenderTargetTextures()))}if(e){for(t=0;t<this._materialsRenderTargets.length;++t)this._materialsRenderTargets.data[t].isReadyForRendering()||(r=!1);for(t=0;t<this.customRenderTargets.length;++t)this.customRenderTargets[t].isReadyForRendering()||(r=!1)}for(t=0;t<this.geometries.length;t++)2===this.geometries[t].delayLoadState&&(r=!1);if(this.activeCameras&&this.activeCameras.length>0)for(let e of this.activeCameras)e.isReady(!0)||(r=!1);else this.activeCamera&&!this.activeCamera.isReady(!0)&&(r=!1);for(let e of this.particleSystems)e.isReady()||(r=!1);if(this.proceduralTexturesEnabled)for(let e of this.proceduralTextures)e.isReady()||(r=!1);if(this.layers)for(let e of this.layers)e.isReady()||(r=!1);if(this.effectLayers)for(let e of this.effectLayers)e.isLayerReady()||(r=!1);for(let e of this._isReadyChecks)e.isReady()||(r=!1);return i.areAllEffectsReady()||(r=!1),i.currentRenderPassId=s,r}resetCachedMaterial(){this._cachedMaterial=null,this._cachedEffect=null,this._cachedVisibility=null}registerBeforeRender(e){this.onBeforeRenderObservable.add(e)}unregisterBeforeRender(e){this.onBeforeRenderObservable.removeCallback(e)}registerAfterRender(e){this.onAfterRenderObservable.add(e)}unregisterAfterRender(e){this.onAfterRenderObservable.removeCallback(e)}_executeOnceBeforeRender(e){let t=()=>{e(),setTimeout(()=>{this.unregisterBeforeRender(t)})};this.registerBeforeRender(t)}executeOnceBeforeRender(e,t){void 0!==t?setTimeout(()=>{this._executeOnceBeforeRender(e)},t):this._executeOnceBeforeRender(e)}addPendingData(e){this._pendingData.push(e)}removePendingData(e){let t=this.isLoading,i=this._pendingData.indexOf(e);-1!==i&&this._pendingData.splice(i,1),t&&!this.isLoading&&this.onDataLoadedObservable.notifyObservers(this)}getWaitingItemsCount(){return this._pendingData.length}get isLoading(){return this._pendingData.length>0}addIsReadyCheck(e){-1===this._isReadyChecks.indexOf(e)&&this._isReadyChecks.push(e)}removeIsReadyCheck(e){let t=this._isReadyChecks.indexOf(e);-1!==t&&this._isReadyChecks.splice(t,1)}executeWhenReady(e,t=!1){this.onReadyObservable.addOnce(e),null===this._executeWhenReadyTimeoutId&&this._checkIsReady(t)}async whenReadyAsync(e=!1){return await new Promise(t=>{this.executeWhenReady(()=>{t()},e)})}_clearReadynessChecksData(){this._timeoutChecksStartTime=0,this.onReadyTimeoutObservable.clear(),this.onReadyObservable.clear(),this._executeWhenReadyTimeoutId=null}_checkIsReady(e=!1){if(this._registerTransientComponents(),0===this._timeoutChecksStartTime)this._timeoutChecksStartTime=er.PrecisionDate.Now;else if(this.onReadyTimeoutDuration>0&&er.PrecisionDate.Now-this._timeoutChecksStartTime>this.onReadyTimeoutDuration){this.onReadyTimeoutObservable.notifyObservers(this),this._clearReadynessChecksData();return}if(this.isReady(e)){this.onReadyObservable.notifyObservers(this),this._clearReadynessChecksData();return}this._isDisposed?this._clearReadynessChecksData():this._executeWhenReadyTimeoutId=setTimeout(()=>{this.incrementRenderId(),this._checkIsReady(e)},100)}get animatables(){return this._activeAnimatables}resetLastAnimationTimeFrame(){this._animationTimeLast=er.PrecisionDate.Now}getViewMatrix(){return this._viewMatrix}getProjectionMatrix(){return this._projectionMatrix}getInverseProjectionMatrix(){return this._inverseProjectionMatrix}getTransformMatrix(){return this._transformMatrix}setTransformMatrix(e,t,i,s){this._multiviewSceneUboIsActive=!!(i&&s&&this._multiviewSceneUbo),(this._viewUpdateFlag!==e.updateFlag||this._projectionUpdateFlag!==t.updateFlag)&&(this._viewUpdateFlag=e.updateFlag,this._projectionUpdateFlag=t.updateFlag,this._viewMatrix=e,this._projectionMatrix=t,this._inverseProjectionMatrix||(this._inverseProjectionMatrix=new el.Matrix),this._projectionMatrix.invertToRef(this._inverseProjectionMatrix),this._viewMatrix.multiplyToRef(this._projectionMatrix,this._transformMatrix),this._frustumPlanes?eO.Frustum.GetPlanesToRef(this._transformMatrix,this._frustumPlanes):this._frustumPlanes=eO.Frustum.GetPlanes(this._transformMatrix),this._multiviewSceneUboIsActive&&this._multiviewSceneUbo.useUbo?this._updateMultiviewUbo(i,s):this._sceneUbo.useUbo&&(this._sceneUbo.updateMatrix("viewProjection",this._transformMatrix),this._sceneUbo.updateMatrix("view",this._viewMatrix),this._sceneUbo.updateMatrix("projection",this._projectionMatrix),this._sceneUbo.updateMatrix("inverseProjection",this._inverseProjectionMatrix)))}getSceneUniformBuffer(){return this._multiviewSceneUboIsActive&&this._multiviewSceneUbo?this._multiviewSceneUbo:this._sceneUbo}createSceneUniformBuffer(e,t){let i="boolean"==typeof t?t:t?.trackUBOsInFrame,s=new ec.UniformBuffer(this._engine,void 0,!1,e??"scene",void 0,i);return s.addUniform("viewProjection",16),s.addUniform("view",16),s.addUniform("projection",16),s.addUniform("vEyePosition",4),s.addUniform("inverseProjection",16),s}setSceneUniformBuffer(e){this._sceneUbo=e,this._viewUpdateFlag=-1,this._projectionUpdateFlag=-1}get floatingOriginMode(){return void 0!==this._floatingOriginScene}get floatingOriginOffset(){return this.floatingOriginMode?this._eyePosition:el.Vector3.ZeroReadOnly}getUniqueId(){return eT.UniqueIdGenerator.UniqueId}addMesh(e,t=!1){if(!this._blockEntityCollection&&(this.meshes.push(e),e._resyncLightSources(),e.parent||e._addToSceneRootNodes(),es.TimingTools.SetImmediate(()=>{this.onNewMeshAddedObservable.notifyObservers(e)}),t))for(let t of e.getChildMeshes())this.addMesh(t)}removeMesh(e,t=!1){let i=this.meshes.indexOf(e);if(-1!==i&&(this.meshes.splice(i,1),e.parent||e._removeFromSceneRootNodes()),this._inputManager._invalidateMesh(e),this.onMeshRemovedObservable.notifyObservers(e),t)for(let t of e.getChildMeshes())this.removeMesh(t);return i}addTransformNode(e){this._blockEntityCollection||(e.getScene()!==this||-1===e._indexInSceneTransformNodesArray)&&(e._indexInSceneTransformNodesArray=this.transformNodes.length,this.transformNodes.push(e),e.parent||e._addToSceneRootNodes(),this.onNewTransformNodeAddedObservable.notifyObservers(e))}removeTransformNode(e){let t=e._indexInSceneTransformNodesArray;if(-1!==t){if(t!==this.transformNodes.length-1){let e=this.transformNodes[this.transformNodes.length-1];this.transformNodes[t]=e,e._indexInSceneTransformNodesArray=t}e._indexInSceneTransformNodesArray=-1,this.transformNodes.pop(),e.parent||e._removeFromSceneRootNodes()}return this.onTransformNodeRemovedObservable.notifyObservers(e),t}removeSkeleton(e){let t=this.skeletons.indexOf(e);return -1!==t&&(this.skeletons.splice(t,1),this.onSkeletonRemovedObservable.notifyObservers(e),this._executeActiveContainerCleanup(this._activeSkeletons)),t}removeMorphTargetManager(e){let t=this.morphTargetManagers.indexOf(e);return -1!==t&&this.morphTargetManagers.splice(t,1),t}removeLight(e){let t=this.lights.indexOf(e);if(-1!==t){for(let t of this.meshes)t._removeLightSource(e,!1);this.lights.splice(t,1),this.sortLightsByPriority(),e.parent||e._removeFromSceneRootNodes(),this.onLightRemovedObservable.notifyObservers(e)}return t}removeCamera(e){let t=this.cameras.indexOf(e);if(-1!==t&&(this.cameras.splice(t,1),e.parent||e._removeFromSceneRootNodes()),this.activeCameras){let t=this.activeCameras.indexOf(e);-1!==t&&this.activeCameras.splice(t,1)}return this.activeCamera===e&&(this.cameras.length>0?this.activeCamera=this.cameras[0]:this.activeCamera=null),this.onCameraRemovedObservable.notifyObservers(e),t}removeParticleSystem(e){let t=this.particleSystems.indexOf(e);return -1!==t&&(this.particleSystems.splice(t,1),this._executeActiveContainerCleanup(this._activeParticleSystems)),this.onParticleSystemRemovedObservable.notifyObservers(e),t}removeAnimation(e){let t=this.animations.indexOf(e);return -1!==t&&this.animations.splice(t,1),t}stopAnimation(e,t,i){}removeAnimationGroup(e){let t=this.animationGroups.indexOf(e);return -1!==t&&this.animationGroups.splice(t,1),this.onAnimationGroupRemovedObservable.notifyObservers(e),t}removeMultiMaterial(e){let t=this.multiMaterials.indexOf(e);return -1!==t&&this.multiMaterials.splice(t,1),this.onMultiMaterialRemovedObservable.notifyObservers(e),t}removeMaterial(e){let t=e._indexInSceneMaterialArray;if(-1!==t&&t<this.materials.length){if(t!==this.materials.length-1){let e=this.materials[this.materials.length-1];this.materials[t]=e,e._indexInSceneMaterialArray=t}e._indexInSceneMaterialArray=-1,this.materials.pop()}return this.onMaterialRemovedObservable.notifyObservers(e),t}removeActionManager(e){let t=this.actionManagers.indexOf(e);return -1!==t&&this.actionManagers.splice(t,1),t}removeTexture(e){let t=this.textures.indexOf(e);return -1!==t&&this.textures.splice(t,1),this.onTextureRemovedObservable.notifyObservers(e),t}removeFrameGraph(e){let t=this.frameGraphs.indexOf(e);return -1!==t&&this.frameGraphs.splice(t,1),this.onFrameGraphRemovedObservable.notifyObservers(e),t}removeObjectRenderer(e){let t=this.objectRenderers.indexOf(e);return -1!==t&&this.objectRenderers.splice(t,1),this.onObjectRendererRemovedObservable.notifyObservers(e),t}removePostProcess(e){let t=this.postProcesses.indexOf(e);return -1!==t&&this.postProcesses.splice(t,1),this.onPostProcessRemovedObservable.notifyObservers(e),t}removeEffectLayer(e){let t=this.effectLayers.indexOf(e);return -1!==t&&this.effectLayers.splice(t,1),this.onEffectLayerRemovedObservable.notifyObservers(e),t}addLight(e){if(!this._blockEntityCollection){for(let t of(this.lights.push(e),this.sortLightsByPriority(),e.parent||e._addToSceneRootNodes(),this.meshes))-1===t.lightSources.indexOf(e)&&(t.lightSources.push(e),t._resyncLightSources());es.TimingTools.SetImmediate(()=>{this.onNewLightAddedObservable.notifyObservers(e)})}}sortLightsByPriority(){this.requireLightSorting&&this.lights.sort(eR.LightConstants.CompareLightsPriority)}addCamera(e){!this._blockEntityCollection&&(this.cameras.push(e),es.TimingTools.SetImmediate(()=>{this.onNewCameraAddedObservable.notifyObservers(e)}),e.parent||e._addToSceneRootNodes())}addSkeleton(e){this._blockEntityCollection||(this.skeletons.push(e),es.TimingTools.SetImmediate(()=>{this.onNewSkeletonAddedObservable.notifyObservers(e)}))}addParticleSystem(e){this._blockEntityCollection||(this.particleSystems.push(e),es.TimingTools.SetImmediate(()=>{this.onNewParticleSystemAddedObservable.notifyObservers(e)}))}addAnimation(e){this._blockEntityCollection||this.animations.push(e)}addAnimationGroup(e){this._blockEntityCollection||(this.animationGroups.push(e),es.TimingTools.SetImmediate(()=>{this.onNewAnimationGroupAddedObservable.notifyObservers(e)}))}addMultiMaterial(e){this._blockEntityCollection||(this.multiMaterials.push(e),es.TimingTools.SetImmediate(()=>{this.onNewMultiMaterialAddedObservable.notifyObservers(e)}))}addMaterial(e){this._blockEntityCollection||(e.getScene()!==this||-1===e._indexInSceneMaterialArray)&&(e._indexInSceneMaterialArray=this.materials.length,this.materials.push(e),es.TimingTools.SetImmediate(()=>{this.onNewMaterialAddedObservable.notifyObservers(e)}))}addMorphTargetManager(e){this._blockEntityCollection||this.morphTargetManagers.push(e)}addGeometry(e){this._blockEntityCollection||(this._geometriesByUniqueId&&(this._geometriesByUniqueId[e.uniqueId]=this.geometries.length),this.geometries.push(e))}addActionManager(e){this.actionManagers.push(e)}addTexture(e){this._blockEntityCollection||(this.textures.push(e),this.onNewTextureAddedObservable.notifyObservers(e))}addFrameGraph(e){this.frameGraphs.push(e),es.TimingTools.SetImmediate(()=>{this.onNewFrameGraphAddedObservable.notifyObservers(e)})}addObjectRenderer(e){this.objectRenderers.push(e),es.TimingTools.SetImmediate(()=>{this.onNewObjectRendererAddedObservable.notifyObservers(e)})}addPostProcess(e){this._blockEntityCollection||(this.postProcesses.push(e),es.TimingTools.SetImmediate(()=>{this.onNewPostProcessAddedObservable.notifyObservers(e)}))}addEffectLayer(e){this._blockEntityCollection||(this.effectLayers.push(e),es.TimingTools.SetImmediate(()=>{this.onNewEffectLayerAddedObservable.notifyObservers(e)}))}switchActiveCamera(e,t=!0){this._engine.getInputElement()&&(this.activeCamera&&this.activeCamera.detachControl(),this.activeCamera=e,t&&e.attachControl())}setActiveCameraById(e){let t=this.getCameraById(e);return t?(this.activeCamera=t,t):null}setActiveCameraByName(e){let t=this.getCameraByName(e);return t?(this.activeCamera=t,t):null}getAnimationGroupByName(e){for(let t=0;t<this.animationGroups.length;t++)if(this.animationGroups[t].name===e)return this.animationGroups[t];return null}_getMaterial(e,t){for(let e=0;e<this.materials.length;e++){let i=this.materials[e];if(t(i))return i}if(e)for(let e=0;e<this.multiMaterials.length;e++){let i=this.multiMaterials[e];if(t(i))return i}return null}getMaterialByUniqueID(e,t=!1){return this.getMaterialByUniqueId(e,t)}getMaterialByUniqueId(e,t=!1){return this._getMaterial(t,t=>t.uniqueId===e)}getMaterialById(e,t=!1){return this._getMaterial(t,t=>t.id===e)}getMaterialByName(e,t=!1){return this._getMaterial(t,t=>t.name===e)}getLastMaterialById(e,t=!1){for(let t=this.materials.length-1;t>=0;t--)if(this.materials[t].id===e)return this.materials[t];if(t){for(let t=this.multiMaterials.length-1;t>=0;t--)if(this.multiMaterials[t].id===e)return this.multiMaterials[t]}return null}getTextureByUniqueId(e){for(let t=0;t<this.textures.length;t++)if(this.textures[t].uniqueId===e)return this.textures[t];return null}getTextureByName(e){for(let t=0;t<this.textures.length;t++)if(this.textures[t].name===e)return this.textures[t];return null}getCameraById(e){for(let t=0;t<this.cameras.length;t++)if(this.cameras[t].id===e)return this.cameras[t];return null}getCameraByUniqueId(e){for(let t=0;t<this.cameras.length;t++)if(this.cameras[t].uniqueId===e)return this.cameras[t];return null}getCameraByName(e){for(let t=0;t<this.cameras.length;t++)if(this.cameras[t].name===e)return this.cameras[t];return null}getBoneById(e){for(let t=0;t<this.skeletons.length;t++){let i=this.skeletons[t];for(let t=0;t<i.bones.length;t++)if(i.bones[t].id===e)return i.bones[t]}return null}getBoneByName(e){for(let t=0;t<this.skeletons.length;t++){let i=this.skeletons[t];for(let t=0;t<i.bones.length;t++)if(i.bones[t].name===e)return i.bones[t]}return null}getLightByName(e){for(let t=0;t<this.lights.length;t++)if(this.lights[t].name===e)return this.lights[t];return null}getLightById(e){for(let t=0;t<this.lights.length;t++)if(this.lights[t].id===e)return this.lights[t];return null}getLightByUniqueId(e){for(let t=0;t<this.lights.length;t++)if(this.lights[t].uniqueId===e)return this.lights[t];return null}getParticleSystemById(e){for(let t=0;t<this.particleSystems.length;t++)if(this.particleSystems[t].id===e)return this.particleSystems[t];return null}getGeometryById(e){for(let t=0;t<this.geometries.length;t++)if(this.geometries[t].id===e)return this.geometries[t];return null}_getGeometryByUniqueId(e){if(this._geometriesByUniqueId){let t=this._geometriesByUniqueId[e];if(void 0!==t)return this.geometries[t]}else for(let t=0;t<this.geometries.length;t++)if(this.geometries[t].uniqueId===e)return this.geometries[t];return null}getFrameGraphByName(e){for(let t=0;t<this.frameGraphs.length;t++)if(this.frameGraphs[t].name===e)return this.frameGraphs[t];return null}pushGeometry(e,t){return!(!t&&this._getGeometryByUniqueId(e.uniqueId))&&(this.addGeometry(e),es.TimingTools.SetImmediate(()=>{this.onNewGeometryAddedObservable.notifyObservers(e)}),!0)}removeGeometry(e){let t;if(this._geometriesByUniqueId){if(void 0===(t=this._geometriesByUniqueId[e.uniqueId]))return!1}else if((t=this.geometries.indexOf(e))<0)return!1;if(t!==this.geometries.length-1){let e=this.geometries[this.geometries.length-1];e&&(this.geometries[t]=e,this._geometriesByUniqueId&&(this._geometriesByUniqueId[e.uniqueId]=t))}return this._geometriesByUniqueId&&(this._geometriesByUniqueId[e.uniqueId]=void 0),this.geometries.pop(),this.onGeometryRemovedObservable.notifyObservers(e),!0}getGeometries(){return this.geometries}getMeshById(e){for(let t=0;t<this.meshes.length;t++)if(this.meshes[t].id===e)return this.meshes[t];return null}getMeshesById(e){return this.meshes.filter(function(t){return t.id===e})}getTransformNodeById(e){for(let t=0;t<this.transformNodes.length;t++)if(this.transformNodes[t].id===e)return this.transformNodes[t];return null}getTransformNodeByUniqueId(e){for(let t=0;t<this.transformNodes.length;t++)if(this.transformNodes[t].uniqueId===e)return this.transformNodes[t];return null}getTransformNodesById(e){return this.transformNodes.filter(function(t){return t.id===e})}getMeshByUniqueId(e){for(let t=0;t<this.meshes.length;t++)if(this.meshes[t].uniqueId===e)return this.meshes[t];return null}getLastMeshById(e){for(let t=this.meshes.length-1;t>=0;t--)if(this.meshes[t].id===e)return this.meshes[t];return null}getLastTransformNodeById(e){for(let t=this.transformNodes.length-1;t>=0;t--)if(this.transformNodes[t].id===e)return this.transformNodes[t];return null}getLastEntryById(e){let t;for(t=this.meshes.length-1;t>=0;t--)if(this.meshes[t].id===e)return this.meshes[t];for(t=this.transformNodes.length-1;t>=0;t--)if(this.transformNodes[t].id===e)return this.transformNodes[t];for(t=this.cameras.length-1;t>=0;t--)if(this.cameras[t].id===e)return this.cameras[t];for(t=this.lights.length-1;t>=0;t--)if(this.lights[t].id===e)return this.lights[t];for(t=this.skeletons.length-1;t>=0;t--){let i=this.skeletons[t];for(let t=i.bones.length-1;t>=0;t--)if(i.bones[t].id===e)return i.bones[t]}return null}getNodeById(e){let t=this.getMeshById(e);if(t)return t;let i=this.getTransformNodeById(e);if(i)return i;let s=this.getLightById(e);if(s)return s;let r=this.getCameraById(e);if(r)return r;let n=this.getBoneById(e);return n||null}getNodeByName(e){let t=this.getMeshByName(e);if(t)return t;let i=this.getTransformNodeByName(e);if(i)return i;let s=this.getLightByName(e);if(s)return s;let r=this.getCameraByName(e);if(r)return r;let n=this.getBoneByName(e);return n||null}getMeshByName(e){for(let t=0;t<this.meshes.length;t++)if(this.meshes[t].name===e)return this.meshes[t];return null}getTransformNodeByName(e){for(let t=0;t<this.transformNodes.length;t++)if(this.transformNodes[t].name===e)return this.transformNodes[t];return null}getLastSkeletonById(e){for(let t=this.skeletons.length-1;t>=0;t--)if(this.skeletons[t].id===e)return this.skeletons[t];return null}getSkeletonByUniqueId(e){for(let t=0;t<this.skeletons.length;t++)if(this.skeletons[t].uniqueId===e)return this.skeletons[t];return null}getSkeletonById(e){for(let t=0;t<this.skeletons.length;t++)if(this.skeletons[t].id===e)return this.skeletons[t];return null}getSkeletonByName(e){for(let t=0;t<this.skeletons.length;t++)if(this.skeletons[t].name===e)return this.skeletons[t];return null}getMorphTargetManagerById(e){for(let t=0;t<this.morphTargetManagers.length;t++)if(this.morphTargetManagers[t].uniqueId===e)return this.morphTargetManagers[t];return null}getMorphTargetById(e){for(let t=0;t<this.morphTargetManagers.length;++t){let i=this.morphTargetManagers[t];for(let t=0;t<i.numTargets;++t){let s=i.getTarget(t);if(s.id===e)return s}}return null}getMorphTargetByName(e){for(let t=0;t<this.morphTargetManagers.length;++t){let i=this.morphTargetManagers[t];for(let t=0;t<i.numTargets;++t){let s=i.getTarget(t);if(s.name===e)return s}}return null}getPostProcessByName(e){for(let t=0;t<this.postProcesses.length;++t){let i=this.postProcesses[t];if(i.name===e)return i}return null}isActiveMesh(e){return -1!==this._activeMeshes.indexOf(e)}get uid(){return this._uid||(this._uid=ei.Tools.RandomId()),this._uid}addExternalData(e,t){return this._externalData||(this._externalData=new eo.StringDictionary),this._externalData.add(e,t)}getExternalData(e){return this._externalData?this._externalData.get(e):null}getOrAddExternalDataWithFactory(e,t){return this._externalData||(this._externalData=new eo.StringDictionary),this._externalData.getOrAddWithFactory(e,t)}removeExternalData(e){return this._externalData.remove(e)}_evaluateSubMesh(e,t,i,s){if(s||e.isInFrustum(this._frustumPlanes)){for(let i of this._evaluateSubMeshStage)i.action(t,e);let i=e.getMaterial();null!=i&&(i.hasRenderTargetTextures&&null!=i.getRenderTargetTextures&&-1===this._processedMaterials.indexOf(i)&&(this._processedMaterials.push(i),this._materialsRenderTargets.concatWithNoDuplicate(i.getRenderTargetTextures())),this._renderingManager.dispatch(e,t,i))}}freeProcessedMaterials(){this._processedMaterials.dispose()}get blockfreeActiveMeshesAndRenderingGroups(){return this._preventFreeActiveMeshesAndRenderingGroups}set blockfreeActiveMeshesAndRenderingGroups(e){this._preventFreeActiveMeshesAndRenderingGroups!==e&&(e&&(this.freeActiveMeshes(),this.freeRenderingGroups()),this._preventFreeActiveMeshesAndRenderingGroups=e)}freeActiveMeshes(){if(!this.blockfreeActiveMeshesAndRenderingGroups&&(this._activeMeshes.dispose(),this.activeCamera&&this.activeCamera._activeMeshes&&this.activeCamera._activeMeshes.dispose(),this.activeCameras))for(let e=0;e<this.activeCameras.length;e++){let t=this.activeCameras[e];t&&t._activeMeshes&&t._activeMeshes.dispose()}}freeRenderingGroups(){if(!this.blockfreeActiveMeshesAndRenderingGroups&&(this._renderingManager&&this._renderingManager.freeRenderingGroups(),this.textures))for(let e=0;e<this.textures.length;e++){let t=this.textures[e];t&&t.renderList&&t.freeRenderingGroups()}}_isInIntermediateRendering(){return this._intermediateRendering}freezeActiveMeshes(e=!1,t,i,s=!0,r=!1){if(this.frameGraph){this._renderWithFrameGraph(!0,!1,!0);let n=this.frameGraph.getTasksByClassName(["FrameGraphObjectRendererTask","FrameGraphGeometryRendererTask"]);for(let e of n)e.objectRenderer._freezeActiveMeshes(s);return this._freezeActiveMeshesCancel=(0,es._RetryWithInterval)(()=>{let e=!0,t=!0;for(let i of n)e&&(e=i.objectRenderer._isFrozen),t&&(t=null!==i.objectRenderer._freezeActiveMeshesCancel);if(e)return!0;if(!t)throw Error("Freezing active meshes was cancelled");return!1},()=>{this._freezeActiveMeshesCancel=null,this._activeMeshesFrozen=!0,this._activeMeshesFrozenButKeepClipping=r,this._skipEvaluateActiveMeshesCompletely=e,t?.()},(e,t)=>{if(this._freezeActiveMeshesCancel=null,this.unfreezeActiveMeshes(),t){let t="Scene: Timeout while waiting for meshes to be frozen.";i?i(t):(ek.Logger.Error(t),e&&ek.Logger.Error(e))}else{let t="Scene: An unexpected error occurred while trying to freeze active meshes.";i?i(t):(ek.Logger.Error(t),e&&(ek.Logger.Error(e),e.stack&&ek.Logger.Error(e.stack)))}}),this}return this.executeWhenReady(()=>{if(!this.activeCamera){i&&i("No active camera found");return}if(this._frustumPlanes||this.updateTransformMatrix(),this._evaluateActiveMeshes(),this._activeMeshesFrozen=!0,this._activeMeshesFrozenButKeepClipping=r,this._skipEvaluateActiveMeshesCompletely=e,s)for(let e=0;e<this._activeMeshes.length;e++)this._activeMeshes.data[e]._freeze();t&&t()}),this}unfreezeActiveMeshes(){for(let e=0;e<this.meshes.length;e++){let t=this.meshes[e];t._internalAbstractMeshDataInfo&&(t._internalAbstractMeshDataInfo._isActive=!1)}if(this._freezeActiveMeshesCancel?.(),this._freezeActiveMeshesCancel=null,this.frameGraph)for(let e of this.frameGraph.getTasksByClassName(["FrameGraphObjectRendererTask","FrameGraphGeometryRendererTask"]))e.objectRenderer._unfreezeActiveMeshes();else for(let e=0;e<this._activeMeshes.length;e++)this._activeMeshes.data[e]._unFreeze();return this._activeMeshesFrozen=!1,this}_executeActiveContainerCleanup(e){(!this._engine.snapshotRendering||1!==this._engine.snapshotRenderingMode)&&this._activeMeshesFrozen&&this._activeMeshes.length||this.onBeforeRenderObservable.addOnce(()=>e.dispose())}_evaluateActiveMeshes(){if(this._engine.snapshotRendering&&1===this._engine.snapshotRenderingMode){this._activeMeshes.length>0&&(this.activeCamera?._activeMeshes.reset(),this._activeMeshes.reset(),this._renderingManager.reset(),this._processedMaterials.reset(),this._activeParticleSystems.reset(),this._activeSkeletons.reset(),this._softwareSkinnedMeshes.reset());return}if(this._activeMeshesFrozen&&this._activeMeshes.length){if(!this._skipEvaluateActiveMeshesCompletely){let e=this._activeMeshes.length;for(let t=0;t<e;t++)this._activeMeshes.data[t].computeWorldMatrix()}if(this._activeParticleSystems){let e=this._activeParticleSystems.length;for(let t=0;t<e;t++)this._activeParticleSystems.data[t].animate()}this._renderingManager.resetSprites();return}if(!this.activeCamera)return;for(let e of(this.onBeforeActiveMeshesEvaluationObservable.notifyObservers(this),this.activeCamera._activeMeshes.reset(),this._activeMeshes.reset(),this._renderingManager.reset(),this._processedMaterials.reset(),this._activeParticleSystems.reset(),this._activeSkeletons.reset(),this._softwareSkinnedMeshes.reset(),this._materialsRenderTargets.reset(),this._beforeEvaluateActiveMeshStage))e.action();let e=this.getActiveMeshCandidates(),t=e.length;for(let i=0;i<t;i++){let t=e.data[i],s=t._internalAbstractMeshDataInfo._currentLOD.get(this.activeCamera);if(s?s[1]=-1:(s=[t,-1],t._internalAbstractMeshDataInfo._currentLOD.set(this.activeCamera,s)),t.isBlocked||(this._totalVertices.addCount(t.getTotalVertices(),!1),!t.isReady()||!t.isEnabled()||t.scaling.hasAZeroComponent))continue;t.computeWorldMatrix(),t.actionManager&&t.actionManager.hasSpecificTriggers2(12,13)&&this._meshesForIntersections.pushNoDuplicate(t);let r=this.customLODSelector?this.customLODSelector(t,this.activeCamera):t.getLOD(this.activeCamera);if(s[0]=r,s[1]=this._frameId,null!=r&&(r!==t&&0!==r.billboardMode&&r.computeWorldMatrix(),t._preActivate(),t.isVisible&&t.visibility>0&&(t.layerMask&this.activeCamera.layerMask)!=0&&(this._skipFrustumClipping||t.alwaysSelectAsActiveMesh||t.isInFrustum(this._frustumPlanes)))){for(let e of(this._activeMeshes.push(t),this.activeCamera._activeMeshes.push(t),r!==t&&r._activate(this._renderId,!1),this._preActiveMeshStage))e.action(t);t._activate(this._renderId,!1)&&(t.isAnInstance?t._internalAbstractMeshDataInfo._actAsRegularMesh&&(r=t):r._internalAbstractMeshDataInfo._onlyForInstances=!1,r._internalAbstractMeshDataInfo._isActive=!0,this._activeMesh(t,r)),t._postActivate()}}if(this.onAfterActiveMeshesEvaluationObservable.notifyObservers(this),this.particlesEnabled){this.onBeforeParticlesRenderingObservable.notifyObservers(this);for(let e=0;e<this.particleSystems.length;e++){let t=this.particleSystems[e];if(!t.isStarted()||!t.emitter)continue;let i=t.emitter;(!i.position||i.isEnabled())&&(this._activeParticleSystems.push(t),t.animate(),this._renderingManager.dispatchParticles(t))}this.onAfterParticlesRenderingObservable.notifyObservers(this)}}_prepareSkeleton(e){this._skeletonsEnabled&&e.skeleton&&(this._activeSkeletons.pushNoDuplicate(e.skeleton)&&(e.skeleton.prepare(),this._activeBones.addCount(e.skeleton.bones.length,!1)),!e.computeBonesUsingShaders&&this._softwareSkinnedMeshes.pushNoDuplicate(e)&&this.frameGraph&&e.applySkeleton(e.skeleton))}_activeMesh(e,t){this._prepareSkeleton(t);let i=e.hasInstances||e.isAnInstance||this.dispatchAllSubMeshesOfActiveMeshes||this._skipFrustumClipping||t.alwaysSelectAsActiveMesh;if(t&&t.subMeshes&&t.subMeshes.length>0){let s=this.getActiveSubMeshCandidates(t),r=s.length;i=i||1===r;for(let n=0;n<r;n++){let r=s.data[n];this._evaluateSubMesh(r,t,e,i)}}}updateTransformMatrix(e){let t=this.activeCamera;if(t)if(t._renderingMultiview){let i=t._rigCameras[0],s=t._rigCameras[1];this.setTransformMatrix(i.getViewMatrix(),i.getProjectionMatrix(e),s.getViewMatrix(),s.getProjectionMatrix(e))}else this.setTransformMatrix(t.getViewMatrix(),t.getProjectionMatrix(e))}_bindFrameBuffer(e,t=!0){!this._useCurrentFrameBuffer&&(e&&e._multiviewTexture?e._multiviewTexture._bindFrameBuffer():e&&e.outputRenderTarget?e.outputRenderTarget._bindFrameBuffer():this._engine._currentFrameBufferIsDefaultFrameBuffer()||this._engine.restoreDefaultFramebuffer()),t&&this._clearFrameBuffer(e)}_clearFrameBuffer(e){if(e&&e._multiviewTexture);else if(e&&e.outputRenderTarget&&!e._renderingMultiview){let t=e.outputRenderTarget;t.onClearObservable.hasObservers()?t.onClearObservable.notifyObservers(this._engine):t.skipInitialClear||e.isRightCamera||(this.autoClear&&this._engine.clear(t.clearColor||this._clearColor,!t._cleared,!0,!0),t._cleared=!0)}else this._defaultFrameBufferCleared?this._engine.clear(null,!1,!0,!0):(this._defaultFrameBufferCleared=!0,this._clear())}_renderForCamera(e,t,i=!0){if(e&&e._skipRendering)return;let s=this._engine;if(this._activeCamera=e,!this.activeCamera)throw Error("Active camera not set");if(s.setViewport(this.activeCamera.viewport),this.resetCachedMaterial(),this._renderId++,!this.prePass&&i){let t=!0;e._renderingMultiview&&e.outputRenderTarget&&(t=e.outputRenderTarget.skipInitialClear,this.autoClear&&(this._defaultFrameBufferCleared=!1,e.outputRenderTarget.skipInitialClear=!1)),this._bindFrameBuffer(this._activeCamera),e._renderingMultiview&&e.outputRenderTarget&&(e.outputRenderTarget.skipInitialClear=t)}this.updateTransformMatrix(),this.onBeforeCameraRenderObservable.notifyObservers(this.activeCamera),this._engine.currentRenderPassId=e.outputRenderTarget?.renderPassId??e.renderPassId??0,this._evaluateActiveMeshes();for(let e=0;e<this._softwareSkinnedMeshes.length;e++){let t=this._softwareSkinnedMeshes.data[e];t.applySkeleton(t.skeleton)}for(let i of(this.onBeforeRenderTargetsRenderObservable.notifyObservers(this),this._renderTargets.concatWithNoDuplicate(this._materialsRenderTargets),e.customRenderTargets&&e.customRenderTargets.length>0&&this._renderTargets.concatWithNoDuplicate(e.customRenderTargets),t&&t.customRenderTargets&&t.customRenderTargets.length>0&&this._renderTargets.concatWithNoDuplicate(t.customRenderTargets),this.environmentTexture&&this.environmentTexture.isRenderTarget&&this._renderTargets.pushNoDuplicate(this.environmentTexture),this._gatherActiveCameraRenderTargetsStage))i.action(this._renderTargets);let r=!1;if(this.renderTargetsEnabled){let e;if(this._intermediateRendering=!0,this._renderTargets.length>0){ei.Tools.StartPerformanceCounter("Render targets",this._renderTargets.length>0);let t=this.getBoundingBoxRenderer?.();for(let i=0;i<this._renderTargets.length;i++){let s=this._renderTargets.data[i];if(s._shouldRender()){this._renderId++;let i=s.activeCamera&&s.activeCamera!==this.activeCamera;t&&!e&&((e=t.renderList.length>0?t.renderList.data.slice():[]).length=t.renderList.length),s.render(i,this.dumpNextRenderTargets),r=!0}}t&&e&&(t.renderList.data=e,t.renderList.length=e.length),ei.Tools.EndPerformanceCounter("Render targets",this._renderTargets.length>0),this._renderId++}if(this._cameraDrawRenderTargetStage.length>0){let t=this.getBoundingBoxRenderer?.();for(let i of(t&&!e&&((e=t.renderList.length>0?t.renderList.data.slice():[]).length=t.renderList.length),this._cameraDrawRenderTargetStage))r=i.action(this.activeCamera)||r;t&&e&&(t.renderList.data=e,t.renderList.length=e.length)}this._intermediateRendering=!1}for(let t of(r&&!this.prePass&&(this._bindFrameBuffer(this._activeCamera,!1),this.updateTransformMatrix()),this.onAfterRenderTargetsRenderObservable.notifyObservers(this),!this.postProcessManager||e._multiviewTexture||this.prePass||this.postProcessManager._prepareFrame(),this._beforeCameraDrawStage))t.action(this.activeCamera);this.onBeforeDrawPhaseObservable.notifyObservers(this);let n=s.snapshotRendering&&1===s.snapshotRenderingMode;for(let e of(n&&this.finalizeSceneUbo(),this._renderingManager.render(null,null,!0,!n),this.onAfterDrawPhaseObservable.notifyObservers(this),this._afterCameraDrawStage))e.action(this.activeCamera);if(this.postProcessManager&&!e._multiviewTexture){let t=e.outputRenderTarget?e.outputRenderTarget.renderTarget:void 0;this.postProcessManager._finalizeFrame(e.isIntermediate,t)}for(let e of this._afterCameraPostProcessStage)e.action(this.activeCamera);this._renderTargets.reset(),this.onAfterCameraRenderObservable.notifyObservers(this.activeCamera)}_processSubCameras(e,t=!0){if(0===e.cameraRigMode||e._renderingMultiview){e._renderingMultiview&&!this._multiviewSceneUbo&&this._createMultiviewUbo(),this._renderForCamera(e,void 0,t),this.onAfterRenderCameraObservable.notifyObservers(e);return}if(e._useMultiviewToSingleView)this._renderMultiviewToSingleView(e);else{this.onBeforeCameraRenderObservable.notifyObservers(e);for(let t=0;t<e._rigCameras.length;t++)this._renderForCamera(e._rigCameras[t],e)}this._activeCamera=e,this.updateTransformMatrix(),this.onAfterRenderCameraObservable.notifyObservers(e)}_checkIntersections(){for(let e=0;e<this._meshesForIntersections.length;e++){let t=this._meshesForIntersections.data[e];if(t.actionManager)for(let e=0;t.actionManager&&e<t.actionManager.actions.length;e++){let i=t.actionManager.actions[e];if(12===i.trigger||13===i.trigger){let e=i.getTriggerParameter(),s=e.mesh?e.mesh:e,r=s.intersectsMesh(t,e.usePreciseIntersection),n=t._intersectionsInProgress.indexOf(s);r&&-1===n?12===i.trigger?(i._executeCurrent(eg.ActionEvent.CreateNew(t,void 0,s)),t._intersectionsInProgress.push(s)):13===i.trigger&&t._intersectionsInProgress.push(s):!r&&n>-1&&(13===i.trigger&&i._executeCurrent(eg.ActionEvent.CreateNew(t,void 0,s)),t.actionManager.hasSpecificTrigger(13,e=>s===(e.mesh?e.mesh:e))&&13!==i.trigger||t._intersectionsInProgress.splice(n,1))}}}}_advancePhysicsEngineStep(e){}_animate(e){}animate(){if(this._engine.isDeterministicLockStep()){let e=Math.max(ex.MinDeltaTime,Math.min(this._engine.getDeltaTime(),ex.MaxDeltaTime))+this._timeAccumulator,t=this._engine.getTimeStep(),i=1e3/t/1e3,s=0,r=this._engine.getLockstepMaxSteps(),n=Math.floor(e/t);for(n=Math.min(n,r);e>0&&s<n;)this.onBeforeStepObservable.notifyObservers(this),this._animationRatio=t*i,this._animate(t),this.onAfterAnimationsObservable.notifyObservers(this),this.physicsEnabled&&this._advancePhysicsEngineStep(t),this.onAfterStepObservable.notifyObservers(this),this._currentStepId++,s++,e-=t;this._timeAccumulator=e<0?0:e}else{let e=this.useConstantAnimationDeltaTime?16:Math.max(ex.MinDeltaTime,Math.min(this._engine.getDeltaTime(),ex.MaxDeltaTime));this._animationRatio=.06*e,this._animate(),this.onAfterAnimationsObservable.notifyObservers(this),this.physicsEnabled&&this._advancePhysicsEngineStep(e)}}_clear(){(this.autoClearDepthAndStencil||this.autoClear)&&this._engine.clear(this._clearColor,this.autoClear||this.forceWireframe||this.forcePointsCloud,this.autoClearDepthAndStencil,this.autoClearDepthAndStencil)}_checkCameraRenderTarget(e){if(e?.outputRenderTarget&&!e?.isRigCamera&&(e.outputRenderTarget._cleared=!1),e?.rigCameras?.length)for(let t=0;t<e.rigCameras.length;++t){let i=e.rigCameras[t].outputRenderTarget;i&&(i._cleared=!1)}}resetDrawCache(e){if(this.meshes)for(let t of this.meshes)t.resetDrawCache(e)}_renderWithFrameGraph(e=!0,t=!1,i=!1){if(this.activeCamera=null,this.activeCameras=null,e){for(let e of this.cameras)if(e.update(),0!==e.cameraRigMode)for(let t=0;t<e._rigCameras.length;t++)e._rigCameras[t].update()}this.onBeforeRenderObservable.notifyObservers(this),this.onBeforeRenderTargetsRenderObservable.notifyObservers(this),this._renderTargets.reset();let s=this._frameGraph?.findMainCamera()??null;if(this.renderTargetsEnabled){this.environmentTexture&&this.environmentTexture.isRenderTarget&&this._renderTargets.pushNoDuplicate(this.environmentTexture),this._renderTargets.concatWithNoDuplicate(this.customRenderTargets),ei.Tools.StartPerformanceCounter("Custom render targets",this._renderTargets.length>0);for(let e=0;e<this._renderTargets.length;e++){let t=this._renderTargets.data[e],i=t.activeCamera||s;this._renderRenderTarget(t,i,!0,this.dumpNextRenderTargets)}ei.Tools.EndPerformanceCounter("Custom render targets",this._renderTargets.length>0),this._renderId++}for(let e of(this.onAfterRenderTargetsRenderObservable.notifyObservers(this),this._beforeClearStage))e.action();if(this._engine.snapshotRendering&&1===this._engine.snapshotRenderingMode)this._activeParticleSystems.reset(),this._activeSkeletons.reset(),this._softwareSkinnedMeshes.reset();else{let e=this.getActiveMeshCandidates(),t=e.length;if(this._activeMeshesFrozen){if(!this._skipEvaluateActiveMeshesCompletely)for(let i=0;i<t;i++){let t=e.data[i];t._internalAbstractMeshDataInfo._wasActiveLastFrame&&t.computeWorldMatrix()}if(this.particlesEnabled){let e=this._activeParticleSystems.length;for(let t=0;t<e;t++)this._activeParticleSystems.data[t].animate()}}else{this._activeParticleSystems.reset(),this._activeSkeletons.reset(),this._softwareSkinnedMeshes.reset();for(let s=0;s<t;s++){let t=e.data[s];t._internalAbstractMeshDataInfo._wasActiveLastFrame=!1,!t.isBlocked&&(this._totalVertices.addCount(t.getTotalVertices(),!1),t.isReady()&&t.isEnabled()&&!t.scaling.hasAZeroComponent&&(t.computeWorldMatrix(i),t.actionManager&&t.actionManager.hasSpecificTriggers2(12,13)&&this._meshesForIntersections.pushNoDuplicate(t)))}if(this.particlesEnabled)for(let e=0;e<this.particleSystems.length;e++){let t=this.particleSystems[e];if(!t.isStarted()||!t.emitter)continue;let i=t.emitter;(!i.position||i.isEnabled())&&(this._activeParticleSystems.push(t),t.animate())}}}this.frameGraph?.execute()}_renderRenderTarget(e,t,i=!1,s=!1){if(this._intermediateRendering=!0,e._shouldRender()){if(this._renderId++,this.activeCamera=t,!this.activeCamera)throw Error("Active camera not set");this._engine.setViewport(this.activeCamera.viewport),this.updateTransformMatrix(),e.render(i,s)}this._intermediateRendering=!1}render(e=!0,t=!1){if(!this.isDisposed){if(this.onReadyObservable.hasObservers()&&null===this._executeWhenReadyTimeoutId&&this._checkIsReady(),e_.FloatingOriginCurrentScene.getScene=this._getFloatingOriginScene,this._frameId++,this._defaultFrameBufferCleared=!1,this._checkCameraRenderTarget(this.activeCamera),this.activeCameras?.length)for(let e of this.activeCameras)this._checkCameraRenderTarget(e);for(let e of(this._registerTransientComponents(),this._activeParticles.fetchNewFrame(),this._totalVertices.fetchNewFrame(),this._activeIndices.fetchNewFrame(),this._activeBones.fetchNewFrame(),this._meshesForIntersections.reset(),this.resetCachedMaterial(),this.onBeforeAnimationsObservable.notifyObservers(this),this.actionManager&&this.actionManager.processTrigger(11),t||this.animate(),this._beforeCameraUpdateStage))e.action();if(e){if(this.activeCameras&&this.activeCameras.length>0)for(let e=0;e<this.activeCameras.length;e++){let t=this.activeCameras[e];if(t.update(),0!==t.cameraRigMode)for(let e=0;e<t._rigCameras.length;e++)t._rigCameras[e].update()}else if(this.activeCamera&&(this.activeCamera.update(),0!==this.activeCamera.cameraRigMode))for(let e=0;e<this.activeCamera._rigCameras.length;e++)this.activeCamera._rigCameras[e].update()}if(this.customRenderFunction)this._renderId++,this._engine.currentRenderPassId=0,this.customRenderFunction(e,t);else{this.onBeforeRenderObservable.notifyObservers(this),this.onBeforeRenderTargetsRenderObservable.notifyObservers(this);let e=this.activeCameras?.length?this.activeCameras[0]:this.activeCamera;if(this.renderTargetsEnabled){ei.Tools.StartPerformanceCounter("Custom render targets",this.customRenderTargets.length>0);for(let t=0;t<this.customRenderTargets.length;t++){let i=this.customRenderTargets[t],s=i.activeCamera||this.activeCamera;this._renderRenderTarget(i,s,e!==s,this.dumpNextRenderTargets)}ei.Tools.EndPerformanceCounter("Custom render targets",this.customRenderTargets.length>0),this._renderId++}for(let t of(this._engine.currentRenderPassId=e?.renderPassId??0,this.activeCamera=e,this._activeCamera&&22!==this._activeCamera.cameraRigMode&&!this.prePass&&this._bindFrameBuffer(this._activeCamera,!1),this.onAfterRenderTargetsRenderObservable.notifyObservers(this),this._beforeClearStage))t.action();for(let e of(this._clearFrameBuffer(this.activeCamera),this._gatherRenderTargetsStage))e.action(this._renderTargets);if(this.activeCameras&&this.activeCameras.length>0)for(let e=0;e<this.activeCameras.length;e++)this._processSubCameras(this.activeCameras[e],e>0);else{if(!this.activeCamera)throw Error("No camera defined");this._processSubCameras(this.activeCamera,!!this.activeCamera.outputRenderTarget)}}for(let e of(this._checkIntersections(),this._afterRenderStage))e.action();if(this.afterRender&&this.afterRender(),this.onAfterRenderObservable.notifyObservers(this),this._toBeDisposed.length){for(let e=0;e<this._toBeDisposed.length;e++){let t=this._toBeDisposed[e];t&&t.dispose()}this._toBeDisposed.length=0}this.dumpNextRenderTargets&&(this.dumpNextRenderTargets=!1),this._activeBones.addCount(0,!0),this._activeIndices.addCount(0,!0),this._activeParticles.addCount(0,!0),this._engine.restoreDefaultFramebuffer()}}freezeMaterials(){for(let e=0;e<this.materials.length;e++)this.materials[e].freeze()}unfreezeMaterials(){for(let e=0;e<this.materials.length;e++)this.materials[e].unfreeze()}dispose(){if(this.isDisposed)return;if(this.beforeRender=null,this.afterRender=null,this.metadata=null,this.skeletons.length=0,this.morphTargetManagers.length=0,this._transientComponents.length=0,this._isReadyForMeshStage.clear(),this._beforeEvaluateActiveMeshStage.clear(),this._evaluateSubMeshStage.clear(),this._preActiveMeshStage.clear(),this._cameraDrawRenderTargetStage.clear(),this._beforeCameraDrawStage.clear(),this._beforeRenderTargetDrawStage.clear(),this._beforeRenderingGroupDrawStage.clear(),this._beforeRenderingMeshStage.clear(),this._afterRenderingMeshStage.clear(),this._afterRenderingGroupDrawStage.clear(),this._afterCameraDrawStage.clear(),this._afterRenderTargetDrawStage.clear(),this._afterRenderStage.clear(),this._beforeCameraUpdateStage.clear(),this._beforeClearStage.clear(),this._gatherRenderTargetsStage.clear(),this._gatherActiveCameraRenderTargetsStage.clear(),this._pointerMoveStage.clear(),this._pointerDownStage.clear(),this._pointerUpStage.clear(),this._isReadyChecks.length=0,this.importedMeshesFiles=[],this._activeAnimatables&&(0,ey._IsSideEffectImplemented)(this.stopAllAnimations)){for(let e of this._activeAnimatables)e.onAnimationEndObservable.clear(),e.onAnimationEnd=null;this.stopAllAnimations()}for(let e of(this.resetCachedMaterial(),this.activeCamera&&(this.activeCamera._activeMeshes.dispose(),this.activeCamera=null),this.activeCameras=null,this._activeMeshes.dispose(),this._renderingManager.dispose(),this._processedMaterials.dispose(),this._activeParticleSystems.dispose(),this._activeSkeletons.dispose(),this._softwareSkinnedMeshes.dispose(),this._renderTargets.dispose(),this._materialsRenderTargets.dispose(),this._registeredForLateAnimationBindings.dispose(),this._meshesForIntersections.dispose(),this._toBeDisposed.length=0,this._activeRequests.slice()))e.abort();this._activeRequests.length=0;try{this.onDisposeObservable.notifyObservers(this)}catch(e){ek.Logger.Error("An error occurred while calling onDisposeObservable!",e)}if(this.detachControl(),this._engine.getInputElement?.())for(let e=0;e<this.cameras.length;e++)this.cameras[e].detachControl();this._disposeList(this.animationGroups),this._disposeList(this.lights),this._defaultMaterial&&this._defaultMaterial.dispose(),this._disposeList(this.multiMaterials),this._disposeList(this.materials),this._disposeList(this.meshes,e=>e.dispose(!0)),this._disposeList(this.transformNodes,e=>e.dispose(!0));let e=this.cameras;this._disposeList(e),this._disposeList(this.particleSystems),this._disposeList(this.postProcesses),this._disposeList(this.textures),this._disposeList(this.morphTargetManagers),this._disposeList(this.frameGraphs),this._sceneUbo.dispose(),this._multiviewSceneUbo&&this._multiviewSceneUbo.dispose(),this.postProcessManager.dispose(),this._disposeList(this._components);let t=this._engine.scenes.indexOf(this);if(t>-1&&this._engine.scenes.splice(t,1),this._floatingOriginScene=void 0,0===this._engine.scenes.length&&(0,e_.ResetMatrixFunctions)(),eb.EngineStore._LastCreatedScene===this){eb.EngineStore._LastCreatedScene=null;let e=eb.EngineStore.Instances.length-1;for(;e>=0;){let t=eb.EngineStore.Instances[e];if(t.scenes.length>0){eb.EngineStore._LastCreatedScene=t.scenes[this._engine.scenes.length-1];break}e--}}(t=this._engine._virtualScenes.indexOf(this))>-1&&this._engine._virtualScenes.splice(t,1),this._engine.wipeCaches(!0),this.onDisposeObservable.clear(),this.onBeforeRenderObservable.clear(),this.onAfterRenderObservable.clear(),this.onBeforeRenderTargetsRenderObservable.clear(),this.onAfterRenderTargetsRenderObservable.clear(),this.onAfterStepObservable.clear(),this.onBeforeStepObservable.clear(),this.onBeforeActiveMeshesEvaluationObservable.clear(),this.onAfterActiveMeshesEvaluationObservable.clear(),this.onBeforeParticlesRenderingObservable.clear(),this.onAfterParticlesRenderingObservable.clear(),this.onBeforeDrawPhaseObservable.clear(),this.onAfterDrawPhaseObservable.clear(),this.onBeforeAnimationsObservable.clear(),this.onAfterAnimationsObservable.clear(),this.onDataLoadedObservable.clear(),this.onBeforeRenderingGroupObservable.clear(),this.onAfterRenderingGroupObservable.clear(),this.onMeshImportedObservable.clear(),this.onBeforeCameraRenderObservable.clear(),this.onAfterCameraRenderObservable.clear(),this.onAfterRenderCameraObservable.clear(),this.onReadyObservable.clear(),this.onNewCameraAddedObservable.clear(),this.onCameraRemovedObservable.clear(),this.onNewLightAddedObservable.clear(),this.onLightRemovedObservable.clear(),this.onNewGeometryAddedObservable.clear(),this.onGeometryRemovedObservable.clear(),this.onNewTransformNodeAddedObservable.clear(),this.onTransformNodeRemovedObservable.clear(),this.onNewMeshAddedObservable.clear(),this.onMeshRemovedObservable.clear(),this.onNewSkeletonAddedObservable.clear(),this.onSkeletonRemovedObservable.clear(),this.onNewMaterialAddedObservable.clear(),this.onNewMultiMaterialAddedObservable.clear(),this.onMaterialRemovedObservable.clear(),this.onMultiMaterialRemovedObservable.clear(),this.onNewTextureAddedObservable.clear(),this.onTextureRemovedObservable.clear(),this.onNewFrameGraphAddedObservable.clear(),this.onFrameGraphRemovedObservable.clear(),this.onNewObjectRendererAddedObservable.clear(),this.onObjectRendererRemovedObservable.clear(),this.onPrePointerObservable.clear(),this.onPointerObservable.clear(),this.onPreKeyboardObservable.clear(),this.onKeyboardObservable.clear(),this.onActiveCameraChanged.clear(),this.onScenePerformancePriorityChangedObservable.clear(),this.onClearColorChangedObservable.clear(),this.onEnvironmentTextureChangedObservable.clear(),this.onMeshUnderPointerUpdatedObservable.clear(),this._isDisposed=!0}_disposeList(e,t){let i=e.slice(0);for(let e of(t=t??(e=>e.dispose()),i))t(e);e.length=0}get isDisposed(){return this._isDisposed}clearCachedVertexData(){for(let e=0;e<this.meshes.length;e++){let t=this.meshes[e].geometry;t&&t.clearCachedData()}}cleanCachedTextureBuffer(){for(let e of this.textures)e._buffer&&(e._buffer=null)}getWorldExtends(e){let t=new el.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),i=new el.Vector3(-Number.MAX_VALUE,-Number.MAX_VALUE,-Number.MAX_VALUE);for(let s of(e=e||(()=>!0),this.meshes.filter(e))){if(s.computeWorldMatrix(!0),!s.subMeshes||0===s.subMeshes.length||s.infiniteDistance)continue;let e=s.getBoundingInfo(),r=e.boundingBox.minimumWorld,n=e.boundingBox.maximumWorld;el.Vector3.CheckExtends(r,t,i),el.Vector3.CheckExtends(n,t,i)}return t.x===Number.MAX_VALUE?{min:el.Vector3.Zero(),max:el.Vector3.Zero()}:{min:t,max:i}}createPickingRay(e,t,i,s,r=!1){throw(0,ey._WarnImport)("Ray")}createPickingRayToRef(e,t,i,s,r,n=!1,a=!1){throw(0,ey._WarnImport)("Ray")}createPickingRayInCameraSpace(e,t,i){throw(0,ey._WarnImport)("Ray")}createPickingRayInCameraSpaceToRef(e,t,i,s){throw(0,ey._WarnImport)("Ray")}pick(e,t,i,s,r,n){let a=(0,ey._WarnImport)("Ray",!0);return a&&ek.Logger.Warn(a),new eu.PickingInfo}pickWithBoundingInfo(e,t,i,s,r){let n=(0,ey._WarnImport)("Ray",!0);return n&&ek.Logger.Warn(n),new eu.PickingInfo}pickWithRay(e,t,i,s){throw(0,ey._WarnImport)("Ray")}multiPick(e,t,i,s,r){throw(0,ey._WarnImport)("Ray")}multiPickWithRay(e,t,i){throw(0,ey._WarnImport)("Ray")}setPointerOverMesh(e,t,i){this._inputManager.setPointerOverMesh(e,t,i)}getPointerOverMesh(){return this._inputManager.getPointerOverMesh()}_rebuildGeometries(){for(let e of this.geometries)e._rebuild();for(let e of this.meshes)e._rebuild();for(let e of(this.postProcessManager&&this.postProcessManager._rebuild(),this._components))e.rebuild();for(let e of this.particleSystems)e.rebuild();if(this.spriteManagers)for(let e of this.spriteManagers)e.rebuild()}_rebuildTextures(){for(let e of this.textures)e._rebuild(!0);this.markAllMaterialsAsDirty(1)}_getByTags(e,t,i){if(void 0===t)return e;let s=[];for(let r in e){let n=e[r];eh.Tags&&eh.Tags.MatchesQuery(n,t)&&(!i||i(n))&&s.push(n)}return s}getMeshesByTags(e,t){return this._getByTags(this.meshes,e,t)}getCamerasByTags(e,t){return this._getByTags(this.cameras,e,t)}getLightsByTags(e,t){return this._getByTags(this.lights,e,t)}getMaterialByTags(e,t){return this._getByTags(this.materials,e,t).concat(this._getByTags(this.multiMaterials,e,t))}getTransformNodesByTags(e,t){return this._getByTags(this.transformNodes,e,t)}setRenderingOrder(e,t=null,i=null,s=null){this._renderingManager.setRenderingOrder(e,t,i,s)}setRenderingAutoClearDepthStencil(e,t,i=!0,s=!0){this._renderingManager.setRenderingAutoClearDepthStencil(e,t,i,s)}getAutoClearDepthStencilSetup(e){return this._renderingManager.getAutoClearDepthStencilSetup(e)}_forceBlockMaterialDirtyMechanism(e){this._blockMaterialDirtyMechanism=e}get blockMaterialDirtyMechanism(){return this._blockMaterialDirtyMechanism}set blockMaterialDirtyMechanism(e){this._blockMaterialDirtyMechanism!==e&&(this._blockMaterialDirtyMechanism=e,e||this.markAllMaterialsAsDirty(127))}markAllMaterialsAsDirty(e,t){if(!this._blockMaterialDirtyMechanism)for(let i of this.materials)(!t||t(i))&&i.markAsDirty(e)}_loadFile(e,t,i,s,r,n,a){let o=(0,eS.LoadFile)(e,t,i,s?this.offlineProvider:void 0,r,n,a);return this._activeRequests.push(o),o.onCompleteObservable.add(e=>{this._activeRequests.splice(this._activeRequests.indexOf(e),1)}),o}async _loadFileAsync(e,t,i,s,r){return await new Promise((n,a)=>{this._loadFile(e,e=>{n(e)},t,i,s,(e,t)=>{a(t)},r)})}async _loadDelayedFileAsync(e,t,i){this._delayedFileRequests||(this._delayedFileRequests=new Map);let s=`${e}|${t?"binary":"string"}`,r=this._delayedFileRequests.get(s);if(!r){let n=r=t?this._loadFileAsync(e,void 0,i,!0):this._loadFileAsync(e,void 0,i,!1);(async()=>{try{await n}catch{}this._delayedFileRequests?.delete(s)})(),this._delayedFileRequests.set(s,r)}return await r}_requestFile(e,t,i,s,r,n,a){let o=(0,eS.RequestFile)(e,t,i,s?this.offlineProvider:void 0,r,n,a);return this._activeRequests.push(o),o.onCompleteObservable.add(e=>{this._activeRequests.splice(this._activeRequests.indexOf(e),1)}),o}async _requestFileAsync(e,t,i,s,r){return await new Promise((n,a)=>{this._requestFile(e,e=>{n(e)},t,i,s,e=>{a(e)},r)})}_readFile(e,t,i,s,r){let n=(0,eS.ReadFile)(e,t,i,s,r);return this._activeRequests.push(n),n.onCompleteObservable.add(e=>{this._activeRequests.splice(this._activeRequests.indexOf(e),1)}),n}async _readFileAsync(e,t,i){return await new Promise((s,r)=>{this._readFile(e,e=>{s(e)},t,i,e=>{r(e)})})}getPerfCollector(){throw(0,ey._WarnImport)("performanceViewerSceneExtension")}setActiveCameraByID(e){return this.setActiveCameraById(e)}getMaterialByID(e){return this.getMaterialById(e)}getLastMaterialByID(e){return this.getLastMaterialById(e)}getTextureByUniqueID(e){return this.getTextureByUniqueId(e)}getCameraByID(e){return this.getCameraById(e)}getCameraByUniqueID(e){return this.getCameraByUniqueId(e)}getBoneByID(e){return this.getBoneById(e)}getLightByID(e){return this.getLightById(e)}getLightByUniqueID(e){return this.getLightByUniqueId(e)}getParticleSystemByID(e){return this.getParticleSystemById(e)}getGeometryByID(e){return this.getGeometryById(e)}getMeshByID(e){return this.getMeshById(e)}getMeshByUniqueID(e){return this.getMeshByUniqueId(e)}getLastMeshByID(e){return this.getLastMeshById(e)}getMeshesByID(e){return this.getMeshesById(e)}getTransformNodeByID(e){return this.getTransformNodeById(e)}getTransformNodeByUniqueID(e){return this.getTransformNodeByUniqueId(e)}getTransformNodesByID(e){return this.getTransformNodesById(e)}getNodeByID(e){return this.getNodeById(e)}getLastEntryByID(e){return this.getLastEntryById(e)}getLastSkeletonByID(e){return this.getLastSkeletonById(e)}}ex.FOGMODE_NONE=0,ex.FOGMODE_EXP=1,ex.FOGMODE_EXP2=2,ex.FOGMODE_LINEAR=3,ex.MinDeltaTime=1,ex.MaxDeltaTime=1e3,ex._OriginalDefaultMaterialFactory=ex.DefaultMaterialFactory;let eB=!1;(i=ex.prototype).sortActiveAnimatables??(i.sortActiveAnimatables=(0,ey._MissingSideEffect)("Scene","sortActiveAnimatables")),(s=ex.prototype).beginWeightedAnimation??(s.beginWeightedAnimation=(0,ey._MissingSideEffect)("Scene","beginWeightedAnimation")),(r=ex.prototype).beginAnimation??(r.beginAnimation=(0,ey._MissingSideEffect)("Scene","beginAnimation")),(n=ex.prototype).beginHierarchyAnimation??(n.beginHierarchyAnimation=(0,ey._MissingSideEffect)("Scene","beginHierarchyAnimation")),(a=ex.prototype).beginDirectAnimation??(a.beginDirectAnimation=(0,ey._MissingSideEffect)("Scene","beginDirectAnimation")),(o=ex.prototype).beginDirectHierarchyAnimation??(o.beginDirectHierarchyAnimation=(0,ey._MissingSideEffect)("Scene","beginDirectHierarchyAnimation")),(h=ex.prototype).getAnimatableByTarget??(h.getAnimatableByTarget=(0,ey._MissingSideEffect)("Scene","getAnimatableByTarget")),(l=ex.prototype).getAllAnimatablesByTarget??(l.getAllAnimatablesByTarget=(0,ey._MissingSideEffect)("Scene","getAllAnimatablesByTarget")),(d=ex.prototype).stopAllAnimations??(d.stopAllAnimations=(0,ey._MissingSideEffect)("Scene","stopAllAnimations")),(c=ex.prototype).getSoundByName??(c.getSoundByName=(0,ey._MissingSideEffect)("Scene","getSoundByName")),(u=ex.prototype).createOrUpdateSelectionOctree??(u.createOrUpdateSelectionOctree=(0,ey._MissingSideEffect)("Scene","createOrUpdateSelectionOctree")),(g=ex.prototype).createDefaultLight??(g.createDefaultLight=(0,ey._MissingSideEffect)("Scene","createDefaultLight")),(p=ex.prototype).createDefaultCamera??(p.createDefaultCamera=(0,ey._MissingSideEffect)("Scene","createDefaultCamera")),(_=ex.prototype).createDefaultCameraOrLight??(_.createDefaultCameraOrLight=(0,ey._MissingSideEffect)("Scene","createDefaultCameraOrLight")),(v=ex.prototype).createDefaultSkybox??(v.createDefaultSkybox=(0,ey._MissingSideEffect)("Scene","createDefaultSkybox")),(m=ex.prototype).createDefaultEnvironment??(m.createDefaultEnvironment=(0,ey._MissingSideEffect)("Scene","createDefaultEnvironment")),(f=ex.prototype).createDefaultVRExperience??(f.createDefaultVRExperience=(0,ey._MissingSideEffect)("Scene","createDefaultVRExperience")),(b=ex.prototype).createDefaultXRExperienceAsync??(b.createDefaultXRExperienceAsync=(0,ey._MissingSideEffect)("Scene","createDefaultXRExperienceAsync")),(y=ex.prototype).getGlowLayerByName??(y.getGlowLayerByName=(0,ey._MissingSideEffect)("Scene","getGlowLayerByName")),(P=ex.prototype).getHighlightLayerByName??(P.getHighlightLayerByName=(0,ey._MissingSideEffect)("Scene","getHighlightLayerByName")),(C=ex.prototype).getSelectionOutlineLayerByName??(C.getSelectionOutlineLayerByName=(0,ey._MissingSideEffect)("Scene","getSelectionOutlineLayerByName")),(M=ex.prototype).removeLensFlareSystem??(M.removeLensFlareSystem=(0,ey._MissingSideEffect)("Scene","removeLensFlareSystem")),(O=ex.prototype).addLensFlareSystem??(O.addLensFlareSystem=(0,ey._MissingSideEffect)("Scene","addLensFlareSystem")),(T=ex.prototype).getLensFlareSystemByName??(T.getLensFlareSystemByName=(0,ey._MissingSideEffect)("Scene","getLensFlareSystemByName")),(S=ex.prototype).getLensFlareSystemByID??(S.getLensFlareSystemByID=(0,ey._MissingSideEffect)("Scene","getLensFlareSystemByID")),(R=ex.prototype).getLensFlareSystemById??(R.getLensFlareSystemById=(0,ey._MissingSideEffect)("Scene","getLensFlareSystemById")),(E=ex.prototype).getPhysicsEngine??(E.getPhysicsEngine=(0,ey._MissingSideEffect)("Scene","getPhysicsEngine")),(I=ex.prototype).enablePhysics??(I.enablePhysics=(0,ey._MissingSideEffect)("Scene","enablePhysics")),(k=ex.prototype).disablePhysicsEngine??(k.disablePhysicsEngine=(0,ey._MissingSideEffect)("Scene","disablePhysicsEngine")),(D=ex.prototype).isPhysicsEnabled??(D.isPhysicsEnabled=(0,ey._MissingSideEffect)("Scene","isPhysicsEnabled")),(A=ex.prototype).deleteCompoundImpostor??(A.deleteCompoundImpostor=(0,ey._MissingSideEffect)("Scene","deleteCompoundImpostor")),(w=ex.prototype).removeReflectionProbe??(w.removeReflectionProbe=(0,ey._MissingSideEffect)("Scene","removeReflectionProbe")),(x=ex.prototype).addReflectionProbe??(x.addReflectionProbe=(0,ey._MissingSideEffect)("Scene","addReflectionProbe")),(B=ex.prototype).getBoundingBoxRenderer??(B.getBoundingBoxRenderer=(0,ey._MissingSideEffect)("Scene","getBoundingBoxRenderer")),(N=ex.prototype).enableDepthRenderer??(N.enableDepthRenderer=(0,ey._MissingSideEffect)("Scene","enableDepthRenderer")),(L=ex.prototype).disableDepthRenderer??(L.disableDepthRenderer=(0,ey._MissingSideEffect)("Scene","disableDepthRenderer")),(F=ex.prototype).enableFluidRenderer??(F.enableFluidRenderer=(0,ey._MissingSideEffect)("Scene","enableFluidRenderer")),(U=ex.prototype).disableFluidRenderer??(U.disableFluidRenderer=(0,ey._MissingSideEffect)("Scene","disableFluidRenderer")),(G=ex.prototype).enableGeometryBufferRenderer??(G.enableGeometryBufferRenderer=(0,ey._MissingSideEffect)("Scene","enableGeometryBufferRenderer")),(W=ex.prototype).disableGeometryBufferRenderer??(W.disableGeometryBufferRenderer=(0,ey._MissingSideEffect)("Scene","disableGeometryBufferRenderer")),(X=ex.prototype).enableIblCdfGenerator??(X.enableIblCdfGenerator=(0,ey._MissingSideEffect)("Scene","enableIblCdfGenerator")),(z=ex.prototype).disableIblCdfGenerator??(z.disableIblCdfGenerator=(0,ey._MissingSideEffect)("Scene","disableIblCdfGenerator")),(j=ex.prototype).getOutlineRenderer??(j.getOutlineRenderer=(0,ey._MissingSideEffect)("Scene","getOutlineRenderer")),(Y=ex.prototype).enablePrePassRenderer??(Y.enablePrePassRenderer=(0,ey._MissingSideEffect)("Scene","enablePrePassRenderer")),(H=ex.prototype).disablePrePassRenderer??(H.disablePrePassRenderer=(0,ey._MissingSideEffect)("Scene","disablePrePassRenderer")),(V=ex.prototype).enableSubSurfaceForPrePass??(V.enableSubSurfaceForPrePass=(0,ey._MissingSideEffect)("Scene","enableSubSurfaceForPrePass")),(q=ex.prototype).disableSubSurfaceForPrePass??(q.disableSubSurfaceForPrePass=(0,ey._MissingSideEffect)("Scene","disableSubSurfaceForPrePass")),(K=ex.prototype).pickSprite??(K.pickSprite=(0,ey._MissingSideEffect)("Scene","pickSprite")),(Z=ex.prototype).pickSpriteWithRay??(Z.pickSpriteWithRay=(0,ey._MissingSideEffect)("Scene","pickSpriteWithRay")),($=ex.prototype).multiPickSprite??($.multiPickSprite=(0,ey._MissingSideEffect)("Scene","multiPickSprite")),(Q=ex.prototype).multiPickSpriteWithRay??(Q.multiPickSpriteWithRay=(0,ey._MissingSideEffect)("Scene","multiPickSpriteWithRay")),(J=ex.prototype).setPointerOverSprite??(J.setPointerOverSprite=(0,ey._MissingSideEffect)("Scene","setPointerOverSprite")),(ee=ex.prototype).getPointerOverSprite??(ee.getPointerOverSprite=(0,ey._MissingSideEffect)("Scene","getPointerOverSprite")),Object.getOwnPropertyDescriptor(ex.prototype,"mainSoundTrack")||Object.defineProperty(ex.prototype,"mainSoundTrack",(0,ey._MissingSideEffectProperty)("Scene","mainSoundTrack")),Object.getOwnPropertyDescriptor(ex.prototype,"soundTracks")||Object.defineProperty(ex.prototype,"soundTracks",(0,ey._MissingSideEffectProperty)("Scene","soundTracks")),Object.getOwnPropertyDescriptor(ex.prototype,"audioEnabled")||Object.defineProperty(ex.prototype,"audioEnabled",(0,ey._MissingSideEffectProperty)("Scene","audioEnabled")),Object.getOwnPropertyDescriptor(ex.prototype,"headphone")||Object.defineProperty(ex.prototype,"headphone",(0,ey._MissingSideEffectProperty)("Scene","headphone")),Object.getOwnPropertyDescriptor(ex.prototype,"audioListenerPositionProvider")||Object.defineProperty(ex.prototype,"audioListenerPositionProvider",(0,ey._MissingSideEffectProperty)("Scene","audioListenerPositionProvider")),Object.getOwnPropertyDescriptor(ex.prototype,"audioListenerRotationProvider")||Object.defineProperty(ex.prototype,"audioListenerRotationProvider",(0,ey._MissingSideEffectProperty)("Scene","audioListenerRotationProvider")),Object.getOwnPropertyDescriptor(ex.prototype,"audioPositioningRefreshRate")||Object.defineProperty(ex.prototype,"audioPositioningRefreshRate",(0,ey._MissingSideEffectProperty)("Scene","audioPositioningRefreshRate")),Object.getOwnPropertyDescriptor(ex.prototype,"selectionOctree")||Object.defineProperty(ex.prototype,"selectionOctree",(0,ey._MissingSideEffectProperty)("Scene","selectionOctree")),Object.getOwnPropertyDescriptor(ex.prototype,"debugLayer")||Object.defineProperty(ex.prototype,"debugLayer",(0,ey._MissingSideEffectProperty)("Scene","debugLayer")),Object.getOwnPropertyDescriptor(ex.prototype,"gamepadManager")||Object.defineProperty(ex.prototype,"gamepadManager",(0,ey._MissingSideEffectProperty)("Scene","gamepadManager")),Object.getOwnPropertyDescriptor(ex.prototype,"simplificationQueue")||Object.defineProperty(ex.prototype,"simplificationQueue",(0,ey._MissingSideEffectProperty)("Scene","simplificationQueue")),Object.getOwnPropertyDescriptor(ex.prototype,"onBeforePhysicsObservable")||Object.defineProperty(ex.prototype,"onBeforePhysicsObservable",(0,ey._MissingSideEffectProperty)("Scene","onBeforePhysicsObservable")),Object.getOwnPropertyDescriptor(ex.prototype,"onAfterPhysicsObservable")||Object.defineProperty(ex.prototype,"onAfterPhysicsObservable",(0,ey._MissingSideEffectProperty)("Scene","onAfterPhysicsObservable")),Object.getOwnPropertyDescriptor(ex.prototype,"reflectionProbes")||Object.defineProperty(ex.prototype,"reflectionProbes",(0,ey._MissingSideEffectProperty)("Scene","reflectionProbes")),Object.getOwnPropertyDescriptor(ex.prototype,"forceShowBoundingBoxes")||Object.defineProperty(ex.prototype,"forceShowBoundingBoxes",(0,ey._MissingSideEffectProperty)("Scene","forceShowBoundingBoxes")),Object.getOwnPropertyDescriptor(ex.prototype,"depthPeelingRenderer")||Object.defineProperty(ex.prototype,"depthPeelingRenderer",(0,ey._MissingSideEffectProperty)("Scene","depthPeelingRenderer")),Object.getOwnPropertyDescriptor(ex.prototype,"useOrderIndependentTransparency")||Object.defineProperty(ex.prototype,"useOrderIndependentTransparency",(0,ey._MissingSideEffectProperty)("Scene","useOrderIndependentTransparency")),Object.getOwnPropertyDescriptor(ex.prototype,"fluidRenderer")||Object.defineProperty(ex.prototype,"fluidRenderer",(0,ey._MissingSideEffectProperty)("Scene","fluidRenderer")),Object.getOwnPropertyDescriptor(ex.prototype,"geometryBufferRenderer")||Object.defineProperty(ex.prototype,"geometryBufferRenderer",(0,ey._MissingSideEffectProperty)("Scene","geometryBufferRenderer")),Object.getOwnPropertyDescriptor(ex.prototype,"iblCdfGenerator")||Object.defineProperty(ex.prototype,"iblCdfGenerator",(0,ey._MissingSideEffectProperty)("Scene","iblCdfGenerator")),Object.getOwnPropertyDescriptor(ex.prototype,"prePassRenderer")||Object.defineProperty(ex.prototype,"prePassRenderer",(0,ey._MissingSideEffectProperty)("Scene","prePassRenderer")),Object.getOwnPropertyDescriptor(ex.prototype,"subSurfaceConfiguration")||Object.defineProperty(ex.prototype,"subSurfaceConfiguration",(0,ey._MissingSideEffectProperty)("Scene","subSurfaceConfiguration")),Object.getOwnPropertyDescriptor(ex.prototype,"spriteManagers")||Object.defineProperty(ex.prototype,"spriteManagers",(0,ey._MissingSideEffectProperty)("Scene","spriteManagers")),Object.getOwnPropertyDescriptor(ex.prototype,"onBeforeSpritesRenderingObservable")||Object.defineProperty(ex.prototype,"onBeforeSpritesRenderingObservable",(0,ey._MissingSideEffectProperty)("Scene","onBeforeSpritesRenderingObservable")),Object.getOwnPropertyDescriptor(ex.prototype,"onAfterSpritesRenderingObservable")||Object.defineProperty(ex.prototype,"onAfterSpritesRenderingObservable",(0,ey._MissingSideEffectProperty)("Scene","onAfterSpritesRenderingObservable")),e.s(["RegisterScene",0,function(){eB||(eB=!0,(0,eD.RegisterClass)("BABYLON.Scene",ex))},"Scene",0,ex,"ScenePerformancePriority",0,et],56770)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2348,2413,e=>{"use strict";let t=1/1.2;e.s(["ZOOM_IN_FACTOR",0,t,"ZOOM_OUT_FACTOR",0,1.2,"attachDoubleClickFocus",0,function(e,t,n){let s=()=>{let t=e.pick(e.pointerX,e.pointerY);t?.hit&&t.pickedPoint&&n.setTarget(t.pickedPoint)};return t.addEventListener("dblclick",s),()=>t.removeEventListener("dblclick",s)},"disableWheelZoom",0,function(e){e.inputs.removeByType("ArcRotateCameraMouseWheelInput")},"resetFocus",0,function(e,t){e.setTarget(t.target),e.alpha=t.alpha,e.beta=t.beta,e.radius=t.radius},"stepZoom",0,function(e,t){let n=e.lowerRadiusLimit??.01,s=e.upperRadiusLimit??1/0;e.radius=Math.min(s,Math.max(n,e.radius*t))}],2348);var n=e.i(28100);e.s(["ZoomButtons",0,function({onZoom:e,onReset:s}){let a="grid h-8 w-8 place-items-center rounded-md border border-edge bg-ink/80 text-lg leading-none text-fg backdrop-blur transition hover:bg-ink hover:text-white";return(0,n.jsxs)("div",{className:"absolute right-3 top-3 flex flex-col gap-1",children:[(0,n.jsx)("button",{type:"button","aria-label":"Zoom in",className:a,onClick:()=>e(t),children:"+"}),(0,n.jsx)("button",{type:"button","aria-label":"Zoom out",className:a,onClick:()=>e(1.2),children:"−"}),s?(0,n.jsx)("button",{type:"button","aria-label":"Reset camera focus to center",title:"Reset focus to center",className:a,onClick:s,children:(0,n.jsxs)("svg",{viewBox:"0 0 16 16",width:"16",height:"16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,n.jsx)("path",{d:"M8 1v2.5M8 12.5V15M1 8h2.5M12.5 8H15"})]})}):null]})}],2413)},25476,e=>{"use strict";e.s(["attachMeshHover",0,function(e,t,n){let s=0,a=null,i=t=>{let i=t.offsetX,l=t.offsetY;s||(s=requestAnimationFrame(()=>{var t,o;let r;s=0;let c=e.pick(i,l,e=>e.isPickable&&e.isEnabled()),u=c?.pickedMesh?(t=c.pickedMesh,o=c.thinInstanceIndex??-1,(r=t.metadata)?o>=0&&r.hoverLabels?r.hoverLabels[o]??null:r.hoverLabel??null:null):null;u?n({label:u,x:i,y:l}):null!==a&&n(null),a=u}))},l=()=>{s&&(cancelAnimationFrame(s),s=0),null!==a&&(a=null,n(null))};return t.addEventListener("pointermove",i),t.addEventListener("pointerleave",l),()=>{t.removeEventListener("pointermove",i),t.removeEventListener("pointerleave",l),s&&cancelAnimationFrame(s)}}])},19399,e=>{"use strict";var t=e.i(28100),n=e.i(11623),s=e.i(20880);let a="__other_sp__",i="__other_mesh__";function l(e){return`${e[0]}|${e[1]}|${e[2]}`}function o(e,t){return t<=1?0:1.4-e/(t-1)*2.8}var r=e.i(56054),c=e.i(2348),u=e.i(25476),h=e.i(18637),d=e.i(2413);let m="__all__",p={maxStandpoints:6,maxMeshes:10,maxRibbons:70};function b(e,t){return`${e}|${t}`}function f(e){let t=e.aabb;return[(t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2]}function g(e){let t=0;for(let n=0;n<e.length;n++)t=31*t+e.charCodeAt(n)|0;return Math.abs(t)}function x({label:e,value:n,onChange:s,allLabel:a,options:i}){return(0,t.jsxs)("label",{className:"flex items-center gap-1.5 rounded-md border border-edge bg-ink/80 px-2 py-1 text-xs text-fg backdrop-blur",children:[(0,t.jsx)("span",{className:"font-medium text-fg-muted",children:e}),(0,t.jsxs)("select",{className:"max-w-[12rem] bg-transparent text-white outline-none",value:n,onChange:e=>s(e.target.value),children:[(0,t.jsx)("option",{value:m,children:a}),i.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))]})]})}function v({active:e,onClick:n,children:s,disabled:a=!1,title:i}){return(0,t.jsx)("button",{type:"button",onClick:n,disabled:a,title:i,className:`rounded px-2 py-0.5 font-medium transition ${a?"cursor-not-allowed text-fg-muted/40":e?"bg-amber text-ink":"text-fg-muted hover:text-fg"}`,children:s})}function k({standpoints:e,proxyMeshes:s,selectedKey:a,onSelect:i}){let l=(0,n.useRef)(null),o=(0,n.useMemo)(()=>e.filter(e=>e.origin),[e]),r=(0,n.useMemo)(()=>{let e=1/0,t=-1/0,n=1/0,a=-1/0,i=(s,i)=>{e=Math.min(e,s),t=Math.max(t,s),n=Math.min(n,i),a=Math.max(a,i)};for(let e of s)i(e.aabb[0],e.aabb[2]),i(e.aabb[3],e.aabb[5]);for(let e of o)i(e.origin[0],e.origin[2]);return Number.isFinite(e)?(t-e<.001&&(e-=1,t+=1),a-n<.001&&(n-=1,a+=1),{minX:e,maxX:t,minZ:n,maxZ:a}):{minX:-1,maxX:1,minZ:-1,maxZ:1}},[s,o]),c=(0,n.useMemo)(()=>{let e=Math.min(134/(r.maxX-r.minX),94/(r.maxZ-r.minZ));return(t,n)=>[8+(t-r.minX)*e,8+(n-r.minZ)*e]},[r]),u=(0,n.useMemo)(()=>o.reduce((e,t)=>Math.max(e,t.count),1),[o]);return(0,n.useEffect)(()=>{let e=l.current,t=e?.getContext("2d");if(!t)return;let n=window.devicePixelRatio||1;for(let a of(e.width=150*n,e.height=110*n,t.setTransform(n,0,0,n,0,0),t.clearRect(0,0,150,110),t.fillStyle="rgba(8,10,14,0.85)",t.fillRect(0,0,150,110),t.strokeStyle="rgba(120,140,170,0.35)",t.lineWidth=1,s)){let[e,n]=c(a.aabb[0],a.aabb[2]),[s,i]=c(a.aabb[3],a.aabb[5]);t.strokeRect(Math.min(e,s),Math.min(n,i),Math.abs(s-e),Math.abs(i-n))}for(let e of o){let[n,s]=c(e.origin[0],e.origin[2]),i=2+e.count/u*4,l=e.key===a;t.beginPath(),t.arc(n,s,i,0,2*Math.PI),t.fillStyle=l?"rgba(242,115,242,1)":"rgba(242,115,242,0.55)",t.fill(),l&&(t.beginPath(),t.arc(n,s,i+2.5,0,2*Math.PI),t.strokeStyle="rgba(255,255,255,0.9)",t.lineWidth=1.5,t.stroke())}},[s,o,c,u,a]),(0,t.jsxs)("div",{className:"absolute right-3 top-3 rounded-md border border-edge bg-ink/80 p-1 backdrop-blur",children:[(0,t.jsx)("div",{className:"px-1 pb-0.5 text-[10px] font-medium text-fg-muted",children:"Standpoints (top view)"}),(0,t.jsx)("canvas",{ref:l,className:"h-27.5 w-37.5 cursor-pointer rounded",onClick:e=>{let t=l.current;if(!t||0===o.length)return;let n=t.getBoundingClientRect(),s=(e.clientX-n.left)/n.width*150,a=(e.clientY-n.top)/n.height*110,r=null,u=1/0;for(let e of o){let[t,n]=c(e.origin[0],e.origin[2]),i=(t-s)**2+(n-a)**2;i<u&&(u=i,r=e)}r&&u<=196&&i(r.key)}})]})}e.s(["FlowSankey3DView",0,function({links:j,gridSize:w,proxyMeshes:M=[],maxLinks:z=80,baseUrl:_,apiKey:y,flowQuery:$,hasFirstPerson:I=!1}){let C=(0,n.useRef)(null),P=(0,n.useRef)(null),B=(0,n.useRef)(null),[R,S]=(0,n.useState)("loading"),[L,q]=(0,n.useState)(null),[A,N]=(0,n.useState)(m),[E,O]=(0,n.useState)(m),[Z,T]=(0,n.useState)(m),[F,V]=(0,n.useState)("aggregate"),[W,X]=(0,n.useState)(null),[H,D]=(0,n.useState)("all"),[U,K]=(0,n.useState)(j),Y=!!(_&&$),G=(0,n.useMemo)(()=>$?JSON.stringify($):"",[$]),J=(0,n.useRef)(!1);(0,n.useEffect)(()=>{!J.current&&I&&(D("first-person"),J.current=!0)},[I]),(0,n.useEffect)(()=>{I&&"viewer"===H&&D("first-person")},[I,H]),(0,n.useEffect)(()=>{Y||K(j)},[j,Y]),(0,n.useEffect)(()=>{if(!_||!$)return;let e=!1,t=new s.CollectorApi(_,y??""),n="all"===H?void 0:H;return t.flowHeatmap({...$,bins:w,limit:400,groupByOrigin:!0,cameraMode:n}).then(t=>{e||K(t)}).catch(()=>{e||K([])}),()=>{e=!0}},[_,y,G,H,w]);let Q=(0,n.useMemo)(()=>{let e=new Map;for(let t of U){if(!t.originVoxel)continue;let n=l(t.originVoxel),s=t.origin,a=e.get(n);a?(a.count+=t.count,s&&(a.ox+=s[0]*t.count,a.oy+=s[1]*t.count,a.oz+=s[2]*t.count,a.wsum+=t.count)):e.set(n,{key:n,voxel:t.originVoxel,count:t.count,ox:s?s[0]*t.count:0,oy:s?s[1]*t.count:0,oz:s?s[2]*t.count:0,wsum:s?t.count:0})}return[...e.values()].map(e=>({key:e.key,voxel:e.voxel,count:e.count,origin:e.wsum>0?[e.ox/e.wsum,e.oy/e.wsum,e.oz/e.wsum]:void 0})).sort((e,t)=>t.count-e.count)},[U]),ee=Q.length>0,et=(0,n.useMemo)(()=>Z===m?null:Q.find(e=>e.key===Z)??null,[Q,Z]),en=(0,n.useMemo)(()=>(function(e,t,n,s){let r=e.filter(e=>e.originVoxel);if(0===r.length)return{standpoints:[],gazes:[],meshes:[],ribbons:[],maxCount:1};let c=t.slice(0,Math.max(1,s.maxStandpoints)),u=new Set(c.map(e=>e.key)),h=e=>{let t=e.originVoxel?l(e.originVoxel):a;return u.has(t)?t:a},d=new Map;for(let e of r)d.set(e.mesh,(d.get(e.mesh)??0)+e.count);let m=new Set([...d.entries()].sort((e,t)=>t[1]-e[1]).slice(0,Math.max(1,s.maxMeshes)).map(([e])=>e)),p=e=>m.has(e)?e:i,b=new Map;for(let e of r){let t=h(e),n=p(e.mesh),s=`${t}|${e.azimuth_bin}|${e.elevation_bin}|${n}`,a=b.get(s);a?a.count+=e.count:b.set(s,{standpointId:t,gazeId:`${t}|${e.azimuth_bin}|${e.elevation_bin}`,meshId:n,azimuthBin:e.azimuth_bin,elevationBin:e.elevation_bin,count:e.count})}let f=[...b.values()].sort((e,t)=>t.count-e.count),g=f.slice(0,Math.max(1,s.maxRibbons)),x=f.slice(Math.max(1,s.maxRibbons));if(x.length>0){let e=new Map(g.map(e=>[`${e.standpointId}|${e.azimuthBin}|${e.elevationBin}|${i}`,e]));for(let t of x){let n=`${t.standpointId}|${t.azimuthBin}|${t.elevationBin}|${i}`,s=e.get(n);if(s)s.count+=t.count;else{let s={standpointId:t.standpointId,gazeId:t.gazeId,meshId:i,azimuthBin:t.azimuthBin,elevationBin:t.elevationBin,count:t.count};e.set(n,s),g.push(s)}}}let v=new Set(g.map(e=>e.standpointId)),k=new Set(g.map(e=>e.meshId)),j=[...c.filter(e=>v.has(e.key)).map(e=>e.key),...v.has(a)?[a]:[]],w=j.map((e,t)=>{let n=c.find(t=>t.key===e),s=g.filter(t=>t.standpointId===e).reduce((e,t)=>e+t.count,0);return{id:e,kind:"standpoint",pos:[-2.6,o(t,j.length),0],count:s,label:n?`[${n.voxel[0]}, ${n.voxel[1]}, ${n.voxel[2]}]`:"Other standpoints",isOther:e===a}}),M=new Map(w.map(e=>[e.id,e.pos[1]])),z=new Map;for(let e of g)z.set(e.meshId,(z.get(e.meshId)??0)+e.count);let _=[...k].sort((e,t)=>(z.get(t)??0)-(z.get(e)??0));_.sort((e,t)=>(e===i)-(t===i));let y=_.map((e,t)=>({id:e,kind:"mesh",pos:[2.6,o(t,_.length),0],count:z.get(e)??0,label:e===i?"Other meshes":e,isOther:e===i})),$=new Map;for(let e of g){let t=$.get(e.gazeId);t?t.count+=e.count:$.set(e.gazeId,{az:e.azimuthBin,el:e.elevationBin,sp:e.standpointId,count:e.count})}let I=[...$.entries()].map(([e,t])=>{let s=M.get(t.sp)??0,a=(t.az+.5)/n-.5;return{id:e,kind:"gaze",pos:[0,s+((t.el+.5)/n-.5)*.85,1.6*a],count:t.count,label:`(${t.az}, ${t.el})`,isOther:!1}}),C=g.reduce((e,t)=>Math.max(e,t.count),1);return{standpoints:w,gazes:I,meshes:y,ribbons:g,maxCount:C}})(U,Q,w,p),[U,Q,w]),es="twostage"===F&&ee;(0,n.useEffect)(()=>{"twostage"!==F||ee||V("aggregate")},[F,ee]);let ea=(0,n.useMemo)(()=>{if(Z!==m&&ee)return U.filter(e=>e.originVoxel&&l(e.originVoxel)===Z);if(!ee)return U;let e=new Map;for(let t of U){let n=`${t.azimuth_bin}|${t.elevation_bin}|${t.mesh}`,s=e.get(n);s?s.count+=t.count:e.set(n,{azimuth_bin:t.azimuth_bin,elevation_bin:t.elevation_bin,mesh:t.mesh,count:t.count})}return[...e.values()]},[U,Z,ee]),ei=(0,n.useMemo)(()=>[...ea].sort((e,t)=>t.count-e.count).slice(0,Math.max(1,z)),[ea,z]),el=(0,n.useMemo)(()=>{let e=new Map;for(let t of ei)e.set(t.mesh,(e.get(t.mesh)??0)+t.count);return[...e.entries()].sort((e,t)=>t[1]-e[1])},[ei]),eo=(0,n.useMemo)(()=>{let e=new Map;for(let t of ei){let n=b(t.azimuth_bin,t.elevation_bin),s=e.get(n);s?s.count+=t.count:e.set(n,{azimuthBin:t.azimuth_bin,elevationBin:t.elevation_bin,count:t.count})}return[...e.values()].sort((e,t)=>t.count-e.count)},[ei]);(0,n.useEffect)(()=>{!es&&A!==m&&(el.some(([e])=>e===A)||N(m))},[es,A,el]),(0,n.useEffect)(()=>{!es&&E!==m&&(eo.some(e=>b(e.azimuthBin,e.elevationBin)===E)||O(m))},[es,E,eo]),(0,n.useEffect)(()=>{!es&&Z!==m&&(Q.some(e=>e.key===Z)||T(m))},[es,Z,Q]),(0,n.useEffect)(()=>{N(m),O(m),T(m)},[F]);let er=(0,n.useMemo)(()=>es?en.ribbons.filter(e=>{let t=Z===m||e.standpointId===Z,n=E===m||b(e.azimuthBin,e.elevationBin)===E,s=A===m||e.meshId===A;return t&&n&&s}).length:ei.filter(e=>{let t=E===m||b(e.azimuth_bin,e.elevation_bin)===E,n=A===m||e.mesh===A;return t&&n}).length,[es,en,ei,A,E,Z]),ec=es?en.ribbons.length:ei.length,eu=(0,n.useMemo)(()=>es?en.standpoints.map(e=>({value:e.id,label:`${e.label} \xb7 ${e.count}`})):Q.slice(0,24).map(e=>({value:e.key,label:`[${e.voxel[0]}, ${e.voxel[1]}, ${e.voxel[2]}] \xb7 ${e.count}`})),[es,en,Q]),eh=(0,n.useMemo)(()=>{if(es){let e=new Map;for(let t of en.ribbons){let n=b(t.azimuthBin,t.elevationBin),s=e.get(n);s?s.count+=t.count:e.set(n,{az:t.azimuthBin,el:t.elevationBin,count:t.count})}return[...e.values()].sort((e,t)=>t.count-e.count).map(e=>({value:b(e.az,e.el),label:`(${e.az}, ${e.el}) \xb7 ${e.count}`}))}return eo.map(e=>({value:b(e.azimuthBin,e.elevationBin),label:`(${e.azimuthBin}, ${e.elevationBin}) \xb7 ${e.count}`}))},[es,en,eo]),ed=(0,n.useMemo)(()=>es?en.meshes.map(e=>({value:e.id,label:`${e.label} \xb7 ${e.count}`})):el.map(([e,t])=>({value:e,label:`${e} \xb7 ${t}`})),[es,en,el]),em=(0,n.useRef)(ei);em.current=ei;let ep=(0,n.useRef)(en);ep.current=en;let eb=(0,n.useRef)(M);eb.current=M;let ef=(0,n.useRef)(el);ef.current=el;let eg=(0,n.useRef)(A);eg.current=A;let ex=(0,n.useRef)(E);ex.current=E;let ev=(0,n.useRef)(Z);ev.current=Z;let ek=(0,n.useRef)(et);ek.current=et;let ej=(0,n.useRef)(null),ew=es?en.ribbons.length>0:ei.length>0;return(0,n.useEffect)(()=>{let t=C.current;if(!t)return;if(!ew)return void S("empty");let n=!1,s=null;return S("loading"),q(null),(async()=>{try{let a,[{Engine:i},{Scene:l},{ArcRotateCamera:o},{HemisphericLight:h},{Vector3:d,Color3:p,Color4:x},{MeshBuilder:v},{StandardMaterial:k}]=await Promise.all([e.A(3905),e.A(94432),e.A(59694),e.A(88004),e.A(27940),e.A(27124),e.A(14074),e.A(18561)]);if(n)return;let j=new i(t,!0,{preserveDrawingBuffer:!1}),M=new l(j);M.clearColor=new x(.04,.05,.07,1);let z=[],_=()=>{for(let e of z)e.dispose();z=[]};if(es){let e=d.Zero();(a=new o("ts-cam",Math.PI/2,Math.PI/2.4,8.5,e,M)).attachControl(t,!0),(0,c.disableWheelZoom)(a),P.current=a,B.current={target:e,alpha:a.alpha,beta:a.beta,radius:a.radius},new h("ts-light",new d(.3,1,.2),M);let n={standpoint:[.95,.45,.95],gaze:[.45,.75,1],mesh:[1,.82,.42]},s={standpoint:.26,gaze:.13,mesh:.22},i=(e,t,n)=>{let s=e[0],a=e[1],i=e[2],l=t[0],o=t[1],r=t[2],c=[(s+l)/2,(a+o)/2+n,(i+r)/2],u=[];for(let e=0;e<=12;e++){let t=e/12,n=1-t;u.push(new d(n*n*s+2*n*t*c[0]+t*t*l,n*n*a+2*n*t*c[1]+t*t*o,n*n*i+2*n*t*c[2]+t*t*r))}return u},l=()=>{_();let e=ep.current;if(0===e.ribbons.length)return;let t=ev.current,a=ex.current,l=eg.current,o=e=>{let n=t===m||e.standpointId===t,s=a===m||b(e.azimuthBin,e.elevationBin)===a,i=l===m||e.meshId===l;return n&&s&&i},c=t!==m||a!==m||l!==m,u=new Set;for(let t of e.ribbons)o(t)&&(u.add(t.standpointId),u.add(t.gazeId),u.add(t.meshId));let h=[...e.standpoints,...e.gazes,...e.meshes],f=new Map(h.map(e=>[e.id,e.pos])),g=new Map(h.map(e=>[e.id,e.label]));for(let e of h){let t=v.CreateSphere(`ts-node-${e.kind}-${e.id}`,{diameter:s[e.kind],segments:8},M);t.position=new d(e.pos[0],e.pos[1],e.pos[2]);let a=new k(`ts-node-mat-${e.kind}-${e.id}`,M);a.disableLighting=!0;let[i,l,o]=n[e.kind];a.emissiveColor=new p(i,l,o),a.alpha=!c||u.has(e.id)?1:.2,t.material=a,t.isPickable=!0,t.metadata={hoverLabel:e.label},z.push(t,a)}for(let t of e.ribbons){let n=f.get(t.standpointId),s=f.get(t.gazeId),a=f.get(t.meshId);if(!n||!s||!a)continue;let l=t.count/e.maxCount,u=.18+.5*l,h=[...i(n,s,u),...i(s,a,u).slice(1)],d=o(t),[m,b,x]=(0,r.heatRgb)(l),j=v.CreateTube(`ts-link-${t.standpointId}-${t.gazeId}-${t.meshId}`,{path:h,radius:(d?1:.4)*(.012+.04*l),tessellation:8,cap:0,sideOrientation:0},M),w=new k(`ts-link-mat-${t.standpointId}-${t.gazeId}-${t.meshId}`,M);w.disableLighting=!0,w.emissiveColor=new p(m,b,x),w.alpha=d?.35+.65*l:c?.06:.18,j.material=w,j.isPickable=!0,j.metadata={hoverLabel:g.get(t.meshId)??t.meshId},z.push(j,w)}};ej.current=l,l()}else{let e=new Map;for(let t of eb.current)e.set(t.name,f(t));let n=new Map,s=ef.current.map(([e])=>e).filter(t=>!e.has(t));for(let e=0;e<s.length;e++){let t=s[e],a=g(t),i=e/Math.max(1,s.length)*Math.PI*2+a%100/100*.35;n.set(t,[2.2*Math.cos(i),-.35+(a%7-3)*.06,2.2*Math.sin(i)])}for(let[t,s]of e.entries())n.set(t,s);let i=0,l=0,u=0,x=0;for(let e of n.values())i+=e[0],l+=e[1],u+=e[2],x++;let j=new d(i/Math.max(1,x),l/Math.max(1,x),u/Math.max(1,x)),y=1.8;for(let e of n.values()){let t=e[0]-j.x,n=e[1]-j.y,s=e[2]-j.z;y=Math.max(y,Math.sqrt(t*t+n*n+s*s))}let $=.75*y+1,I=Math.max(1,y/1.8);(a=new o("flow-cam",Math.PI/4,Math.PI/3,3.4*y,j,M)).attachControl(t,!0),(0,c.disableWheelZoom)(a),P.current=a,B.current={target:j,alpha:a.alpha,beta:a.beta,radius:a.radius},new h("flow-light",new d(.3,1,.2),M);let C=v.CreateSphere("flow-source-dome",{diameter:2*$,segments:20},M);C.position=j;let R=new k("flow-source-dome-mat",M);R.wireframe=!0,R.disableLighting=!0,R.emissiveColor=new p(.16,.2,.28),R.alpha=.35,C.material=R,C.isPickable=!1;let S=()=>{_();let e=em.current;if(0===e.length)return;let t=eg.current,n=ex.current,s=ek.current,a=new Map;for(let e of eb.current)a.set(e.name,f(e));let i=new Map,l=ef.current.map(([e])=>e).filter(e=>!a.has(e));for(let e=0;e<l.length;e++){let t=l[e],n=g(t),s=e/Math.max(1,l.length)*Math.PI*2+n%100/100*.35;i.set(t,[2.2*Math.cos(s),-.35+(n%7-3)*.06,2.2*Math.sin(s)])}for(let[e,t]of a.entries())i.set(e,t);let o=e.reduce((e,t)=>Math.max(e,t.count),1),c=new k("flow-source-node",M);c.disableLighting=!0,c.emissiveColor=new p(.45,.75,1);let u=new k("flow-target-node",M);u.disableLighting=!0,u.emissiveColor=new p(1,.82,.42),z.push(c,u);let h=new Set,x=new Set,y=e=>{let s=n===m||b(e.azimuth_bin,e.elevation_bin)===n,a=t===m||e.mesh===t;return s&&a},C=new Set,P=new Set;for(let t of e)y(t)&&(C.add(b(t.azimuth_bin,t.elevation_bin)),P.add(t.mesh));for(let s of e){let e=`${s.azimuth_bin}|${s.elevation_bin}`,a=i.get(s.mesh);if(!a)continue;let l=y(s),b=(s.azimuth_bin+.5)/w*Math.PI*2-Math.PI,f=(s.elevation_bin+.5)/w*Math.PI-Math.PI/2,g=Math.cos(f),_=g*Math.cos(b),B=Math.sin(f),R=g*Math.sin(b),S=new d(j.x+_*$,j.y+B*$,j.z+R*$),L=new d(a[0],a[1],a[2]);if(!h.has(e)){let s=v.CreateSphere(`flow-src-${e}`,{diameter:.12*I,segments:6},M);s.position=S;let a=c.clone(`flow-src-mat-${e}`);a.alpha=C.has(e)||t===m&&n===m?1:.22,s.material=a,s.isPickable=!1,h.add(e),z.push(s,a)}if(!x.has(s.mesh)){let e=v.CreateSphere(`flow-target-${s.mesh}`,{diameter:.2*I,segments:7},M);e.position=L;let a=u.clone(`flow-target-mat-${s.mesh}`);a.alpha=P.has(s.mesh)||t===m&&n===m?1:.22,e.material=a,e.isPickable=!0,e.metadata={hoverLabel:s.mesh},x.add(s.mesh),z.push(e,a)}let q=S.add(L).scale(.5),A=q.subtract(j),N=Math.sqrt(A.x*A.x+A.y*A.y+A.z*A.z),E=N>1e-6?A.x/N:0,O=N>1e-6?A.y/N:1,Z=N>1e-6?A.z/N:0,T=(.35+s.count/o*.75)*I,F=new d(q.x+E*T,q.y+O*T+.12*I,q.z+Z*T),V=[];for(let e=0;e<=18;e++){let t=e/18,n=1-t;V.push(new d(n*n*S.x+2*n*t*F.x+t*t*L.x,n*n*S.y+2*n*t*F.y+t*t*L.y,n*n*S.z+2*n*t*F.z+t*t*L.z))}let W=s.count/o,[X,H,D]=(0,r.heatRgb)(W),U=v.CreateTube(`flow-link-${s.mesh}-${e}`,{path:V,radius:(l?1:.4)*(.012+.04*W)*I,tessellation:8,cap:0,sideOrientation:0},M),K=new k(`flow-link-mat-${s.mesh}-${e}`,M);K.disableLighting=!0,K.emissiveColor=new p(X,H,D),K.alpha=l?.35+.65*W:.08,U.material=K,U.isPickable=!0,U.metadata={hoverLabel:s.mesh},z.push(U,K)}let B=s?.origin;if(B){let e=new d(B[0],B[1],B[2]),t=v.CreateSphere("flow-standpoint",{diameter:.26*I,segments:10},M);t.position=e;let n=new k("flow-standpoint-mat",M);n.disableLighting=!0,n.emissiveColor=new p(.95,.45,.95),t.material=n,t.isPickable=!1;let s=v.CreateLines("flow-standpoint-stem",{points:[e,new d(e.x,j.y,e.z)]},M);s.color=new p(.95,.45,.95),s.isPickable=!1,z.push(t,n,s)}};ej.current=S,S()}j.runRenderLoop(()=>M.render());let y=()=>j.resize();window.addEventListener("resize",y);let $=(0,u.attachMeshHover)(M,t,X),I=(0,c.attachDoubleClickFocus)(M,t,a);S("ready"),s=()=>{window.removeEventListener("resize",y),$(),I(),X(null),ej.current=null,P.current=null,B.current=null,_(),M.dispose(),j.dispose()}}catch(e){if(n)return;S("error"),q(e instanceof Error?e.message:"Failed to render flow links.")}})(),()=>{n=!0,s?.()}},[es,w,ew]),(0,n.useEffect)(()=>{ej.current?.()},[ei,en,M,A,E,Z,et]),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:C,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),W?(0,t.jsx)("div",{className:"pointer-events-none absolute z-10 max-w-[16rem] truncate rounded border border-edge bg-ink/90 px-1.5 py-0.5 text-xs text-white shadow backdrop-blur",style:{left:W.x+12,top:W.y+12},children:W.label}):null,"ready"===R?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"absolute left-3 top-3 flex flex-wrap gap-2",children:[ee?(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-md border border-edge bg-ink/80 p-0.5 text-xs backdrop-blur",children:[(0,t.jsx)(v,{active:!es,onClick:()=>V("aggregate"),children:"Aggregate"}),(0,t.jsx)(v,{active:es,onClick:()=>V("twostage"),children:"Two-stage"})]}):null,Y?(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-md border border-edge bg-ink/80 p-0.5 text-xs backdrop-blur",children:[(0,t.jsx)(v,{active:"first-person"===H,onClick:()=>D("first-person"),children:"Walk"}),(0,t.jsx)(v,{active:"viewer"===H,onClick:()=>D("viewer"),disabled:I,title:I?"Orbit (viewer) flow isn't available for walkable scenes":void 0,children:"Orbit"}),(0,t.jsx)(v,{active:"all"===H,onClick:()=>D("all"),children:"All"})]}):null,ee?(0,t.jsx)(x,{label:"Standpoint",value:Z,onChange:T,allLabel:"All standpoints",options:eu}):null,(0,t.jsx)(x,{label:es?"Gaze":"Source",value:E,onChange:O,allLabel:es?"All gaze sectors":"All sources",options:eh}),(0,t.jsx)(x,{label:"Mesh",value:A,onChange:N,allLabel:"All meshes",options:ed})]}),es?(0,t.jsx)(k,{standpoints:Q,proxyMeshes:M,selectedKey:Z,onSelect:e=>T(t=>t===e?m:e)}):null,(0,t.jsxs)("div",{className:"pointer-events-none absolute bottom-3 right-3 flex max-w-[20rem] flex-col items-end gap-2",children:[Y&&!I?(0,t.jsxs)("div",{className:"rounded-md border border-edge bg-ink/80 px-2 py-1 text-xs text-fg-muted backdrop-blur",children:["Orbit-dominated scene — viewer ",(0,t.jsx)("em",{children:"position"})," adds little here. Use the"," ",(0,t.jsx)("strong",{children:"View dome"})," (§7.5) above for where viewers looked."]}):null,(0,t.jsxs)("div",{className:"rounded-md border border-edge bg-ink/80 px-2 py-1 text-xs text-fg backdrop-blur",children:["Active links: ",er,"/",ec]})]}),(0,t.jsx)(d.ZoomButtons,{onZoom:e=>P.current&&(0,c.stepZoom)(P.current,e),onReset:()=>P.current&&B.current&&(0,c.resetFocus)(P.current,B.current)}),(0,t.jsx)(h.HeatLegend,{title:"Flow volume",lowLabel:"fewer links",highLabel:"dominant links",note:es?"Three columns: standpoint → gaze sector → mesh. Top standpoints/meshes are kept; the tail folds into an “Other” node. Pick a standpoint (or click the minimap), gaze sector, or mesh to emphasize matching ribbons.":"Each arc aggregates clicks from one camera-direction bin to a mesh. Pick a source or mesh to emphasize matching links and dim the rest."})]}):(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===R?"Rendering…":"empty"===R?"No aggregate flow links in range.":"error"===R?L??"Flow view unavailable.":null})]})}],19399)},3905,e=>{e.v(t=>Promise.all(["static/chunks/3pdpaqzwhhijn.js","static/chunks/08bm3ye5govev.js","static/chunks/0g6u34xkzrpjn.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2gh4z57fem0_v.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0g7p8zp2kxve5.js"].map(t=>e.l(t))).then(()=>t(66232)))},94432,e=>{e.v(t=>Promise.all(["static/chunks/2kje_jvmwsvwo.js","static/chunks/1j--a56ji33_x.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/3vaho-xrtuchd.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vpcaaf-0dn7q.js"].map(t=>e.l(t))).then(()=>t(92494)))},59694,e=>{e.v(t=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/245h82k-g1nxr.js","static/chunks/3ovd8o_usay7j.js","static/chunks/3vaho-xrtuchd.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/2wdk-kbm-n-m5.js"].map(t=>e.l(t))).then(()=>t(67186)))},88004,e=>{e.v(t=>Promise.all(["static/chunks/2p8dbh81chhon.js","static/chunks/1oara6fkfvgs3.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(t=>e.l(t))).then(()=>t(15768)))},27940,e=>{e.v(t=>Promise.all(["static/chunks/0w0sx062qmcsh.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(t=>e.l(t))).then(()=>t(23235)))},27124,e=>{e.v(t=>Promise.all(["static/chunks/1par9m038tiov.js","static/chunks/1j--a56ji33_x.js","static/chunks/2j-sax2xfdv7l.js","static/chunks/3rx1jhuop94-l.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/0gwa154w_0wuh.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/3vaho-xrtuchd.js","static/chunks/2wdk-kbm-n-m5.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/10w513bgw-bgi.js"].map(t=>e.l(t))).then(()=>t(70928)))},14074,e=>{e.v(t=>Promise.all(["static/chunks/0n0thxa3jkour.js","static/chunks/1tdg_eolxlcdl.js","static/chunks/1j--a56ji33_x.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/0vddljjnmozzx.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0f_nv15a8q415.js","static/chunks/3g_h_00xs9u59.js","static/chunks/2npk7tr63h7rl.js","static/chunks/25ctnyh7njp-d.js"].map(t=>e.l(t))).then(()=>t(87566)))},18561,e=>{e.v(t=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/1vkww9l6lgqag.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/117ys3lltfmcu.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js"].map(t=>e.l(t))).then(()=>t(85106)))}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,27116,e=>{"use strict";var t=e.i(82531),o=e.i(82350);let r="cachedOperationValue",a="cachedExecutionId";class s extends t.FlowGraphBlock{constructor(e,t){super(t),this.value=this.registerDataOutput("value",e),this.isValid=this.registerDataOutput("isValid",o.RichTypeBoolean)}_updateOutputs(e){let t=e._getExecutionVariable(this,a,-1),o=e._getExecutionVariable(this,r,null);if(null!=o&&t===e.executionId)this.isValid.setValue(!0,e),this.value.setValue(o,e);else try{let t=this._doOperation(e);if(null==t)return void this.isValid.setValue(!1,e);e._setExecutionVariable(this,r,t),e._setExecutionVariable(this,a,e.executionId),this.value.setValue(t,e),this.isValid.setValue(!0,e)}catch(t){this.isValid.setValue(!1,e)}}}e.s(["FlowGraphCachedOperationBlock",0,s])},86111,e=>{"use strict";var t=e.i(27116);class o extends t.FlowGraphCachedOperationBlock{constructor(e,t,o,r,a){super(t,a),this._operation=o,this._className=r,this.a=this.registerDataInput("a",e)}_doOperation(e){return this._operation(this.a.getValue(e))}getClassName(){return this._className}}e.s(["FlowGraphUnaryOperationBlock",0,o])},18024,e=>{"use strict";var t=e.i(27116);class o extends t.FlowGraphCachedOperationBlock{constructor(e,t,o,r,a,s){super(o,s),this._operation=r,this._className=a,this.a=this.registerDataInput("a",e),this.b=this.registerDataInput("b",t)}_doOperation(e){let t=this.a.getValue(e),o=this.b.getValue(e);return this._operation(t,o)}getClassName(){return this._className}}e.s(["FlowGraphBinaryOperationBlock",0,o])},4350,e=>{"use strict";var t=e.i(82531),o=e.i(82350),r=e.i(18024),a=e.i(86111),s=e.i(10534),i=e.i(87986),l=e.i(35270),c=e.i(48477);let n="cachedOperationAxis",h="cachedOperationAngle",p="cachedExecutionId";class u extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeNumber,e=>this._polymorphicLength(e),"FlowGraphLengthBlock",e)}_polymorphicLength(e){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return e.length();default:throw Error(`Cannot compute length of value ${e}`)}}}class w extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeAny,e=>this._polymorphicNormalize(e),"FlowGraphNormalizeBlock",e)}_polymorphicNormalize(e){let t;switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return t=e.normalizeToNew(),this.config?.nanOnZeroLength&&0===e.length()&&t.setAll(NaN),t;default:throw Error(`Cannot normalize value ${e}`)}}}class B extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeAny,o.RichTypeNumber,(e,t)=>this._polymorphicDot(e,t),"FlowGraphDotBlock",e)}_polymorphicDot(e,t){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return e.dot(t);default:throw Error(`Cannot get dot product of ${e} and ${t}`)}}}class F extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeVector3,o.RichTypeVector3,(e,t)=>s.Vector3.Cross(e,t),"FlowGraphCrossBlock",e)}}class y extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector2,o.RichTypeNumber,o.RichTypeVector2,(e,t)=>e.rotate(t),"FlowGraphRotate2DBlock",e)}}class G extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeQuaternion,o.RichTypeVector3,(e,t)=>e.applyRotationQuaternion(t),"FlowGraphRotate3DBlock",e)}}function g(e,t){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":return t.transformVector(e);case"Vector4":return new s.Vector4(e.x*t.m[0]+e.y*t.m[1]+e.z*t.m[2]+e.w*t.m[3],e.x*t.m[4]+e.y*t.m[5]+e.z*t.m[6]+e.w*t.m[7],e.x*t.m[8]+e.y*t.m[9]+e.z*t.m[10]+e.w*t.m[11],e.x*t.m[12]+e.y*t.m[13]+e.z*t.m[14]+e.w*t.m[15]);default:throw Error(`Cannot transform value ${e}`)}}class m extends r.FlowGraphBinaryOperationBlock{constructor(e){const t=e?.vectorType||"Vector3",r="Vector2"===t?"Matrix2D":"Vector3"===t?"Matrix3D":"Matrix";super((0,o.getRichTypeByFlowGraphType)(t),(0,o.getRichTypeByFlowGraphType)(r),(0,o.getRichTypeByFlowGraphType)(t),g,"FlowGraphTransformVectorBlock",e)}}class V extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeMatrix,o.RichTypeVector3,(e,t)=>s.Vector3.TransformCoordinates(e,t),"FlowGraphTransformCoordinatesBlock",e)}}class k extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeQuaternion,o.RichTypeQuaternion,e=>e.conjugate(),"FlowGraphConjugateBlock",e)}}class R extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeQuaternion,o.RichTypeQuaternion,o.RichTypeNumber,(e,t)=>2*Math.acos((0,l.Clamp)(e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,-1,1)),"FlowGraphAngleBetweenBlock",e)}}class d extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeNumber,o.RichTypeQuaternion,(e,t)=>s.Quaternion.RotationAxis(e,t),"FlowGraphQuaternionFromAxisAngleBlock",e)}}class x extends t.FlowGraphBlock{constructor(e){super(e),this.a=this.registerDataInput("a",o.RichTypeQuaternion),this.axis=this.registerDataOutput("axis",o.RichTypeVector3),this.angle=this.registerDataOutput("angle",o.RichTypeNumber),this.isValid=this.registerDataOutput("isValid",o.RichTypeBoolean)}_updateOutputs(e){let t=e._getExecutionVariable(this,p,-1),o=e._getExecutionVariable(this,n,null),r=e._getExecutionVariable(this,h,null);if(null!=o&&null!=r&&t===e.executionId)this.axis.setValue(o,e),this.angle.setValue(r,e);else try{let{axis:t,angle:o}=this.a.getValue(e).toAxisAngle();e._setExecutionVariable(this,n,t),e._setExecutionVariable(this,h,o),e._setExecutionVariable(this,p,e.executionId),this.axis.setValue(t,e),this.angle.setValue(o,e),this.isValid.setValue(!0,e)}catch(t){this.isValid.setValue(!1,e)}}getClassName(){return"FlowGraphAxisAngleFromQuaternionBlock"}}class T extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeVector3,o.RichTypeQuaternion,(e,t)=>{let o;return function(e,t,o){let r=s.Vector3.Cross(e,t),a=Math.acos((0,l.Clamp)(e.x*t.x+e.y*t.y+e.z*t.z,-1,1));s.Quaternion.RotationAxisToRef(r,a,o)}(e,t,o=new s.Quaternion),o},"FlowGraphQuaternionFromDirectionsBlock",e)}}let C=!1;function O(){C||(C=!0,(0,c.RegisterClass)("FlowGraphLengthBlock",u),(0,c.RegisterClass)("FlowGraphNormalizeBlock",w),(0,c.RegisterClass)("FlowGraphDotBlock",B),(0,c.RegisterClass)("FlowGraphCrossBlock",F),(0,c.RegisterClass)("FlowGraphRotate2DBlock",y),(0,c.RegisterClass)("FlowGraphRotate3DBlock",G),(0,c.RegisterClass)("FlowGraphTransformVectorBlock",m),(0,c.RegisterClass)("FlowGraphTransformCoordinatesBlock",V),(0,c.RegisterClass)("FlowGraphConjugateBlock",k),(0,c.RegisterClass)("FlowGraphAngleBetweenBlock",R),(0,c.RegisterClass)("FlowGraphQuaternionFromAxisAngleBlock",d),(0,c.RegisterClass)("FlowGraphAxisAngleFromQuaternionBlock",x))}e.s(["FlowGraphAngleBetweenBlock",0,R,"FlowGraphAxisAngleFromQuaternionBlock",0,x,"FlowGraphConjugateBlock",0,k,"FlowGraphCrossBlock",0,F,"FlowGraphDotBlock",0,B,"FlowGraphLengthBlock",0,u,"FlowGraphNormalizeBlock",0,w,"FlowGraphQuaternionFromAxisAngleBlock",0,d,"FlowGraphQuaternionFromDirectionsBlock",0,T,"FlowGraphRotate2DBlock",0,y,"FlowGraphRotate3DBlock",0,G,"FlowGraphTransformBlock",0,m,"FlowGraphTransformCoordinatesBlock",0,V,"RegisterFlowGraphVectorMathBlocks",0,O],1455),O(),e.s([],28715),e.i(28715),e.i(1455),e.s(["FlowGraphAngleBetweenBlock",0,R,"FlowGraphAxisAngleFromQuaternionBlock",0,x,"FlowGraphConjugateBlock",0,k,"FlowGraphCrossBlock",0,F,"FlowGraphDotBlock",0,B,"FlowGraphLengthBlock",0,u,"FlowGraphNormalizeBlock",0,w,"FlowGraphQuaternionFromAxisAngleBlock",0,d,"FlowGraphQuaternionFromDirectionsBlock",0,T,"FlowGraphRotate2DBlock",0,y,"FlowGraphRotate3DBlock",0,G,"FlowGraphTransformBlock",0,m,"FlowGraphTransformCoordinatesBlock",0,V],4350)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2348,2413,e=>{"use strict";let t=1/1.2;e.s(["ZOOM_IN_FACTOR",0,t,"ZOOM_OUT_FACTOR",0,1.2,"attachDoubleClickFocus",0,function(e,t,s){let n=()=>{let t=e.pick(e.pointerX,e.pointerY);t?.hit&&t.pickedPoint&&s.setTarget(t.pickedPoint)};return t.addEventListener("dblclick",n),()=>t.removeEventListener("dblclick",n)},"disableWheelZoom",0,function(e){e.inputs.removeByType("ArcRotateCameraMouseWheelInput")},"resetFocus",0,function(e,t){e.setTarget(t.target),e.alpha=t.alpha,e.beta=t.beta,e.radius=t.radius},"stepZoom",0,function(e,t){let s=e.lowerRadiusLimit??.01,n=e.upperRadiusLimit??1/0;e.radius=Math.min(n,Math.max(s,e.radius*t))}],2348);var s=e.i(28100);e.s(["ZoomButtons",0,function({onZoom:e,onReset:n}){let i="grid h-8 w-8 place-items-center rounded-md border border-edge bg-ink/80 text-lg leading-none text-fg backdrop-blur transition hover:bg-ink hover:text-white";return(0,s.jsxs)("div",{className:"absolute right-3 top-3 flex flex-col gap-1",children:[(0,s.jsx)("button",{type:"button","aria-label":"Zoom in",className:i,onClick:()=>e(t),children:"+"}),(0,s.jsx)("button",{type:"button","aria-label":"Zoom out",className:i,onClick:()=>e(1.2),children:"−"}),n?(0,s.jsx)("button",{type:"button","aria-label":"Reset camera focus to center",title:"Reset focus to center",className:i,onClick:n,children:(0,s.jsxs)("svg",{viewBox:"0 0 16 16",width:"16",height:"16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round","aria-hidden":"true",children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,s.jsx)("path",{d:"M8 1v2.5M8 12.5V15M1 8h2.5M12.5 8H15"})]})}):null]})}],2413)},76421,e=>{"use strict";var t=e.i(28100),s=e.i(11623),n=e.i(20880);async function i(e,t,s){let n=e.getReader(),i=new TextDecoder,r="";for(t.addEventListener("abort",()=>void n.cancel().catch(()=>{}));;){let{done:e,value:t}=await n.read();if(e)return;let a=(r+=i.decode(t,{stream:!0})).indexOf("\n\n");for(;a>=0;){let e=r.slice(0,a);r=r.slice(a+2);let t="message",n=[];for(let s of e.split("\n"))!s.startsWith(":")&&(s.startsWith("event:")?t=s.slice(6).trim():s.startsWith("data:")&&n.push(s.slice(5).replace(/^ /,"")));"event"===t&&n.length>0&&s(n.join("\n")),a=r.indexOf("\n\n")}}}var r=e.i(60614),a=e.i(2348),l=e.i(2413);let o=new Set,c=[{key:"interaction",label:"Clicks & picks",color:"#fb923c",types:new Set(["pointer_click","mesh_interaction"])},{key:"actors",label:"Scene actors",color:"#e879f9",types:new Set(["node_transform"])},{key:"custom",label:"Custom",color:"#34d399",types:new Set(["custom"])},{key:"camera",label:"Camera",color:"#38bdf8",types:new Set(["camera_sample"])},{key:"pointer",label:"Pointer",color:"#94a3b8",types:new Set(["pointer_move","pointer_down","pointer_up"])},{key:"perf",label:"Perf",color:"#a78bfa",types:new Set(["frame_perf"])},{key:"lifecycle",label:"Lifecycle",color:"#f472b6",types:new Set(["session_start","session_end","scene_change","focus_change","visibility_change","viewport_resize","context_lost","context_restored","runtime_error","capability_change","input_action","resource_sample","compile_stall","mesh_visibility","hover_dwell"])}];function u(e,t,s){let n=Math.max(1,s),i=new Map;c.forEach((e,t)=>{for(let s of e.types)i.set(s,t)});let r=c.map(()=>new Set);for(let s of e){let e=i.get(s.type);if(void 0===e)continue;let a=Math.min(1,Math.max(0,(s.ts-t)/n));r[e].add(Math.round(600*a))}return c.map((e,t)=>({key:e.key,label:e.label,color:e.color,marks:[...r[t]].sort((e,t)=>e-t).map(e=>e/600)})).filter(e=>e.marks.length>0)}function h(e){let t=Math.max(0,Math.round(e/1e3)),s=Math.floor(t/60);return`${s}:${(t%60).toString().padStart(2,"0")}`}function d(e){let t=e.slice(e.lastIndexOf("/")+1);return t.length>20?`${t.slice(0,19)}\u2026`:t}function p({lanes:e,duration:s,progress:n,onSeek:i,hiddenTypes:r}){let a=e.filter(e=>{let t=c.find(t=>t.key===e.key);if(!t)return!0;for(let e of t.types)if(!r.has(e))return!0;return!1});if(0===a.length)return null;let l=`${Math.min(100,Math.max(0,n/Math.max(1,s)*100))}%`;return(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"mb-1.5 flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] text-fg-muted",children:a.map(e=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-2 w-2 rounded-sm",style:{backgroundColor:e.color}}),e.label,(0,t.jsxs)("span",{className:"tabular-nums text-fg-muted",children:["(",e.marks.length,")"]})]},e.key))}),(0,t.jsxs)("button",{type:"button","aria-label":"Event timeline — click to seek",className:"relative block w-full cursor-pointer select-none rounded-md border border-edge bg-ink/60 p-1.5 text-left",onClick:e=>{var t;let n;return t=e.clientX,void i(Math.min(1,Math.max(0,(t-(n=e.currentTarget.getBoundingClientRect()).left)/(n.width||1)))*s)},children:[(0,t.jsx)("div",{className:"flex flex-col gap-1",children:a.map(e=>(0,t.jsx)("div",{className:"relative h-2.5 rounded-sm bg-white/5",children:e.marks.map((s,n)=>(0,t.jsx)("span",{"aria-hidden":!0,className:"pointer-events-none absolute top-0 h-full w-px",style:{left:`${100*s}%`,backgroundColor:e.color,opacity:.85}},n))},e.key))}),(0,t.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-y-1 w-px bg-saffron",style:{left:l}})]})]})}e.s(["SessionReplayView",0,function({baseUrl:c,apiKey:m,sessionId:f,hiddenTypes:g,isLive:b=!1}){let k=(0,s.useRef)(null),x=(0,s.useRef)(null),j=(0,s.useRef)(0),y=(0,s.useRef)(g??o),w=(0,s.useRef)(!1),v=(0,s.useRef)(null),_=(0,s.useRef)(!1),M=(0,s.useRef)(!1),C=(0,s.useRef)(null),P=(0,s.useRef)(0),N=(0,s.useRef)([]),z=(0,s.useRef)([]),S=(0,s.useRef)([]),R=(0,s.useRef)(!0),q=(0,s.useRef)("birdview"),$=(0,s.useRef)(null),L=(0,s.useRef)(null),A=(0,s.useRef)([]),I=(0,s.useRef)(null),T=(0,s.useRef)(null),[V,E]=(0,s.useState)("idle"),[O,W]=(0,s.useState)(null),[Z,F]=(0,s.useState)(0),[B,H]=(0,s.useState)(0),[K,U]=(0,s.useState)(!1),[D,X]=(0,s.useState)([]),[G,J]=(0,s.useState)([]),[Y,Q]=(0,s.useState)([]),[ee,et]=(0,s.useState)(!0),[es,en]=(0,s.useState)(!1),[ei,er]=(0,s.useState)("birdview"),[ea,el]=(0,s.useState)(null),[eo,ec]=(0,s.useState)(!1),[eu,eh]=(0,s.useState)(!1),[ed,ep]=(0,s.useState)(null);(0,s.useEffect)(()=>{R.current=ee},[ee]),(0,s.useEffect)(()=>{M.current=K},[K]),(0,s.useEffect)(()=>{_.current=es},[es]),(0,s.useEffect)(()=>{q.current=ei,w.current=!0},[ei]),(0,s.useEffect)(()=>{y.current=g??o,w.current=!0},[g]),(0,s.useEffect)(()=>{let t=k.current;if(!t)return;let s=!1,i=null;return E("loading"),W(null),U(!1),F(0),H(0),X([]),J([]),Q([]),el(null),$.current=null,N.current=[],z.current=[],S.current=[],j.current=0,I.current=null,A.current=[],L.current=null,ec(!1),eh(!1),ep(null),(async()=>{try{let[{Engine:l},{Scene:o},{ArcRotateCamera:h},{UniversalCamera:d},{HemisphericLight:p},{Vector3:g,Color3:k,Color4:T,Matrix:V},{MeshBuilder:O},{StandardMaterial:W},{fetchSessionEvents:Z,ReplayPlayer:B}]=await Promise.all([e.A(3905),e.A(94432),e.A(59694),e.A(68480),e.A(88004),e.A(27940),e.A(27124),e.A(14074),e.A(85461),e.A(18561)]),K=await Z({endpoint:c,apiKey:m,sessionId:f});if(s)return;if(0===K.length)return void E("empty");let D=K[0].ts,G=K[0].ts;for(let e of K)e.ts<D&&(D=e.ts),e.ts>G&&(G=e.ts);let Y=new n.CollectorApi(c,m),ee=await (0,r.mergeSceneProxies)(Y,{since:D-1,until:G+1});if(s)return;let et=[...K].sort((e,t)=>e.ts-t.ts),es=et[0].ts,ei=[],er=[],ea=new Map,eo=null;for(let e of et){let t=e.ts-es;if("camera_sample"===e.type){eo=[e.position[0],e.position[1],e.position[2]],ei.push({at:t,position:eo,direction:[e.direction[0],e.direction[1],e.direction[2]],..."number"==typeof e.fov?{fov:e.fov}:{}});continue}if("node_transform"===e.type){if(e.boneId)continue;let s=e.childPath?`${e.nodeId}/${e.childPath}`:e.nodeId,n=ea.get(s);n||(n=[],ea.set(s,n)),n.push({at:t,position:[e.position[0],e.position[1],e.position[2]]});continue}if("pointer_click"===e.type&&e.hitPoint){let s=e.ray?.origin??eo;if(!s)continue;er.push({at:t,type:"pointer_click",origin:[s[0],s[1],s[2]],hit:[e.hitPoint[0],e.hitPoint[1],e.hitPoint[2]],...e.hitMesh?{mesh:e.hitMesh}:{}});continue}if("mesh_interaction"===e.type&&e.point){if(!eo)continue;er.push({at:t,type:"mesh_interaction",origin:[eo[0],eo[1],eo[2]],hit:[e.point[0],e.point[1],e.point[2]],...e.mesh?{mesh:e.mesh}:{}})}}if(0===ei.length&&0===er.length&&0===ea.size)return void E("empty");let ec=new l(t,!0,{preserveDrawingBuffer:!1}),eu=new o(ec);eu.clearColor=new T(.04,.05,.07,1),L.current=eu;let eh=new h("birdview-cam",-Math.PI/2,.22,12,g.Zero(),eu);eh.attachControl(t,!0),(0,a.disableWheelZoom)(eh),x.current=eh,new p("replay-light",new g(0,1,0),eu);let ed=new d("replay-follow-cam",g.Zero(),eu);ed.minZ=.05,ed.fov=Math.PI/3,eu.activeCamera=eh;let ep="birdview",em=O.CreateGround("replay-ground",{width:20,height:20,subdivisions:20},eu),ef=new W("replay-ground-mat",eu);ef.diffuseColor=new k(.12,.14,.18),ef.wireframe=!0,em.material=ef;let eg=new Set(ea.keys()),eb=new Set(Array.from(eg,e=>e.slice(e.lastIndexOf("/")+1))),ek=[],ex=[],ej=new Set,ey=e=>{if(ej.has(e.name)||(e=>{if(e.path){for(let t of eg)if(e.path===t||e.path.endsWith(`/${t}`))return!0}return eb.has(e.name)})(e))return!1;ej.add(e.name);let t=e.aabb,s=Math.max(t[3]-t[0],.001),n=Math.max(t[4]-t[1],.001),i=Math.max(t[5]-t[2],.001),r=O.CreateBox(`replay-proxy-${e.name}`,{width:s,height:n,depth:i},eu);r.position=new g((t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2);let a=new W(`replay-proxy-mat-${e.name}`,eu);return a.wireframe=!0,a.disableLighting=!0,a.emissiveColor=new k(.32,.4,.52),a.alpha=.35,r.material=a,r.isPickable=!1,I.current&&r.setEnabled(!1),ex.push(r),ek.push({name:e.name,center:new g((t[0]+t[3])/2,t[4],(t[2]+t[5])/2)}),!0};for(let e of ee)ey(e);N.current=ek,z.current=ek.map(()=>null),J(ek.map(e=>e.name)),A.current=ex;let ew=async()=>{let e=await (0,r.mergeSceneProxies)(Y,{since:D-1}).catch(()=>null);if(s||!e)return;let t=!1;for(let s of e)ey(s)&&(t=!0);t&&(N.current=ek,z.current=ek.map((e,t)=>z.current[t]??null),J(ek.map(e=>e.name)),w.current=!0)},ev=[[.91,.47,.98],[.4,.95,.6],[.98,.8,.3],[.45,.85,1]],e_=e=>{let t=e.indexOf("/");return -1===t?e:e.slice(0,t)},eM=[],eC=new Map,eP=0,eN=(e,t,s)=>{let n=O.CreateSphere(`replay-actor-${e}`,{diameter:.5,segments:12},eu),i=new W(`replay-actor-mat-${e}`,eu);i.disableLighting=!0;let r=ev[eP%ev.length];i.emissiveColor=new k(r[0],r[1],r[2]),n.material=i,n.isPickable=!1,n.isVisible=!1,eP++;let a={key:e,mesh:n,samples:s,driveKey:t};return eM.push(a),eC.set(e,a),a},ez=new Map,eS=new Map;for(let[e,t]of ea){if(0===t.length)continue;let s=e_(e);if(e===s)ez.set(s,t);else{let n=eS.get(s);(!n||t.length>n.samples.length)&&eS.set(s,{key:e,samples:t})}}for(let e of new Set([...ez.keys(),...eS.keys()])){let t=ez.get(e);if(t)eN(e,e,t);else{let t=eS.get(e);eN(e,t.key,t.samples)}}S.current=eM.map(()=>null),Q(eM.map(e=>e.key));let eR=(e,t)=>{if(0===e.length||t<e[0].at)return null;let s=0,n=e.length-1,i=-1;for(;s<=n;){let r=s+n>>1;e[r].at<=t?(i=r,s=r+1):n=r-1}if(i<0)return null;let r=e[i],a=e[i+1];if(!a)return r.position;let l=a.at-r.at;if(l<=0)return r.position;let o=Math.max(0,Math.min(1,(t-r.at)/l));return[r.position[0]+(a.position[0]-r.position[0])*o,r.position[1]+(a.position[1]-r.position[1])*o,r.position[2]+(a.position[2]-r.position[2])*o]},eq=1,e$=1.4,eL=O.CreateSphere("replay-camera-origin",{diameter:.35,segments:12},eu),eA=new W("replay-camera-origin-mat",eu);eA.disableLighting=!0,eA.emissiveColor=new k(.6,.9,1),eL.material=eA;let eI=O.CreateLines("replay-camera-frustum",{points:[g.Zero(),new g(0,0,1)]},eu);eI.color=new k(.7,.95,1),eI.isPickable=!1;let eT=O.CreateCylinder("replay-camera-cone",{height:1,diameterTop:0,diameterBottom:1,tessellation:24},eu);eT.bakeTransformIntoVertices(V.RotationX(-Math.PI/2).multiply(V.Translation(0,0,.5)));let eV=new W("replay-camera-cone-mat",eu);eV.disableLighting=!0,eV.emissiveColor=new k(.4,.78,1),eV.alpha=.16,eV.backFaceCulling=!1,eT.material=eV,eT.isPickable=!1,eT.isVisible=!1;let eE=(e,t,s,n)=>{if(e?.dispose(),0===s.length)return null;let i=O.CreateLineSystem(t,{lines:s,...n?{colors:n,useVertexAlpha:!0}:{}},eu);return i.isPickable=!1,i},eO=null,eW=null,eZ=null,eF=()=>{let e=y.current,t=[],s=[];for(let n of er){if(e.has(n.type))continue;let[i,r,a]=n.hit,l="mesh_interaction"===n.type?new T(.45,.85,1,.32):new T(1,.7,.35,.32);t.push([new g(i-.1,r,a),new g(i+.1,r,a)]),t.push([new g(i,r-.1,a),new g(i,r+.1,a)]),t.push([new g(i,r,a-.1),new g(i,r,a+.1)]),s.push([l,l],[l,l],[l,l])}eZ=eE(eZ,"replay-persistent-marks",t,s)};eF();let eB=O.CreateSphere("replay-glow",{diameter:1,segments:12},eu),eH=new W("replay-glow-mat",eu);eH.disableLighting=!0,eH.emissiveColor=new k(1,.62,.2),eH.alpha=0,eB.material=eH,eB.isPickable=!1,eB.isVisible=!1;let eK=1/0,eU=1/0,eD=1/0,eX=-1/0,eG=-1/0,eJ=-1/0,eY=!1,eQ=e=>{eK=Math.min(eK,e[0]),eU=Math.min(eU,e[1]),eD=Math.min(eD,e[2]),eX=Math.max(eX,e[0]),eG=Math.max(eG,e[1]),eJ=Math.max(eJ,e[2])},e0=()=>{let e;if(eY||!Number.isFinite(eK))return;let t=(eK+eX)/2,s=(eU+eG)/2,n=(eD+eJ)/2,i=eX-eK,r=eG-eU,a=eJ-eD,l=Math.sqrt(i*i+r*r+a*a);eh.setTarget(new g(t,s,n)),e=1.3*l,eh.radius=Number.isFinite(e)?Math.max(8,e):12,eY=!0};for(let e of ei)eQ(e.position);for(let e of er)eQ(e.origin),eQ(e.hit);for(let e of ea.values())for(let t of e)eQ(t.position);for(let e of ee)eQ(e.aabb.slice(0,3)),eQ(e.aabb.slice(3,6));e0();{let e=eX-eK,t=eG-eU,s=eJ-eD,n=Number.isFinite(e)?Math.sqrt(e*e+t*t+s*s):0,i=Math.min(Math.max(.035*n,.45),Math.max(.45,.18*n));eq=i/.35,e$=Math.max(.16*n,3.2*i,1.4),eL.scaling.setAll(eq)}let e1=-1,e2=e=>{var n;let i=w.current;if(!i&&e===e1)return;w.current=!1,e1=e,i&&eF();let r=y.current;(n=q.current)!==ep&&(ep=n,"follow"===n?(eh.detachControl(),eu.activeCamera=ed):(eu.activeCamera=eh,eh.attachControl(t,!0)));let a="follow"===q.current,l=r.has("camera_sample")?null:(e=>{if(0===ei.length)return null;let t=0,s=ei.length-1,n=-1;for(;t<=s;){let i=t+s>>1;ei[i].at<=e?(n=i,t=i+1):s=i-1}return n>=0?ei[n]:null})(e);if(l){eL.position.set(l.position[0],l.position[1],l.position[2]);let e=l.direction,t=Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2])||1,s=e$,n=new g(l.position[0]+e[0]/t*s,l.position[1]+e[1]/t*s,l.position[2]+e[2]/t*s);if(a)eL.isVisible=!1,eI.isVisible=!1,eT.isVisible=!1,ed.position.set(l.position[0],l.position[1],l.position[2]),ed.setTarget(n),l.fov&&l.fov>0&&(ed.fov=l.fov);else{eL.isVisible=!0,eI.isVisible=!0,eI=O.CreateLines("replay-camera-frustum",{points:[eL.position.clone(),n],instance:eI},eu);let e=(l.fov&&l.fov>0?l.fov:Math.PI/3)/2,t=s*Math.tan(e);eT.isVisible=!0,eT.position.copyFrom(eL.position),eT.lookAt(n),eT.scaling.set(2*t,2*t,s)}}else eL.isVisible=!1,eI.isVisible=!1,eT.isVisible=!1;let o=r.has("node_transform");for(let t of eM){let s=o?null:eR(t.samples,e);if(!s){t.mesh.isVisible=!1;continue}t.mesh.isVisible=!0,t.mesh.position.set(s[0],s[1],s[2])}let c=er.filter(t=>!r.has(t.type)&&t.at<=e&&t.at>=e-2200),u=[],h=[],d=[],p=[],m=null;for(let t of c){let s=e-t.at,n=Math.max(0,Math.min(1,1-s/2200)),i=new T(1,.62,.2,.18+.72*n),r=new g(t.origin[0],t.origin[1],t.origin[2]),a=new g(t.hit[0],t.hit[1],t.hit[2]);u.push([r,a]),h.push([i,i]);let l=.12+.08*n;d.push([new g(a.x-l,a.y,a.z),new g(a.x+l,a.y,a.z)]),d.push([new g(a.x,a.y-l,a.z),new g(a.x,a.y+l,a.z)]),d.push([new g(a.x,a.y,a.z-l),new g(a.x,a.y,a.z+l)]);let o=new T(1,.78,.42,.22+.72*n);if(p.push([o,o],[o,o],[o,o]),s<=900){let e=1-s/900;(!m||e>m.t)&&(m={hit:t.hit,t:e})}}if(m){let e=.25+.9*m.t;eB.isVisible=!0,eB.scaling.set(e,e,e),eB.position.set(m.hit[0],m.hit[1],m.hit[2]),eH.alpha=.12+.5*m.t}else eB.isVisible=!1;let f=null,b=-1/0;for(let e of c)e.mesh&&e.at>b&&(b=e.at,f=e.mesh);f!==$.current&&($.current=f,s||el(f)),eO=eE(eO,"replay-trail-lines",u,h),eW=eE(eW,"replay-trail-hits",d,p)},e3=et.length>0?et[et.length-1].ts-es:0,e5=e3,e4=et.length>0?et[et.length-1].ts:-1/0,e8=et.map(e=>({type:e.type,ts:e.ts})),e6=0,e7=null;if(b)v.current=null,C.current=e=>{if(s)return;let t="number"==typeof e.ts?e.ts:NaN;if(!Number.isFinite(t)||t<=e4)return;e4=t;let n=t-es;if(n>e5&&(e5=n),n>e3&&(e3=n),e8.push({type:e.type,ts:t}),"camera_sample"===e.type){let t=e.position,s=e.direction;if(t&&s){let i=[t[0],t[1],t[2]];eo=i;let r="number"==typeof e.fov?e.fov:void 0;ei.push({at:n,position:i,direction:[s[0],s[1],s[2]],...void 0!==r?{fov:r}:{}}),eQ(i),e0()}}else if("pointer_click"===e.type){let t=e.hitPoint,s=e.ray,i=s?.origin??eo;if(t&&i){let s="string"==typeof e.hitMesh?e.hitMesh:void 0;er.push({at:n,type:"pointer_click",origin:[i[0],i[1],i[2]],hit:[t[0],t[1],t[2]],...s?{mesh:s}:{}}),eQ(t),w.current=!0}}else if("mesh_interaction"===e.type){let t=e.point;if(t&&eo){let s="string"==typeof e.mesh?e.mesh:void 0;er.push({at:n,type:"mesh_interaction",origin:[eo[0],eo[1],eo[2]],hit:[t[0],t[1],t[2]],...s?{mesh:s}:{}}),eQ(t),w.current=!0}}else if("node_transform"===e.type){let t=e.position;if(e.boneId||"string"!=typeof e.nodeId||!t)return;let s="string"==typeof e.childPath?e.childPath:void 0,i=s?`${e.nodeId}/${s}`:e.nodeId;((e,t)=>{let s=e_(e),n=eC.get(s);if(!n){n=eN(s,e,[]);let t=S.current;S.current=eM.map((e,s)=>t[s]??null),Q(eM.map(e=>e.key))}e===n.driveKey?n.samples.push(t):e===s&&n.driveKey!==s&&(n.driveKey=s,n.samples.length=0,n.samples.push(t))})(i,{at:n,position:[t[0],t[1],t[2]]}),eQ(t)}let i=performance.now();i-e6>250&&(e6=i,X(u(e8,es,Math.max(1,e3)))),_.current&&n>j.current&&(j.current=n)},P.current=e3,j.current=e3,_.current=!0,en(!0),U(!1),F(e3),H(e3),X(u(e8,es,Math.max(1,e3))),e2(e3),e7=setInterval(()=>void ew(),4e3);else{let e=new B(K,{reset(){},apply(){}},{onProgress:e=>{s||(j.current=e,H(e))},onComplete:()=>{s||U(!1)}});v.current=e,F(e.durationMs),X(u(et,es,e.durationMs)),e.update(0),e2(0)}let e9=V.Identity(),te=new Map,tt=e=>{let t=te.get(e);if(t)return t;let s={w:e.offsetWidth||60,h:e.offsetHeight||16};return e.offsetWidth>0&&te.set(e,s),s},ts=performance.now(),tn=0;ec.runRenderLoop(()=>{if(b){let e=performance.now(),t=e-ts;if(ts=e,_.current)j.current+=t,j.current>e3&&(e3=j.current),P.current=e3,H(j.current),e-tn>250&&(tn=e,F(e3));else if(M.current){let e=j.current+t;e>=e3&&(e=e3),j.current=e,H(e)}}e2(j.current),eu.render(),(()=>{if(!R.current)return;let e=t.clientWidth||ec.getRenderWidth(),s=t.clientHeight||ec.getRenderHeight(),n=eh.viewport.toGlobal(e,s),i=eu.getTransformMatrix(),r=$.current,a=e=>e.slice(e.lastIndexOf("/")+1),l=e=>!!r&&(r===e||a(r)===a(e)||e.endsWith(`/${r}`)||r.endsWith(`/${e}`)),o=[],c=N.current,u=z.current;for(let e=0;e<c.length;e++){let t=u[e];if(!t)continue;let s=g.Project(c[e].center,e9,i,n);if(s.z<0||s.z>1){t.style.opacity="0";continue}o.push({el:t,x:s.x,y:s.y,liftPct:140,highlighted:l(c[e].name)})}let h=S.current;for(let e=0;e<eM.length;e++){let t=h[e];if(!t)continue;let s=eM[e].mesh;if(!s.isVisible){t.style.opacity="0";continue}let r=g.Project(s.position,e9,i,n);if(r.z<0||r.z>1){t.style.opacity="0";continue}o.push({el:t,x:r.x,y:r.y,liftPct:180,highlighted:l(eM[e].key)})}o.sort((e,t)=>e.highlighted!==t.highlighted?e.highlighted?-1:1:e.y-t.y||e.x-t.x);let d=[];for(let e of o){let{w:t,h:s}=tt(e.el),n=e.x-t/2,i=e.x+t/2,r=e.y-e.liftPct/100*s,a=r,l=!0,o=0;for(;l&&o++<256;)for(let e of(l=!1,d))n<e.right&&i>e.left&&a<e.bottom&&a+s>e.top&&(a=e.bottom+1,l=!0);d.push({left:n,right:i,top:a,bottom:a+s});let c=a-r;e.el.style.opacity="1",e.el.style.zIndex=e.highlighted?"10":"",e.el.style.transform=`translate(${e.x}px, ${e.y+c}px) translate(-50%, -${e.liftPct}%)`}})()});let ti=()=>ec.resize();window.addEventListener("resize",ti),E("ready"),i=()=>{window.removeEventListener("resize",ti),e7&&clearInterval(e7),C.current=null,v.current?.pause(),eI.dispose(),eT.dispose(),eO?.dispose(),eW?.dispose(),eZ?.dispose(),eB.dispose(),I.current?.dispose(),I.current=null,A.current=[],L.current=null,eu.dispose(),ec.dispose(),x.current=null,v.current=null}}catch(e){if(s)return;E("error"),W(e instanceof Error?e.message:"Failed to load replay.")}})(),()=>{s=!0,i?.()}},[c,m,f,b]);let em=(0,s.useCallback)(()=>{if(b){en(!1),_.current=!1,U(e=>{let t=!e;return M.current=t,t});return}let e=v.current;e&&U(t=>(t?e.pause():e.play(),!t))},[b]),ef=(0,s.useCallback)(e=>{if(b){en(!1),_.current=!1,U(!1),M.current=!1,j.current=e,H(e);return}let t=v.current;t&&(t.pause(),t.seek(e),U(!1),j.current=e,H(e))},[b]),eg=(0,s.useCallback)(()=>{en(!0),_.current=!0,U(!1),M.current=!1,j.current=P.current,H(P.current)},[]),{gated:eb}=function(e,t,r,a,l,o){let[c,u]=(0,s.useState)("idle"),[h,d]=(0,s.useState)(!1),[p,m]=(0,s.useState)(0),f=(0,s.useRef)(l),g=(0,s.useRef)(o);return f.current=l,g.current=o,(0,s.useEffect)(()=>{if(!a||!t||!e||!r)return void u("idle");let s=new n.CollectorApi(e,t),l=!1,o=0,c=null,h=null;d(!1),m(0);let p=()=>{if(l)return;u("reconnecting");let e=Math.min(1e3*2**o,15e3);o+=1,h=setTimeout(()=>void b(),e)},b=async()=>{let e;if(!l){u(0===o?"connecting":"reconnecting"),g.current(),m(0);try{({token:e}=await s.liveToken())}catch{p();return}if(!l){c=new AbortController;try{let t=await fetch(s.liveSessionUrl(e,r),{headers:{accept:"text/event-stream"},cache:"no-store",signal:c.signal});if(403===t.status){d(!0),u("idle");return}if(!t.ok||!t.body)return void p();o=0,u("open"),await i(t.body,c.signal,e=>{try{f.current(JSON.parse(e)),m(e=>e+1)}catch{}}),l||p()}catch{l||p()}}}};return b(),()=>{l=!0,h&&clearTimeout(h),c?.abort()}},[e,t,r,a]),{status:c,gated:h,count:p}}(c,m,f,b&&"ready"===V,e=>C.current?.(e),()=>{}),ek=(0,s.useCallback)(e=>{if(!ea)return!1;if(ea===e)return!0;let t=e=>e.slice(e.lastIndexOf("/")+1);return t(ea)===t(e)||e.endsWith(`/${ea}`)||ea.endsWith(`/${e}`)},[ea]),ex=(0,s.useCallback)(async t=>{let s=L.current;if(s){eh(!0),ep(`Loading ${t.name}…`);try{let[{loadSceneBackdrop:n}]=await Promise.all([e.A(3633),e.A(91064)]);if(L.current!==s)return;I.current?.dispose();let i=await n(s,t);if(L.current!==s)return void i.dispose();for(let e of(I.current=i,A.current))e.setEnabled(!1);w.current=!0,ec(!0),ep(`Loaded ${t.name} (${i.meshes.length} meshes).`)}catch(e){ep(e instanceof Error?e.message:"Could not load model.")}finally{eh(!1)}}},[]),ej=(0,s.useCallback)(e=>{let t=e.target.files?.[0];e.target.value="",t&&ex(t)},[ex]),ey=(0,s.useCallback)(()=>{for(let e of(I.current?.dispose(),I.current=null,A.current))e.setEnabled(!0);w.current=!0,ec(!1),ep(null)},[]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:k,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),(0,t.jsxs)("div",{className:`pointer-events-none absolute inset-0 overflow-hidden ${ee?"":"hidden"}`,children:[G.map((e,s)=>(0,t.jsx)("div",{title:e,ref:e=>{e&&(z.current[s]=e)},className:`absolute left-0 top-0 whitespace-nowrap rounded px-1.5 py-0.5 text-[10px] font-medium opacity-0 transition-colors ${ek(e)?"bg-amber/30 text-white ring-2 ring-amber shadow-lg shadow-amber/30":"bg-ink/80 text-saffron ring-1 ring-amber/30"}`,children:d(e)},e)),Y.map((e,s)=>(0,t.jsx)("div",{title:e,ref:e=>{e&&(S.current[s]=e)},className:`absolute left-0 top-0 whitespace-nowrap rounded px-1.5 py-0.5 text-[10px] font-medium opacity-0 transition-colors ${ek(e)?"bg-fuchsia-400/30 text-white ring-2 ring-fuchsia-300 shadow-lg shadow-fuchsia-500/30":"bg-ink/80 text-fuchsia-300 ring-1 ring-fuchsia-400/30"}`,children:d(e)},`actor-${e}`))]}),"ready"===V&&(G.length>0||Y.length>0)?(0,t.jsx)("button",{type:"button",onClick:()=>et(e=>!e),className:"absolute left-3 top-3 rounded-md border border-edge bg-ink/80 px-2 py-1 text-xs font-medium text-fg transition hover:bg-ink hover:text-white","aria-pressed":ee?"true":"false",children:ee?"Hide labels":"Show labels"}):null,"ready"===V&&"birdview"===ei?(0,t.jsx)(l.ZoomButtons,{onZoom:e=>x.current&&(0,a.stepZoom)(x.current,e)}):null,"ready"!==V?(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===V?"Loading replay…":"empty"===V?"No replayable events (raw retention may be disabled).":"error"===V?O??"Replay unavailable.":null}):null]}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-3",children:[(0,t.jsx)("button",{type:"button",onClick:em,disabled:"ready"!==V,className:"rounded-md bg-amber px-3 py-1.5 text-sm font-medium text-ink transition hover:bg-ember disabled:opacity-40",children:K?"Pause":"Play"}),b?(0,t.jsxs)("button",{type:"button",onClick:eg,disabled:"ready"!==V,"aria-pressed":es?"true":"false",className:`flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-sm font-medium transition disabled:opacity-40 ${es?"bg-rose-500/20 text-rose-300 ring-1 ring-rose-400/40":"border border-edge text-fg hover:bg-ink hover:text-white"}`,children:[(0,t.jsx)("span",{className:`inline-block h-2 w-2 rounded-full ${es?"animate-pulse bg-rose-400":"bg-fg-muted"}`}),es?"LIVE":"Resume live"]}):null,(0,t.jsxs)("div",{role:"group","aria-label":"Camera view",className:"flex items-center rounded-md border border-edge p-0.5 text-xs font-medium",children:[(0,t.jsx)("button",{type:"button",onClick:()=>er("birdview"),disabled:"ready"!==V,"aria-pressed":"birdview"===ei?"true":"false",className:`rounded px-2 py-1 transition disabled:opacity-40 ${"birdview"===ei?"bg-amber text-ink":"text-fg hover:text-white"}`,children:"Birdview"}),(0,t.jsx)("button",{type:"button",onClick:()=>er("follow"),disabled:"ready"!==V,"aria-pressed":"follow"===ei?"true":"false",className:`rounded px-2 py-1 transition disabled:opacity-40 ${"follow"===ei?"bg-amber text-ink":"text-fg hover:text-white"}`,children:"Follow camera"})]}),(0,t.jsx)("span",{className:"w-12 text-right font-mono text-xs tabular-nums text-fg-muted",children:h(B)}),(0,t.jsx)("input",{type:"range",min:0,max:Math.max(1,Z),step:50,value:Math.min(B,Z),onChange:e=>ef(Number(e.target.value)),disabled:"ready"!==V,className:"flex-1 accent-amber"}),(0,t.jsx)("span",{className:"w-12 font-mono text-xs tabular-nums text-fg-muted",children:h(Z)})]}),"ready"===V?(0,t.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-3",children:[(0,t.jsx)("input",{ref:T,type:"file",accept:".glb,.gltf,model/gltf-binary,model/gltf+json",onChange:ej,className:"hidden"}),(0,t.jsx)("button",{type:"button",onClick:()=>T.current?.click(),disabled:eu,className:"rounded-md border border-edge bg-ink/80 px-2.5 py-1.5 text-xs font-medium text-fg transition hover:bg-ink hover:text-white disabled:opacity-40",children:eu?"Loading model…":eo?"Replace model (.glb)":"Load model (.glb)"}),eo?(0,t.jsx)("button",{type:"button",onClick:ey,disabled:eu,className:"rounded-md border border-edge px-2.5 py-1.5 text-xs font-medium text-fg transition hover:bg-ink hover:text-white disabled:opacity-40",children:"Remove model"}):null,ed?(0,t.jsx)("span",{className:"text-xs text-fg-muted",role:"status",children:ed}):(0,t.jsx)("span",{className:"text-xs text-fg-muted",children:"Load a glTF model to replace the wireframe boxes with your real scene."})]}):null,"ready"===V?(0,t.jsx)(p,{lanes:D,duration:Z,progress:B,onSeek:ef,hiddenTypes:g??o}):null,b&&eb&&"ready"===V?(0,t.jsx)("p",{className:"mt-2 text-xs text-fg-muted",children:"Live follow is unavailable — raw session retention is disabled on the collector."}):null]})}],76421)},3905,e=>{e.v(t=>Promise.all(["static/chunks/3pdpaqzwhhijn.js","static/chunks/08bm3ye5govev.js","static/chunks/0g6u34xkzrpjn.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2gh4z57fem0_v.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0g7p8zp2kxve5.js"].map(t=>e.l(t))).then(()=>t(66232)))},94432,e=>{e.v(t=>Promise.all(["static/chunks/2kje_jvmwsvwo.js","static/chunks/1j--a56ji33_x.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/3vaho-xrtuchd.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vpcaaf-0dn7q.js"].map(t=>e.l(t))).then(()=>t(92494)))},59694,e=>{e.v(t=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/245h82k-g1nxr.js","static/chunks/3ovd8o_usay7j.js","static/chunks/3vaho-xrtuchd.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/2wdk-kbm-n-m5.js"].map(t=>e.l(t))).then(()=>t(67186)))},68480,e=>{e.v(t=>Promise.all(["static/chunks/1--kelnig7pxx.js","static/chunks/1j--a56ji33_x.js","static/chunks/1vkww9l6lgqag.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2vaoftqgc44cg.js","static/chunks/3vaho-xrtuchd.js","static/chunks/3rl45k759wfi1.js","static/chunks/25ctnyh7njp-d.js"].map(t=>e.l(t))).then(()=>t(25062)))},88004,e=>{e.v(t=>Promise.all(["static/chunks/2p8dbh81chhon.js","static/chunks/1oara6fkfvgs3.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(t=>e.l(t))).then(()=>t(15768)))},27940,e=>{e.v(t=>Promise.all(["static/chunks/0w0sx062qmcsh.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(t=>e.l(t))).then(()=>t(23235)))},27124,e=>{e.v(t=>Promise.all(["static/chunks/1par9m038tiov.js","static/chunks/1j--a56ji33_x.js","static/chunks/2j-sax2xfdv7l.js","static/chunks/3rx1jhuop94-l.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/0gwa154w_0wuh.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/3vaho-xrtuchd.js","static/chunks/2wdk-kbm-n-m5.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/10w513bgw-bgi.js"].map(t=>e.l(t))).then(()=>t(70928)))},14074,e=>{e.v(t=>Promise.all(["static/chunks/0n0thxa3jkour.js","static/chunks/1tdg_eolxlcdl.js","static/chunks/1j--a56ji33_x.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/0vddljjnmozzx.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0f_nv15a8q415.js","static/chunks/3g_h_00xs9u59.js","static/chunks/2npk7tr63h7rl.js","static/chunks/25ctnyh7njp-d.js"].map(t=>e.l(t))).then(()=>t(87566)))},85461,e=>{e.v(t=>Promise.all(["static/chunks/0n8n481szj90g.js"].map(t=>e.l(t))).then(()=>t(57092)))},18561,e=>{e.v(t=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/1vkww9l6lgqag.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/117ys3lltfmcu.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js"].map(t=>e.l(t))).then(()=>t(85106)))},3633,e=>{e.v(t=>Promise.all(["static/chunks/2l_oqx9idxcs8.js","static/chunks/25ctnyh7njp-d.js"].map(t=>e.l(t))).then(()=>t(97900)))},91064,e=>{e.v(t=>Promise.all(["static/chunks/17v12p4sfraa0.js","static/chunks/1j--a56ji33_x.js","static/chunks/3rx1jhuop94-l.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/17dmbt396_tyq.js","static/chunks/0vddljjnmozzx.js","static/chunks/17d1isrw8gtnb.js","static/chunks/0gwa154w_0wuh.js","static/chunks/3g4e2txsrb2p2.js","static/chunks/3urd7r018nel4.js","static/chunks/2zljunurdji0q.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2h1uw3cluvmmo.js","static/chunks/3vaho-xrtuchd.js","static/chunks/2npk7tr63h7rl.js","static/chunks/3g_h_00xs9u59.js","static/chunks/0f_nv15a8q415.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/40acif2eh_unv.js","static/chunks/3r2hbpm4wju16.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2wdk-kbm-n-m5.js","static/chunks/3rl45k759wfi1.js","static/chunks/1st81sc3owvku.js"].map(t=>e.l(t))).then(()=>t(83572)))}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,3784,t=>{"use strict";var e=t.i(95330),o=t.i(82350),s=t.i(48477);class i extends e.FlowGraphExecutionBlockWithOutSignal{constructor(t){super(t),this.sound=this.registerDataInput("sound",o.RichTypeAny),this.volume=this.registerDataInput("volume",o.RichTypeNumber,1),this.startOffset=this.registerDataInput("startOffset",o.RichTypeNumber,0),this.loop=this.registerDataInput("loop",o.RichTypeBoolean,!1)}_execute(t,e){let o=this.sound.getValue(t);if(!o){this._reportError(t,"No sound provided"),this.out._activateSignal(t);return}let s=this.volume.getValue(t),i=this.startOffset.getValue(t),l=this.loop.getValue(t);o.play({volume:s,startOffset:i,loop:l}),this.out._activateSignal(t)}getClassName(){return"FlowGraphPlaySoundBlock"}}let l=!1;function a(){l||(l=!0,(0,s.RegisterClass)("FlowGraphPlaySoundBlock",i))}t.s(["FlowGraphPlaySoundBlock",0,i,"RegisterFlowGraphPlaySoundBlock",0,a],90026),a(),t.s([],99676),t.i(99676),t.i(90026),t.s(["FlowGraphPlaySoundBlock",0,i],3784)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2348,2413,t=>{"use strict";let e=1/1.2;t.s(["ZOOM_IN_FACTOR",0,e,"ZOOM_OUT_FACTOR",0,1.2,"attachDoubleClickFocus",0,function(t,e,s){let a=()=>{let e=t.pick(t.pointerX,t.pointerY);e?.hit&&e.pickedPoint&&s.setTarget(e.pickedPoint)};return e.addEventListener("dblclick",a),()=>e.removeEventListener("dblclick",a)},"disableWheelZoom",0,function(t){t.inputs.removeByType("ArcRotateCameraMouseWheelInput")},"resetFocus",0,function(t,e){t.setTarget(e.target),t.alpha=e.alpha,t.beta=e.beta,t.radius=e.radius},"stepZoom",0,function(t,e){let s=t.lowerRadiusLimit??.01,a=t.upperRadiusLimit??1/0;t.radius=Math.min(a,Math.max(s,t.radius*e))}],2348);var s=t.i(28100);t.s(["ZoomButtons",0,function({onZoom:t,onReset:a}){let n="grid h-8 w-8 place-items-center rounded-md border border-edge bg-ink/80 text-lg leading-none text-fg backdrop-blur transition hover:bg-ink hover:text-white";return(0,s.jsxs)("div",{className:"absolute right-3 top-3 flex flex-col gap-1",children:[(0,s.jsx)("button",{type:"button","aria-label":"Zoom in",className:n,onClick:()=>t(e),children:"+"}),(0,s.jsx)("button",{type:"button","aria-label":"Zoom out",className:n,onClick:()=>t(1.2),children:"−"}),a?(0,s.jsx)("button",{type:"button","aria-label":"Reset camera focus to center",title:"Reset focus to center",className:n,onClick:a,children:(0,s.jsxs)("svg",{viewBox:"0 0 16 16",width:"16",height:"16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round","aria-hidden":"true",children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,s.jsx)("path",{d:"M8 1v2.5M8 12.5V15M1 8h2.5M12.5 8H15"})]})}):null]})}],2413)},25476,t=>{"use strict";t.s(["attachMeshHover",0,function(t,e,s){let a=0,n=null,r=e=>{let r=e.offsetX,c=e.offsetY;a||(a=requestAnimationFrame(()=>{var e,i;let l;a=0;let h=t.pick(r,c,t=>t.isPickable&&t.isEnabled()),o=h?.pickedMesh?(e=h.pickedMesh,i=h.thinInstanceIndex??-1,(l=e.metadata)?i>=0&&l.hoverLabels?l.hoverLabels[i]??null:l.hoverLabel??null:null):null;o?s({label:o,x:r,y:c}):null!==n&&s(null),n=o}))},c=()=>{a&&(cancelAnimationFrame(a),a=0),null!==n&&(n=null,s(null))};return e.addEventListener("pointermove",r),e.addEventListener("pointerleave",c),()=>{e.removeEventListener("pointermove",r),e.removeEventListener("pointerleave",c),a&&cancelAnimationFrame(a)}}])},53993,t=>{"use strict";var e=t.i(28100),s=t.i(11623),a=t.i(56054),n=t.i(2348),r=t.i(25476),c=t.i(18637),i=t.i(2413);function l({shape:t,onChange:s}){let a=t=>`h-8 px-2.5 text-xs font-medium leading-none transition first:rounded-l-md last:rounded-r-md ${t?"bg-ink text-white":"bg-ink/80 text-fg hover:text-white"}`,n="sphere"===t,r="cube"===t;return(0,e.jsxs)("div",{className:"absolute left-3 top-3 flex overflow-hidden rounded-md border border-edge backdrop-blur",role:"group","aria-label":"Voxel marker shape",children:[(0,e.jsx)("button",{type:"button",className:a(n),"aria-pressed":n,onClick:()=>s("sphere"),children:"Spheres"}),(0,e.jsx)("button",{type:"button",className:a(r),"aria-pressed":r,onClick:()=>s("cube"),children:"Cubes"})]})}t.s(["WorldHeatmap3DView",0,function({voxels:h,cellSize:o,proxyMeshes:u=[],legendTitle:d="Pointer-hit density",legendLow:j="few hits",legendHigh:p="most hits",legendNote:m="Each marker is a voxel where the pointer hit your scene. Color & size scale with hits, normalized to the 95th-percentile cell so a few hotspots don't wash out the rest.",emptyLabel:k="No 3D hit-points in range.",totals:b,voxelLabels:v}){let x=(0,s.useRef)(null),f=(0,s.useRef)(null),g=(0,s.useRef)(null),[w,y]=(0,s.useState)("loading"),[z,q]=(0,s.useState)(null),[_,M]=(0,s.useState)("sphere"),[L,A]=(0,s.useState)(null),C=(0,s.useRef)(h),P=(0,s.useRef)(u),R=(0,s.useRef)(v);C.current=h,P.current=u,R.current=v;let S=(0,s.useRef)(null),F=h.length>0||u.length>0;(0,s.useEffect)(()=>{let e=x.current;if(!e)return;if(!F)return void y("empty");let s=!1,c=null;return y("loading"),q(null),(async()=>{try{let[{Engine:i},{Scene:l},{ArcRotateCamera:h},{HemisphericLight:u},{Vector3:d,Color3:j,Color4:p,Matrix:m},{MeshBuilder:k},{StandardMaterial:b}]=await Promise.all([t.A(3905),t.A(94432),t.A(59694),t.A(88004),t.A(27940),t.A(27124),t.A(14074),t.A(35983),t.A(18561)]);if(s)return;let v=C.current,x=P.current,w=0,z=0,q=0,M=0;for(let t of v)w+=(t.vx+.5)*o,z+=(t.vy+.5)*o,q+=(t.vz+.5)*o,M++;if(0===M)for(let t of x)w+=(t.aabb[0]+t.aabb[3])/2,z+=(t.aabb[1]+t.aabb[4])/2,q+=(t.aabb[2]+t.aabb[5])/2,M++;let L=new d(w/M,z/M,q/M),F=4*o;for(let t of v){let e=(t.vx+.5)*o-L.x,s=(t.vy+.5)*o-L.y,a=(t.vz+.5)*o-L.z;F=Math.max(F,Math.sqrt(e*e+s*s+a*a))}for(let t of x){let e=(t.aabb[0]+t.aabb[3])/2-L.x,s=(t.aabb[1]+t.aabb[4])/2-L.y,a=(t.aabb[2]+t.aabb[5])/2-L.z;F=Math.max(F,Math.sqrt(e*e+s*s+a*a))}let E=new i(e,!0,{preserveDrawingBuffer:!1}),B=new l(E);B.clearColor=new p(.04,.05,.07,1);let T=new h("world-cam",Math.PI/4,Math.PI/3,2.4*F,L,B);T.attachControl(e,!0),(0,n.disableWheelZoom)(T),f.current=T,g.current={target:L,alpha:T.alpha,beta:T.beta,radius:T.radius},new u("world-light",new d(.4,1,.3),B);let N=Math.max(.02*F,.25*o)/(.9*o),I=T.radius,Z="cube"===_?k.CreateBox("world-voxel",{size:.9*o},B):k.CreateSphere("world-voxel",{diameter:.9*o,segments:6},B),O=new b("world-voxel-mat",B);O.diffuseColor=new j(1,1,1),O.specularColor=new j(0,0,0),Z.material=O;let $=0,H=new Float32Array(0),D=new Float32Array(0),V=-1,W=()=>{if(0===$)return;let t=Math.min(8,Math.max(.6,T.radius/I));if(!(.01>Math.abs(t-V))){V=t;for(let e=0;e<$;e++){let s=D[e]*t,a=16*e;H[a]=s,H[a+5]=s,H[a+10]=s}Z.thinInstanceBufferUpdated("matrix")}};B.onBeforeRenderObservable.add(W);let U=null,K="\0",X=()=>{(()=>{let t=P.current,e=t.map(t=>`${t.name}:${t.aabb.join(",")}`).join("|");if(e===K||(K=e,U&&(U.dispose(!1,!0),U=null),0===t.length))return;U=k.CreateBox("scene-proxy",{size:1},B);let s=new b("scene-proxy-mat",B);s.wireframe=!0,s.disableLighting=!0,s.emissiveColor=new j(.32,.4,.52),s.alpha=.35,U.material=s,U.isPickable=!0,U.thinInstanceEnablePicking=!0,U.metadata={hoverLabels:t.map(t=>t.name)};let a=t.length,n=new Float32Array(16*a);for(let e=0;e<a;e++){let s=t[e].aabb,a=Math.max(s[3]-s[0],.001),r=Math.max(s[4]-s[1],.001),c=Math.max(s[5]-s[2],.001);m.Scaling(a,r,c).multiply(m.Translation((s[0]+s[3])/2,(s[1]+s[4])/2,(s[2]+s[5])/2)).copyToArray(n,16*e)}U.thinInstanceSetBuffer("matrix",n,16,!0)})(),(()=>{let t=C.current,e=R.current,s=t.length;if(0===s){$=0,Z.isVisible=!1;return}let n=(0,a.percentileMax)(t.map(t=>t.count),.95),r=new Float32Array(16*s),c=new Float32Array(4*s),i=new Float32Array(s);for(let e=0;e<s;e++){let s=t[e],l=Math.min(1,s.count/n),h=N*(.5+.5*l);i[e]=h,m.Scaling(h,h,h).multiply(m.Translation((s.vx+.5)*o,(s.vy+.5)*o,(s.vz+.5)*o)).copyToArray(r,16*e);let[u,d,j]=(0,a.heatRgb)(l);c[4*e]=u,c[4*e+1]=d,c[4*e+2]=j,c[4*e+3]=1}$=s,H=r,D=i,Z.isVisible=!0,Z.isPickable=!!e,Z.thinInstanceEnablePicking=!!e,Z.metadata=e?{hoverLabels:e}:null,Z.thinInstanceSetBuffer("matrix",H,16,!1),Z.thinInstanceSetBuffer("color",c,4,!0),V=-1,W()})()};S.current=X,X(),E.runRenderLoop(()=>B.render());let Y=()=>E.resize();window.addEventListener("resize",Y);let G=(0,r.attachMeshHover)(B,e,A),J=(0,n.attachDoubleClickFocus)(B,e,T);y("ready"),c=()=>{window.removeEventListener("resize",Y),G(),J(),A(null),S.current=null,f.current=null,g.current=null,B.dispose(),E.dispose()}}catch(t){if(s)return;y("error"),q(t instanceof Error?t.message:"Failed to render heatmap.")}})(),()=>{s=!0,c?.()}},[_,o,F]),(0,s.useEffect)(()=>{S.current?.()},[h,u,v]);let E=b?b.cells>h.length?` Showing the ${h.length.toLocaleString()} busiest of ${b.cells.toLocaleString()} occupied cells (${b.hits.toLocaleString()} total hits).`:` ${b.cells.toLocaleString()} occupied cells, ${b.hits.toLocaleString()} total hits.`:"";return(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)("canvas",{ref:x,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),L?(0,e.jsx)("div",{className:"pointer-events-none absolute z-10 max-w-[16rem] truncate rounded border border-edge bg-ink/90 px-1.5 py-0.5 text-xs text-white shadow backdrop-blur",style:{left:L.x+12,top:L.y+12},children:L.label}):null,"ready"===w?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(l,{shape:_,onChange:M}),(0,e.jsx)(i.ZoomButtons,{onZoom:t=>f.current&&(0,n.stepZoom)(f.current,t),onReset:()=>f.current&&g.current&&(0,n.resetFocus)(f.current,g.current)}),(0,e.jsx)(c.HeatLegend,{title:d,lowLabel:j,highLabel:p,note:m+E})]}):(0,e.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===w?"Rendering…":"empty"===w?k:"error"===w?z??"Heatmap unavailable.":null})]})}])},3905,t=>{t.v(e=>Promise.all(["static/chunks/3pdpaqzwhhijn.js","static/chunks/08bm3ye5govev.js","static/chunks/0g6u34xkzrpjn.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2gh4z57fem0_v.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0g7p8zp2kxve5.js"].map(e=>t.l(e))).then(()=>e(66232)))},94432,t=>{t.v(e=>Promise.all(["static/chunks/2kje_jvmwsvwo.js","static/chunks/1j--a56ji33_x.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/3vaho-xrtuchd.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vpcaaf-0dn7q.js"].map(e=>t.l(e))).then(()=>e(92494)))},59694,t=>{t.v(e=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/245h82k-g1nxr.js","static/chunks/3ovd8o_usay7j.js","static/chunks/3vaho-xrtuchd.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/2wdk-kbm-n-m5.js"].map(e=>t.l(e))).then(()=>e(67186)))},88004,t=>{t.v(e=>Promise.all(["static/chunks/2p8dbh81chhon.js","static/chunks/1oara6fkfvgs3.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(e=>t.l(e))).then(()=>e(15768)))},27940,t=>{t.v(e=>Promise.all(["static/chunks/0w0sx062qmcsh.js","static/chunks/25ctnyh7njp-d.js","static/chunks/3pdpaqzwhhijn.js"].map(e=>t.l(e))).then(()=>e(23235)))},27124,t=>{t.v(e=>Promise.all(["static/chunks/1par9m038tiov.js","static/chunks/1j--a56ji33_x.js","static/chunks/2j-sax2xfdv7l.js","static/chunks/3rx1jhuop94-l.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/0gwa154w_0wuh.js","static/chunks/0oap0o8a8a_cl.js","static/chunks/0f_nv15a8q415.js","static/chunks/3vaho-xrtuchd.js","static/chunks/2wdk-kbm-n-m5.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/25ctnyh7njp-d.js","static/chunks/2npk7tr63h7rl.js","static/chunks/10w513bgw-bgi.js"].map(e=>t.l(e))).then(()=>e(70928)))},14074,t=>{t.v(e=>Promise.all(["static/chunks/0n0thxa3jkour.js","static/chunks/1tdg_eolxlcdl.js","static/chunks/1j--a56ji33_x.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/0vddljjnmozzx.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js","static/chunks/0f_nv15a8q415.js","static/chunks/3g_h_00xs9u59.js","static/chunks/2npk7tr63h7rl.js","static/chunks/25ctnyh7njp-d.js"].map(e=>t.l(e))).then(()=>e(87566)))},35983,t=>{t.v(e=>Promise.all(["static/chunks/4227p7752rnny.js","static/chunks/1j--a56ji33_x.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/2npk7tr63h7rl.js","static/chunks/1vkww9l6lgqag.js","static/chunks/25ctnyh7njp-d.js","static/chunks/0f_nv15a8q415.js","static/chunks/3vaho-xrtuchd.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/2wdk-kbm-n-m5.js","static/chunks/3pdpaqzwhhijn.js"].map(e=>t.l(e))).then(()=>e(50608)))},18561,t=>{t.v(e=>Promise.all(["static/chunks/1j--a56ji33_x.js","static/chunks/1vkww9l6lgqag.js","static/chunks/3pdpaqzwhhijn.js","static/chunks/2npk7tr63h7rl.js","static/chunks/117ys3lltfmcu.js","static/chunks/25ctnyh7njp-d.js","static/chunks/1vzmzrjhlm1q5.js","static/chunks/3g_h_00xs9u59.js","static/chunks/1vpcaaf-0dn7q.js","static/chunks/3vaho-xrtuchd.js"].map(e=>t.l(e))).then(()=>e(85106)))}]);