@uptimizr/dashboard 0.4.5 → 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.
- package/out/404.html +1 -1
- package/out/__next.__PAGE__.txt +19 -5
- package/out/__next._full.txt +11 -11
- package/out/__next._tree.txt +2 -2
- package/out/_next/static/chunks/{3kalvwsf11-ss.js → 0-_j1khfoib6l.js} +119 -115
- package/out/_next/static/chunks/{0-tzsd_n-ywom.js → 005bbq_px7lke.js} +2 -2
- package/out/_next/static/chunks/00fbhtmui-yxg.js +1 -0
- package/out/_next/static/chunks/017pn-pen381_.js +1 -0
- package/out/_next/static/chunks/01vov6inx1zzt.js +1 -0
- package/out/_next/static/chunks/{3d76e_yd8l_0x.js → 02qk_wmkf9at-.js} +211 -211
- package/out/_next/static/chunks/03bd5plut08tg.js +1 -0
- package/out/_next/static/chunks/03dwfqmo73w_z.js +1 -0
- package/out/_next/static/chunks/03sn4419dam-h.js +5 -0
- package/out/_next/static/chunks/05ere0-228syf.js +1 -0
- package/out/_next/static/chunks/{2g_1ov-0j2kwd.js → 05h8u5lrypn5m.js} +1 -1
- package/out/_next/static/chunks/05s0t-besbvu1.css +3 -0
- package/out/_next/static/chunks/{3go-mst7n3udd.js → 05v-nubi896jg.js} +1 -1
- package/out/_next/static/chunks/05z79zh625ezu.js +1 -0
- package/out/_next/static/chunks/{1t2exh89lnazc.js → 060iult6f68_e.js} +504 -571
- package/out/_next/static/chunks/08lvtnv7b1cxp.js +1 -0
- package/out/_next/static/chunks/0_v2luu_qmeid.js +1 -0
- package/out/_next/static/chunks/0ai0zgbgjqb92.js +1 -0
- package/out/_next/static/chunks/0boov9mwycanf.js +1 -0
- package/out/_next/static/chunks/{0av6n_6q6kzo3.js → 0btmk0wmekl02.js} +2 -2
- package/out/_next/static/chunks/0d8x8m2x6ca_m.js +1 -0
- package/out/_next/static/chunks/0dmrdrwtd093b.js +1 -0
- package/out/_next/static/chunks/0e1jfrmioeuws.js +1 -0
- package/out/_next/static/chunks/0e7nlxmneb2j_.js +1 -0
- package/out/_next/static/chunks/0es97pusfxupl.js +1 -0
- package/out/_next/static/chunks/{05uqfgf-hh-p5.js → 0fd-0i1yt23kz.js} +1 -1
- package/out/_next/static/chunks/0fxdyvb1w23d1.js +1 -0
- package/out/_next/static/chunks/0fxhc24djjcgq.js +1 -0
- package/out/_next/static/chunks/0gf-ztg86zd80.js +1 -0
- package/out/_next/static/chunks/{380ivzcfb4o_3.js → 0grasqqf5dw7r.js} +2 -2
- package/out/_next/static/chunks/{0okbyggxe6mx5.js → 0hajwk2yd-rwr.js} +1 -1
- package/out/_next/static/chunks/0hk1wg7h4araz.js +1 -0
- package/out/_next/static/chunks/{1vmpltnr0cyos.js → 0j74ipw4fps-n.js} +1 -1
- package/out/_next/static/chunks/{03zip1uidm6x9.js → 0kj-vckdn7t5p.js} +1 -1
- package/out/_next/static/chunks/0lbs5xdyjuzuo.js +1 -0
- package/out/_next/static/chunks/0lep3_bqwfuin.js +1 -0
- package/out/_next/static/chunks/0mp0jh1gj7290.js +1 -0
- package/out/_next/static/chunks/0ngpoj2g5i4kz.js +1 -0
- package/out/_next/static/chunks/0nhljhguceh66.js +1 -0
- package/out/_next/static/chunks/0p6z73afb9dj2.js +1 -0
- package/out/_next/static/chunks/0p9zfmidzqkps.js +1 -0
- package/out/_next/static/chunks/0q75860p8u_ii.js +1 -0
- package/out/_next/static/chunks/{0-0hui1_v3h8b.js → 0rracz73p38mo.js} +26 -23
- package/out/_next/static/chunks/{3z4suna4kq4j5.js → 0sw-8gxbg4x0l.js} +568 -569
- package/out/_next/static/chunks/0sx-6rf3eteqn.js +1 -0
- package/out/_next/static/chunks/0thw099xk3_0p.js +3 -0
- package/out/_next/static/chunks/0u85f0dhb4i8e.js +1 -0
- package/out/_next/static/chunks/0uk7kigzm4vi2.js +31 -0
- package/out/_next/static/chunks/0ulufxnsrou61.js +1 -0
- package/out/_next/static/chunks/0xa9dyg6ezzyd.js +2 -0
- package/out/_next/static/chunks/0xvrfvur0p534.js +1 -0
- package/out/_next/static/chunks/{35aagg46wp139.js → 0ybs1u66q26su.js} +1 -1
- package/out/_next/static/chunks/0ydfhk-p6zvm0.js +1 -0
- package/out/_next/static/chunks/{29gv2swsp7tzu.js → 0z004fn14pbcu.js} +1 -1
- package/out/_next/static/chunks/{2z9mdtudj8crz.js → 0z9erbl3llr_b.js} +226 -224
- package/out/_next/static/chunks/0zcsxvcvog9ue.js +1 -0
- package/out/_next/static/chunks/0zqgq0lwtz9tn.js +1 -0
- package/out/_next/static/chunks/1-ogak5u00kwa.js +1 -0
- package/out/_next/static/chunks/{1ng-fqh2_n984.js → 10_5p5-xf2aoo.js} +1 -1
- package/out/_next/static/chunks/118qlrzdwpfmo.js +1 -0
- package/out/_next/static/chunks/11km5p4gd0ut4.js +1 -0
- package/out/_next/static/chunks/120rl4l29q9xs.js +1 -0
- package/out/_next/static/chunks/{1ho02fc091nj2.js → 129m5i93ltoym.js} +1 -1
- package/out/_next/static/chunks/12n73o884lyyl.js +1 -0
- package/out/_next/static/chunks/{3n-7bcmfbh299.js → 13zcn4lv0qj76.js} +11 -11
- package/out/_next/static/chunks/15jlgfcaeaki9.js +1 -0
- package/out/_next/static/chunks/{1ux1rpe-n1mai.js → 15o4_2t-l3rj5.js} +1 -1
- package/out/_next/static/chunks/{00o9hr_3hd0r8.js → 175st2ogkg_1o.js} +1 -1
- package/out/_next/static/chunks/19rsodtu91ja_.js +1 -0
- package/out/_next/static/chunks/1a2ouhup611bz.js +1 -0
- package/out/_next/static/chunks/{1solqr18og2ot.js → 1by60_b14x-3o.js} +1 -1
- package/out/_next/static/chunks/1cyq7i39885sl.js +1 -0
- package/out/_next/static/chunks/1d9it6yocgt54.js +1 -0
- package/out/_next/static/chunks/1dp1s1t-y7gal.js +1 -0
- package/out/_next/static/chunks/1dr7gh6xgypl8.js +1 -0
- package/out/_next/static/chunks/{32vaw89wdwv5_.js → 1dt30s_sp8415.js} +1 -1
- package/out/_next/static/chunks/{1t7nl8rx7mabd.js → 1e8_jl2cxd3rp.js} +576 -576
- package/out/_next/static/chunks/1f1rek_fxk3of.js +1 -0
- package/out/_next/static/chunks/1f2mna0k5efeq.js +1 -0
- package/out/_next/static/chunks/1gfz3sxwkkg3d.js +1 -0
- package/out/_next/static/chunks/1gr35qeguuws0.js +1 -0
- package/out/_next/static/chunks/{0g2wngc6oe7fd.js → 1gttu-n9am66k.js} +255 -253
- package/out/_next/static/chunks/1imi0xwi9hd99.js +1 -0
- package/out/_next/static/chunks/1ka5v5zu0cstt.js +1 -0
- package/out/_next/static/chunks/{17aahvhpls1l7.js → 1l_3oidssbhns.js} +298 -231
- package/out/_next/static/chunks/1m9zc5gm-327d.js +112 -0
- package/out/_next/static/chunks/1n9nhz-6azcp3.js +3 -0
- package/out/_next/static/chunks/1ncqwe81t_9_x.js +1 -0
- package/out/_next/static/chunks/1nix_lulkpklo.js +1 -0
- package/out/_next/static/chunks/{141tngxsk32hq.js → 1ntqovuz2c217.js} +1 -1
- package/out/_next/static/chunks/1pgs-98tfkq9_.js +1 -0
- package/out/_next/static/chunks/1q2z0aeopo8t8.js +1 -0
- package/out/_next/static/chunks/{2zpn7010iqgsy.js → 1q4lkgxfnqnew.js} +1 -1
- package/out/_next/static/chunks/{2khh_pmm224k5.js → 1qg1l7t00nyib.js} +97 -300
- package/out/_next/static/chunks/{1qxhgauuomthl.js → 1rcdimhu0qhlu.js} +407 -407
- package/out/_next/static/chunks/1rlfg62jxqj3z.js +1 -0
- package/out/_next/static/chunks/1ses023uud001.js +1 -0
- package/out/_next/static/chunks/1t5oynmttpfsw.js +1 -0
- package/out/_next/static/chunks/{25gf6xn9u1c57.js → 1t9i20i5-f8ze.js} +1 -1
- package/out/_next/static/chunks/{2h5nvlgky7fpa.js → 1tgj55b305g4h.js} +1 -1
- package/out/_next/static/chunks/{255knovck7pv2.js → 1u8snlm6a7uhi.js} +4 -4
- package/out/_next/static/chunks/{04_3ri5emyfcu.js → 1ug4k-1zhr63a.js} +1 -1
- package/out/_next/static/chunks/{3-_08i4_7yhno.js → 1uh9zgsy69g92.js} +1 -1
- package/out/_next/static/chunks/1vrpzlif-z_p0.js +1 -0
- package/out/_next/static/chunks/1vurgl6oz2qey.js +17 -0
- package/out/_next/static/chunks/1w-qc09n9ijtq.js +1 -0
- package/out/_next/static/chunks/1ycqxcht6x54p.js +1 -0
- package/out/_next/static/chunks/{2zyjw8g4tiu51.js → 1zj4307ugq0qz.js} +1 -1
- package/out/_next/static/chunks/{425epvuw3yy-n.js → 1zkd8v-qka--j.js} +169 -174
- package/out/_next/static/chunks/1zm52cjrfrq7c.js +1 -0
- package/out/_next/static/chunks/{267q_eg-c6f6m.js → 1zm6eo861i3c8.js} +1 -1
- package/out/_next/static/chunks/{1e_-_7biavwmb.js → 1zp9363yfhpom.js} +1 -1
- package/out/_next/static/chunks/1zt1xxovnjhkm.js +1 -0
- package/out/_next/static/chunks/2-3hk_db5fpok.js +1 -0
- package/out/_next/static/chunks/2-bv9a_0zgw1f.js +1 -0
- package/out/_next/static/chunks/209sxygecny37.js +1 -0
- package/out/_next/static/chunks/{1ccn725by19i1.js → 216uiih3_vdfd.js} +1 -1
- package/out/_next/static/chunks/21kfpd_bityxt.js +1 -0
- package/out/_next/static/chunks/22yqh0zlo_vwr.js +1 -0
- package/out/_next/static/chunks/24ecas0m9tao7.js +3 -0
- package/out/_next/static/chunks/24pq9210rng3f.js +1 -0
- package/out/_next/static/chunks/{0zf26k6juhlzo.js → 267prao6fyt22.js} +23 -20
- package/out/_next/static/chunks/26skkagvj1z96.js +1 -0
- package/out/_next/static/chunks/26y9sv8_-ykxf.js +1 -0
- package/out/_next/static/chunks/2701xfv_07wz_.js +1 -0
- package/out/_next/static/chunks/{1x99m91nt1m3b.js → 271333m8y3k0e.js} +1 -1
- package/out/_next/static/chunks/29rkmguzky-bp.js +1 -0
- package/out/_next/static/chunks/{077eo-0dhbxz-.js → 2a07so920b6aa.js} +1 -1
- package/out/_next/static/chunks/2a2oy8ryz2tsk.js +1 -0
- package/out/_next/static/chunks/2ao-3jzz7yw3p.js +532 -0
- package/out/_next/static/chunks/2apihn9ra2ufp.js +1 -0
- package/out/_next/static/chunks/2apnpj0-fs9ks.js +1 -0
- package/out/_next/static/chunks/2b481pitl4k85.js +1 -0
- package/out/_next/static/chunks/2bettxaqt3d2p.js +1 -0
- package/out/_next/static/chunks/{1fyh50hjt7hi_.js → 2c721vfva711t.js} +1 -1
- package/out/_next/static/chunks/{442e2l3jzxd-_.js → 2d2kl_m64j9cb.js} +1 -1
- package/out/_next/static/chunks/2droqjmvmgj13.js +1 -0
- package/out/_next/static/chunks/2dxbvwbbgpzoq.js +1 -0
- package/out/_next/static/chunks/2eqbsut829r5l.js +1 -0
- package/out/_next/static/chunks/2f3_mzxjh3gso.js +1 -0
- package/out/_next/static/chunks/2fsde0jwi5qtt.js +1 -0
- package/out/_next/static/chunks/2h249uvhh2sij.js +114 -0
- package/out/_next/static/chunks/{1gvdmbr65lpud.js → 2izok2otbk8-2.js} +505 -505
- package/out/_next/static/chunks/{0yvevihll7sz-.js → 2j120dkh7q3uf.js} +1 -1
- package/out/_next/static/chunks/2j2ynchpqh34-.js +1 -0
- package/out/_next/static/chunks/2kj6pzs_wap1v.js +1 -0
- package/out/_next/static/chunks/{2-p206i_ihx09.js → 2kok6zedeeltw.js} +1 -1
- package/out/_next/static/chunks/2lnj9jruy4nrv.js +1 -0
- package/out/_next/static/chunks/{41yy4p3-rtyz1.js → 2lsvk7xcfkarc.js} +1 -1
- package/out/_next/static/chunks/2n-pveub8b_5t.js +1 -0
- package/out/_next/static/chunks/{00xc-0pj7on2s.js → 2n3xu_wbvtj7h.js} +29 -29
- package/out/_next/static/chunks/{1oljzgz5jistn.js → 2of8q0kaeqpf0.js} +1 -1
- package/out/_next/static/chunks/2ofwtw6p08sfz.js +1 -0
- package/out/_next/static/chunks/2phl5ta4iim7l.js +12 -0
- package/out/_next/static/chunks/2q6l-xdqzgmpf.js +1 -0
- package/out/_next/static/chunks/2q8yg63br2jc9.js +1 -0
- package/out/_next/static/chunks/2r5qgieqldcd9.js +1 -0
- package/out/_next/static/chunks/2r7y401cvjc1s.js +1 -0
- package/out/_next/static/chunks/{22ja7c3gk0_ko.js → 2r96kyeehsji9.js} +1 -1
- package/out/_next/static/chunks/{3gyyjsot8mdav.js → 2rmc6ru7mc-kg.js} +1 -1
- package/out/_next/static/chunks/{1ephzzweysylq.js → 2s6kpclh6ie7o.js} +901 -973
- package/out/_next/static/chunks/{0vso09vdz38sr.js → 2sys9nj8lo3uk.js} +1 -1
- package/out/_next/static/chunks/{0w-hm7g7trtjg.js → 2tc3e-iqv71y_.js} +1 -1
- package/out/_next/static/chunks/2uo6vm7mfgrbf.js +1 -0
- package/out/_next/static/chunks/2urx6fow8c8c9.js +505 -0
- package/out/_next/static/chunks/2w2k1gveljyb7.js +1 -0
- package/out/_next/static/chunks/{22rl_arnzs-ve.js → 2w99knknr5i8c.js} +1 -1
- package/out/_next/static/chunks/2w_ptlw-ad8-9.js +4 -0
- package/out/_next/static/chunks/2ws1s9d52ayv8.js +1 -0
- package/out/_next/static/chunks/2x7enks3ydgai.js +1 -0
- package/out/_next/static/chunks/{2e46-2ubc90do.js → 2y8i7_nxm4r05.js} +5 -5
- package/out/_next/static/chunks/2ydub0t01728d.js +1 -0
- package/out/_next/static/chunks/{309f81l5ucsb_.js → 2z_iab7ozohhq.js} +60 -60
- package/out/_next/static/chunks/3-m_vzabs1uez.js +1 -0
- package/out/_next/static/chunks/{0t89-lfct-7m6.js → 302qk2fjdrthp.js} +5 -5
- package/out/_next/static/chunks/30bhz7czzs4mf.js +1 -0
- package/out/_next/static/chunks/{0tn-9w46cwydp.js → 30n4y_uu8chbh.js} +515 -514
- package/out/_next/static/chunks/{2-hdejef-mpka.js → 32_c4mbb6j1l6.js} +372 -169
- package/out/_next/static/chunks/33hp-khdfohdq.js +1 -0
- package/out/_next/static/chunks/{28ndw4nsw2t_4.js → 33i36o_l69sm5.js} +1 -1
- package/out/_next/static/chunks/3527r3jo5fj3i.js +1 -0
- package/out/_next/static/chunks/355dg8yaa94hr.js +1 -0
- package/out/_next/static/chunks/{11p92pnn5el0v.js → 35ntbr_c-yx44.js} +1 -1
- package/out/_next/static/chunks/{2rjfrjhp4kjev.js → 35sne1llxnc-m.js} +57 -57
- package/out/_next/static/chunks/36enkx1skkv2-.js +4 -0
- package/out/_next/static/chunks/{3-x7522okdy-7.js → 3772oce1n3t_g.js} +1 -1
- package/out/_next/static/chunks/{1rb8wewjbdisv.js → 37cnbm5ft1mqf.js} +1 -1
- package/out/_next/static/chunks/38xdo3cifphut.js +1 -0
- package/out/_next/static/chunks/{1tt1bbry-4f-6.js → 3_dgblylldcgb.js} +1 -1
- package/out/_next/static/chunks/3beawo-qwuk8k.js +1 -0
- package/out/_next/static/chunks/3cj_6sl9kr3e9.js +1 -0
- package/out/_next/static/chunks/3d-i_skta_wes.js +1 -0
- package/out/_next/static/chunks/3df_l2we755bb.js +1 -0
- package/out/_next/static/chunks/{43hwl25uke0l_.js → 3eve5y7fpzx2h.js} +1 -1
- package/out/_next/static/chunks/3ewgyb4y19w-3.js +1 -0
- package/out/_next/static/chunks/3f3789eh18_oy.js +1 -0
- package/out/_next/static/chunks/{1n_gxvu31aofy.js → 3f8qelpscqfym.js} +2 -2
- package/out/_next/static/chunks/3g3-e9m1en45q.js +1 -0
- package/out/_next/static/chunks/{0uxdbfa8gv6tk.js → 3h6akt2uu05ku.js} +29 -29
- package/out/_next/static/chunks/{3w4qettzp7khe.js → 3huu0tqmxwowu.js} +523 -522
- package/out/_next/static/chunks/3i239y-1hbkm-.js +1 -0
- package/out/_next/static/chunks/{1qsut_e3msg0l.js → 3ipx7xbxchsq9.js} +1 -1
- package/out/_next/static/chunks/{2ftp5xmq_w23j.js → 3j9xvdz55bi4p.js} +345 -345
- package/out/_next/static/chunks/3kp8qmhoi24oz.js +1 -0
- package/out/_next/static/chunks/3ksq69yq-40_r.js +1 -0
- package/out/_next/static/chunks/{2x83vs8ns4pww.js → 3njwfothmmg7u.js} +3 -3
- package/out/_next/static/chunks/{0bj_310rugcn1.js → 3oqxl46ukaojj.js} +11 -11
- package/out/_next/static/chunks/{1upkv4ltuh3s5.js → 3qn6r8-0u6dij.js} +352 -352
- package/out/_next/static/chunks/3qye1lytea2i8.js +1 -0
- package/out/_next/static/chunks/3rlp9yr75liz7.js +1 -0
- package/out/_next/static/chunks/{2i82rmjta9ijs.js → 3sa_hlx3konc7.js} +1 -1
- package/out/_next/static/chunks/3tyo643l62h3m.js +1 -0
- package/out/_next/static/chunks/3tz2tpqa9uvwm.js +1 -0
- package/out/_next/static/chunks/{2pbgsq7vvtk8_.js → 3utpc-fc6_y0f.js} +1 -1
- package/out/_next/static/chunks/3v-0c2aj6c0on.js +1 -0
- package/out/_next/static/chunks/3v6nxa28rxngq.js +1 -0
- package/out/_next/static/chunks/{1og49_atcksim.js → 3vbamaoiuk9yj.js} +1 -1
- package/out/_next/static/chunks/3vv99btjc-mky.js +1 -0
- package/out/_next/static/chunks/{1nqojcig-0m3c.js → 3w59kt5ztyvoq.js} +1 -1
- package/out/_next/static/chunks/3x02lxdo28u9i.js +1 -0
- package/out/_next/static/chunks/3xl-op0hwxytg.js +272 -0
- package/out/_next/static/chunks/3ydnxyc4rvad_.js +1 -0
- package/out/_next/static/chunks/3ylg4gfetwgxw.js +1 -0
- package/out/_next/static/chunks/{1-4v8oivkgnyl.js → 3zdtteq-r2fs5.js} +3 -3
- package/out/_next/static/chunks/3zkwt0gybqtgm.js +1 -0
- package/out/_next/static/chunks/{0wq_9f98weoe3.js → 3zs7l4362msjd.js} +1 -1
- package/out/_next/static/chunks/40etabvml_71y.js +1 -0
- package/out/_next/static/chunks/417jkzz0slv9m.js +1 -0
- package/out/_next/static/chunks/41b5gpyqbj58m.js +338 -0
- package/out/_next/static/chunks/41u2-5jayyajf.js +22 -0
- package/out/_next/static/chunks/42gcpy51w7lk1.js +1 -0
- package/out/_next/static/chunks/{1ph0tfo-4hl-f.js → 42ymanq326mo7.js} +1 -1
- package/out/_next/static/chunks/{3w_umk1xtj6to.js → 43fp64xnfy646.js} +1 -1
- package/out/_next/static/chunks/43v4y2gu5z9_h.js +1 -0
- package/out/_next/static/chunks/44cer242u-f8v.js +1 -0
- package/out/_next/static/chunks/{1ozi46t8jajqh.js → 44zi0gl0a6a8w.js} +1 -1
- package/out/_next/static/chunks/turbopack-0n2o5_bkskckx.js +1 -0
- package/out/_not-found/__next._full.txt +12 -12
- package/out/_not-found/__next._not-found.__PAGE__.txt +19 -2
- package/out/_not-found/__next._tree.txt +2 -2
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +12 -12
- package/out/index.html +1 -1
- package/out/index.txt +11 -11
- package/package.json +15 -15
- package/out/__next._head.txt +0 -6
- package/out/__next._index.txt +0 -5
- package/out/_next/static/chunks/00g5suuoa-_wn.js +0 -1
- package/out/_next/static/chunks/01fh3_bncbe5u.js +0 -1
- package/out/_next/static/chunks/01urdkl1j8o6l.js +0 -1
- package/out/_next/static/chunks/026vw95s88gsy.js +0 -1
- package/out/_next/static/chunks/02eui3ctddbd2.js +0 -1
- package/out/_next/static/chunks/04c4nksb5y9r-.js +0 -1
- package/out/_next/static/chunks/04g-l-_b4payc.js +0 -1
- package/out/_next/static/chunks/04j9pexbmysdy.js +0 -1
- package/out/_next/static/chunks/055baac5e-c2o.js +0 -1
- package/out/_next/static/chunks/05bdni_jrobq1.js +0 -1
- package/out/_next/static/chunks/05o0tb8l_htmw.js +0 -1
- package/out/_next/static/chunks/07z6p262h5hgl.js +0 -1
- package/out/_next/static/chunks/08m_4cihfmik8.js +0 -1
- package/out/_next/static/chunks/08obqw64faj8j.js +0 -1
- package/out/_next/static/chunks/099ilz3dmm1jw.js +0 -1
- package/out/_next/static/chunks/09ppu_k464q-n.js +0 -1
- package/out/_next/static/chunks/0bgcaf2x51kms.js +0 -1
- package/out/_next/static/chunks/0c5d3qn2mb3ew.js +0 -1
- package/out/_next/static/chunks/0dck67in84de0.js +0 -1
- package/out/_next/static/chunks/0dg4wxz-6u5lo.js +0 -1
- package/out/_next/static/chunks/0dva036n8ab62.js +0 -1
- package/out/_next/static/chunks/0erga_bzezbza.js +0 -1
- package/out/_next/static/chunks/0f0-i105odxqd.js +0 -1
- package/out/_next/static/chunks/0gyeqz9pagssf.js +0 -1
- package/out/_next/static/chunks/0i82k-t0fbn8f.js +0 -1
- package/out/_next/static/chunks/0kzw45f61wm3j.js +0 -1
- package/out/_next/static/chunks/0l8bfa2xewq69.js +0 -1
- package/out/_next/static/chunks/0n-zml1gn0o1u.js +0 -1
- package/out/_next/static/chunks/0n92hec_jb_-_.js +0 -1
- package/out/_next/static/chunks/0pv2wirx45e1m.js +0 -1
- package/out/_next/static/chunks/0qxd_8t3nca36.js +0 -1
- package/out/_next/static/chunks/0s1jghzw8jufz.js +0 -1
- package/out/_next/static/chunks/0s84ekz_f9ngx.js +0 -1
- package/out/_next/static/chunks/0ti58h622yo-_.js +0 -2
- package/out/_next/static/chunks/0u8yr4k1y6m2t.js +0 -1
- package/out/_next/static/chunks/0ubxyut5rr600.js +0 -1
- package/out/_next/static/chunks/0wbw9h7rsis2r.js +0 -1
- package/out/_next/static/chunks/0y4e49hpuucdi.js +0 -1
- package/out/_next/static/chunks/1-b44873bjsdw.js +0 -1
- package/out/_next/static/chunks/1-c3a1vnl8v1q.js +0 -1
- package/out/_next/static/chunks/1-xf86jgea22y.js +0 -1
- package/out/_next/static/chunks/10b0qqdnb_nox.js +0 -1
- package/out/_next/static/chunks/12kdmh0h_mboy.js +0 -1
- package/out/_next/static/chunks/14ijcpo72av4r.js +0 -1
- package/out/_next/static/chunks/16hdip1drt8o-.js +0 -1
- package/out/_next/static/chunks/18txc1wwwu9f9.js +0 -1
- package/out/_next/static/chunks/18wa83g0qfh-b.js +0 -1
- package/out/_next/static/chunks/19dp8nr4uygg2.js +0 -5
- package/out/_next/static/chunks/1_8acnu6_-qe-.js +0 -1
- package/out/_next/static/chunks/1__nujzr9e352.js +0 -3
- package/out/_next/static/chunks/1bmyq1b0by7ug.js +0 -1
- package/out/_next/static/chunks/1d1tpj9nm1nhf.js +0 -1
- package/out/_next/static/chunks/1dfwa563iciz3.js +0 -1
- package/out/_next/static/chunks/1di5enkavl9vx.js +0 -4
- package/out/_next/static/chunks/1fwsjnd1y-lx_.js +0 -1
- package/out/_next/static/chunks/1gaexq_suxai0.js +0 -1
- package/out/_next/static/chunks/1gnggc6370ji-.js +0 -1
- package/out/_next/static/chunks/1gtj_l5ame5mw.js +0 -1
- package/out/_next/static/chunks/1hsvckd0sgdgr.js +0 -1
- package/out/_next/static/chunks/1i4f3n_2_3ery.js +0 -1
- package/out/_next/static/chunks/1j7e3qpjuj89a.js +0 -1
- package/out/_next/static/chunks/1mrvp94tietcv.js +0 -1
- package/out/_next/static/chunks/1mvadj46owrck.js +0 -1
- package/out/_next/static/chunks/1nasz7q3tvb53.js +0 -1
- package/out/_next/static/chunks/1o3ggu95lfu6i.js +0 -1
- package/out/_next/static/chunks/1qjsgebn9m-0l.js +0 -1
- package/out/_next/static/chunks/1rr74xxjtckyv.js +0 -1
- package/out/_next/static/chunks/1uu55ejvi7q5u.js +0 -1
- package/out/_next/static/chunks/1xbzxfeq9789f.js +0 -1
- package/out/_next/static/chunks/1ybiu-rkt50_1.js +0 -1
- package/out/_next/static/chunks/20qelrstvz9_n.js +0 -1
- package/out/_next/static/chunks/21at65obnoo8z.js +0 -1
- package/out/_next/static/chunks/21ko5mxfderw0.js +0 -1
- package/out/_next/static/chunks/21muzwu43o8xg.js +0 -1
- package/out/_next/static/chunks/23d-hvrwpixpm.js +0 -1
- package/out/_next/static/chunks/2569rrrffvm2w.js +0 -31
- package/out/_next/static/chunks/29o74k0d6hkdf.js +0 -1
- package/out/_next/static/chunks/2bm95r0011asw.js +0 -1
- package/out/_next/static/chunks/2btabnibkm0db.js +0 -1
- package/out/_next/static/chunks/2c--awgkdcikq.js +0 -1
- package/out/_next/static/chunks/2c2dspoukng-5.js +0 -1
- package/out/_next/static/chunks/2ep7mjbaoeou0.js +0 -1
- package/out/_next/static/chunks/2ezgqm7atphi6.js +0 -1
- package/out/_next/static/chunks/2gfjzq_vjea4w.js +0 -1
- package/out/_next/static/chunks/2h5hase6ewoyc.js +0 -1
- package/out/_next/static/chunks/2hghi41nhdww2.css +0 -3
- package/out/_next/static/chunks/2ies66gmou203.js +0 -1
- package/out/_next/static/chunks/2jenu2eek9viz.js +0 -1
- package/out/_next/static/chunks/2luaj_cf5f19-.js +0 -1
- package/out/_next/static/chunks/2mgmvz66gh5ub.js +0 -1
- package/out/_next/static/chunks/2nwlqtv3vrzcv.js +0 -1
- package/out/_next/static/chunks/2o8k8x5zcepfy.js +0 -1
- package/out/_next/static/chunks/2pcdnd4nzcw4c.js +0 -1
- package/out/_next/static/chunks/2q0rz76kj6h5z.js +0 -1
- package/out/_next/static/chunks/2si5cg3hl5dtf.js +0 -4
- package/out/_next/static/chunks/2uhrhq35bki6u.js +0 -1
- package/out/_next/static/chunks/2wi7y3sfqyqdo.js +0 -3
- package/out/_next/static/chunks/2ymtumj-hfrjo.js +0 -1
- package/out/_next/static/chunks/2zdzgmacaoor9.js +0 -1
- package/out/_next/static/chunks/3-irhmtm1q5qw.js +0 -1
- package/out/_next/static/chunks/3-k74vn9exnb6.js +0 -1
- package/out/_next/static/chunks/31ei992g8gqz9.js +0 -1
- package/out/_next/static/chunks/34845aqksy1dl.js +0 -3
- package/out/_next/static/chunks/34y7nx6qmat06.js +0 -1
- package/out/_next/static/chunks/36rqw8h6ildpl.js +0 -1
- package/out/_next/static/chunks/3a_khw6q6pyh1.js +0 -1
- package/out/_next/static/chunks/3c_31f20z4jrl.js +0 -1
- package/out/_next/static/chunks/3ckp70rgr63u9.js +0 -1
- package/out/_next/static/chunks/3ed24zmt8qfys.js +0 -1
- package/out/_next/static/chunks/3ez20hi1mxw0w.js +0 -1
- package/out/_next/static/chunks/3fdx-rnos5ft-.js +0 -1
- package/out/_next/static/chunks/3fgfbxxb-j_bn.js +0 -4
- package/out/_next/static/chunks/3k-gz8qf-mj-p.js +0 -1
- package/out/_next/static/chunks/3lehc5pujwhsz.js +0 -1
- package/out/_next/static/chunks/3m0ytnc241yfz.js +0 -1
- package/out/_next/static/chunks/3mpe7c3iyxn5h.js +0 -1
- package/out/_next/static/chunks/3mvaub8qjdyuc.js +0 -1
- package/out/_next/static/chunks/3nw7u4bie0-g6.js +0 -1
- package/out/_next/static/chunks/3qatb38-tk_gd.js +0 -1
- package/out/_next/static/chunks/3tdcdi_utmoy_.js +0 -1
- package/out/_next/static/chunks/3tdzweqszru4y.js +0 -1
- package/out/_next/static/chunks/3tt_ir_va6262.js +0 -1
- package/out/_next/static/chunks/3y_51bmdnc0ey.js +0 -1
- package/out/_next/static/chunks/3yr66ufoli71t.js +0 -1
- package/out/_next/static/chunks/41qxc142snm22.js +0 -1
- package/out/_next/static/chunks/43qmngblcab8f.js +0 -1
- package/out/_next/static/chunks/turbopack-3r8yn0j92tqw_.js +0 -1
- package/out/_not-found/__next._head.txt +0 -6
- package/out/_not-found/__next._index.txt +0 -5
- package/out/_not-found/__next._not-found.txt +0 -5
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_buildManifest.js +0 -0
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_ssgManifest.js +0 -0
|
@@ -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,
|
|
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}],
|
|
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}],
|
|
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}],
|
|
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}],
|
|
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)}]);
|