@uptimizr/dashboard 0.4.6 → 0.4.7

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 (383) hide show
  1. package/out/404.html +1 -1
  2. package/out/__next.__PAGE__.txt +19 -5
  3. package/out/__next._full.txt +10 -10
  4. package/out/__next._tree.txt +1 -1
  5. package/out/_next/static/chunks/{2-_a-v1xeo5hb.js → 0-_j1khfoib6l.js} +116 -115
  6. package/out/_next/static/chunks/{25brs445bjbik.js → 005bbq_px7lke.js} +2 -2
  7. package/out/_next/static/chunks/00fbhtmui-yxg.js +1 -0
  8. package/out/_next/static/chunks/017pn-pen381_.js +1 -0
  9. package/out/_next/static/chunks/01vov6inx1zzt.js +1 -0
  10. package/out/_next/static/chunks/{2x-7kbwq8tl-o.js → 02qk_wmkf9at-.js} +196 -196
  11. package/out/_next/static/chunks/03bd5plut08tg.js +1 -0
  12. package/out/_next/static/chunks/03dwfqmo73w_z.js +1 -0
  13. package/out/_next/static/chunks/03sn4419dam-h.js +5 -0
  14. package/out/_next/static/chunks/05ere0-228syf.js +1 -0
  15. package/out/_next/static/chunks/{1jjw9hxgi2vzi.js → 05h8u5lrypn5m.js} +1 -1
  16. package/out/_next/static/chunks/{23-y1f_zw56vo.js → 05v-nubi896jg.js} +1 -1
  17. package/out/_next/static/chunks/05z79zh625ezu.js +1 -0
  18. package/out/_next/static/chunks/{2xe4bgir5l-9b.js → 060iult6f68_e.js} +504 -504
  19. package/out/_next/static/chunks/08lvtnv7b1cxp.js +1 -0
  20. package/out/_next/static/chunks/0_v2luu_qmeid.js +1 -0
  21. package/out/_next/static/chunks/0ai0zgbgjqb92.js +1 -0
  22. package/out/_next/static/chunks/0boov9mwycanf.js +1 -0
  23. package/out/_next/static/chunks/{2mrkv0z2i74pv.js → 0btmk0wmekl02.js} +2 -2
  24. package/out/_next/static/chunks/0d8x8m2x6ca_m.js +1 -0
  25. package/out/_next/static/chunks/0dmrdrwtd093b.js +1 -0
  26. package/out/_next/static/chunks/0e1jfrmioeuws.js +1 -0
  27. package/out/_next/static/chunks/0e7nlxmneb2j_.js +1 -0
  28. package/out/_next/static/chunks/0es97pusfxupl.js +1 -0
  29. package/out/_next/static/chunks/{2fspbfbxbswzd.js → 0fd-0i1yt23kz.js} +1 -1
  30. package/out/_next/static/chunks/0fxdyvb1w23d1.js +1 -0
  31. package/out/_next/static/chunks/0fxhc24djjcgq.js +1 -0
  32. package/out/_next/static/chunks/0gf-ztg86zd80.js +1 -0
  33. package/out/_next/static/chunks/{287hakn2ijupp.js → 0grasqqf5dw7r.js} +2 -2
  34. package/out/_next/static/chunks/{161yjxmdz9obc.js → 0hajwk2yd-rwr.js} +1 -1
  35. package/out/_next/static/chunks/0hk1wg7h4araz.js +1 -0
  36. package/out/_next/static/chunks/{1aa9g197l4twm.js → 0j74ipw4fps-n.js} +1 -1
  37. package/out/_next/static/chunks/{1s0dpdqy480hg.js → 0kj-vckdn7t5p.js} +1 -1
  38. package/out/_next/static/chunks/0lbs5xdyjuzuo.js +1 -0
  39. package/out/_next/static/chunks/0lep3_bqwfuin.js +1 -0
  40. package/out/_next/static/chunks/0mp0jh1gj7290.js +1 -0
  41. package/out/_next/static/chunks/0ngpoj2g5i4kz.js +1 -0
  42. package/out/_next/static/chunks/0nhljhguceh66.js +1 -0
  43. package/out/_next/static/chunks/0p6z73afb9dj2.js +1 -0
  44. package/out/_next/static/chunks/0p9zfmidzqkps.js +1 -0
  45. package/out/_next/static/chunks/0q75860p8u_ii.js +1 -0
  46. package/out/_next/static/chunks/{3mmy9zsb7zo-m.js → 0rracz73p38mo.js} +23 -23
  47. package/out/_next/static/chunks/{3_dm45k0vk1aa.js → 0sw-8gxbg4x0l.js} +565 -565
  48. package/out/_next/static/chunks/0sx-6rf3eteqn.js +1 -0
  49. package/out/_next/static/chunks/0thw099xk3_0p.js +3 -0
  50. package/out/_next/static/chunks/0u85f0dhb4i8e.js +1 -0
  51. package/out/_next/static/chunks/0uk7kigzm4vi2.js +31 -0
  52. package/out/_next/static/chunks/0ulufxnsrou61.js +1 -0
  53. package/out/_next/static/chunks/0xa9dyg6ezzyd.js +2 -0
  54. package/out/_next/static/chunks/0xvrfvur0p534.js +1 -0
  55. package/out/_next/static/chunks/{2clevl_9ayd0x.js → 0ybs1u66q26su.js} +1 -1
  56. package/out/_next/static/chunks/0ydfhk-p6zvm0.js +1 -0
  57. package/out/_next/static/chunks/{0j2ygtc_-bo3m.js → 0z004fn14pbcu.js} +1 -1
  58. package/out/_next/static/chunks/{2c8rmxz151fxa.js → 0z9erbl3llr_b.js} +224 -224
  59. package/out/_next/static/chunks/0zcsxvcvog9ue.js +1 -0
  60. package/out/_next/static/chunks/0zqgq0lwtz9tn.js +1 -0
  61. package/out/_next/static/chunks/1-ogak5u00kwa.js +1 -0
  62. package/out/_next/static/chunks/{3si3migsmvz9o.js → 10_5p5-xf2aoo.js} +1 -1
  63. package/out/_next/static/chunks/118qlrzdwpfmo.js +1 -0
  64. package/out/_next/static/chunks/11km5p4gd0ut4.js +1 -0
  65. package/out/_next/static/chunks/120rl4l29q9xs.js +1 -0
  66. package/out/_next/static/chunks/{44m1ijc5cv80x.js → 129m5i93ltoym.js} +1 -1
  67. package/out/_next/static/chunks/12n73o884lyyl.js +1 -0
  68. package/out/_next/static/chunks/{27z7j17kcrty_.js → 13zcn4lv0qj76.js} +11 -11
  69. package/out/_next/static/chunks/15jlgfcaeaki9.js +1 -0
  70. package/out/_next/static/chunks/{374lzksboll-t.js → 15o4_2t-l3rj5.js} +1 -1
  71. package/out/_next/static/chunks/175st2ogkg_1o.js +1 -0
  72. package/out/_next/static/chunks/19rsodtu91ja_.js +1 -0
  73. package/out/_next/static/chunks/1a2ouhup611bz.js +1 -0
  74. package/out/_next/static/chunks/{2117sv2qzo6yq.js → 1by60_b14x-3o.js} +1 -1
  75. package/out/_next/static/chunks/{2al9dh3_1ixhv.js → 1cyq7i39885sl.js} +1 -1
  76. package/out/_next/static/chunks/1d9it6yocgt54.js +1 -0
  77. package/out/_next/static/chunks/{29_n5j-hg_gsa.js → 1dp1s1t-y7gal.js} +1 -1
  78. package/out/_next/static/chunks/1dr7gh6xgypl8.js +1 -0
  79. package/out/_next/static/chunks/{1eirucr9s6-h5.js → 1dt30s_sp8415.js} +1 -1
  80. package/out/_next/static/chunks/{3vtmucpx25o7q.js → 1e8_jl2cxd3rp.js} +584 -584
  81. package/out/_next/static/chunks/1f1rek_fxk3of.js +1 -0
  82. package/out/_next/static/chunks/1f2mna0k5efeq.js +1 -0
  83. package/out/_next/static/chunks/1gfz3sxwkkg3d.js +1 -0
  84. package/out/_next/static/chunks/1gr35qeguuws0.js +1 -0
  85. package/out/_next/static/chunks/{3p03l0z65c8vc.js → 1gttu-n9am66k.js} +253 -253
  86. package/out/_next/static/chunks/1imi0xwi9hd99.js +1 -0
  87. package/out/_next/static/chunks/1ka5v5zu0cstt.js +1 -0
  88. package/out/_next/static/chunks/{3my05px5mv_s5.js → 1l_3oidssbhns.js} +235 -235
  89. package/out/_next/static/chunks/{0r-x702_jvhud.js → 1m9zc5gm-327d.js} +12 -12
  90. package/out/_next/static/chunks/1n9nhz-6azcp3.js +3 -0
  91. package/out/_next/static/chunks/1ncqwe81t_9_x.js +1 -0
  92. package/out/_next/static/chunks/{3un-w6wutw1qn.js → 1nix_lulkpklo.js} +1 -1
  93. package/out/_next/static/chunks/1ntqovuz2c217.js +1 -0
  94. package/out/_next/static/chunks/1pgs-98tfkq9_.js +1 -0
  95. package/out/_next/static/chunks/1q2z0aeopo8t8.js +1 -0
  96. package/out/_next/static/chunks/{1x0j78ohufpul.js → 1q4lkgxfnqnew.js} +1 -1
  97. package/out/_next/static/chunks/{0yd4_xh476fjn.js → 1qg1l7t00nyib.js} +97 -97
  98. package/out/_next/static/chunks/{2wgh5i70bzelt.js → 1rcdimhu0qhlu.js} +392 -392
  99. package/out/_next/static/chunks/1rlfg62jxqj3z.js +1 -0
  100. package/out/_next/static/chunks/1ses023uud001.js +1 -0
  101. package/out/_next/static/chunks/1t5oynmttpfsw.js +1 -0
  102. package/out/_next/static/chunks/{39cou9lia_g7l.js → 1t9i20i5-f8ze.js} +1 -1
  103. package/out/_next/static/chunks/{0rykrf_vofbad.js → 1tgj55b305g4h.js} +1 -1
  104. package/out/_next/static/chunks/{3rj-5v0j_2-_2.js → 1u8snlm6a7uhi.js} +4 -4
  105. package/out/_next/static/chunks/{2neieeo9g2u56.js → 1ug4k-1zhr63a.js} +1 -1
  106. package/out/_next/static/chunks/{3ioxfi3bvznhh.js → 1uh9zgsy69g92.js} +1 -1
  107. package/out/_next/static/chunks/1vrpzlif-z_p0.js +1 -0
  108. package/out/_next/static/chunks/{0lwjmr8efrlbt.js → 1vurgl6oz2qey.js} +1 -1
  109. package/out/_next/static/chunks/1w-qc09n9ijtq.js +1 -0
  110. package/out/_next/static/chunks/1ycqxcht6x54p.js +1 -0
  111. package/out/_next/static/chunks/1zj4307ugq0qz.js +1 -0
  112. package/out/_next/static/chunks/{14e4k-718qadd.js → 1zkd8v-qka--j.js} +163 -168
  113. package/out/_next/static/chunks/1zm52cjrfrq7c.js +1 -0
  114. package/out/_next/static/chunks/{3-yhe6rcsjh88.js → 1zm6eo861i3c8.js} +1 -1
  115. package/out/_next/static/chunks/{06fbalmyyfpsy.js → 1zp9363yfhpom.js} +1 -1
  116. package/out/_next/static/chunks/1zt1xxovnjhkm.js +1 -0
  117. package/out/_next/static/chunks/2-3hk_db5fpok.js +1 -0
  118. package/out/_next/static/chunks/2-bv9a_0zgw1f.js +1 -0
  119. package/out/_next/static/chunks/{3cp5nmtwxq4gr.js → 209sxygecny37.js} +1 -1
  120. package/out/_next/static/chunks/{133dqp8_7_yo6.js → 216uiih3_vdfd.js} +1 -1
  121. package/out/_next/static/chunks/21kfpd_bityxt.js +1 -0
  122. package/out/_next/static/chunks/{3yk0hzfq5rcs6.js → 22yqh0zlo_vwr.js} +1 -1
  123. package/out/_next/static/chunks/24ecas0m9tao7.js +3 -0
  124. package/out/_next/static/chunks/24pq9210rng3f.js +1 -0
  125. package/out/_next/static/chunks/{184pz6z3dflfm.js → 267prao6fyt22.js} +20 -20
  126. package/out/_next/static/chunks/26skkagvj1z96.js +1 -0
  127. package/out/_next/static/chunks/{0i9wa8hjd-5tc.js → 26y9sv8_-ykxf.js} +1 -1
  128. package/out/_next/static/chunks/2701xfv_07wz_.js +1 -0
  129. package/out/_next/static/chunks/{39rhmj_32ujyj.js → 271333m8y3k0e.js} +1 -1
  130. package/out/_next/static/chunks/29rkmguzky-bp.js +1 -0
  131. package/out/_next/static/chunks/{3qo7e6b73mfxq.js → 2a07so920b6aa.js} +1 -1
  132. package/out/_next/static/chunks/{1z790xxb46gxy.js → 2a2oy8ryz2tsk.js} +1 -1
  133. package/out/_next/static/chunks/{2-i29-jdbwww6.js → 2ao-3jzz7yw3p.js} +111 -111
  134. package/out/_next/static/chunks/2apihn9ra2ufp.js +1 -0
  135. package/out/_next/static/chunks/2apnpj0-fs9ks.js +1 -0
  136. package/out/_next/static/chunks/2b481pitl4k85.js +1 -0
  137. package/out/_next/static/chunks/2bettxaqt3d2p.js +1 -0
  138. package/out/_next/static/chunks/{1bv-jzy_2jiqs.js → 2c721vfva711t.js} +1 -1
  139. package/out/_next/static/chunks/{17_jjyx4jz9dd.js → 2d2kl_m64j9cb.js} +1 -1
  140. package/out/_next/static/chunks/2droqjmvmgj13.js +1 -0
  141. package/out/_next/static/chunks/2dxbvwbbgpzoq.js +1 -0
  142. package/out/_next/static/chunks/2eqbsut829r5l.js +1 -0
  143. package/out/_next/static/chunks/2f3_mzxjh3gso.js +1 -0
  144. package/out/_next/static/chunks/2fsde0jwi5qtt.js +1 -0
  145. package/out/_next/static/chunks/{0jap7l5-bskj4.js → 2h249uvhh2sij.js} +12 -12
  146. package/out/_next/static/chunks/{2as_br1awqk6k.js → 2izok2otbk8-2.js} +496 -496
  147. package/out/_next/static/chunks/2j120dkh7q3uf.js +1 -0
  148. package/out/_next/static/chunks/2j2ynchpqh34-.js +1 -0
  149. package/out/_next/static/chunks/2kj6pzs_wap1v.js +1 -0
  150. package/out/_next/static/chunks/{2epukrz6paj9n.js → 2kok6zedeeltw.js} +1 -1
  151. package/out/_next/static/chunks/2lnj9jruy4nrv.js +1 -0
  152. package/out/_next/static/chunks/{0j0a0wvmmghxj.js → 2lsvk7xcfkarc.js} +1 -1
  153. package/out/_next/static/chunks/2n-pveub8b_5t.js +1 -0
  154. package/out/_next/static/chunks/{3puu2_-t0lln9.js → 2n3xu_wbvtj7h.js} +12 -12
  155. package/out/_next/static/chunks/{1lu7rjfvxj8yj.js → 2of8q0kaeqpf0.js} +1 -1
  156. package/out/_next/static/chunks/2ofwtw6p08sfz.js +1 -0
  157. package/out/_next/static/chunks/{1t-yolk97lmot.js → 2phl5ta4iim7l.js} +1 -1
  158. package/out/_next/static/chunks/2q6l-xdqzgmpf.js +1 -0
  159. package/out/_next/static/chunks/2q8yg63br2jc9.js +1 -0
  160. package/out/_next/static/chunks/2r5qgieqldcd9.js +1 -0
  161. package/out/_next/static/chunks/2r7y401cvjc1s.js +1 -0
  162. package/out/_next/static/chunks/{1a94whad0y57f.js → 2r96kyeehsji9.js} +1 -1
  163. package/out/_next/static/chunks/{1gvu5a6ffbs7l.js → 2rmc6ru7mc-kg.js} +1 -1
  164. package/out/_next/static/chunks/{3_gfl66zf638s.js → 2s6kpclh6ie7o.js} +901 -906
  165. package/out/_next/static/chunks/{0xzamrecplwzw.js → 2sys9nj8lo3uk.js} +1 -1
  166. package/out/_next/static/chunks/{336ckqpboqmbn.js → 2tc3e-iqv71y_.js} +1 -1
  167. package/out/_next/static/chunks/{1t2g1v0ubcsam.js → 2uo6vm7mfgrbf.js} +1 -1
  168. package/out/_next/static/chunks/{2kmmk9coo9_b0.js → 2urx6fow8c8c9.js} +143 -143
  169. package/out/_next/static/chunks/2w2k1gveljyb7.js +1 -0
  170. package/out/_next/static/chunks/{1zmx71cvc6ksk.js → 2w99knknr5i8c.js} +1 -1
  171. package/out/_next/static/chunks/2w_ptlw-ad8-9.js +4 -0
  172. package/out/_next/static/chunks/2ws1s9d52ayv8.js +1 -0
  173. package/out/_next/static/chunks/2x7enks3ydgai.js +1 -0
  174. package/out/_next/static/chunks/{2_6b9lraq-exh.js → 2y8i7_nxm4r05.js} +5 -5
  175. package/out/_next/static/chunks/2ydub0t01728d.js +1 -0
  176. package/out/_next/static/chunks/{29hkkj9raxte9.js → 2z_iab7ozohhq.js} +77 -77
  177. package/out/_next/static/chunks/3-m_vzabs1uez.js +1 -0
  178. package/out/_next/static/chunks/{1h1gixjbjkbsl.js → 302qk2fjdrthp.js} +5 -5
  179. package/out/_next/static/chunks/30bhz7czzs4mf.js +1 -0
  180. package/out/_next/static/chunks/{3d43gd91r06y6.js → 30n4y_uu8chbh.js} +507 -505
  181. package/out/_next/static/chunks/{0o0qtv35dqv3i.js → 32_c4mbb6j1l6.js} +239 -239
  182. package/out/_next/static/chunks/33hp-khdfohdq.js +1 -0
  183. package/out/_next/static/chunks/{3zv5kyos9vtmm.js → 33i36o_l69sm5.js} +1 -1
  184. package/out/_next/static/chunks/3527r3jo5fj3i.js +1 -0
  185. package/out/_next/static/chunks/355dg8yaa94hr.js +1 -0
  186. package/out/_next/static/chunks/{2h9i_adbqaxs4.js → 35ntbr_c-yx44.js} +1 -1
  187. package/out/_next/static/chunks/{0cmyc-uvk93kl.js → 35sne1llxnc-m.js} +74 -74
  188. package/out/_next/static/chunks/36enkx1skkv2-.js +4 -0
  189. package/out/_next/static/chunks/{0e5dcxmkprebg.js → 3772oce1n3t_g.js} +1 -1
  190. package/out/_next/static/chunks/37cnbm5ft1mqf.js +1 -0
  191. package/out/_next/static/chunks/38xdo3cifphut.js +1 -0
  192. package/out/_next/static/chunks/{0o73w0cn5n_vl.js → 3_dgblylldcgb.js} +1 -1
  193. package/out/_next/static/chunks/3beawo-qwuk8k.js +1 -0
  194. package/out/_next/static/chunks/3cj_6sl9kr3e9.js +1 -0
  195. package/out/_next/static/chunks/3d-i_skta_wes.js +1 -0
  196. package/out/_next/static/chunks/3df_l2we755bb.js +1 -0
  197. package/out/_next/static/chunks/{0o1vph7x9shzu.js → 3eve5y7fpzx2h.js} +1 -1
  198. package/out/_next/static/chunks/3ewgyb4y19w-3.js +1 -0
  199. package/out/_next/static/chunks/3f3789eh18_oy.js +1 -0
  200. package/out/_next/static/chunks/{0gk5rnci1hznh.js → 3f8qelpscqfym.js} +2 -2
  201. package/out/_next/static/chunks/3g3-e9m1en45q.js +1 -0
  202. package/out/_next/static/chunks/{2kk_vvmr2xm3d.js → 3h6akt2uu05ku.js} +12 -12
  203. package/out/_next/static/chunks/{2_lw4d7t-xcqi.js → 3huu0tqmxwowu.js} +523 -522
  204. package/out/_next/static/chunks/3i239y-1hbkm-.js +1 -0
  205. package/out/_next/static/chunks/{2mjjo0yj-4ro4.js → 3ipx7xbxchsq9.js} +1 -1
  206. package/out/_next/static/chunks/{3txu-i5qn183a.js → 3j9xvdz55bi4p.js} +321 -321
  207. package/out/_next/static/chunks/3kp8qmhoi24oz.js +1 -0
  208. package/out/_next/static/chunks/3ksq69yq-40_r.js +1 -0
  209. package/out/_next/static/chunks/{3nwaovnpiyrt8.js → 3njwfothmmg7u.js} +3 -3
  210. package/out/_next/static/chunks/{2iu0_3cx-ny74.js → 3oqxl46ukaojj.js} +11 -11
  211. package/out/_next/static/chunks/{2oacwtbslo90t.js → 3qn6r8-0u6dij.js} +360 -360
  212. package/out/_next/static/chunks/3qye1lytea2i8.js +1 -0
  213. package/out/_next/static/chunks/{0gsh_d0m5xss1.js → 3rlp9yr75liz7.js} +1 -1
  214. package/out/_next/static/chunks/{3j3ol_d1vsdhx.js → 3sa_hlx3konc7.js} +1 -1
  215. package/out/_next/static/chunks/3tyo643l62h3m.js +1 -0
  216. package/out/_next/static/chunks/3tz2tpqa9uvwm.js +1 -0
  217. package/out/_next/static/chunks/{0_jrfk2u1u3fi.js → 3utpc-fc6_y0f.js} +1 -1
  218. package/out/_next/static/chunks/3v-0c2aj6c0on.js +1 -0
  219. package/out/_next/static/chunks/3v6nxa28rxngq.js +1 -0
  220. package/out/_next/static/chunks/{3twr9ds68-9us.js → 3vbamaoiuk9yj.js} +1 -1
  221. package/out/_next/static/chunks/3vv99btjc-mky.js +1 -0
  222. package/out/_next/static/chunks/{22yht3s7c-xih.js → 3w59kt5ztyvoq.js} +1 -1
  223. package/out/_next/static/chunks/3x02lxdo28u9i.js +1 -0
  224. package/out/_next/static/chunks/{1my968s78he8g.js → 3xl-op0hwxytg.js} +15 -15
  225. package/out/_next/static/chunks/3ydnxyc4rvad_.js +1 -0
  226. package/out/_next/static/chunks/3ylg4gfetwgxw.js +1 -0
  227. package/out/_next/static/chunks/{0a475u_q5i_dd.js → 3zdtteq-r2fs5.js} +2 -2
  228. package/out/_next/static/chunks/3zkwt0gybqtgm.js +1 -0
  229. package/out/_next/static/chunks/{3nr48h9zwum-3.js → 3zs7l4362msjd.js} +1 -1
  230. package/out/_next/static/chunks/40etabvml_71y.js +1 -0
  231. package/out/_next/static/chunks/{2xujlsx3stqig.js → 417jkzz0slv9m.js} +1 -1
  232. package/out/_next/static/chunks/{0ypejzd74ixbw.js → 41b5gpyqbj58m.js} +15 -15
  233. package/out/_next/static/chunks/41u2-5jayyajf.js +22 -0
  234. package/out/_next/static/chunks/42gcpy51w7lk1.js +1 -0
  235. package/out/_next/static/chunks/{2h07np207nlx7.js → 42ymanq326mo7.js} +1 -1
  236. package/out/_next/static/chunks/{36pz_ews7u0xb.js → 43fp64xnfy646.js} +1 -1
  237. package/out/_next/static/chunks/43v4y2gu5z9_h.js +1 -0
  238. package/out/_next/static/chunks/44cer242u-f8v.js +1 -0
  239. package/out/_next/static/chunks/{0d9pxx1w_zqr9.js → 44zi0gl0a6a8w.js} +1 -1
  240. package/out/_next/static/chunks/turbopack-0n2o5_bkskckx.js +1 -0
  241. package/out/_not-found/__next._full.txt +11 -11
  242. package/out/_not-found/__next._not-found.__PAGE__.txt +19 -2
  243. package/out/_not-found/__next._tree.txt +1 -1
  244. package/out/_not-found.html +1 -1
  245. package/out/_not-found.txt +11 -11
  246. package/out/index.html +1 -1
  247. package/out/index.txt +10 -10
  248. package/package.json +9 -9
  249. package/out/__next._head.txt +0 -6
  250. package/out/__next._index.txt +0 -5
  251. package/out/_next/static/chunks/0-k4hp87gwues.js +0 -1
  252. package/out/_next/static/chunks/0-laj-bivzp4x.js +0 -1
  253. package/out/_next/static/chunks/04zj0yf1qhk1o.js +0 -1
  254. package/out/_next/static/chunks/07hgbbqksqd1g.js +0 -1
  255. package/out/_next/static/chunks/08ou2nvy48e0u.js +0 -1
  256. package/out/_next/static/chunks/08y5-irjbsiy8.js +0 -1
  257. package/out/_next/static/chunks/0aad2r4s4wl1x.js +0 -5
  258. package/out/_next/static/chunks/0gnjtwq-474uc.js +0 -1
  259. package/out/_next/static/chunks/0ibzpjo0h731v.js +0 -1
  260. package/out/_next/static/chunks/0j_3k5qhv_mdx.js +0 -1
  261. package/out/_next/static/chunks/0jis2w2mfx062.js +0 -1
  262. package/out/_next/static/chunks/0jjvp2slpf7d6.js +0 -1
  263. package/out/_next/static/chunks/0ko10wo4rc9-b.js +0 -1
  264. package/out/_next/static/chunks/0lqmvz6k2h_of.js +0 -1
  265. package/out/_next/static/chunks/0noxyupihh8dk.js +0 -1
  266. package/out/_next/static/chunks/0p6phe9kjlxn8.js +0 -1
  267. package/out/_next/static/chunks/0ptxb9dcwsw3o.js +0 -1
  268. package/out/_next/static/chunks/0q0i4pdyq66gb.js +0 -1
  269. package/out/_next/static/chunks/0q8pt8fd0ma30.js +0 -1
  270. package/out/_next/static/chunks/0qqx9aoz8l5d2.js +0 -1
  271. package/out/_next/static/chunks/0tsk32q-88t_7.js +0 -1
  272. package/out/_next/static/chunks/0u7577db_ivyr.js +0 -1
  273. package/out/_next/static/chunks/0unnrt0un064x.js +0 -1
  274. package/out/_next/static/chunks/0uygtr4mo3h0v.js +0 -1
  275. package/out/_next/static/chunks/0vf3facit951s.js +0 -1
  276. package/out/_next/static/chunks/0vzo-8t8c26k9.js +0 -1
  277. package/out/_next/static/chunks/0xx7_7y5jdlh4.js +0 -1
  278. package/out/_next/static/chunks/0xyija62b6txc.js +0 -1
  279. package/out/_next/static/chunks/0zeb37703zcz3.js +0 -1
  280. package/out/_next/static/chunks/0zu5ato7-1-q9.js +0 -1
  281. package/out/_next/static/chunks/0zydv7y47dxgh.js +0 -1
  282. package/out/_next/static/chunks/103x4jwovb6d-.js +0 -1
  283. package/out/_next/static/chunks/107wfq84g9-kn.js +0 -1
  284. package/out/_next/static/chunks/10afagk8yn__n.js +0 -1
  285. package/out/_next/static/chunks/12ory_c78yl31.js +0 -1
  286. package/out/_next/static/chunks/1365lgwdd4vuo.js +0 -1
  287. package/out/_next/static/chunks/146ou-ohb_qhs.js +0 -1
  288. package/out/_next/static/chunks/14orr68xgdykd.js +0 -1
  289. package/out/_next/static/chunks/15qfoj-vl9thu.js +0 -1
  290. package/out/_next/static/chunks/166yqx3_qvbpy.js +0 -1
  291. package/out/_next/static/chunks/16gwjao676ieb.js +0 -1
  292. package/out/_next/static/chunks/16rmmzhy2p7bw.js +0 -1
  293. package/out/_next/static/chunks/18h9ugdz6igdb.js +0 -1
  294. package/out/_next/static/chunks/19d8n5t7ka2fb.js +0 -1
  295. package/out/_next/static/chunks/1_4hh3dfop93j.js +0 -1
  296. package/out/_next/static/chunks/1_rbzw3n4fk0g.js +0 -1
  297. package/out/_next/static/chunks/1bq0fcnt1wy86.js +0 -1
  298. package/out/_next/static/chunks/1c6mho7e0enta.js +0 -1
  299. package/out/_next/static/chunks/1dfaheve77dhi.js +0 -1
  300. package/out/_next/static/chunks/1dgf112ehnhm1.js +0 -1
  301. package/out/_next/static/chunks/1f07l3q77zat1.js +0 -1
  302. package/out/_next/static/chunks/1fervgvgv10r-.js +0 -1
  303. package/out/_next/static/chunks/1fsof7un7igrn.js +0 -1
  304. package/out/_next/static/chunks/1iel4pzhhh-c3.js +0 -1
  305. package/out/_next/static/chunks/1iojfx3-g4_n9.js +0 -1
  306. package/out/_next/static/chunks/1j4c0nvdo5q68.js +0 -3
  307. package/out/_next/static/chunks/1j4jt5q7px8sy.js +0 -1
  308. package/out/_next/static/chunks/1k_8olnprvi8r.js +0 -1
  309. package/out/_next/static/chunks/1l0rt7d4m-xdk.js +0 -5
  310. package/out/_next/static/chunks/1mt4cnd_d6jvf.js +0 -1
  311. package/out/_next/static/chunks/1tbes2sv-qzcx.js +0 -1
  312. package/out/_next/static/chunks/1upy8a5cb75kt.js +0 -1
  313. package/out/_next/static/chunks/1xed71f608m4b.js +0 -1
  314. package/out/_next/static/chunks/219n3q-_eengm.js +0 -1
  315. package/out/_next/static/chunks/21wo3vdr_uby8.js +0 -1
  316. package/out/_next/static/chunks/25gep78-izw79.js +0 -4
  317. package/out/_next/static/chunks/26i7dn31afdtm.js +0 -1
  318. package/out/_next/static/chunks/27hbplu797elx.js +0 -1
  319. package/out/_next/static/chunks/28i3wgvgn_at1.js +0 -1
  320. package/out/_next/static/chunks/2992eiy52nazj.js +0 -1
  321. package/out/_next/static/chunks/29bxq-67oazfg.js +0 -1
  322. package/out/_next/static/chunks/29ings58w7kp1.js +0 -1
  323. package/out/_next/static/chunks/2_n0cpkdsjzli.js +0 -1
  324. package/out/_next/static/chunks/2a3iy701j4r_y.js +0 -1
  325. package/out/_next/static/chunks/2awr1c_vfsutb.js +0 -1
  326. package/out/_next/static/chunks/2b5nt7yn-pq3a.js +0 -1
  327. package/out/_next/static/chunks/2bxe3kjr17tdp.js +0 -1
  328. package/out/_next/static/chunks/2dvbzar93ooc-.js +0 -1
  329. package/out/_next/static/chunks/2e-vp0e11g9ew.js +0 -1
  330. package/out/_next/static/chunks/2exj9-0p6n9x-.js +0 -1
  331. package/out/_next/static/chunks/2gf8l6hbmt7v3.js +0 -1
  332. package/out/_next/static/chunks/2jio3sio-_43z.js +0 -1
  333. package/out/_next/static/chunks/2laz1v9fg2a2z.js +0 -1
  334. package/out/_next/static/chunks/2pb_uosb-aa8x.js +0 -1
  335. package/out/_next/static/chunks/2qu-gpm3ux1l6.js +0 -1
  336. package/out/_next/static/chunks/2rsi6v7qmqx2b.js +0 -1
  337. package/out/_next/static/chunks/2s4fzgzkwjluu.js +0 -2
  338. package/out/_next/static/chunks/2tdvuc-27khif.js +0 -1
  339. package/out/_next/static/chunks/2trolrgd7neax.js +0 -1
  340. package/out/_next/static/chunks/2uyuafmoe5wi0.js +0 -3
  341. package/out/_next/static/chunks/2w2e0pxgs-n8f.js +0 -1
  342. package/out/_next/static/chunks/30y71dxdpv52d.js +0 -1
  343. package/out/_next/static/chunks/32c-e_v8_2xkf.js +0 -1
  344. package/out/_next/static/chunks/32oj0iudhp8bm.js +0 -1
  345. package/out/_next/static/chunks/33p9du6y9eegg.js +0 -1
  346. package/out/_next/static/chunks/38om-j0h0rryk.js +0 -1
  347. package/out/_next/static/chunks/38q0enmlg5q9o.js +0 -3
  348. package/out/_next/static/chunks/39pkya0_bvcaj.js +0 -1
  349. package/out/_next/static/chunks/3_1zzmx92j9c0.js +0 -1
  350. package/out/_next/static/chunks/3_earszshuz4n.js +0 -1
  351. package/out/_next/static/chunks/3ap_uxc8lx7ni.js +0 -1
  352. package/out/_next/static/chunks/3b6na8zrex8jo.js +0 -1
  353. package/out/_next/static/chunks/3c0cxt72vilyz.js +0 -1
  354. package/out/_next/static/chunks/3g78x0pdaoi_4.js +0 -1
  355. package/out/_next/static/chunks/3gjvl1p-tugfe.js +0 -4
  356. package/out/_next/static/chunks/3i8iro1gas1vx.js +0 -1
  357. package/out/_next/static/chunks/3kpqfqr99vo7z.js +0 -1
  358. package/out/_next/static/chunks/3lladf_wemm-2.js +0 -1
  359. package/out/_next/static/chunks/3n62hbywoknop.js +0 -1
  360. package/out/_next/static/chunks/3o_dmzpahx-5g.js +0 -1
  361. package/out/_next/static/chunks/3r7v7un976sn7.js +0 -1
  362. package/out/_next/static/chunks/3rl_nhqwew40w.js +0 -1
  363. package/out/_next/static/chunks/3s7hqij6xp_4e.js +0 -1
  364. package/out/_next/static/chunks/3t4ys6th6gf2w.js +0 -1
  365. package/out/_next/static/chunks/3uarw1i1ij1er.js +0 -1
  366. package/out/_next/static/chunks/3v8kgnjk27wbe.js +0 -1
  367. package/out/_next/static/chunks/3vu5y270muh-7.js +0 -1
  368. package/out/_next/static/chunks/3we1khqfexh3x.js +0 -1
  369. package/out/_next/static/chunks/3z35loj4i-id4.js +0 -1
  370. package/out/_next/static/chunks/415g3asdds1ac.js +0 -1
  371. package/out/_next/static/chunks/42lqt7ig40wk5.js +0 -1
  372. package/out/_next/static/chunks/42s6ghsurq5q7.js +0 -1
  373. package/out/_next/static/chunks/42yctcfi2rfwr.js +0 -1
  374. package/out/_next/static/chunks/43_fau1gg69eo.js +0 -1
  375. package/out/_next/static/chunks/43ywrdzg_7af8.js +0 -31
  376. package/out/_next/static/chunks/453_bg0lgesmp.js +0 -1
  377. package/out/_next/static/chunks/turbopack-1s36ieuku1ds3.js +0 -1
  378. package/out/_not-found/__next._head.txt +0 -6
  379. package/out/_not-found/__next._index.txt +0 -5
  380. package/out/_not-found/__next._not-found.txt +0 -5
  381. /package/out/_next/static/{5UjNvd7WCk97iC2cSmEGH → A1hxMz783bIWo0Q9qqV3L}/_buildManifest.js +0 -0
  382. /package/out/_next/static/{5UjNvd7WCk97iC2cSmEGH → A1hxMz783bIWo0Q9qqV3L}/_clientMiddlewareManifest.js +0 -0
  383. /package/out/_next/static/{5UjNvd7WCk97iC2cSmEGH → A1hxMz783bIWo0Q9qqV3L}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,29741,69809,e=>{"use strict";var f=e.i(47150);let n="clipPlaneFragmentDeclaration",i=`#ifdef CLIPPLANE
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,49338,65513,e=>{"use strict";var f=e.i(2342);let n="clipPlaneFragmentDeclaration",i=`#ifdef CLIPPLANE
2
2
  varying fClipDistance: f32;
3
3
  #endif
4
4
  #ifdef CLIPPLANE2
@@ -16,7 +16,7 @@ varying fClipDistance5: f32;
16
16
  #ifdef CLIPPLANE6
17
17
  varying fClipDistance6: f32;
18
18
  #endif
19
- `;f.ShaderStore.IncludesShadersStoreWGSL[n]||(f.ShaderStore.IncludesShadersStoreWGSL[n]=i),e.s(["clipPlaneFragmentDeclarationWGSL",0,{name:n,shader:i}],29741);let r="clipPlaneFragment",o=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
19
+ `;f.ShaderStore.IncludesShadersStoreWGSL[n]||(f.ShaderStore.IncludesShadersStoreWGSL[n]=i),e.s(["clipPlaneFragmentDeclarationWGSL",0,{name:n,shader:i}],49338);let r="clipPlaneFragment",o=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
20
20
  if (false) {}
21
21
  #endif
22
22
  #ifdef CLIPPLANE
@@ -43,7 +43,7 @@ else if (fragmentInputs.fClipDistance5>0.0)
43
43
  else if (fragmentInputs.fClipDistance6>0.0)
44
44
  {discard;}
45
45
  #endif
46
- `;f.ShaderStore.IncludesShadersStoreWGSL[r]||(f.ShaderStore.IncludesShadersStoreWGSL[r]=o),e.s(["clipPlaneFragmentWGSL",0,{name:r,shader:o}],69809)},79361,57636,e=>{"use strict";var f=e.i(47150);let n="fogFragmentDeclaration",i=`#ifdef FOG
46
+ `;f.ShaderStore.IncludesShadersStoreWGSL[r]||(f.ShaderStore.IncludesShadersStoreWGSL[r]=o),e.s(["clipPlaneFragmentWGSL",0,{name:r,shader:o}],65513)},97039,30597,e=>{"use strict";var f=e.i(2342);let n="fogFragmentDeclaration",i=`#ifdef FOG
47
47
  #define FOGMODE_NONE 0.
48
48
  #define FOGMODE_EXP 1.
49
49
  #define FOGMODE_EXP2 2.
@@ -57,14 +57,14 @@ else if (FOGMODE_EXP2==uniforms.vFogInfos.x)
57
57
  {fogCoeff=1.0/pow(E,fogDistance*fogDistance*fogDensity*fogDensity);}
58
58
  return clamp(fogCoeff,0.0,1.0);}
59
59
  #endif
60
- `;f.ShaderStore.IncludesShadersStoreWGSL[n]||(f.ShaderStore.IncludesShadersStoreWGSL[n]=i),e.s(["fogFragmentDeclarationWGSL",0,{name:n,shader:i}],79361);let r="fogFragment",o=`#ifdef FOG
60
+ `;f.ShaderStore.IncludesShadersStoreWGSL[n]||(f.ShaderStore.IncludesShadersStoreWGSL[n]=i),e.s(["fogFragmentDeclarationWGSL",0,{name:n,shader:i}],97039);let r="fogFragment",o=`#ifdef FOG
61
61
  var fog: f32=CalcFogFactor();
62
62
  #ifdef PBR
63
63
  fog=toLinearSpace(fog);
64
64
  #endif
65
65
  color= vec4f(mix(uniforms.vFogColor,color.rgb,fog),color.a);
66
66
  #endif
67
- `;f.ShaderStore.IncludesShadersStoreWGSL[r]||(f.ShaderStore.IncludesShadersStoreWGSL[r]=o),e.s(["fogFragmentWGSL",0,{name:r,shader:o}],57636)},25576,e=>{"use strict";var f=e.i(47150),n=e.i(29741),i=e.i(79361),r=e.i(69809),o=e.i(57636);let a="colorPixelShader",t=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
67
+ `;f.ShaderStore.IncludesShadersStoreWGSL[r]||(f.ShaderStore.IncludesShadersStoreWGSL[r]=o),e.s(["fogFragmentWGSL",0,{name:r,shader:o}],30597)},7539,e=>{"use strict";var f=e.i(2342),n=e.i(49338),i=e.i(97039),r=e.i(65513),o=e.i(30597);let a="colorPixelShader",t=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
68
68
  #define VERTEXCOLOR
69
69
  varying vColor: vec4f;
70
70
  #else
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2342,e=>{"use strict";class t{static GetShadersRepository(e=0){return 0===e?t.ShadersRepository:t.ShadersRepositoryWGSL}static GetShadersStore(e=0){return 0===e?t.ShadersStore:t.ShadersStoreWGSL}static GetIncludesShadersStore(e=0){return 0===e?t.IncludesShadersStore:t.IncludesShadersStoreWGSL}}t.ShadersRepository="src/Shaders/",t.ShadersStore={},t.IncludesShadersStore={},t.ShadersRepositoryWGSL="src/ShadersWGSL/",t.ShadersStoreWGSL={},t.IncludesShadersStoreWGSL={},e.s(["ShaderStore",0,t])},55080,e=>{"use strict";var t,i,r=e.i(42704);class s{get wrapU(){return this._cachedWrapU}set wrapU(e){this._cachedWrapU=e}get wrapV(){return this._cachedWrapV}set wrapV(e){this._cachedWrapV=e}get wrapR(){return this._cachedWrapR}set wrapR(e){this._cachedWrapR=e}get anisotropicFilteringLevel(){return this._cachedAnisotropicFilteringLevel}set anisotropicFilteringLevel(e){this._cachedAnisotropicFilteringLevel=e}get comparisonFunction(){return this._comparisonFunction}set comparisonFunction(e){this._comparisonFunction=e}get useMipMaps(){return this._useMipMaps}set useMipMaps(e){this._useMipMaps=e}constructor(){this.samplingMode=-1,this._useMipMaps=!0,this._cachedWrapU=null,this._cachedWrapV=null,this._cachedWrapR=null,this._cachedAnisotropicFilteringLevel=null,this._comparisonFunction=0}setParameters(e=1,t=1,i=1,r=1,s=2,a=0){return this._cachedWrapU=e,this._cachedWrapV=t,this._cachedWrapR=i,this._cachedAnisotropicFilteringLevel=r,this.samplingMode=s,this._comparisonFunction=a,this}compareSampler(e){return this._cachedWrapU===e._cachedWrapU&&this._cachedWrapV===e._cachedWrapV&&this._cachedWrapR===e._cachedWrapR&&this._cachedAnisotropicFilteringLevel===e._cachedAnisotropicFilteringLevel&&this.samplingMode===e.samplingMode&&this._comparisonFunction===e._comparisonFunction&&this._useMipMaps===e._useMipMaps}}(t=i||(i={}))[t.Unknown=0]="Unknown",t[t.Url=1]="Url",t[t.Temp=2]="Temp",t[t.Raw=3]="Raw",t[t.Dynamic=4]="Dynamic",t[t.RenderTarget=5]="RenderTarget",t[t.MultiRenderTarget=6]="MultiRenderTarget",t[t.Cube=7]="Cube",t[t.CubeRaw=8]="CubeRaw",t[t.CubePrefiltered=9]="CubePrefiltered",t[t.Raw3D=10]="Raw3D",t[t.Raw2DArray=11]="Raw2DArray",t[t.DepthStencil=12]="DepthStencil",t[t.CubeRawRGBD=13]="CubeRawRGBD",t[t.Depth=14]="Depth",t[t.External=15]="External";class a extends s{get useMipMaps(){return null===this._useMipMaps?this.generateMipMaps:this._useMipMaps}set useMipMaps(e){this._useMipMaps=e}get uniqueId(){return this._uniqueId}_setUniqueId(e){this._uniqueId=e}getEngine(){return this._engine}get source(){return this._source}constructor(e,t,i=!1){super(),this.isReady=!1,this.isCube=!1,this.is3D=!1,this.is2DArray=!1,this.isMultiview=!1,this.url="",this.generateMipMaps=!1,this._useMipMaps=null,this.mipLevelCount=1,this.samples=0,this.type=-1,this.format=-1,this.onLoadedObservable=new r.Observable,this.onErrorObservable=new r.Observable,this.onRebuildCallback=null,this.width=0,this.height=0,this.depth=0,this.baseWidth=0,this.baseHeight=0,this.baseDepth=0,this.invertY=!1,this._invertVScale=!1,this._associatedChannel=-1,this._source=0,this._buffer=null,this._bufferView=null,this._bufferViewArray=null,this._bufferViewArrayArray=null,this._size=0,this._extension="",this._files=null,this._workingCanvas=null,this._workingContext=null,this._cachedCoordinatesMode=null,this._isDisabled=!1,this._compression=null,this._sphericalPolynomial=null,this._sphericalPolynomialPromise=null,this._sphericalPolynomialComputed=!1,this._lodGenerationScale=0,this._lodGenerationOffset=0,this._useSRGBBuffer=!1,this._creationFlags=0,this._lodTextureHigh=null,this._lodTextureMid=null,this._lodTextureLow=null,this._isRGBD=!1,this._linearSpecularLOD=!1,this._irradianceTexture=null,this._hardwareTexture=null,this._maxLodLevel=null,this._references=1,this._gammaSpace=null,this._premulAlpha=!1,this._dynamicTextureSource=null,this._autoMSAAManagement=!1,this._engine=e,this._source=t,this._uniqueId=a._Counter++,i||(this._hardwareTexture=e._createHardwareTexture())}incrementReferences(){this._references++}updateSize(e,t,i=1){this._engine.updateTextureDimensions(this,e,t,i),this.width=e,this.height=t,this.depth=i,this.baseWidth=e,this.baseHeight=t,this.baseDepth=i,this._size=e*t*i}_rebuild(){let e;if(this.isReady=!1,this._cachedCoordinatesMode=null,this._cachedWrapU=null,this._cachedWrapV=null,this._cachedWrapR=null,this._cachedAnisotropicFilteringLevel=null,this.onRebuildCallback){let e=this.onRebuildCallback(this),t=t=>{t._swapAndDie(this,!1),this.isReady=e.isReady};e.isAsync?e.proxy.then(t):t(e.proxy);return}switch(this.source){case 2:case 12:case 14:break;case 1:e=this._engine.createTexture(this._originalUrl??this.url,!this.generateMipMaps,this.invertY,null,this.samplingMode,e=>{e._swapAndDie(this,!1),this.isReady=!0},null,this._buffer,void 0,this.format,this._extension,void 0,void 0,void 0,this._useSRGBBuffer);return;case 3:if((e=this._engine.createRawTexture(this._bufferView,this.baseWidth,this.baseHeight,this.format,this.generateMipMaps,this.invertY,this.samplingMode,this._compression,this.type,this._creationFlags,this._useSRGBBuffer,this.mipLevelCount))._swapAndDie(this,!1),this._bufferViewArray)for(let e=0;e<this._bufferViewArray.length;e++){let t=this._bufferViewArray[e];t&&this._engine.updateRawTexture(this,t,this.format,this.invertY,this._compression,this.type,this._useSRGBBuffer,e)}this.isReady=!0;break;case 10:(e=this._engine.createRawTexture3D(this._bufferView,this.baseWidth,this.baseHeight,this.baseDepth,this.format,this.generateMipMaps,this.invertY,this.samplingMode,this._compression,this.type))._swapAndDie(this,!1),this.isReady=!0;break;case 11:if((e=this._engine.createRawTexture2DArray(this._bufferView,this.baseWidth,this.baseHeight,this.baseDepth,this.format,this.generateMipMaps,this.invertY,this.samplingMode,this._compression,this.type,this._creationFlags,this.mipLevelCount))._swapAndDie(this,!1),this._bufferViewArray)for(let e=0;e<this._bufferViewArray.length;e++){let t=this._bufferViewArray[e];t&&this._engine.updateRawTexture2DArray(this,t,this.format,this.invertY,this._compression,this.type,e)}this.isReady=!0;break;case 4:(e=this._engine.createDynamicTexture(this.baseWidth,this.baseHeight,this.generateMipMaps,this.samplingMode))._swapAndDie(this,!1),this._dynamicTextureSource&&this._engine.updateDynamicTexture(this,this._dynamicTextureSource,this.invertY,this._premulAlpha,this.format,!0);break;case 7:e=this._engine.createCubeTexture(this.url,null,this._files,!this.generateMipMaps,()=>{e._swapAndDie(this,!1),this.isReady=!0},null,this.format,this._extension,!1,0,0,null,void 0,this._useSRGBBuffer,ArrayBuffer.isView(this._buffer)?this._buffer:null);return;case 8:(e=this._engine.createRawCubeTexture(this._bufferViewArray,this.width,this._originalFormat??this.format,this.type,this.generateMipMaps,this.invertY,this.samplingMode,this._compression))._swapAndDie(this,!1),this.isReady=!0;break;case 13:return;case 9:(e=this._engine.createPrefilteredCubeTexture(this.url,null,this._lodGenerationScale,this._lodGenerationOffset,e=>{e&&e._swapAndDie(this,!1),this.isReady=!0},null,this.format,this._extension))._sphericalPolynomial=this._sphericalPolynomial;return}}_swapAndDie(e,t=!0){this._hardwareTexture?.setUsage(e._source,this.generateMipMaps,this.is2DArray,this.isCube,this.is3D,this.width,this.height,this.depth),e._hardwareTexture=this._hardwareTexture,e._setUniqueId(a._Counter++),t&&(e._isRGBD=this._isRGBD),this._lodTextureHigh&&(e._lodTextureHigh&&e._lodTextureHigh.dispose(),e._lodTextureHigh=this._lodTextureHigh),this._lodTextureMid&&(e._lodTextureMid&&e._lodTextureMid.dispose(),e._lodTextureMid=this._lodTextureMid),this._lodTextureLow&&(e._lodTextureLow&&e._lodTextureLow.dispose(),e._lodTextureLow=this._lodTextureLow),this._irradianceTexture&&(e._irradianceTexture&&e._irradianceTexture.dispose(),e._irradianceTexture=this._irradianceTexture);let i=this._engine.getLoadedTexturesCache(),r=i.indexOf(this);-1!==r&&i.splice(r,1),-1===(r=i.indexOf(e))&&i.push(e)}dispose(){this._references--,0===this._references&&(this.onLoadedObservable.clear(),this.onErrorObservable.clear(),this._engine._releaseTexture(this),this._hardwareTexture=null,this._dynamicTextureSource=null)}}a._Counter=0,e.s(["InternalTexture",0,a],55080)},22832,80145,e=>{"use strict";var t=e.i(43880);class i{static Eval(e,t){return"true"===(e=e.match(/\([^()]*\)/g)?e.replace(/\([^()]*\)/g,e=>(e=e.slice(1,e.length-1),i._HandleParenthesisContent(e,t))):i._HandleParenthesisContent(e,t))||"false"!==e&&i.Eval(e,t)}static _HandleParenthesisContent(e,t){let r;t=t||(e=>"true"===e);let s=e.split("||");for(let e in s)if(Object.prototype.hasOwnProperty.call(s,e)){let a=i._SimplifyNegation(s[e].trim()),n=a.split("&&");if(n.length>1)for(let e=0;e<n.length;++e){let s=i._SimplifyNegation(n[e].trim());if(!(r="true"!==s&&"false"!==s?"!"===s[0]?!t(s.substring(1)):t(s):"true"===s)){a="false";break}}if(r||"true"===a){r=!0;break}r="true"!==a&&"false"!==a?"!"===a[0]?!t(a.substring(1)):t(a):"true"===a}return r?"true":"false"}static _SimplifyNegation(e){return"!true"===(e=(e=e.replace(/^[\s!]+/,e=>(e=e.replace(/[\s]/g,()=>"")).length%2?"!":"")).trim())?e="false":"!false"===e&&(e="true"),e}}class r{static EnableFor(e){e._tags=e._tags||{},e.hasTags=()=>r.HasTags(e),e.addTags=t=>r.AddTagsTo(e,t),e.removeTags=t=>r.RemoveTagsFrom(e,t),e.matchesTagsQuery=t=>r.MatchesQuery(e,t)}static DisableFor(e){delete e._tags,delete e.hasTags,delete e.addTags,delete e.removeTags,delete e.matchesTagsQuery}static HasTags(e){if(!e._tags)return!1;let t=e._tags;for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!0;return!1}static GetTags(e,t=!0){if(!e._tags)return null;if(!t)return e._tags;{let t=[];for(let i in e._tags)Object.prototype.hasOwnProperty.call(e._tags,i)&&!0===e._tags[i]&&t.push(i);return t.join(" ")}}static AddTagsTo(e,t){if(t&&"string"==typeof t)for(let i of t.split(" "))r._AddTagTo(e,i)}static _AddTagTo(e,t){""===(t=t.trim())||"true"===t||"false"===t||t.match(/[\s]/)||t.match(/^([!]|([|]|[&]){2})/)||(r.EnableFor(e),e._tags[t]=!0)}static RemoveTagsFrom(e,t){if(!r.HasTags(e))return;let i=t.split(" ");for(let t in i)r._RemoveTagFrom(e,i[t])}static _RemoveTagFrom(e,t){delete e._tags[t]}static MatchesQuery(e,t){return void 0===t||(""===t?r.HasTags(e):i.Eval(t,t=>r.HasTags(e)&&e._tags[t]))}}e.s(["Tags",0,r],80145);var s=e.i(64073),a=e.i(72003),n=e.i(82427);let o=function(e,t,i,s={}){let a=e();r&&r.HasTags(t)&&r.AddTagsTo(a,r.GetTags(t,!0));let o=(0,n.GetMergedStore)(a),l={};for(let e in o){let r=o[e],n=t[e],u=r.type;if(null!=n&&("uniqueId"!==e||h.AllowLoadingUniqueId))switch(u){case 0:case 6:case 9:case 11:"function"==typeof n.slice?a[e]=n.slice():a[e]=n;break;case 1:s.cloneTexturesOnlyOnce&&l[n.uniqueId]?a[e]=l[n.uniqueId]:(a[e]=i||n.isRenderTarget?n:n.clone(),l[n.uniqueId]=a[e]);break;case 2:case 3:case 4:case 5:case 7:case 8:case 10:case 12:case 13:a[e]=i?n:n.clone()}}return a};class h{static AppendSerializedAnimations(e,t){if(e.animations){t.animations=[];for(let i=0;i<e.animations.length;i++){let r=e.animations[i];t.animations.push(r.serialize())}}}static Serialize(e,t){t||(t={}),r&&(t.tags=r.GetTags(e));let i=(0,n.GetMergedStore)(e);for(let r in i){let s=i[r],a=s.sourceName||r,n=s.type,o=e[r];if(null!=o&&("uniqueId"!==r||h.AllowLoadingUniqueId))switch(n){case 0:Array.isArray(o)?t[a]=o.slice():t[a]=o;break;case 1:case 3:case 7:case 9:t[a]=o.serialize();break;case 2:case 4:case 5:case 8:case 10:case 12:case 13:t[a]=o.asArray();break;case 6:case 11:t[a]=o.id}}return t}static ParseProperties(e,t,i,r){r||(r="");let o=(0,n.GetMergedStore)(t);for(let n in o){let l=o[n],u=e[l.sourceName||n],c=l.type;if(null!=u&&("uniqueId"!==n||h.AllowLoadingUniqueId))switch(c){case 0:t[n]=u;break;case 1:i&&(t[n]=h._TextureParser(u,i,r));break;case 2:t[n]=s.Color3.FromArray(u);break;case 3:t[n]=h._FresnelParametersParser(u);break;case 4:t[n]=a.Vector2.FromArray(u);break;case 5:t[n]=a.Vector3.FromArray(u);break;case 6:i&&(t[n]=i.getLastMeshById(u));break;case 7:t[n]=h._ColorCurvesParser(u);break;case 8:t[n]=s.Color4.FromArray(u);break;case 9:t[n]=h._ImageProcessingConfigurationParser(u);break;case 10:t[n]=a.Quaternion.FromArray(u);break;case 11:i&&(t[n]=i.getCameraById(u));break;case 12:t[n]=a.Matrix.FromArray(u);break;case 13:t[n]=a.Vector4.FromArray(u)}}}static Parse(e,t,i,s=null){let a=e();return r&&r.AddTagsTo(a,t.tags),h.ParseProperties(t,a,i,s),a}static Clone(e,t,i={}){return o(e,t,!1,i)}static Instanciate(e,t){return o(e,t,!0)}}h.AllowLoadingUniqueId=!1,h._ImageProcessingConfigurationParser=e=>{throw(0,t._WarnImport)("ImageProcessingConfiguration")},h._FresnelParametersParser=e=>{throw(0,t._WarnImport)("FresnelParameters")},h._ColorCurvesParser=e=>{throw(0,t._WarnImport)("ColorCurves")},h._TextureParser=(e,i,r)=>{throw(0,t._WarnImport)("Texture")},e.s(["SerializationHelper",0,h],22832)},4112,82427,91679,e=>{"use strict";let t;"function"==typeof SuppressedError&&SuppressedError,e.s(["__classPrivateFieldGet",0,function(e,t,i,r){if("a"===i&&!r)throw TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?r:"a"===i?r.call(e):r?r.value:t.get(e)},"__classPrivateFieldSet",0,function(e,t,i,r,s){if("m"===r)throw TypeError("Private method is not writable");if("a"===r&&!s)throw TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!s:!t.has(e))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?s.call(e,i):s?s.value=i:t.set(e,i),i},"__esDecorate",0,function(e,t,i,r,s,a){function n(e){if(void 0!==e&&"function"!=typeof e)throw TypeError("Function expected");return e}for(var o,h=r.kind,l="getter"===h?"get":"setter"===h?"set":"value",u=!t&&e?r.static?e:e.prototype:null,c=t||(u?Object.getOwnPropertyDescriptor(u,r.name):{}),d=!1,p=i.length-1;p>=0;p--){var _={};for(var f in r)_[f]="access"===f?{}:r[f];for(var f in r.access)_.access[f]=r.access[f];_.addInitializer=function(e){if(d)throw TypeError("Cannot add initializers after decoration has completed");a.push(n(e||null))};var g=(0,i[p])("accessor"===h?{get:c.get,set:c.set}:c[l],_);if("accessor"===h){if(void 0===g)continue;if(null===g||"object"!=typeof g)throw TypeError("Object expected");(o=n(g.get))&&(c.get=o),(o=n(g.set))&&(c.set=o),(o=n(g.init))&&s.unshift(o)}else(o=n(g))&&("field"===h?s.unshift(o):c[l]=o)}u&&Object.defineProperty(u,r.name,c),d=!0},"__runInitializers",0,function(e,t,i){for(var r=arguments.length>2,s=0;s<t.length;s++)i=r?t[s].call(e,i):t[s].call(e);return r?i:void 0}],4112);let i="__bjs_serializable__",r=new WeakMap;function s(e,t){return Object.prototype.hasOwnProperty.call(e,t)}let a=((t=Symbol.metadata)||Object.defineProperty(Symbol,"metadata",{configurable:!0,writable:!0,value:t=Symbol("Symbol.metadata")}),t);function n(e){if(!e)throw Error(`Decorator metadata is unavailable; the Symbol.metadata (${String(a)}) polyfill must run before decorated classes are evaluated.`);return s(e,i)||(e[i]={}),e[i]}function o(e,t){return(i,r)=>{if(!r.metadata)return;let s=String(r.name),a=n(r.metadata);a[s]||(a[s]={type:e,sourceName:t})}}function h(e,t,i){let r=String(t.name),s=null,a=function(...n){if(null===s){s=e,"u">typeof _native&&_native[r]&&(s=i(_native[r],e));let n=this&&(t.static?this:Object.getPrototypeOf(this));n?.[r]===a&&(n[r]=s)}return s.apply(this,n)};return a}function l(e,t){return h(e,t,e=>e)}e.s(["GetDirectStoreFromMetadata",0,n,"GetMergedStore",0,function(e){let t="function"==typeof e?e:e?.constructor,n=t?t[a]:void 0;if(!n)return{};let o=r.get(n);if(o)return o;let h={},l=[],u=n;for(;u;)l.push(u),u=Object.getPrototypeOf(u);for(let e of l)if(s(e,i)){let t=e[i];for(let e in t)h[e]=t[e]}return r.set(n,h),h}],82427),l.filter=function(e){return(t,i)=>h(t,i,(t,i)=>function(...r){return e(...r)?t(...r):i.apply(this,r)})},e.s(["addAccessorsForMaterialProperty",0,function(e,t=null){return(i,r)=>{let s=t||"_"+String(r.name);return{get(){return this[s]?.value},set(t){"function"==typeof this[s]?.value?.equals&&this[s].value.equals(t)||this[s].value!==t&&(this[s].value=t,this[e]())}}}},"expandToProperty",0,function(e,t=null){return function(e,t=null){return(i,r)=>{let s=t||"_"+String(r.name);return{init(e){return void 0===e&&s in this||(this[s]=e),e},get(){return this[s]},set(t){"function"==typeof this[s]?.equals&&this[s].equals(t)||this[s]!==t&&(this[s]=t,this[e]())}}}}(e,t)},"nativeOverride",0,l,"serialize",0,function(e){return o(0,e)},"serializeAsColor3",0,function(e){return o(2,e)},"serializeAsColor4",0,function(e){return o(8,e)},"serializeAsColorCurves",0,function(e){return o(7,e)},"serializeAsFresnelParameters",0,function(e){return o(3,e)},"serializeAsMatrix",0,function(e){return o(12,e)},"serializeAsMeshReference",0,function(e){return o(6,e)},"serializeAsQuaternion",0,function(e){return o(10,e)},"serializeAsTexture",0,function(e){return o(1,e)},"serializeAsVector2",0,function(e){return o(4,e)},"serializeAsVector3",0,function(e){return o(5,e)}],91679)}]);
@@ -1,65 +1,4 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,97793,e=>{"use strict";var r=e.i(47150);let t="sceneUboDeclaration",i=`struct Scene {viewProjection : mat4x4<f32>,
2
- #ifdef MULTIVIEW
3
- viewProjectionR : mat4x4<f32>,
4
- #endif
5
- view : mat4x4<f32>,
6
- projection : mat4x4<f32>,
7
- vEyePosition : vec4<f32>,
8
- inverseProjection : mat4x4<f32>,};
9
- #define SCENE_UBO
10
- var<uniform> scene : Scene;
11
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["sceneUboDeclarationWGSL",0,{name:t,shader:i}])},54058,e=>{"use strict";var r=e.i(47150);let t="harmonicsFunctions",i=`#ifdef USESPHERICALFROMREFLECTIONMAP
12
- #ifdef SPHERICAL_HARMONICS
13
- fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {return uniforms.vSphericalL00
14
- + uniforms.vSphericalL1_1*(normal.y)
15
- + uniforms.vSphericalL10*(normal.z)
16
- + uniforms.vSphericalL11*(normal.x)
17
- + uniforms.vSphericalL2_2*(normal.y*normal.x)
18
- + uniforms.vSphericalL2_1*(normal.y*normal.z)
19
- + uniforms.vSphericalL20*((3.0*normal.z*normal.z)-1.0)
20
- + uniforms.vSphericalL21*(normal.z*normal.x)
21
- + uniforms.vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
22
- #else
23
- fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {var Nx: f32=normal.x;var Ny: f32=normal.y;var Nz: f32=normal.z;var C1: vec3f=uniforms.vSphericalZZ.rgb;var Cx: vec3f=uniforms.vSphericalX.rgb;var Cy: vec3f=uniforms.vSphericalY.rgb;var Cz: vec3f=uniforms.vSphericalZ.rgb;var Cxx_zz: vec3f=uniforms.vSphericalXX_ZZ.rgb;var Cyy_zz: vec3f=uniforms.vSphericalYY_ZZ.rgb;var Cxy: vec3f=uniforms.vSphericalXY.rgb;var Cyz: vec3f=uniforms.vSphericalYZ.rgb;var Czx: vec3f=uniforms.vSphericalZX.rgb;var a1: vec3f=Cyy_zz*Ny+Cy;var a2: vec3f=Cyz*Nz+a1;var b1: vec3f=Czx*Nz+Cx;var b2: vec3f=Cxy*Ny+b1;var b3: vec3f=Cxx_zz*Nx+b2;var t1: vec3f=Cz *Nz+C1;var t2: vec3f=a2 *Ny+t1;var t3: vec3f=b3 *Nx+t2;return t3;}
24
- #endif
25
- #endif
26
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["harmonicsFunctionsWGSL",0,{name:t,shader:i}])},63593,4534,e=>{"use strict";var r=e.i(47150);let t="clipPlaneVertexDeclaration",i=`#ifdef CLIPPLANE
27
- uniform vClipPlane: vec4<f32>;varying fClipDistance: f32;
28
- #endif
29
- #ifdef CLIPPLANE2
30
- uniform vClipPlane2: vec4<f32>;varying fClipDistance2: f32;
31
- #endif
32
- #ifdef CLIPPLANE3
33
- uniform vClipPlane3: vec4<f32>;varying fClipDistance3: f32;
34
- #endif
35
- #ifdef CLIPPLANE4
36
- uniform vClipPlane4: vec4<f32>;varying fClipDistance4: f32;
37
- #endif
38
- #ifdef CLIPPLANE5
39
- uniform vClipPlane5: vec4<f32>;varying fClipDistance5: f32;
40
- #endif
41
- #ifdef CLIPPLANE6
42
- uniform vClipPlane6: vec4<f32>;varying fClipDistance6: f32;
43
- #endif
44
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["clipPlaneVertexDeclarationWGSL",0,{name:t,shader:i}],63593);let n="clipPlaneVertex",a=`#ifdef CLIPPLANE
45
- vertexOutputs.fClipDistance=dot(worldPos,uniforms.vClipPlane);
46
- #endif
47
- #ifdef CLIPPLANE2
48
- vertexOutputs.fClipDistance2=dot(worldPos,uniforms.vClipPlane2);
49
- #endif
50
- #ifdef CLIPPLANE3
51
- vertexOutputs.fClipDistance3=dot(worldPos,uniforms.vClipPlane3);
52
- #endif
53
- #ifdef CLIPPLANE4
54
- vertexOutputs.fClipDistance4=dot(worldPos,uniforms.vClipPlane4);
55
- #endif
56
- #ifdef CLIPPLANE5
57
- vertexOutputs.fClipDistance5=dot(worldPos,uniforms.vClipPlane5);
58
- #endif
59
- #ifdef CLIPPLANE6
60
- vertexOutputs.fClipDistance6=dot(worldPos,uniforms.vClipPlane6);
61
- #endif
62
- `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["clipPlaneVertexWGSL",0,{name:n,shader:a}],4534)},57568,21550,11,58890,92928,67125,e=>{"use strict";var r=e.i(47150);let t="bonesDeclaration",i=`#if NUM_BONE_INFLUENCERS>0
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,87691,45961,47485,89701,62921,49405,e=>{"use strict";var r=e.i(2342);let t="bonesDeclaration",i=`#if NUM_BONE_INFLUENCERS>0
63
2
  #ifndef USE_VERTEX_PULLING
64
3
  attribute matricesIndices : vec4f;attribute matricesWeights : vec4f;
65
4
  #if NUM_BONE_INFLUENCERS>4
@@ -82,7 +21,7 @@ let textureWidth=i32(uniforms.boneTextureInfo.x);let y=offset/textureWidth;let x
82
21
  #endif
83
22
  #endif
84
23
  #endif
85
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["bonesDeclarationWGSL",0,{name:t,shader:i}],57568);let n="bakedVertexAnimationDeclaration",a=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
24
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["bonesDeclarationWGSL",0,{name:t,shader:i}],87691);let n="bakedVertexAnimationDeclaration",a=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
86
25
  uniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;
87
26
  #ifdef INSTANCES
88
27
  attribute bakedVertexAnimationSettingsInstanced : vec4<f32>;
@@ -90,7 +29,7 @@ attribute bakedVertexAnimationSettingsInstanced : vec4<f32>;
90
29
  fn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>
91
30
  {let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}
92
31
  #endif
93
- `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["bakedVertexAnimationDeclarationWGSL",0,{name:n,shader:a}],21550);let f="instancesDeclaration",d=`#ifdef INSTANCES
32
+ `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["bakedVertexAnimationDeclarationWGSL",0,{name:n,shader:a}],45961);let f="instancesDeclaration",d=`#ifdef INSTANCES
94
33
  attribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;
95
34
  #ifdef INSTANCESCOLOR
96
35
  attribute instanceColor : vec4<f32>;
@@ -112,7 +51,7 @@ uniform world : mat4x4<f32>;
112
51
  uniform previousWorld : mat4x4<f32>;
113
52
  #endif
114
53
  #endif
115
- `;r.ShaderStore.IncludesShadersStoreWGSL[f]||(r.ShaderStore.IncludesShadersStoreWGSL[f]=d),e.s(["instancesDeclarationWGSL",0,{name:f,shader:d}],11);let o="instancesVertex",s=`#ifdef INSTANCES
54
+ `;r.ShaderStore.IncludesShadersStoreWGSL[f]||(r.ShaderStore.IncludesShadersStoreWGSL[f]=d),e.s(["instancesDeclarationWGSL",0,{name:f,shader:d}],47485);let o="instancesVertex",s=`#ifdef INSTANCES
116
55
  var finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);
117
56
  #if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
118
57
  var finalPreviousWorld=mat4x4<f32>(
@@ -139,7 +78,7 @@ var finalWorld=mesh.world;
139
78
  var finalPreviousWorld=uniforms.previousWorld;
140
79
  #endif
141
80
  #endif
142
- `;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=s),e.s(["instancesVertexWGSL",0,{name:o,shader:s}],58890);let u="bonesVertex",v=`#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
81
+ `;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=s),e.s(["instancesVertexWGSL",0,{name:o,shader:s}],89701);let u="bonesVertex",v=`#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
143
82
  #if NUM_BONE_INFLUENCERS>0
144
83
  var influence : mat4x4<f32>;
145
84
  #ifdef BONETEXTURE
@@ -192,7 +131,7 @@ influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[3])]*v
192
131
  finalWorld=finalWorld*influence;
193
132
  #endif
194
133
  #endif
195
- `;r.ShaderStore.IncludesShadersStoreWGSL[u]||(r.ShaderStore.IncludesShadersStoreWGSL[u]=v),e.s(["bonesVertexWGSL",0,{name:u,shader:v}],92928);let m="bakedVertexAnimation",l=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
134
+ `;r.ShaderStore.IncludesShadersStoreWGSL[u]||(r.ShaderStore.IncludesShadersStoreWGSL[u]=v),e.s(["bonesVertexWGSL",0,{name:u,shader:v}],62921);let m="bakedVertexAnimation",l=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
196
135
  {
197
136
  #ifdef INSTANCES
198
137
  let VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;
@@ -223,7 +162,63 @@ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTextur
223
162
  #endif
224
163
  finalWorld=finalWorld*VATInfluence;}
225
164
  #endif
226
- `;r.ShaderStore.IncludesShadersStoreWGSL[m]||(r.ShaderStore.IncludesShadersStoreWGSL[m]=l),e.s(["bakedVertexAnimationWGSL",0,{name:m,shader:l}],67125)},92459,22253,61408,34609,e=>{"use strict";var r=e.i(47150);let t="morphTargetsVertexGlobalDeclaration",i=`#ifdef MORPHTARGETS
165
+ `;r.ShaderStore.IncludesShadersStoreWGSL[m]||(r.ShaderStore.IncludesShadersStoreWGSL[m]=l),e.s(["bakedVertexAnimationWGSL",0,{name:m,shader:l}],49405)},10997,e=>{"use strict";var r=e.i(2342);let t="bumpVertex",i=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
166
+ #if defined(TANGENT) && defined(NORMAL)
167
+ var tbnNormal: vec3f=normalize(normalUpdated);var tbnTangent: vec3f=normalize(tangentUpdated.xyz);var tbnBitangent: vec3f=cross(tbnNormal,tbnTangent)*tangentUpdated.w;var matTemp= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz)* mat3x3f(tbnTangent,tbnBitangent,tbnNormal);vertexOutputs.vTBN0=matTemp[0];vertexOutputs.vTBN1=matTemp[1];vertexOutputs.vTBN2=matTemp[2];
168
+ #endif
169
+ #endif
170
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["bumpVertexWGSL",0,{name:t,shader:i}])},83753,64767,e=>{"use strict";var r=e.i(2342);let t="clipPlaneVertexDeclaration",i=`#ifdef CLIPPLANE
171
+ uniform vClipPlane: vec4<f32>;varying fClipDistance: f32;
172
+ #endif
173
+ #ifdef CLIPPLANE2
174
+ uniform vClipPlane2: vec4<f32>;varying fClipDistance2: f32;
175
+ #endif
176
+ #ifdef CLIPPLANE3
177
+ uniform vClipPlane3: vec4<f32>;varying fClipDistance3: f32;
178
+ #endif
179
+ #ifdef CLIPPLANE4
180
+ uniform vClipPlane4: vec4<f32>;varying fClipDistance4: f32;
181
+ #endif
182
+ #ifdef CLIPPLANE5
183
+ uniform vClipPlane5: vec4<f32>;varying fClipDistance5: f32;
184
+ #endif
185
+ #ifdef CLIPPLANE6
186
+ uniform vClipPlane6: vec4<f32>;varying fClipDistance6: f32;
187
+ #endif
188
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["clipPlaneVertexDeclarationWGSL",0,{name:t,shader:i}],83753);let n="clipPlaneVertex",a=`#ifdef CLIPPLANE
189
+ vertexOutputs.fClipDistance=dot(worldPos,uniforms.vClipPlane);
190
+ #endif
191
+ #ifdef CLIPPLANE2
192
+ vertexOutputs.fClipDistance2=dot(worldPos,uniforms.vClipPlane2);
193
+ #endif
194
+ #ifdef CLIPPLANE3
195
+ vertexOutputs.fClipDistance3=dot(worldPos,uniforms.vClipPlane3);
196
+ #endif
197
+ #ifdef CLIPPLANE4
198
+ vertexOutputs.fClipDistance4=dot(worldPos,uniforms.vClipPlane4);
199
+ #endif
200
+ #ifdef CLIPPLANE5
201
+ vertexOutputs.fClipDistance5=dot(worldPos,uniforms.vClipPlane5);
202
+ #endif
203
+ #ifdef CLIPPLANE6
204
+ vertexOutputs.fClipDistance6=dot(worldPos,uniforms.vClipPlane6);
205
+ #endif
206
+ `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["clipPlaneVertexWGSL",0,{name:n,shader:a}],64767)},51760,e=>{"use strict";var r=e.i(2342);let t="harmonicsFunctions",i=`#ifdef USESPHERICALFROMREFLECTIONMAP
207
+ #ifdef SPHERICAL_HARMONICS
208
+ fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {return uniforms.vSphericalL00
209
+ + uniforms.vSphericalL1_1*(normal.y)
210
+ + uniforms.vSphericalL10*(normal.z)
211
+ + uniforms.vSphericalL11*(normal.x)
212
+ + uniforms.vSphericalL2_2*(normal.y*normal.x)
213
+ + uniforms.vSphericalL2_1*(normal.y*normal.z)
214
+ + uniforms.vSphericalL20*((3.0*normal.z*normal.z)-1.0)
215
+ + uniforms.vSphericalL21*(normal.z*normal.x)
216
+ + uniforms.vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
217
+ #else
218
+ fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {var Nx: f32=normal.x;var Ny: f32=normal.y;var Nz: f32=normal.z;var C1: vec3f=uniforms.vSphericalZZ.rgb;var Cx: vec3f=uniforms.vSphericalX.rgb;var Cy: vec3f=uniforms.vSphericalY.rgb;var Cz: vec3f=uniforms.vSphericalZ.rgb;var Cxx_zz: vec3f=uniforms.vSphericalXX_ZZ.rgb;var Cyy_zz: vec3f=uniforms.vSphericalYY_ZZ.rgb;var Cxy: vec3f=uniforms.vSphericalXY.rgb;var Cyz: vec3f=uniforms.vSphericalYZ.rgb;var Czx: vec3f=uniforms.vSphericalZX.rgb;var a1: vec3f=Cyy_zz*Ny+Cy;var a2: vec3f=Cyz*Nz+a1;var b1: vec3f=Czx*Nz+Cx;var b2: vec3f=Cxy*Ny+b1;var b3: vec3f=Cxx_zz*Nx+b2;var t1: vec3f=Cz *Nz+C1;var t2: vec3f=a2 *Ny+t1;var t3: vec3f=b3 *Nx+t2;return t3;}
219
+ #endif
220
+ #endif
221
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["harmonicsFunctionsWGSL",0,{name:t,shader:i}])},19579,44181,77316,43933,e=>{"use strict";var r=e.i(2342);let t="morphTargetsVertexGlobalDeclaration",i=`#ifdef MORPHTARGETS
227
222
  uniform morphTargetInfluences : array<f32,NUM_MORPH_INFLUENCERS>;
228
223
  #ifdef MORPHTARGETS_TEXTURE
229
224
  uniform morphTargetTextureIndices : array<f32,NUM_MORPH_INFLUENCERS>;uniform morphTargetTextureInfo : vec3<f32>;var morphTargets : texture_2d_array<f32>;fn readVector3FromRawSampler(targetIndex : i32,vertexIndex : f32)->vec3<f32>
@@ -235,7 +230,7 @@ let textureWidth: i32=i32(uniforms.morphTargetTextureInfo.y);
235
230
  let y: i32=i32(vertexIndex)/textureWidth;let x: i32=i32(vertexIndex) % textureWidth;return textureLoad(morphTargets,vec2i(x,y),i32(uniforms.morphTargetTextureIndices[targetIndex]),0);}
236
231
  #endif
237
232
  #endif
238
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["morphTargetsVertexGlobalDeclarationWGSL",0,{name:t,shader:i}],92459);let n="morphTargetsVertexDeclaration",a=`#ifdef MORPHTARGETS
233
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["morphTargetsVertexGlobalDeclarationWGSL",0,{name:t,shader:i}],19579);let n="morphTargetsVertexDeclaration",a=`#ifdef MORPHTARGETS
239
234
  #ifndef MORPHTARGETS_TEXTURE
240
235
  #ifdef MORPHTARGETS_POSITION
241
236
  attribute position{X} : vec3<f32>;
@@ -259,12 +254,12 @@ attribute color{X} : vec4<f32>;
259
254
  uniform morphTargetCount: f32;
260
255
  #endif
261
256
  #endif
262
- `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["morphTargetsVertexDeclarationWGSL",0,{name:n,shader:a}],22253);let f="morphTargetsVertexGlobal",d=`#ifdef MORPHTARGETS
257
+ `;r.ShaderStore.IncludesShadersStoreWGSL[n]||(r.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["morphTargetsVertexDeclarationWGSL",0,{name:n,shader:a}],44181);let f="morphTargetsVertexGlobal",d=`#ifdef MORPHTARGETS
263
258
  #ifdef MORPHTARGETS_TEXTURE
264
259
  var vertexID : f32;
265
260
  #endif
266
261
  #endif
267
- `;r.ShaderStore.IncludesShadersStoreWGSL[f]||(r.ShaderStore.IncludesShadersStoreWGSL[f]=d),e.s(["morphTargetsVertexGlobalWGSL",0,{name:f,shader:d}],61408);let o="morphTargetsVertex",s=`#ifdef MORPHTARGETS
262
+ `;r.ShaderStore.IncludesShadersStoreWGSL[f]||(r.ShaderStore.IncludesShadersStoreWGSL[f]=d),e.s(["morphTargetsVertexGlobalWGSL",0,{name:f,shader:d}],77316);let o="morphTargetsVertex",s=`#ifdef MORPHTARGETS
268
263
  #ifdef MORPHTARGETS_TEXTURE
269
264
  #if {X}==0
270
265
  for (var i=0; i<NUM_MORPH_INFLUENCERS; i=i+1) {if (f32(i)>=uniforms.morphTargetCount) {break;}
@@ -374,12 +369,17 @@ colorUpdated=colorUpdated+(vertexInputs.color{X}-vertexInputs.color)*uniforms.mo
374
369
  #endif
375
370
  #endif
376
371
  #endif
377
- `;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=s),e.s(["morphTargetsVertexWGSL",0,{name:o,shader:s}],34609)},19276,e=>{"use strict";var r=e.i(47150);let t="bumpVertex",i=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
378
- #if defined(TANGENT) && defined(NORMAL)
379
- var tbnNormal: vec3f=normalize(normalUpdated);var tbnTangent: vec3f=normalize(tangentUpdated.xyz);var tbnBitangent: vec3f=cross(tbnNormal,tbnTangent)*tangentUpdated.w;var matTemp= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz)* mat3x3f(tbnTangent,tbnBitangent,tbnNormal);vertexOutputs.vTBN0=matTemp[0];vertexOutputs.vTBN1=matTemp[1];vertexOutputs.vTBN2=matTemp[2];
380
- #endif
381
- #endif
382
- `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["bumpVertexWGSL",0,{name:t,shader:i}])},62160,e=>{"use strict";var r=e.i(47150),t=e.i(57568),i=e.i(21550),n=e.i(92459),a=e.i(22253),f=e.i(11),d=e.i(97793),o=e.i(63593),s=e.i(54058),u=e.i(61408),v=e.i(34609),m=e.i(58890),l=e.i(92928),c=e.i(67125),p=e.i(4534),x=e.i(19276);let S="geometryVertexShader",I=`#include<bonesDeclaration>
372
+ `;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=s),e.s(["morphTargetsVertexWGSL",0,{name:o,shader:s}],43933)},34218,e=>{"use strict";var r=e.i(2342);let t="sceneUboDeclaration",i=`struct Scene {viewProjection : mat4x4<f32>,
373
+ #ifdef MULTIVIEW
374
+ viewProjectionR : mat4x4<f32>,
375
+ #endif
376
+ view : mat4x4<f32>,
377
+ projection : mat4x4<f32>,
378
+ vEyePosition : vec4<f32>,
379
+ inverseProjection : mat4x4<f32>,};
380
+ #define SCENE_UBO
381
+ var<uniform> scene : Scene;
382
+ `;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=i),e.s(["sceneUboDeclarationWGSL",0,{name:t,shader:i}])},49590,e=>{"use strict";var r=e.i(2342),t=e.i(87691),i=e.i(45961),n=e.i(19579),a=e.i(44181),f=e.i(47485),d=e.i(34218),o=e.i(83753),s=e.i(51760),u=e.i(77316),v=e.i(43933),m=e.i(89701),l=e.i(62921),c=e.i(49405),p=e.i(64767),x=e.i(10997);let S="geometryVertexShader",I=`#include<bonesDeclaration>
383
383
  #include<bakedVertexAnimationDeclaration>
384
384
  #include<morphTargetsVertexGlobalDeclaration>
385
385
  #include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
@@ -0,0 +1 @@
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 r=()=>{let t=e.pick(e.pointerX,e.pointerY);t?.hit&&t.pickedPoint&&n.setTarget(t.pickedPoint)};return t.addEventListener("dblclick",r),()=>t.removeEventListener("dblclick",r)},"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,r=e.upperRadiusLimit??1/0;e.radius=Math.min(r,Math.max(n,e.radius*t))}],2348);var n=e.i(61284);e.s(["ZoomButtons",0,function({onZoom:e,onReset:r}){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:"−"}),r?(0,n.jsx)("button",{type:"button","aria-label":"Reset camera focus to center",title:"Reset focus to center",className:a,onClick:r,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)},87456,e=>{"use strict";e.s(["attachMeshHover",0,function(e,t,n){let r=0,a=null,i=t=>{let i=t.offsetX,l=t.offsetY;r||(r=requestAnimationFrame(()=>{var t,s;let o;r=0;let u=e.pick(i,l,e=>e.isPickable&&e.isEnabled()),c=u?.pickedMesh?(t=u.pickedMesh,s=u.thinInstanceIndex??-1,(o=t.metadata)?s>=0&&o.hoverLabels?o.hoverLabels[s]??null:o.hoverLabel??null:null):null;c?n({label:c,x:i,y:l}):null!==a&&n(null),a=c}))},l=()=>{r&&(cancelAnimationFrame(r),r=0),null!==a&&(a=null,n(null))};return t.addEventListener("pointermove",i),t.addEventListener("pointerleave",l),()=>{t.removeEventListener("pointermove",i),t.removeEventListener("pointerleave",l),r&&cancelAnimationFrame(r)}}])},48939,e=>{"use strict";var t=e.i(61284),n=e.i(60951);function r(e){return Number.isNaN(e)||e<0?0:e>1?1:e}function a(e){let t=r(e),n=[[0,.1,.9],[0,.85,1],[.1,.9,.2],[1,.85,0],[1,.15,0],[1,1,1]],a=n.length-1,i=t*a,l=Math.min(Math.floor(i),a-1),s=i-l,o=n[l],u=n[l+1];return o&&u?[o[0]+(u[0]-o[0])*s,o[1]+(u[1]-o[1])*s,o[2]+(u[2]-o[2])*s]:[1,1,1]}var i=e.i(56054),l=e.i(2348),s=e.i(87456),o=e.i(18637),u=e.i(2413);e.s(["CameraDome3DView",0,function({bins:c,gridSize:d}){let h=(0,n.useRef)(null),m=(0,n.useRef)(null),f=(0,n.useRef)(null),[p,b]=(0,n.useState)("loading"),[g,x]=(0,n.useState)(null),[w,v]=(0,n.useState)("markers"),[y,k]=(0,n.useState)(null),M=(0,n.useRef)(c),C=(0,n.useRef)(d),S=(0,n.useRef)(w);M.current=c,C.current=d,S.current=w;let z=(0,n.useRef)(null),R=c.length>0;return(0,n.useEffect)(()=>{let t=h.current;if(!t)return;if(!R)return void b("empty");let n=!1,o=null;return b("loading"),x(null),(async()=>{try{let[{Engine:u},{Scene:c},{ArcRotateCamera:d},{HemisphericLight:h},{Vector3:p,Color3:g,Color4:x,Matrix:w},{MeshBuilder:v},{StandardMaterial:y},{Mesh:R},{DynamicTexture:L}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(82393),e.A(36252),e.A(21020),e.A(8179)]);if(n)return;let I=new u(t,!0,{preserveDrawingBuffer:!1}),_=new c(I);_.clearColor=new x(.04,.05,.07,1);let A=p.Zero(),j=new d("dome-cam",Math.PI/3,Math.PI/2.4,3.6,A,_);j.attachControl(t,!0),j.lowerRadiusLimit=1.6,j.upperRadiusLimit=8,(0,l.disableWheelZoom)(j),m.current=j,f.current={target:A,alpha:j.alpha,beta:j.beta,radius:j.radius},new h("dome-light",new p(.3,1,.2),_);let E=v.CreateSphere("dome",{diameter:2,segments:20},_),$=new y("dome-mat",_);$.wireframe=!0,$.disableLighting=!0,$.emissiveColor=new g(.16,.2,.28),$.alpha=.5,E.material=$,E.isPickable=!1;let P=[];for(let e=0;e<=64;e++){let t=e/64*Math.PI*2;P.push(new p(Math.cos(t),0,Math.sin(t)))}let N=v.CreateLines("dome-horizon",{points:P},_);N.color=new g(.3,.36,.46),N.isPickable=!1;let T=v.CreateLines("dome-forward",{points:[p.Zero(),new p(1.25,0,0)]},_);T.color=new g(.4,.7,.95),T.isPickable=!1;let B=[],F=()=>{for(let e of B)e.dispose(!1,!0);B=[];let e=M.current;if(0===e.length)return;let t=e.reduce((e,t)=>Math.max(e,t.count),1),n=C.current>0?C.current:1;if("markers"===S.current){let r=v.CreateBox("dome-marker",{size:1},_),a=new y("dome-marker-mat",_);a.disableLighting=!0,a.emissiveColor=g.White(),a.specularColor=new g(0,0,0),r.material=a,r.isPickable=!0,r.thinInstanceEnablePicking=!0;let l=e.length,s=new Float32Array(16*l),o=new Float32Array(4*l),u=Array(l);for(let r=0;r<l;r++){let a=e[r],l=(a.azimuth_bin+.5)/n*Math.PI*2-Math.PI,c=(a.elevation_bin+.5)/n*Math.PI-Math.PI/2,d=Math.cos(c),h=d*Math.cos(l),m=Math.sin(c),f=d*Math.sin(l),p=a.count/t,b=.03+.12*p;w.Scaling(b,b,b).multiply(w.Translation(h,m,f)).copyToArray(s,16*r);let[g,x,v]=(0,i.heatRgb)(p);o[4*r]=g,o[4*r+1]=x,o[4*r+2]=v,o[4*r+3]=1,u[r]=`dir (${a.azimuth_bin}, ${a.elevation_bin}) \xb7 ${a.count}`}r.thinInstanceSetBuffer("matrix",s,16,!0),r.thinInstanceSetBuffer("color",o,4,!0),r.metadata={hoverLabels:u},B.push(r)}else{let t=function(e,t={}){let n=void 0!==t.width&&t.width>0?Math.floor(t.width):256,i=void 0!==t.height&&t.height>0?Math.floor(t.height):Math.max(1,Math.floor(n/2)),l=t.colorRamp??a,s=void 0!==t.blurBins&&t.blurBins>0?t.blurBins:1.5,o=r(t.alphaFloor??0),u=r(t.opacity??1),c=e.gridSize>0?e.gridSize:1,d=new Uint8ClampedArray(n*i*4),h=e.bins.filter(e=>e.count>0);if(0===h.length)return{width:n,height:i,rgba:d};let m=Math.max(1e-4,Math.PI/c*s),f=2*m*m,p=Math.cos(Math.min(Math.PI,3*m)),b=h.map(e=>{var t,n;let r,[a,i]=(t=e.azimuthBin,n=e.elevationBin,[(t+.5)/c*Math.PI*2-Math.PI,(n+.5)/c*Math.PI-Math.PI/2]);return[(r=Math.cos(i))*Math.cos(a),Math.sin(i),r*Math.sin(a)]}),g=new Float32Array(n*i),x=0;for(let e=0;e<i;e++){let t=Math.PI/2-(e+.5)/i*Math.PI,r=Math.cos(t),a=Math.sin(t);for(let t=0;t<n;t++){let i=(t+.5)/n*Math.PI*2-Math.PI,l=r*Math.cos(i),s=r*Math.sin(i),o=0;for(let e=0;e<h.length;e++){let t=b[e],n=l*t[0]+a*t[1]+s*t[2];if(n<p)continue;let r=Math.acos(n>1?1:n<-1?-1:n);o+=h[e].count*Math.exp(-(r*r)/f)}g[e*n+t]=o,o>x&&(x=o)}}if(x<=0)return{width:n,height:i,rgba:d};for(let e=0;e<g.length;e++){let t=r(g[e]/x),[n,a,i]=l(t),s=(o+(1-o)*t)*u,c=4*e;d[c]=Math.round(255*n),d[c+1]=Math.round(255*a),d[c+2]=Math.round(255*i),d[c+3]=Math.round(255*r(s))}return{width:n,height:i,rgba:d}}({bins:e.map(e=>({azimuthBin:e.azimuth_bin,elevationBin:e.elevation_bin,count:e.count})),gridSize:n},{width:256,blurBins:1.5,opacity:.95}),i=new L("dome-skytex",{width:t.width,height:t.height},_,!1);i.hasAlpha=!0;let l=i.getContext(),s=l.createImageData(t.width,t.height);s.data.set(t.rgba),l.putImageData(s,0,0),i.update();let o=v.CreateSphere("dome-sky",{diameter:2,segments:48,sideOrientation:R.DOUBLESIDE},_),u=new y("dome-sky-mat",_);u.disableLighting=!0,u.emissiveColor=g.White(),u.diffuseColor=new g(0,0,0),u.specularColor=new g(0,0,0),u.emissiveTexture=i,u.opacityTexture=i,u.backFaceCulling=!1,o.material=u,o.isPickable=!1,B.push(o)}};z.current=F,F(),I.runRenderLoop(()=>_.render());let V=()=>I.resize();window.addEventListener("resize",V);let O=(0,s.attachMeshHover)(_,t,k),Z=(0,l.attachDoubleClickFocus)(_,t,j);b("ready"),o=()=>{window.removeEventListener("resize",V),O(),Z(),k(null),z.current=null,m.current=null,f.current=null,_.dispose(),I.dispose()}}catch(e){if(n)return;b("error"),x(e instanceof Error?e.message:"Failed to render dome.")}})(),()=>{n=!0,o?.()}},[R]),(0,n.useEffect)(()=>{z.current?.()},[c,d,w]),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:h,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),y?(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:y.x+12,top:y.y+12},children:y.label}):null,"ready"===p?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"absolute left-3 top-3 flex overflow-hidden rounded-md border border-edge bg-ink/80 text-xs backdrop-blur",children:["markers","skydome"].map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>v(e),className:`px-2.5 py-1 ${w===e?"bg-fg/15 font-medium text-white":"text-fg-muted hover:text-fg"}`,children:"markers"===e?"Markers":"Skydome"},e))}),(0,t.jsx)(u.ZoomButtons,{onZoom:e=>m.current&&(0,l.stepZoom)(m.current,e),onReset:()=>m.current&&f.current&&(0,l.resetFocus)(m.current,f.current)}),(0,t.jsx)(o.HeatLegend,{title:"Gaze density",lowLabel:"rarely",highLabel:"most-viewed",note:"markers"===w?"Each marker is a look-direction (camera forward). Blue line = forward, ring = horizon. Color & size scale with how often that direction was viewed.":"Continuous equirectangular heat field: the same gaze bins splatted into a smooth thermal texture wrapped on the dome. The in-scene SDK overlay (showGazeSkydome) renders this inward so you can stand inside it in WebXR."})]}):(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===p?"Rendering…":"empty"===p?"No camera samples in range.":"error"===p?g??"Dome unavailable.":null})]})}],48939)},19399,e=>{"use strict";var t=e.i(61284),n=e.i(60951);let r="__other_sp__",a="__other_mesh__";function i(e){return`${e[0]}|${e[1]}|${e[2]}`}function l(e,t){return t<=1?0:1.4-e/(t-1)*2.8}var s=e.i(56054),o=e.i(2348),u=e.i(87456),c=e.i(18637),d=e.i(2413);let h="__all__",m={maxStandpoints:6,maxMeshes:10,maxRibbons:70};function f(e,t){return`${e}|${t}`}function p(e){let t=e.aabb;return[(t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2]}function b(e){let t=0;for(let n=0;n<e.length;n++)t=31*t+e.charCodeAt(n)|0;return Math.abs(t)}function g({label:e,value:n,onChange:r,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=>r(e.target.value),children:[(0,t.jsx)("option",{value:h,children:a}),i.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))]})]})}function x({active:e,onClick:n,children:r,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:r})}function w({standpoints:e,proxyMeshes:r,selectedKey:a,onSelect:i}){let l=(0,n.useRef)(null),s=(0,n.useMemo)(()=>e.filter(e=>e.origin),[e]),o=(0,n.useMemo)(()=>{let e=1/0,t=-1/0,n=1/0,a=-1/0,i=(r,i)=>{e=Math.min(e,r),t=Math.max(t,r),n=Math.min(n,i),a=Math.max(a,i)};for(let e of r)i(e.aabb[0],e.aabb[2]),i(e.aabb[3],e.aabb[5]);for(let e of s)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}},[r,s]),u=(0,n.useMemo)(()=>{let e=Math.min(134/(o.maxX-o.minX),94/(o.maxZ-o.minZ));return(t,n)=>[8+(t-o.minX)*e,8+(n-o.minZ)*e]},[o]),c=(0,n.useMemo)(()=>s.reduce((e,t)=>Math.max(e,t.count),1),[s]);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,r)){let[e,n]=u(a.aabb[0],a.aabb[2]),[r,i]=u(a.aabb[3],a.aabb[5]);t.strokeRect(Math.min(e,r),Math.min(n,i),Math.abs(r-e),Math.abs(i-n))}for(let e of s){let[n,r]=u(e.origin[0],e.origin[2]),i=2+e.count/c*4,l=e.key===a;t.beginPath(),t.arc(n,r,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,r,i+2.5,0,2*Math.PI),t.strokeStyle="rgba(255,255,255,0.9)",t.lineWidth=1.5,t.stroke())}},[r,s,u,c,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===s.length)return;let n=t.getBoundingClientRect(),r=(e.clientX-n.left)/n.width*150,a=(e.clientY-n.top)/n.height*110,o=null,c=1/0;for(let e of s){let[t,n]=u(e.origin[0],e.origin[2]),i=(t-r)**2+(n-a)**2;i<c&&(c=i,o=e)}o&&c<=196&&i(o.key)}})]})}e.s(["FlowSankey3DView",0,function({links:v,gridSize:y,proxyMeshes:k=[],maxLinks:M=80,api:C,flowQuery:S,hasFirstPerson:z=!1}){let R=(0,n.useRef)(null),L=(0,n.useRef)(null),I=(0,n.useRef)(null),[_,A]=(0,n.useState)("loading"),[j,E]=(0,n.useState)(null),[$,P]=(0,n.useState)(h),[N,T]=(0,n.useState)(h),[B,F]=(0,n.useState)(h),[V,O]=(0,n.useState)("aggregate"),[Z,D]=(0,n.useState)(null),[W,H]=(0,n.useState)("all"),[K,U]=(0,n.useState)(v),G=!!(C&&S),Y=(0,n.useMemo)(()=>S?JSON.stringify(S):"",[S]),q=(0,n.useRef)(!1);(0,n.useEffect)(()=>{!q.current&&z&&(H("first-person"),q.current=!0)},[z]),(0,n.useEffect)(()=>{z&&"viewer"===W&&H("first-person")},[z,W]),(0,n.useEffect)(()=>{G||U(v)},[v,G]),(0,n.useEffect)(()=>{if(!C||!S)return;let e=!1,t="all"===W?void 0:W;return C.flowHeatmap({...S,bins:y,limit:400,groupByOrigin:!0,cameraMode:t}).then(t=>{e||U(t)}).catch(()=>{e||U([])}),()=>{e=!0}},[C,Y,W,y]);let X=(0,n.useMemo)(()=>{let e=new Map;for(let t of K){if(!t.originVoxel)continue;let n=i(t.originVoxel),r=t.origin,a=e.get(n);a?(a.count+=t.count,r&&(a.ox+=r[0]*t.count,a.oy+=r[1]*t.count,a.oz+=r[2]*t.count,a.wsum+=t.count)):e.set(n,{key:n,voxel:t.originVoxel,count:t.count,ox:r?r[0]*t.count:0,oy:r?r[1]*t.count:0,oz:r?r[2]*t.count:0,wsum:r?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)},[K]),J=X.length>0,Q=(0,n.useMemo)(()=>B===h?null:X.find(e=>e.key===B)??null,[X,B]),ee=(0,n.useMemo)(()=>(function(e,t,n,s){let o=e.filter(e=>e.originVoxel);if(0===o.length)return{standpoints:[],gazes:[],meshes:[],ribbons:[],maxCount:1};let u=t.slice(0,Math.max(1,s.maxStandpoints)),c=new Set(u.map(e=>e.key)),d=e=>{let t=e.originVoxel?i(e.originVoxel):r;return c.has(t)?t:r},h=new Map;for(let e of o)h.set(e.mesh,(h.get(e.mesh)??0)+e.count);let m=new Set([...h.entries()].sort((e,t)=>t[1]-e[1]).slice(0,Math.max(1,s.maxMeshes)).map(([e])=>e)),f=e=>m.has(e)?e:a,p=new Map;for(let e of o){let t=d(e),n=f(e.mesh),r=`${t}|${e.azimuth_bin}|${e.elevation_bin}|${n}`,a=p.get(r);a?a.count+=e.count:p.set(r,{standpointId:t,gazeId:`${t}|${e.azimuth_bin}|${e.elevation_bin}`,meshId:n,azimuthBin:e.azimuth_bin,elevationBin:e.elevation_bin,count:e.count})}let b=[...p.values()].sort((e,t)=>t.count-e.count),g=b.slice(0,Math.max(1,s.maxRibbons)),x=b.slice(Math.max(1,s.maxRibbons));if(x.length>0){let e=new Map(g.map(e=>[`${e.standpointId}|${e.azimuthBin}|${e.elevationBin}|${a}`,e]));for(let t of x){let n=`${t.standpointId}|${t.azimuthBin}|${t.elevationBin}|${a}`,r=e.get(n);if(r)r.count+=t.count;else{let r={standpointId:t.standpointId,gazeId:t.gazeId,meshId:a,azimuthBin:t.azimuthBin,elevationBin:t.elevationBin,count:t.count};e.set(n,r),g.push(r)}}}let w=new Set(g.map(e=>e.standpointId)),v=new Set(g.map(e=>e.meshId)),y=[...u.filter(e=>w.has(e.key)).map(e=>e.key),...w.has(r)?[r]:[]],k=y.map((e,t)=>{let n=u.find(t=>t.key===e),a=g.filter(t=>t.standpointId===e).reduce((e,t)=>e+t.count,0);return{id:e,kind:"standpoint",pos:[-2.6,l(t,y.length),0],count:a,label:n?`[${n.voxel[0]}, ${n.voxel[1]}, ${n.voxel[2]}]`:"Other standpoints",isOther:e===r}}),M=new Map(k.map(e=>[e.id,e.pos[1]])),C=new Map;for(let e of g)C.set(e.meshId,(C.get(e.meshId)??0)+e.count);let S=[...v].sort((e,t)=>(C.get(t)??0)-(C.get(e)??0));S.sort((e,t)=>(e===a)-(t===a));let z=S.map((e,t)=>({id:e,kind:"mesh",pos:[2.6,l(t,S.length),0],count:C.get(e)??0,label:e===a?"Other meshes":e,isOther:e===a})),R=new Map;for(let e of g){let t=R.get(e.gazeId);t?t.count+=e.count:R.set(e.gazeId,{az:e.azimuthBin,el:e.elevationBin,sp:e.standpointId,count:e.count})}let L=[...R.entries()].map(([e,t])=>{let r=M.get(t.sp)??0,a=(t.az+.5)/n-.5;return{id:e,kind:"gaze",pos:[0,r+((t.el+.5)/n-.5)*.85,1.6*a],count:t.count,label:`(${t.az}, ${t.el})`,isOther:!1}}),I=g.reduce((e,t)=>Math.max(e,t.count),1);return{standpoints:k,gazes:L,meshes:z,ribbons:g,maxCount:I}})(K,X,y,m),[K,X,y]),et="twostage"===V&&J;(0,n.useEffect)(()=>{"twostage"!==V||J||O("aggregate")},[V,J]);let en=(0,n.useMemo)(()=>{if(B!==h&&J)return K.filter(e=>e.originVoxel&&i(e.originVoxel)===B);if(!J)return K;let e=new Map;for(let t of K){let n=`${t.azimuth_bin}|${t.elevation_bin}|${t.mesh}`,r=e.get(n);r?r.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()]},[K,B,J]),er=(0,n.useMemo)(()=>[...en].sort((e,t)=>t.count-e.count).slice(0,Math.max(1,M)),[en,M]),ea=(0,n.useMemo)(()=>{let e=new Map;for(let t of er)e.set(t.mesh,(e.get(t.mesh)??0)+t.count);return[...e.entries()].sort((e,t)=>t[1]-e[1])},[er]),ei=(0,n.useMemo)(()=>{let e=new Map;for(let t of er){let n=f(t.azimuth_bin,t.elevation_bin),r=e.get(n);r?r.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)},[er]);(0,n.useEffect)(()=>{!et&&$!==h&&(ea.some(([e])=>e===$)||P(h))},[et,$,ea]),(0,n.useEffect)(()=>{!et&&N!==h&&(ei.some(e=>f(e.azimuthBin,e.elevationBin)===N)||T(h))},[et,N,ei]),(0,n.useEffect)(()=>{!et&&B!==h&&(X.some(e=>e.key===B)||F(h))},[et,B,X]),(0,n.useEffect)(()=>{P(h),T(h),F(h)},[V]);let el=(0,n.useMemo)(()=>et?ee.ribbons.filter(e=>{let t=B===h||e.standpointId===B,n=N===h||f(e.azimuthBin,e.elevationBin)===N,r=$===h||e.meshId===$;return t&&n&&r}).length:er.filter(e=>{let t=N===h||f(e.azimuth_bin,e.elevation_bin)===N,n=$===h||e.mesh===$;return t&&n}).length,[et,ee,er,$,N,B]),es=et?ee.ribbons.length:er.length,eo=(0,n.useMemo)(()=>et?ee.standpoints.map(e=>({value:e.id,label:`${e.label} \xb7 ${e.count}`})):X.slice(0,24).map(e=>({value:e.key,label:`[${e.voxel[0]}, ${e.voxel[1]}, ${e.voxel[2]}] \xb7 ${e.count}`})),[et,ee,X]),eu=(0,n.useMemo)(()=>{if(et){let e=new Map;for(let t of ee.ribbons){let n=f(t.azimuthBin,t.elevationBin),r=e.get(n);r?r.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:f(e.az,e.el),label:`(${e.az}, ${e.el}) \xb7 ${e.count}`}))}return ei.map(e=>({value:f(e.azimuthBin,e.elevationBin),label:`(${e.azimuthBin}, ${e.elevationBin}) \xb7 ${e.count}`}))},[et,ee,ei]),ec=(0,n.useMemo)(()=>et?ee.meshes.map(e=>({value:e.id,label:`${e.label} \xb7 ${e.count}`})):ea.map(([e,t])=>({value:e,label:`${e} \xb7 ${t}`})),[et,ee,ea]),ed=(0,n.useRef)(er);ed.current=er;let eh=(0,n.useRef)(ee);eh.current=ee;let em=(0,n.useRef)(k);em.current=k;let ef=(0,n.useRef)(ea);ef.current=ea;let ep=(0,n.useRef)($);ep.current=$;let eb=(0,n.useRef)(N);eb.current=N;let eg=(0,n.useRef)(B);eg.current=B;let ex=(0,n.useRef)(Q);ex.current=Q;let ew=(0,n.useRef)(null),ev=et?ee.ribbons.length>0:er.length>0;return(0,n.useEffect)(()=>{let t=R.current;if(!t)return;if(!ev)return void A("empty");let n=!1,r=null;return A("loading"),E(null),(async()=>{try{let a,[{Engine:i},{Scene:l},{ArcRotateCamera:c},{HemisphericLight:d},{Vector3:m,Color3:g,Color4:x},{MeshBuilder:w},{StandardMaterial:v}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(8179)]);if(n)return;let k=new i(t,!0,{preserveDrawingBuffer:!1}),M=new l(k);M.clearColor=new x(.04,.05,.07,1);let C=[],S=()=>{for(let e of C)e.dispose();C=[]};if(et){let e=m.Zero();(a=new c("ts-cam",Math.PI/2,Math.PI/2.4,8.5,e,M)).attachControl(t,!0),(0,o.disableWheelZoom)(a),L.current=a,I.current={target:e,alpha:a.alpha,beta:a.beta,radius:a.radius},new d("ts-light",new m(.3,1,.2),M);let n={standpoint:[.95,.45,.95],gaze:[.45,.75,1],mesh:[1,.82,.42]},r={standpoint:.26,gaze:.13,mesh:.22},i=(e,t,n)=>{let r=e[0],a=e[1],i=e[2],l=t[0],s=t[1],o=t[2],u=[(r+l)/2,(a+s)/2+n,(i+o)/2],c=[];for(let e=0;e<=12;e++){let t=e/12,n=1-t;c.push(new m(n*n*r+2*n*t*u[0]+t*t*l,n*n*a+2*n*t*u[1]+t*t*s,n*n*i+2*n*t*u[2]+t*t*o))}return c},l=()=>{S();let e=eh.current;if(0===e.ribbons.length)return;let t=eg.current,a=eb.current,l=ep.current,o=e=>{let n=t===h||e.standpointId===t,r=a===h||f(e.azimuthBin,e.elevationBin)===a,i=l===h||e.meshId===l;return n&&r&&i},u=t!==h||a!==h||l!==h,c=new Set;for(let t of e.ribbons)o(t)&&(c.add(t.standpointId),c.add(t.gazeId),c.add(t.meshId));let d=[...e.standpoints,...e.gazes,...e.meshes],p=new Map(d.map(e=>[e.id,e.pos])),b=new Map(d.map(e=>[e.id,e.label]));for(let e of d){let t=w.CreateSphere(`ts-node-${e.kind}-${e.id}`,{diameter:r[e.kind],segments:8},M);t.position=new m(e.pos[0],e.pos[1],e.pos[2]);let a=new v(`ts-node-mat-${e.kind}-${e.id}`,M);a.disableLighting=!0;let[i,l,s]=n[e.kind];a.emissiveColor=new g(i,l,s),a.alpha=!u||c.has(e.id)?1:.2,t.material=a,t.isPickable=!0,t.metadata={hoverLabel:e.label},C.push(t,a)}for(let t of e.ribbons){let n=p.get(t.standpointId),r=p.get(t.gazeId),a=p.get(t.meshId);if(!n||!r||!a)continue;let l=t.count/e.maxCount,c=.18+.5*l,d=[...i(n,r,c),...i(r,a,c).slice(1)],h=o(t),[m,f,x]=(0,s.heatRgb)(l),y=w.CreateTube(`ts-link-${t.standpointId}-${t.gazeId}-${t.meshId}`,{path:d,radius:(h?1:.4)*(.012+.04*l),tessellation:8,cap:0,sideOrientation:0},M),k=new v(`ts-link-mat-${t.standpointId}-${t.gazeId}-${t.meshId}`,M);k.disableLighting=!0,k.emissiveColor=new g(m,f,x),k.alpha=h?.35+.65*l:u?.06:.18,y.material=k,y.isPickable=!0,y.metadata={hoverLabel:b.get(t.meshId)??t.meshId},C.push(y,k)}};ew.current=l,l()}else{let e=new Map;for(let t of em.current)e.set(t.name,p(t));let n=new Map,r=ef.current.map(([e])=>e).filter(t=>!e.has(t));for(let e=0;e<r.length;e++){let t=r[e],a=b(t),i=e/Math.max(1,r.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,r]of e.entries())n.set(t,r);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 k=new m(i/Math.max(1,x),l/Math.max(1,x),u/Math.max(1,x)),z=1.8;for(let e of n.values()){let t=e[0]-k.x,n=e[1]-k.y,r=e[2]-k.z;z=Math.max(z,Math.sqrt(t*t+n*n+r*r))}let R=.75*z+1,_=Math.max(1,z/1.8);(a=new c("flow-cam",Math.PI/4,Math.PI/3,3.4*z,k,M)).attachControl(t,!0),(0,o.disableWheelZoom)(a),L.current=a,I.current={target:k,alpha:a.alpha,beta:a.beta,radius:a.radius},new d("flow-light",new m(.3,1,.2),M);let A=w.CreateSphere("flow-source-dome",{diameter:2*R,segments:20},M);A.position=k;let j=new v("flow-source-dome-mat",M);j.wireframe=!0,j.disableLighting=!0,j.emissiveColor=new g(.16,.2,.28),j.alpha=.35,A.material=j,A.isPickable=!1;let E=()=>{S();let e=ed.current;if(0===e.length)return;let t=ep.current,n=eb.current,r=ex.current,a=new Map;for(let e of em.current)a.set(e.name,p(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=b(t),r=e/Math.max(1,l.length)*Math.PI*2+n%100/100*.35;i.set(t,[2.2*Math.cos(r),-.35+(n%7-3)*.06,2.2*Math.sin(r)])}for(let[e,t]of a.entries())i.set(e,t);let o=e.reduce((e,t)=>Math.max(e,t.count),1),u=new v("flow-source-node",M);u.disableLighting=!0,u.emissiveColor=new g(.45,.75,1);let c=new v("flow-target-node",M);c.disableLighting=!0,c.emissiveColor=new g(1,.82,.42),C.push(u,c);let d=new Set,x=new Set,z=e=>{let r=n===h||f(e.azimuth_bin,e.elevation_bin)===n,a=t===h||e.mesh===t;return r&&a},L=new Set,I=new Set;for(let t of e)z(t)&&(L.add(f(t.azimuth_bin,t.elevation_bin)),I.add(t.mesh));for(let r of e){let e=`${r.azimuth_bin}|${r.elevation_bin}`,a=i.get(r.mesh);if(!a)continue;let l=z(r),f=(r.azimuth_bin+.5)/y*Math.PI*2-Math.PI,p=(r.elevation_bin+.5)/y*Math.PI-Math.PI/2,b=Math.cos(p),S=b*Math.cos(f),A=Math.sin(p),j=b*Math.sin(f),E=new m(k.x+S*R,k.y+A*R,k.z+j*R),$=new m(a[0],a[1],a[2]);if(!d.has(e)){let r=w.CreateSphere(`flow-src-${e}`,{diameter:.12*_,segments:6},M);r.position=E;let a=u.clone(`flow-src-mat-${e}`);a.alpha=L.has(e)||t===h&&n===h?1:.22,r.material=a,r.isPickable=!1,d.add(e),C.push(r,a)}if(!x.has(r.mesh)){let e=w.CreateSphere(`flow-target-${r.mesh}`,{diameter:.2*_,segments:7},M);e.position=$;let a=c.clone(`flow-target-mat-${r.mesh}`);a.alpha=I.has(r.mesh)||t===h&&n===h?1:.22,e.material=a,e.isPickable=!0,e.metadata={hoverLabel:r.mesh},x.add(r.mesh),C.push(e,a)}let P=E.add($).scale(.5),N=P.subtract(k),T=Math.sqrt(N.x*N.x+N.y*N.y+N.z*N.z),B=T>1e-6?N.x/T:0,F=T>1e-6?N.y/T:1,V=T>1e-6?N.z/T:0,O=(.35+r.count/o*.75)*_,Z=new m(P.x+B*O,P.y+F*O+.12*_,P.z+V*O),D=[];for(let e=0;e<=18;e++){let t=e/18,n=1-t;D.push(new m(n*n*E.x+2*n*t*Z.x+t*t*$.x,n*n*E.y+2*n*t*Z.y+t*t*$.y,n*n*E.z+2*n*t*Z.z+t*t*$.z))}let W=r.count/o,[H,K,U]=(0,s.heatRgb)(W),G=w.CreateTube(`flow-link-${r.mesh}-${e}`,{path:D,radius:(l?1:.4)*(.012+.04*W)*_,tessellation:8,cap:0,sideOrientation:0},M),Y=new v(`flow-link-mat-${r.mesh}-${e}`,M);Y.disableLighting=!0,Y.emissiveColor=new g(H,K,U),Y.alpha=l?.35+.65*W:.08,G.material=Y,G.isPickable=!0,G.metadata={hoverLabel:r.mesh},C.push(G,Y)}let A=r?.origin;if(A){let e=new m(A[0],A[1],A[2]),t=w.CreateSphere("flow-standpoint",{diameter:.26*_,segments:10},M);t.position=e;let n=new v("flow-standpoint-mat",M);n.disableLighting=!0,n.emissiveColor=new g(.95,.45,.95),t.material=n,t.isPickable=!1;let r=w.CreateLines("flow-standpoint-stem",{points:[e,new m(e.x,k.y,e.z)]},M);r.color=new g(.95,.45,.95),r.isPickable=!1,C.push(t,n,r)}};ew.current=E,E()}k.runRenderLoop(()=>M.render());let z=()=>k.resize();window.addEventListener("resize",z);let R=(0,u.attachMeshHover)(M,t,D),_=(0,o.attachDoubleClickFocus)(M,t,a);A("ready"),r=()=>{window.removeEventListener("resize",z),R(),_(),D(null),ew.current=null,L.current=null,I.current=null,S(),M.dispose(),k.dispose()}}catch(e){if(n)return;A("error"),E(e instanceof Error?e.message:"Failed to render flow links.")}})(),()=>{n=!0,r?.()}},[et,y,ev]),(0,n.useEffect)(()=>{ew.current?.()},[er,ee,k,$,N,B,Q]),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:R,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),Z?(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:Z.x+12,top:Z.y+12},children:Z.label}):null,"ready"===_?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"absolute left-3 top-3 flex flex-wrap gap-2",children:[J?(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)(x,{active:!et,onClick:()=>O("aggregate"),children:"Aggregate"}),(0,t.jsx)(x,{active:et,onClick:()=>O("twostage"),children:"Two-stage"})]}):null,G?(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)(x,{active:"first-person"===W,onClick:()=>H("first-person"),children:"Walk"}),(0,t.jsx)(x,{active:"viewer"===W,onClick:()=>H("viewer"),disabled:z,title:z?"Orbit (viewer) flow isn't available for walkable scenes":void 0,children:"Orbit"}),(0,t.jsx)(x,{active:"all"===W,onClick:()=>H("all"),children:"All"})]}):null,J?(0,t.jsx)(g,{label:"Standpoint",value:B,onChange:F,allLabel:"All standpoints",options:eo}):null,(0,t.jsx)(g,{label:et?"Gaze":"Source",value:N,onChange:T,allLabel:et?"All gaze sectors":"All sources",options:eu}),(0,t.jsx)(g,{label:"Mesh",value:$,onChange:P,allLabel:"All meshes",options:ec})]}),et?(0,t.jsx)(w,{standpoints:X,proxyMeshes:k,selectedKey:B,onSelect:e=>F(t=>t===e?h: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:[G&&!z?(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: ",el,"/",es]})]}),(0,t.jsx)(d.ZoomButtons,{onZoom:e=>L.current&&(0,o.stepZoom)(L.current,e),onReset:()=>L.current&&I.current&&(0,o.resetFocus)(L.current,I.current)}),(0,t.jsx)(c.HeatLegend,{title:"Flow volume",lowLabel:"fewer links",highLabel:"dominant links",note:et?"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"===_?"Rendering…":"empty"===_?"No aggregate flow links in range.":"error"===_?j??"Flow view unavailable.":null})]})}],19399)},39592,e=>{"use strict";var t=e.i(61284),n=e.i(60951),r=e.i(56054),a=e.i(2348),i=e.i(87456),l=e.i(2413);function s(e){let t=Math.min(1,Math.max(0,e));return[.118+(.22-.118)*t,.227+.513*t,.541+(.97-.541)*t]}function o(e){return`${e.vx}|${e.vy}|${e.vz}`}function u({mode:e}){return(0,t.jsxs)("div",{className:"absolute bottom-3 right-3 max-w-72 rounded-md border border-edge bg-ink/80 px-2 py-1.5 text-xs text-fg backdrop-blur",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-sm bg-[#38bdf8]"}),"divergence"===e?"Gaze-heavy":"Gaze"]}),(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-sm bg-[#f4c84b]"}),"divergence"===e?"Click-heavy":"Clicks"]})]}),(0,t.jsx)("p",{className:"mt-1 text-fg-muted",children:"divergence"===e?"Per-voxel normalized difference: which signal dominates each cell. Color & size scale with the gap.":"Gaze = where viewers looked; Clicks = where they acted. Cells with gaze but no clicks are looked-at but un-acted-on."})]})}function c({active:e,onClick:n,children:r}){return(0,t.jsx)("button",{type:"button",onClick:n,className:`rounded px-2 py-0.5 font-medium transition ${e?"bg-amber text-ink":"text-fg-muted hover:text-fg"}`,children:r})}e.s(["GazeClickDivergence3DView",0,function({gazeVoxels:d,clickVoxels:h,cellSize:m,proxyMeshes:f=[]}){let p=(0,n.useRef)(null),b=(0,n.useRef)(null),g=(0,n.useRef)(null),[x,w]=(0,n.useState)("loading"),[v,y]=(0,n.useState)(null),[k,M]=(0,n.useState)("overlay"),[C,S]=(0,n.useState)(null),z=(0,n.useRef)(d),R=(0,n.useRef)(h),L=(0,n.useRef)(f),I=(0,n.useRef)(k);z.current=d,R.current=h,L.current=f,I.current=k;let _=(0,n.useRef)(null),A=d.length>0||h.length>0||f.length>0;return(0,n.useEffect)(()=>{let t=p.current;if(!t)return;if(!A)return void w("empty");let n=!1,l=null;return w("loading"),y(null),(async()=>{try{let[{Engine:u},{Scene:c},{ArcRotateCamera:d},{HemisphericLight:h},{Vector3:f,Color3:p,Color4:x,Matrix:v},{MeshBuilder:y},{StandardMaterial:k}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(21020),e.A(8179)]);if(n)return;let M=z.current,C=R.current,A=L.current,j=[...M,...C],E=0,$=0,P=0,N=0;for(let e of j)E+=(e.vx+.5)*m,$+=(e.vy+.5)*m,P+=(e.vz+.5)*m,N++;if(0===N)for(let e of A)E+=(e.aabb[0]+e.aabb[3])/2,$+=(e.aabb[1]+e.aabb[4])/2,P+=(e.aabb[2]+e.aabb[5])/2,N++;let T=new f(E/N,$/N,P/N),B=4*m;for(let e of j){let t=(e.vx+.5)*m-T.x,n=(e.vy+.5)*m-T.y,r=(e.vz+.5)*m-T.z;B=Math.max(B,Math.sqrt(t*t+n*n+r*r))}for(let e of A){let t=(e.aabb[0]+e.aabb[3])/2-T.x,n=(e.aabb[1]+e.aabb[4])/2-T.y,r=(e.aabb[2]+e.aabb[5])/2-T.z;B=Math.max(B,Math.sqrt(t*t+n*n+r*r))}let F=new u(t,!0,{preserveDrawingBuffer:!1}),V=new c(F);V.clearColor=new x(.04,.05,.07,1);let O=new d("divergence-cam",Math.PI/4,Math.PI/3,2.4*B,T,V);O.attachControl(t,!0),(0,a.disableWheelZoom)(O),b.current=O,g.current={target:T,alpha:O.alpha,beta:O.beta,radius:O.radius},new h("divergence-light",new f(.4,1,.3),V);let Z=null,D="\0",W=Math.max(.02*B,.25*m)/(.9*m),H=[],K=(e,t,n,r,a)=>{if(0===t.length)return;let i=y.CreateSphere(e,{diameter:.9*m,segments:6},V),l=new k(`${e}-mat`,V);l.diffuseColor=new p(1,1,1),l.specularColor=new p(0,0,0),i.material=l,i.metadata={hoverLabel:a},H.push(i);let s=t.length,o=new Float32Array(16*s),u=new Float32Array(4*s);for(let e=0;e<s;e++){let a=t[e],i=a.count/n,l=W*(.5+.5*i);v.Scaling(l,l,l).multiply(v.Translation((a.vx+.5)*m,(a.vy+.5)*m,(a.vz+.5)*m)).copyToArray(o,16*e);let[s,c,d]=r(i);u[4*e]=s,u[4*e+1]=c,u[4*e+2]=d,u[4*e+3]=1}i.thinInstanceSetBuffer("matrix",o,16,!1),i.thinInstanceSetBuffer("color",u,4,!0)},U=()=>{for(let e of((()=>{let e=L.current,t=e.map(e=>`${e.name}:${e.aabb.join(",")}`).join("|");if(t===D||(D=t,Z&&(Z.dispose(!1,!0),Z=null),0===e.length))return;Z=y.CreateBox("scene-proxy",{size:1},V);let n=new k("scene-proxy-mat",V);n.wireframe=!0,n.disableLighting=!0,n.emissiveColor=new p(.32,.4,.52),n.alpha=.35,Z.material=n,Z.isPickable=!0,Z.thinInstanceEnablePicking=!0,Z.metadata={hoverLabels:e.map(e=>e.name)};let r=e.length,a=new Float32Array(16*r);for(let t=0;t<r;t++){let n=e[t].aabb,r=Math.max(n[3]-n[0],.001),i=Math.max(n[4]-n[1],.001),l=Math.max(n[5]-n[2],.001);v.Scaling(r,i,l).multiply(v.Translation((n[0]+n[3])/2,(n[1]+n[4])/2,(n[2]+n[5])/2)).copyToArray(a,16*t)}Z.thinInstanceSetBuffer("matrix",a,16,!0)})(),H))e.dispose(!1,!0);H=[];let e=z.current,t=R.current,n=e.reduce((e,t)=>Math.max(e,t.count),1),a=t.reduce((e,t)=>Math.max(e,t.count),1),i=I.current;if("divergence"===i){let i=new Map(e.map(e=>[o(e),e])),l=new Map(t.map(e=>[o(e),e])),u=new Set([...i.keys(),...l.keys()]),c=[],d=[];for(let e of u){let t=(i.get(e)?.count??0)/n,r=(l.get(e)?.count??0)/a,s=l.get(e)??i.get(e),o=r-t,u={vx:s.vx,vy:s.vy,vz:s.vz,count:1e3*Math.abs(o)};(o>=0?c:d).push(u)}K("div-click",c,1e3,r.heatRgb,"Click-heavy"),K("div-gaze",d,1e3,s,"Gaze-heavy")}else("overlay"===i||"gaze"===i)&&K("gaze-voxel",e,n,s,"Gaze"),("overlay"===i||"click"===i)&&K("click-voxel",t,a,r.heatRgb,"Click")};_.current=U,U(),F.runRenderLoop(()=>V.render());let G=()=>F.resize();window.addEventListener("resize",G);let Y=(0,i.attachMeshHover)(V,t,S),q=(0,a.attachDoubleClickFocus)(V,t,O);w("ready"),l=()=>{window.removeEventListener("resize",G),Y(),q(),S(null),_.current=null,b.current=null,g.current=null,V.dispose(),F.dispose()}}catch(e){if(n)return;w("error"),y(e instanceof Error?e.message:"Failed to render overlay.")}})(),()=>{n=!0,l?.()}},[A,m]),(0,n.useEffect)(()=>{_.current?.()},[d,h,f,m,k]),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:p,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),C?(0,t.jsx)("div",{className:"pointer-events-none absolute z-10 max-w-64 truncate rounded border border-edge bg-ink/90 px-1.5 py-0.5 text-xs text-white shadow backdrop-blur",style:{left:C.x+12,top:C.y+12},children:C.label}):null,"ready"===x?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"absolute left-3 top-3 flex items-center gap-1 rounded-md border border-edge bg-ink/80 p-0.5 text-xs backdrop-blur",children:[(0,t.jsx)(c,{active:"overlay"===k,onClick:()=>M("overlay"),children:"Overlay"}),(0,t.jsx)(c,{active:"gaze"===k,onClick:()=>M("gaze"),children:"Gaze"}),(0,t.jsx)(c,{active:"click"===k,onClick:()=>M("click"),children:"Clicks"}),(0,t.jsx)(c,{active:"divergence"===k,onClick:()=>M("divergence"),children:"Divergence"})]}),(0,t.jsx)(l.ZoomButtons,{onZoom:e=>b.current&&(0,a.stepZoom)(b.current,e),onReset:()=>b.current&&g.current&&(0,a.resetFocus)(b.current,g.current)}),(0,t.jsx)(u,{mode:k})]}):(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===x?"Rendering…":"empty"===x?"No gaze or click hit-points in range. Enable gaze + pointer capture in the SDK.":"error"===x?v??"Overlay unavailable.":null})]})}])},76421,e=>{"use strict";var t=e.i(61284),n=e.i(60951);let r={status:"idle",gated:!1,count:0};var a=e.i(60614),i=e.i(2348),l=e.i(2413);let s=new Set,o=[{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,n){let r=Math.max(1,n),a=new Map;o.forEach((e,t)=>{for(let n of e.types)a.set(n,t)});let i=o.map(()=>new Set);for(let n of e){let e=a.get(n.type);if(void 0===e)continue;let l=Math.min(1,Math.max(0,(n.ts-t)/r));i[e].add(Math.round(600*l))}return o.map((e,t)=>({key:e.key,label:e.label,color:e.color,marks:[...i[t]].sort((e,t)=>e-t).map(e=>e/600)})).filter(e=>e.marks.length>0)}function c(e){let t=Math.max(0,Math.round(e/1e3)),n=Math.floor(t/60);return`${n}:${(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 h({lanes:e,duration:n,progress:r,onSeek:a,hiddenTypes:i}){let l=e.filter(e=>{let t=o.find(t=>t.key===e.key);if(!t)return!0;for(let e of t.types)if(!i.has(e))return!0;return!1});if(0===l.length)return null;let s=`${Math.min(100,Math.max(0,r/Math.max(1,n)*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:l.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 r;return t=e.clientX,void a(Math.min(1,Math.max(0,(t-(r=e.currentTarget.getBoundingClientRect()).left)/(r.width||1)))*n)},children:[(0,t.jsx)("div",{className:"flex flex-col gap-1",children:l.map(e=>(0,t.jsx)("div",{className:"relative h-2.5 rounded-sm bg-white/5",children:e.marks.map((n,r)=>(0,t.jsx)("span",{"aria-hidden":!0,className:"pointer-events-none absolute top-0 h-full w-px",style:{left:`${100*n}%`,backgroundColor:e.color,opacity:.85}},r))},e.key))}),(0,t.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-y-1 w-px bg-saffron",style:{left:s}})]})]})}e.s(["SessionReplayView",0,function({api:o,sessionId:m,hiddenTypes:f,isLive:p=!1}){let b=(0,n.useRef)(null),g=(0,n.useRef)(null),x=(0,n.useRef)(0),w=(0,n.useRef)(f??s),v=(0,n.useRef)(!1),y=(0,n.useRef)(null),k=(0,n.useRef)(!1),M=(0,n.useRef)(!1),C=(0,n.useRef)(null),S=(0,n.useRef)(0),z=(0,n.useRef)([]),R=(0,n.useRef)([]),L=(0,n.useRef)([]),I=(0,n.useRef)(!0),_=(0,n.useRef)("birdview"),A=(0,n.useRef)(null),j=(0,n.useRef)(null),E=(0,n.useRef)([]),$=(0,n.useRef)(null),P=(0,n.useRef)(null),[N,T]=(0,n.useState)("idle"),[B,F]=(0,n.useState)(null),[V,O]=(0,n.useState)(0),[Z,D]=(0,n.useState)(0),[W,H]=(0,n.useState)(!1),[K,U]=(0,n.useState)([]),[G,Y]=(0,n.useState)([]),[q,X]=(0,n.useState)([]),[J,Q]=(0,n.useState)(!0),[ee,et]=(0,n.useState)(!1),[en,er]=(0,n.useState)("birdview"),[ea,ei]=(0,n.useState)(null),[el,es]=(0,n.useState)(!1),[eo,eu]=(0,n.useState)(!1),[ec,ed]=(0,n.useState)(null);(0,n.useEffect)(()=>{I.current=J},[J]),(0,n.useEffect)(()=>{M.current=W},[W]),(0,n.useEffect)(()=>{k.current=ee},[ee]),(0,n.useEffect)(()=>{_.current=en,v.current=!0},[en]),(0,n.useEffect)(()=>{w.current=f??s,v.current=!0},[f]),(0,n.useEffect)(()=>{let t=b.current;if(!t)return;let n=!1,r=null;return T("loading"),F(null),H(!1),O(0),D(0),U([]),Y([]),X([]),ei(null),A.current=null,z.current=[],R.current=[],L.current=[],x.current=0,$.current=null,E.current=[],j.current=null,es(!1),eu(!1),ed(null),(async()=>{try{let[{Engine:l},{Scene:s},{ArcRotateCamera:c},{UniversalCamera:d},{HemisphericLight:h},{Vector3:f,Color3:b,Color4:P,Matrix:N},{MeshBuilder:B},{StandardMaterial:F},{ReplayPlayer:V}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(38033),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(85461),e.A(8179)]),Z=await o.sessionEvents(m);if(n)return;if(0===Z.length)return void T("empty");let W=Z[0].ts,K=Z[0].ts;for(let e of Z)e.ts<W&&(W=e.ts),e.ts>K&&(K=e.ts);let G=await (0,a.mergeSceneProxies)(o,{since:W-1,until:K+1});if(n)return;let q=[...Z].sort((e,t)=>e.ts-t.ts),J=q[0].ts,Q=[],ee=[],en=new Map,er=null;for(let e of q){let t=e.ts-J;if("camera_sample"===e.type){er=[e.position[0],e.position[1],e.position[2]],Q.push({at:t,position:er,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 n=e.childPath?`${e.nodeId}/${e.childPath}`:e.nodeId,r=en.get(n);r||(r=[],en.set(n,r)),r.push({at:t,position:[e.position[0],e.position[1],e.position[2]]});continue}if("pointer_click"===e.type&&e.hitPoint){let n=e.ray?.origin??er;if(!n)continue;ee.push({at:t,type:"pointer_click",origin:[n[0],n[1],n[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(!er)continue;ee.push({at:t,type:"mesh_interaction",origin:[er[0],er[1],er[2]],hit:[e.point[0],e.point[1],e.point[2]],...e.mesh?{mesh:e.mesh}:{}})}}if(0===Q.length&&0===ee.length&&0===en.size)return void T("empty");let ea=new l(t,!0,{preserveDrawingBuffer:!1}),el=new s(ea);el.clearColor=new P(.04,.05,.07,1),j.current=el;let es=new c("birdview-cam",-Math.PI/2,.22,12,f.Zero(),el);es.attachControl(t,!0),(0,i.disableWheelZoom)(es),g.current=es,new h("replay-light",new f(0,1,0),el);let eo=new d("replay-follow-cam",f.Zero(),el);eo.minZ=.05,eo.fov=Math.PI/3,el.activeCamera=es;let eu="birdview",ec=B.CreateGround("replay-ground",{width:20,height:20,subdivisions:20},el),ed=new F("replay-ground-mat",el);ed.diffuseColor=new b(.12,.14,.18),ed.wireframe=!0,ec.material=ed;let eh=new Set(en.keys()),em=new Set(Array.from(eh,e=>e.slice(e.lastIndexOf("/")+1))),ef=[],ep=[],eb=new Set,eg=e=>{if(eb.has(e.name)||(e=>{if(e.path){for(let t of eh)if(e.path===t||e.path.endsWith(`/${t}`))return!0}return em.has(e.name)})(e))return!1;eb.add(e.name);let t=e.aabb,n=Math.max(t[3]-t[0],.001),r=Math.max(t[4]-t[1],.001),a=Math.max(t[5]-t[2],.001),i=B.CreateBox(`replay-proxy-${e.name}`,{width:n,height:r,depth:a},el);i.position=new f((t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2);let l=new F(`replay-proxy-mat-${e.name}`,el);return l.wireframe=!0,l.disableLighting=!0,l.emissiveColor=new b(.32,.4,.52),l.alpha=.35,i.material=l,i.isPickable=!1,$.current&&i.setEnabled(!1),ep.push(i),ef.push({name:e.name,center:new f((t[0]+t[3])/2,t[4],(t[2]+t[5])/2)}),!0};for(let e of G)eg(e);z.current=ef,R.current=ef.map(()=>null),Y(ef.map(e=>e.name)),E.current=ep;let ex=async()=>{let e=await (0,a.mergeSceneProxies)(o,{since:W-1}).catch(()=>null);if(n||!e)return;let t=!1;for(let n of e)eg(n)&&(t=!0);t&&(z.current=ef,R.current=ef.map((e,t)=>R.current[t]??null),Y(ef.map(e=>e.name)),v.current=!0)},ew=[[.91,.47,.98],[.4,.95,.6],[.98,.8,.3],[.45,.85,1]],ev=e=>{let t=e.indexOf("/");return -1===t?e:e.slice(0,t)},ey=[],ek=new Map,eM=0,eC=(e,t,n)=>{let r=B.CreateSphere(`replay-actor-${e}`,{diameter:.5,segments:12},el),a=new F(`replay-actor-mat-${e}`,el);a.disableLighting=!0;let i=ew[eM%ew.length];a.emissiveColor=new b(i[0],i[1],i[2]),r.material=a,r.isPickable=!1,r.isVisible=!1,eM++;let l={key:e,mesh:r,samples:n,driveKey:t};return ey.push(l),ek.set(e,l),l},eS=new Map,ez=new Map;for(let[e,t]of en){if(0===t.length)continue;let n=ev(e);if(e===n)eS.set(n,t);else{let r=ez.get(n);(!r||t.length>r.samples.length)&&ez.set(n,{key:e,samples:t})}}for(let e of new Set([...eS.keys(),...ez.keys()])){let t=eS.get(e);if(t)eC(e,e,t);else{let t=ez.get(e);eC(e,t.key,t.samples)}}L.current=ey.map(()=>null),X(ey.map(e=>e.key));let eR=(e,t)=>{if(0===e.length||t<e[0].at)return null;let n=0,r=e.length-1,a=-1;for(;n<=r;){let i=n+r>>1;e[i].at<=t?(a=i,n=i+1):r=i-1}if(a<0)return null;let i=e[a],l=e[a+1];if(!l)return i.position;let s=l.at-i.at;if(s<=0)return i.position;let o=Math.max(0,Math.min(1,(t-i.at)/s));return[i.position[0]+(l.position[0]-i.position[0])*o,i.position[1]+(l.position[1]-i.position[1])*o,i.position[2]+(l.position[2]-i.position[2])*o]},eL=1,eI=1.4,e_=B.CreateSphere("replay-camera-origin",{diameter:.35,segments:12},el),eA=new F("replay-camera-origin-mat",el);eA.disableLighting=!0,eA.emissiveColor=new b(.6,.9,1),e_.material=eA;let ej=B.CreateLines("replay-camera-frustum",{points:[f.Zero(),new f(0,0,1)]},el);ej.color=new b(.7,.95,1),ej.isPickable=!1;let eE=B.CreateCylinder("replay-camera-cone",{height:1,diameterTop:0,diameterBottom:1,tessellation:24},el);eE.bakeTransformIntoVertices(N.RotationX(-Math.PI/2).multiply(N.Translation(0,0,.5)));let e$=new F("replay-camera-cone-mat",el);e$.disableLighting=!0,e$.emissiveColor=new b(.4,.78,1),e$.alpha=.16,e$.backFaceCulling=!1,eE.material=e$,eE.isPickable=!1,eE.isVisible=!1;let eP=(e,t,n,r)=>{if(e?.dispose(),0===n.length)return null;let a=B.CreateLineSystem(t,{lines:n,...r?{colors:r,useVertexAlpha:!0}:{}},el);return a.isPickable=!1,a},eN=null,eT=null,eB=null,eF=()=>{let e=w.current,t=[],n=[];for(let r of ee){if(e.has(r.type))continue;let[a,i,l]=r.hit,s="mesh_interaction"===r.type?new P(.45,.85,1,.32):new P(1,.7,.35,.32);t.push([new f(a-.1,i,l),new f(a+.1,i,l)]),t.push([new f(a,i-.1,l),new f(a,i+.1,l)]),t.push([new f(a,i,l-.1),new f(a,i,l+.1)]),n.push([s,s],[s,s],[s,s])}eB=eP(eB,"replay-persistent-marks",t,n)};eF();let eV=B.CreateSphere("replay-glow",{diameter:1,segments:12},el),eO=new F("replay-glow-mat",el);eO.disableLighting=!0,eO.emissiveColor=new b(1,.62,.2),eO.alpha=0,eV.material=eO,eV.isPickable=!1,eV.isVisible=!1;let eZ=1/0,eD=1/0,eW=1/0,eH=-1/0,eK=-1/0,eU=-1/0,eG=!1,eY=e=>{eZ=Math.min(eZ,e[0]),eD=Math.min(eD,e[1]),eW=Math.min(eW,e[2]),eH=Math.max(eH,e[0]),eK=Math.max(eK,e[1]),eU=Math.max(eU,e[2])},eq=()=>{let e;if(eG||!Number.isFinite(eZ))return;let t=(eZ+eH)/2,n=(eD+eK)/2,r=(eW+eU)/2,a=eH-eZ,i=eK-eD,l=eU-eW,s=Math.sqrt(a*a+i*i+l*l);es.setTarget(new f(t,n,r)),e=1.3*s,es.radius=Number.isFinite(e)?Math.max(8,e):12,eG=!0};for(let e of Q)eY(e.position);for(let e of ee)eY(e.origin),eY(e.hit);for(let e of en.values())for(let t of e)eY(t.position);for(let e of G)eY(e.aabb.slice(0,3)),eY(e.aabb.slice(3,6));eq();{let e=eH-eZ,t=eK-eD,n=eU-eW,r=Number.isFinite(e)?Math.sqrt(e*e+t*t+n*n):0,a=Math.min(Math.max(.035*r,.45),Math.max(.45,.18*r));eL=a/.35,eI=Math.max(.16*r,3.2*a,1.4),e_.scaling.setAll(eL)}let eX=-1,eJ=e=>{var r;let a=v.current;if(!a&&e===eX)return;v.current=!1,eX=e,a&&eF();let i=w.current;(r=_.current)!==eu&&(eu=r,"follow"===r?(es.detachControl(),el.activeCamera=eo):(el.activeCamera=es,es.attachControl(t,!0)));let l="follow"===_.current,s=i.has("camera_sample")?null:(e=>{if(0===Q.length)return null;let t=0,n=Q.length-1,r=-1;for(;t<=n;){let a=t+n>>1;Q[a].at<=e?(r=a,t=a+1):n=a-1}return r>=0?Q[r]:null})(e);if(s){e_.position.set(s.position[0],s.position[1],s.position[2]);let e=s.direction,t=Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2])||1,n=eI,r=new f(s.position[0]+e[0]/t*n,s.position[1]+e[1]/t*n,s.position[2]+e[2]/t*n);if(l)e_.isVisible=!1,ej.isVisible=!1,eE.isVisible=!1,eo.position.set(s.position[0],s.position[1],s.position[2]),eo.setTarget(r),s.fov&&s.fov>0&&(eo.fov=s.fov);else{e_.isVisible=!0,ej.isVisible=!0,ej=B.CreateLines("replay-camera-frustum",{points:[e_.position.clone(),r],instance:ej},el);let e=(s.fov&&s.fov>0?s.fov:Math.PI/3)/2,t=n*Math.tan(e);eE.isVisible=!0,eE.position.copyFrom(e_.position),eE.lookAt(r),eE.scaling.set(2*t,2*t,n)}}else e_.isVisible=!1,ej.isVisible=!1,eE.isVisible=!1;let o=i.has("node_transform");for(let t of ey){let n=o?null:eR(t.samples,e);if(!n){t.mesh.isVisible=!1;continue}t.mesh.isVisible=!0,t.mesh.position.set(n[0],n[1],n[2])}let u=ee.filter(t=>!i.has(t.type)&&t.at<=e&&t.at>=e-2200),c=[],d=[],h=[],m=[],p=null;for(let t of u){let n=e-t.at,r=Math.max(0,Math.min(1,1-n/2200)),a=new P(1,.62,.2,.18+.72*r),i=new f(t.origin[0],t.origin[1],t.origin[2]),l=new f(t.hit[0],t.hit[1],t.hit[2]);c.push([i,l]),d.push([a,a]);let s=.12+.08*r;h.push([new f(l.x-s,l.y,l.z),new f(l.x+s,l.y,l.z)]),h.push([new f(l.x,l.y-s,l.z),new f(l.x,l.y+s,l.z)]),h.push([new f(l.x,l.y,l.z-s),new f(l.x,l.y,l.z+s)]);let o=new P(1,.78,.42,.22+.72*r);if(m.push([o,o],[o,o],[o,o]),n<=900){let e=1-n/900;(!p||e>p.t)&&(p={hit:t.hit,t:e})}}if(p){let e=.25+.9*p.t;eV.isVisible=!0,eV.scaling.set(e,e,e),eV.position.set(p.hit[0],p.hit[1],p.hit[2]),eO.alpha=.12+.5*p.t}else eV.isVisible=!1;let b=null,g=-1/0;for(let e of u)e.mesh&&e.at>g&&(g=e.at,b=e.mesh);b!==A.current&&(A.current=b,n||ei(b)),eN=eP(eN,"replay-trail-lines",c,d),eT=eP(eT,"replay-trail-hits",h,m)},eQ=q.length>0?q[q.length-1].ts-J:0,e0=eQ,e1=q.length>0?q[q.length-1].ts:-1/0,e2=q.map(e=>({type:e.type,ts:e.ts})),e5=0,e3=null;if(p)y.current=null,C.current=e=>{if(n)return;let t="number"==typeof e.ts?e.ts:NaN;if(!Number.isFinite(t)||t<=e1)return;e1=t;let r=t-J;if(r>e0&&(e0=r),r>eQ&&(eQ=r),e2.push({type:e.type,ts:t}),"camera_sample"===e.type){let t=e.position,n=e.direction;if(t&&n){let a=[t[0],t[1],t[2]];er=a;let i="number"==typeof e.fov?e.fov:void 0;Q.push({at:r,position:a,direction:[n[0],n[1],n[2]],...void 0!==i?{fov:i}:{}}),eY(a),eq()}}else if("pointer_click"===e.type){let t=e.hitPoint,n=e.ray,a=n?.origin??er;if(t&&a){let n="string"==typeof e.hitMesh?e.hitMesh:void 0;ee.push({at:r,type:"pointer_click",origin:[a[0],a[1],a[2]],hit:[t[0],t[1],t[2]],...n?{mesh:n}:{}}),eY(t),v.current=!0}}else if("mesh_interaction"===e.type){let t=e.point;if(t&&er){let n="string"==typeof e.mesh?e.mesh:void 0;ee.push({at:r,type:"mesh_interaction",origin:[er[0],er[1],er[2]],hit:[t[0],t[1],t[2]],...n?{mesh:n}:{}}),eY(t),v.current=!0}}else if("node_transform"===e.type){let t=e.position;if(e.boneId||"string"!=typeof e.nodeId||!t)return;let n="string"==typeof e.childPath?e.childPath:void 0,a=n?`${e.nodeId}/${n}`:e.nodeId;((e,t)=>{let n=ev(e),r=ek.get(n);if(!r){r=eC(n,e,[]);let t=L.current;L.current=ey.map((e,n)=>t[n]??null),X(ey.map(e=>e.key))}e===r.driveKey?r.samples.push(t):e===n&&r.driveKey!==n&&(r.driveKey=n,r.samples.length=0,r.samples.push(t))})(a,{at:r,position:[t[0],t[1],t[2]]}),eY(t)}let a=performance.now();a-e5>250&&(e5=a,U(u(e2,J,Math.max(1,eQ)))),k.current&&r>x.current&&(x.current=r)},S.current=eQ,x.current=eQ,k.current=!0,et(!0),H(!1),O(eQ),D(eQ),U(u(e2,J,Math.max(1,eQ))),eJ(eQ),e3=setInterval(()=>void ex(),4e3);else{let e=new V(Z,{reset(){},apply(){}},{onProgress:e=>{n||(x.current=e,D(e))},onComplete:()=>{n||H(!1)}});y.current=e,O(e.durationMs),U(u(q,J,e.durationMs)),e.update(0),eJ(0)}let e4=N.Identity(),e6=new Map,e8=e=>{let t=e6.get(e);if(t)return t;let n={w:e.offsetWidth||60,h:e.offsetHeight||16};return e.offsetWidth>0&&e6.set(e,n),n},e9=performance.now(),e7=0;ea.runRenderLoop(()=>{if(p){let e=performance.now(),t=e-e9;if(e9=e,k.current)x.current+=t,x.current>eQ&&(eQ=x.current),S.current=eQ,D(x.current),e-e7>250&&(e7=e,O(eQ));else if(M.current){let e=x.current+t;e>=eQ&&(e=eQ),x.current=e,D(e)}}eJ(x.current),el.render(),(()=>{if(!I.current)return;let e=t.clientWidth||ea.getRenderWidth(),n=t.clientHeight||ea.getRenderHeight(),r=es.viewport.toGlobal(e,n),a=el.getTransformMatrix(),i=A.current,l=e=>e.slice(e.lastIndexOf("/")+1),s=e=>!!i&&(i===e||l(i)===l(e)||e.endsWith(`/${i}`)||i.endsWith(`/${e}`)),o=[],u=z.current,c=R.current;for(let e=0;e<u.length;e++){let t=c[e];if(!t)continue;let n=f.Project(u[e].center,e4,a,r);if(n.z<0||n.z>1){t.style.opacity="0";continue}o.push({el:t,x:n.x,y:n.y,liftPct:140,highlighted:s(u[e].name)})}let d=L.current;for(let e=0;e<ey.length;e++){let t=d[e];if(!t)continue;let n=ey[e].mesh;if(!n.isVisible){t.style.opacity="0";continue}let i=f.Project(n.position,e4,a,r);if(i.z<0||i.z>1){t.style.opacity="0";continue}o.push({el:t,x:i.x,y:i.y,liftPct:180,highlighted:s(ey[e].key)})}o.sort((e,t)=>e.highlighted!==t.highlighted?e.highlighted?-1:1:e.y-t.y||e.x-t.x);let h=[];for(let e of o){let{w:t,h:n}=e8(e.el),r=e.x-t/2,a=e.x+t/2,i=e.y-e.liftPct/100*n,l=i,s=!0,o=0;for(;s&&o++<256;)for(let e of(s=!1,h))r<e.right&&a>e.left&&l<e.bottom&&l+n>e.top&&(l=e.bottom+1,s=!0);h.push({left:r,right:a,top:l,bottom:l+n});let u=l-i;e.el.style.opacity="1",e.el.style.zIndex=e.highlighted?"10":"",e.el.style.transform=`translate(${e.x}px, ${e.y+u}px) translate(-50%, -${e.liftPct}%)`}})()});let te=()=>ea.resize();window.addEventListener("resize",te),T("ready"),r=()=>{window.removeEventListener("resize",te),e3&&clearInterval(e3),C.current=null,y.current?.pause(),ej.dispose(),eE.dispose(),eN?.dispose(),eT?.dispose(),eB?.dispose(),eV.dispose(),$.current?.dispose(),$.current=null,E.current=[],j.current=null,el.dispose(),ea.dispose(),g.current=null,y.current=null}}catch(e){if(n)return;T("error"),F(e instanceof Error?e.message:"Failed to load replay.")}})(),()=>{n=!0,r?.()}},[o,m,p]);let eh=(0,n.useCallback)(()=>{if(p){et(!1),k.current=!1,H(e=>{let t=!e;return M.current=t,t});return}let e=y.current;e&&H(t=>(t?e.pause():e.play(),!t))},[p]),em=(0,n.useCallback)(e=>{if(p){et(!1),k.current=!1,H(!1),M.current=!1,x.current=e,D(e);return}let t=y.current;t&&(t.pause(),t.seek(e),H(!1),x.current=e,D(e))},[p]),ef=(0,n.useCallback)(()=>{et(!0),k.current=!0,H(!1),M.current=!1,x.current=S.current,D(S.current)},[]),{gated:ep}=function(e,t,a,i,l){let[s,o]=(0,n.useState)(r),u=(0,n.useRef)(i),c=(0,n.useRef)(l);return u.current=i,c.current=l,(0,n.useEffect)(()=>a?e.liveSession(t,e=>u.current(e),{onReset:()=>c.current(),onState:o}):void o(r),[e,t,a]),s}(o,m,p&&"ready"===N,e=>C.current?.(e),()=>{}),eb=(0,n.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]),eg=(0,n.useCallback)(async t=>{let n=j.current;if(n){eu(!0),ed(`Loading ${t.name}…`);try{let[{loadSceneBackdrop:r}]=await Promise.all([e.A(3633),e.A(19397)]);if(j.current!==n)return;$.current?.dispose();let a=await r(n,t);if(j.current!==n)return void a.dispose();for(let e of($.current=a,E.current))e.setEnabled(!1);v.current=!0,es(!0),ed(`Loaded ${t.name} (${a.meshes.length} meshes).`)}catch(e){ed(e instanceof Error?e.message:"Could not load model.")}finally{eu(!1)}}},[]),ex=(0,n.useCallback)(e=>{let t=e.target.files?.[0];e.target.value="",t&&eg(t)},[eg]),ew=(0,n.useCallback)(()=>{for(let e of($.current?.dispose(),$.current=null,E.current))e.setEnabled(!0);v.current=!0,es(!1),ed(null)},[]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:b,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 ${J?"":"hidden"}`,children:[G.map((e,n)=>(0,t.jsx)("div",{title:e,ref:e=>{e&&(R.current[n]=e)},className:`absolute left-0 top-0 whitespace-nowrap rounded px-1.5 py-0.5 text-[10px] font-medium opacity-0 transition-colors ${eb(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)),q.map((e,n)=>(0,t.jsx)("div",{title:e,ref:e=>{e&&(L.current[n]=e)},className:`absolute left-0 top-0 whitespace-nowrap rounded px-1.5 py-0.5 text-[10px] font-medium opacity-0 transition-colors ${eb(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"===N&&(G.length>0||q.length>0)?(0,t.jsx)("button",{type:"button",onClick:()=>Q(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":J?"true":"false",children:J?"Hide labels":"Show labels"}):null,"ready"===N&&"birdview"===en?(0,t.jsx)(l.ZoomButtons,{onZoom:e=>g.current&&(0,i.stepZoom)(g.current,e)}):null,"ready"!==N?(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===N?"Loading replay…":"empty"===N?"No replayable events (raw retention may be disabled).":"error"===N?B??"Replay unavailable.":null}):null]}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-3",children:[(0,t.jsx)("button",{type:"button",onClick:eh,disabled:"ready"!==N,className:"rounded-md bg-amber px-3 py-1.5 text-sm font-medium text-ink transition hover:bg-ember disabled:opacity-40",children:W?"Pause":"Play"}),p?(0,t.jsxs)("button",{type:"button",onClick:ef,disabled:"ready"!==N,"aria-pressed":ee?"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 ${ee?"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 ${ee?"animate-pulse bg-rose-400":"bg-fg-muted"}`}),ee?"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"!==N,"aria-pressed":"birdview"===en?"true":"false",className:`rounded px-2 py-1 transition disabled:opacity-40 ${"birdview"===en?"bg-amber text-ink":"text-fg hover:text-white"}`,children:"Birdview"}),(0,t.jsx)("button",{type:"button",onClick:()=>er("follow"),disabled:"ready"!==N,"aria-pressed":"follow"===en?"true":"false",className:`rounded px-2 py-1 transition disabled:opacity-40 ${"follow"===en?"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:c(Z)}),(0,t.jsx)("input",{type:"range",min:0,max:Math.max(1,V),step:50,value:Math.min(Z,V),onChange:e=>em(Number(e.target.value)),disabled:"ready"!==N,className:"flex-1 accent-amber"}),(0,t.jsx)("span",{className:"w-12 font-mono text-xs tabular-nums text-fg-muted",children:c(V)})]}),"ready"===N?(0,t.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-3",children:[(0,t.jsx)("input",{ref:P,type:"file",accept:".glb,.gltf,model/gltf-binary,model/gltf+json",onChange:ex,className:"hidden"}),(0,t.jsx)("button",{type:"button",onClick:()=>P.current?.click(),disabled:eo,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:eo?"Loading model…":el?"Replace model (.glb)":"Load model (.glb)"}),el?(0,t.jsx)("button",{type:"button",onClick:ew,disabled:eo,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,ec?(0,t.jsx)("span",{className:"text-xs text-fg-muted",role:"status",children:ec}):(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"===N?(0,t.jsx)(h,{lanes:K,duration:V,progress:Z,onSeek:em,hiddenTypes:f??s}):null,p&&ep&&"ready"===N?(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)},53993,e=>{"use strict";var t=e.i(61284),n=e.i(60951),r=e.i(56054),a=e.i(2348),i=e.i(87456),l=e.i(18637),s=e.i(2413);function o({shape:e,onChange:n}){let r=e=>`h-8 px-2.5 text-xs font-medium leading-none transition first:rounded-l-md last:rounded-r-md ${e?"bg-ink text-white":"bg-ink/80 text-fg hover:text-white"}`,a="sphere"===e,i="cube"===e;return(0,t.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,t.jsx)("button",{type:"button",className:r(a),"aria-pressed":a,onClick:()=>n("sphere"),children:"Spheres"}),(0,t.jsx)("button",{type:"button",className:r(i),"aria-pressed":i,onClick:()=>n("cube"),children:"Cubes"})]})}e.s(["WorldHeatmap3DView",0,function({voxels:u,cellSize:c,proxyMeshes:d=[],legendTitle:h="Pointer-hit density",legendLow:m="few hits",legendHigh:f="most hits",legendNote:p="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:b="No 3D hit-points in range.",totals:g,voxelLabels:x}){let w=(0,n.useRef)(null),v=(0,n.useRef)(null),y=(0,n.useRef)(null),[k,M]=(0,n.useState)("loading"),[C,S]=(0,n.useState)(null),[z,R]=(0,n.useState)("sphere"),[L,I]=(0,n.useState)(null),_=(0,n.useRef)(u),A=(0,n.useRef)(d),j=(0,n.useRef)(x);_.current=u,A.current=d,j.current=x;let E=(0,n.useRef)(null),$=u.length>0||d.length>0;(0,n.useEffect)(()=>{let t=w.current;if(!t)return;if(!$)return void M("empty");let n=!1,l=null;return M("loading"),S(null),(async()=>{try{let[{Engine:s},{Scene:o},{ArcRotateCamera:u},{HemisphericLight:d},{Vector3:h,Color3:m,Color4:f,Matrix:p},{MeshBuilder:b},{StandardMaterial:g}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(21020),e.A(8179)]);if(n)return;let x=_.current,w=A.current,k=0,C=0,S=0,R=0;for(let e of x)k+=(e.vx+.5)*c,C+=(e.vy+.5)*c,S+=(e.vz+.5)*c,R++;if(0===R)for(let e of w)k+=(e.aabb[0]+e.aabb[3])/2,C+=(e.aabb[1]+e.aabb[4])/2,S+=(e.aabb[2]+e.aabb[5])/2,R++;let L=new h(k/R,C/R,S/R),$=4*c;for(let e of x){let t=(e.vx+.5)*c-L.x,n=(e.vy+.5)*c-L.y,r=(e.vz+.5)*c-L.z;$=Math.max($,Math.sqrt(t*t+n*n+r*r))}for(let e of w){let t=(e.aabb[0]+e.aabb[3])/2-L.x,n=(e.aabb[1]+e.aabb[4])/2-L.y,r=(e.aabb[2]+e.aabb[5])/2-L.z;$=Math.max($,Math.sqrt(t*t+n*n+r*r))}let P=new s(t,!0,{preserveDrawingBuffer:!1}),N=new o(P);N.clearColor=new f(.04,.05,.07,1);let T=new u("world-cam",Math.PI/4,Math.PI/3,2.4*$,L,N);T.attachControl(t,!0),(0,a.disableWheelZoom)(T),v.current=T,y.current={target:L,alpha:T.alpha,beta:T.beta,radius:T.radius},new d("world-light",new h(.4,1,.3),N);let B=Math.max(.02*$,.25*c)/(.9*c),F=T.radius,V="cube"===z?b.CreateBox("world-voxel",{size:.9*c},N):b.CreateSphere("world-voxel",{diameter:.9*c,segments:6},N),O=new g("world-voxel-mat",N);O.diffuseColor=new m(1,1,1),O.specularColor=new m(0,0,0),V.material=O;let Z=0,D=new Float32Array(0),W=new Float32Array(0),H=-1,K=()=>{if(0===Z)return;let e=Math.min(8,Math.max(.6,T.radius/F));if(!(.01>Math.abs(e-H))){H=e;for(let t=0;t<Z;t++){let n=W[t]*e,r=16*t;D[r]=n,D[r+5]=n,D[r+10]=n}V.thinInstanceBufferUpdated("matrix")}};N.onBeforeRenderObservable.add(K);let U=null,G="\0",Y=()=>{(()=>{let e=A.current,t=e.map(e=>`${e.name}:${e.aabb.join(",")}`).join("|");if(t===G||(G=t,U&&(U.dispose(!1,!0),U=null),0===e.length))return;U=b.CreateBox("scene-proxy",{size:1},N);let n=new g("scene-proxy-mat",N);n.wireframe=!0,n.disableLighting=!0,n.emissiveColor=new m(.32,.4,.52),n.alpha=.35,U.material=n,U.isPickable=!0,U.thinInstanceEnablePicking=!0,U.metadata={hoverLabels:e.map(e=>e.name)};let r=e.length,a=new Float32Array(16*r);for(let t=0;t<r;t++){let n=e[t].aabb,r=Math.max(n[3]-n[0],.001),i=Math.max(n[4]-n[1],.001),l=Math.max(n[5]-n[2],.001);p.Scaling(r,i,l).multiply(p.Translation((n[0]+n[3])/2,(n[1]+n[4])/2,(n[2]+n[5])/2)).copyToArray(a,16*t)}U.thinInstanceSetBuffer("matrix",a,16,!0)})(),(()=>{let e=_.current,t=j.current,n=e.length;if(0===n){Z=0,V.isVisible=!1;return}let a=(0,r.percentileMax)(e.map(e=>e.count),.95),i=new Float32Array(16*n),l=new Float32Array(4*n),s=new Float32Array(n);for(let t=0;t<n;t++){let n=e[t],o=Math.min(1,n.count/a),u=B*(.5+.5*o);s[t]=u,p.Scaling(u,u,u).multiply(p.Translation((n.vx+.5)*c,(n.vy+.5)*c,(n.vz+.5)*c)).copyToArray(i,16*t);let[d,h,m]=(0,r.heatRgb)(o);l[4*t]=d,l[4*t+1]=h,l[4*t+2]=m,l[4*t+3]=1}Z=n,D=i,W=s,V.isVisible=!0,V.isPickable=!!t,V.thinInstanceEnablePicking=!!t,V.metadata=t?{hoverLabels:t}:null,V.thinInstanceSetBuffer("matrix",D,16,!1),V.thinInstanceSetBuffer("color",l,4,!0),H=-1,K()})()};E.current=Y,Y(),P.runRenderLoop(()=>N.render());let q=()=>P.resize();window.addEventListener("resize",q);let X=(0,i.attachMeshHover)(N,t,I),J=(0,a.attachDoubleClickFocus)(N,t,T);M("ready"),l=()=>{window.removeEventListener("resize",q),X(),J(),I(null),E.current=null,v.current=null,y.current=null,N.dispose(),P.dispose()}}catch(e){if(n)return;M("error"),S(e instanceof Error?e.message:"Failed to render heatmap.")}})(),()=>{n=!0,l?.()}},[z,c,$]),(0,n.useEffect)(()=>{E.current?.()},[u,d,x]);let P=g?g.cells>u.length?` Showing the ${u.length.toLocaleString()} busiest of ${g.cells.toLocaleString()} occupied cells (${g.hits.toLocaleString()} total hits).`:` ${g.cells.toLocaleString()} occupied cells, ${g.hits.toLocaleString()} total hits.`:"";return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:w,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),L?(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:L.x+12,top:L.y+12},children:L.label}):null,"ready"===k?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(o,{shape:z,onChange:R}),(0,t.jsx)(s.ZoomButtons,{onZoom:e=>v.current&&(0,a.stepZoom)(v.current,e),onReset:()=>v.current&&y.current&&(0,a.resetFocus)(v.current,y.current)}),(0,t.jsx)(l.HeatLegend,{title:h,lowLabel:m,highLabel:f,note:p+P})]}):(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===k?"Rendering…":"empty"===k?b:"error"===k?C??"Heatmap unavailable.":null})]})}])},64434,e=>{"use strict";e.s([],4255),e.i(4255);var t=e.i(48939),n=e.i(53993),r=e.i(19399),a=e.i(39592),i=e.i(61284),l=e.i(60951),s=e.i(56054),o=e.i(2348),u=e.i(87456),c=e.i(18637),d=e.i(2413);let h="__all__";function m(e){return`${e[0]},${e[1]},${e[2]}`}function f({label:e,value:t,onChange:n,allLabel:r,options:a}){return(0,i.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,i.jsx)("span",{className:"font-medium text-fg-muted",children:e}),(0,i.jsxs)("select",{className:"max-w-[12rem] bg-transparent text-white outline-none",value:t,onChange:e=>n(e.target.value),children:[(0,i.jsx)("option",{value:h,children:r}),a.map(e=>(0,i.jsx)("option",{value:e.value,children:e.label},e.value))]})]})}var p=e.i(76421),b=e.i(37215);e.s(["CAMERA_DOME_SUBTITLE",()=>b.CAMERA_DOME_SUBTITLE,"CAMERA_DOME_TITLE",()=>b.CAMERA_DOME_TITLE,"CLICK_RAYS_SUBTITLE",()=>b.CLICK_RAYS_SUBTITLE,"CLICK_RAYS_TITLE",()=>b.CLICK_RAYS_TITLE,"CameraDome3DView",()=>t.CameraDome3DView,"ClickRays3DView",0,function({rays:t,cellSize:n,proxyMeshes:r=[]}){let a=(0,l.useRef)(null),p=(0,l.useRef)(null),b=(0,l.useRef)(null),[g,x]=(0,l.useState)("loading"),[w,v]=(0,l.useState)(null),[y,k]=(0,l.useState)(h),[M,C]=(0,l.useState)(h),[S,z]=(0,l.useState)(null),R=(0,l.useRef)(t),L=(0,l.useRef)(r),I=(0,l.useRef)(y),_=(0,l.useRef)(M);R.current=t,L.current=r,I.current=y,_.current=M;let A=(0,l.useRef)(null),j=t.length>0,E=(0,l.useMemo)(()=>{let e=new Map;for(let n of t){let t=m(n.camVoxel),r=e.get(t);r?r.count+=n.count:e.set(t,{key:t,voxel:n.camVoxel,count:n.count})}return[...e.values()].sort((e,t)=>t.count-e.count)},[t]),$=(0,l.useMemo)(()=>{let e=new Map;for(let n of t)""!==n.mesh&&e.set(n.mesh,(e.get(n.mesh)??0)+n.count);return[...e.entries()].map(([e,t])=>({name:e,count:t})).sort((e,t)=>t.count-e.count)},[t]);return(0,l.useEffect)(()=>{y!==h&&(E.some(e=>e.key===y)||k(h))},[y,E]),(0,l.useEffect)(()=>{M!==h&&($.some(e=>e.name===M)||C(h))},[M,$]),(0,l.useEffect)(()=>{let t=a.current;if(!t)return;if(!j)return void x("empty");let r=!1,i=null;return x("loading"),v(null),(async()=>{try{let[{Engine:a},{Scene:l},{ArcRotateCamera:c},{HemisphericLight:d},{Vector3:f,Color3:g,Color4:w,Matrix:v},{MeshBuilder:y},{StandardMaterial:k}]=await Promise.all([e.A(45852),e.A(32502),e.A(25346),e.A(19257),e.A(69819),e.A(67116),e.A(76269),e.A(21020),e.A(8179)]);if(r)return;let M=R.current,C=0,S=0,j=0,E=0,$=(e,t,n)=>{C+=e,S+=t,j+=n,E++};for(let e of M)$(e.origin[0],e.origin[1],e.origin[2]),$(e.hit[0],e.hit[1],e.hit[2]);let P=E>0?new f(C/E,S/E,j/E):f.Zero(),N=4*n;for(let e of M)for(let t of[e.origin,e.hit]){let e=t[0]-P.x,n=t[1]-P.y,r=t[2]-P.z;N=Math.max(N,Math.sqrt(e*e+n*n+r*r))}let T=new a(t,!0,{preserveDrawingBuffer:!1}),B=new l(T);B.clearColor=new w(.04,.05,.07,1);let F=new c("rays-cam",Math.PI/4,Math.PI/3,2.4*N,P,B);F.attachControl(t,!0),(0,o.disableWheelZoom)(F),p.current=F,b.current={target:P,alpha:F.alpha,beta:F.beta,radius:F.radius},new d("rays-light",new f(.4,1,.3),B);let V=null,O="\0",Z=[],D=Math.max(3*n,.18*N),W=()=>{for(let e of((()=>{let e=L.current,t=e.map(e=>`${e.name}:${e.aabb.join(",")}`).join("|");if(t===O||(O=t,V&&(V.dispose(!1,!0),V=null),0===e.length))return;V=y.CreateBox("scene-proxy",{size:1},B);let n=new k("scene-proxy-mat",B);n.wireframe=!0,n.disableLighting=!0,n.emissiveColor=new g(.32,.4,.52),n.alpha=.35,V.material=n,V.isPickable=!0,V.thinInstanceEnablePicking=!0,V.metadata={hoverLabels:e.map(e=>e.name)};let r=e.length,a=new Float32Array(16*r);for(let t=0;t<r;t++){let n=e[t].aabb,r=Math.max(n[3]-n[0],.001),i=Math.max(n[4]-n[1],.001),l=Math.max(n[5]-n[2],.001);v.Scaling(r,i,l).multiply(v.Translation((n[0]+n[3])/2,(n[1]+n[4])/2,(n[2]+n[5])/2)).copyToArray(a,16*t)}V.thinInstanceSetBuffer("matrix",a,16,!0)})(),Z))e.dispose(!1,!0);Z=[];let e=R.current,t=L.current,r=I.current,a=_.current,i=r===h?e:e.filter(e=>m(e.camVoxel)===r),l=i.reduce((e,t)=>Math.max(e,t.count),1),o=[],u=[];for(let e of i){let t=e.count/l,[n,r,a]=(0,s.heatRgb)(t),i=new w(n,r,a,.35+.65*t);o.push([new f(e.origin[0],e.origin[1],e.origin[2]),new f(e.hit[0],e.hit[1],e.hit[2])]),u.push([i,i])}if(o.length>0){let e=y.CreateLineSystem("click-rays",{lines:o,colors:u,useVertexAlpha:!0},B);e.isPickable=!1,Z.push(e)}let c=new Map;for(let e of i)c.set(m(e.camVoxel),e.camVoxel);if(c.size>0){let e=y.CreateSphere("rays-eye",{diameter:.6*n,segments:6},B),t=new k("rays-eye-mat",B);t.disableLighting=!0,t.emissiveColor=new g(.9,.95,1),e.material=t;let r=[...c.values()],a=new Float32Array(16*r.length);for(let e=0;e<r.length;e++){let t=r[e];v.Translation((t[0]+.5)*n,(t[1]+.5)*n,(t[2]+.5)*n).copyToArray(a,16*e)}e.thinInstanceSetBuffer("matrix",a,16,!0),Z.push(e)}if(a!==h){let r=e.filter(e=>e.mesh===a);if(r.length>0){let e,i=t.find(e=>e.name===a);if(i){let t=i.aabb;e=new f((t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2)}else{let t=0,n=0,a=0;for(let e of r)t+=e.hit[0],n+=e.hit[1],a+=e.hit[2];e=new f(t/r.length,n/r.length,a/r.length)}let l=r.reduce((e,t)=>Math.max(e,t.count),1),o=[],u=[];for(let t of r){let n=t.origin[0]-t.hit[0],r=t.origin[1]-t.hit[1],a=t.origin[2]-t.hit[2],i=Math.sqrt(n*n+r*r+a*a)||1,c=t.count/l,d=D*(.4+.6*c),h=new f(e.x+n/i*d,e.y+r/i*d,e.z+a/i*d),[m,p,b]=(0,s.heatRgb)(c),g=new w(m,p,b,1);o.push([e.clone(),h]),u.push([new w(m,p,b,.25),g])}if(o.length>0){let e=y.CreateLineSystem("mesh-rose",{lines:o,colors:u,useVertexAlpha:!0},B);e.isPickable=!1,Z.push(e)}let c=y.CreateSphere("mesh-rose-hub",{diameter:.8*n,segments:8},B),d=new k("mesh-rose-hub-mat",B);d.disableLighting=!0,d.emissiveColor=new g(1,.85,.4),c.material=d,c.position=e,c.isPickable=!0,c.metadata={hoverLabel:a},Z.push(c)}}};A.current=W,W(),T.runRenderLoop(()=>B.render());let H=()=>T.resize();window.addEventListener("resize",H);let K=(0,u.attachMeshHover)(B,t,z),U=(0,o.attachDoubleClickFocus)(B,t,F);x("ready"),i=()=>{window.removeEventListener("resize",H),K(),U(),z(null),A.current=null,p.current=null,b.current=null,B.dispose(),T.dispose()}}catch(e){if(r)return;x("error"),v(e instanceof Error?e.message:"Failed to render click rays.")}})(),()=>{r=!0,i?.()}},[j,n]),(0,l.useEffect)(()=>{A.current?.()},[t,r,n,y,M]),(0,i.jsxs)("div",{className:"relative",children:[(0,i.jsx)("canvas",{ref:a,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),S?(0,i.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:S.x+12,top:S.y+12},children:S.label}):null,"ready"===g?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"absolute left-3 top-3 flex gap-2",children:[(0,i.jsx)(f,{label:"Viewpoint",value:y,onChange:k,allLabel:"All viewpoints",options:E.map(e=>({value:e.key,label:`(${e.voxel.join(", ")}) \xb7 ${e.count}`}))}),(0,i.jsx)(f,{label:"Mesh rose",value:M,onChange:C,allLabel:"No mesh focus",options:$.map(e=>({value:e.name,label:`${e.name} \xb7 ${e.count}`}))})]}),(0,i.jsx)(d.ZoomButtons,{onZoom:e=>p.current&&(0,o.stepZoom)(p.current,e),onReset:()=>p.current&&b.current&&(0,o.resetFocus)(p.current,b.current)}),(0,i.jsx)(c.HeatLegend,{title:"Click volume",lowLabel:"few clicks",highLabel:"most clicks",note:"Lines run from the camera position (bright eye) to where the click landed. Pick a viewpoint to see only clicks made from there; pick a mesh to see which directions its clicks came from."})]}):(0,i.jsx)("div",{className:"pointer-events-none absolute inset-0 grid place-items-center text-sm text-fg-muted",children:"loading"===g?"Rendering…":"empty"===g?"No correlated clicks in range.":"error"===g?w??"Click rays unavailable.":null})]})},"ERROR_HEATMAP_SUBTITLE",()=>b.ERROR_HEATMAP_SUBTITLE,"ERROR_HEATMAP_TITLE",()=>b.ERROR_HEATMAP_TITLE,"FLOW_SANKEY_HELP",()=>b.FLOW_SANKEY_HELP,"FLOW_SANKEY_SUBTITLE",()=>b.FLOW_SANKEY_SUBTITLE,"FLOW_SANKEY_TITLE",()=>b.FLOW_SANKEY_TITLE,"FlowSankey3DView",()=>r.FlowSankey3DView,"GAZE_CLICK_SUBTITLE",()=>b.GAZE_CLICK_SUBTITLE,"GAZE_CLICK_TITLE",()=>b.GAZE_CLICK_TITLE,"GazeClickDivergence3DView",()=>a.GazeClickDivergence3DView,"SESSION_REPLAY_TITLE",()=>b.SESSION_REPLAY_TITLE,"SessionReplayView",()=>p.SessionReplayView,"WORLD_HEATMAP_SUBTITLE",()=>b.WORLD_HEATMAP_SUBTITLE,"WORLD_HEATMAP_TITLE",()=>b.WORLD_HEATMAP_TITLE,"WorldHeatmap3DView",()=>n.WorldHeatmap3DView,"sessionReplaySubtitle",()=>b.sessionReplaySubtitle,"sessionReplayTitle",()=>b.sessionReplayTitle],64434)},94452,function(e){e.n(e.i(64434))}]);
@@ -1,4 +1,4 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,57487,70402,e=>{"use strict";var f=e.i(47150);let i="clipPlaneFragmentDeclaration",o=`#ifdef CLIPPLANE
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94704,88780,e=>{"use strict";var f=e.i(2342);let i="clipPlaneFragmentDeclaration",o=`#ifdef CLIPPLANE
2
2
  varying float fClipDistance;
3
3
  #endif
4
4
  #ifdef CLIPPLANE2
@@ -16,7 +16,7 @@ varying float fClipDistance5;
16
16
  #ifdef CLIPPLANE6
17
17
  varying float fClipDistance6;
18
18
  #endif
19
- `;f.ShaderStore.IncludesShadersStore[i]||(f.ShaderStore.IncludesShadersStore[i]=o),e.s(["clipPlaneFragmentDeclaration",0,{name:i,shader:o}],57487);let n="clipPlaneFragment",a=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
19
+ `;f.ShaderStore.IncludesShadersStore[i]||(f.ShaderStore.IncludesShadersStore[i]=o),e.s(["clipPlaneFragmentDeclaration",0,{name:i,shader:o}],94704);let n="clipPlaneFragment",a=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
20
20
  if (false) {}
21
21
  #endif
22
22
  #ifdef CLIPPLANE
@@ -43,7 +43,7 @@ else if (fClipDistance5>0.0)
43
43
  else if (fClipDistance6>0.0)
44
44
  {discard;}
45
45
  #endif
46
- `;f.ShaderStore.IncludesShadersStore[n]||(f.ShaderStore.IncludesShadersStore[n]=a),e.s(["clipPlaneFragment",0,{name:n,shader:a}],70402)},76578,2216,e=>{"use strict";var f=e.i(47150);let i="fogFragmentDeclaration",o=`#ifdef FOG
46
+ `;f.ShaderStore.IncludesShadersStore[n]||(f.ShaderStore.IncludesShadersStore[n]=a),e.s(["clipPlaneFragment",0,{name:n,shader:a}],88780)},18124,21487,e=>{"use strict";var f=e.i(2342);let i="fogFragmentDeclaration",o=`#ifdef FOG
47
47
  #define FOGMODE_NONE 0.
48
48
  #define FOGMODE_EXP 1.
49
49
  #define FOGMODE_EXP2 2.
@@ -58,14 +58,14 @@ else if (FOGMODE_EXP2==vFogInfos.x)
58
58
  {fogCoeff=1.0/pow(E,fogDistance*fogDistance*fogDensity*fogDensity);}
59
59
  return clamp(fogCoeff,0.0,1.0);}
60
60
  #endif
61
- `;f.ShaderStore.IncludesShadersStore[i]||(f.ShaderStore.IncludesShadersStore[i]=o),e.s(["fogFragmentDeclaration",0,{name:i,shader:o}],76578);let n="fogFragment",a=`#ifdef FOG
61
+ `;f.ShaderStore.IncludesShadersStore[i]||(f.ShaderStore.IncludesShadersStore[i]=o),e.s(["fogFragmentDeclaration",0,{name:i,shader:o}],18124);let n="fogFragment",a=`#ifdef FOG
62
62
  float fog=CalcFogFactor();
63
63
  #ifdef PBR
64
64
  fog=toLinearSpace(fog);
65
65
  #endif
66
66
  color.rgb=mix(vFogColor,color.rgb,fog);
67
67
  #endif
68
- `;f.ShaderStore.IncludesShadersStore[n]||(f.ShaderStore.IncludesShadersStore[n]=a),e.s(["fogFragment",0,{name:n,shader:a}],2216)},81088,e=>{"use strict";var f=e.i(47150),i=e.i(57487),o=e.i(76578),n=e.i(70402),a=e.i(2216);let r="colorPixelShader",d=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
68
+ `;f.ShaderStore.IncludesShadersStore[n]||(f.ShaderStore.IncludesShadersStore[n]=a),e.s(["fogFragment",0,{name:n,shader:a}],21487)},40735,e=>{"use strict";var f=e.i(2342),i=e.i(94704),o=e.i(18124),n=e.i(88780),a=e.i(21487);let r="colorPixelShader",d=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
69
69
  #define VERTEXCOLOR
70
70
  varying vec4 vColor;
71
71
  #else
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,19902,e=>{"use strict";var t=e.i(20552),i=e.i(97009),o=e.i(5573),r=e.i(59012),a=e.i(85789),s=e.i(99493);class n extends t.FlowGraphExecutionBlockWithOutSignal{constructor(e){super(e),this.startIndex=this.registerDataInput("startIndex",i.RichTypeAny,0),this.endIndex=this.registerDataInput("endIndex",i.RichTypeAny),this.step=this.registerDataInput("step",i.RichTypeNumber,1),this.index=this.registerDataOutput("index",i.RichTypeFlowGraphInteger,new r.FlowGraphInteger((0,o.getNumericValue)(e?.initialIndex??0))),this.executionFlow=this._registerSignalOutput("executionFlow"),this.completed=this._registerSignalOutput("completed"),this._unregisterSignalOutput("out")}_execute(e){let t=(0,o.getNumericValue)(this.startIndex.getValue(e)),i=this.step.getValue(e),s=(0,o.getNumericValue)(this.endIndex.getValue(e)),l=this.config?.maxLoopIterations??n.MaxLoopIterations,p=0,h=!1;for(let a=t;a<s;a+=i)if(this.index.setValue(new r.FlowGraphInteger(a),e),this.executionFlow._activateSignal(e),s=(0,o.getNumericValue)(this.endIndex.getValue(e)),++p>=l){h=!0;break}h&&a.Logger.Warn(`FlowGraphForLoopBlock: loop stopped after reaching the ${l}-iteration safety cap before its range completed.`),this.config?.incrementIndexWhenLoopDone&&this.index.setValue(new r.FlowGraphInteger((0,o.getNumericValue)(this.index.getValue(e))+i),e),this.completed._activateSignal(e)}getClassName(){return"FlowGraphForLoopBlock"}}n.MaxLoopIterations=1e3;let l=!1;function p(){l||(l=!0,(0,s.RegisterClass)("FlowGraphForLoopBlock",n))}e.s(["FlowGraphForLoopBlock",0,n,"RegisterFlowGraphForLoopBlock",0,p],60242),p(),e.s([],88239),e.i(88239),e.i(60242),e.s(["FlowGraphForLoopBlock",0,n],19902)}]);