@uptimizr/dashboard 0.3.5 → 0.4.0
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/README.md +16 -8
- package/out/404.html +1 -1
- package/out/__next.__PAGE__.txt +4 -4
- package/out/__next._full.txt +11 -11
- package/out/__next._head.txt +4 -4
- package/out/__next._index.txt +4 -4
- package/out/__next._tree.txt +2 -2
- package/out/_next/static/chunks/{020h1b22yfzjc.js → 0-0hui1_v3h8b.js} +9 -9
- package/out/_next/static/chunks/{2dqg85hsevk3c.js → 0-tzsd_n-ywom.js} +4 -4
- package/out/_next/static/chunks/00g5suuoa-_wn.js +1 -0
- package/out/_next/static/chunks/00o9hr_3hd0r8.js +1 -0
- package/out/_next/static/chunks/{0jxklh_ayjd4b.js → 00xc-0pj7on2s.js} +12 -12
- package/out/_next/static/chunks/01fh3_bncbe5u.js +1 -0
- package/out/_next/static/chunks/01urdkl1j8o6l.js +1 -0
- package/out/_next/static/chunks/{2j-sax2xfdv7l.js → 026vw95s88gsy.js} +1 -1
- package/out/_next/static/chunks/02eui3ctddbd2.js +1 -0
- package/out/_next/static/chunks/{3kr1polwvt6o_.js → 03zip1uidm6x9.js} +1 -1
- package/out/_next/static/chunks/{3gi0f1kg72xsf.js → 04_3ri5emyfcu.js} +1 -1
- package/out/_next/static/chunks/04c4nksb5y9r-.js +1 -0
- package/out/_next/static/chunks/04g-l-_b4payc.js +1 -0
- package/out/_next/static/chunks/04j9pexbmysdy.js +1 -0
- package/out/_next/static/chunks/{1rcfy_gzean3n.js → 055baac5e-c2o.js} +1 -1
- package/out/_next/static/chunks/05bdni_jrobq1.js +1 -0
- package/out/_next/static/chunks/05o0tb8l_htmw.js +1 -0
- package/out/_next/static/chunks/{1bxxv3nsl2-o_.js → 05uqfgf-hh-p5.js} +1 -1
- package/out/_next/static/chunks/{18r387bj9iv0j.js → 077eo-0dhbxz-.js} +1 -1
- package/out/_next/static/chunks/{18k-0jn63_5ie.js → 07z6p262h5hgl.js} +1 -1
- package/out/_next/static/chunks/{08bm3ye5govev.js → 08m_4cihfmik8.js} +1 -1
- package/out/_next/static/chunks/08obqw64faj8j.js +1 -0
- package/out/_next/static/chunks/{2k4s5rt7-l8jr.js → 099ilz3dmm1jw.js} +1 -1
- package/out/_next/static/chunks/09ppu_k464q-n.js +1 -0
- package/out/_next/static/chunks/{1rne-b-ktit5c.js → 0av6n_6q6kzo3.js} +2 -2
- package/out/_next/static/chunks/0bgcaf2x51kms.js +1 -0
- package/out/_next/static/chunks/{0ptp4ne7j6yg6.js → 0bj_310rugcn1.js} +11 -11
- package/out/_next/static/chunks/0c5d3qn2mb3ew.js +1 -0
- package/out/_next/static/chunks/{2gtebfttq1v0o.js → 0dck67in84de0.js} +1 -1
- package/out/_next/static/chunks/0dg4wxz-6u5lo.js +1 -0
- package/out/_next/static/chunks/{2apt1vh-7rl2l.js → 0dva036n8ab62.js} +1 -1
- package/out/_next/static/chunks/{159u-hx80yfaw.js → 0erga_bzezbza.js} +1 -1
- package/out/_next/static/chunks/0f0-i105odxqd.js +1 -0
- package/out/_next/static/chunks/{1fvlbwp6r93wo.js → 0g2wngc6oe7fd.js} +24 -24
- package/out/_next/static/chunks/0gyeqz9pagssf.js +1 -0
- package/out/_next/static/chunks/0i82k-t0fbn8f.js +1 -0
- package/out/_next/static/chunks/0kzw45f61wm3j.js +1 -0
- package/out/_next/static/chunks/0l8bfa2xewq69.js +1 -0
- package/out/_next/static/chunks/{390fogn9oz13i.js → 0n-zml1gn0o1u.js} +1 -1
- package/out/_next/static/chunks/{44gsjajjdhf51.js → 0n92hec_jb_-_.js} +1 -1
- package/out/_next/static/chunks/{366e7izc386pj.js → 0okbyggxe6mx5.js} +1 -1
- package/out/_next/static/chunks/{0h-ohf4gntwtj.js → 0pv2wirx45e1m.js} +1 -1
- package/out/_next/static/chunks/0qxd_8t3nca36.js +1 -0
- package/out/_next/static/chunks/0s1jghzw8jufz.js +1 -0
- package/out/_next/static/chunks/{0ngai1_zxwsk8.js → 0s84ekz_f9ngx.js} +1 -1
- package/out/_next/static/chunks/{16d4a4iopj2if.js → 0t89-lfct-7m6.js} +5 -5
- package/out/_next/static/chunks/0ti58h622yo-_.js +2 -0
- package/out/_next/static/chunks/{2jfmqd86u1tzv.js → 0tn-9w46cwydp.js} +32 -32
- package/out/_next/static/chunks/0u8yr4k1y6m2t.js +1 -0
- package/out/_next/static/chunks/0ubxyut5rr600.js +1 -0
- package/out/_next/static/chunks/{3_bzxvqtk1t53.js → 0uxdbfa8gv6tk.js} +12 -12
- package/out/_next/static/chunks/0vso09vdz38sr.js +1 -0
- package/out/_next/static/chunks/{0_tqu60oxaj7q.js → 0w-hm7g7trtjg.js} +1 -1
- package/out/_next/static/chunks/0wbw9h7rsis2r.js +1 -0
- package/out/_next/static/chunks/{3sbm1ak54_2ep.js → 0wq_9f98weoe3.js} +1 -1
- package/out/_next/static/chunks/0y4e49hpuucdi.js +1 -0
- package/out/_next/static/chunks/{0ioyy42h35hnd.js → 0yvevihll7sz-.js} +1 -1
- package/out/_next/static/chunks/{33h_kt3pzks_y.js → 0zf26k6juhlzo.js} +50 -18
- package/out/_next/static/chunks/{2t9zu9v_g9kr9.js → 1-4v8oivkgnyl.js} +3 -3
- package/out/_next/static/chunks/{3sg4zff4-h3t1.js → 1-b44873bjsdw.js} +1 -1
- package/out/_next/static/chunks/1-c3a1vnl8v1q.js +1 -0
- package/out/_next/static/chunks/1-xf86jgea22y.js +1 -0
- package/out/_next/static/chunks/10b0qqdnb_nox.js +1 -0
- package/out/_next/static/chunks/{2ib62lnqqaf4p.js → 11p92pnn5el0v.js} +1 -1
- package/out/_next/static/chunks/{06ljadw2-i91-.js → 12kdmh0h_mboy.js} +1 -1
- package/out/_next/static/chunks/141tngxsk32hq.js +1 -0
- package/out/_next/static/chunks/14ijcpo72av4r.js +1 -0
- package/out/_next/static/chunks/16ggwxztrv8im.js +1 -0
- package/out/_next/static/chunks/16hdip1drt8o-.js +1 -0
- package/out/_next/static/chunks/{3g5ae-38cepwm.js → 17aahvhpls1l7.js} +199 -199
- package/out/_next/static/chunks/{17d1isrw8gtnb.js → 18txc1wwwu9f9.js} +1 -1
- package/out/_next/static/chunks/{2716si10ouwu-.js → 18wa83g0qfh-b.js} +1 -1
- package/out/_next/static/chunks/19dp8nr4uygg2.js +5 -0
- package/out/_next/static/chunks/1_8acnu6_-qe-.js +1 -0
- package/out/_next/static/chunks/1__nujzr9e352.js +3 -0
- package/out/_next/static/chunks/1bmyq1b0by7ug.js +1 -0
- package/out/_next/static/chunks/{1wyr4at61q29n.js → 1ccn725by19i1.js} +1 -1
- package/out/_next/static/chunks/{0f_nv15a8q415.js → 1d1tpj9nm1nhf.js} +1 -1
- package/out/_next/static/chunks/1dfwa563iciz3.js +1 -0
- package/out/_next/static/chunks/1di5enkavl9vx.js +4 -0
- package/out/_next/static/chunks/{006nix8mv66z_.js → 1e_-_7biavwmb.js} +1 -1
- package/out/_next/static/chunks/{1y12bjsbq18_t.js → 1ephzzweysylq.js} +34 -34
- package/out/_next/static/chunks/1fwsjnd1y-lx_.js +1 -0
- package/out/_next/static/chunks/{2z9ot-w1x60fv.js → 1fyh50hjt7hi_.js} +1 -1
- package/out/_next/static/chunks/1gaexq_suxai0.js +1 -0
- package/out/_next/static/chunks/1gtj_l5ame5mw.js +1 -0
- package/out/_next/static/chunks/{2cqxw5m39njar.js → 1gvdmbr65lpud.js} +39 -39
- package/out/_next/static/chunks/{02tc9r3sc7fgc.js → 1ho02fc091nj2.js} +1 -1
- package/out/_next/static/chunks/{3v0td-ziuai2i.js → 1hsvckd0sgdgr.js} +1 -1
- package/out/_next/static/chunks/1i4f3n_2_3ery.js +1 -0
- package/out/_next/static/chunks/1j7e3qpjuj89a.js +1 -0
- package/out/_next/static/chunks/{2btqzk0tj0gz6.js → 1mrvp94tietcv.js} +1 -1
- package/out/_next/static/chunks/{3vxkkhs0vi_xa.js → 1mvadj46owrck.js} +1 -1
- package/out/_next/static/chunks/1n9ai-iuqh78m.js +1 -0
- package/out/_next/static/chunks/{1b2tkk7e_2o0k.js → 1n_gxvu31aofy.js} +2 -2
- package/out/_next/static/chunks/{0gblbgw7w7r9w.js → 1nasz7q3tvb53.js} +1 -1
- package/out/_next/static/chunks/{2_7dp91937mqi.js → 1ng-fqh2_n984.js} +1 -1
- package/out/_next/static/chunks/{0x4-zyy8pzmlq.js → 1nqojcig-0m3c.js} +1 -1
- package/out/_next/static/chunks/1o3ggu95lfu6i.js +1 -0
- package/out/_next/static/chunks/{2dolerz81xb52.js → 1og49_atcksim.js} +1 -1
- package/out/_next/static/chunks/{0c2k-gvwph4qs.js → 1oljzgz5jistn.js} +1 -1
- package/out/_next/static/chunks/1ozi46t8jajqh.js +1 -0
- package/out/_next/static/chunks/{1w9xu1qa9-wmv.js → 1ph0tfo-4hl-f.js} +1 -1
- package/out/_next/static/chunks/{17dmbt396_tyq.js → 1qjsgebn9m-0l.js} +1 -1
- package/out/_next/static/chunks/{168r9r65o9jnc.js → 1qsut_e3msg0l.js} +1 -1
- package/out/_next/static/chunks/{3efuvh_35yhes.js → 1qxhgauuomthl.js} +39 -39
- package/out/_next/static/chunks/{2w7yf7ouyrlkb.js → 1rb8wewjbdisv.js} +1 -1
- package/out/_next/static/chunks/1rr74xxjtckyv.js +1 -0
- package/out/_next/static/chunks/{1kl5xxohpr6-4.js → 1solqr18og2ot.js} +1 -1
- package/out/_next/static/chunks/{2rjc8yn50ducj.js → 1t2exh89lnazc.js} +34 -34
- package/out/_next/static/chunks/{0_ux41xcoea3u.js → 1t7nl8rx7mabd.js} +40 -40
- package/out/_next/static/chunks/{3fx3sriw1w3sa.js → 1tt1bbry-4f-6.js} +1 -1
- package/out/_next/static/chunks/{36waz9xq39n4t.js → 1upkv4ltuh3s5.js} +40 -40
- package/out/_next/static/chunks/{2npk7tr63h7rl.js → 1uu55ejvi7q5u.js} +1 -1
- package/out/_next/static/chunks/{2cvvxifoedn6j.js → 1ux1rpe-n1mai.js} +1 -1
- package/out/_next/static/chunks/{091ll-lp6spu3.js → 1vmpltnr0cyos.js} +1 -1
- package/out/_next/static/chunks/1x99m91nt1m3b.js +1 -0
- package/out/_next/static/chunks/1xbzxfeq9789f.js +1 -0
- package/out/_next/static/chunks/1xqv11mvnfa8n.js +1 -0
- package/out/_next/static/chunks/1ybiu-rkt50_1.js +1 -0
- package/out/_next/static/chunks/{3y9c26fv1poq_.js → 2-hdejef-mpka.js} +199 -199
- package/out/_next/static/chunks/{22qzld31fbhbv.js → 2-p206i_ihx09.js} +1 -1
- package/out/_next/static/chunks/{3rx1jhuop94-l.js → 20qelrstvz9_n.js} +1 -1
- package/out/_next/static/chunks/21at65obnoo8z.js +1 -0
- package/out/_next/static/chunks/21ko5mxfderw0.js +1 -0
- package/out/_next/static/chunks/21muzwu43o8xg.js +1 -0
- package/out/_next/static/chunks/{3he9bxsc67ivq.js → 22ja7c3gk0_ko.js} +1 -1
- package/out/_next/static/chunks/{0mqi0xn_c010j.js → 22rl_arnzs-ve.js} +1 -1
- package/out/_next/static/chunks/23d-hvrwpixpm.js +1 -0
- package/out/_next/static/chunks/{1f-2upk7uaxky.js → 255knovck7pv2.js} +4 -4
- package/out/_next/static/chunks/2569rrrffvm2w.js +31 -0
- package/out/_next/static/chunks/{229mkx-mtfcgf.js → 25gf6xn9u1c57.js} +1 -1
- package/out/_next/static/chunks/{2vmybybb3dvia.js → 267q_eg-c6f6m.js} +1 -1
- package/out/_next/static/chunks/{0e7xuupmrw4-e.js → 28ndw4nsw2t_4.js} +1 -1
- package/out/_next/static/chunks/{0m3yjobjg36ce.js → 29gv2swsp7tzu.js} +1 -1
- package/out/_next/static/chunks/29o74k0d6hkdf.js +1 -0
- package/out/_next/static/chunks/{0kr-bd6fuqc2s.js → 2bm95r0011asw.js} +1 -1
- package/out/_next/static/chunks/2btabnibkm0db.js +1 -0
- package/out/_next/static/chunks/2c--awgkdcikq.js +1 -0
- package/out/_next/static/chunks/{2ab-99frxpah-.js → 2c2dspoukng-5.js} +1 -1
- package/out/_next/static/chunks/{0zo4x1j8ug-kb.js → 2e46-2ubc90do.js} +5 -5
- package/out/_next/static/chunks/2ep7mjbaoeou0.js +1 -0
- package/out/_next/static/chunks/{1kq86iv41cet4.js → 2ezgqm7atphi6.js} +1 -1
- package/out/_next/static/chunks/{2owp-uukmhm4s.js → 2ftp5xmq_w23j.js} +35 -35
- package/out/_next/static/chunks/{38g9jpxjoxn2x.js → 2g_1ov-0j2kwd.js} +1 -1
- package/out/_next/static/chunks/2gfjzq_vjea4w.js +1 -0
- package/out/_next/static/chunks/{1tdg_eolxlcdl.js → 2h5hase6ewoyc.js} +1 -1
- package/out/_next/static/chunks/{0m0n7kjzscx0y.js → 2h5nvlgky7fpa.js} +1 -1
- package/out/_next/static/chunks/{17dabmbnkkplu.js → 2i82rmjta9ijs.js} +1 -1
- package/out/_next/static/chunks/2ies66gmou203.js +1 -0
- package/out/_next/static/chunks/2jenu2eek9viz.js +1 -0
- package/out/_next/static/chunks/{3043pprgv9ors.js → 2khh_pmm224k5.js} +23 -23
- package/out/_next/static/chunks/{0msckddycfy76.js → 2luaj_cf5f19-.js} +1 -1
- package/out/_next/static/chunks/2mgmvz66gh5ub.js +1 -0
- package/out/_next/static/chunks/2nwlqtv3vrzcv.js +1 -0
- package/out/_next/static/chunks/{18ss4ls60s31e.js → 2o8k8x5zcepfy.js} +1 -1
- package/out/_next/static/chunks/{1e1zozntzsx42.js → 2pbgsq7vvtk8_.js} +1 -1
- package/out/_next/static/chunks/{0b7-mrrg7ryj2.js → 2pcdnd4nzcw4c.js} +1 -1
- package/out/_next/static/chunks/2q0rz76kj6h5z.js +1 -0
- package/out/_next/static/chunks/{3w1a2o8nevap8.js → 2rjfrjhp4kjev.js} +18 -18
- package/out/_next/static/chunks/2si5cg3hl5dtf.js +4 -0
- package/out/_next/static/chunks/2uhrhq35bki6u.js +1 -0
- package/out/_next/static/chunks/2x83vs8ns4pww.js +74 -0
- package/out/_next/static/chunks/{1l12hkz1g7uhf.js → 2ymtumj-hfrjo.js} +1 -1
- package/out/_next/static/chunks/{2yr9wt421xdjr.js → 2z9mdtudj8crz.js} +17 -17
- package/out/_next/static/chunks/{1iaxzjly2pap1.js → 2zdzgmacaoor9.js} +1 -1
- package/out/_next/static/chunks/{0mk8tangq9equ.js → 2zpn7010iqgsy.js} +1 -1
- package/out/_next/static/chunks/2zyjw8g4tiu51.js +1 -0
- package/out/_next/static/chunks/{2kn_dqzbyabtn.js → 3-_08i4_7yhno.js} +1 -1
- package/out/_next/static/chunks/3-irhmtm1q5qw.js +1 -0
- package/out/_next/static/chunks/3-k74vn9exnb6.js +1 -0
- package/out/_next/static/chunks/{18avgwx9nlxp9.js → 3-x7522okdy-7.js} +1 -1
- package/out/_next/static/chunks/{39dscgnk4__gl.js → 309f81l5ucsb_.js} +16 -16
- package/out/_next/static/chunks/{1f1vq3goue1w4.js → 31ei992g8gqz9.js} +1 -1
- package/out/_next/static/chunks/{0i9oqg-xbq-a9.js → 32vaw89wdwv5_.js} +1 -1
- package/out/_next/static/chunks/{0yvei5e7uye4f.js → 34845aqksy1dl.js} +2 -2
- package/out/_next/static/chunks/34y7nx6qmat06.js +1 -0
- package/out/_next/static/chunks/{1f92k-xa0pl-3.js → 35aagg46wp139.js} +1 -1
- package/out/_next/static/chunks/36rqw8h6ildpl.js +1 -0
- package/out/_next/static/chunks/{0zwkmsojeuekb.js → 380ivzcfb4o_3.js} +4 -4
- package/out/_next/static/chunks/3_jmgj9glg_z2.css +3 -0
- package/out/_next/static/chunks/{10w513bgw-bgi.js → 3a_khw6q6pyh1.js} +1 -1
- package/out/_next/static/chunks/3c_31f20z4jrl.js +1 -0
- package/out/_next/static/chunks/3ckp70rgr63u9.js +1 -0
- package/out/_next/static/chunks/{08rk1dp1wb-gm.js → 3d76e_yd8l_0x.js} +38 -38
- package/out/_next/static/chunks/{2p8dbh81chhon.js → 3ed24zmt8qfys.js} +1 -1
- package/out/_next/static/chunks/3ez20hi1mxw0w.js +1 -0
- package/out/_next/static/chunks/3fdx-rnos5ft-.js +1 -0
- package/out/_next/static/chunks/3fgfbxxb-j_bn.js +4 -0
- package/out/_next/static/chunks/{03st_hmor6qju.js → 3go-mst7n3udd.js} +1 -1
- package/out/_next/static/chunks/{3d0ejsnhbzi-j.js → 3gyyjsot8mdav.js} +1 -1
- package/out/_next/static/chunks/{0rruvj1cyflrh.js → 3k-gz8qf-mj-p.js} +1 -1
- package/out/_next/static/chunks/{2enlv4yy0t-9j.js → 3kalvwsf11-ss.js} +12 -12
- package/out/_next/static/chunks/3lehc5pujwhsz.js +1 -0
- package/out/_next/static/chunks/{05l3dluxivcor.js → 3m0ytnc241yfz.js} +1 -1
- package/out/_next/static/chunks/3mpe7c3iyxn5h.js +1 -0
- package/out/_next/static/chunks/{0tl8j9f8lt0yf.js → 3mvaub8qjdyuc.js} +1 -1
- package/out/_next/static/chunks/{0k79ryqehst0b.js → 3n-7bcmfbh299.js} +48 -18
- package/out/_next/static/chunks/{38ea9kqlbxt86.js → 3nw7u4bie0-g6.js} +1 -1
- package/out/_next/static/chunks/3qatb38-tk_gd.js +1 -0
- package/out/_next/static/chunks/3tdcdi_utmoy_.js +1 -0
- package/out/_next/static/chunks/{3x6wpv_z5m6rz.js → 3tdzweqszru4y.js} +1 -1
- package/out/_next/static/chunks/3tt_ir_va6262.js +1 -0
- package/out/_next/static/chunks/{16hx9_epo71u-.js → 3w4qettzp7khe.js} +32 -32
- package/out/_next/static/chunks/{2op88btas-hl8.js → 3w_umk1xtj6to.js} +1 -1
- package/out/_next/static/chunks/{1kmsg9ef5djl3.js → 3y_51bmdnc0ey.js} +1 -1
- package/out/_next/static/chunks/{1ajmblsp0wj0_.js → 3yr66ufoli71t.js} +1 -1
- package/out/_next/static/chunks/{348hdbpkkcq_2.js → 3z4suna4kq4j5.js} +20 -20
- package/out/_next/static/chunks/{1y20bv6vl4ylk.js → 41qxc142snm22.js} +1 -1
- package/out/_next/static/chunks/{404f_93w2e8ty.js → 41yy4p3-rtyz1.js} +1 -1
- package/out/_next/static/chunks/{3fz7tc-4j13uv.js → 425epvuw3yy-n.js} +21 -21
- package/out/_next/static/chunks/{1t60cososq7b0.js → 43hwl25uke0l_.js} +1 -1
- package/out/_next/static/chunks/43qmngblcab8f.js +1 -0
- package/out/_next/static/chunks/{2bn9u9r0rfhvc.js → 442e2l3jzxd-_.js} +1 -1
- package/out/_next/static/chunks/{turbopack-16ab30_1p4vhq.js → turbopack-3r8yn0j92tqw_.js} +1 -1
- package/out/_not-found/__next._full.txt +9 -9
- package/out/_not-found/__next._head.txt +4 -4
- package/out/_not-found/__next._index.txt +4 -4
- package/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/out/_not-found/__next._not-found.txt +3 -3
- package/out/_not-found/__next._tree.txt +2 -2
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +9 -9
- package/out/index.html +1 -1
- package/out/index.txt +11 -11
- package/package.json +12 -11
- package/out/_next/static/chunks/0-29qf-q72olu.js +0 -1
- package/out/_next/static/chunks/0-tk5ptli--r0.js +0 -1
- package/out/_next/static/chunks/0296l8lzd69ns.js +0 -1
- package/out/_next/static/chunks/04pk6n3z75dcy.js +0 -1
- package/out/_next/static/chunks/0g6u34xkzrpjn.js +0 -1
- package/out/_next/static/chunks/0g7p8zp2kxve5.js +0 -1
- package/out/_next/static/chunks/0gwa154w_0wuh.js +0 -1
- package/out/_next/static/chunks/0h1o0cr3327tt.js +0 -1
- package/out/_next/static/chunks/0jf3n5n5yrr4o.js +0 -1
- package/out/_next/static/chunks/0jsh6juckq525.js +0 -1
- package/out/_next/static/chunks/0kcbdjbdxu_wa.js +0 -1
- package/out/_next/static/chunks/0l3wwyl93sqh9.js +0 -1
- package/out/_next/static/chunks/0n0thxa3jkour.js +0 -4
- package/out/_next/static/chunks/0ngiuj5k-or6g.js +0 -1
- package/out/_next/static/chunks/0nx_t8iq-324h.js +0 -1
- package/out/_next/static/chunks/0oap0o8a8a_cl.js +0 -1
- package/out/_next/static/chunks/0ostjlqtwkhqr.js +0 -1
- package/out/_next/static/chunks/0vddljjnmozzx.js +0 -1
- package/out/_next/static/chunks/0w0sx062qmcsh.js +0 -1
- package/out/_next/static/chunks/0x6i6e6863tir.js +0 -1
- package/out/_next/static/chunks/1--kelnig7pxx.js +0 -1
- package/out/_next/static/chunks/1-ud6hztxiazp.js +0 -1
- package/out/_next/static/chunks/10v4rskkrjgd_.js +0 -1
- package/out/_next/static/chunks/117ys3lltfmcu.js +0 -1
- package/out/_next/static/chunks/14klj_i6-l-10.js +0 -1
- package/out/_next/static/chunks/17ev44x54_jrd.js +0 -1
- package/out/_next/static/chunks/17svumd4o0qnc.js +0 -1
- package/out/_next/static/chunks/17v12p4sfraa0.js +0 -1
- package/out/_next/static/chunks/1a7cup181rjod.js +0 -1
- package/out/_next/static/chunks/1ek5rtpo6rxev.js +0 -1
- package/out/_next/static/chunks/1evp209qbr4cr.js +0 -5
- package/out/_next/static/chunks/1fa265388524p.js +0 -1
- package/out/_next/static/chunks/1g3z43o3h-024.js +0 -31
- package/out/_next/static/chunks/1g_27texazqcj.js +0 -1
- package/out/_next/static/chunks/1j--a56ji33_x.js +0 -1
- package/out/_next/static/chunks/1oara6fkfvgs3.js +0 -1
- package/out/_next/static/chunks/1par9m038tiov.js +0 -1
- package/out/_next/static/chunks/1q-gcxr6o4bx2.js +0 -1
- package/out/_next/static/chunks/1st81sc3owvku.js +0 -4
- package/out/_next/static/chunks/1vkww9l6lgqag.js +0 -1
- package/out/_next/static/chunks/1vpcaaf-0dn7q.js +0 -1
- package/out/_next/static/chunks/1vzmzrjhlm1q5.js +0 -1
- package/out/_next/static/chunks/245h82k-g1nxr.js +0 -1
- package/out/_next/static/chunks/24cqjhy669845.js +0 -1
- package/out/_next/static/chunks/25ctnyh7njp-d.js +0 -4
- package/out/_next/static/chunks/286ggpetqnwyo.js +0 -3
- package/out/_next/static/chunks/28f1onw3nywbz.js +0 -1
- package/out/_next/static/chunks/28ud4w7xswcir.js +0 -1
- package/out/_next/static/chunks/28ycc-1519hl2.js +0 -1
- package/out/_next/static/chunks/2dhv35o59yzao.js +0 -1
- package/out/_next/static/chunks/2ey30qeaob985.js +0 -1
- package/out/_next/static/chunks/2f0r-df7tb3pu.js +0 -1
- package/out/_next/static/chunks/2fle007r0cdnq.js +0 -1
- package/out/_next/static/chunks/2gh4z57fem0_v.js +0 -1
- package/out/_next/static/chunks/2h1uw3cluvmmo.js +0 -1
- package/out/_next/static/chunks/2kje_jvmwsvwo.js +0 -1
- package/out/_next/static/chunks/2l_oqx9idxcs8.js +0 -1
- package/out/_next/static/chunks/2pkoed609lf41.js +0 -1
- package/out/_next/static/chunks/2reukv9c7cq_9.js +0 -1
- package/out/_next/static/chunks/2vaoftqgc44cg.js +0 -1
- package/out/_next/static/chunks/2wdk-kbm-n-m5.js +0 -1
- package/out/_next/static/chunks/2y75diyxqlhzl.js +0 -1
- package/out/_next/static/chunks/2zljunurdji0q.js +0 -1
- package/out/_next/static/chunks/30_2jsjk52x2i.js +0 -1
- package/out/_next/static/chunks/34gp3hvr3j6um.js +0 -1
- package/out/_next/static/chunks/3ajhvedcs_lzb.js +0 -1
- package/out/_next/static/chunks/3ef6upwlgr4q-.css +0 -3
- package/out/_next/static/chunks/3g4e2txsrb2p2.js +0 -1
- package/out/_next/static/chunks/3g_h_00xs9u59.js +0 -1
- package/out/_next/static/chunks/3ghwe2mr2ig7e.js +0 -1
- package/out/_next/static/chunks/3hr-mlwi78nov.js +0 -1
- package/out/_next/static/chunks/3mcfjxvxo0o3e.js +0 -1
- package/out/_next/static/chunks/3mwoauxszd3mn.js +0 -1
- package/out/_next/static/chunks/3oj29s_tuqbkm.js +0 -1
- package/out/_next/static/chunks/3ovd8o_usay7j.js +0 -1
- package/out/_next/static/chunks/3pdpaqzwhhijn.js +0 -1
- package/out/_next/static/chunks/3r2hbpm4wju16.js +0 -1
- package/out/_next/static/chunks/3rl45k759wfi1.js +0 -1
- package/out/_next/static/chunks/3urd7r018nel4.js +0 -1
- package/out/_next/static/chunks/3vaho-xrtuchd.js +0 -2
- package/out/_next/static/chunks/3wqs57qehored.js +0 -1
- package/out/_next/static/chunks/40acif2eh_unv.js +0 -1
- package/out/_next/static/chunks/4227p7752rnny.js +0 -1
- /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → BzI7wE6hab7b0g-tucqKW}/_buildManifest.js +0 -0
- /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → BzI7wE6hab7b0g-tucqKW}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{RC8D0Hg382TugUN5Syz31 → BzI7wE6hab7b0g-tucqKW}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55018,e=>{"use strict";e.s(["GetDOMTextContent",0,function(e){let t="",r=e.firstChild;for(;r;)3===r.nodeType&&(t+=r.textContent),r=r.nextSibling;return t},"IsDocumentAvailable",0,function(){return"u">typeof document},"IsNavigatorAvailable",0,function(){return"u">typeof navigator},"IsWindowObjectExist",0,function(){return"u">typeof window}])},44674,e=>{"use strict";class t{constructor(){this._xhr="u">typeof _native&&_native.XMLHttpRequest?new _native.XMLHttpRequest:new XMLHttpRequest,this._requestURL=""}static get IsCustomRequestAvailable(){return Object.keys(t.CustomRequestHeaders).length>0||t.CustomRequestModifiers.length>0}static _CleanUrl(e){return e=(e=e.replace("file:http:","http:")).replace("file:https:","https:")}static _ShouldSkipRequestModifications(e){return t.SkipRequestModificationForBabylonCDN&&(e.includes("preview.babylonjs.com")||e.includes("cdn.babylonjs.com"))}static _CollectCustomizations(e,r={}){let o={...r};if(t._ShouldSkipRequestModifications(e))return{url:e,headers:o};for(let e in t.CustomRequestHeaders){let r=t.CustomRequestHeaders[e];r&&(o[e]=r)}let a={setRequestHeader:(e,t)=>{o[e]=t}};for(let r of t.CustomRequestModifiers){if(t._ShouldSkipRequestModifications(e))break;let o=r(a,e);"string"==typeof o&&(e=o)}return{url:e,headers:o}}static async FetchAsync(e,r={}){let o=r.method??"GET";if("u">typeof fetch){let{url:a,headers:i}=t._CollectCustomizations(t._CleanUrl(e),r.headers??{});return await fetch(a,{method:o,headers:i,body:r.body??void 0})}return await new Promise((a,i)=>{let n=new t;n.responseType="arraybuffer",n.addEventListener("readystatechange",()=>{if(4===n.readyState)if(n.status>=200&&n.status<300){let e="u">typeof Headers?new Headers:void 0,t=n.getResponseHeader("Content-Type");t&&e&&e.set("Content-Type",t),"u">typeof Response?a(new Response(n.response,{status:n.status,statusText:n.statusText,headers:e})):a({ok:!0,status:n.status,statusText:n.statusText,headers:{get:e=>n.getResponseHeader(e)},arrayBuffer:async()=>await Promise.resolve(n.response)})}else i(Error(`HTTP ${n.status} loading '${n.requestURL}': ${n.statusText}`))}),n.open(o,e,r.headers),n.send(r.body??null)})}get requestURL(){return this._requestURL}get onprogress(){return this._xhr.onprogress}set onprogress(e){this._xhr.onprogress=e}get readyState(){return this._xhr.readyState}get status(){return this._xhr.status}get statusText(){return this._xhr.statusText}get response(){return this._xhr.response}get responseURL(){return this._xhr.responseURL}get responseText(){return this._xhr.responseText}get responseType(){return this._xhr.responseType}set responseType(e){this._xhr.responseType=e}get timeout(){return this._xhr.timeout}set timeout(e){this._xhr.timeout=e}addEventListener(e,t,r){this._xhr.addEventListener(e,t,r)}removeEventListener(e,t,r){this._xhr.removeEventListener(e,t,r)}abort(){this._xhr.abort()}send(e){this._xhr.send(e)}open(e,r,o){let{url:a,headers:i}=t._CollectCustomizations(r,o);for(let r in this._requestURL=t._CleanUrl(a),this._xhr.open(e,this._requestURL,!0),i)this._xhr.setRequestHeader(r,i[r])}setRequestHeader(e,t){this._xhr.setRequestHeader(e,t)}getResponseHeader(e){return this._xhr.getResponseHeader(e)}}t.CustomRequestHeaders={},t.CustomRequestModifiers=[],t.SkipRequestModificationForBabylonCDN=!0,e.s(["WebRequest",0,t])},6351,e=>{"use strict";let t=null;function r(){if(t)return t;let e=new ArrayBuffer(4),r=new Float32Array(e),o=new Uint32Array(e),a=new Uint32Array(512),i=new Uint32Array(512);for(let e=0;e<256;++e){let t=e-127;t<-24?(a[e]=0,a[256|e]=32768,i[e]=24,i[256|e]=24):t<-14?(a[e]=1024>>-t-14,a[256|e]=1024>>-t-14|32768,i[e]=-t-1,i[256|e]=-t-1):t<=15?(a[e]=t+15<<10,a[256|e]=t+15<<10|32768,i[e]=13,i[256|e]=13):t<128?(a[e]=31744,a[256|e]=64512,i[e]=24,i[256|e]=24):(a[e]=31744,a[256|e]=64512,i[e]=13,i[256|e]=13)}let n=new Uint32Array(2048),s=new Uint32Array(64),l=new Uint32Array(64);for(let e=1;e<1024;++e){let t=e<<13,r=0;for(;(8388608&t)==0;)t<<=1,r-=8388608;t&=-8388609,r+=0x38800000,n[e]=t|r}for(let e=1024;e<2048;++e)n[e]=0x38000000+(e-1024<<13);for(let e=1;e<31;++e)s[e]=e<<23;s[31]=0x47800000,s[32]=0x80000000;for(let e=33;e<63;++e)s[e]=0x80000000+(e-32<<23);s[63]=0xc7800000;for(let e=1;e<64;++e)32!==e&&(l[e]=1024);return t={floatView:r,uint32View:o,baseTable:a,shiftTable:i,mantissaTable:n,exponentTable:s,offsetTable:l}}e.s(["FromHalfFloat",0,function(e){let t=r();return t.uint32View[0]=t.mantissaTable[t.offsetTable[e>>10]+(1023&e)]+t.exponentTable[e>>10],t.floatView[0]},"MaxHalfFloat",0,65504,"ToHalfFloat",0,function(e){let t=r();t.floatView[0]=e;let o=t.uint32View[0],a=o>>23&511;return t.baseTable[a]+((8388607&o)>>t.shiftTable[a])}])},87869,e=>{"use strict";var t=e.i(55018);e.s(["PrecisionDate",0,class{static get Now(){return(0,t.IsWindowObjectExist)()&&window.performance&&window.performance.now?window.performance.now():Date.now()}}])},40253,76532,51618,e=>{"use strict";class t{}t.FilesToLoad={},e.s(["FilesInputStore",0,t],40253),e.s(["RetryStrategy",0,class{static ExponentialBackoff(e=3,t=500){return(r,o,a)=>0!==o.status||a>=e||-1!==r.indexOf("file:")?-1:Math.pow(2,a)*t}}],76532);class r extends Error{}r._setPrototypeOf=Object.setPrototypeOf||((e,t)=>(e.__proto__=t,e));class o extends r{constructor(e,t,a){super(e),this.errorCode=t,this.innerError=a,this.name="RuntimeError",r._setPrototypeOf(this,o.prototype)}}e.s(["BaseError",0,r,"ErrorCodes",0,{MeshInvalidPositionsError:0,UnsupportedTextureError:1e3,GLTFLoaderUnexpectedMagicError:2e3,SceneLoaderError:3e3,LoadFileError:4e3,RequestFileError:4001,ReadFileError:4002},"RuntimeError",0,o],51618)},26225,e=>{"use strict";let t=e=>atob(e);e.s(["Decode",0,e=>{if("u">typeof TextDecoder)return new TextDecoder().decode(e);let t="";for(let r=0;r<e.byteLength;r++)t+=String.fromCharCode(e[r]);return t},"DecodeBase64ToBinary",0,e=>"function"==typeof Uint8Array.fromBase64?Uint8Array.fromBase64(e).buffer:function(e){let r=t(e),o=r.length,a=new Uint8Array(new ArrayBuffer(o));for(let e=0;e<o;e++)a[e]=r.charCodeAt(e);return a.buffer}(e),"DecodeBase64ToString",0,t,"EncodeArrayBufferToBase64",0,e=>{let t=ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e);return"function"==typeof t.toBase64?t.toBase64():function(e){let t,r,o,a,i,n,s,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",u=0;for(;u<e.length;)t=e[u++],r=u<e.length?e[u++]:NaN,o=u<e.length?e[u++]:NaN,a=t>>2,i=(3&t)<<4|r>>4,n=(15&r)<<2|o>>6,s=63&o,isNaN(r)?n=s=64:isNaN(o)&&(s=64),c+=l.charAt(a)+l.charAt(i)+l.charAt(n)+l.charAt(s);return c}(t)}])},49097,e=>{"use strict";let t=[];function r(e,t,r){try{if(e())return t(),!0}catch(e){return r?.(e),!0}return!1}e.s(["TimingTools",0,class{static SetImmediate(e){0===t.length&&setTimeout(()=>{let e=t;for(let r of(t=[],e))r()},1),t.push(e)}},"_RetryWithInterval",0,(e,t,o,a=16,i=3e4,n=!0,s)=>{if(n&&r(e,t,o))return null;let l=setInterval(()=>{r(e,t,o)?clearInterval(l):(i-=a)<0&&(clearInterval(l),o?.(Error("Operation timed out after maximum retries. "+(s||"")),!0))},a);return()=>clearInterval(l)}])},28978,e=>{"use strict";var t=e.i(80434),r=e.i(6351);function o(e){switch(e){case 5120:case 5121:return 1;case 5122:case 5123:case 5131:return 2;case 5124:case 5125:case 5126:return 4;default:throw Error(`Invalid type '${e}'`)}}function a(e){switch(e){case 5120:return Int8Array;case 5121:return Uint8Array;case 5122:return Int16Array;case 5123:case 5131:return Uint16Array;case 5124:return Int32Array;case 5125:return Uint32Array;case 5126:return Float32Array;default:throw Error(`Invalid component type '${e}'`)}}function i(e,t,a,i,n,s,l,c){let u=Array(i),f=Array(i);if(e instanceof Array){let r=t/4,o=a/4;for(let t=0;t<s;t+=i){for(let t=0;t<i;t++)u[t]=f[t]=e[r+t];c(f,t);for(let t=0;t<i;t++)u[t]!==f[t]&&(e[r+t]=f[t]);r+=o}}else{let d=ArrayBuffer.isView(e)?new DataView(e.buffer,e.byteOffset,e.byteLength):new DataView(e),g=o(n);for(let e=0;e<s;e+=i){for(let e=0,o=t;e<i;e++,o+=g)u[e]=f[e]=function(e,t,o,a){switch(t){case 5120:{let t=e.getInt8(o);return a&&(t=Math.max(t/127,-1)),t}case 5121:{let t=e.getUint8(o);return a&&(t/=255),t}case 5122:{let t=e.getInt16(o,!0);return a&&(t=Math.max(t/32767,-1)),t}case 5123:{let t=e.getUint16(o,!0);return a&&(t/=65535),t}case 5131:return(0,r.FromHalfFloat)(e.getUint16(o,!0));case 5124:return e.getInt32(o,!0);case 5125:return e.getUint32(o,!0);case 5126:return e.getFloat32(o,!0);default:throw Error(`Invalid component type ${t}`)}}(d,n,o,l);c(f,e);for(let e=0,o=t;e<i;e++,o+=g)u[e]!==f[e]&&function(e,t,o,a,i){switch(t){case 5120:a&&(i=Math.round(127*i)),e.setInt8(o,i);break;case 5121:a&&(i=Math.round(255*i)),e.setUint8(o,i);break;case 5122:a&&(i=Math.round(32767*i)),e.setInt16(o,i,!0);break;case 5123:a&&(i=Math.round(65535*i)),e.setUint16(o,i,!0);break;case 5131:e.setUint16(o,(0,r.ToHalfFloat)(i),!0);break;case 5124:e.setInt32(o,i,!0);break;case 5125:e.setUint32(o,i,!0);break;case 5126:e.setFloat32(o,i,!0);break;default:throw Error(`Invalid component type ${t}`)}}(d,n,o,l,f[e]);t+=a}}}e.s(["CopyFloatData",0,function(e,r,a,n,s,l,c,u){let f=r*o(a),d=c*r;if(u.length!==d)throw Error("Output length is not valid");if(5126!==a||s!==f)return void i(e,n,s,r,a,d,l,(e,t)=>{for(let o=0;o<r;o++)u[t+o]=e[o]});if(e instanceof Array){let t=n/4;u.set(e,t)}else if(ArrayBuffer.isView(e)){let r=e.byteOffset+n;if((3&r)!=0){t.Logger.Warn("Float array must be aligned to 4-bytes border"),u.set(new Float32Array(e.buffer.slice(r,r+d*Float32Array.BYTES_PER_ELEMENT)));return}let o=new Float32Array(e.buffer,r,d);u.set(o)}else{let t=new Float32Array(e,n,d);u.set(t)}},"EnumerateFloatValues",0,i,"GetBlobBufferSource",0,function(e){let t=e.buffer;if(t instanceof ArrayBuffer)return e;let r=new ArrayBuffer(e.byteLength);return new Uint8Array(r).set(new Uint8Array(t,e.byteOffset,e.byteLength)),r},"GetFloatData",0,function(e,r,a,n,s,l,c,u){let f=r*o(a),d=c*r;if(5126!==a||s!==f){let t=new Float32Array(d);return i(e,n,s,r,a,d,l,(e,o)=>{for(let a=0;a<r;a++)t[o+a]=e[a]}),t}if(!(e instanceof Array||e instanceof Float32Array)||0!==n||e.length!==d)if(e instanceof Array){let t=n/4;return e.slice(t,t+d)}else{if(!ArrayBuffer.isView(e))return new Float32Array(e,n,d);let r=e.byteOffset+n;return((3&r)!=0&&(t.Logger.Warn("Float array must be aligned to 4-bytes border"),u=!0),u)?new Float32Array(e.buffer.slice(r,r+d*Float32Array.BYTES_PER_ELEMENT)):new Float32Array(e.buffer,r,d)}return u?e.slice():e},"GetTypeByteLength",0,o,"GetTypedArrayConstructor",0,a,"GetTypedArrayData",0,function(e,r,n,s,l,c,u){let f,d=o(n),g=a(n),p=c*r;if(Array.isArray(e)){if((3&s)!=0||(3&l)!=0)throw Error("byteOffset and byteStride must be a multiple of 4 for number[] data.");let t=s/4,o=l/4;if(t+(c-1)*o+r>e.length)throw Error("Last accessed index is out of bounds.");if(o<r)throw Error("Data stride cannot be smaller than the component size.");if(o!==r){let t=new g(p);return i(e,s,l,r,n,p,!1,(e,o)=>{for(let a=0;a<r;a++)t[o+a]=e[a]}),t}return new g(e.slice(t,t+p))}let h=s;if(ArrayBuffer.isView(e)?(f=e.buffer,h+=e.byteOffset):f=e,h+(c-1)*l+r*d>f.byteLength)throw Error("Last accessed byte is out of bounds.");let v=r*d;if(l<v)throw Error("Byte stride cannot be smaller than the component's byte size.");if(l!==v){let e=new g(p),t=new Uint8Array(f,h),o=new Uint8Array(e.buffer),a=r*d;for(let e=0,r=0,i=0;e<c;e++,r+=l,i+=a)o.set(t.subarray(r,r+a),i);return e}return(1!==d&&(h&d-1)!=0&&(t.Logger.Warn("Array must be aligned to border of element size. Data will be copied."),u=!0),u)?new g(f.slice(h,h+p*d)):new g(f,h,p)}])},6774,e=>{"use strict";var t=e.i(44674),r=e.i(55018),o=e.i(90176),a=e.i(40253),i=e.i(76532),n=e.i(51618),s=e.i(26225),l=e.i(70855),c=e.i(80434),u=e.i(49097),f=e.i(28978);let d=new RegExp(/^data:([^,]+\/[^,]+)?;base64,/i);class g extends n.RuntimeError{constructor(e,r){super(e,n.ErrorCodes.LoadFileError),this.name="LoadFileError",n.BaseError._setPrototypeOf(this,g.prototype),r instanceof t.WebRequest?this.request=r:this.file=r}}class p extends n.RuntimeError{constructor(e,t){super(e,n.ErrorCodes.RequestFileError),this.request=t,this.name="RequestFileError",n.BaseError._setPrototypeOf(this,p.prototype)}}class h extends n.RuntimeError{constructor(e,t){super(e,n.ErrorCodes.ReadFileError),this.file=t,this.name="ReadFileError",n.BaseError._setPrototypeOf(this,h.prototype)}}let v={DefaultRetryStrategy:i.RetryStrategy.ExponentialBackoff(),BaseUrl:"",CorsBehavior:"anonymous",PreprocessUrl:e=>e,ScriptBaseUrl:"",ScriptPreprocessUrl:e=>e,CleanUrl:e=>e=e.replace(/#/gm,"%23")},m=(e,t)=>{if((!e||0!==e.indexOf("data:"))&&v.CorsBehavior)if("string"==typeof v.CorsBehavior||v.CorsBehavior instanceof String)t.crossOrigin=v.CorsBehavior;else{let r=v.CorsBehavior(e);r&&(t.crossOrigin=r)}},K=(e,t,r,a,i)=>{let n=new FileReader,s={onCompleteObservable:new o.Observable,abort:()=>n.abort()};return n.onloadend=()=>s.onCompleteObservable.notifyObservers(s),i&&(n.onerror=()=>{i(new h(`Unable to read ${e.name}`,e))}),n.onload=e=>{t(e.target.result)},r&&(n.onprogress=r),a?n.readAsArrayBuffer(e):n.readAsText(e),s},b=(e,t,r,i,n,s,l)=>{if(e.name)return K(e,t,r,n,s?e=>{s(void 0,e)}:void 0);if(-1!==e.indexOf("file:")){let o=decodeURIComponent(e.substring(5).toLowerCase());0===o.indexOf("./")&&(o=o.substring(2));let i=a.FilesInputStore.FilesToLoad[o];if(i)return K(i,t,r,n,s?e=>s(void 0,new g(e.message,e.file)):void 0)}let{match:f,type:d}=U(e);if(f){let r={onCompleteObservable:new o.Observable,abort:()=>()=>{}};try{let r=n?P(e):C(e);t(r,void 0,d)}catch(e){s?s(void 0,e):c.Logger.Error(e.message||"Failed to parse the Data URL")}return u.TimingTools.SetImmediate(()=>{r.onCompleteObservable.notifyObservers(r)}),r}return y(e,(e,r)=>{t(e,r?.responseURL,r?.getResponseHeader("content-type"))},r,i,n,s?e=>{s(e.request,new g(e.message,e.request))}:void 0,l)},y=(e,a,i,n,s,u,f)=>{null!==n&&(n??(n=l.EngineStore.LastCreatedScene?.offlineProvider)),e=v.CleanUrl(e),e=v.PreprocessUrl(e);let d=v.BaseUrl+e,g=!1,h={onCompleteObservable:new o.Observable,abort:()=>g=!0},m=()=>{let e,o=new t.WebRequest,n=null,l=()=>{o&&(i&&o.removeEventListener("progress",i),e&&o.removeEventListener("readystatechange",e),o.removeEventListener("loadend",m))},m=()=>{l(),h.onCompleteObservable.notifyObservers(h),h.onCompleteObservable.clear(),i=void 0,e=null,m=null,u=void 0,f=void 0,a=void 0};h.abort=()=>{g=!0,m&&m(),o&&o.readyState!==(XMLHttpRequest.DONE||4)&&o.abort(),null!==n&&(clearTimeout(n),n=null),o=null};let K=e=>{let t=e.message||"Unknown error";u&&o?u(new p(t,o)):c.Logger.Error(t)},b=c=>{if(o){if(o.open("GET",d),f)try{f(o)}catch(e){K(e);return}s&&(o.responseType="arraybuffer"),i&&o.addEventListener("progress",i),m&&o.addEventListener("loadend",m),e=()=>{if(!g&&o&&o.readyState===(XMLHttpRequest.DONE||4)){if(e&&o.removeEventListener("readystatechange",e),o.status>=200&&o.status<300||0===o.status&&(!(0,r.IsWindowObjectExist)()||A())){let e=s?o.response:o.responseText;if(null!==e){try{a&&a(e,o)}catch(e){K(e)}return}}let i=v.DefaultRetryStrategy;if(i){let e=i(d,o,c);if(-1!==e){l(),o=new t.WebRequest,n=setTimeout(()=>b(c+1),e);return}}let f=new p("Error status: "+o.status+" "+o.statusText+" - Unable to load "+d,o);u&&u(f)}},o.addEventListener("readystatechange",e),o.send()}};b(0)};if(n&&n.enableSceneOffline&&!e.startsWith("blob:")){let t=e=>{e&&e.status>400?u&&u(e):m()};n.open(()=>{n&&n.loadFile(v.BaseUrl+e,e=>{!g&&a&&a(e),h.onCompleteObservable.notifyObservers(h)},i?e=>{!g&&i&&i(e)}:void 0,t,s)},t)}else m();return h},A=()=>"u">typeof location&&"file:"===location.protocol,U=e=>{let t=d.exec(e);return null===t||0===t.length?{match:!1,type:""}:{match:!0,type:t[0].replace("data:","").replace(";base64,","")}};function P(e){return(0,s.DecodeBase64ToBinary)(e.split(",")[1])}let C=e=>(0,s.DecodeBase64ToString)(e.split(",")[1]);e.s(["DecodeBase64UrlToBinary",0,P,"FileToolsOptions",0,v,"GetMimeType",0,e=>{let{match:t,type:r}=U(e);if(t)return r||void 0;let o=e.lastIndexOf(".");switch(e.substring(o+1).toLowerCase()){case"glb":return"model/gltf-binary";case"bin":return"application/octet-stream";case"gltf":return"model/gltf+json";case"jpg":case"jpeg":return"image/jpeg";case"png":return"image/png";case"webp":return"image/webp";case"ktx":return"image/ktx";case"ktx2":return"image/ktx2";case"avif":return"image/avif";default:return}},"IsBase64DataUrl",0,e=>d.test(e),"LoadFile",0,b,"LoadFileError",0,g,"LoadImage",0,(e,r,o,i,n="",c,u=l.EngineStore.LastCreatedEngine)=>{let d;if("u"<typeof HTMLImageElement&&!u?._features.forceBitmapOverHTMLImageElement)return o("LoadImage is only supported in web or BabylonNative environments."),null;let g=!1;if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))if("u">typeof Blob&&"u">typeof URL){let t;t=e instanceof ArrayBuffer?e:(0,f.GetBlobBufferSource)(e),d=URL.createObjectURL(new Blob([t],{type:n})),g=!0}else d=`data:${n};base64,`+(0,s.EncodeArrayBufferToBase64)(e);else e instanceof Blob?(d=URL.createObjectURL(e),g=!0):(d=v.CleanUrl(e),d=v.PreprocessUrl(d));let p=t=>{if(o){let r=d||e.toString();o(`Error while trying to load image: ${0===r.indexOf("http")||r.length<=128?r:r.slice(0,128)+"..."}`,t)}};if(u?._features.forceBitmapOverHTMLImageElement)return b(d,t=>{u.createImageBitmap(new Blob([t],{type:n}),{premultiplyAlpha:"none",colorSpaceConversion:"none",...c}).then(e=>{r(e),g&&URL.revokeObjectURL(d)}).catch(t=>{o&&o("Error while trying to load image: "+e,t)})},void 0,i||void 0,!0,(e,t)=>{p(t)}),null;let h=new Image;!1;m(d,h);let K=[],y=()=>{for(let e of K)e.target.removeEventListener(e.name,e.handler);K.length=0};for(let e of(K.push({target:h,name:"load",handler:()=>{y(),r(h),g&&h.src&&URL.revokeObjectURL(h.src)}}),K.push({target:h,name:"error",handler:e=>{y(),p(e),g&&h.src&&URL.revokeObjectURL(h.src)}}),K.push({target:document,name:"securitypolicyviolation",handler:e=>{if(e.blockedURI!==h.src||"report"===e.disposition)return;y();let t=Error(`CSP violation of policy ${e.effectiveDirective} ${e.blockedURI}. Current policy is ${e.originalPolicy}`);l.EngineStore.UseFallbackTexture=!1,p(t),g&&h.src&&URL.revokeObjectURL(h.src),h.src=""}}),K))e.target.addEventListener(e.name,e.handler);let A="blob:"===d.substring(0,5),U="data:"===d.substring(0,5),P=()=>{A||U||!t.WebRequest.IsCustomRequestAvailable?h.src=d:b(d,(e,t,r)=>{let o=new Blob([e],{type:!n&&r?r:n}),a=URL.createObjectURL(o);g=!0,h.src=a},void 0,i||void 0,!0,(e,t)=>{p(t)})};if(!A&&!U&&i&&i.enableTexturesOffline)i.open(()=>{i&&i.loadImage(d,h)},P);else{if(-1!==d.indexOf("file:")){let e=decodeURIComponent(d.substring(5).toLowerCase());if(a.FilesInputStore.FilesToLoad[e]&&"u">typeof URL){try{let t;try{t=URL.createObjectURL(a.FilesInputStore.FilesToLoad[e])}catch(r){t=URL.createObjectURL(a.FilesInputStore.FilesToLoad[e])}h.src=t,g=!0}catch(e){h.src=""}return h}}P()}return h},"ReadFile",0,K,"RequestFile",0,y,"SetCorsBehavior",0,m])},98551,e=>{"use strict";function t(e){let t=r(e),a=o(e);return t-e>e-a?a:t}function r(e){return e--,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,++e}function o(e){return e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,(e|=e>>16)-(e>>1)}e.s(["FloorPOT",0,o,"GetExponentOfTwo",0,function(e,a,i=2){let n;switch(i){case 1:n=o(e);break;case 2:n=t(e);break;default:n=r(e)}return Math.min(n,a)},"IsExponentOfTwo",0,function(e){let t=1;do t*=2;while(t<e)return t===e},"Mix",0,function(e,t,r){return e*(1-r)+t*r},"NearestPOT",0,t])},79488,e=>{"use strict";var t=e.i(80434),r=e.i(38116);class o{static Instantiate(e){if(this.RegisteredExternalClasses&&this.RegisteredExternalClasses[e])return this.RegisteredExternalClasses[e];let o=(0,r.GetClass)(e);if(o)return o;t.Logger.Warn(e+" not found, you may have missed an import.");let a=e.split("."),i="u">typeof window?window:"u">typeof globalThis?globalThis:this;for(let e=0,t=a.length;e<t;e++)i=i[a[e]];return"function"!=typeof i?null:i}}o.RegisteredExternalClasses={},e.s(["InstantiationTools",0,o])},13856,67560,e=>{"use strict";var t,r=e.i(90176),o=e.i(55018),a=e.i(80434);let i=(e,t,r)=>!e||e.getClassName&&"Mesh"===e.getClassName()?null:e.getClassName&&("SubMesh"===e.getClassName()||"PhysicsBody"===e.getClassName())?e.clone(t):e.clone?e.clone():Array.isArray(e)?e.slice():r&&"object"==typeof e?{...e}:null;class n{static DeepCopy(e,t,r,o,n=!1){for(let s of function(e){let t=[];do for(let r of Object.getOwnPropertyNames(e))-1===t.indexOf(r)&&t.push(r);while(e=Object.getPrototypeOf(e))return t}(e)){if("_"===s[0]&&(!o||-1===o.indexOf(s))||s.endsWith("Observable")||r&&-1!==r.indexOf(s))continue;let l=e[s],c=typeof l;if("function"!==c)try{if("object"===c)if(l instanceof Uint8Array)t[s]=Uint8Array.from(l);else if(l instanceof Array){if(t[s]=[],l.length>0)if("object"==typeof l[0])for(let e=0;e<l.length;e++){let r=i(l[e],t,n);-1===t[s].indexOf(r)&&t[s].push(r)}else t[s]=l.slice(0)}else t[s]=i(l,t,n);else t[s]=l}catch(e){a.Logger.Warn(e.message)}}}}e.s(["DeepCopier",0,n],67560);var s=e.i(87869),l=e.i(33945),c=e.i(44674),u=e.i(70855),f=e.i(6774),d=e.i(49097),g=e.i(79488),p=e.i(31919),h=e.i(98551);class v{static get BaseUrl(){return f.FileToolsOptions.BaseUrl}static set BaseUrl(e){f.FileToolsOptions.BaseUrl=e}static get CleanUrl(){return f.FileToolsOptions.CleanUrl}static set CleanUrl(e){f.FileToolsOptions.CleanUrl=e}static IsAbsoluteUrl(e){return 0===e.indexOf("//")||!(-1===e.indexOf("://")||-1===e.indexOf(".")||-1===e.indexOf("/")||e.indexOf(":")>e.indexOf("/"))&&(!!(e.indexOf("://")<e.indexOf("."))||0===e.indexOf("data:")||0===e.indexOf("blob:"))}static set ScriptBaseUrl(e){f.FileToolsOptions.ScriptBaseUrl=e}static get ScriptBaseUrl(){return f.FileToolsOptions.ScriptBaseUrl}static set CDNBaseUrl(e){t.ScriptBaseUrl=e,t.AssetBaseUrl=e}static set ScriptPreprocessUrl(e){f.FileToolsOptions.ScriptPreprocessUrl=e}static get ScriptPreprocessUrl(){return f.FileToolsOptions.ScriptPreprocessUrl}static get DefaultRetryStrategy(){return f.FileToolsOptions.DefaultRetryStrategy}static set DefaultRetryStrategy(e){f.FileToolsOptions.DefaultRetryStrategy=e}static get CorsBehavior(){return f.FileToolsOptions.CorsBehavior}static set CorsBehavior(e){f.FileToolsOptions.CorsBehavior=e}static get UseFallbackTexture(){return u.EngineStore.UseFallbackTexture}static set UseFallbackTexture(e){u.EngineStore.UseFallbackTexture=e}static get RegisteredExternalClasses(){return g.InstantiationTools.RegisteredExternalClasses}static set RegisteredExternalClasses(e){g.InstantiationTools.RegisteredExternalClasses=e}static get fallbackTexture(){return u.EngineStore.FallbackTexture}static set fallbackTexture(e){u.EngineStore.FallbackTexture=e}static FetchToRef(e,t,r,o,a,i){let n=((Math.abs(e)*r%r|0)+(Math.abs(t)*o%o|0)*r)*4;i.r=a[n]/255,i.g=a[n+1]/255,i.b=a[n+2]/255,i.a=a[n+3]/255}static Mix(e,t,r){return 0}static Instantiate(e){return g.InstantiationTools.Instantiate(e)}static SetImmediate(e){d.TimingTools.SetImmediate(e)}static IsExponentOfTwo(e){return!0}static FloatRound(e){return Math.fround(e)}static GetFilename(e){let t=e.lastIndexOf("/");return t<0?e:e.substring(t+1)}static GetFolderPath(e,t=!1){let r=e.lastIndexOf("/");return r<0?t?e:"":e.substring(0,r+1)}static ToDegrees(e){return 180*e/Math.PI}static ToRadians(e){return e*Math.PI/180}static SmoothAngleChange(e,t,r=.9){let o=this.ToRadians(e),a=this.ToRadians(t);return this.ToDegrees(Math.atan2((1-r)*Math.sin(a)+r*Math.sin(o),(1-r)*Math.cos(a)+r*Math.cos(o)))}static MakeArray(e,t){return!0!==t&&(void 0===e||null==e)?null:Array.isArray(e)?e:[e]}static GetPointerPrefix(e){return(0,o.IsWindowObjectExist)()&&!window.PointerEvent?"mouse":"pointer"}static SetCorsBehavior(e,t){(0,f.SetCorsBehavior)(e,t)}static SetReferrerPolicyBehavior(e,t){t.referrerPolicy=e}static get PreprocessUrl(){return f.FileToolsOptions.PreprocessUrl}static set PreprocessUrl(e){f.FileToolsOptions.PreprocessUrl=e}static LoadImage(e,t,r,o,a,i){return(0,f.LoadImage)(e,t,r,o,a,i)}static LoadFile(e,t,r,o,a,i){return(0,f.LoadFile)(e,t,r,o,a,i)}static async LoadFileAsync(e,t=!0){return await new Promise((r,o)=>{(0,f.LoadFile)(e,e=>{r(e)},void 0,void 0,t,(e,t)=>{o(t)})})}static GetAssetUrl(e){if(!e)return"";if(t.AssetBaseUrl&&e.startsWith(t._DefaultAssetsUrl)){let r=t.AssetBaseUrl.endsWith("/")?t.AssetBaseUrl.slice(0,-1):t.AssetBaseUrl;return e.replace(t._DefaultAssetsUrl,r)}return e}static GetBabylonScriptURL(e,r){if(!e)return"";if(e.startsWith(t._DefaultCdnUrl)){if(t.ScriptBaseUrl){let r=t.ScriptBaseUrl.endsWith("/")?t.ScriptBaseUrl.slice(0,-1):t.ScriptBaseUrl;e=e.replace(t._DefaultCdnUrl,r)}else if(t._CdnVersion){let r=`${t._DefaultCdnUrl}/v${t._CdnVersion}`;e.startsWith(r)||(e=e.replace(t._DefaultCdnUrl,r))}}return e=t.ScriptPreprocessUrl(e),r&&!t.IsAbsoluteUrl(e)&&(e=t.GetAbsoluteUrl(e)),e}static LoadBabylonScript(e,r,o,a){e=t.GetBabylonScriptURL(e),t.LoadScript(e,r,o)}static async LoadBabylonScriptAsync(e){return e=t.GetBabylonScriptURL(e),await t.LoadScriptAsync(e)}static _LoadScriptNative(e,r,o){_native&&t.LoadFile(e,e=>{try{Function(e).apply(null),r&&r()}catch(e){o&&o("LoadScript Error",e)}},void 0,void 0,!1,(e,t)=>{o&&o("LoadScript Error",t)})}static _LoadScriptWeb(e,t,r,a,i=!1){if("function"==typeof importScripts){try{importScripts(e),t&&t()}catch(t){r?.(`Unable to load script '${e}' in worker`,t)}return}if(!(0,o.IsWindowObjectExist)())return void r?.(`Cannot load script '${e}' outside of a window or a worker`);let n=document.getElementsByTagName("head")[0],s=document.createElement("script");i?(s.setAttribute("type","module"),s.innerText=e):(s.setAttribute("type","text/javascript"),s.setAttribute("src",e)),a&&(s.id=a),s.onload=()=>{t&&t()},s.onerror=t=>{r&&r(`Unable to load script '${e}'`,t)},n.appendChild(s)}static async LoadScriptAsync(e,t){return await new Promise((r,o)=>{this.LoadScript(e,()=>{r()},(e,t)=>{o(t||Error(e))},t)})}static ReadFileAsDataURL(e,t,o){let a=new FileReader,i={onCompleteObservable:new r.Observable,abort:()=>a.abort()};return a.onloadend=()=>{i.onCompleteObservable.notifyObservers(i)},a.onload=e=>{t(e.target.result)},a.onprogress=o,a.readAsDataURL(e),i}static ReadFile(e,t,r,o,a){return(0,f.ReadFile)(e,t,r,o,a)}static FileAsURL(e){let t=new Blob([e]);return window.URL.createObjectURL(t)}static Format(e,t=2){return e.toFixed(t)}static DeepCopy(e,t,r,o){n.DeepCopy(e,t,r,o)}static IsEmpty(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}static RegisterTopRootEvents(e,t){for(let r=0;r<t.length;r++){let o=t[r];e.addEventListener(o.name,o.handler,!1);try{window.parent&&window.parent.addEventListener(o.name,o.handler,!1)}catch(e){}}}static UnregisterTopRootEvents(e,t){for(let r=0;r<t.length;r++){let o=t[r];e.removeEventListener(o.name,o.handler);try{e.parent&&e.parent.removeEventListener(o.name,o.handler)}catch(e){}}}static async DumpFramebuffer(e,t,r,o,a="image/png",i,n){throw(0,l._WarnImport)("DumpTools")}static DumpData(e,t,r,o,a="image/png",i,n=!1,s=!1,c){throw(0,l._WarnImport)("DumpTools")}static async DumpDataAsync(e,t,r,o="image/png",a,i=!1,n=!1,s){throw(0,l._WarnImport)("DumpTools")}static _IsOffScreenCanvas(e){return void 0!==e.convertToBlob}static ToBlob(e,r,o="image/png",a){t._IsOffScreenCanvas(e)||e.toBlob||(e.toBlob=function(e,t,r){setTimeout(()=>{let o=atob(this.toDataURL(t,r).split(",")[1]),a=o.length,i=new Uint8Array(a);for(let e=0;e<a;e++)i[e]=o.charCodeAt(e);e(new Blob([i]))})}),t._IsOffScreenCanvas(e)?e.convertToBlob({type:o,quality:a}).then(e=>r(e)):e.toBlob(function(e){r(e)},o,a)}static DownloadBlob(e,r){if("download"in document.createElement("a")){if(!r){let e=new Date;r="screenshot_"+((e.getFullYear()+"-"+(e.getMonth()+1)).slice(2)+"-"+e.getDate()+"_"+e.getHours()+"-")+("0"+e.getMinutes()).slice(-2)+".png"}t.Download(e,r)}else if(e&&"u">typeof URL){let t=URL.createObjectURL(e),r=window.open("");if(!r)return;let o=r.document.createElement("img");o.onload=function(){URL.revokeObjectURL(t)},o.src=t,r.document.body.appendChild(o)}}static EncodeScreenshotCanvasData(e,r,o="image/png",a,i){if("string"!=typeof a&&r){if(r){if(t._IsOffScreenCanvas(e))return void e.convertToBlob({type:o,quality:i}).then(e=>{let t=new FileReader;t.readAsDataURL(e),t.onloadend=()=>{r(t.result)}});r(e.toDataURL(o,i))}}else this.ToBlob(e,function(e){e&&t.DownloadBlob(e,a),r&&r("")},o,i)}static Download(e,t){if("u"<typeof URL)return;let r=window.URL.createObjectURL(e),o=document.createElement("a");document.body.appendChild(o),o.style.display="none",o.href=r,o.download=t,o.addEventListener("click",()=>{o.parentElement&&o.parentElement.removeChild(o)}),o.click(),window.URL.revokeObjectURL(r)}static BackCompatCameraNoPreventDefault(e){return"boolean"==typeof e[0]?e[0]:"boolean"==typeof e[1]&&e[1]}static CreateScreenshot(e,t,r,o,a="image/png",i=!1,n){throw(0,l._WarnImport)("ScreenshotTools")}static async CreateScreenshotAsync(e,t,r,o="image/png",a){throw(0,l._WarnImport)("ScreenshotTools")}static CreateScreenshotUsingRenderTarget(e,t,r,o,a="image/png",i=1,n=!1,s,c=!1,u=!1,f=!0,d,g){throw(0,l._WarnImport)("ScreenshotTools")}static async CreateScreenshotUsingRenderTargetAsync(e,t,r,o="image/png",a=1,i=!1,n,s=!1,c=!1,u=!0,f,d){throw(0,l._WarnImport)("ScreenshotTools")}static RandomId(){return(0,p.RandomGUID)()}static IsBase64(e){return(0,f.IsBase64DataUrl)(e)}static DecodeBase64(e){return(0,f.DecodeBase64UrlToBinary)(e)}static get errorsCount(){return a.Logger.errorsCount}static Log(e){a.Logger.Log(e)}static Warn(e){a.Logger.Warn(e)}static Error(e){a.Logger.Error(e)}static get LogCache(){return a.Logger.LogCache}static ClearLogCache(){a.Logger.ClearLogCache()}static set LogLevels(e){a.Logger.LogLevels=e}static set PerformanceLogLevel(e){(e&t.PerformanceUserMarkLogLevel)===t.PerformanceUserMarkLogLevel?_native?.enablePerformanceLogging?(_native.enablePerformanceLogging(1),t.StartPerformanceCounter=t._StartMarkNative,t.EndPerformanceCounter=t._EndMarkNative):(t.StartPerformanceCounter=t._StartUserMark,t.EndPerformanceCounter=t._EndUserMark):(e&t.PerformanceConsoleLogLevel)===t.PerformanceConsoleLogLevel?_native?.enablePerformanceLogging?(_native.enablePerformanceLogging(2),t.StartPerformanceCounter=t._StartMarkNative,t.EndPerformanceCounter=t._EndMarkNative):(t.StartPerformanceCounter=t._StartPerformanceConsole,t.EndPerformanceCounter=t._EndPerformanceConsole):(t.StartPerformanceCounter=t._StartPerformanceCounterDisabled,t.EndPerformanceCounter=t._EndPerformanceCounterDisabled,_native?.disablePerformanceLogging?.())}static _StartPerformanceCounterDisabled(e,t){}static _EndPerformanceCounterDisabled(e,t){}static _StartUserMark(e,r=!0){if(!t._Performance){if(!(0,o.IsWindowObjectExist)())return;t._Performance=window.performance}r&&t._Performance.mark&&t._Performance.mark(e+"-Begin")}static _EndUserMark(e,r=!0){r&&t._Performance.mark&&(t._Performance.mark(e+"-End"),t._Performance.measure(e,e+"-Begin",e+"-End"))}static _StartPerformanceConsole(e,r=!0){r&&(t._StartUserMark(e,r),console.time&&console.time(e))}static _EndPerformanceConsole(e,r=!0){r&&(t._EndUserMark(e,r),console.timeEnd(e))}static _StartMarkNative(e,r=!0){if(r&&_native?.startPerformanceCounter)if(t._NativePerformanceCounterHandles.has(e))t.Warn(`Performance counter with name ${e} is already started.`);else{let r=_native.startPerformanceCounter(e);t._NativePerformanceCounterHandles.set(e,r)}}static _EndMarkNative(e,r=!0){if(r&&_native?.endPerformanceCounter){let r=t._NativePerformanceCounterHandles.get(e);r?(_native.endPerformanceCounter(r),t._NativePerformanceCounterHandles.delete(e)):t.Warn(`Performance counter with name ${e} was not started.`)}}static get Now(){return s.PrecisionDate.Now}static GetClassName(e,t=!1){let r=null;return!t&&e.getClassName?r=e.getClassName():(e instanceof Object&&(r=(t?e:Object.getPrototypeOf(e)).constructor.__bjsclassName__),r||(r=typeof e)),r}static First(e,t){for(let r of e)if(t(r))return r;return null}static getFullClassName(e,t=!1){let r=null,o=null;if(!t&&e.getClassName)r=e.getClassName();else{if(e instanceof Object){let a=t?e:Object.getPrototypeOf(e);r=a.constructor.__bjsclassName__,o=a.constructor.__bjsmoduleName__}r||(r=typeof e)}return r?(null!=o?o+".":"")+r:null}static async DelayAsync(e){await new Promise(t=>{setTimeout(()=>{t()},e)})}static IsSafari(){return!!(0,o.IsNavigatorAvailable)()&&/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}}t=v,v.AssetBaseUrl="",v.UseCustomRequestHeaders=!1,v.CustomRequestHeaders=c.WebRequest.CustomRequestHeaders,v.GetDOMTextContent=o.GetDOMTextContent,v._DefaultCdnUrl="https://cdn.babylonjs.com",v._CdnVersion="9.15.0",v._DefaultAssetsUrl="https://assets.babylonjs.com/core",v.LoadScript="u"<typeof _native?t._LoadScriptWeb:t._LoadScriptNative,v.GetAbsoluteUrl="object"==typeof document?e=>{let t=document.createElement("a");return t.href=e,t.href}:"function"==typeof URL&&"object"==typeof location?e=>new URL(e,location.origin).href:()=>{throw Error("Unable to get absolute URL. Override BABYLON.Tools.GetAbsoluteUrl to a custom implementation for the current context.")},v.NoneLogLevel=a.Logger.NoneLogLevel,v.MessageLogLevel=a.Logger.MessageLogLevel,v.WarningLogLevel=a.Logger.WarningLogLevel,v.ErrorLogLevel=a.Logger.ErrorLogLevel,v.AllLogLevel=a.Logger.AllLogLevel,v.IsWindowObjectExist=o.IsWindowObjectExist,v.PerformanceNoneLogLevel=0,v.PerformanceUserMarkLogLevel=1,v.PerformanceConsoleLogLevel=2,v._NativePerformanceCounterHandles=new Map,v.StartPerformanceCounter=t._StartPerformanceCounterDisabled,v.EndPerformanceCounter=t._EndPerformanceCounterDisabled;class m{constructor(e,t,r,o=0){this.iterations=e,this.index=o-1,this._done=!1,this._fn=t,this._successCallback=r}executeNext(){this._done||(this.index+1<this.iterations?(++this.index,this._fn(this)):this.breakLoop())}breakLoop(){this._done=!0,this._successCallback()}static Run(e,t,r,o=0){let a=new m(e,t,r,o);return a.executeNext(),a}static SyncAsyncForLoop(e,t,r,o,a,i=0){return m.Run(Math.ceil(e/t),o=>{a&&a()?o.breakLoop():setTimeout(()=>{for(let i=0;i<t;++i){let n=o.index*t+i;if(n>=e)break;if(r(n),a&&a()){o.breakLoop();break}}o.executeNext()},i)},o)}}let K=!1;e.s(["AsyncLoop",0,m,"RegisterTools",0,function(){K||(K=!0,v.Mix=h.Mix,v.IsExponentOfTwo=h.IsExponentOfTwo,u.EngineStore.FallbackTexture="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QBmRXhpZgAATU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAAExAAIAAAAQAAAATgAAAAAAAABgAAAAAQAAAGAAAAABcGFpbnQubmV0IDQuMC41AP/bAEMABAIDAwMCBAMDAwQEBAQFCQYFBQUFCwgIBgkNCw0NDQsMDA4QFBEODxMPDAwSGBITFRYXFxcOERkbGRYaFBYXFv/bAEMBBAQEBQUFCgYGChYPDA8WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFv/AABEIAQABAAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APH6KKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FCiiigD6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++gooooA+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gUKKKKAPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76CiiigD5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BQooooA+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/voKKKKAPl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FCiiigD6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++gooooA+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gUKKKKAPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76CiiigD5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BQooooA+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/voKKKKAPl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FCiiigD6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++gooooA+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gUKKKKAPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76Pl+iiivuj+BT6gooor4U/vo+X6KKK+6P4FPqCiiivhT++j5fooor7o/gU+oKKKK+FP76P//Z")},"Tools",0,v],13856)}]);
|
|
@@ -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,73272,e=>{"use strict";var r=e.i(37875);let t="helperFunctions",a=`const PI: f32=3.1415926535897932384626433832795;const TWO_PI: f32=6.283185307179586;const HALF_PI: f32=1.5707963267948966;const RECIPROCAL_PI: f32=0.3183098861837907;const RECIPROCAL_PI2: f32=0.15915494309189535;const RECIPROCAL_PI4: f32=0.07957747154594767;const HALF_MIN: f32=5.96046448e-08;
|
|
2
2
|
const LinearEncodePowerApprox: f32=2.2;const GammaEncodePowerApprox: f32=1.0/LinearEncodePowerApprox;const LuminanceEncodeApprox: vec3f=vec3f(0.2126,0.7152,0.0722);const Epsilon:f32=0.0000001;fn square(x: f32)->f32 {return x*x;}
|
|
3
3
|
fn saturate(x: f32)->f32 {return clamp(x,0.0,1.0);}
|
|
4
4
|
fn saturateVec3(x: vec3f)->vec3f {return clamp(x,vec3f(),vec3f(1.0));}
|
|
@@ -16,9 +16,9 @@ b11/det,(a22*a00-a02*a20)/det,(-a12*a00+a02*a10)/det,
|
|
|
16
16
|
b21/det,(-a21*a00+a01*a20)/det,(a11*a00-a01*a10)/det);}
|
|
17
17
|
#if USE_EXACT_SRGB_CONVERSIONS
|
|
18
18
|
fn toLinearSpaceExact(color: vec3f)->vec3f
|
|
19
|
-
{let nearZeroSection: vec3f=0.0773993808*color;let remainingSection: vec3f=pow(0.947867299*(color+vec3f(0.055)),vec3f(2.4));return
|
|
19
|
+
{let nearZeroSection: vec3f=0.0773993808*color;let remainingSection: vec3f=pow(0.947867299*(color+vec3f(0.055)),vec3f(2.4));return select(remainingSection,nearZeroSection,color<=vec3f(0.04045));}
|
|
20
20
|
fn toGammaSpaceExact(color: vec3f)->vec3f
|
|
21
|
-
{let nearZeroSection: vec3f=12.92*color;let remainingSection: vec3f=1.055*pow(color,vec3f(0.41666))-vec3f(0.055);return
|
|
21
|
+
{let nearZeroSection: vec3f=12.92*color;let remainingSection: vec3f=1.055*pow(color,vec3f(0.41666))-vec3f(0.055);return select(remainingSection,nearZeroSection,color<=vec3f(0.0031308));}
|
|
22
22
|
#endif
|
|
23
23
|
fn toLinearSpace(color: f32)->f32
|
|
24
24
|
{
|
|
@@ -84,7 +84,7 @@ fn max3(v: vec3f)->f32 {return max(v.x,max(v.y,v.z));}
|
|
|
84
84
|
fn uint2float(i: u32)->f32 {return bitcast<f32>(0x3F800000u | (i>>9u))-1.0;}
|
|
85
85
|
fn plasticSequence(rstate: u32)->vec2f {return vec2f(uint2float(rstate*3242174889u),
|
|
86
86
|
uint2float(rstate*2447445414u));}
|
|
87
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["helperFunctionsWGSL",0,{name:t,shader:a}])},
|
|
87
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["helperFunctionsWGSL",0,{name:t,shader:a}])},84327,e=>{"use strict";var r=e.i(37875);let t="sceneUboDeclaration",a=`struct Scene {viewProjection : mat4x4<f32>,
|
|
88
88
|
#ifdef MULTIVIEW
|
|
89
89
|
viewProjectionR : mat4x4<f32>,
|
|
90
90
|
#endif
|
|
@@ -94,16 +94,16 @@ vEyePosition : vec4<f32>,
|
|
|
94
94
|
inverseProjection : mat4x4<f32>,};
|
|
95
95
|
#define SCENE_UBO
|
|
96
96
|
var<uniform> scene : Scene;
|
|
97
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["sceneUboDeclarationWGSL",0,{name:t,shader:a}])},
|
|
97
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["sceneUboDeclarationWGSL",0,{name:t,shader:a}])},2586,30368,95676,e=>{"use strict";var r=e.i(37875);let t="meshUboDeclaration",a=`struct Mesh {world : mat4x4<f32>,
|
|
98
98
|
visibility : f32,};var<uniform> mesh : Mesh;
|
|
99
99
|
#define WORLD_UBO
|
|
100
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["meshUboDeclarationWGSL",0,{name:t,shader:a}],
|
|
100
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["meshUboDeclarationWGSL",0,{name:t,shader:a}],2586);let o="mainUVVaryingDeclaration",f=`#ifdef MAINUV{X}
|
|
101
101
|
varying vMainUV{X}: vec2f;
|
|
102
102
|
#endif
|
|
103
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["mainUVVaryingDeclarationWGSL",0,{name:o,shader:f}],
|
|
103
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["mainUVVaryingDeclarationWGSL",0,{name:o,shader:f}],30368);let i="logDepthDeclaration",v=`#ifdef LOGARITHMICDEPTH
|
|
104
104
|
uniform logarithmicDepthConstant: f32;varying vFragmentDepth: f32;
|
|
105
105
|
#endif
|
|
106
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["logDepthDeclarationWGSL",0,{name:i,shader:v}],
|
|
106
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["logDepthDeclarationWGSL",0,{name:i,shader:v}],95676)},4294,71990,e=>{"use strict";var r=e.i(37875);let t="clipPlaneFragmentDeclaration",a=`#ifdef CLIPPLANE
|
|
107
107
|
varying fClipDistance: f32;
|
|
108
108
|
#endif
|
|
109
109
|
#ifdef CLIPPLANE2
|
|
@@ -121,7 +121,7 @@ varying fClipDistance5: f32;
|
|
|
121
121
|
#ifdef CLIPPLANE6
|
|
122
122
|
varying fClipDistance6: f32;
|
|
123
123
|
#endif
|
|
124
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["clipPlaneFragmentDeclarationWGSL",0,{name:t,shader:a}],
|
|
124
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["clipPlaneFragmentDeclarationWGSL",0,{name:t,shader:a}],4294);let o="clipPlaneFragment",f=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
|
|
125
125
|
if (false) {}
|
|
126
126
|
#endif
|
|
127
127
|
#ifdef CLIPPLANE
|
|
@@ -148,7 +148,7 @@ else if (fragmentInputs.fClipDistance5>0.0)
|
|
|
148
148
|
else if (fragmentInputs.fClipDistance6>0.0)
|
|
149
149
|
{discard;}
|
|
150
150
|
#endif
|
|
151
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["clipPlaneFragmentWGSL",0,{name:o,shader:f}],
|
|
151
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["clipPlaneFragmentWGSL",0,{name:o,shader:f}],71990)},11557,18510,e=>{"use strict";var r=e.i(37875);let t="fogFragmentDeclaration",a=`#ifdef FOG
|
|
152
152
|
#define FOGMODE_NONE 0.
|
|
153
153
|
#define FOGMODE_EXP 1.
|
|
154
154
|
#define FOGMODE_EXP2 2.
|
|
@@ -162,14 +162,14 @@ else if (FOGMODE_EXP2==uniforms.vFogInfos.x)
|
|
|
162
162
|
{fogCoeff=1.0/pow(E,fogDistance*fogDistance*fogDensity*fogDensity);}
|
|
163
163
|
return clamp(fogCoeff,0.0,1.0);}
|
|
164
164
|
#endif
|
|
165
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["fogFragmentDeclarationWGSL",0,{name:t,shader:a}],
|
|
165
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["fogFragmentDeclarationWGSL",0,{name:t,shader:a}],11557);let o="fogFragment",f=`#ifdef FOG
|
|
166
166
|
var fog: f32=CalcFogFactor();
|
|
167
167
|
#ifdef PBR
|
|
168
168
|
fog=toLinearSpace(fog);
|
|
169
169
|
#endif
|
|
170
170
|
color= vec4f(mix(uniforms.vFogColor,color.rgb,fog),color.a);
|
|
171
171
|
#endif
|
|
172
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["fogFragmentWGSL",0,{name:o,shader:f}],
|
|
172
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["fogFragmentWGSL",0,{name:o,shader:f}],18510)},35017,36028,83805,e=>{"use strict";var r=e.i(37875);let t="prePassDeclaration",a=`#ifdef PREPASS
|
|
173
173
|
#ifdef PREPASS_LOCAL_POSITION
|
|
174
174
|
varying vPosition : vec3f;
|
|
175
175
|
#endif
|
|
@@ -183,11 +183,11 @@ varying vNormViewDepth: f32;
|
|
|
183
183
|
varying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;
|
|
184
184
|
#endif
|
|
185
185
|
#endif
|
|
186
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["prePassDeclarationWGSL",0,{name:t,shader:a}],
|
|
186
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["prePassDeclarationWGSL",0,{name:t,shader:a}],35017);let o="oitDeclaration",f=`#ifdef ORDER_INDEPENDENT_TRANSPARENCY
|
|
187
187
|
#define MAX_DEPTH 99999.0
|
|
188
188
|
var oitDepthSamplerSampler: sampler;var oitDepthSampler: texture_2d<f32>;var oitFrontColorSamplerSampler: sampler;var oitFrontColorSampler: texture_2d<f32>;
|
|
189
189
|
#endif
|
|
190
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["oitDeclarationWGSL",0,{name:o,shader:f}],
|
|
190
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["oitDeclarationWGSL",0,{name:o,shader:f}],36028);let i="lightUboDeclaration",v=`#ifdef LIGHT{X}
|
|
191
191
|
struct Light{X}
|
|
192
192
|
{vLightData: vec4f,
|
|
193
193
|
vLightDiffuse: vec4f,
|
|
@@ -264,7 +264,7 @@ uniform lightMatrix{X}: mat4x4f;
|
|
|
264
264
|
#endif
|
|
265
265
|
#endif
|
|
266
266
|
#endif
|
|
267
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["lightUboDeclarationWGSL",0,{name:i,shader:v}],
|
|
267
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["lightUboDeclarationWGSL",0,{name:i,shader:v}],83805)},50273,96429,e=>{"use strict";var r=e.i(37875);let t="ltcHelperFunctions",a=`fn LTCUv(N: vec3f,V: vec3f,roughness: f32)->vec2f {var LUTSIZE: f32=64.0;var LUTSCALE: f32=( LUTSIZE-1.0 )/LUTSIZE;var LUTBIAS:f32=0.5/LUTSIZE;var dotNV:f32=saturate( dot( N,V ) );var uv:vec2f=vec2f( roughness,sqrt( 1.0-dotNV ) );uv=uv*LUTSCALE+LUTBIAS;return uv;}
|
|
268
268
|
fn LTCClippedSphereFormFactor( f:vec3f )->f32 {var l: f32=length( f );return max( ( l*l+f.z )/( l+1.0 ),0.0 );}
|
|
269
269
|
fn LTCEdgeVectorFormFactor( v1:vec3f,v2:vec3f )->vec3f {var x:f32=dot( v1,v2 );var y:f32=abs( x );var a:f32=0.8543985+( 0.4965155+0.0145206*y )*y;var b:f32=3.4175940+( 4.1616724+y )*y;var v:f32=a/b;var thetaSintheta:f32=0.0;if( x>0.0 )
|
|
270
270
|
{thetaSintheta=v;}
|
|
@@ -308,7 +308,7 @@ vec3f(1,0,0),
|
|
|
308
308
|
vec3f(0,1,0),
|
|
309
309
|
vec3f(0,0,1)
|
|
310
310
|
);result.Diffuse=LTCEvaluateWithEmission(normal,viewDir,position,mInvEmpty,rectCoords0,rectCoords1,rectCoords2,rectCoords3,emissionTexture,emissionTextureSampler);return result;}
|
|
311
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["ltcHelperFunctionsWGSL",0,{name:t,shader:a}],
|
|
311
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["ltcHelperFunctionsWGSL",0,{name:t,shader:a}],50273);let o="clusteredLightingFunctions",f=`struct ClusteredLight {vLightData: vec4f,
|
|
312
312
|
vLightDiffuse: vec4f,
|
|
313
313
|
vLightSpecular: vec4f,
|
|
314
314
|
vLightDirection: vec4f,
|
|
@@ -321,7 +321,7 @@ textureLoad(lightDataTexture,vec2u(3,index),0),
|
|
|
321
321
|
textureLoad(lightDataTexture,vec2u(4,index),0)
|
|
322
322
|
);}
|
|
323
323
|
fn getClusteredSliceIndex(sliceData: vec2f,viewDepth: f32)->i32 {return i32(log(viewDepth)*sliceData.x+sliceData.y);}
|
|
324
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["clusteredLightingFunctionsWGSL",0,{name:o,shader:f}],
|
|
324
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["clusteredLightingFunctionsWGSL",0,{name:o,shader:f}],96429)},34458,e=>{"use strict";var r=e.i(37875);let t="shadowsFragmentFunctions",a=`#ifdef SHADOWS
|
|
325
325
|
#ifndef SHADOWFLOAT
|
|
326
326
|
fn unpack(color: vec4f)->f32
|
|
327
327
|
{const bit_shift: vec4f= vec4f(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(color,bit_shift);}
|
|
@@ -613,7 +613,7 @@ fn computeShadowWithCSMPCSS32(layer: i32,vPositionFromLight: vec4f,depthMetric:
|
|
|
613
613
|
fn computeShadowWithCSMPCSS64(layer: i32,vPositionFromLight: vec4f,depthMetric: f32,depthTexture: texture_2d_array<f32>,depthSampler: sampler,shadowTexture: texture_depth_2d_array,shadowSampler: sampler_comparison,shadowMapSizeInverse: f32,lightSizeUV: f32,darkness: f32,frustumEdgeFalloff: f32,lightSizeUVCorrection: vec2f,depthCorrection: f32,penumbraDarkness: f32)->f32
|
|
614
614
|
{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthTexture,depthSampler,shadowTexture,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}
|
|
615
615
|
#endif
|
|
616
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["shadowsFragmentFunctionsWGSL",0,{name:t,shader:a}])},
|
|
616
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["shadowsFragmentFunctionsWGSL",0,{name:t,shader:a}])},73081,e=>{"use strict";var r=e.i(37875);let t="imageProcessingDeclaration",a=`#ifdef EXPOSURE
|
|
617
617
|
uniform exposureLinear: f32;
|
|
618
618
|
#endif
|
|
619
619
|
#ifdef CONTRAST
|
|
@@ -639,7 +639,7 @@ uniform colorTransformSettings: vec4f;
|
|
|
639
639
|
#ifdef DITHER
|
|
640
640
|
uniform ditherIntensity: f32;
|
|
641
641
|
#endif
|
|
642
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["imageProcessingDeclarationWGSL",0,{name:t,shader:a}])},
|
|
642
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["imageProcessingDeclarationWGSL",0,{name:t,shader:a}])},40995,e=>{"use strict";var r=e.i(37875);let t="imageProcessingFunctions",a=`#if TONEMAPPING==3
|
|
643
643
|
const PBRNeutralStartCompression: f32=0.8-0.04;const PBRNeutralDesaturation: f32=0.15;fn PBRNeutralToneMapping( color: vec3f )->vec3f {var x: f32=min(color.r,min(color.g,color.b));var offset: f32=select(0.04,x-6.25*x*x,x<0.08);var result=color;result-=offset;var peak: f32=max(result.r,max(result.g,result.b));if (peak<PBRNeutralStartCompression) {return result;}
|
|
644
644
|
var d: f32=1.-PBRNeutralStartCompression;var newPeak: f32=1.-d*d/(peak+d-PBRNeutralStartCompression);result*=newPeak/peak;var g: f32=1.-1./(PBRNeutralDesaturation*(peak-newPeak)+1.);return mix(result,newPeak* vec3f(1,1,1),g);}
|
|
645
645
|
#endif
|
|
@@ -701,7 +701,7 @@ var luma: f32=getLuminance(rgb);var curveMix: vec2f=clamp( vec2f(luma*3.0-1.5,lu
|
|
|
701
701
|
var rand: f32=getRand(fragmentInputs.position.xy*uniforms.vInverseScreenSize);var dither: f32=mix(-uniforms.ditherIntensity,uniforms.ditherIntensity,rand);rgb=saturateVec3(rgb+ vec3f(dither));
|
|
702
702
|
#endif
|
|
703
703
|
#define CUSTOM_IMAGEPROCESSINGFUNCTIONS_UPDATERESULT_ATEND
|
|
704
|
-
return vec4f(rgb,result.a);}`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["imageProcessingFunctionsWGSL",0,{name:t,shader:a}])},
|
|
704
|
+
return vec4f(rgb,result.a);}`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["imageProcessingFunctionsWGSL",0,{name:t,shader:a}])},15535,e=>{"use strict";var r=e.i(37875);let t="textureRepetitionFunctions",a=`#if TEXTURE_REPETITION_MODE>0
|
|
705
705
|
fn _texRepHash4(p: vec2f)->vec4f {return fract(sin(vec4f(
|
|
706
706
|
1.0+dot(p,vec2f(37.0,17.0)),
|
|
707
707
|
2.0+dot(p,vec2f(11.0,47.0)),
|
|
@@ -742,16 +742,16 @@ fn TEXRD(t: texture_2d<f32>,ts: sampler,uv: vec2f)->vec4f {return _texRepSample(
|
|
|
742
742
|
fn TEXRD(t: texture_2d<f32>,ts: sampler,uv: vec2f)->vec4f {return textureSample(t,ts,uv);}
|
|
743
743
|
#endif
|
|
744
744
|
#define TEXRD_DEFINED
|
|
745
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["textureRepetitionFunctionsWGSL",0,{name:t,shader:a}])},
|
|
745
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["textureRepetitionFunctionsWGSL",0,{name:t,shader:a}])},27305,8760,10238,e=>{"use strict";var r=e.i(37875);let t="depthPrePass",a=`#ifdef DEPTHPREPASS
|
|
746
746
|
#if !defined(PREPASS) && !defined(ORDER_INDEPENDENT_TRANSPARENCY)
|
|
747
747
|
fragmentOutputs.color= vec4f(0.,0.,0.,1.0);
|
|
748
748
|
#endif
|
|
749
749
|
return fragmentOutputs;
|
|
750
750
|
#endif
|
|
751
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["depthPrePassWGSL",0,{name:t,shader:a}],
|
|
751
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[t]||(r.ShaderStore.IncludesShadersStoreWGSL[t]=a),e.s(["depthPrePassWGSL",0,{name:t,shader:a}],27305);let o="logDepthFragment",f=`#ifdef LOGARITHMICDEPTH
|
|
752
752
|
fragmentOutputs.fragDepth=log2(fragmentInputs.vFragmentDepth)*uniforms.logarithmicDepthConstant*0.5;
|
|
753
753
|
#endif
|
|
754
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["logDepthFragmentWGSL",0,{name:o,shader:f}],
|
|
754
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[o]||(r.ShaderStore.IncludesShadersStoreWGSL[o]=f),e.s(["logDepthFragmentWGSL",0,{name:o,shader:f}],8760);let i="oitFragment",v=`#ifdef ORDER_INDEPENDENT_TRANSPARENCY
|
|
755
755
|
var fragDepth: f32=fragmentInputs.position.z;
|
|
756
756
|
#ifdef ORDER_INDEPENDENT_TRANSPARENCY_16BITS
|
|
757
757
|
var halfFloat: u32=pack2x16float( vec2f(fragDepth));var full: vec2f=unpack2x16float(halfFloat);fragDepth=full.x;
|
|
@@ -776,4 +776,4 @@ if (fragDepth>nearestDepth && fragDepth<furthestDepth) {
|
|
|
776
776
|
#endif
|
|
777
777
|
fragmentOutputs.depth=vec2f(-fragDepth,fragDepth);return fragmentOutputs;}
|
|
778
778
|
#endif
|
|
779
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["oitFragmentWGSL",0,{name:i,shader:v}],
|
|
779
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[i]||(r.ShaderStore.IncludesShadersStoreWGSL[i]=v),e.s(["oitFragmentWGSL",0,{name:i,shader:v}],10238)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32602,t=>{"use strict";var e=t.i(90176),i=t.i(95410),n=t.i(45984);class a{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(t,e,a,s){if(this._events=[],this._currentFrame=0,this._originalValue=[],this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=e,this._target=t,this._scene=a,this._host=s,this._activeTargets=[],e._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===n.Animation.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=i.Matrix.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,0!==this._minFrame){const t={frame:0,value:this._keys[0].value};this._keys.splice(0,0,t)}if(this._target instanceof Array){let t=0;for(const e of this._target)this._preparePath(e,t),this._getOriginalValues(t),t++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const o=e.getEvents();if(o&&o.length>0)for(const t of o)this._events.push(t._clone());this._enableBlending=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(t,e=0){let i=this._animation.targetPropertyPath;if(i.length>1){let n=t;for(let t=0;t<i.length-1;t++){let e=i[t];if(void 0===(n=n[e]))throw Error(`Invalid property (${e}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[e]=n}else this._targetPath=i[0],this._activeTargets[e]=t;if(void 0===this._activeTargets[e][this._targetPath])throw Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(t=!1){if(t)if(this._target instanceof Array){let t=0;for(let e of this._target)void 0!==this._originalValue[t]&&this._setValue(e,this._activeTargets[t],this._originalValue[t],-1,t),t++}else void 0!==this._originalValue[0]&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){let t=this._animation.runtimeAnimations.indexOf(this);t>-1&&this._animation.runtimeAnimations.splice(t,1)}setValue(t,e){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){let n=this._target[i];this._setValue(n,this._activeTargets[i],t,e,i)}return}this._setValue(this._target,this._directTarget,t,e,0)}_getOriginalValues(t=0){let e,i=this._activeTargets[t];if(n.Animation.InheritOriginalValueFromActiveAnimations){let e=this._scene._activeAnimatables;for(let n=0;n<e.length;n++){let a=e[n]._runtimeAnimations;for(let e=0;e<a.length;e++){let n=a[e];if(n!==this&&n._targetPath===this._targetPath){for(let e=0;e<n._activeTargets.length;e++)if(n._activeTargets[e]===i&&void 0!==n._originalValue[e])return void(n._originalValue[e]&&n._originalValue[e].clone?this._originalValue[t]=n._originalValue[e].clone():this._originalValue[t]=n._originalValue[e])}}}}(e=i.getLocalMatrix&&"_matrix"===this._targetPath?i.getLocalMatrix():i[this._targetPath])&&e.clone?this._originalValue[t]=e.clone():this._originalValue[t]=e}_registerTargetForLateAnimationBinding(t,e){let i=t.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[t.targetPath]||(i._lateAnimationHolders[t.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:e}),t.isAdditive?(i._lateAnimationHolders[t.targetPath].additiveAnimations.push(t),i._lateAnimationHolders[t.targetPath].totalAdditiveWeight+=t.weight):(i._lateAnimationHolders[t.targetPath].animations.push(t),i._lateAnimationHolders[t.targetPath].totalWeight+=t.weight)}_setValue(t,e,a,s,o){if(this._currentActiveTarget=e,this._weight=s,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){let t=e[this._targetPath];t.clone?this._originalBlendValue=t.clone():this._originalBlendValue=t}this._originalBlendValue.m?n.Animation.AllowMatrixDecomposeForInterpolation?this._currentValue?i.Matrix.DecomposeLerpToRef(this._originalBlendValue,a,this._blendingFactor,this._currentValue):this._currentValue=i.Matrix.DecomposeLerp(this._originalBlendValue,a,this._blendingFactor):this._currentValue?i.Matrix.LerpToRef(this._originalBlendValue,a,this._blendingFactor,this._currentValue):this._currentValue=i.Matrix.Lerp(this._originalBlendValue,a,this._blendingFactor):this._currentValue=n.Animation._UniversalLerp(this._originalBlendValue,a,this._blendingFactor);let s=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=s}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(a):this._currentValue=a:a?.clone?this._currentValue=a.clone():this._currentValue=a;-1!==s?this._registerTargetForLateAnimationBinding(this,this._originalValue[o]):this._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[o],e[this._targetPath]):e[this._targetPath]=this._originalValue[o]+this._currentValue:e[this._targetPath]=this._currentValue,t.markAsDirty&&t.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&null==this._target._animationPropertiesOverride?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(t,e=-1){let i=this._animation.getKeys();t<i[0].frame?t=i[0].frame:t>i[i.length-1].frame&&(t=i[i.length-1].frame);let n=this._events;if(n.length)for(let e=0;e<n.length;e++)n[e].onlyOnce||(n[e].isDone=n[e].frame<t);this._currentFrame=t;let a=this._animation._interpolate(t,this._animationState);this.setValue(a,e)}_prepareForSpeedRatioChange(t){let e=this._previousElapsedTime*(this._animation.framePerSecond*t)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-e}animate(t,e,i,a,s,o=-1){let r,l,h=this._animation,m=h.targetPropertyPath;if(!m||m.length<1)return this._stopped=!0,!1;let _=!0,g=this._events;if(this._coreRuntimeAnimation)l=i-e,r=this._coreRuntimeAnimation.currentFrame,this._currentFrame=r,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{let o;(e<this._minFrame||e>this._maxFrame)&&(e=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),l=i-e;let m=t*(h.framePerSecond*s)/1e3+this._absoluteFrameOffset,u=0,d=!1,p=a&&this._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_YOYO;if(p){let t=Math.sin((m-e)/l*Math.PI);m=Math.abs(t)*l+e;let i=t>=0?1:-1;this._yoyoDirection!==i&&(d=!0),this._yoyoDirection=i}if(this._previousElapsedTime=t,this._previousAbsoluteFrame=m,!a&&i>=e&&(m>=l&&s>0||m<=0&&s<0))_=!1,u=h.evaluate(i);else if(!a&&e>=i&&(m<=l&&s<0||m>=0&&s>0))_=!1,u=h.evaluate(e);else if(this._animationState.loopMode!==n.Animation.ANIMATIONLOOPMODE_CYCLE){let t=i.toString()+e.toString();if(!this._offsetsCache[t]){this._animationState.repeatCount=0,this._animationState.loopMode=n.Animation.ANIMATIONLOOPMODE_CYCLE;let a=h._interpolate(e,this._animationState),s=h._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),h.dataType){case n.Animation.ANIMATIONTYPE_FLOAT:this._offsetsCache[t]=s-a;break;case n.Animation.ANIMATIONTYPE_QUATERNION:case n.Animation.ANIMATIONTYPE_VECTOR3:case n.Animation.ANIMATIONTYPE_VECTOR2:case n.Animation.ANIMATIONTYPE_SIZE:case n.Animation.ANIMATIONTYPE_COLOR3:this._offsetsCache[t]=s.subtract(a)}this._highLimitsCache[t]=s}u=this._highLimitsCache[t],o=this._offsetsCache[t]}if(void 0===o)switch(h.dataType){case n.Animation.ANIMATIONTYPE_FLOAT:o=0;break;case n.Animation.ANIMATIONTYPE_QUATERNION:o=n._StaticOffsetValueQuaternion;break;case n.Animation.ANIMATIONTYPE_VECTOR3:o=n._StaticOffsetValueVector3;break;case n.Animation.ANIMATIONTYPE_VECTOR2:o=n._StaticOffsetValueVector2;break;case n.Animation.ANIMATIONTYPE_SIZE:o=n._StaticOffsetValueSize;break;case n.Animation.ANIMATIONTYPE_COLOR3:o=n._StaticOffsetValueColor3;break;case n.Animation.ANIMATIONTYPE_COLOR4:o=n._StaticOffsetValueColor4}if(this._host&&this._host.syncRoot){let t=this._host.syncRoot,i=(t.masterFrame-t.fromFrame)/(t.toFrame-t.fromFrame);r=e+l*i}else r=m>0&&e>i||m<0&&e<i?_&&0!==l?i+m%l:e:_&&0!==l?e+m%l:i;if(!p&&(s>0&&this.currentFrame>r||s<0&&this.currentFrame<r)||p&&d){this._onLoop();for(let t=0;t<g.length;t++)g[t].onlyOnce||(g[t].isDone=!1);this._animationState.key=s>0?0:h.getKeys().length-1}this._currentFrame=r,this._animationState.repeatCount=0===l?0:m/l|0,this._animationState.highLimitValue=u,this._animationState.offsetValue=o}let u=h._interpolate(r,this._animationState);if(this.setValue(u,o),g.length){for(let t=0;t<g.length;t++)if(l>=0&&r>=g[t].frame&&g[t].frame>=e||l<0&&r<=g[t].frame&&g[t].frame<=e){let e=g[t];e.isDone||(e.onlyOnce&&(g.splice(t,1),t--),e.isDone=!0,e.action(r))}}return _||(this._stopped=!0),_}}var s=t.i(87869);class o{get syncRoot(){return this._syncRoot}get masterFrame(){return 0===this._runtimeAnimations.length?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(t){if(-1===t){this._weight=-1;return}this._weight=Math.min(Math.max(t,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(t){for(let e=0;e<this._runtimeAnimations.length;e++)this._runtimeAnimations[e]._prepareForSpeedRatioChange(t);this._speedRatio=t,null!==this._goToFrame&&this.goToFrame(this._goToFrame)}get elapsedTime(){return null===this._localDelayOffset?0:this._scene._animationTime-this._localDelayOffset}constructor(t,i,n=0,a=100,s=!1,o=1,r,l,h,m=!1,_=0){this.target=i,this.fromFrame=n,this.toFrame=a,this.loopAnimation=s,this.onAnimationEnd=r,this.onAnimationLoop=h,this.isAdditive=m,this.playOrder=_,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=[],this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new e.Observable,this.onAnimationLoopObservable=new e.Observable,this._scene=t,l&&this.appendAnimations(i,l),this._speedRatio=o,t._activeAnimatables.push(this)}syncWith(t){if(this._syncRoot=t,t){let t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(t,e){for(let i=0;i<e.length;i++){let n=new a(t,e[i],this._scene,this);n._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(n)}}getAnimationByTargetProperty(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i].animation;return null}getRuntimeAnimationByTargetProperty(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i];return null}reset(){let t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)e[i].animation.enableBlending=!0,e[i].animation.blendingSpeed=t}disableBlending(){let t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].animation.enableBlending=!1}goToFrame(t,e=!1){let i=this._runtimeAnimations;if(i[0]){let e=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;let n=0===this.speedRatio?0:(t-this._frameToSyncFromJump)/e*1e3/this.speedRatio;this._manualJumpDelay=-n}for(let n=0;n<i.length;n++)i[n].goToFrame(t,e?this._weight:-1);this._goToFrame=t}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(t,e,i=!1,n=!1){if(t||e){let a=this._scene._activeAnimatables.indexOf(this);if(a>-1){let s=this._runtimeAnimations;for(let i=s.length-1;i>=0;i--){let n=s[i];(!t||n.animation.name==t)&&(!e||e(n.target))&&(n.dispose(),s.splice(i,1))}0==s.length&&(i||this._scene._activeAnimatables.splice(a,1),n||this._raiseOnAnimationEnd())}}else{let t=this._scene._activeAnimatables.indexOf(this);if(t>-1){i||this._scene._activeAnimatables.splice(t,1);let e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(t=>{this.onAnimationEndObservable.add(()=>{t(this)},void 0,void 0,this,!0)})}_animate(t){let e;if(this._paused)return this.animationStarted=!1,null===this._pausedDelay&&(this._pausedDelay=t),!0;if(null===this._localDelayOffset?(this._localDelayOffset=t,this._pausedDelay=null):null!==this._pausedDelay&&(this._localDelayOffset+=t-this._pausedDelay,this._pausedDelay=null),null!==this._manualJumpDelay&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!o.ProcessPausedAnimatables&&0===this._weight&&0===this._previousWeight)return!0;this._previousWeight=this._weight;let i=!1,n=this._runtimeAnimations;for(e=0;e<n.length;e++){let a=n[e].animate(t-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);i=i||a}if(this.animationStarted=i,!i){if(this.disposeOnEnd)for(e=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(e,1),e=0;e<n.length;e++)n[e].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return i}}o.ProcessPausedAnimatables=!1;var r=t.i(91682),l=t.i(19990);let h=!1;var m=t.i(70855),_=t.i(12328),g=t.i(87278);class u{getClassName(){return"TargetedAnimation"}constructor(t){this.parent=t,this.uniqueId=g.UniqueIdGenerator.UniqueId}serialize(){let t={};return t.animation=this.animation.serialize(),t.targetId=this.target.id,t.targetUniqueId=this.target.uniqueId,t}}class d{get mask(){return this._mask}set mask(t){this._mask!==t&&(this._mask=t,this.syncWithMask(!0))}syncWithMask(t=!1){if(!this.mask&&!t){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){let e=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(e.target.name)?(this._numActiveAnimatables++,e.paused&&e.restart()):e.paused||e.pause()}}removeUnmaskedAnimations(){if(this.mask&&!this.mask.disabled){for(let t=0;t<this._animatables.length;++t){let e=this._animatables[t];!this.mask.retainsTarget(e.target.name)&&(e.stop(),this._animatables.splice(t,1),--t)}for(let t=0;t<this._targetedAnimations.length;t++){let e=this._targetedAnimations[t];!this.mask.retainsTarget(e.target.name)&&(this._targetedAnimations.splice(t,1),--t)}}}get from(){return this._from}set from(t){if(this._from!==t){this._from=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].fromFrame=this._from}}get to(){return this._to}set to(t){if(this._to!==t){this._to=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].toFrame=this._to}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(t){if(this._speedRatio!==t){this._speedRatio=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].speedRatio=this._speedRatio}}get loopAnimation(){return this._loopAnimation}set loopAnimation(t){if(this._loopAnimation!==t){this._loopAnimation=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].loopAnimation=this._loopAnimation}}get isAdditive(){return this._isAdditive}set isAdditive(t){if(this._isAdditive!==t){this._isAdditive=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].isAdditive=this._isAdditive}}get weight(){return this._weight}set weight(t){this._weight!==t&&(this._weight=t,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(t){if(this._playOrder!==t&&(this._playOrder=t,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(t){if(this._enableBlending!==t&&(this._enableBlending=t,null!==t))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.enableBlending=t}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(t){if(this._blendingSpeed!==t&&(this._blendingSpeed=t,null!==t))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.blendingSpeed=t}getLength(t,e){t=t??this._from,e=e??this._to;let i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(e-t)/i}getScene(){return this._scene}constructor(t,a=null,_=-1,g=0){this.name=t,this._targetedAnimations=[],this._animatables=[],this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new e.Observable,this.onAnimationLoopObservable=new e.Observable,this.onAnimationGroupLoopObservable=new e.Observable,this.onAnimationGroupEndObservable=new e.Observable,this.onAnimationGroupPauseObservable=new e.Observable,this.onAnimationGroupPlayObservable=new e.Observable,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=a||m.EngineStore.LastCreatedScene,this._weight=_,this._playOrder=g,this.uniqueId=this._scene.getUniqueId(),function(){if(!h){var t,e;h=!0,t=l.Scene,(e=r.Bone)&&(e.prototype.copyAnimationRange=function(t,e,i,a=!1,s=null){let o,r,l;0===this.animations.length&&(this.animations.push(new n.Animation(this.name,"_matrix",t.animations[0].framePerSecond,n.Animation.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));let h=t.animations[0].getRange(e);if(!h)return!1;let m=h.from,_=h.to,g=t.animations[0].getKeys(),u=t.length,d=t.getParent(),p=this.getParent(),A=a&&d&&u&&this.length&&u!==this.length,c=A&&p&&d?p.length/d.length:1,f=a&&!p&&s&&(1!==s.x||1!==s.y||1!==s.z),b=this.animations[0].getKeys();for(let t=0,e=g.length;t<e;t++)(o=g[t]).frame>=m&&o.frame<=_&&(a?(l=o.value.clone(),A?(r=l.getTranslation(),l.setTranslation(r.scaleInPlace(c))):f&&s?(r=l.getTranslation(),l.setTranslation(r.multiplyInPlace(s))):l=o.value):l=o.value,b.push({frame:o.frame+i,value:l}));return this.animations[0].createRange(e,m+i,_+i),!0}),t&&(t.prototype._animate=function(t){if(!this.animationsEnabled)return;let e=s.PrecisionDate.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=e}this.deltaTime=void 0!==t?t:this.useConstantAnimationDeltaTime?16:(e-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=e;let a=this._activeAnimatables;if(0===a.length)return;this._animationTime+=this.deltaTime;let o=this._animationTime;for(let t=0;t<a.length;t++){let e=a[t];!e._animate(o)&&e.disposeOnEnd&&t--}!function(t){if(t._registeredForLateAnimationBindings.length){for(let e=0;e<t._registeredForLateAnimationBindings.length;e++){let a=t._registeredForLateAnimationBindings.data[e];for(let t in a._lateAnimationHolders){let e=a._lateAnimationHolders[t],s=e.animations[0],o=e.originalValue;if(null==o)continue;let r=n.Animation.AllowMatrixDecomposeForInterpolation&&o.m,l=a[t];if(r)l=function(t){let e;if(0===t.totalWeight&&0===t.totalAdditiveWeight)return t.originalValue;let n=1,a=i.TmpVectors.Vector3[0],s=i.TmpVectors.Vector3[1],o=i.TmpVectors.Quaternion[0],r=0,l=t.animations[0],h=t.originalValue,m=!1;if(t.totalWeight<1)e=1-t.totalWeight,h.decompose(s,o,a);else{if(r=1,n=t.totalWeight,1==(e=l.weight/n))if(!t.totalAdditiveWeight)return l.currentValue;else m=!0;l.currentValue.decompose(s,o,a)}if(!m){s.scaleInPlace(e),a.scaleInPlace(e),o.scaleInPlace(e);for(let l=r;l<t.animations.length;l++){let r=t.animations[l];if(0===r.weight)continue;e=r.weight/n;let h=i.TmpVectors.Vector3[2],m=i.TmpVectors.Vector3[3],_=i.TmpVectors.Quaternion[1];r.currentValue.decompose(m,_,h),m.scaleAndAddToRef(e,s),_.scaleAndAddToRef(i.Quaternion.Dot(o,_)>0?e:-e,o),h.scaleAndAddToRef(e,a)}o.normalize()}for(let e=0;e<t.additiveAnimations.length;e++){let n=t.additiveAnimations[e];if(0===n.weight)continue;let r=i.TmpVectors.Vector3[2],l=i.TmpVectors.Vector3[3],h=i.TmpVectors.Quaternion[1];n.currentValue.decompose(l,h,r),l.multiplyToRef(s,l),i.Vector3.LerpToRef(s,l,n.weight,s),o.multiplyToRef(h,h),i.Quaternion.SlerpToRef(o,h,n.weight,o),r.scaleAndAddToRef(n.weight,a)}let _=l?l._animationState.workValue:i.TmpVectors.Matrix[0].clone();return i.Matrix.ComposeToRef(s,o,a,_),_}(e);else if(void 0!==o.w)l=function(t,e){if(0===t.totalWeight&&0===t.totalAdditiveWeight)return e;let n=t.animations[0],a=t.originalValue,s=e;if(0===t.totalWeight&&t.totalAdditiveWeight>0)s.copyFrom(a);else if(1===t.animations.length){if(i.Quaternion.SlerpToRef(a,n.currentValue,Math.min(1,t.totalWeight),s),0===t.totalAdditiveWeight)return s}else if(t.animations.length>1){let n,o,r=1;if(t.totalWeight<1){let e=1-t.totalWeight;o=[],(n=[]).push(a),o.push(e)}else{if(2===t.animations.length&&(i.Quaternion.SlerpToRef(t.animations[0].currentValue,t.animations[1].currentValue,t.animations[1].weight/t.totalWeight,e),0===t.totalAdditiveWeight))return e;n=[],o=[],r=t.totalWeight}for(let e=0;e<t.animations.length;e++){let i=t.animations[e];n.push(i.currentValue),o.push(i.weight/r)}let l=0;for(let t=0;t<n.length;){if(!t){i.Quaternion.SlerpToRef(n[t],n[t+1],o[t+1]/(o[t]+o[t+1]),e),s=e,l=o[t]+o[t+1],t+=2;continue}l+=o[t],i.Quaternion.SlerpToRef(s,n[t],o[t]/l,s),t++}}for(let e=0;e<t.additiveAnimations.length;e++){let n=t.additiveAnimations[e];0!==n.weight&&(s.multiplyToRef(n.currentValue,i.TmpVectors.Quaternion[0]),i.Quaternion.SlerpToRef(s,i.TmpVectors.Quaternion[0],n.weight,s))}return s}(e,l||i.Quaternion.Identity());else{let t=0,i=1,a=s&&s._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(e.totalWeight<1)l=a?o.clone?o.clone():o:s&&o.scale?o.scale(1-e.totalWeight):s?o*(1-e.totalWeight):o.clone?o.clone():o;else if(s){i=e.totalWeight;let n=s.weight/i;l=1!==n?s.currentValue.scale?s.currentValue.scale(n):s.currentValue*n:s.currentValue,a&&(l.addToRef?l.addToRef(o,l):l+=o),t=1}for(let n=t;n<e.animations.length;n++){let t=e.animations[n],a=t.weight/i;a&&(t.currentValue.scaleAndAddToRef?t.currentValue.scaleAndAddToRef(a,l):l+=t.currentValue*a)}for(let t=0;t<e.additiveAnimations.length;t++){let i=e.additiveAnimations[t],n=i.weight;n&&(i.currentValue.scaleAndAddToRef?i.currentValue.scaleAndAddToRef(n,l):l+=i.currentValue*n)}}a[t]=l}a._lateAnimationHolders={}}t._registeredForLateAnimationBindings.reset()}}(this)},t.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,e)=>t.playOrder-e.playOrder)},t.prototype.beginWeightedAnimation=function(t,e,i,n=1,a,s=1,o,r,l,h,m=!1){let _=this.beginAnimation(t,e,i,a,s,o,r,!1,l,h,m);return _.weight=n,_},t.prototype.beginAnimation=function(t,e,i,n,a=1,s,r,l=!0,h,m,_=!1){if(a<0){let t=e;e=i,i=t,a=-a}e>i&&(a=-a),l&&this.stopAnimation(t,void 0,h),r||(r=new o(this,t,e,i,n,a,s,void 0,m,_));let g=!h||h(t);if(t.animations&&g&&r.appendAnimations(t,t.animations),t.getAnimatables){let o=t.getAnimatables();for(let t=0;t<o.length;t++)this.beginAnimation(o[t],e,i,n,a,s,r,l,h,m)}return r.reset(),r},t.prototype.beginHierarchyAnimation=function(t,e,i,n,a,s=1,o,r,l=!0,h,m,_=!1){let g=t.getDescendants(e),u=[];for(let e of(u.push(this.beginAnimation(t,i,n,a,s,o,r,l,h,void 0,_)),g))u.push(this.beginAnimation(e,i,n,a,s,o,r,l,h,void 0,_));return u},t.prototype.beginDirectAnimation=function(t,e,i,n,a,s=1,r,l,h=!1){if(s<0){let t=i;i=n,n=t,s=-s}return i>n&&(s=-s),new o(this,t,i,n,a,s,r,e,l,h)},t.prototype.beginDirectHierarchyAnimation=function(t,e,i,n,a,s,o,r,l,h=!1){let m=t.getDescendants(e),_=[];for(let e of(_.push(this.beginDirectAnimation(t,i,n,a,s,o,r,l,h)),m))_.push(this.beginDirectAnimation(e,i,n,a,s,o,r,l,h));return _},t.prototype.getAnimatableByTarget=function(t){for(let e=0;e<this._activeAnimatables.length;e++)if(this._activeAnimatables[e].target===t)return this._activeAnimatables[e];return null},t.prototype.getAllAnimatablesByTarget=function(t){let e=[];for(let i=0;i<this._activeAnimatables.length;i++)this._activeAnimatables[i].target===t&&e.push(this._activeAnimatables[i]);return e},t.prototype.stopAnimation=function(t,e,i){for(let n of this.getAllAnimatablesByTarget(t))n.stop(e,i)},t.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(let t of this.animationGroups)t.stop()})}}(),this._scene.addAnimationGroup(this)}addTargetedAnimation(t,e){let i=new u(this);i.animation=t,i.target=e;let n=t.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),null!==this._enableBlending&&(t.enableBlending=this._enableBlending),null!==this._blendingSpeed&&(t.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(t){for(let e=this._targetedAnimations.length-1;e>-1;e--)this._targetedAnimations[e].animation===t&&this._targetedAnimations.splice(e,1)}normalize(t=null,e=null){null==t&&(t=this._from),null==e&&(e=this._to);for(let i=0;i<this._targetedAnimations.length;i++){let n=this._targetedAnimations[i].animation.getKeys(),a=n[0],s=n[n.length-1];if(a.frame>t){let e={frame:t,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};n.splice(0,0,e)}if(s.frame<e){let t={frame:e,value:s.value,inTangent:s.inTangent,outTangent:s.outTangent,interpolation:s.interpolation};n.push(t)}}return this._from=t,this._to=e,this}_processLoop(t,e,i){t.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(e),this._animationLoopFlags[i]||(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(t=!1,e=1,i,n,a){if(this._isStarted||0===this._targetedAnimations.length)return this;this._loopAnimation=t,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let s=0;s<this._targetedAnimations.length;s++){let o=this._targetedAnimations[s],r=this._scene.beginDirectAnimation(o.target,[o.animation],void 0!==i?i:this._from,void 0!==n?n:this._to,t,e,void 0,void 0,void 0!==a?a:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(o),this._checkAnimationGroupEnded(r)},this._processLoop(r,o,s),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=e,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let t=0;t<this._animatables.length;t++)this._animatables[t].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(t){return this.isStarted&&this._animatables.length&&!this._shouldStart?(void 0!==t&&(this.loopAnimation=t),this.restart()):(this.stop(),this.start(t,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].reset();return this}restart(){if(!this._isStarted)return this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(t=!1){if(!this._isStarted)return this;let e=this._animatables.slice();for(let i=0;i<e.length;i++)e[i].stop(void 0,void 0,!0,t);let i=0;for(let e=0;e<this._scene._activeAnimatables.length;e++){let n=this._scene._activeAnimatables[e];n._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=n:t&&this._checkAnimationGroupEnded(n,t)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(t){for(let e=0;e<this._animatables.length;e++)this._animatables[e].weight=t;return this}syncAllAnimationsWith(t){for(let e=0;e<this._animatables.length;e++)this._animatables[e].syncWith(t);return this}goToFrame(t,e=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(t,e);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){let t=this._parentContainer.animationGroups.indexOf(this);t>-1&&this._parentContainer.animationGroups.splice(t,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(t,e=!1){let i=this._animatables.indexOf(t);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,e||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(t,e,i=!1,n=!1){let a=new d(t||this.name,this._scene,this._weight,this._playOrder);for(let t of(a._from=this.from,a._to=this.to,a._speedRatio=this.speedRatio,a._loopAnimation=this.loopAnimation,a._isAdditive=this.isAdditive,a._enableBlending=this.enableBlending,a._blendingSpeed=this.blendingSpeed,a.metadata=this.metadata,a.mask=this.mask,this._targetedAnimations))a.addTargetedAnimation(i?t.animation.clone(n):t.animation,e?e(t.target):t.target);return a}serialize(){let t={};t.name=this.name,t.from=this.from,t.to=this.to,t.speedRatio=this.speedRatio,t.loopAnimation=this.loopAnimation,t.isAdditive=this.isAdditive,t.weight=this.weight,t.playOrder=this.playOrder,t.enableBlending=this.enableBlending,t.blendingSpeed=this.blendingSpeed,t.targetedAnimations=[];for(let e=0;e<this.targetedAnimations.length;e++){let i=this.targetedAnimations[e];t.targetedAnimations[e]=i.serialize()}return _.Tags&&_.Tags.HasTags(this)&&(t.tags=_.Tags.GetTags(this)),this.metadata&&(t.metadata=this.metadata),t}getClassName(){return"AnimationGroup"}toString(t){let e="Name: "+this.name;return e+=", type: "+this.getClassName(),t&&(e+=", from: "+this._from+", to: "+this._to+", isStarted: "+this._isStarted+", speedRatio: "+this._speedRatio+", targetedAnimations length: "+this._targetedAnimations.length+", animatables length: "+this._animatables.length),e}}function p(t,e=!0,i=!1,n){if(0===t.length)return null;n=n??t[0].weight;let a=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(i)for(let e of t)e.from<a&&(a=e.from),e.to>s&&(s=e.to);let o=new d(t[0].name+"_merged",t[0].getScene(),n);for(let n of t){for(let t of(i&&n.normalize(a,s),n.targetedAnimations))o.addTargetedAnimation(t.animation,t.target);e&&n.dispose()}return o}function A(t,e,i){let a=new d(t.name,e,t.weight,t.playOrder);for(let s=0;s<t.targetedAnimations.length;s++){let o=t.targetedAnimations[s],r=(0,n.AnimationParse)(o.animation),l=i?i(o):"influence"===o.animation.property?e.getMorphTargetById(o.targetId):e.getNodeById(o.targetId);l&&a.addTargetedAnimation(r,l)}return _.Tags&&_.Tags.AddTagsTo(a,t.tags),null!==t.from&&null!==t.to&&a.normalize(t.from,t.to),void 0!==t.speedRatio&&(a._speedRatio=t.speedRatio),void 0!==t.loopAnimation&&(a._loopAnimation=t.loopAnimation),void 0!==t.isAdditive&&(a._isAdditive=t.isAdditive),void 0!==t.weight&&(a._weight=t.weight),void 0!==t.playOrder&&(a._playOrder=t.playOrder),void 0!==t.enableBlending&&(a._enableBlending=t.enableBlending),void 0!==t.blendingSpeed&&(a._blendingSpeed=t.blendingSpeed),void 0!==t.metadata&&(a.metadata=t.metadata),a}function c(t,e,i,a=!1,s){let o,r=t;(o="object"==typeof e?e:{referenceFrame:e,range:i,cloneOriginalAnimationGroup:a,clonedAnimationName:s}).cloneOriginalAnimationGroup&&(r=t.clone(o.clonedAnimationGroupName||r.name));let l=r.targetedAnimations;for(let t=0;t<l.length;t++){let e=l[t];e.animation=(0,n.AnimationMakeAnimationAdditive)(e.animation,o)}if(r.isAdditive=!0,o.clipKeys){let t=Number.MAX_VALUE,e=-Number.MAX_VALUE,i=r.targetedAnimations;for(let n=0;n<i.length;n++){let a=i[n].animation.getKeys();t>a[0].frame&&(t=a[0].frame),e<a[a.length-1].frame&&(e=a[a.length-1].frame)}let n=r;n._from=t,n._to=e}return r}function f(t,e,i,n,a){return b(t.clone(n||t.name),e,i,a)}function b(t,e,i,n){return y(t,e,i,n,!1)}function v(t,e,i,n,a){return T(t.clone(n||t.name),e,i,a)}function T(t,e,i,n){return y(t,e,i,n,!0)}function y(t,e,i,n,a=!1){let s=Number.MAX_VALUE,o=-Number.MAX_VALUE,r=t.targetedAnimations;for(let t=0;t<r.length;t++){let l=r[t],h=n?l.animation:l.animation.clone();a&&(h.createKeyForFrame(e),h.createKeyForFrame(i));let m=h.getKeys(),_=[],g=Number.MAX_VALUE;for(let t=0;t<m.length;t++){let n=m[t];if(!a&&t>=e&&t<=i||a&&n.frame>=e&&n.frame<=i){let t={frame:n.frame,value:n.value.clone?n.value.clone():n.value,inTangent:n.inTangent,outTangent:n.outTangent,interpolation:n.interpolation,lockedTangent:n.lockedTangent};g===Number.MAX_VALUE&&(g=t.frame),t.frame-=g,_.push(t)}}if(0===_.length){r.splice(t,1),t--;continue}s>_[0].frame&&(s=_[0].frame),o<_[_.length-1].frame&&(o=_[_.length-1].frame),h.setKeys(_,!0),l.animation=h}return t._from=s,t._to=o,t}let O=!1;t.s(["AnimationGroup",0,d,"AnimationGroupClipFrames",0,v,"AnimationGroupClipFramesInPlace",0,T,"AnimationGroupClipInPlace",0,y,"AnimationGroupClipKeys",0,f,"AnimationGroupClipKeysInPlace",0,b,"AnimationGroupMakeAnimationAdditive",0,c,"AnimationGroupMergeAnimationGroups",0,p,"AnimationGroupParse",0,A,"RegisterAnimationGroup",0,function(){O||(O=!0,d.MergeAnimationGroups=p,d.Parse=A,d.MakeAnimationAdditive=c,d.ClipKeys=f,d.ClipKeysInPlace=b,d.ClipFrames=v,d.ClipFramesInPlace=T,d.ClipInPlace=y)},"TargetedAnimation",0,u],32602)},4623,t=>{"use strict";t.s([])},12305,t=>{"use strict";t.i(4623),(0,t.i(32602).RegisterAnimationGroup)(),t.s([])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,20614,e=>{"use strict";var t,r,s,a,o,i,n=e.i(80434);class c{constructor(e,t){if(this.data=e,this.isInvalid=!1,!c.IsValid(e)){this.isInvalid=!0,n.Logger.Error("texture missing KTX identifier");return}const r=Uint32Array.BYTES_PER_ELEMENT,s=new DataView(this.data.buffer,this.data.byteOffset+12,13*r),a=0x4030201===s.getUint32(0,!0);if(this.glType=s.getUint32(+r,a),this.glTypeSize=s.getUint32(2*r,a),this.glFormat=s.getUint32(3*r,a),this.glInternalFormat=s.getUint32(4*r,a),this.glBaseInternalFormat=s.getUint32(5*r,a),this.pixelWidth=s.getUint32(6*r,a),this.pixelHeight=s.getUint32(7*r,a),this.pixelDepth=s.getUint32(8*r,a),this.numberOfArrayElements=s.getUint32(9*r,a),this.numberOfFaces=s.getUint32(10*r,a),this.numberOfMipmapLevels=s.getUint32(11*r,a),this.bytesOfKeyValueData=s.getUint32(12*r,a),0!==this.glType){n.Logger.Error("only compressed formats currently supported"),this.isInvalid=!0;return}if(this.numberOfMipmapLevels=Math.max(1,this.numberOfMipmapLevels),0===this.pixelHeight||0!==this.pixelDepth){n.Logger.Error("only 2D textures currently supported"),this.isInvalid=!0;return}if(0!==this.numberOfArrayElements){n.Logger.Error("texture arrays not currently supported"),this.isInvalid=!0;return}if(this.numberOfFaces!==t){n.Logger.Error("number of faces expected"+t+", but found "+this.numberOfFaces),this.isInvalid=!0;return}this.loadType=c.COMPRESSED_2D}uploadLevels(e,t){switch(this.loadType){case c.COMPRESSED_2D:this._upload2DCompressedLevels(e,t);case c.TEX_2D:case c.COMPRESSED_3D:case c.TEX_3D:}}_upload2DCompressedLevels(e,t){let r=c.HEADER_LEN+this.bytesOfKeyValueData,s=this.pixelWidth,a=this.pixelHeight,o=t?this.numberOfMipmapLevels:1;for(let t=0;t<o;t++){let o=new Int32Array(this.data.buffer,this.data.byteOffset+r,1)[0];r+=4;for(let i=0;i<this.numberOfFaces;i++){let n=new Uint8Array(this.data.buffer,this.data.byteOffset+r,o);e.getEngine()._uploadCompressedDataToTextureDirectly(e,e.format,s,a,n,i,t),r+=o,r+=3-(o+3)%4}s=Math.max(1,.5*s),a=Math.max(1,.5*a)}}static IsValid(e){if(e.byteLength>=12){let t=new Uint8Array(e.buffer,e.byteOffset,12);if(171===t[0]&&75===t[1]&&84===t[2]&&88===t[3]&&32===t[4]&&49===t[5]&&49===t[6]&&187===t[7]&&13===t[8]&&10===t[9]&&26===t[10]&&10===t[11])return!0}return!1}}c.HEADER_LEN=64,c.COMPRESSED_2D=0,c.COMPRESSED_3D=1,c.TEX_2D=2,c.TEX_3D=3;var d=e.i(40553),T=e.i(13856);function l(e,t){let r=t?.jsDecoderModule||KTX2DECODER;e&&(e.wasmBaseUrl&&(r.Transcoder.WasmBaseUrl=e.wasmBaseUrl),e.wasmUASTCToASTC&&(r.LiteTranscoder_UASTC_ASTC.WasmModuleURL=e.wasmUASTCToASTC),e.wasmUASTCToBC7&&(r.LiteTranscoder_UASTC_BC7.WasmModuleURL=e.wasmUASTCToBC7),e.wasmUASTCToRGBA_UNORM&&(r.LiteTranscoder_UASTC_RGBA_UNORM.WasmModuleURL=e.wasmUASTCToRGBA_UNORM),e.wasmUASTCToRGBA_SRGB&&(r.LiteTranscoder_UASTC_RGBA_SRGB.WasmModuleURL=e.wasmUASTCToRGBA_SRGB),e.wasmUASTCToR8_UNORM&&(r.LiteTranscoder_UASTC_R8_UNORM.WasmModuleURL=e.wasmUASTCToR8_UNORM),e.wasmUASTCToRG8_UNORM&&(r.LiteTranscoder_UASTC_RG8_UNORM.WasmModuleURL=e.wasmUASTCToRG8_UNORM),e.jsMSCTranscoder&&(r.MSCTranscoder.JSModuleURL=e.jsMSCTranscoder),e.wasmMSCTranscoder&&(r.MSCTranscoder.WasmModuleURL=e.wasmMSCTranscoder),e.wasmZSTDDecoder&&(r.ZSTDDecoder.WasmModuleURL=e.wasmZSTDDecoder)),t&&(t.wasmUASTCToASTC&&(r.LiteTranscoder_UASTC_ASTC.WasmBinary=t.wasmUASTCToASTC),t.wasmUASTCToBC7&&(r.LiteTranscoder_UASTC_BC7.WasmBinary=t.wasmUASTCToBC7),t.wasmUASTCToRGBA_UNORM&&(r.LiteTranscoder_UASTC_RGBA_UNORM.WasmBinary=t.wasmUASTCToRGBA_UNORM),t.wasmUASTCToRGBA_SRGB&&(r.LiteTranscoder_UASTC_RGBA_SRGB.WasmBinary=t.wasmUASTCToRGBA_SRGB),t.wasmUASTCToR8_UNORM&&(r.LiteTranscoder_UASTC_R8_UNORM.WasmBinary=t.wasmUASTCToR8_UNORM),t.wasmUASTCToRG8_UNORM&&(r.LiteTranscoder_UASTC_RG8_UNORM.WasmBinary=t.wasmUASTCToRG8_UNORM),t.jsMSCTranscoder&&(r.MSCTranscoder.JSModule=t.jsMSCTranscoder),t.wasmMSCTranscoder&&(r.MSCTranscoder.WasmBinary=t.wasmMSCTranscoder),t.wasmZSTDDecoder&&(r.ZSTDDecoder.WasmBinary=t.wasmZSTDDecoder))}function _(e){let t;void 0===e&&"u">typeof KTX2DECODER&&(e=KTX2DECODER),onmessage=r=>{if(r.data)switch(r.data.action){case"init":{let s=r.data.urls;s&&(s.jsDecoderModule&&void 0===e&&(importScripts(s.jsDecoderModule),e=KTX2DECODER),l(s)),r.data.wasmBinaries&&l(void 0,{...r.data.wasmBinaries,jsDecoderModule:e}),t=new e.KTX2Decoder,postMessage({action:"init"});break}case"setDefaultDecoderOptions":e.KTX2Decoder.DefaultDecoderOptions=r.data.options;break;case"decode":t.decode(r.data.data,r.data.caps,r.data.options).then(e=>{let t=[];for(let r=0;r<e.mipmaps.length;++r){let s=e.mipmaps[r];s&&s.data&&t.push(s.data.buffer)}postMessage({action:"decoded",success:!0,decodedData:e},t)}).catch(e=>{postMessage({action:"decoded",success:!1,msg:e})})}}}async function R(e,t,r){return await new Promise((s,a)=>{let o=t=>{e.removeEventListener("error",o),e.removeEventListener("message",i),a(t)},i=t=>{"init"===t.data.action&&(e.removeEventListener("error",o),e.removeEventListener("message",i),s(e))};e.addEventListener("error",o),e.addEventListener("message",i),e.postMessage({action:"init",urls:r,wasmBinaries:t})})}(t=a||(a={}))[t.ETC1S=0]="ETC1S",t[t.UASTC4x4=1]="UASTC4x4",(r=o||(o={}))[r.ASTC_4X4_RGBA=0]="ASTC_4X4_RGBA",r[r.ASTC_4x4_RGBA=0]="ASTC_4x4_RGBA",r[r.BC7_RGBA=1]="BC7_RGBA",r[r.BC3_RGBA=2]="BC3_RGBA",r[r.BC1_RGB=3]="BC1_RGB",r[r.PVRTC1_4_RGBA=4]="PVRTC1_4_RGBA",r[r.PVRTC1_4_RGB=5]="PVRTC1_4_RGB",r[r.ETC2_RGBA=6]="ETC2_RGBA",r[r.ETC1_RGB=7]="ETC1_RGB",r[r.RGBA32=8]="RGBA32",r[r.R8=9]="R8",r[r.RG8=10]="RG8",(s=i||(i={}))[s.COMPRESSED_RGBA_BPTC_UNORM_EXT=36492]="COMPRESSED_RGBA_BPTC_UNORM_EXT",s[s.COMPRESSED_RGBA_ASTC_4X4_KHR=37808]="COMPRESSED_RGBA_ASTC_4X4_KHR",s[s.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",s[s.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",s[s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",s[s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",s[s.COMPRESSED_RGBA8_ETC2_EAC=37496]="COMPRESSED_RGBA8_ETC2_EAC",s[s.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",s[s.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",s[s.RGBA8Format=32856]="RGBA8Format",s[s.R8Format=33321]="R8Format",s[s.RG8Format=33323]="RG8Format";class C{static GetDefaultNumWorkers(){return"object"==typeof navigator&&navigator.hardwareConcurrency?Math.min(Math.floor(.5*navigator.hardwareConcurrency),4):1}static _Initialize(e){if(C._WorkerPoolPromise||C._DecoderModulePromise)return;let t={wasmBaseUrl:T.Tools.ScriptBaseUrl,jsDecoderModule:T.Tools.GetBabylonScriptURL(this.URLConfig.jsDecoderModule,!0),wasmUASTCToASTC:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToASTC,!0),wasmUASTCToBC7:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToBC7,!0),wasmUASTCToRGBA_UNORM:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRGBA_UNORM,!0),wasmUASTCToRGBA_SRGB:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRGBA_SRGB,!0),wasmUASTCToR8_UNORM:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToR8_UNORM,!0),wasmUASTCToRG8_UNORM:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRG8_UNORM,!0),jsMSCTranscoder:T.Tools.GetBabylonScriptURL(this.URLConfig.jsMSCTranscoder,!0),wasmMSCTranscoder:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmMSCTranscoder,!0),wasmZSTDDecoder:T.Tools.GetBabylonScriptURL(this.URLConfig.wasmZSTDDecoder,!0)};e&&"function"==typeof Worker&&"u">typeof URL?C._WorkerPoolPromise=new Promise(r=>{let s=`${l}(${_})()`,a=URL.createObjectURL(new Blob([s],{type:"application/javascript"}));r(new d.AutoReleaseWorkerPool(e,async()=>await R(new Worker(a),void 0,t)))}):void 0===C._KTX2DecoderModule?C._DecoderModulePromise=T.Tools.LoadBabylonScriptAsync(t.jsDecoderModule).then(()=>(C._KTX2DecoderModule=KTX2DECODER,C._KTX2DecoderModule.MSCTranscoder.UseFromWorkerThread=!1,C._KTX2DecoderModule.WASMMemoryManager.LoadBinariesFromCurrentThread=!0,l(t,C._KTX2DecoderModule),new C._KTX2DecoderModule.KTX2Decoder)):(C._KTX2DecoderModule.MSCTranscoder.UseFromWorkerThread=!1,C._KTX2DecoderModule.WASMMemoryManager.LoadBinariesFromCurrentThread=!0,C._DecoderModulePromise=Promise.resolve(new C._KTX2DecoderModule.KTX2Decoder))}constructor(e,t=C.DefaultNumWorkers){this._engine=e;const r="object"==typeof t&&t.workerPool||C.WorkerPool;if(r)C._WorkerPoolPromise=Promise.resolve(r);else{"object"==typeof t?C._KTX2DecoderModule=t?.binariesAndModulesContainer?.jsDecoderModule:"u">typeof KTX2DECODER&&(C._KTX2DecoderModule=KTX2DECODER);const e="number"==typeof t?t:t.numWorkers??C.DefaultNumWorkers;C._Initialize(e)}}async _uploadAsync(e,t,r){let s=this._engine.getCaps(),a={astc:!!s.astc,bptc:!!s.bptc,s3tc:!!s.s3tc,pvrtc:!!s.pvrtc,etc2:!!s.etc2,etc1:!!s.etc1};if(C._WorkerPoolPromise){let s=await C._WorkerPoolPromise;return await new Promise((o,i)=>{s.push((s,n)=>{let c=e=>{s.removeEventListener("error",c),s.removeEventListener("message",d),i(e),n()},d=e=>{if("decoded"===e.data.action){if(s.removeEventListener("error",c),s.removeEventListener("message",d),e.data.success)try{this._createTexture(e.data.decodedData,t,r),o()}catch(e){i({message:e})}else i({message:e.data.msg});n()}};s.addEventListener("error",c),s.addEventListener("message",d),s.postMessage({action:"setDefaultDecoderOptions",options:C.DefaultDecoderOptions._getKTX2DecoderOptions()});let T=new Uint8Array(e.byteLength);T.set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),s.postMessage({action:"decode",data:T,caps:a,options:r},[T.buffer])})})}if(C._DecoderModulePromise){let r=await C._DecoderModulePromise;return C.DefaultDecoderOptions.isDirty&&(C._KTX2DecoderModule.KTX2Decoder.DefaultDecoderOptions=C.DefaultDecoderOptions._getKTX2DecoderOptions()),await new Promise((a,o)=>{r.decode(e,s).then(e=>{this._createTexture(e,t),a()}).catch(e=>{o({message:e})})})}throw Error("KTX2 decoder module is not available")}_createTexture(e,t,r){this._engine._bindTextureDirectly(3553,t),r&&(r.transcodedFormat=e.transcodedFormat,r.isInGammaSpace=e.isInGammaSpace,r.hasAlpha=e.hasAlpha,r.transcoderName=e.transcoderName);let s=!0;switch(e.transcodedFormat){case 32856:t.type=0,t.format=5;break;case 33321:t.type=0,t.format=6;break;case 33323:t.type=0,t.format=7;break;default:t.format=e.transcodedFormat,s=!1}if(t._gammaSpace=e.isInGammaSpace,t.generateMipMaps=e.mipmaps.length>1,t.width=e.mipmaps[0].width,t.height=e.mipmaps[0].height,e.errors)throw Error("KTX2 container - could not transcode the data. "+e.errors);for(let r=0;r<e.mipmaps.length;++r){let a=e.mipmaps[r];if(!a||!a.data)throw Error("KTX2 container - could not transcode one of the image");s?(t.width=a.width,t.height=a.height,this._engine._uploadDataToTextureDirectly(t,a.data,0,r,void 0,!0)):this._engine._uploadCompressedDataToTextureDirectly(t,e.transcodedFormat,a.width,a.height,a.data,0,r)}t._extension=".ktx2",t.isReady=!0,this._engine._bindTextureDirectly(3553,null)}static IsValid(e){if(e.byteLength>=12){let t=new Uint8Array(e.buffer,e.byteOffset,12);if(171===t[0]&&75===t[1]&&84===t[2]&&88===t[3]&&32===t[4]&&50===t[5]&&48===t[6]&&187===t[7]&&13===t[8]&&10===t[9]&&26===t[10]&&10===t[11])return!0}return!1}}function u(e){switch(e){case 35916:return 33776;case 35918:return 33778;case 35919:return 33779;case 37493:return 37492;case 37497:return 37496;case 37495:return 37494;case 37840:return 37808;case 37841:return 37809;case 37842:return 37810;case 37843:return 37811;case 37844:return 37812;case 37845:return 37813;case 37846:return 37814;case 37847:return 37815;case 37848:return 37816;case 37849:return 37817;case 37850:return 37818;case 37851:return 37819;case 37852:return 37820;case 37853:return 37821;case 36493:return 36492}return null}C.URLConfig={jsDecoderModule:"https://cdn.babylonjs.com/babylon.ktx2Decoder.js",wasmUASTCToASTC:null,wasmUASTCToBC7:null,wasmUASTCToRGBA_UNORM:null,wasmUASTCToRGBA_SRGB:null,wasmUASTCToR8_UNORM:null,wasmUASTCToRG8_UNORM:null,jsMSCTranscoder:null,wasmMSCTranscoder:null,wasmZSTDDecoder:null},C.DefaultNumWorkers=C.GetDefaultNumWorkers(),C.DefaultDecoderOptions=new class{constructor(){this._isDirty=!0,this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC=!0,this._ktx2DecoderOptions={}}get isDirty(){return this._isDirty}get useRGBAIfASTCBC7NotAvailableWhenUASTC(){return this._useRGBAIfASTCBC7NotAvailableWhenUASTC}set useRGBAIfASTCBC7NotAvailableWhenUASTC(e){this._useRGBAIfASTCBC7NotAvailableWhenUASTC!==e&&(this._useRGBAIfASTCBC7NotAvailableWhenUASTC=e,this._isDirty=!0)}get useRGBAIfOnlyBC1BC3AvailableWhenUASTC(){return this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC}set useRGBAIfOnlyBC1BC3AvailableWhenUASTC(e){this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC!==e&&(this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC=e,this._isDirty=!0)}get forceRGBA(){return this._forceRGBA}set forceRGBA(e){this._forceRGBA!==e&&(this._forceRGBA=e,this._isDirty=!0)}get forceR8(){return this._forceR8}set forceR8(e){this._forceR8!==e&&(this._forceR8=e,this._isDirty=!0)}get forceRG8(){return this._forceRG8}set forceRG8(e){this._forceRG8!==e&&(this._forceRG8=e,this._isDirty=!0)}get bypassTranscoders(){return this._bypassTranscoders}set bypassTranscoders(e){this._bypassTranscoders!==e&&(this._bypassTranscoders=e,this._isDirty=!0)}_getKTX2DecoderOptions(){if(!this._isDirty)return this._ktx2DecoderOptions;this._isDirty=!1;let e={};return void 0!==this._useRGBAIfASTCBC7NotAvailableWhenUASTC&&(e.useRGBAIfASTCBC7NotAvailableWhenUASTC=this._useRGBAIfASTCBC7NotAvailableWhenUASTC),void 0!==this._forceRGBA&&(e.forceRGBA=this._forceRGBA),void 0!==this._forceR8&&(e.forceR8=this._forceR8),void 0!==this._forceRG8&&(e.forceRG8=this._forceRG8),void 0!==this._bypassTranscoders&&(e.bypassTranscoders=this._bypassTranscoders),this.useRGBAIfOnlyBC1BC3AvailableWhenUASTC&&(e.transcodeFormatDecisionTree={UASTC:{transcodeFormat:[o.BC1_RGB,o.BC3_RGBA],yes:{transcodeFormat:o.RGBA32,engineFormat:32856,roundToMultiple4:!1}}}),this._ktx2DecoderOptions=e,e}},e.s(["_KTXTextureLoader",0,class{constructor(){this.supportCascades=!1}loadCubeData(e,t,r,s){if(Array.isArray(e))return;t._invertVScale=!t.invertY;let a=t.getEngine(),o=new c(e,6),i=u(o.glInternalFormat);null!==i?(t.format=i,t._useSRGBBuffer=a._getUseSRGBBuffer(!0,!t.generateMipMaps),t._gammaSpace=!0):t.format=o.glInternalFormat;let n=o.numberOfMipmapLevels>1&&t.generateMipMaps;a._unpackFlipY(!0),o.uploadLevels(t,t.generateMipMaps),t.width=o.pixelWidth,t.height=o.pixelHeight,a._setCubeMapTextureParams(t,n,o.numberOfMipmapLevels-1),t.isReady=!0,t.onLoadedObservable.notifyObservers(t),t.onLoadedObservable.clear(),s&&s()}loadData(e,t,r,s){if(c.IsValid(e)){t._invertVScale=!t.invertY;let s=new c(e,1),a=u(s.glInternalFormat);null!==a?(t.format=a,t._useSRGBBuffer=t.getEngine()._getUseSRGBBuffer(!0,!t.generateMipMaps),t._gammaSpace=!0):t.format=s.glInternalFormat,r(s.pixelWidth,s.pixelHeight,t.generateMipMaps,!0,()=>{s.uploadLevels(t,t.generateMipMaps)},s.isInvalid)}else C.IsValid(e)?new C(t.getEngine())._uploadAsync(e,t,s).then(()=>{r(t.width,t.height,t.generateMipMaps,!0,()=>{},!1)},e=>{n.Logger.Warn(`Failed to load KTX2 texture data: ${e.message}`),r(0,0,!1,!1,()=>{},!0)}):(n.Logger.Error("texture missing KTX identifier"),r(0,0,!1,!1,()=>{},!0))}}],20614)}]);
|
|
@@ -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 s=()=>{let t=e.pick(e.pointerX,e.pointerY);t?.hit&&t.pickedPoint&&n.setTarget(t.pickedPoint)};return t.addEventListener("dblclick",s),()=>t.removeEventListener("dblclick",s)},"disableWheelZoom",0,function(e){e.inputs.removeByType("ArcRotateCameraMouseWheelInput")},"resetFocus",0,function(e,t){e.setTarget(t.target),e.alpha=t.alpha,e.beta=t.beta,e.radius=t.radius},"stepZoom",0,function(e,t){let n=e.lowerRadiusLimit??.01,s=e.upperRadiusLimit??1/0;e.radius=Math.min(s,Math.max(n,e.radius*t))}],2348);var n=e.i(46369);e.s(["ZoomButtons",0,function({onZoom:e,onReset:s}){let a="grid h-8 w-8 place-items-center rounded-md border border-edge bg-ink/80 text-lg leading-none text-fg backdrop-blur transition hover:bg-ink hover:text-white";return(0,n.jsxs)("div",{className:"absolute right-3 top-3 flex flex-col gap-1",children:[(0,n.jsx)("button",{type:"button","aria-label":"Zoom in",className:a,onClick:()=>e(t),children:"+"}),(0,n.jsx)("button",{type:"button","aria-label":"Zoom out",className:a,onClick:()=>e(1.2),children:"−"}),s?(0,n.jsx)("button",{type:"button","aria-label":"Reset camera focus to center",title:"Reset focus to center",className:a,onClick:s,children:(0,n.jsxs)("svg",{viewBox:"0 0 16 16",width:"16",height:"16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,n.jsx)("path",{d:"M8 1v2.5M8 12.5V15M1 8h2.5M12.5 8H15"})]})}):null]})}],2413)},87456,e=>{"use strict";e.s(["attachMeshHover",0,function(e,t,n){let s=0,a=null,i=t=>{let i=t.offsetX,l=t.offsetY;s||(s=requestAnimationFrame(()=>{var t,o;let r;s=0;let u=e.pick(i,l,e=>e.isPickable&&e.isEnabled()),c=u?.pickedMesh?(t=u.pickedMesh,o=u.thinInstanceIndex??-1,(r=t.metadata)?o>=0&&r.hoverLabels?r.hoverLabels[o]??null:r.hoverLabel??null:null):null;c?n({label:c,x:i,y:l}):null!==a&&n(null),a=c}))},l=()=>{s&&(cancelAnimationFrame(s),s=0),null!==a&&(a=null,n(null))};return t.addEventListener("pointermove",i),t.addEventListener("pointerleave",l),()=>{t.removeEventListener("pointermove",i),t.removeEventListener("pointerleave",l),s&&cancelAnimationFrame(s)}}])},19399,e=>{"use strict";var t=e.i(46369),n=e.i(19594);let s="__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 o=e.i(56054),r=e.i(2348),u=e.i(87456),c=e.i(18637),h=e.i(2413);let d="__all__",m={maxStandpoints:6,maxMeshes:10,maxRibbons:70};function b(e,t){return`${e}|${t}`}function f(e){let t=e.aabb;return[(t[0]+t[3])/2,(t[1]+t[4])/2,(t[2]+t[5])/2]}function p(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:s,allLabel:a,options:i}){return(0,t.jsxs)("label",{className:"flex items-center gap-1.5 rounded-md border border-edge bg-ink/80 px-2 py-1 text-xs text-fg backdrop-blur",children:[(0,t.jsx)("span",{className:"font-medium text-fg-muted",children:e}),(0,t.jsxs)("select",{className:"max-w-[12rem] bg-transparent text-white outline-none",value:n,onChange:e=>s(e.target.value),children:[(0,t.jsx)("option",{value:d,children:a}),i.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))]})]})}function x({active:e,onClick:n,children:s,disabled:a=!1,title:i}){return(0,t.jsx)("button",{type:"button",onClick:n,disabled:a,title:i,className:`rounded px-2 py-0.5 font-medium transition ${a?"cursor-not-allowed text-fg-muted/40":e?"bg-amber text-ink":"text-fg-muted hover:text-fg"}`,children:s})}function k({standpoints:e,proxyMeshes:s,selectedKey:a,onSelect:i}){let l=(0,n.useRef)(null),o=(0,n.useMemo)(()=>e.filter(e=>e.origin),[e]),r=(0,n.useMemo)(()=>{let e=1/0,t=-1/0,n=1/0,a=-1/0,i=(s,i)=>{e=Math.min(e,s),t=Math.max(t,s),n=Math.min(n,i),a=Math.max(a,i)};for(let e of s)i(e.aabb[0],e.aabb[2]),i(e.aabb[3],e.aabb[5]);for(let e of o)i(e.origin[0],e.origin[2]);return Number.isFinite(e)?(t-e<.001&&(e-=1,t+=1),a-n<.001&&(n-=1,a+=1),{minX:e,maxX:t,minZ:n,maxZ:a}):{minX:-1,maxX:1,minZ:-1,maxZ:1}},[s,o]),u=(0,n.useMemo)(()=>{let e=Math.min(134/(r.maxX-r.minX),94/(r.maxZ-r.minZ));return(t,n)=>[8+(t-r.minX)*e,8+(n-r.minZ)*e]},[r]),c=(0,n.useMemo)(()=>o.reduce((e,t)=>Math.max(e,t.count),1),[o]);return(0,n.useEffect)(()=>{let e=l.current,t=e?.getContext("2d");if(!t)return;let n=window.devicePixelRatio||1;for(let a of(e.width=150*n,e.height=110*n,t.setTransform(n,0,0,n,0,0),t.clearRect(0,0,150,110),t.fillStyle="rgba(8,10,14,0.85)",t.fillRect(0,0,150,110),t.strokeStyle="rgba(120,140,170,0.35)",t.lineWidth=1,s)){let[e,n]=u(a.aabb[0],a.aabb[2]),[s,i]=u(a.aabb[3],a.aabb[5]);t.strokeRect(Math.min(e,s),Math.min(n,i),Math.abs(s-e),Math.abs(i-n))}for(let e of o){let[n,s]=u(e.origin[0],e.origin[2]),i=2+e.count/c*4,l=e.key===a;t.beginPath(),t.arc(n,s,i,0,2*Math.PI),t.fillStyle=l?"rgba(242,115,242,1)":"rgba(242,115,242,0.55)",t.fill(),l&&(t.beginPath(),t.arc(n,s,i+2.5,0,2*Math.PI),t.strokeStyle="rgba(255,255,255,0.9)",t.lineWidth=1.5,t.stroke())}},[s,o,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===o.length)return;let n=t.getBoundingClientRect(),s=(e.clientX-n.left)/n.width*150,a=(e.clientY-n.top)/n.height*110,r=null,c=1/0;for(let e of o){let[t,n]=u(e.origin[0],e.origin[2]),i=(t-s)**2+(n-a)**2;i<c&&(c=i,r=e)}r&&c<=196&&i(r.key)}})]})}e.s(["FlowSankey3DView",0,function({links:v,gridSize:w,proxyMeshes:j=[],maxLinks:M=80,api:z,flowQuery:y,hasFirstPerson:_=!1}){let $=(0,n.useRef)(null),I=(0,n.useRef)(null),C=(0,n.useRef)(null),[P,B]=(0,n.useState)("loading"),[R,S]=(0,n.useState)(null),[L,N]=(0,n.useState)(d),[A,E]=(0,n.useState)(d),[O,q]=(0,n.useState)(d),[Z,T]=(0,n.useState)("aggregate"),[F,V]=(0,n.useState)(null),[W,X]=(0,n.useState)("all"),[H,D]=(0,n.useState)(v),U=!!(z&&y),K=(0,n.useMemo)(()=>y?JSON.stringify(y):"",[y]),Y=(0,n.useRef)(!1);(0,n.useEffect)(()=>{!Y.current&&_&&(X("first-person"),Y.current=!0)},[_]),(0,n.useEffect)(()=>{_&&"viewer"===W&&X("first-person")},[_,W]),(0,n.useEffect)(()=>{U||D(v)},[v,U]),(0,n.useEffect)(()=>{if(!z||!y)return;let e=!1,t="all"===W?void 0:W;return z.flowHeatmap({...y,bins:w,limit:400,groupByOrigin:!0,cameraMode:t}).then(t=>{e||D(t)}).catch(()=>{e||D([])}),()=>{e=!0}},[z,K,W,w]);let G=(0,n.useMemo)(()=>{let e=new Map;for(let t of H){if(!t.originVoxel)continue;let n=i(t.originVoxel),s=t.origin,a=e.get(n);a?(a.count+=t.count,s&&(a.ox+=s[0]*t.count,a.oy+=s[1]*t.count,a.oz+=s[2]*t.count,a.wsum+=t.count)):e.set(n,{key:n,voxel:t.originVoxel,count:t.count,ox:s?s[0]*t.count:0,oy:s?s[1]*t.count:0,oz:s?s[2]*t.count:0,wsum:s?t.count:0})}return[...e.values()].map(e=>({key:e.key,voxel:e.voxel,count:e.count,origin:e.wsum>0?[e.ox/e.wsum,e.oy/e.wsum,e.oz/e.wsum]:void 0})).sort((e,t)=>t.count-e.count)},[H]),J=G.length>0,Q=(0,n.useMemo)(()=>O===d?null:G.find(e=>e.key===O)??null,[G,O]),ee=(0,n.useMemo)(()=>(function(e,t,n,o){let r=e.filter(e=>e.originVoxel);if(0===r.length)return{standpoints:[],gazes:[],meshes:[],ribbons:[],maxCount:1};let u=t.slice(0,Math.max(1,o.maxStandpoints)),c=new Set(u.map(e=>e.key)),h=e=>{let t=e.originVoxel?i(e.originVoxel):s;return c.has(t)?t:s},d=new Map;for(let e of r)d.set(e.mesh,(d.get(e.mesh)??0)+e.count);let m=new Set([...d.entries()].sort((e,t)=>t[1]-e[1]).slice(0,Math.max(1,o.maxMeshes)).map(([e])=>e)),b=e=>m.has(e)?e:a,f=new Map;for(let e of r){let t=h(e),n=b(e.mesh),s=`${t}|${e.azimuth_bin}|${e.elevation_bin}|${n}`,a=f.get(s);a?a.count+=e.count:f.set(s,{standpointId:t,gazeId:`${t}|${e.azimuth_bin}|${e.elevation_bin}`,meshId:n,azimuthBin:e.azimuth_bin,elevationBin:e.elevation_bin,count:e.count})}let p=[...f.values()].sort((e,t)=>t.count-e.count),g=p.slice(0,Math.max(1,o.maxRibbons)),x=p.slice(Math.max(1,o.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}`,s=e.get(n);if(s)s.count+=t.count;else{let s={standpointId:t.standpointId,gazeId:t.gazeId,meshId:a,azimuthBin:t.azimuthBin,elevationBin:t.elevationBin,count:t.count};e.set(n,s),g.push(s)}}}let k=new Set(g.map(e=>e.standpointId)),v=new Set(g.map(e=>e.meshId)),w=[...u.filter(e=>k.has(e.key)).map(e=>e.key),...k.has(s)?[s]:[]],j=w.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,w.length),0],count:a,label:n?`[${n.voxel[0]}, ${n.voxel[1]}, ${n.voxel[2]}]`:"Other standpoints",isOther:e===s}}),M=new Map(j.map(e=>[e.id,e.pos[1]])),z=new Map;for(let e of g)z.set(e.meshId,(z.get(e.meshId)??0)+e.count);let y=[...v].sort((e,t)=>(z.get(t)??0)-(z.get(e)??0));y.sort((e,t)=>(e===a)-(t===a));let _=y.map((e,t)=>({id:e,kind:"mesh",pos:[2.6,l(t,y.length),0],count:z.get(e)??0,label:e===a?"Other meshes":e,isOther:e===a})),$=new Map;for(let e of g){let t=$.get(e.gazeId);t?t.count+=e.count:$.set(e.gazeId,{az:e.azimuthBin,el:e.elevationBin,sp:e.standpointId,count:e.count})}let I=[...$.entries()].map(([e,t])=>{let s=M.get(t.sp)??0,a=(t.az+.5)/n-.5;return{id:e,kind:"gaze",pos:[0,s+((t.el+.5)/n-.5)*.85,1.6*a],count:t.count,label:`(${t.az}, ${t.el})`,isOther:!1}}),C=g.reduce((e,t)=>Math.max(e,t.count),1);return{standpoints:j,gazes:I,meshes:_,ribbons:g,maxCount:C}})(H,G,w,m),[H,G,w]),et="twostage"===Z&&J;(0,n.useEffect)(()=>{"twostage"!==Z||J||T("aggregate")},[Z,J]);let en=(0,n.useMemo)(()=>{if(O!==d&&J)return H.filter(e=>e.originVoxel&&i(e.originVoxel)===O);if(!J)return H;let e=new Map;for(let t of H){let n=`${t.azimuth_bin}|${t.elevation_bin}|${t.mesh}`,s=e.get(n);s?s.count+=t.count:e.set(n,{azimuth_bin:t.azimuth_bin,elevation_bin:t.elevation_bin,mesh:t.mesh,count:t.count})}return[...e.values()]},[H,O,J]),es=(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 es)e.set(t.mesh,(e.get(t.mesh)??0)+t.count);return[...e.entries()].sort((e,t)=>t[1]-e[1])},[es]),ei=(0,n.useMemo)(()=>{let e=new Map;for(let t of es){let n=b(t.azimuth_bin,t.elevation_bin),s=e.get(n);s?s.count+=t.count:e.set(n,{azimuthBin:t.azimuth_bin,elevationBin:t.elevation_bin,count:t.count})}return[...e.values()].sort((e,t)=>t.count-e.count)},[es]);(0,n.useEffect)(()=>{!et&&L!==d&&(ea.some(([e])=>e===L)||N(d))},[et,L,ea]),(0,n.useEffect)(()=>{!et&&A!==d&&(ei.some(e=>b(e.azimuthBin,e.elevationBin)===A)||E(d))},[et,A,ei]),(0,n.useEffect)(()=>{!et&&O!==d&&(G.some(e=>e.key===O)||q(d))},[et,O,G]),(0,n.useEffect)(()=>{N(d),E(d),q(d)},[Z]);let el=(0,n.useMemo)(()=>et?ee.ribbons.filter(e=>{let t=O===d||e.standpointId===O,n=A===d||b(e.azimuthBin,e.elevationBin)===A,s=L===d||e.meshId===L;return t&&n&&s}).length:es.filter(e=>{let t=A===d||b(e.azimuth_bin,e.elevation_bin)===A,n=L===d||e.mesh===L;return t&&n}).length,[et,ee,es,L,A,O]),eo=et?ee.ribbons.length:es.length,er=(0,n.useMemo)(()=>et?ee.standpoints.map(e=>({value:e.id,label:`${e.label} \xb7 ${e.count}`})):G.slice(0,24).map(e=>({value:e.key,label:`[${e.voxel[0]}, ${e.voxel[1]}, ${e.voxel[2]}] \xb7 ${e.count}`})),[et,ee,G]),eu=(0,n.useMemo)(()=>{if(et){let e=new Map;for(let t of ee.ribbons){let n=b(t.azimuthBin,t.elevationBin),s=e.get(n);s?s.count+=t.count:e.set(n,{az:t.azimuthBin,el:t.elevationBin,count:t.count})}return[...e.values()].sort((e,t)=>t.count-e.count).map(e=>({value:b(e.az,e.el),label:`(${e.az}, ${e.el}) \xb7 ${e.count}`}))}return ei.map(e=>({value:b(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]),eh=(0,n.useRef)(es);eh.current=es;let ed=(0,n.useRef)(ee);ed.current=ee;let em=(0,n.useRef)(j);em.current=j;let eb=(0,n.useRef)(ea);eb.current=ea;let ef=(0,n.useRef)(L);ef.current=L;let ep=(0,n.useRef)(A);ep.current=A;let eg=(0,n.useRef)(O);eg.current=O;let ex=(0,n.useRef)(Q);ex.current=Q;let ek=(0,n.useRef)(null),ev=et?ee.ribbons.length>0:es.length>0;return(0,n.useEffect)(()=>{let t=$.current;if(!t)return;if(!ev)return void B("empty");let n=!1,s=null;return B("loading"),S(null),(async()=>{try{let a,[{Engine:i},{Scene:l},{ArcRotateCamera:c},{HemisphericLight:h},{Vector3:m,Color3:g,Color4:x},{MeshBuilder:k},{StandardMaterial:v}]=await Promise.all([e.A(95338),e.A(79935),e.A(49958),e.A(7513),e.A(58532),e.A(43302),e.A(61027),e.A(87961)]);if(n)return;let j=new i(t,!0,{preserveDrawingBuffer:!1}),M=new l(j);M.clearColor=new x(.04,.05,.07,1);let z=[],y=()=>{for(let e of z)e.dispose();z=[]};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,r.disableWheelZoom)(a),I.current=a,C.current={target:e,alpha:a.alpha,beta:a.beta,radius:a.radius},new h("ts-light",new m(.3,1,.2),M);let n={standpoint:[.95,.45,.95],gaze:[.45,.75,1],mesh:[1,.82,.42]},s={standpoint:.26,gaze:.13,mesh:.22},i=(e,t,n)=>{let s=e[0],a=e[1],i=e[2],l=t[0],o=t[1],r=t[2],u=[(s+l)/2,(a+o)/2+n,(i+r)/2],c=[];for(let e=0;e<=12;e++){let t=e/12,n=1-t;c.push(new m(n*n*s+2*n*t*u[0]+t*t*l,n*n*a+2*n*t*u[1]+t*t*o,n*n*i+2*n*t*u[2]+t*t*r))}return c},l=()=>{y();let e=ed.current;if(0===e.ribbons.length)return;let t=eg.current,a=ep.current,l=ef.current,r=e=>{let n=t===d||e.standpointId===t,s=a===d||b(e.azimuthBin,e.elevationBin)===a,i=l===d||e.meshId===l;return n&&s&&i},u=t!==d||a!==d||l!==d,c=new Set;for(let t of e.ribbons)r(t)&&(c.add(t.standpointId),c.add(t.gazeId),c.add(t.meshId));let h=[...e.standpoints,...e.gazes,...e.meshes],f=new Map(h.map(e=>[e.id,e.pos])),p=new Map(h.map(e=>[e.id,e.label]));for(let e of h){let t=k.CreateSphere(`ts-node-${e.kind}-${e.id}`,{diameter:s[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,o]=n[e.kind];a.emissiveColor=new g(i,l,o),a.alpha=!u||c.has(e.id)?1:.2,t.material=a,t.isPickable=!0,t.metadata={hoverLabel:e.label},z.push(t,a)}for(let t of e.ribbons){let n=f.get(t.standpointId),s=f.get(t.gazeId),a=f.get(t.meshId);if(!n||!s||!a)continue;let l=t.count/e.maxCount,c=.18+.5*l,h=[...i(n,s,c),...i(s,a,c).slice(1)],d=r(t),[m,b,x]=(0,o.heatRgb)(l),w=k.CreateTube(`ts-link-${t.standpointId}-${t.gazeId}-${t.meshId}`,{path:h,radius:(d?1:.4)*(.012+.04*l),tessellation:8,cap:0,sideOrientation:0},M),j=new v(`ts-link-mat-${t.standpointId}-${t.gazeId}-${t.meshId}`,M);j.disableLighting=!0,j.emissiveColor=new g(m,b,x),j.alpha=d?.35+.65*l:u?.06:.18,w.material=j,w.isPickable=!0,w.metadata={hoverLabel:p.get(t.meshId)??t.meshId},z.push(w,j)}};ek.current=l,l()}else{let e=new Map;for(let t of em.current)e.set(t.name,f(t));let n=new Map,s=eb.current.map(([e])=>e).filter(t=>!e.has(t));for(let e=0;e<s.length;e++){let t=s[e],a=p(t),i=e/Math.max(1,s.length)*Math.PI*2+a%100/100*.35;n.set(t,[2.2*Math.cos(i),-.35+(a%7-3)*.06,2.2*Math.sin(i)])}for(let[t,s]of e.entries())n.set(t,s);let i=0,l=0,u=0,x=0;for(let e of n.values())i+=e[0],l+=e[1],u+=e[2],x++;let j=new m(i/Math.max(1,x),l/Math.max(1,x),u/Math.max(1,x)),_=1.8;for(let e of n.values()){let t=e[0]-j.x,n=e[1]-j.y,s=e[2]-j.z;_=Math.max(_,Math.sqrt(t*t+n*n+s*s))}let $=.75*_+1,P=Math.max(1,_/1.8);(a=new c("flow-cam",Math.PI/4,Math.PI/3,3.4*_,j,M)).attachControl(t,!0),(0,r.disableWheelZoom)(a),I.current=a,C.current={target:j,alpha:a.alpha,beta:a.beta,radius:a.radius},new h("flow-light",new m(.3,1,.2),M);let B=k.CreateSphere("flow-source-dome",{diameter:2*$,segments:20},M);B.position=j;let R=new v("flow-source-dome-mat",M);R.wireframe=!0,R.disableLighting=!0,R.emissiveColor=new g(.16,.2,.28),R.alpha=.35,B.material=R,B.isPickable=!1;let S=()=>{y();let e=eh.current;if(0===e.length)return;let t=ef.current,n=ep.current,s=ex.current,a=new Map;for(let e of em.current)a.set(e.name,f(e));let i=new Map,l=eb.current.map(([e])=>e).filter(e=>!a.has(e));for(let e=0;e<l.length;e++){let t=l[e],n=p(t),s=e/Math.max(1,l.length)*Math.PI*2+n%100/100*.35;i.set(t,[2.2*Math.cos(s),-.35+(n%7-3)*.06,2.2*Math.sin(s)])}for(let[e,t]of a.entries())i.set(e,t);let r=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),z.push(u,c);let h=new Set,x=new Set,_=e=>{let s=n===d||b(e.azimuth_bin,e.elevation_bin)===n,a=t===d||e.mesh===t;return s&&a},I=new Set,C=new Set;for(let t of e)_(t)&&(I.add(b(t.azimuth_bin,t.elevation_bin)),C.add(t.mesh));for(let s of e){let e=`${s.azimuth_bin}|${s.elevation_bin}`,a=i.get(s.mesh);if(!a)continue;let l=_(s),b=(s.azimuth_bin+.5)/w*Math.PI*2-Math.PI,f=(s.elevation_bin+.5)/w*Math.PI-Math.PI/2,p=Math.cos(f),y=p*Math.cos(b),B=Math.sin(f),R=p*Math.sin(b),S=new m(j.x+y*$,j.y+B*$,j.z+R*$),L=new m(a[0],a[1],a[2]);if(!h.has(e)){let s=k.CreateSphere(`flow-src-${e}`,{diameter:.12*P,segments:6},M);s.position=S;let a=u.clone(`flow-src-mat-${e}`);a.alpha=I.has(e)||t===d&&n===d?1:.22,s.material=a,s.isPickable=!1,h.add(e),z.push(s,a)}if(!x.has(s.mesh)){let e=k.CreateSphere(`flow-target-${s.mesh}`,{diameter:.2*P,segments:7},M);e.position=L;let a=c.clone(`flow-target-mat-${s.mesh}`);a.alpha=C.has(s.mesh)||t===d&&n===d?1:.22,e.material=a,e.isPickable=!0,e.metadata={hoverLabel:s.mesh},x.add(s.mesh),z.push(e,a)}let N=S.add(L).scale(.5),A=N.subtract(j),E=Math.sqrt(A.x*A.x+A.y*A.y+A.z*A.z),O=E>1e-6?A.x/E:0,q=E>1e-6?A.y/E:1,Z=E>1e-6?A.z/E:0,T=(.35+s.count/r*.75)*P,F=new m(N.x+O*T,N.y+q*T+.12*P,N.z+Z*T),V=[];for(let e=0;e<=18;e++){let t=e/18,n=1-t;V.push(new m(n*n*S.x+2*n*t*F.x+t*t*L.x,n*n*S.y+2*n*t*F.y+t*t*L.y,n*n*S.z+2*n*t*F.z+t*t*L.z))}let W=s.count/r,[X,H,D]=(0,o.heatRgb)(W),U=k.CreateTube(`flow-link-${s.mesh}-${e}`,{path:V,radius:(l?1:.4)*(.012+.04*W)*P,tessellation:8,cap:0,sideOrientation:0},M),K=new v(`flow-link-mat-${s.mesh}-${e}`,M);K.disableLighting=!0,K.emissiveColor=new g(X,H,D),K.alpha=l?.35+.65*W:.08,U.material=K,U.isPickable=!0,U.metadata={hoverLabel:s.mesh},z.push(U,K)}let B=s?.origin;if(B){let e=new m(B[0],B[1],B[2]),t=k.CreateSphere("flow-standpoint",{diameter:.26*P,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 s=k.CreateLines("flow-standpoint-stem",{points:[e,new m(e.x,j.y,e.z)]},M);s.color=new g(.95,.45,.95),s.isPickable=!1,z.push(t,n,s)}};ek.current=S,S()}j.runRenderLoop(()=>M.render());let _=()=>j.resize();window.addEventListener("resize",_);let $=(0,u.attachMeshHover)(M,t,V),P=(0,r.attachDoubleClickFocus)(M,t,a);B("ready"),s=()=>{window.removeEventListener("resize",_),$(),P(),V(null),ek.current=null,I.current=null,C.current=null,y(),M.dispose(),j.dispose()}}catch(e){if(n)return;B("error"),S(e instanceof Error?e.message:"Failed to render flow links.")}})(),()=>{n=!0,s?.()}},[et,w,ev]),(0,n.useEffect)(()=>{ek.current?.()},[es,ee,j,L,A,O,Q]),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("canvas",{ref:$,className:"aspect-video w-full rounded-lg border border-edge bg-ink"}),F?(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:F.x+12,top:F.y+12},children:F.label}):null,"ready"===P?(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:()=>T("aggregate"),children:"Aggregate"}),(0,t.jsx)(x,{active:et,onClick:()=>T("twostage"),children:"Two-stage"})]}):null,U?(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:()=>X("first-person"),children:"Walk"}),(0,t.jsx)(x,{active:"viewer"===W,onClick:()=>X("viewer"),disabled:_,title:_?"Orbit (viewer) flow isn't available for walkable scenes":void 0,children:"Orbit"}),(0,t.jsx)(x,{active:"all"===W,onClick:()=>X("all"),children:"All"})]}):null,J?(0,t.jsx)(g,{label:"Standpoint",value:O,onChange:q,allLabel:"All standpoints",options:er}):null,(0,t.jsx)(g,{label:et?"Gaze":"Source",value:A,onChange:E,allLabel:et?"All gaze sectors":"All sources",options:eu}),(0,t.jsx)(g,{label:"Mesh",value:L,onChange:N,allLabel:"All meshes",options:ec})]}),et?(0,t.jsx)(k,{standpoints:G,proxyMeshes:j,selectedKey:O,onSelect:e=>q(t=>t===e?d: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:[U&&!_?(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,"/",eo]})]}),(0,t.jsx)(h.ZoomButtons,{onZoom:e=>I.current&&(0,r.stepZoom)(I.current,e),onReset:()=>I.current&&C.current&&(0,r.resetFocus)(I.current,C.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"===P?"Rendering…":"empty"===P?"No aggregate flow links in range.":"error"===P?R??"Flow view unavailable.":null})]})}],19399)},95338,e=>{e.v(t=>Promise.all(["static/chunks/21at65obnoo8z.js","static/chunks/08m_4cihfmik8.js","static/chunks/2uhrhq35bki6u.js","static/chunks/1di5enkavl9vx.js","static/chunks/1gtj_l5ame5mw.js","static/chunks/0ti58h622yo-_.js","static/chunks/2btabnibkm0db.js"].map(t=>e.l(t))).then(()=>t(62619)))},79935,e=>{e.v(t=>Promise.all(["static/chunks/1dfwa563iciz3.js","static/chunks/00g5suuoa-_wn.js","static/chunks/21at65obnoo8z.js","static/chunks/1uu55ejvi7q5u.js","static/chunks/0ti58h622yo-_.js","static/chunks/0bgcaf2x51kms.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/1di5enkavl9vx.js","static/chunks/0ubxyut5rr600.js"].map(t=>e.l(t))).then(()=>t(90189)))},49958,e=>{e.v(t=>Promise.all(["static/chunks/00g5suuoa-_wn.js","static/chunks/08obqw64faj8j.js","static/chunks/1d1tpj9nm1nhf.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/21at65obnoo8z.js","static/chunks/1xbzxfeq9789f.js","static/chunks/1i4f3n_2_3ery.js","static/chunks/0ti58h622yo-_.js","static/chunks/0ubxyut5rr600.js","static/chunks/1di5enkavl9vx.js","static/chunks/1uu55ejvi7q5u.js","static/chunks/0u8yr4k1y6m2t.js"].map(t=>e.l(t))).then(()=>t(50734)))},7513,e=>{e.v(t=>Promise.all(["static/chunks/3ed24zmt8qfys.js","static/chunks/09ppu_k464q-n.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/1di5enkavl9vx.js","static/chunks/21at65obnoo8z.js"].map(t=>e.l(t))).then(()=>t(67984)))},58532,e=>{e.v(t=>Promise.all(["static/chunks/3c_31f20z4jrl.js","static/chunks/1di5enkavl9vx.js","static/chunks/21at65obnoo8z.js"].map(t=>e.l(t))).then(()=>t(29959)))},43302,e=>{e.v(t=>Promise.all(["static/chunks/3ckp70rgr63u9.js","static/chunks/00g5suuoa-_wn.js","static/chunks/026vw95s88gsy.js","static/chunks/20qelrstvz9_n.js","static/chunks/21at65obnoo8z.js","static/chunks/1_8acnu6_-qe-.js","static/chunks/08obqw64faj8j.js","static/chunks/1d1tpj9nm1nhf.js","static/chunks/0ti58h622yo-_.js","static/chunks/0u8yr4k1y6m2t.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/0bgcaf2x51kms.js","static/chunks/0ubxyut5rr600.js","static/chunks/1di5enkavl9vx.js","static/chunks/1uu55ejvi7q5u.js","static/chunks/3a_khw6q6pyh1.js"].map(t=>e.l(t))).then(()=>t(16874)))},61027,e=>{e.v(t=>Promise.all(["static/chunks/2si5cg3hl5dtf.js","static/chunks/2h5hase6ewoyc.js","static/chunks/00g5suuoa-_wn.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/1bmyq1b0by7ug.js","static/chunks/21at65obnoo8z.js","static/chunks/0ubxyut5rr600.js","static/chunks/0ti58h622yo-_.js","static/chunks/1d1tpj9nm1nhf.js","static/chunks/0bgcaf2x51kms.js","static/chunks/1uu55ejvi7q5u.js","static/chunks/1di5enkavl9vx.js"].map(t=>e.l(t))).then(()=>t(27455)))},87961,e=>{e.v(t=>Promise.all(["static/chunks/00g5suuoa-_wn.js","static/chunks/3ez20hi1mxw0w.js","static/chunks/21at65obnoo8z.js","static/chunks/1uu55ejvi7q5u.js","static/chunks/3qatb38-tk_gd.js","static/chunks/1di5enkavl9vx.js","static/chunks/3fdx-rnos5ft-.js","static/chunks/0bgcaf2x51kms.js","static/chunks/0ubxyut5rr600.js","static/chunks/0ti58h622yo-_.js"].map(t=>e.l(t))).then(()=>t(87531)))}]);
|