@uptimizr/dashboard 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/out/404.html +1 -1
  2. package/out/__next.__PAGE__.txt +4 -4
  3. package/out/__next._full.txt +11 -11
  4. package/out/__next._head.txt +4 -4
  5. package/out/__next._index.txt +4 -4
  6. package/out/__next._tree.txt +2 -2
  7. package/out/_next/static/chunks/0-29qf-q72olu.js +1 -0
  8. package/out/_next/static/chunks/0-tk5ptli--r0.js +1 -0
  9. package/out/_next/static/chunks/006nix8mv66z_.js +1 -0
  10. package/out/_next/static/chunks/01aeari2x_tlz.js +1 -0
  11. package/out/_next/static/chunks/0296l8lzd69ns.js +1 -0
  12. package/out/_next/static/chunks/02tc9r3sc7fgc.js +1 -0
  13. package/out/_next/static/chunks/{256k1jw1m--l7.js → 03st_hmor6qju.js} +1 -1
  14. package/out/_next/static/chunks/{2ue1wo4ryk87z.js → 04pk6n3z75dcy.js} +1 -1
  15. package/out/_next/static/chunks/05l3dluxivcor.js +1 -0
  16. package/out/_next/static/chunks/06ljadw2-i91-.js +1 -0
  17. package/out/_next/static/chunks/06m_64ysu9kn0.js +1 -0
  18. package/out/_next/static/chunks/{2ycvtdd68gub7.js → 08bm3ye5govev.js} +1 -1
  19. package/out/_next/static/chunks/{32ahba5ezp467.js → 08rk1dp1wb-gm.js} +38 -38
  20. package/out/_next/static/chunks/091ll-lp6spu3.js +1 -0
  21. package/out/_next/static/chunks/09p5fltt7o3to.js +1 -0
  22. package/out/_next/static/chunks/{3mbnfpufs2-7e.js → 0_tqu60oxaj7q.js} +1 -1
  23. package/out/_next/static/chunks/{3riekaxl3uxfb.js → 0_ux41xcoea3u.js} +40 -40
  24. package/out/_next/static/chunks/0b7-mrrg7ryj2.js +1 -0
  25. package/out/_next/static/chunks/{29tfeb6amdkjb.js → 0c2k-gvwph4qs.js} +1 -1
  26. package/out/_next/static/chunks/0e7xuupmrw4-e.js +1 -0
  27. package/out/_next/static/chunks/0f_nv15a8q415.js +1 -0
  28. package/out/_next/static/chunks/0fxfsshoxnnh6.js +4 -0
  29. package/out/_next/static/chunks/0g6u34xkzrpjn.js +1 -0
  30. package/out/_next/static/chunks/0g7p8zp2kxve5.js +1 -0
  31. package/out/_next/static/chunks/0gblbgw7w7r9w.js +1 -0
  32. package/out/_next/static/chunks/0gwa154w_0wuh.js +1 -0
  33. package/out/_next/static/chunks/0h-ohf4gntwtj.js +1 -0
  34. package/out/_next/static/chunks/0h1o0cr3327tt.js +1 -0
  35. package/out/_next/static/chunks/0i9oqg-xbq-a9.js +1 -0
  36. package/out/_next/static/chunks/0ioyy42h35hnd.js +1 -0
  37. package/out/_next/static/chunks/{242xhzxxetctz.js → 0jf3n5n5yrr4o.js} +1 -1
  38. package/out/_next/static/chunks/{3idaz_s77e-j_.js → 0jxklh_ayjd4b.js} +12 -12
  39. package/out/_next/static/chunks/{07eeopuufsqp-.js → 0k79ryqehst0b.js} +11 -11
  40. package/out/_next/static/chunks/{3be6s4_kn9q-o.js → 0kcbdjbdxu_wa.js} +1 -1
  41. package/out/_next/static/chunks/0kr-bd6fuqc2s.js +1 -0
  42. package/out/_next/static/chunks/0l3wwyl93sqh9.js +1 -0
  43. package/out/_next/static/chunks/{3l1dr_qm_x5kp.js → 0m0n7kjzscx0y.js} +1 -1
  44. package/out/_next/static/chunks/0m3yjobjg36ce.js +1 -0
  45. package/out/_next/static/chunks/{1a9l89j7e6mqu.js → 0mk8tangq9equ.js} +1 -1
  46. package/out/_next/static/chunks/0mqi0xn_c010j.js +1 -0
  47. package/out/_next/static/chunks/0msckddycfy76.js +1 -0
  48. package/out/_next/static/chunks/0ngai1_zxwsk8.js +1 -0
  49. package/out/_next/static/chunks/0ngiuj5k-or6g.js +1 -0
  50. package/out/_next/static/chunks/0nx_t8iq-324h.js +1 -0
  51. package/out/_next/static/chunks/0oap0o8a8a_cl.js +1 -0
  52. package/out/_next/static/chunks/{3tm-pqpmq_ppw.js → 0ostjlqtwkhqr.js} +1 -1
  53. package/out/_next/static/chunks/{1uu-rt_8p1edp.js → 0ptp4ne7j6yg6.js} +11 -11
  54. package/out/_next/static/chunks/0rruvj1cyflrh.js +1 -0
  55. package/out/_next/static/chunks/{0o_mp98xzqfyf.js → 0tl8j9f8lt0yf.js} +1 -1
  56. package/out/_next/static/chunks/{0sqys6o2pbe1q.js → 0ufakw529sr9d.js} +38 -38
  57. package/out/_next/static/chunks/{3ne77mjdz2y7o.js → 0vddljjnmozzx.js} +1 -1
  58. package/out/_next/static/chunks/{0dm32-jq30tg8.js → 0w0sx062qmcsh.js} +1 -1
  59. package/out/_next/static/chunks/{0rys92_73hdb0.js → 0x4-zyy8pzmlq.js} +1 -1
  60. package/out/_next/static/chunks/0x6i6e6863tir.js +1 -0
  61. package/out/_next/static/chunks/{3k9d4ylc3li2t.js → 0zcdc17ie6lmh.js} +10 -10
  62. package/out/_next/static/chunks/{44nxswtahaq4w.js → 0zo4x1j8ug-kb.js} +5 -5
  63. package/out/_next/static/chunks/{0jmn7u31w95ly.js → 0zwkmsojeuekb.js} +2 -2
  64. package/out/_next/static/chunks/{3m6nmp2dca6un.js → 1--aypw9o8yng.js} +37 -37
  65. package/out/_next/static/chunks/1--kelnig7pxx.js +1 -0
  66. package/out/_next/static/chunks/1-ud6hztxiazp.js +1 -0
  67. package/out/_next/static/chunks/10v4rskkrjgd_.js +1 -0
  68. package/out/_next/static/chunks/117ys3lltfmcu.js +1 -0
  69. package/out/_next/static/chunks/14klj_i6-l-10.js +1 -0
  70. package/out/_next/static/chunks/159u-hx80yfaw.js +1 -0
  71. package/out/_next/static/chunks/{3gimb3z_mteou.js → 168r9r65o9jnc.js} +1 -1
  72. package/out/_next/static/chunks/{0w8_1yjvol1f0.js → 16d4a4iopj2if.js} +5 -5
  73. package/out/_next/static/chunks/{2z_jn9ud28fk7.js → 17d1isrw8gtnb.js} +1 -1
  74. package/out/_next/static/chunks/17dabmbnkkplu.js +1 -0
  75. package/out/_next/static/chunks/17dmbt396_tyq.js +1 -0
  76. package/out/_next/static/chunks/17ev44x54_jrd.js +1 -0
  77. package/out/_next/static/chunks/17svumd4o0qnc.js +1 -0
  78. package/out/_next/static/chunks/17v12p4sfraa0.js +1 -0
  79. package/out/_next/static/chunks/18avgwx9nlxp9.js +1 -0
  80. package/out/_next/static/chunks/{0tw4dyl-cp-hd.js → 18k-0jn63_5ie.js} +1 -1
  81. package/out/_next/static/chunks/18r387bj9iv0j.js +1 -0
  82. package/out/_next/static/chunks/18ss4ls60s31e.js +1 -0
  83. package/out/_next/static/chunks/1a7cup181rjod.js +1 -0
  84. package/out/_next/static/chunks/1ajmblsp0wj0_.js +1 -0
  85. package/out/_next/static/chunks/{1dsy2ngmfflis.js → 1b2tkk7e_2o0k.js} +2 -2
  86. package/out/_next/static/chunks/{1ltux4lwz7muf.js → 1bv97vf67p_ri.js} +33 -33
  87. package/out/_next/static/chunks/1e1zozntzsx42.js +1 -0
  88. package/out/_next/static/chunks/1ek5rtpo6rxev.js +1 -0
  89. package/out/_next/static/chunks/1evp209qbr4cr.js +5 -0
  90. package/out/_next/static/chunks/1f1vq3goue1w4.js +1 -0
  91. package/out/_next/static/chunks/{296w2ke-v5tbm.js → 1f92k-xa0pl-3.js} +1 -1
  92. package/out/_next/static/chunks/1fa265388524p.js +1 -0
  93. package/out/_next/static/chunks/1fruncg3k-3pu.js +3 -0
  94. package/out/_next/static/chunks/{1_qzlkuxukhpq.js → 1fvlbwp6r93wo.js} +22 -22
  95. package/out/_next/static/chunks/1g3z43o3h-024.js +31 -0
  96. package/out/_next/static/chunks/1g_27texazqcj.js +1 -0
  97. package/out/_next/static/chunks/1iaxzjly2pap1.js +1 -0
  98. package/out/_next/static/chunks/{0c83pe1mpx456.js → 1j--a56ji33_x.js} +1 -1
  99. package/out/_next/static/chunks/{112hws17nz665.js → 1kl5xxohpr6-4.js} +1 -1
  100. package/out/_next/static/chunks/1kmsg9ef5djl3.js +1 -0
  101. package/out/_next/static/chunks/1kq86iv41cet4.js +1 -0
  102. package/out/_next/static/chunks/1l12hkz1g7uhf.js +1 -0
  103. package/out/_next/static/chunks/{3figbil1t4ssj.js → 1ll0ta8a2qx1p.js} +16 -16
  104. package/out/_next/static/chunks/{1ynju1jqfrcv0.js → 1oara6fkfvgs3.js} +1 -1
  105. package/out/_next/static/chunks/1par9m038tiov.js +1 -0
  106. package/out/_next/static/chunks/1rcfy_gzean3n.js +1 -0
  107. package/out/_next/static/chunks/{35h5n42wxwgzk.js → 1rne-b-ktit5c.js} +2 -2
  108. package/out/_next/static/chunks/1t60cososq7b0.js +1 -0
  109. package/out/_next/static/chunks/1tdg_eolxlcdl.js +1 -0
  110. package/out/_next/static/chunks/1vkww9l6lgqag.js +1 -0
  111. package/out/_next/static/chunks/1vpcaaf-0dn7q.js +1 -0
  112. package/out/_next/static/chunks/1vzmzrjhlm1q5.js +1 -0
  113. package/out/_next/static/chunks/1w9xu1qa9-wmv.js +1 -0
  114. package/out/_next/static/chunks/1wyr4at61q29n.js +1 -0
  115. package/out/_next/static/chunks/{3_mu-4rdjajna.js → 1y12bjsbq18_t.js} +34 -34
  116. package/out/_next/static/chunks/1y20bv6vl4ylk.js +1 -0
  117. package/out/_next/static/chunks/{0tnlbw78tgaxp.js → 1zcrrq1fx8g2y.js} +2 -2
  118. package/out/_next/static/chunks/224_scesvd739.js +1 -0
  119. package/out/_next/static/chunks/229mkx-mtfcgf.js +1 -0
  120. package/out/_next/static/chunks/{3yfrsm8lfi6ls.js → 22qzld31fbhbv.js} +1 -1
  121. package/out/_next/static/chunks/245h82k-g1nxr.js +1 -0
  122. package/out/_next/static/chunks/24cqjhy669845.js +1 -0
  123. package/out/_next/static/chunks/25ctnyh7njp-d.js +4 -0
  124. package/out/_next/static/chunks/2716si10ouwu-.js +1 -0
  125. package/out/_next/static/chunks/286ggpetqnwyo.js +3 -0
  126. package/out/_next/static/chunks/28f1onw3nywbz.js +1 -0
  127. package/out/_next/static/chunks/28ycc-1519hl2.js +1 -0
  128. package/out/_next/static/chunks/{17xd8hnazzr0g.js → 29v8falcmjvev.js} +34 -33
  129. package/out/_next/static/chunks/{0o6ayai0s01js.js → 2_7dp91937mqi.js} +1 -1
  130. package/out/_next/static/chunks/2_hgfg-cjqw1-.js +1 -0
  131. package/out/_next/static/chunks/2ab-99frxpah-.js +1 -0
  132. package/out/_next/static/chunks/2apt1vh-7rl2l.js +1 -0
  133. package/out/_next/static/chunks/2bn9u9r0rfhvc.js +1 -0
  134. package/out/_next/static/chunks/{45bwefvdpztfs.js → 2btqzk0tj0gz6.js} +1 -1
  135. package/out/_next/static/chunks/2cvvxifoedn6j.js +1 -0
  136. package/out/_next/static/chunks/2dhv35o59yzao.js +1 -0
  137. package/out/_next/static/chunks/{17q0c2h5ui10r.js → 2dolerz81xb52.js} +1 -1
  138. package/out/_next/static/chunks/{2xwy0-qfho1iz.js → 2dqg85hsevk3c.js} +2 -2
  139. package/out/_next/static/chunks/{41wt50z9tx9cx.js → 2enlv4yy0t-9j.js} +12 -12
  140. package/out/_next/static/chunks/2ey30qeaob985.js +1 -0
  141. package/out/_next/static/chunks/2f0r-df7tb3pu.js +1 -0
  142. package/out/_next/static/chunks/2gh4z57fem0_v.js +1 -0
  143. package/out/_next/static/chunks/2gtebfttq1v0o.js +1 -0
  144. package/out/_next/static/chunks/{1ua15kzid0_8p.js → 2h051-1hu4co_.js} +9 -9
  145. package/out/_next/static/chunks/2h1uw3cluvmmo.js +1 -0
  146. package/out/_next/static/chunks/2ib62lnqqaf4p.js +1 -0
  147. package/out/_next/static/chunks/2j-sax2xfdv7l.js +1 -0
  148. package/out/_next/static/chunks/{3z84au-mitjjw.js → 2k4s5rt7-l8jr.js} +1 -1
  149. package/out/_next/static/chunks/2kje_jvmwsvwo.js +1 -0
  150. package/out/_next/static/chunks/{2cbmf9m7lqv6k.js → 2kn_dqzbyabtn.js} +1 -1
  151. package/out/_next/static/chunks/2ktxjmx03u9l3.js +1 -0
  152. package/out/_next/static/chunks/2kw33jl_i9o5j.css +3 -0
  153. package/out/_next/static/chunks/2l_oqx9idxcs8.js +1 -0
  154. package/out/_next/static/chunks/{42k2-4_2hrg6u.js → 2mleh3pbge181.js} +1 -1
  155. package/out/_next/static/chunks/{31u5lbu1vxznh.js → 2npk7tr63h7rl.js} +1 -1
  156. package/out/_next/static/chunks/2op88btas-hl8.js +1 -0
  157. package/out/_next/static/chunks/{1gs-5722l4u59.js → 2p8dbh81chhon.js} +1 -1
  158. package/out/_next/static/chunks/{2yph6f7khgqii.js → 2reukv9c7cq_9.js} +1 -1
  159. package/out/_next/static/chunks/{14ggsmqwej_tt.js → 2rjc8yn50ducj.js} +34 -34
  160. package/out/_next/static/chunks/2s0dwzg7kq36n.js +1 -0
  161. package/out/_next/static/chunks/2vaoftqgc44cg.js +1 -0
  162. package/out/_next/static/chunks/{3_gku1pwluoo0.js → 2vmybybb3dvia.js} +1 -1
  163. package/out/_next/static/chunks/2w7yf7ouyrlkb.js +1 -0
  164. package/out/_next/static/chunks/{3218lp8l0a5g_.js → 2y75diyxqlhzl.js} +1 -1
  165. package/out/_next/static/chunks/{0fh-9h9ylxskr.js → 2yr9wt421xdjr.js} +17 -17
  166. package/out/_next/static/chunks/{0otsec99kdkt7.js → 2yzui3v-besdu.js} +4 -4
  167. package/out/_next/static/chunks/{3wi9gzq2mtr_q.js → 2z9ot-w1x60fv.js} +1 -1
  168. package/out/_next/static/chunks/2zljunurdji0q.js +1 -0
  169. package/out/_next/static/chunks/30363ptka3vzy.js +1 -0
  170. package/out/_next/static/chunks/{38x3c1ra5slhe.js → 3043pprgv9ors.js} +23 -23
  171. package/out/_next/static/chunks/340pg0qkv5tqq.js +1 -0
  172. package/out/_next/static/chunks/{37epa8fz59vba.js → 348hdbpkkcq_2.js} +22 -21
  173. package/out/_next/static/chunks/34gp3hvr3j6um.js +1 -0
  174. package/out/_next/static/chunks/38ea9kqlbxt86.js +1 -0
  175. package/out/_next/static/chunks/38g9jpxjoxn2x.js +1 -0
  176. package/out/_next/static/chunks/390fogn9oz13i.js +1 -0
  177. package/out/_next/static/chunks/{3w9go565cjhq3.js → 39lxb7c--3_2u.js} +30 -30
  178. package/out/_next/static/chunks/39ojyykom0z2r.js +1 -0
  179. package/out/_next/static/chunks/{2bjlls8-qe05r.js → 3_bzxvqtk1t53.js} +12 -12
  180. package/out/_next/static/chunks/3ajhvedcs_lzb.js +1 -0
  181. package/out/_next/static/chunks/3bsvp8qhjqdu0.js +1 -0
  182. package/out/_next/static/chunks/{023axeoslq39i.js → 3d0ejsnhbzi-j.js} +1 -1
  183. package/out/_next/static/chunks/3d5yb9ybkz7hx.js +1 -0
  184. package/out/_next/static/chunks/{0echnagbkyx79.js → 3efuvh_35yhes.js} +39 -39
  185. package/out/_next/static/chunks/3fx3sriw1w3sa.js +1 -0
  186. package/out/_next/static/chunks/{2qq3uzsbiicw3.js → 3fz7tc-4j13uv.js} +21 -21
  187. package/out/_next/static/chunks/3g4e2txsrb2p2.js +1 -0
  188. package/out/_next/static/chunks/{1m_buecgcq67j.js → 3g5ae-38cepwm.js} +199 -199
  189. package/out/_next/static/chunks/3g_h_00xs9u59.js +1 -0
  190. package/out/_next/static/chunks/3gi0f1kg72xsf.js +1 -0
  191. package/out/_next/static/chunks/{38fhw7fatsyvd.js → 3he9bxsc67ivq.js} +1 -1
  192. package/out/_next/static/chunks/3hr-mlwi78nov.js +1 -0
  193. package/out/_next/static/chunks/3jha6wlqw8459.js +1 -0
  194. package/out/_next/static/chunks/3kr1polwvt6o_.js +1 -0
  195. package/out/_next/static/chunks/{0j__xaq_8_di1.js → 3mwoauxszd3mn.js} +1 -1
  196. package/out/_next/static/chunks/3ovd8o_usay7j.js +1 -0
  197. package/out/_next/static/chunks/3pdpaqzwhhijn.js +1 -0
  198. package/out/_next/static/chunks/3pyggl13glbdc.js +1 -0
  199. package/out/_next/static/chunks/3rl45k759wfi1.js +1 -0
  200. package/out/_next/static/chunks/{0flc7nppbmsl1.js → 3sbm1ak54_2ep.js} +1 -1
  201. package/out/_next/static/chunks/3sg4zff4-h3t1.js +1 -0
  202. package/out/_next/static/chunks/3urd7r018nel4.js +1 -0
  203. package/out/_next/static/chunks/3v0td-ziuai2i.js +1 -0
  204. package/out/_next/static/chunks/3vaho-xrtuchd.js +2 -0
  205. package/out/_next/static/chunks/3vxkkhs0vi_xa.js +1 -0
  206. package/out/_next/static/chunks/{1g7emwu85bifo.js → 3w1a2o8nevap8.js} +18 -18
  207. package/out/_next/static/chunks/3wqs57qehored.js +1 -0
  208. package/out/_next/static/chunks/3x6wpv_z5m6rz.js +1 -0
  209. package/out/_next/static/chunks/{1qg_etglhvp9h.js → 3y9c26fv1poq_.js} +199 -199
  210. package/out/_next/static/chunks/{0ql-s-tsmel_u.js → 404f_93w2e8ty.js} +1 -1
  211. package/out/_next/static/chunks/40acif2eh_unv.js +1 -0
  212. package/out/_next/static/chunks/{1hatz-jlztrn0.js → 4227p7752rnny.js} +1 -1
  213. package/out/_next/static/chunks/42oyfkhdvb-u3.js +1 -0
  214. package/out/_next/static/chunks/44gsjajjdhf51.js +1 -0
  215. package/out/_next/static/chunks/{turbopack-19105pdhzxp1x.js → turbopack-16ab30_1p4vhq.js} +1 -1
  216. package/out/_not-found/__next._full.txt +9 -9
  217. package/out/_not-found/__next._head.txt +4 -4
  218. package/out/_not-found/__next._index.txt +4 -4
  219. package/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
  220. package/out/_not-found/__next._not-found.txt +3 -3
  221. package/out/_not-found/__next._tree.txt +2 -2
  222. package/out/_not-found.html +1 -1
  223. package/out/_not-found.txt +9 -9
  224. package/out/index.html +1 -1
  225. package/out/index.txt +11 -11
  226. package/package.json +8 -8
  227. package/out/_next/static/chunks/002cjeoit6-up.js +0 -1
  228. package/out/_next/static/chunks/02n1uiltexy3w.js +0 -1
  229. package/out/_next/static/chunks/03ab2khhe8-x5.js +0 -1
  230. package/out/_next/static/chunks/04_yytpc2paxy.js +0 -1
  231. package/out/_next/static/chunks/06qot1qvlsqaz.js +0 -1
  232. package/out/_next/static/chunks/08a5xek662n8n.js +0 -1
  233. package/out/_next/static/chunks/08wuc9--s8zn_.js +0 -1
  234. package/out/_next/static/chunks/0927l-ygd5c8d.js +0 -1
  235. package/out/_next/static/chunks/09510356f0lad.js +0 -1
  236. package/out/_next/static/chunks/0_eu72k69lxj7.js +0 -1
  237. package/out/_next/static/chunks/0beajlqy8p8b5.js +0 -1
  238. package/out/_next/static/chunks/0dn0yx0rn6mpf.js +0 -1
  239. package/out/_next/static/chunks/0eh1ml86u8dh7.js +0 -1
  240. package/out/_next/static/chunks/0fzmc1up21g1i.js +0 -1
  241. package/out/_next/static/chunks/0g_v2zswo4l6f.js +0 -1
  242. package/out/_next/static/chunks/0grlb9lo8e502.js +0 -1
  243. package/out/_next/static/chunks/0h22pg-0xrxnm.js +0 -1
  244. package/out/_next/static/chunks/0j6p1pmc14t96.js +0 -1
  245. package/out/_next/static/chunks/0j_6dx-sttgsy.js +0 -1
  246. package/out/_next/static/chunks/0kfd-cvj5fvtz.js +0 -1
  247. package/out/_next/static/chunks/0r47gs_e93cka.js +0 -1
  248. package/out/_next/static/chunks/0titqrn1qmcsv.js +0 -1
  249. package/out/_next/static/chunks/0tl_moiyi2txt.js +0 -1
  250. package/out/_next/static/chunks/0v82oqyoy9zol.js +0 -1
  251. package/out/_next/static/chunks/0vbce-8omgurc.js +0 -1
  252. package/out/_next/static/chunks/0vfsg5byzep_0.js +0 -1
  253. package/out/_next/static/chunks/0xh144a5fz58h.js +0 -1
  254. package/out/_next/static/chunks/0xjltg_pph0c8.js +0 -1
  255. package/out/_next/static/chunks/0yeqgh0dnas8d.js +0 -1
  256. package/out/_next/static/chunks/101-7e_7up7rk.js +0 -1
  257. package/out/_next/static/chunks/128e51hj_04r0.js +0 -1
  258. package/out/_next/static/chunks/12kv810lohbsx.js +0 -5
  259. package/out/_next/static/chunks/14bws-suyy5zu.js +0 -1
  260. package/out/_next/static/chunks/15s7425ffrec9.js +0 -3
  261. package/out/_next/static/chunks/17genz6pkmty_.js +0 -1
  262. package/out/_next/static/chunks/18dczy9ylt2s_.js +0 -1
  263. package/out/_next/static/chunks/18xs_kvsaolb0.js +0 -1
  264. package/out/_next/static/chunks/19016f8-ry0z6.js +0 -1
  265. package/out/_next/static/chunks/1_6oejyxj39li.js +0 -1
  266. package/out/_next/static/chunks/1_aon8nz9p1fr.js +0 -1
  267. package/out/_next/static/chunks/1akaj5rhgitn3.js +0 -1
  268. package/out/_next/static/chunks/1bvl1ws7b_3gn.js +0 -1
  269. package/out/_next/static/chunks/1cdbk6kxyr1c9.js +0 -1
  270. package/out/_next/static/chunks/1fbjkk55uu4_g.js +0 -1
  271. package/out/_next/static/chunks/1furcfsgrw_3g.js +0 -1
  272. package/out/_next/static/chunks/1g0-f1g3gn_rs.js +0 -1
  273. package/out/_next/static/chunks/1gt4kh0_xmigy.js +0 -1
  274. package/out/_next/static/chunks/1h8xzuuhhglu9.js +0 -1
  275. package/out/_next/static/chunks/1iioifo7i0t0_.js +0 -1
  276. package/out/_next/static/chunks/1iiz7jqgj20z0.js +0 -1
  277. package/out/_next/static/chunks/1kujmd5n0j9nk.js +0 -1
  278. package/out/_next/static/chunks/1n9sy0yt5d2vq.js +0 -1
  279. package/out/_next/static/chunks/1nj82er7msdto.js +0 -2
  280. package/out/_next/static/chunks/1p1gz6dseck--.js +0 -1
  281. package/out/_next/static/chunks/1p1xtsfwvpuqo.js +0 -1
  282. package/out/_next/static/chunks/1p8f6okk2ewbz.js +0 -1
  283. package/out/_next/static/chunks/1pdep2_c530sg.js +0 -1
  284. package/out/_next/static/chunks/1th_t5ujeqlkf.js +0 -1
  285. package/out/_next/static/chunks/1thr-mdzbu96v.js +0 -1
  286. package/out/_next/static/chunks/1tta1a064979p.js +0 -1
  287. package/out/_next/static/chunks/1u_riwm0nfww7.js +0 -1
  288. package/out/_next/static/chunks/1uu93wuxigx4k.js +0 -1
  289. package/out/_next/static/chunks/1vuq3dos1406d.css +0 -3
  290. package/out/_next/static/chunks/1zfojlgb15okk.js +0 -1
  291. package/out/_next/static/chunks/1zj8x5wbgnzz-.js +0 -1
  292. package/out/_next/static/chunks/1zl6t15gh34nn.js +0 -1
  293. package/out/_next/static/chunks/2-qo2o1_fmpy-.js +0 -3
  294. package/out/_next/static/chunks/223vrr_4sfhsj.js +0 -1
  295. package/out/_next/static/chunks/22cr2b04btguf.js +0 -1
  296. package/out/_next/static/chunks/24essz5mmvx-6.js +0 -1
  297. package/out/_next/static/chunks/259obyrpxcv6r.js +0 -1
  298. package/out/_next/static/chunks/26v9yqicofqba.js +0 -1
  299. package/out/_next/static/chunks/2712627rfsmwn.js +0 -1
  300. package/out/_next/static/chunks/290d93hmm_e8b.js +0 -1
  301. package/out/_next/static/chunks/2_2fk7iddrs43.js +0 -1
  302. package/out/_next/static/chunks/2ckd7f1wbfod-.js +0 -1
  303. package/out/_next/static/chunks/2d6hru4qo23tt.js +0 -1
  304. package/out/_next/static/chunks/2ejvntxtvf5o9.js +0 -1
  305. package/out/_next/static/chunks/2f7_3tzf7xhps.js +0 -1
  306. package/out/_next/static/chunks/2gxd_o1g89_bv.js +0 -1
  307. package/out/_next/static/chunks/2hd2txb4-m9k1.js +0 -1
  308. package/out/_next/static/chunks/2hpxou_cnp4f_.js +0 -1
  309. package/out/_next/static/chunks/2izioctrfc0s5.js +0 -1
  310. package/out/_next/static/chunks/2jhnk4h4n0udv.js +0 -1
  311. package/out/_next/static/chunks/2jpkhkk9zi8-f.js +0 -1
  312. package/out/_next/static/chunks/2kpet_l1kq2sx.js +0 -1
  313. package/out/_next/static/chunks/2nck5w4c7leb7.js +0 -1
  314. package/out/_next/static/chunks/2qqqpu0ahfdda.js +0 -1
  315. package/out/_next/static/chunks/2r3ct6se2qn8z.js +0 -1
  316. package/out/_next/static/chunks/2u-f7mmxvk8wj.js +0 -1
  317. package/out/_next/static/chunks/2uk-vwlxe9-xr.js +0 -1
  318. package/out/_next/static/chunks/2ur5-lxdvv1jm.js +0 -1
  319. package/out/_next/static/chunks/2veqsohwfhfqc.js +0 -1
  320. package/out/_next/static/chunks/2vqlv9wnewhu9.js +0 -1
  321. package/out/_next/static/chunks/2wzshintp5lf8.js +0 -1
  322. package/out/_next/static/chunks/2x-00glogc485.js +0 -1
  323. package/out/_next/static/chunks/2yfxy0f5fqs4o.js +0 -1
  324. package/out/_next/static/chunks/2z88mt3ixktu3.js +0 -1
  325. package/out/_next/static/chunks/3-eswqjobiqk1.js +0 -1
  326. package/out/_next/static/chunks/30-tbi7pys6fp.js +0 -4
  327. package/out/_next/static/chunks/30c-nsedy_ce0.js +0 -1
  328. package/out/_next/static/chunks/337hn35kts7ud.js +0 -1
  329. package/out/_next/static/chunks/33dgpebv-tf73.js +0 -1
  330. package/out/_next/static/chunks/36jkdhq6kb-cf.js +0 -1
  331. package/out/_next/static/chunks/3833xfnz0a-ub.js +0 -1
  332. package/out/_next/static/chunks/38awrh_qxn22k.js +0 -1
  333. package/out/_next/static/chunks/39idqlqlcp5b9.js +0 -1
  334. package/out/_next/static/chunks/3coacc4-g-g5c.js +0 -1
  335. package/out/_next/static/chunks/3e00fzdfkclzq.js +0 -1
  336. package/out/_next/static/chunks/3e8fmlq0k5wkg.js +0 -1
  337. package/out/_next/static/chunks/3e9tzyrt4_98z.js +0 -1
  338. package/out/_next/static/chunks/3edelqkq92pil.js +0 -1
  339. package/out/_next/static/chunks/3j-4wuhs5weba.js +0 -1
  340. package/out/_next/static/chunks/3jjfnwvybayy7.js +0 -1
  341. package/out/_next/static/chunks/3jwm5dfk_78gc.js +0 -1
  342. package/out/_next/static/chunks/3l3_0ack3gy4k.js +0 -1
  343. package/out/_next/static/chunks/3lwhs5ja7tun3.js +0 -1
  344. package/out/_next/static/chunks/3mcd08gmt038z.js +0 -1
  345. package/out/_next/static/chunks/3mt5th7b1i_u9.js +0 -1
  346. package/out/_next/static/chunks/3puhrqtujktyv.js +0 -1
  347. package/out/_next/static/chunks/3rdifucupcgkg.js +0 -1
  348. package/out/_next/static/chunks/3sdoskq_buttj.js +0 -1
  349. package/out/_next/static/chunks/3sjq_xoi4rbyg.js +0 -31
  350. package/out/_next/static/chunks/3tg-ma9tv9xu4.js +0 -1
  351. package/out/_next/static/chunks/3xagd_2_9zft2.js +0 -1
  352. package/out/_next/static/chunks/3xsq_anpad-fb.js +0 -1
  353. package/out/_next/static/chunks/3ycv2qq7vpbua.js +0 -1
  354. package/out/_next/static/chunks/4030dhur2h70-.js +0 -1
  355. package/out/_next/static/chunks/40ffffml4h_3r.js +0 -4
  356. package/out/_next/static/chunks/431slrqh0wa0g.js +0 -1
  357. package/out/_next/static/chunks/43s_lbd1i2krj.js +0 -1
  358. /package/out/_next/static/{1NTbwHeIsn3AW-SeH9aP0 → 2AsIePMYsPfJoAl46w-g4}/_buildManifest.js +0 -0
  359. /package/out/_next/static/{1NTbwHeIsn3AW-SeH9aP0 → 2AsIePMYsPfJoAl46w-g4}/_clientMiddlewareManifest.js +0 -0
  360. /package/out/_next/static/{1NTbwHeIsn3AW-SeH9aP0 → 2AsIePMYsPfJoAl46w-g4}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12423,t=>{"use strict";class e{static GetShadersRepository(t=0){return 0===t?e.ShadersRepository:e.ShadersRepositoryWGSL}static GetShadersStore(t=0){return 0===t?e.ShadersStore:e.ShadersStoreWGSL}static GetIncludesShadersStore(t=0){return 0===t?e.IncludesShadersStore:e.IncludesShadersStoreWGSL}}e.ShadersRepository="src/Shaders/",e.ShadersStore={},e.IncludesShadersStore={},e.ShadersRepositoryWGSL="src/ShadersWGSL/",e.ShadersStoreWGSL={},e.IncludesShadersStoreWGSL={},t.s(["ShaderStore",0,e])},85531,t=>{"use strict";var e=t.i(65002);class i{static GetPlanes(t){let r=[];for(let t=0;t<6;t++)r.push(new e.Plane(0,0,0,0));return i.GetPlanesToRef(t,r),r}static GetNearPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]+i[2],e.normal.y=i[7]+i[6],e.normal.z=i[11]+i[10],e.d=i[15]+i[14],e.normalize()}static GetFarPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]-i[2],e.normal.y=i[7]-i[6],e.normal.z=i[11]-i[10],e.d=i[15]-i[14],e.normalize()}static GetLeftPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]+i[0],e.normal.y=i[7]+i[4],e.normal.z=i[11]+i[8],e.d=i[15]+i[12],e.normalize()}static GetRightPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]-i[0],e.normal.y=i[7]-i[4],e.normal.z=i[11]-i[8],e.d=i[15]-i[12],e.normalize()}static GetTopPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]-i[1],e.normal.y=i[7]-i[5],e.normal.z=i[11]-i[9],e.d=i[15]-i[13],e.normalize()}static GetBottomPlaneToRef(t,e){let i=t.m;e.normal.x=i[3]+i[1],e.normal.y=i[7]+i[5],e.normal.z=i[11]+i[9],e.d=i[15]+i[13],e.normalize()}static GetPlanesToRef(t,e){i.GetNearPlaneToRef(t,e[0]),i.GetFarPlaneToRef(t,e[1]),i.GetLeftPlaneToRef(t,e[2]),i.GetRightPlaneToRef(t,e[3]),i.GetTopPlaneToRef(t,e[4]),i.GetBottomPlaneToRef(t,e[5])}static IsPointInFrustum(t,e){for(let i=0;i<6;i++)if(0>e[i].dotCoordinate(t))return!1;return!0}}t.s(["Frustum",0,i])},50107,t=>{"use strict";var e=t.i(96265),i=t.i(35407);t.s(["PickingInfo",0,class{constructor(){this.hit=!1,this.distance=0,this.pickedPoint=null,this.pickedMesh=null,this.bu=0,this.bv=0,this.faceId=-1,this.subMeshFaceId=-1,this.subMeshId=0,this.pickedSprite=null,this.thinInstanceIndex=-1,this.ray=null,this.originMesh=null,this.aimTransform=null,this.gripTransform=null}getNormal(t=!1,r=!0){let n;if(!this.pickedMesh||r&&!this.pickedMesh.isVerticesDataPresent(i.VertexBuffer.NormalKind))return null;let a=this.pickedMesh.getIndices();a?.length===0&&(a=null);let o=e.TmpVectors.Vector3[0],s=e.TmpVectors.Vector3[1],h=e.TmpVectors.Vector3[2];if(r){let t=this.pickedMesh.getVerticesData(i.VertexBuffer.NormalKind),r=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId],o):o.copyFromFloats(t[3*this.faceId*3],t[3*this.faceId*3+1],t[3*this.faceId*3+2]),l=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId+1],s):s.copyFromFloats(t[(3*this.faceId+1)*3],t[(3*this.faceId+1)*3+1],t[(3*this.faceId+1)*3+2]),c=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId+2],h):h.copyFromFloats(t[(3*this.faceId+2)*3],t[(3*this.faceId+2)*3+1],t[(3*this.faceId+2)*3+2]);r=r.scale(this.bu),l=l.scale(this.bv),c=c.scale(1-this.bu-this.bv),n=new e.Vector3(r.x+l.x+c.x,r.y+l.y+c.y,r.z+l.z+c.z)}else{let t=this.pickedMesh.getVerticesData(i.VertexBuffer.PositionKind),r=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId],o):o.copyFromFloats(t[3*this.faceId*3],t[3*this.faceId*3+1],t[3*this.faceId*3+2]),l=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId+1],s):s.copyFromFloats(t[(3*this.faceId+1)*3],t[(3*this.faceId+1)*3+1],t[(3*this.faceId+1)*3+2]),c=a?e.Vector3.FromArrayToRef(t,3*a[3*this.faceId+2],h):h.copyFromFloats(t[(3*this.faceId+2)*3],t[(3*this.faceId+2)*3+1],t[(3*this.faceId+2)*3+2]),u=r.subtract(l),d=c.subtract(l);n=e.Vector3.Cross(u,d)}let l=(t,i)=>{if(-1!==this.thinInstanceIndex){let r=t._thinInstanceDataStorage.matrixData,n=this.thinInstanceIndex<<4;if(r&&r.length>n){let t=e.TmpVectors.Matrix[0];e.Matrix.FromArrayToRef(r,n,t),e.Vector3.TransformNormalToRef(i,t,i)}}let r=t.getWorldMatrix();t.nonUniformScaling&&(e.TmpVectors.Matrix[0].copyFrom(r),(r=e.TmpVectors.Matrix[0]).setTranslationFromFloats(0,0,0),r.invert(),r.transposeToRef(e.TmpVectors.Matrix[1]),r=e.TmpVectors.Matrix[1]),e.Vector3.TransformNormalToRef(i,r,i)};if(t&&l(this.pickedMesh,n),this.ray){let i=e.TmpVectors.Vector3[0].copyFrom(n);t||l(this.pickedMesh,i),e.Vector3.Dot(i,this.ray.direction)>0&&n.negateInPlace()}return n.normalize(),n}getTextureCoordinates(t=i.VertexBuffer.UVKind){if(!this.pickedMesh||!this.pickedMesh.isVerticesDataPresent(t))return null;let r=this.pickedMesh.getIndices();if(!r)return null;let n=this.pickedMesh.getVerticesData(t);if(!n)return null;let a=e.Vector2.FromArray(n,2*r[3*this.faceId]),o=e.Vector2.FromArray(n,2*r[3*this.faceId+1]),s=e.Vector2.FromArray(n,2*r[3*this.faceId+2]);return a=a.scale(this.bu),o=o.scale(this.bv),s=s.scale(1-this.bu-this.bv),new e.Vector2(a.x+o.x+s.x,a.y+o.y+s.y)}}])},21222,t=>{"use strict";var e=t.i(96265);class i{}i.POINTERDOWN=1,i.POINTERUP=2,i.POINTERMOVE=4,i.POINTERWHEEL=8,i.POINTERPICK=16,i.POINTERTAP=32,i.POINTERDOUBLETAP=64;class r{constructor(t,e){this.type=t,this.event=e}}t.s(["PointerEventTypes",0,i,"PointerInfo",0,class extends r{get pickInfo(){return this._pickInfo||this._generatePickInfo(),this._pickInfo}constructor(t,e,i,r=null){super(t,e),this._pickInfo=i,this._inputManager=r}_generatePickInfo(){this._inputManager&&(this._pickInfo=this._inputManager._pickMove(this.event),this._inputManager._setRayOnPointerInfo(this._pickInfo,this.event),this._inputManager=null)}},"PointerInfoPre",0,class extends r{constructor(t,i,r,n){super(t,i),this.ray=null,this.originalPickingInfo=null,this.skipOnPointerObservable=!1,this.localPosition=new e.Vector2(r,n)}}])},36365,t=>{"use strict";class e{}e.KEYDOWN=1,e.KEYUP=2;class i{constructor(t,e){this.type=t,this.event=e}}t.s(["KeyboardEventTypes",0,e,"KeyboardInfo",0,i,"KeyboardInfoPre",0,class extends i{get skipOnPointerObservable(){return this.skipOnKeyboardObservable}set skipOnPointerObservable(t){this.skipOnKeyboardObservable=t}constructor(t,e){super(t,e),this.type=t,this.event=e,this.skipOnKeyboardObservable=!1}}])},76696,t=>{"use strict";var e,i;(i=e||(e={}))[i.PointerMove=0]="PointerMove",i[i.PointerDown=1]="PointerDown",i[i.PointerUp=2]="PointerUp";class r{}r.DOM_DELTA_PIXEL=0,r.DOM_DELTA_LINE=1,r.DOM_DELTA_PAGE=2,t.s(["EventConstants",0,r])},54361,t=>{"use strict";class e{constructor(t,e){this.width=t,this.height=e}toString(){return`{W: ${this.width}, H: ${this.height}}`}getClassName(){return"Size"}getHashCode(){let t=0|this.width;return 397*t^this.height}copyFrom(t){this.width=t.width,this.height=t.height}copyFromFloats(t,e){return this.width=t,this.height=e,this}set(t,e){return this.copyFromFloats(t,e)}multiplyByFloats(t,i){return new e(this.width*t,this.height*i)}clone(){return new e(this.width,this.height)}equals(t){return!!t&&this.width===t.width&&this.height===t.height}get surface(){return this.width*this.height}static Zero(){return new e(0,0)}add(t){return new e(this.width+t.width,this.height+t.height)}subtract(t){return new e(this.width-t.width,this.height-t.height)}scale(t){return new e(this.width*t,this.height*t)}static Lerp(t,i,r){return new e(t.width+(i.width-t.width)*r,t.height+(i.height-t.height)*r)}}t.s(["Size",0,e])},1773,t=>{"use strict";t.s(["useOpenGLOrientationForUV",()=>!1])},976,44754,t=>{"use strict";var e=t.i(96265),i=t.i(70653),r=t.i(46703);class n{constructor(t,e,i){this.name=t,this.from=e,this.to=i}clone(){return new n(this.name,this.from,this.to)}}t.s(["AnimationRange",0,n],44754);var a=t.i(34548),o=t.i(54361),s=t.i(65295),h=t.i(80871),l=t.i(77052);let c=Object.freeze(new e.Quaternion(0,0,0,0)),u=Object.freeze(e.Vector3.Zero()),d=Object.freeze(e.Vector2.Zero()),p=Object.freeze(o.Size.Zero()),m=Object.freeze(i.Color3.Black()),_=Object.freeze(new i.Color4(0,0,0,0)),g={key:0,repeatCount:0,loopMode:2};class f{static _PrepareAnimation(t,r,n,a,s,h,l,c){let u;if(!isNaN(parseFloat(s))&&isFinite(s)?u=f.ANIMATIONTYPE_FLOAT:s instanceof e.Quaternion?u=f.ANIMATIONTYPE_QUATERNION:s instanceof e.Vector3?u=f.ANIMATIONTYPE_VECTOR3:s instanceof e.Vector2?u=f.ANIMATIONTYPE_VECTOR2:s instanceof i.Color3?u=f.ANIMATIONTYPE_COLOR3:s instanceof i.Color4?u=f.ANIMATIONTYPE_COLOR4:s instanceof o.Size&&(u=f.ANIMATIONTYPE_SIZE),void 0==u)return null;let d=new f(t,r,n,u,l);return d.setKeys([{frame:0,value:s},{frame:a,value:h}]),void 0!==c&&d.setEasingFunction(c),d}get runtimeAnimations(){return this._runtimeAnimations}get hasRunningRuntimeAnimations(){for(let t of this._runtimeAnimations)if(!t.isStopped())return!0;return!1}constructor(t,e,i,r,n,a){this.name=t,this.targetProperty=e,this.framePerSecond=i,this.dataType=r,this.loopMode=n,this.enableBlending=a,this._easingFunction=null,this._runtimeAnimations=[],this._events=[],this.blendingSpeed=.01,this._ranges={},this._coreAnimation=null,this.targetPropertyPath=e.split("."),this.dataType=r,this.loopMode=void 0===n?f.ANIMATIONLOOPMODE_CYCLE:n,this.uniqueId=f._UniqueIdGenerator++}toString(t){let e="Name: "+this.name+", property: "+this.targetProperty;if(e+=", datatype: "+["Float","Vector3","Quaternion","Matrix","Color3","Vector2"][this.dataType],e+=", nKeys: "+(this._keys?this._keys.length:"none"),e+=", nRanges: "+(this._ranges?Object.keys(this._ranges).length:"none"),t){e+=", Ranges: {";let t=!0;for(let i in this._ranges)t||(e+=", "),t=!1,e+=i;e+="}"}return e}addEvent(t){this._events.push(t),this._events.sort((t,e)=>t.frame-e.frame)}removeEvents(t){for(let e=0;e<this._events.length;e++)this._events[e].frame===t&&(this._events.splice(e,1),e--)}getEvents(){return this._events}createRange(t,e,i){this._ranges[t]||(this._ranges[t]=new n(t,e,i))}deleteRange(t,e=!0){let i=this._ranges[t];if(i){if(e){let t=i.from,e=i.to;for(let i=this._keys.length-1;i>=0;i--)this._keys[i].frame>=t&&this._keys[i].frame<=e&&this._keys.splice(i,1)}this._ranges[t]=null}}getRange(t){return this._ranges[t]}getKeys(){return this._keys}getHighestFrame(){let t=0;for(let e=0,i=this._keys.length;e<i;e++)t<this._keys[e].frame&&(t=this._keys[e].frame);return t}getEasingFunction(){return this._easingFunction}setEasingFunction(t){this._easingFunction=t}floatInterpolateFunction(t,e,i){return(0,r.Lerp)(t,e,i)}floatInterpolateFunctionWithTangents(t,e,i,n,a){return(0,r.Hermite)(t,e,i,n,a)}quaternionInterpolateFunction(t,i,r){return e.Quaternion.Slerp(t,i,r)}quaternionInterpolateFunctionWithTangents(t,i,r,n,a){return e.Quaternion.Hermite(t,i,r,n,a).normalize()}vector3InterpolateFunction(t,i,r){return e.Vector3.Lerp(t,i,r)}vector3InterpolateFunctionWithTangents(t,i,r,n,a){return e.Vector3.Hermite(t,i,r,n,a)}vector2InterpolateFunction(t,i,r){return e.Vector2.Lerp(t,i,r)}vector2InterpolateFunctionWithTangents(t,i,r,n,a){return e.Vector2.Hermite(t,i,r,n,a)}sizeInterpolateFunction(t,e,i){return o.Size.Lerp(t,e,i)}color3InterpolateFunction(t,e,r){return i.Color3.Lerp(t,e,r)}color3InterpolateFunctionWithTangents(t,e,r,n,a){return i.Color3.Hermite(t,e,r,n,a)}color4InterpolateFunction(t,e,r){return i.Color4.Lerp(t,e,r)}color4InterpolateFunctionWithTangents(t,e,r,n,a){return i.Color4.Hermite(t,e,r,n,a)}_getKeyValue(t){return"function"==typeof t?t():t}evaluate(t){return g.key=0,this._interpolate(t,g)}_interpolate(t,e,i=!1){let r;if(e.loopMode===f.ANIMATIONLOOPMODE_CONSTANT&&e.repeatCount>0)return e.highLimitValue.clone?e.highLimitValue.clone():e.highLimitValue;let n=this._keys;if(this._coreAnimation)r=this._coreAnimation._key;else{let a=n.length;for(r=e.key;r>=0&&t<n[r].frame;)--r;for(;r+1<=a-1&&t>=n[r+1].frame;)++r;if(e.key=r,r<0)return i?void 0:this._getKeyValue(n[0].value);if(r+1>a-1)return i?void 0:this._getKeyValue(n[a-1].value);this._key=r}let a=n[r],o=n[r+1];if(i&&(t===a.frame||t===o.frame))return;let s=this._getKeyValue(a.value),h=this._getKeyValue(o.value);if(1===a.interpolation)if(o.frame>t)return s;else return h;let l=void 0!==a.outTangent&&void 0!==o.inTangent,g=o.frame-a.frame,T=(t-a.frame)/g,A=a.easingFunction||this.getEasingFunction();switch(A&&(T=A.ease(T)),this.dataType){case f.ANIMATIONTYPE_FLOAT:{let t=l?this.floatInterpolateFunctionWithTangents(s,a.outTangent*g,h,o.inTangent*g,T):this.floatInterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return t;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return(e.offsetValue??0)*e.repeatCount+t}break}case f.ANIMATIONTYPE_QUATERNION:{let t=l?this.quaternionInterpolateFunctionWithTangents(s,a.outTangent.scale(g),h,o.inTangent.scale(g),T):this.quaternionInterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:break;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return t.addInPlace((e.offsetValue||c).scale(e.repeatCount))}return t}case f.ANIMATIONTYPE_VECTOR3:{let t=l?this.vector3InterpolateFunctionWithTangents(s,a.outTangent.scale(g),h,o.inTangent.scale(g),T):this.vector3InterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return t;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return t.add((e.offsetValue||u).scale(e.repeatCount))}break}case f.ANIMATIONTYPE_VECTOR2:{let t=l?this.vector2InterpolateFunctionWithTangents(s,a.outTangent.scale(g),h,o.inTangent.scale(g),T):this.vector2InterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return t;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return t.add((e.offsetValue||d).scale(e.repeatCount))}break}case f.ANIMATIONTYPE_SIZE:switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return this.sizeInterpolateFunction(s,h,T);case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return this.sizeInterpolateFunction(s,h,T).add((e.offsetValue||p).scale(e.repeatCount))}break;case f.ANIMATIONTYPE_COLOR3:{let t=l?this.color3InterpolateFunctionWithTangents(s,a.outTangent.scale(g),h,o.inTangent.scale(g),T):this.color3InterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return t;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return t.add((e.offsetValue||m).scale(e.repeatCount))}break}case f.ANIMATIONTYPE_COLOR4:{let t=l?this.color4InterpolateFunctionWithTangents(s,a.outTangent.scale(g),h,o.inTangent.scale(g),T):this.color4InterpolateFunction(s,h,T);switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:return t;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return t.add((e.offsetValue||_).scale(e.repeatCount))}break}case f.ANIMATIONTYPE_MATRIX:switch(e.loopMode){case f.ANIMATIONLOOPMODE_CYCLE:case f.ANIMATIONLOOPMODE_CONSTANT:case f.ANIMATIONLOOPMODE_YOYO:if(f.AllowMatricesInterpolation)return this.matrixInterpolateFunction(s,h,T,e.workValue);return s;case f.ANIMATIONLOOPMODE_RELATIVE:case f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return s}}return 0}matrixInterpolateFunction(t,i,r,n){return f.AllowMatrixDecomposeForInterpolation?n?(e.Matrix.DecomposeLerpToRef(t,i,r,n),n):e.Matrix.DecomposeLerp(t,i,r):n?(e.Matrix.LerpToRef(t,i,r,n),n):e.Matrix.Lerp(t,i,r)}clone(t=!1){let e=new f(this.name,this.targetPropertyPath.join("."),this.framePerSecond,this.dataType,this.loopMode);if(e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,this._keys&&e.setKeys(this._keys,!1,t),this._ranges)for(let t in e._ranges={},this._ranges){let i=this._ranges[t];i&&(e._ranges[t]=i.clone())}return e}setKeys(t,e=!1,i=!1){if(e)this._keys=t;else if(this._keys=t.slice(0),i)for(let t=0;t<this._keys.length;t++){let e=this._keys[t];this._keys[t]={frame:e.frame,value:e.value.clone?e.value.clone():e.value,inTangent:e.inTangent&&e.inTangent.clone?e.inTangent.clone():e.inTangent,outTangent:e.outTangent&&e.outTangent.clone?e.outTangent.clone():e.outTangent,interpolation:e.interpolation,lockedTangent:e.lockedTangent,easingFunction:e.easingFunction}}}createKeyForFrame(t){g.key=0;let e=this._interpolate(t,g,!0);if(!e)return this._keys[g.key].frame===t?g.key:g.key+1;let i={frame:t,value:e.clone?e.clone():e};return this._keys.splice(g.key+1,0,i),g.key+1}serialize(){let t={};t.name=this.name,t.property=this.targetProperty,t.framePerSecond=this.framePerSecond,t.dataType=this.dataType,t.loopBehavior=this.loopMode,t.enableBlending=this.enableBlending,t.blendingSpeed=this.blendingSpeed;let e=this.dataType;t.keys=[];let i=this.getKeys();for(let r=0;r<i.length;r++){let n=i[r],a={};switch(a.frame=n.frame,e){case f.ANIMATIONTYPE_FLOAT:a.values=[n.value],void 0!==n.inTangent&&a.values.push(n.inTangent),void 0!==n.outTangent&&(void 0===n.inTangent&&a.values.push(void 0),a.values.push(n.outTangent)),void 0!==n.interpolation&&(void 0===n.inTangent&&a.values.push(void 0),void 0===n.outTangent&&a.values.push(void 0),a.values.push(n.interpolation));break;case f.ANIMATIONTYPE_QUATERNION:case f.ANIMATIONTYPE_MATRIX:case f.ANIMATIONTYPE_VECTOR3:case f.ANIMATIONTYPE_COLOR3:case f.ANIMATIONTYPE_COLOR4:a.values=n.value.asArray(),void 0!=n.inTangent&&a.values.push(n.inTangent.asArray()),void 0!=n.outTangent&&(void 0===n.inTangent&&a.values.push(void 0),a.values.push(n.outTangent.asArray())),void 0!==n.interpolation&&(void 0===n.inTangent&&a.values.push(void 0),void 0===n.outTangent&&a.values.push(void 0),a.values.push(n.interpolation))}t.keys.push(a)}for(let e in t.ranges=[],this._ranges){let i=this._ranges[e];if(!i)continue;let r={};r.name=e,r.from=i.from,r.to=i.to,t.ranges.push(r)}return t}static _UniversalLerp(t,e,i){let r=t.constructor;return r.Lerp?r.Lerp(t,e,i):r.Slerp?r.Slerp(t,e,i):t.toFixed?t*(1-i)+i*e:e}}function T(t,i,r,n=!1,a){let o,s=t;(o="object"==typeof i?i:{referenceFrame:i??0,range:r,cloneOriginalAnimation:n,clonedAnimationName:a}).cloneOriginalAnimation&&((s=t.clone()).name=o.clonedAnimationName||s.name);let h=s.getKeys();if(!h.length)return s;let l=o.referenceFrame&&o.referenceFrame>=0?o.referenceFrame:0,c=0,u=h[0],d=h.length-1,p=h[d],m={referenceValue:u.value,referencePosition:e.TmpVectors.Vector3[0],referenceQuaternion:e.TmpVectors.Quaternion[0],referenceScaling:e.TmpVectors.Vector3[1],keyPosition:e.TmpVectors.Vector3[2],keyQuaternion:e.TmpVectors.Quaternion[1],keyScaling:e.TmpVectors.Vector3[3]},_=u.frame,A=p.frame;if(o.range){let t=s.getRange(o.range);t&&(_=t.from,A=t.to)}else _=o.fromFrame??_,A=o.toFrame??A;_!==u.frame&&(c=s.createKeyForFrame(_)),A!==p.frame&&(d=s.createKeyForFrame(A));let I=s.getKeys();if(1===I.length){let t=s._getKeyValue(I[0]);m.referenceValue=t.clone?t.clone():t}else if(l<=u.frame){let t=s._getKeyValue(u.value);m.referenceValue=t.clone?t.clone():t}else if(l>=p.frame){let t=s._getKeyValue(p.value);m.referenceValue=t.clone?t.clone():t}else{g.key=0;let t=s._interpolate(l,g);m.referenceValue=t.clone?t.clone():t}s.dataType===f.ANIMATIONTYPE_QUATERNION?m.referenceValue.normalize().conjugateInPlace():s.dataType===f.ANIMATIONTYPE_MATRIX&&(m.referenceValue.decompose(m.referenceScaling,m.referenceQuaternion,m.referencePosition),m.referenceQuaternion.normalize().conjugateInPlace());let M=Number.MAX_VALUE,O=o.clipKeys?[]:null;for(let t=c;t<=d;t++){let i=I[t];if((O||o.cloneOriginalAnimation)&&(i={frame:i.frame,value:i.value.clone?i.value.clone():i.value,inTangent:i.inTangent,outTangent:i.outTangent,interpolation:i.interpolation,lockedTangent:i.lockedTangent,easingFunction:i.easingFunction},O&&(M===Number.MAX_VALUE&&(M=i.frame),i.frame-=M,O.push(i))),!t||s.dataType===f.ANIMATIONTYPE_FLOAT||i.value!==u.value)switch(s.dataType){case f.ANIMATIONTYPE_MATRIX:i.value.decompose(m.keyScaling,m.keyQuaternion,m.keyPosition),m.keyPosition.subtractInPlace(m.referencePosition),m.keyScaling.divideInPlace(m.referenceScaling),m.referenceQuaternion.multiplyToRef(m.keyQuaternion,m.keyQuaternion),e.Matrix.ComposeToRef(m.keyScaling,m.keyQuaternion,m.keyPosition,i.value);break;case f.ANIMATIONTYPE_QUATERNION:m.referenceValue.multiplyToRef(i.value,i.value);break;case f.ANIMATIONTYPE_VECTOR2:case f.ANIMATIONTYPE_VECTOR3:case f.ANIMATIONTYPE_COLOR3:case f.ANIMATIONTYPE_COLOR4:i.value.subtractToRef(m.referenceValue,i.value);break;case f.ANIMATIONTYPE_SIZE:i.value.width-=m.referenceValue.width,i.value.height-=m.referenceValue.height;break;default:i.value-=m.referenceValue}}return O&&s.setKeys(O,!0),s}function A(t,e,i,r){let n=new f(t+"Animation",t,i,e,f.ANIMATIONLOOPMODE_CONSTANT);return n.setEasingFunction(r),n}function I(t,e,i,r,n,a,o,s,h,l,c){let u=f._PrepareAnimation(t,i,r,n,a,o,s,h);return u&&(e.getScene&&(c=e.getScene()),c)?c.beginDirectAnimation(e,[u],0,n,u.loopMode!==f.ANIMATIONLOOPMODE_CONSTANT,1,l):null}function M(t,e,i,r,n,a,o,s,h,l,c){let u=f._PrepareAnimation(t,r,n,a,o,s,h,l);return u?e.getScene().beginDirectHierarchyAnimation(e,i,[u],0,a,1===u.loopMode,1,c):null}function O(t,e,i,r,n,a,o,s,h,l){let c=f._PrepareAnimation(t,i,r,n,a,o,s,h);return c?(e.animations.push(c),e.getScene().beginAnimation(e,0,n,1===c.loopMode,1,l)):null}function y(t,e,i,r,n,a,o,s=null,h=!0,l){if(o<=0)return i[t]=e,s&&s(),null;let c=o/1e3*n;return a.setKeys(l??[{frame:0,value:i[t].clone?i[t].clone():i[t]},{frame:c,value:e}]),i.animations||(i.animations=[]),i.animations.push(a),r.beginAnimation(i,0,c,!1,1,s??void 0,void 0,h)}function P(t,e){h.SerializationHelper.AppendSerializedAnimations(t,e)}function E(t){let r,n,a=new f(t.name,t.property,t.framePerSecond,t.dataType,t.loopBehavior),o=t.dataType,s=[];for(t.enableBlending&&(a.enableBlending=t.enableBlending),t.blendingSpeed&&(a.blendingSpeed=t.blendingSpeed),n=0;n<t.keys.length;n++){let a,h,l,c=t.keys[n];switch(o){case f.ANIMATIONTYPE_FLOAT:r=c.values[0],c.values.length>=2&&(a=c.values[1]),c.values.length>=3&&(h=c.values[2]),c.values.length>=4&&(l=c.values[3]);break;case f.ANIMATIONTYPE_QUATERNION:if(r=e.Quaternion.FromArray(c.values),c.values.length>=8){let t=e.Quaternion.FromArray(c.values.slice(4,8));t.equals(e.Quaternion.Zero())||(a=t)}if(c.values.length>=12){let t=e.Quaternion.FromArray(c.values.slice(8,12));t.equals(e.Quaternion.Zero())||(h=t)}c.values.length>=13&&(l=c.values[12]);break;case f.ANIMATIONTYPE_MATRIX:r=e.Matrix.FromArray(c.values),c.values.length>=17&&(l=c.values[16]);break;case f.ANIMATIONTYPE_COLOR3:r=i.Color3.FromArray(c.values),c.values[3]&&(a=i.Color3.FromArray(c.values[3])),c.values[4]&&(h=i.Color3.FromArray(c.values[4])),c.values[5]&&(l=c.values[5]);break;case f.ANIMATIONTYPE_COLOR4:r=i.Color4.FromArray(c.values),c.values[4]&&(a=i.Color4.FromArray(c.values[4])),c.values[5]&&(h=i.Color4.FromArray(c.values[5])),c.values[6]&&(l=i.Color4.FromArray(c.values[6]));break;case f.ANIMATIONTYPE_VECTOR3:default:r=e.Vector3.FromArray(c.values),c.values[3]&&(a=e.Vector3.FromArray(c.values[3])),c.values[4]&&(h=e.Vector3.FromArray(c.values[4])),c.values[5]&&(l=c.values[5])}let u={};u.frame=c.frame,u.value=r,void 0!=a&&(u.inTangent=a),void 0!=h&&(u.outTangent=h),void 0!=l&&(u.interpolation=l),s.push(u)}if(a.setKeys(s),t.ranges)for(n=0;n<t.ranges.length;n++)r=t.ranges[n],a.createRange(r.name,r.from,r.to);return a}async function R(t,e){return await new Promise((i,r)=>{let n=new s.WebRequest;n.addEventListener("readystatechange",()=>{if(4==n.readyState)if(200==n.status){let e=JSON.parse(n.responseText);if(e.animations&&(e=e.animations),e.length){let t=[];for(let i of e)t.push(E(i));i(t)}else{let r=E(e);t&&(r.name=t),i(r)}}else r("Unable to load the animation")}),n.open("GET",e),n.send()})}async function N(t){let e=this?.SnippetUrl??f.SnippetUrl;return await new Promise((i,r)=>{let n=new s.WebRequest;n.addEventListener("readystatechange",()=>{if(4==n.readyState)if(200==n.status){let e=JSON.parse(JSON.parse(n.responseText).jsonPayload);if(e.animations){let r=JSON.parse(e.animations),n=[];for(let e of r.animations){let i=E(e);i.snippetId=t,n.push(i)}i(n)}else{let r=E(JSON.parse(e.animation));r.snippetId=t,i(r)}}else r("Unable to load the snippet "+t)}),n.open("GET",e+"/"+t.replace(/#/g,"/")),n.send()})}f._UniqueIdGenerator=0,f.AllowMatricesInterpolation=!1,f.AllowMatrixDecomposeForInterpolation=!0,f.InheritOriginalValueFromActiveAnimations=!1,f.SnippetUrl="https://snippet.babylonjs.com",f.ANIMATIONTYPE_FLOAT=0,f.ANIMATIONTYPE_VECTOR3=1,f.ANIMATIONTYPE_QUATERNION=2,f.ANIMATIONTYPE_MATRIX=3,f.ANIMATIONTYPE_COLOR3=4,f.ANIMATIONTYPE_COLOR4=7,f.ANIMATIONTYPE_VECTOR2=5,f.ANIMATIONTYPE_SIZE=6,f.ANIMATIONLOOPMODE_RELATIVE=0,f.ANIMATIONLOOPMODE_CYCLE=1,f.ANIMATIONLOOPMODE_CONSTANT=2,f.ANIMATIONLOOPMODE_YOYO=4,f.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT=5;let v=!1;t.s(["Animation",0,f,"AnimationCreateAnimation",0,A,"AnimationMakeAnimationAdditive",0,T,"AnimationParse",0,E,"RegisterAnimation",0,function(){v||(v=!0,f.Parse=E,f.ParseFromFileAsync=R,f.ParseFromSnippetAsync=N,f.CreateFromSnippetAsync=N,f.CreateAnimation=A,f.CreateAndStartAnimation=I,f.CreateAndStartHierarchyAnimation=M,f.CreateMergeAndStartAnimation=O,f.MakeAnimationAdditive=T,f.TransitionTo=y,f.AppendSerializedAnimations=P,(0,l.RegisterClass)("BABYLON.Animation",f),a.Node._AnimationRangeFactory=(t,e,i)=>new n(t,e,i))},"_StaticOffsetValueColor3",0,m,"_StaticOffsetValueColor4",0,_,"_StaticOffsetValueQuaternion",0,c,"_StaticOffsetValueSize",0,p,"_StaticOffsetValueVector2",0,d,"_StaticOffsetValueVector3",0,u],976)},44939,t=>{"use strict";var e=t.i(23240);t.s(["DrawWrapper",0,class{static GetEffect(t){return void 0===t.getPipelineContext?t.effect:t}constructor(t,e=!0){this._wasPreviouslyReady=!1,this._forceRebindOnNextCall=!0,this._wasPreviouslyUsingInstances=null,this.effect=null,this.defines=null,this.drawContext=t.createDrawContext(),e&&(this.materialContext=t.createMaterialContext())}setEffect(t,e,i=!0){this.effect=t,void 0!==e&&(this.defines=e),i&&this.drawContext?.reset()}dispose(t=!1){if(this.effect){let i=this.effect;t?i.dispose():e.TimingTools.SetImmediate(()=>{i.getEngine().onEndFrameObservable.addOnce(()=>{i.dispose()})}),this.effect=null}this.drawContext?.dispose()}}])},49007,t=>{"use strict";t.s(["IntersectionInfo",0,class{constructor(t,e,i){this.bu=t,this.bv=e,this.distance=i,this.faceId=0,this.subMeshId=0,this._internalSubMeshId=0}}])},70247,t=>{"use strict";var e,i,r,n,a=t.i(96265);(e=r||(r={}))[e.LOCAL=0]="LOCAL",e[e.WORLD=1]="WORLD",e[e.BONE=2]="BONE";class o{}o.X=new a.Vector3(1,0,0),o.Y=new a.Vector3(0,1,0),o.Z=new a.Vector3(0,0,1),(i=n||(n={}))[i.X=0]="X",i[i.Y=1]="Y",i[i.Z=2]="Z",t.s(["Axis",0,o,"Coordinate",0,n,"Space",0,r])},45334,t=>{"use strict";class e{static get ForceFullSceneLoadingForIncremental(){return e._ForceFullSceneLoadingForIncremental}static set ForceFullSceneLoadingForIncremental(t){e._ForceFullSceneLoadingForIncremental=t}static get ShowLoadingScreen(){return e._ShowLoadingScreen}static set ShowLoadingScreen(t){e._ShowLoadingScreen=t}static get loggingLevel(){return e._LoggingLevel}static set loggingLevel(t){e._LoggingLevel=t}static get CleanBoneMatrixWeights(){return e._CleanBoneMatrixWeights}static set CleanBoneMatrixWeights(t){e._CleanBoneMatrixWeights=t}}e._ForceFullSceneLoadingForIncremental=!1,e._ShowLoadingScreen=!0,e._CleanBoneMatrixWeights=!1,e._LoggingLevel=0,t.s(["SceneLoaderFlags",0,e])},75991,t=>{"use strict";var e,i,r=t.i(46703),n=t.i(96265),a=t.i(89030);(e=i||(i={}))[e.CW=0]="CW",e[e.CCW=1]="CCW";class o{constructor(t){this._radians=t,this._radians<0&&(this._radians+=2*Math.PI)}degrees(){return 180*this._radians/Math.PI}radians(){return this._radians}static BetweenTwoPoints(t,e){let i=e.subtract(t);return new o(Math.atan2(i.y,i.x))}static BetweenTwoVectors(t,e){let i=t.lengthSquared()*e.lengthSquared();if(0===i)return new o(Math.PI/2);i=Math.sqrt(i);let n=t.dot(e)/i;return new o(Math.acos(n=(0,r.Clamp)(n,-1,1)))}static FromRadians(t){return new o(t)}static FromDegrees(t){return new o(t*Math.PI/180)}}class s{constructor(t,e,i){this.startPoint=t,this.midPoint=e,this.endPoint=i;const r=Math.pow(e.x,2)+Math.pow(e.y,2),a=(Math.pow(t.x,2)+Math.pow(t.y,2)-r)/2,s=(r-Math.pow(i.x,2)-Math.pow(i.y,2))/2,h=(t.x-e.x)*(e.y-i.y)-(e.x-i.x)*(t.y-e.y);this.centerPoint=new n.Vector2((a*(e.y-i.y)-s*(t.y-e.y))/h,((t.x-e.x)*s-(e.x-i.x)*a)/h),this.radius=this.centerPoint.subtract(this.startPoint).length(),this.startAngle=o.BetweenTwoPoints(this.centerPoint,this.startPoint);const l=this.startAngle.degrees();let c=o.BetweenTwoPoints(this.centerPoint,this.midPoint).degrees(),u=o.BetweenTwoPoints(this.centerPoint,this.endPoint).degrees();c-l>180&&(c-=360),c-l<-180&&(c+=360),u-c>180&&(u-=360),u-c<-180&&(u+=360),this.orientation=c-l<0?0:1,this.angle=o.FromDegrees(0===this.orientation?l-u:u-l)}}class h{constructor(t,e){this._points=[],this._length=0,this.closed=!1,this._points.push(new n.Vector2(t,e))}addLineTo(t,e){if(this.closed)return this;let i=new n.Vector2(t,e),r=this._points[this._points.length-1];return this._points.push(i),this._length+=i.subtract(r).length(),this}addArcTo(t,e,i,r,a=36){if(this.closed)return this;let o=new s(this._points[this._points.length-1],new n.Vector2(t,e),new n.Vector2(i,r)),h=o.angle.radians()/a;0===o.orientation&&(h*=-1);let l=o.startAngle.radians()+h;for(let t=0;t<a;t++){let t=Math.cos(l)*o.radius+o.centerPoint.x,e=Math.sin(l)*o.radius+o.centerPoint.y;this.addLineTo(t,e),l+=h}return this}addQuadraticCurveTo(t,e,i,r,n=36){if(this.closed)return this;let a=(t,e,i,r)=>(1-t)*(1-t)*e+2*t*(1-t)*i+t*t*r,o=this._points[this._points.length-1];for(let s=0;s<=n;s++){let h=s/n,l=a(h,o.x,t,i),c=a(h,o.y,e,r);this.addLineTo(l,c)}return this}addBezierCurveTo(t,e,i,r,n,a,o=36){if(this.closed)return this;let s=(t,e,i,r,n)=>(1-t)*(1-t)*(1-t)*e+3*t*(1-t)*(1-t)*i+3*t*t*(1-t)*r+t*t*t*n,h=this._points[this._points.length-1];for(let l=0;l<=o;l++){let c=l/o,u=s(c,h.x,t,i,n),d=s(c,h.y,e,r,a);this.addLineTo(u,d)}return this}isPointInside(t){let e=!1,i=this._points.length;for(let r=i-1,n=0;n<i;r=n++){let i=this._points[r],a=this._points[n],o=a.x-i.x,s=a.y-i.y;if(Math.abs(s)>Number.EPSILON){if(s<0&&(i=this._points[n],o=-o,a=this._points[r],s=-s),t.y<i.y||t.y>a.y)continue;if(t.y===i.y&&t.x===i.x)return!0;{let r=s*(t.x-i.x)-o*(t.y-i.y);if(0===r)return!0;if(r<0)continue;e=!e}}else{if(t.y!==i.y)continue;if(a.x<=t.x&&t.x<=i.x||i.x<=t.x&&t.x<=a.x)return!0}}return e}close(){return this.closed=!0,this}length(){let t=this._length;if(this.closed){let e=this._points[this._points.length-1];t+=this._points[0].subtract(e).length()}return t}area(){let t=this._points.length,e=0;for(let i=t-1,r=0;r<t;i=r++)e+=this._points[i].x*this._points[r].y-this._points[r].x*this._points[i].y;return .5*e}getPoints(){return this._points}getPointAtLengthPosition(t){if(t<0||t>1)return n.Vector2.Zero();let e=t*this.length(),i=0;for(let t=0;t<this._points.length;t++){let r=(t+1)%this._points.length,a=this._points[t],o=this._points[r].subtract(a),s=o.length()+i;if(e>=i&&e<=s){let t=o.normalize(),r=e-i;return new n.Vector2(a.x+t.x*r,a.y+t.y*r)}i=s}return n.Vector2.Zero()}static StartingAt(t,e){return new h(t,e)}}class l{constructor(t,e=null,i,r=!1){this.path=t,this._curve=[],this._distances=[],this._tangents=[],this._normals=[],this._binormals=[],this._pointAtData={id:0,point:n.Vector3.Zero(),previousPointArrayIndex:0,position:0,subPosition:0,interpolateReady:!1,interpolationMatrix:n.Matrix.Identity()};for(let e=0;e<t.length;e++)this._curve[e]=t[e].clone();this._raw=i||!1,this._alignTangentsWithPath=r,this._compute(e,r)}getCurve(){return this._curve}getPoints(){return this._curve}length(){return this._distances[this._distances.length-1]}getTangents(){return this._tangents}getNormals(){return this._normals}getBinormals(){return this._binormals}getDistances(){return this._distances}getPointAt(t){return this._updatePointAtData(t).point}getTangentAt(t,e=!1){return this._updatePointAtData(t,e),e?n.Vector3.TransformCoordinates(n.Vector3.Forward(),this._pointAtData.interpolationMatrix):this._tangents[this._pointAtData.previousPointArrayIndex]}getNormalAt(t,e=!1){return this._updatePointAtData(t,e),e?n.Vector3.TransformCoordinates(n.Vector3.Right(),this._pointAtData.interpolationMatrix):this._normals[this._pointAtData.previousPointArrayIndex]}getBinormalAt(t,e=!1){return this._updatePointAtData(t,e),e?n.Vector3.TransformCoordinates(n.Vector3.UpReadOnly,this._pointAtData.interpolationMatrix):this._binormals[this._pointAtData.previousPointArrayIndex]}getDistanceAt(t){return this.length()*t}getPreviousPointIndexAt(t){return this._updatePointAtData(t),this._pointAtData.previousPointArrayIndex}getSubPositionAt(t){return this._updatePointAtData(t),this._pointAtData.subPosition}getClosestPositionTo(t){let e=Number.MAX_VALUE,i=0;for(let r=0;r<this._curve.length-1;r++){let a=this._curve[r+0],o=this._curve[r+1].subtract(a).normalize(),s=this._distances[r+1]-this._distances[r+0],h=Math.min(Math.max(n.Vector3.Dot(o,t.subtract(a).normalize()),0)*n.Vector3.Distance(a,t)/s,1),l=n.Vector3.Distance(a.add(o.scale(h*s)),t);l<e&&(e=l,i=(this._distances[r+0]+s*h)/this.length())}return i}slice(t=0,e=1){if(t<0&&(t=1- -1*t%1),e<0&&(e=1- -1*e%1),t>e){let i=t;t=e,e=i}let i=this.getCurve(),r=this.getPointAt(t),n=this.getPreviousPointIndexAt(t),a=this.getPointAt(e),o=this.getPreviousPointIndexAt(e)+1,s=[];return 0!==t&&(n++,s.push(r)),s.push(...i.slice(n,o)),(1!==e||1===t)&&s.push(a),new l(s,this.getNormalAt(t),this._raw,this._alignTangentsWithPath)}update(t,e=null,i=!1){for(let e=0;e<t.length;e++)this._curve[e].x=t[e].x,this._curve[e].y=t[e].y,this._curve[e].z=t[e].z;return this._compute(e,i),this}_compute(t,e=!1){let i,r,a,o,s,h=this._curve.length;if(h<2)return;this._tangents[0]=this._getFirstNonNullVector(0),this._raw||this._tangents[0].normalize(),this._tangents[h-1]=this._curve[h-1].subtract(this._curve[h-2]),this._raw||this._tangents[h-1].normalize();let l=this._tangents[0],c=this._normalVector(l,t);this._normals[0]=c,this._raw||this._normals[0].normalize(),this._binormals[0]=n.Vector3.Cross(l,this._normals[0]),this._raw||this._binormals[0].normalize(),this._distances[0]=0;for(let t=1;t<h;t++)i=this._getLastNonNullVector(t),t<h-1&&(r=this._getFirstNonNullVector(t),this._tangents[t]=e?r:i.add(r),this._tangents[t].normalize()),this._distances[t]=this._distances[t-1]+this._curve[t].subtract(this._curve[t-1]).length(),a=this._tangents[t],s=this._binormals[t-1],this._normals[t]=n.Vector3.Cross(s,a),this._raw||(0===this._normals[t].length()?(o=this._normals[t-1],this._normals[t]=o.clone()):this._normals[t].normalize()),this._binormals[t]=n.Vector3.Cross(a,this._normals[t]),this._raw||this._binormals[t].normalize();this._pointAtData.id=NaN}_getFirstNonNullVector(t){let e=1,i=this._curve[t+e].subtract(this._curve[t]);for(;0===i.length()&&t+e+1<this._curve.length;)e++,i=this._curve[t+e].subtract(this._curve[t]);return i}_getLastNonNullVector(t){let e=1,i=this._curve[t].subtract(this._curve[t-e]);for(;0===i.length()&&t>e+1;)e++,i=this._curve[t].subtract(this._curve[t-e]);return i}_normalVector(t,e){let i,o=t.length();if(0===o&&(o=1),null==e){let e;e=(0,r.WithinEpsilon)(Math.abs(t.y)/o,1,a.Epsilon)?(0,r.WithinEpsilon)(Math.abs(t.x)/o,1,a.Epsilon)?(0,r.WithinEpsilon)(Math.abs(t.z)/o,1,a.Epsilon)?n.Vector3.Zero():new n.Vector3(0,0,1):new n.Vector3(1,0,0):new n.Vector3(0,-1,0),i=n.Vector3.Cross(t,e)}else i=n.Vector3.Cross(t,e),n.Vector3.CrossToRef(i,t,i);return i.normalize(),i}_updatePointAtData(t,e=!1){let i;if(this._pointAtData.id===t)return this._pointAtData.interpolateReady||this._updateInterpolationMatrix(),this._pointAtData;this._pointAtData.id=t;let r=this.getPoints();if(t<=0)return this._setPointAtData(0,0,r[0],0,e);if(t>=1)return this._setPointAtData(1,1,r[r.length-1],r.length-1,e);let a=r[0],o=0,s=t*this.length();for(let h=1;h<r.length;h++){i=r[h];let l=n.Vector3.Distance(a,i);if((o+=l)===s)return this._setPointAtData(t,1,i,h,e);if(o>s){let r=(o-s)/l,n=a.subtract(i),c=i.add(n.scaleInPlace(r));return this._setPointAtData(t,1-r,c,h-1,e)}a=i}return this._pointAtData}_setPointAtData(t,e,i,r,n){return this._pointAtData.point=i,this._pointAtData.position=t,this._pointAtData.subPosition=e,this._pointAtData.previousPointArrayIndex=r,this._pointAtData.interpolateReady=n,n&&this._updateInterpolationMatrix(),this._pointAtData}_updateInterpolationMatrix(){this._pointAtData.interpolationMatrix=n.Matrix.Identity();let t=this._pointAtData.previousPointArrayIndex;if(t!==this._tangents.length-1){let e=t+1,i=this._tangents[t].clone(),r=this._normals[t].clone(),a=this._binormals[t].clone(),o=this._tangents[e].clone(),s=this._normals[e].clone(),h=this._binormals[e].clone(),l=n.Quaternion.RotationQuaternionFromAxis(r,a,i),c=n.Quaternion.RotationQuaternionFromAxis(s,h,o);n.Quaternion.Slerp(l,c,this._pointAtData.subPosition).toRotationMatrix(this._pointAtData.interpolationMatrix)}}}class c{static CreateQuadraticBezier(t,e,i,r){r=r>2?r:3;let a=[],o=(t,e,i,r)=>(1-t)*(1-t)*e+2*t*(1-t)*i+t*t*r;for(let s=0;s<=r;s++)a.push(new n.Vector3(o(s/r,t.x,e.x,i.x),o(s/r,t.y,e.y,i.y),o(s/r,t.z,e.z,i.z)));return new c(a)}static CreateCubicBezier(t,e,i,r,a){a=a>3?a:4;let o=[],s=(t,e,i,r,n)=>(1-t)*(1-t)*(1-t)*e+3*t*(1-t)*(1-t)*i+3*t*t*(1-t)*r+t*t*t*n;for(let h=0;h<=a;h++)o.push(new n.Vector3(s(h/a,t.x,e.x,i.x,r.x),s(h/a,t.y,e.y,i.y,r.y),s(h/a,t.z,e.z,i.z,r.z)));return new c(o)}static CreateHermiteSpline(t,e,i,r,a){let o=[],s=1/a;for(let h=0;h<=a;h++)o.push(n.Vector3.Hermite(t,e,i,r,h*s));return new c(o)}static CreateCatmullRomSpline(t,e,i){let r=[],a=1/e,o=0;if(i){let i=t.length;for(let s=0;s<i;s++){o=0;for(let h=0;h<e;h++)r.push(n.Vector3.CatmullRom(t[s%i],t[(s+1)%i],t[(s+2)%i],t[(s+3)%i],o)),o+=a}r.push(r[0])}else{let i=[];i.push(t[0].clone()),i.push(...t),i.push(t[t.length-1].clone());let s=0;for(;s<i.length-3;s++){o=0;for(let t=0;t<e;t++)r.push(n.Vector3.CatmullRom(i[s],i[s+1],i[s+2],i[s+3],o)),o+=a}s--,r.push(n.Vector3.CatmullRom(i[s],i[s+1],i[s+2],i[s+3],o))}return new c(r)}static ArcThru3Points(t,e,i,r=32,a=!1,o=!1){let s=[],h=e.subtract(t),l=i.subtract(e),u=t.subtract(i),d=n.Vector3.Cross(h,l),p=d.length();if(p<1e-8)return new c(s);let m=h.lengthSquared(),_=l.lengthSquared(),g=u.lengthSquared(),f=d.lengthSquared(),T=.5*h.length()*l.length()*u.length()/p,A=n.Vector3.Dot(h,u),I=n.Vector3.Dot(h,l),M=n.Vector3.Dot(l,u),O=t.scale(-.5*_*A/f).add(e.scale(-.5*g*I/f)).add(i.scale(-.5*m*M/f)),y=t.subtract(O).normalize(),P=n.Vector3.Cross(d,y).normalize();if(o){let e=2*Math.PI/r;for(let t=0;t<=2*Math.PI;t+=e)s.push(O.add(y.scale(T*Math.cos(t)).add(P.scale(T*Math.sin(t)))));s.push(t)}else{let e,n=1/r,o=0;do e=O.add(y.scale(T*Math.cos(o)).add(P.scale(T*Math.sin(o)))),s.push(e),o+=n;while(!e.equalsWithEpsilon(i,T*n*1.1))s.push(i),a&&s.push(t)}return new c(s)}constructor(t){this._length=0,this._points=t,this._length=this._computeLength(t)}getPoints(){return this._points}length(){return this._length}continue(t){let e=this._points[this._points.length-1],i=this._points.slice(),r=t.getPoints();for(let t=1;t<r.length;t++)i.push(r[t].subtract(r[0]).add(e));return new c(i)}_computeLength(t){let e=0;for(let i=1;i<t.length;i++)e+=t[i].subtract(t[i-1]).length();return e}}t.s(["Angle",0,o,"Arc2",0,s,"BezierCurve",0,class{static Interpolate(t,e,i,r,n){if(0===t)return 0;let a=1-3*r+3*e,o=3*r-6*e,s=3*e,h=t;for(let e=0;e<5;e++){let e=h*h,i=e*h*a+o*e+s*h,r=1/(3*a*e+2*o*h+s);h-=(i-t)*r,h=Math.min(1,Math.max(0,h))}return 3*Math.pow(1-h,2)*h*i+3*(1-h)*Math.pow(h,2)*n+Math.pow(h,3)}},"Curve3",0,c,"Orientation",0,i,"Path2",0,h,"Path3D",0,l])},84881,t=>{"use strict";var e=t.i(75991);class i{constructor(){this._easingMode=i.EASINGMODE_EASEIN}setEasingMode(t){let e=Math.min(Math.max(t,0),2);this._easingMode=e}getEasingMode(){return this._easingMode}easeInCore(t){throw Error("You must implement this method")}ease(t){switch(this._easingMode){case i.EASINGMODE_EASEIN:return this.easeInCore(t);case i.EASINGMODE_EASEOUT:return 1-this.easeInCore(1-t)}return t>=.5?(1-this.easeInCore((1-t)*2))*.5+.5:.5*this.easeInCore(2*t)}}i.EASINGMODE_EASEIN=0,i.EASINGMODE_EASEOUT=1,i.EASINGMODE_EASEINOUT=2,t.s(["BackEase",0,class extends i{constructor(t=1){super(),this.amplitude=t}easeInCore(t){return Math.pow(t,3)-t*Math.max(0,this.amplitude)*Math.sin(3.141592653589793*t)}},"BezierCurveEase",0,class extends i{constructor(t=0,e=0,i=1,r=1){super(),this.x1=t,this.y1=e,this.x2=i,this.y2=r}easeInCore(t){return e.BezierCurve.Interpolate(t,this.x1,this.y1,this.x2,this.y2)}},"BounceEase",0,class extends i{constructor(t=3,e=2){super(),this.bounces=t,this.bounciness=e}easeInCore(t){let e=Math.max(0,this.bounces),i=this.bounciness;i<=1&&(i=1.001);let r=Math.pow(i,e),n=1-i,a=(1-r)/n+.5*r,o=Math.floor(Math.log(-(t*a)*(1-i)+1)/Math.log(i)),s=(1-Math.pow(i,o))/(n*a),h=(s+(1-Math.pow(i,o+1))/(n*a))*.5,l=t-h,c=h-s;return-Math.pow(1/i,e-o)/(c*c)*(l-c)*(l+c)}},"CircleEase",0,class extends i{easeInCore(t){return 1-Math.sqrt(1-(t=Math.max(0,Math.min(1,t)))*t)}},"CubicEase",0,class extends i{easeInCore(t){return t*t*t}},"EasingFunction",0,i,"ElasticEase",0,class extends i{constructor(t=3,e=3){super(),this.oscillations=t,this.springiness=e}easeInCore(t){let e=Math.max(0,this.oscillations),i=Math.max(0,this.springiness);return(0===i?t:(Math.exp(i*t)-1)/(Math.exp(i)-1))*Math.sin((6.283185307179586*e+1.5707963267948966)*t)}},"ExponentialEase",0,class extends i{constructor(t=2){super(),this.exponent=t}easeInCore(t){return this.exponent<=0?t:(Math.exp(this.exponent*t)-1)/(Math.exp(this.exponent)-1)}}])},58302,16074,63764,95190,t=>{"use strict";var e=t.i(10272),i=t.i(37143),r=t.i(59576),n=t.i(96265),a=t.i(89030),o=t.i(70247);class s{constructor(t,e,i){this._cameraPosition=e,this._behavior=i,this.activeInput=!1,this.speed=1,this.zoomSpeed=1,this.panSpeed=1,this.rotationXSpeed=1,this.rotationYSpeed=1,this._zoomSpeedMultiplier=1,this._panSpeedMultiplier=1,this.zoomInertia=.9,this.panInertia=.9,this.rotationInertia=.9,this.zoomAccumulatedPixels=0,this.panAccumulatedPixels=new n.Vector3,this.rotationAccumulatedPixels=new n.Vector3,this.zoomDeltaCurrentFrame=0,this.panDeltaCurrentFrame=n.Vector3.Zero(),this.rotationDeltaCurrentFrame=n.Vector3.Zero(),this._zoomVelocity=0,this._panVelocity=new n.Vector3,this.referenceFrameRate=60,this._rotationVelocity=new n.Vector3,this._prevFrameTimeMs=0,this._scene=t}computeCurrentFrameDeltas(){let t=this._scene.getEngine().getDeltaTime(),e=this._getEffectiveDeltaMs(t);if(0===this._zoomVelocity&&0===this.zoomAccumulatedPixels&&0===this._panVelocity.x&&0===this._panVelocity.y&&0===this._panVelocity.z&&0===this.panAccumulatedPixels.x&&0===this.panAccumulatedPixels.y&&0===this.panAccumulatedPixels.z&&0===this._rotationVelocity.x&&0===this._rotationVelocity.y&&0===this._rotationVelocity.z&&0===this.rotationAccumulatedPixels.x&&0===this.rotationAccumulatedPixels.y&&0===this.rotationAccumulatedPixels.z&&!this.activeInput){this.panDeltaCurrentFrame.setAll(0),this.rotationDeltaCurrentFrame.setAll(0),this.zoomDeltaCurrentFrame=0,t>0&&(this._prevFrameTimeMs=t);return}this.panDeltaCurrentFrame.setAll(0),this.rotationDeltaCurrentFrame.setAll(0),this.zoomDeltaCurrentFrame=0,(this.panAccumulatedPixels.lengthSquared()>0||this.rotationAccumulatedPixels.lengthSquared()>0||0!==this.zoomAccumulatedPixels)&&this._behavior?.isInterpolating&&this._behavior.stopAllAnimations(),this._panVelocity.copyFromFloats(this._calculateCurrentVelocity(this._panVelocity.x,this.panAccumulatedPixels.x,this.panInertia),this._calculateCurrentVelocity(this._panVelocity.y,this.panAccumulatedPixels.y,this.panInertia),this._calculateCurrentVelocity(this._panVelocity.z,this.panAccumulatedPixels.z,this.panInertia)),this._panVelocity.scaleToRef(this.speed*this.panSpeed*this._panSpeedMultiplier*e,this.panDeltaCurrentFrame),this._rotationVelocity.copyFromFloats(this._calculateCurrentVelocity(this._rotationVelocity.x,this.rotationAccumulatedPixels.x,this.rotationInertia),this._calculateCurrentVelocity(this._rotationVelocity.y,this.rotationAccumulatedPixels.y,this.rotationInertia),this._calculateCurrentVelocity(this._rotationVelocity.z,this.rotationAccumulatedPixels.z,this.rotationInertia)),this.rotationDeltaCurrentFrame.copyFromFloats(this._rotationVelocity.x*this.speed*this.rotationXSpeed*e,this._rotationVelocity.y*this.speed*this.rotationYSpeed*e,0),this._zoomVelocity=this._calculateCurrentVelocity(this._zoomVelocity,this.zoomAccumulatedPixels,this.zoomInertia),this.zoomDeltaCurrentFrame=this._zoomVelocity*(this.speed*this.zoomSpeed*this._zoomSpeedMultiplier)*e,t>0&&(this._prevFrameTimeMs=t),this.zoomAccumulatedPixels=0,this.panAccumulatedPixels.setAll(0),this.rotationAccumulatedPixels.setAll(0),this.activeInput=!1}resetRotationVelocity(){this._rotationVelocity.setAll(0),this.rotationAccumulatedPixels.setAll(0)}resetPanVelocity(){this._panVelocity.setAll(0),this.panAccumulatedPixels.setAll(0)}resetZoomVelocity(){this._zoomVelocity=0,this.zoomAccumulatedPixels=0}get isInterpolating(){return!!this._behavior?.isInterpolating}getFrameIndependentDecay(t){let e=this._scene.getEngine().getDeltaTime();return Math.pow(t,this._getEffectiveDeltaMs(e)/(1e3/this.referenceFrameRate))}getFrameIndependentInputScale(t){let e=1-t;return e<=0?1:(1-this.getFrameIndependentDecay(t))/e}_getEffectiveDeltaMs(t){return t>0?t:this._prevFrameTimeMs>0?this._prevFrameTimeMs:1e3/this.referenceFrameRate}_calculateCurrentVelocity(t,e,i){let r=t,n=this._scene.getEngine().getDeltaTime(),a=this._getEffectiveDeltaMs(n);if(0===a)return r;let o=this.getFrameIndependentDecay(i);if(r*=o,0!==e||this.activeInput){let t=1-i;r+=e/a*(t>0?(1-o)/t:1)}else 1e-6>Math.abs(r)&&(r=0);return r}}t.s(["CameraMovement",0,s],16074);class h{constructor(t,e){this.inputMap=[],this.handlers=t,this._createDefaultEntries=e,this.resetInputMap()}resolveInteraction(t,e){for(let i of this.inputMap)if(i.source===t&&this._entryMatches(i,e))return i;return null}resetInputMap(){this.inputMap=this._createDefaultEntries?.()??[]}getEntry(t,e,i){let r=this.inputMap;for(let n=0;n<r.length;n++){let a=r[n];if(a.source===t&&a.interaction===e&&this._entryConditionsMatch(a,i))return a}}getEntries(t,e,i){let r=[],n=this.inputMap;for(let a=0;a<n.length;a++){let o=n[a];o.source===t&&o.interaction===e&&this._entryConditionsMatch(o,i)&&r.push(o)}return r}addEntry(t){let e=this._entrySpecificity(t),i=this.inputMap.length;for(let t=0;t<this.inputMap.length;t++)if(this._entrySpecificity(this.inputMap[t])<e){i=t;break}this.inputMap.splice(i,0,t)}setInteraction(t,e,i){let r=this.resolveInteraction(t,e);return r&&this._entryCoversAllConditionsOf(r,e)?r.interaction=i:this.addEntry({source:t,...e??{},interaction:i}),!0}_entryCoversAllConditionsOf(t,e){if(!e)return!0;for(let i of Object.keys(e)){let r=e[i];if(void 0!==r){if("modifiers"===i){let e=t.modifiers??{};for(let t of Object.keys(r))if(void 0!==r[t]&&void 0===e[t])return!1}else if(void 0===t[i])return!1}}return!0}setInteractions(t,e,i){let r=0,n=this.inputMap;for(let a=0;a<n.length;a++){let o=n[a];o.source===t&&this._entryMatches(o,e)&&(o.interaction=i,r++)}return r}_entryMatches(t,e){switch(t.source){case"pointer":if(void 0!==t.button&&t.button!==e?.button)return!1;return this._matchModifiers(t.modifiers,e?.modifiers);case"wheel":return this._matchModifiers(t.modifiers,e?.modifiers);case"touch":if(void 0!==t.touchCount&&t.touchCount!==e?.touchCount)return!1;return!0;case"keyboard":if(void 0!==t.key&&(Array.isArray(t.key)?-1===t.key.indexOf(e?.key??-1):t.key!==e?.key))return!1;return this._matchModifiers(t.modifiers,e?.modifiers)}}_entryConditionsMatch(t,e){if(!e)return!0;switch(t.source){case"pointer":if("button"in e&&t.button!==e.button)return!1;return!("modifiers"in e)||this._entryModifiersMatch(t.modifiers,e.modifiers);case"wheel":return!("modifiers"in e)||this._entryModifiersMatch(t.modifiers,e.modifiers);case"touch":return!("touchCount"in e)||t.touchCount===e.touchCount;case"keyboard":if("key"in e){if(void 0===t.key)return void 0===e.key;if(void 0===e.key||(Array.isArray(t.key)?-1===t.key.indexOf(e.key):t.key!==e.key))return!1}return!("modifiers"in e)||this._entryModifiersMatch(t.modifiers,e.modifiers)}}_entrySpecificity(t){let e=0;return"button"in t&&void 0!==t.button&&e++,"key"in t&&void 0!==t.key&&e++,"touchCount"in t&&void 0!==t.touchCount&&e++,"modifiers"in t&&t.modifiers&&e++,e}_matchModifiers(t,e){return!t||(void 0===t.ctrl||t.ctrl===(e?.ctrl??!1))&&(void 0===t.shift||t.shift===(e?.shift??!1))&&(void 0===t.alt||t.alt===(e?.alt??!1))}_entryModifiersMatch(t,e){return e?void 0===e.ctrl&&void 0===e.shift&&void 0===e.alt?!t||void 0===t.ctrl&&void 0===t.shift&&void 0===t.alt:(void 0===e.ctrl||t?.ctrl===e.ctrl)&&(void 0===e.shift||t?.shift===e.shift)&&(void 0===e.alt||t?.alt===e.alt):!t}}t.s(["InputMapper",0,h],63764);class l extends s{constructor(t,e,i){super(t,e,i),this.input=new h({translate:(t,e,i)=>{this.panAccumulatedPixels.x+=t,this.panAccumulatedPixels.y+=e,this.panAccumulatedPixels.z+=i},rotate:(t,e)=>{this.rotationAccumulatedPixels.x+=t,this.rotationAccumulatedPixels.y+=e}},()=>this._createDefaultInputMap())}_createDefaultInputMap(){return[{source:"pointer",interaction:"rotate"},{source:"keyboard",interaction:"translate"},{source:"keyboard",interaction:"rotate"},{source:"touch",interaction:"rotate"},{source:"touch",interaction:"translate"}]}}let c=n.Matrix.Zero(),u=n.Quaternion.Identity();class d extends r.Camera{get inertia(){return this._targetInertia}set inertia(t){this._targetInertia=t,this.movement&&(this.movement.panInertia=t,this.movement.rotationInertia=t)}constructor(t,e,i,r=!0){super(t,e,i,r),this.cameraDirection=new n.Vector3(0,0,0),this.cameraRotation=new n.Vector2(0,0),this._targetInertia=.9,this.updateUpVectorFromRotation=!1,this.speed=2,this.noRotationConstraint=!1,this.invertRotation=!1,this.inverseRotationSpeed=.2,this._panningEpsilon=a.Epsilon,this._rotationEpsilon=a.Epsilon,this.lockedTarget=null,this._currentTarget=n.Vector3.Zero(),this._initialFocalDistance=1,this._viewMatrix=n.Matrix.Zero(),this._cameraTransformMatrix=n.Matrix.Zero(),this._cameraRotationMatrix=n.Matrix.Zero(),this._transformedReferencePoint=n.Vector3.Zero(),this._deferredPositionUpdate=new n.Vector3,this._deferredRotationQuaternionUpdate=new n.Quaternion,this._deferredRotationUpdate=new n.Vector3,this._deferredUpdated=!1,this._deferOnly=!1,this._cachedRotationZ=0,this._cachedQuaternionRotationZ=0,this._referencePoint=n.Vector3.Forward(this.getScene().useRightHandedSystem),this.rotation=new n.Vector3(0,this.getScene().useRightHandedSystem?Math.PI:0,0),this.movement=new l(this.getScene(),this.position),this.movement.panInertia=this.inertia,this.movement.rotationInertia=this.inertia}getFrontPosition(t){this.getWorldMatrix();let e=n.TmpVectors.Vector3[0],i=n.TmpVectors.Vector3[1];return i.set(0,0,this._scene.useRightHandedSystem?-1:1),this.getDirectionToRef(i,e),e.scaleInPlace(t),this.globalPosition.add(e)}_getLockedTargetPosition(){if(!this.lockedTarget)return null;if(this.lockedTarget.absolutePosition){let t=this.lockedTarget;t.computeWorldMatrix().getTranslationToRef(t.absolutePosition)}return this.lockedTarget.absolutePosition||this.lockedTarget}storeState(){return this._storedPosition=this.position.clone(),this._storedRotation=this.rotation.clone(),this.rotationQuaternion&&(this._storedRotationQuaternion=this.rotationQuaternion.clone()),super.storeState()}_restoreStateValues(){return!!super._restoreStateValues()&&(this.position=this._storedPosition.clone(),this.rotation=this._storedRotation.clone(),this.rotationQuaternion&&this._storedRotationQuaternion&&(this.rotationQuaternion=this._storedRotationQuaternion.clone()),this.cameraDirection.copyFromFloats(0,0,0),this.cameraRotation.copyFromFloats(0,0),!0)}_initCache(){super._initCache(),this._cache.lockedTarget=new n.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.rotation=new n.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.rotationQuaternion=new n.Quaternion(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE)}_updateCache(t){t||super._updateCache();let e=this._getLockedTargetPosition();e?this._cache.lockedTarget?this._cache.lockedTarget.copyFrom(e):this._cache.lockedTarget=e.clone():this._cache.lockedTarget=null,this._cache.rotation.copyFrom(this.rotation),this.rotationQuaternion&&this._cache.rotationQuaternion.copyFrom(this.rotationQuaternion)}_isSynchronizedViewMatrix(){if(!super._isSynchronizedViewMatrix())return!1;let t=this._getLockedTargetPosition();return(this._cache.lockedTarget?this._cache.lockedTarget.equals(t):!t)&&(this.rotationQuaternion?this.rotationQuaternion.equals(this._cache.rotationQuaternion):this._cache.rotation.equals(this.rotation))}_computeLocalCameraSpeed(){let t=this.getEngine();return this.speed*Math.sqrt(t.getDeltaTime()/(100*t.getFps()))}setTarget(t){this.upVector.normalize(),this._initialFocalDistance=t.subtract(this.position).length(),this.position.z===t.z&&(this.position.z+=a.Epsilon),this._referencePoint.normalize().scaleInPlace(this._initialFocalDistance),this.getScene().useRightHandedSystem?n.Matrix.LookAtRHToRef(this.position,t,n.Vector3.UpReadOnly,c):n.Matrix.LookAtLHToRef(this.position,t,n.Vector3.UpReadOnly,c),c.invert();let e=this.rotationQuaternion||u;n.Quaternion.FromRotationMatrixToRef(c,e),e.toEulerAnglesToRef(this.rotation),this.rotation.z=0}get target(){return this.getTarget()}set target(t){this.setTarget(t)}getTarget(){return this._currentTarget}_decideIfNeedsToMove(){return Math.abs(this.cameraDirection.x)>0||Math.abs(this.cameraDirection.y)>0||Math.abs(this.cameraDirection.z)>0}_updatePosition(){if(this.parent){this.parent.getWorldMatrix().invertToRef(n.TmpVectors.Matrix[0]),n.Vector3.TransformNormalToRef(this.cameraDirection,n.TmpVectors.Matrix[0],n.TmpVectors.Vector3[0]),this._deferredPositionUpdate.addInPlace(n.TmpVectors.Vector3[0]),this._deferOnly?this._deferredUpdated=!0:this.position.copyFrom(this._deferredPositionUpdate);return}this._deferredPositionUpdate.addInPlace(this.cameraDirection),this._deferOnly?this._deferredUpdated=!0:this.position.copyFrom(this._deferredPositionUpdate)}_checkInputs(){let t=this.movement,e=0!==this.cameraDirection.x||0!==this.cameraDirection.y||0!==this.cameraDirection.z,i=0!==this.cameraRotation.x||0!==this.cameraRotation.y;t.panAccumulatedPixels.addInPlace(this.cameraDirection),t.rotationAccumulatedPixels.x+=this.cameraRotation.x,t.rotationAccumulatedPixels.y+=this.cameraRotation.y,t.computeCurrentFrameDeltas(),this.cameraDirection.copyFrom(t.panDeltaCurrentFrame),this.cameraRotation.set(t.rotationDeltaCurrentFrame.x,t.rotationDeltaCurrentFrame.y);let r=this.speed*this._panningEpsilon;!e&&Math.abs(this.cameraDirection.x)<r&&Math.abs(this.cameraDirection.y)<r&&Math.abs(this.cameraDirection.z)<r&&(this.cameraDirection.setAll(0),t.resetPanVelocity());let a=this.speed*this._rotationEpsilon;!i&&Math.abs(this.cameraRotation.x)<a&&Math.abs(this.cameraRotation.y)<a&&(this.cameraRotation.set(0,0),t.resetRotationVelocity());let o=this.invertRotation?-this.inverseRotationSpeed:1,s=this._decideIfNeedsToMove(),h=!!(this.cameraRotation.x||this.cameraRotation.y);this._deferredUpdated=!1,this._deferredRotationUpdate.copyFrom(this.rotation),this._deferredPositionUpdate.copyFrom(this.position),this.rotationQuaternion&&this._deferredRotationQuaternionUpdate.copyFrom(this.rotationQuaternion),s&&this._updatePosition(),h&&(this.rotationQuaternion&&this.rotationQuaternion.toEulerAnglesToRef(this._deferredRotationUpdate),this._deferredRotationUpdate.x+=this.cameraRotation.x*o,this._deferredRotationUpdate.y+=this.cameraRotation.y*o,!this.noRotationConstraint&&(this._deferredRotationUpdate.x>1.570796&&(this._deferredRotationUpdate.x=1.570796),this._deferredRotationUpdate.x<-1.570796&&(this._deferredRotationUpdate.x=-1.570796)),this._deferOnly?this._deferredUpdated=!0:this.rotation.copyFrom(this._deferredRotationUpdate),this.rotationQuaternion&&this._deferredRotationUpdate.lengthSquared()&&(n.Quaternion.RotationYawPitchRollToRef(this._deferredRotationUpdate.y,this._deferredRotationUpdate.x,this._deferredRotationUpdate.z,this._deferredRotationQuaternionUpdate),this._deferOnly?this._deferredUpdated=!0:this.rotationQuaternion.copyFrom(this._deferredRotationQuaternionUpdate))),this.cameraDirection.setAll(0),this.cameraRotation.set(0,0),super._checkInputs()}_updateCameraRotationMatrix(){this.rotationQuaternion?this.rotationQuaternion.toRotationMatrix(this._cameraRotationMatrix):n.Matrix.RotationYawPitchRollToRef(this.rotation.y,this.rotation.x,this.rotation.z,this._cameraRotationMatrix)}_rotateUpVectorWithCameraRotationMatrix(){return n.Vector3.TransformNormalToRef(n.Vector3.UpReadOnly,this._cameraRotationMatrix,this.upVector),this}_getViewMatrix(){return this.lockedTarget&&this.setTarget(this._getLockedTargetPosition()),this._updateCameraRotationMatrix(),this.rotationQuaternion&&this._cachedQuaternionRotationZ!=this.rotationQuaternion.z?(this._rotateUpVectorWithCameraRotationMatrix(),this._cachedQuaternionRotationZ=this.rotationQuaternion.z):this._cachedRotationZ!==this.rotation.z&&(this._rotateUpVectorWithCameraRotationMatrix(),this._cachedRotationZ=this.rotation.z),n.Vector3.TransformCoordinatesToRef(this._referencePoint,this._cameraRotationMatrix,this._transformedReferencePoint),this.position.addToRef(this._transformedReferencePoint,this._currentTarget),this.updateUpVectorFromRotation&&(this.rotationQuaternion?o.Axis.Y.rotateByQuaternionToRef(this.rotationQuaternion,this.upVector):(n.Quaternion.FromEulerVectorToRef(this.rotation,u),o.Axis.Y.rotateByQuaternionToRef(u,this.upVector))),this._computeViewMatrix(this.position,this._currentTarget,this.upVector),this._viewMatrix}_computeViewMatrix(t,e,i){if(this.getScene().useRightHandedSystem?n.Matrix.LookAtRHToRef(t,e,i,this._viewMatrix):n.Matrix.LookAtLHToRef(t,e,i,this._viewMatrix),this.parent){let t=this.parent.getWorldMatrix();this._viewMatrix.invert(),this._viewMatrix.multiplyToRef(t,this._viewMatrix),this._viewMatrix.invert(),this._markSyncedWithParent()}}createRigCamera(t,e){if(this.cameraRigMode!==r.Camera.RIG_MODE_NONE){let e=new d(t,this.position.clone(),this.getScene());return e.isRigCamera=!0,e.rigParent=this,this.cameraRigMode===r.Camera.RIG_MODE_VR&&(this.rotationQuaternion||(this.rotationQuaternion=new n.Quaternion),e._cameraRigParams={},e.rotationQuaternion=new n.Quaternion),e.mode=this.mode,e.orthoLeft=this.orthoLeft,e.orthoRight=this.orthoRight,e.orthoTop=this.orthoTop,e.orthoBottom=this.orthoBottom,e}return null}_updateRigCameras(){let t=this._rigCameras[0],e=this._rigCameras[1];switch(this.computeWorldMatrix(),this.cameraRigMode){case r.Camera.RIG_MODE_STEREOSCOPIC_ANAGLYPH:case r.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL:case r.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED:case r.Camera.RIG_MODE_STEREOSCOPIC_OVERUNDER:case r.Camera.RIG_MODE_STEREOSCOPIC_INTERLACED:{let i=this.cameraRigMode===r.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED?1:-1,n=this.cameraRigMode===r.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED?-1:1;this._getRigCamPositionAndTarget(this._cameraRigParams.stereoHalfAngle*i,t),this._getRigCamPositionAndTarget(this._cameraRigParams.stereoHalfAngle*n,e);break}case r.Camera.RIG_MODE_VR:t.rotationQuaternion&&e.rotationQuaternion&&this.rotationQuaternion?(t.rotationQuaternion.copyFrom(this.rotationQuaternion),e.rotationQuaternion.copyFrom(this.rotationQuaternion)):(t.rotation.copyFrom(this.rotation),e.rotation.copyFrom(this.rotation)),t.position.copyFrom(this.position),e.position.copyFrom(this.position)}super._updateRigCameras()}_getRigCamPositionAndTarget(t,e){this.getTarget().subtractToRef(this.position,d._TargetFocalPoint),d._TargetFocalPoint.normalize().scaleInPlace(this._initialFocalDistance);let i=d._TargetFocalPoint.addInPlace(this.position);n.Matrix.TranslationToRef(-i.x,-i.y,-i.z,d._TargetTransformMatrix),d._TargetTransformMatrix.multiplyToRef(n.Matrix.RotationAxis(e.upVector,t),d._RigCamTransformMatrix),n.Matrix.TranslationToRef(i.x,i.y,i.z,d._TargetTransformMatrix),d._RigCamTransformMatrix.multiplyToRef(d._TargetTransformMatrix,d._RigCamTransformMatrix),n.Vector3.TransformCoordinatesToRef(this.position,d._RigCamTransformMatrix,e.position),e.setTarget(i)}getClassName(){return"TargetCamera"}}d._RigCamTransformMatrix=new n.Matrix,d._TargetTransformMatrix=new n.Matrix,d._TargetFocalPoint=new n.Vector3,(0,e.__decorate)([(0,i.serialize)()],d.prototype,"updateUpVectorFromRotation",void 0),(0,e.__decorate)([(0,i.serializeAsVector3)()],d.prototype,"rotation",void 0),(0,e.__decorate)([(0,i.serialize)()],d.prototype,"speed",void 0),(0,e.__decorate)([(0,i.serializeAsMeshReference)("lockedTargetId")],d.prototype,"lockedTarget",void 0),t.s(["TargetCamera",0,d],58302);var p=t.i(13379),m=t.i(80871),_={};t.s(["CameraInputTypes",0,_,"CameraInputsManager",0,class{constructor(t){this.attachedToElement=!1,this.attached={},this.camera=t,this.checkInputs=()=>{}}add(t){let e=t.getSimpleName();this.attached[e]?p.Logger.Warn("camera input of type "+e+" already exists on camera"):(this.attached[e]=t,t.camera=this.camera,t.checkInputs&&(this.checkInputs=this._addCheckInputs(t.checkInputs.bind(t))),this.attachedToElement&&t.attachControl(this.noPreventDefault))}remove(t){for(let e in this.attached){let i=this.attached[e];if(i===t){i.detachControl(),i.camera=null,delete this.attached[e],this.rebuildInputCheck();return}}}removeByType(t){for(let e in this.attached){let i=this.attached[e];i.getClassName()===t&&(i.detachControl(),i.camera=null,delete this.attached[e],this.rebuildInputCheck())}}_addCheckInputs(t){let e=this.checkInputs;return()=>{e(),t()}}attachInput(t){this.attachedToElement&&t.attachControl(this.noPreventDefault)}attachElement(t=!1){if(!this.attachedToElement)for(let e in t=!r.Camera.ForceAttachControlToAlwaysPreventDefault&&t,this.attachedToElement=!0,this.noPreventDefault=t,this.attached)this.attached[e].attachControl(t)}detachElement(t=!1){for(let e in this.attached)this.attached[e].detachControl(),t&&(this.attached[e].camera=null);this.attachedToElement=!1}rebuildInputCheck(){for(let t in this.checkInputs=()=>{},this.attached){let e=this.attached[t];e.checkInputs&&(this.checkInputs=this._addCheckInputs(e.checkInputs.bind(e)))}}clear(){this.attachedToElement&&this.detachElement(!0),this.attached={},this.attachedToElement=!1,this.checkInputs=()=>{}}serialize(t){let e={};for(let t in this.attached){let i=this.attached[t],r=m.SerializationHelper.Serialize(i);e[i.getClassName()]=r}t.inputsmgr=e}parse(t){let e=t.inputsmgr;if(e)for(let t in this.clear(),e){let i=_[t];if(i){let r=e[t],n=m.SerializationHelper.Parse(()=>new i,r,null);this.add(n)}}else for(let e in this.attached){let i=_[this.attached[e].getClassName()];if(i){let r=m.SerializationHelper.Parse(()=>new i,t,null);this.remove(this.attached[e]),this.add(r)}}}}],95190)},42829,t=>{t.v(e=>Promise.all(["static/chunks/3l1dr_qm_x5kp.js"].map(e=>t.l(e))).then(()=>e(47786)))}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,25877,e=>{"use strict";var t=e.i(25742),o=e.i(5110);let r="cachedOperationValue",a="cachedExecutionId";class s extends t.FlowGraphBlock{constructor(e,t){super(t),this.value=this.registerDataOutput("value",e),this.isValid=this.registerDataOutput("isValid",o.RichTypeBoolean)}_updateOutputs(e){let t=e._getExecutionVariable(this,a,-1),o=e._getExecutionVariable(this,r,null);if(null!=o&&t===e.executionId)this.isValid.setValue(!0,e),this.value.setValue(o,e);else try{let t=this._doOperation(e);if(null==t)return void this.isValid.setValue(!1,e);e._setExecutionVariable(this,r,t),e._setExecutionVariable(this,a,e.executionId),this.value.setValue(t,e),this.isValid.setValue(!0,e)}catch(t){this.isValid.setValue(!1,e)}}}e.s(["FlowGraphCachedOperationBlock",0,s])},69823,e=>{"use strict";var t=e.i(25877);class o extends t.FlowGraphCachedOperationBlock{constructor(e,t,o,r,a){super(t,a),this._operation=o,this._className=r,this.a=this.registerDataInput("a",e)}_doOperation(e){return this._operation(this.a.getValue(e))}getClassName(){return this._className}}e.s(["FlowGraphUnaryOperationBlock",0,o])},16357,e=>{"use strict";var t=e.i(25877);class o extends t.FlowGraphCachedOperationBlock{constructor(e,t,o,r,a,s){super(o,s),this._operation=r,this._className=a,this.a=this.registerDataInput("a",e),this.b=this.registerDataInput("b",t)}_doOperation(e){let t=this.a.getValue(e),o=this.b.getValue(e);return this._operation(t,o)}getClassName(){return this._className}}e.s(["FlowGraphBinaryOperationBlock",0,o])},68362,e=>{"use strict";var t=e.i(25742),o=e.i(5110),r=e.i(16357),a=e.i(69823),s=e.i(96265),i=e.i(63719),l=e.i(46703),c=e.i(77052);let n="cachedOperationAxis",h="cachedOperationAngle",p="cachedExecutionId";class u extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeNumber,e=>this._polymorphicLength(e),"FlowGraphLengthBlock",e)}_polymorphicLength(e){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return e.length();default:throw Error(`Cannot compute length of value ${e}`)}}}class w extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeAny,e=>this._polymorphicNormalize(e),"FlowGraphNormalizeBlock",e)}_polymorphicNormalize(e){let t;switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return t=e.normalizeToNew(),this.config?.nanOnZeroLength&&0===e.length()&&t.setAll(NaN),t;default:throw Error(`Cannot normalize value ${e}`)}}}class B extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeAny,o.RichTypeAny,o.RichTypeNumber,(e,t)=>this._polymorphicDot(e,t),"FlowGraphDotBlock",e)}_polymorphicDot(e,t){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":case"Vector4":case"Quaternion":return e.dot(t);default:throw Error(`Cannot get dot product of ${e} and ${t}`)}}}class F extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeVector3,o.RichTypeVector3,(e,t)=>s.Vector3.Cross(e,t),"FlowGraphCrossBlock",e)}}class y extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector2,o.RichTypeNumber,o.RichTypeVector2,(e,t)=>e.rotate(t),"FlowGraphRotate2DBlock",e)}}class G extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeQuaternion,o.RichTypeVector3,(e,t)=>e.applyRotationQuaternion(t),"FlowGraphRotate3DBlock",e)}}function g(e,t){switch((0,i._GetClassNameOf)(e)){case"Vector2":case"Vector3":return t.transformVector(e);case"Vector4":return new s.Vector4(e.x*t.m[0]+e.y*t.m[1]+e.z*t.m[2]+e.w*t.m[3],e.x*t.m[4]+e.y*t.m[5]+e.z*t.m[6]+e.w*t.m[7],e.x*t.m[8]+e.y*t.m[9]+e.z*t.m[10]+e.w*t.m[11],e.x*t.m[12]+e.y*t.m[13]+e.z*t.m[14]+e.w*t.m[15]);default:throw Error(`Cannot transform value ${e}`)}}class m extends r.FlowGraphBinaryOperationBlock{constructor(e){const t=e?.vectorType||"Vector3",r="Vector2"===t?"Matrix2D":"Vector3"===t?"Matrix3D":"Matrix";super((0,o.getRichTypeByFlowGraphType)(t),(0,o.getRichTypeByFlowGraphType)(r),(0,o.getRichTypeByFlowGraphType)(t),g,"FlowGraphTransformVectorBlock",e)}}class V extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeMatrix,o.RichTypeVector3,(e,t)=>s.Vector3.TransformCoordinates(e,t),"FlowGraphTransformCoordinatesBlock",e)}}class k extends a.FlowGraphUnaryOperationBlock{constructor(e){super(o.RichTypeQuaternion,o.RichTypeQuaternion,e=>e.conjugate(),"FlowGraphConjugateBlock",e)}}class R extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeQuaternion,o.RichTypeQuaternion,o.RichTypeNumber,(e,t)=>2*Math.acos((0,l.Clamp)(e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,-1,1)),"FlowGraphAngleBetweenBlock",e)}}class d extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeNumber,o.RichTypeQuaternion,(e,t)=>s.Quaternion.RotationAxis(e,t),"FlowGraphQuaternionFromAxisAngleBlock",e)}}class x extends t.FlowGraphBlock{constructor(e){super(e),this.a=this.registerDataInput("a",o.RichTypeQuaternion),this.axis=this.registerDataOutput("axis",o.RichTypeVector3),this.angle=this.registerDataOutput("angle",o.RichTypeNumber),this.isValid=this.registerDataOutput("isValid",o.RichTypeBoolean)}_updateOutputs(e){let t=e._getExecutionVariable(this,p,-1),o=e._getExecutionVariable(this,n,null),r=e._getExecutionVariable(this,h,null);if(null!=o&&null!=r&&t===e.executionId)this.axis.setValue(o,e),this.angle.setValue(r,e);else try{let{axis:t,angle:o}=this.a.getValue(e).toAxisAngle();e._setExecutionVariable(this,n,t),e._setExecutionVariable(this,h,o),e._setExecutionVariable(this,p,e.executionId),this.axis.setValue(t,e),this.angle.setValue(o,e),this.isValid.setValue(!0,e)}catch(t){this.isValid.setValue(!1,e)}}getClassName(){return"FlowGraphAxisAngleFromQuaternionBlock"}}class T extends r.FlowGraphBinaryOperationBlock{constructor(e){super(o.RichTypeVector3,o.RichTypeVector3,o.RichTypeQuaternion,(e,t)=>{let o;return function(e,t,o){let r=s.Vector3.Cross(e,t),a=Math.acos((0,l.Clamp)(e.x*t.x+e.y*t.y+e.z*t.z,-1,1));s.Quaternion.RotationAxisToRef(r,a,o)}(e,t,o=new s.Quaternion),o},"FlowGraphQuaternionFromDirectionsBlock",e)}}let C=!1;function O(){C||(C=!0,(0,c.RegisterClass)("FlowGraphLengthBlock",u),(0,c.RegisterClass)("FlowGraphNormalizeBlock",w),(0,c.RegisterClass)("FlowGraphDotBlock",B),(0,c.RegisterClass)("FlowGraphCrossBlock",F),(0,c.RegisterClass)("FlowGraphRotate2DBlock",y),(0,c.RegisterClass)("FlowGraphRotate3DBlock",G),(0,c.RegisterClass)("FlowGraphTransformVectorBlock",m),(0,c.RegisterClass)("FlowGraphTransformCoordinatesBlock",V),(0,c.RegisterClass)("FlowGraphConjugateBlock",k),(0,c.RegisterClass)("FlowGraphAngleBetweenBlock",R),(0,c.RegisterClass)("FlowGraphQuaternionFromAxisAngleBlock",d),(0,c.RegisterClass)("FlowGraphAxisAngleFromQuaternionBlock",x))}e.s(["FlowGraphAngleBetweenBlock",0,R,"FlowGraphAxisAngleFromQuaternionBlock",0,x,"FlowGraphConjugateBlock",0,k,"FlowGraphCrossBlock",0,F,"FlowGraphDotBlock",0,B,"FlowGraphLengthBlock",0,u,"FlowGraphNormalizeBlock",0,w,"FlowGraphQuaternionFromAxisAngleBlock",0,d,"FlowGraphQuaternionFromDirectionsBlock",0,T,"FlowGraphRotate2DBlock",0,y,"FlowGraphRotate3DBlock",0,G,"FlowGraphTransformBlock",0,m,"FlowGraphTransformCoordinatesBlock",0,V,"RegisterFlowGraphVectorMathBlocks",0,O],84974),O(),e.s([],4478),e.i(4478),e.i(84974),e.s(["FlowGraphAngleBetweenBlock",0,R,"FlowGraphAxisAngleFromQuaternionBlock",0,x,"FlowGraphConjugateBlock",0,k,"FlowGraphCrossBlock",0,F,"FlowGraphDotBlock",0,B,"FlowGraphLengthBlock",0,u,"FlowGraphNormalizeBlock",0,w,"FlowGraphQuaternionFromAxisAngleBlock",0,d,"FlowGraphQuaternionFromDirectionsBlock",0,T,"FlowGraphRotate2DBlock",0,y,"FlowGraphRotate3DBlock",0,G,"FlowGraphTransformBlock",0,m,"FlowGraphTransformCoordinatesBlock",0,V],68362)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67763,e=>{"use strict";var t,s;(s=t||(t={})).Animation="Animation",s.AnimationGroup="AnimationGroup",s.Mesh="Mesh",s.Material="Material",s.Camera="Camera",s.Light="Light",e.s(["GetFlowGraphAssetWithType",0,function(e,t,s,i){switch(t){case"Animation":return i?e.animations.find(e=>e.uniqueId===s)??null:e.animations[s]??null;case"AnimationGroup":return i?e.animationGroups.find(e=>e.uniqueId===s)??null:e.animationGroups[s]??null;case"Mesh":return i?e.meshes.find(e=>e.uniqueId===s)??null:e.meshes[s]??null;case"Material":return i?e.materials.find(e=>e.uniqueId===s)??null:e.materials[s]??null;case"Camera":return i?e.cameras.find(e=>e.uniqueId===s)??null:e.cameras[s]??null;case"Light":return i?e.lights.find(e=>e.uniqueId===s)??null:e.lights[s]??null;default:return null}}])},65299,e=>{"use strict";var t,s,i,n,o,r,a=e.i(99267),l=e.i(10272),h=e.i(37143),c=e.i(84768),d=e.i(36146),u=e.i(67763),_=e.i(13379);(t=n||(n={})).ExecuteBlock="ExecuteBlock",t.ExecuteEvent="ExecuteEvent",t.TriggerConnection="TriggerConnection",t.ContextVariableSet="ContextVariableSet",t.GlobalVariableSet="GlobalVariableSet",t.GlobalVariableDelete="GlobalVariableDelete",t.GlobalVariableGet="GlobalVariableGet",t.AddConnection="AddConnection",t.GetConnectionValue="GetConnectionValue",t.SetConnectionValue="SetConnectionValue",t.ActivateSignal="ActivateSignal",t.ContextVariableGet="ContextVariableGet";class g{constructor(){this.logToConsole=!1,this.log=[]}addLogItem(e){if(e.time||(e.time=Date.now()),this.log.push(e),this.logToConsole){let t=e.payload?.value;"object"==typeof t&&t.getClassName?_.Logger.Log(`[FGLog] ${e.className}:${e.uniqueId.split("-")[0]} ${e.action} - ${JSON.stringify(t.getClassName())}: ${t.toString()}`):_.Logger.Log(`[FGLog] ${e.className}:${e.uniqueId.split("-")[0]} ${e.action} - ${JSON.stringify(e.payload)}`)}}getItemsOfType(e){return this.log.filter(t=>t.action===e)}}class p{get enableLogging(){return this._enableLogging}set enableLogging(e){this._enableLogging!==e&&(this._enableLogging=e,this._enableLogging?(this.logger=new g,this.logger.logToConsole=!0):this.logger=null)}constructor(e){this.uniqueId=(0,c.RandomGUID)(),this.name="",this._userVariables={},this._variableTypes={},this._executionVariables={},this._globalContextVariables={},this._connectionValues={},this._pendingBlocks=[],this._executionId=0,this.onNodeExecutedObservable=new a.Observable,this.onBreakpointHitObservable=new a.Observable,this.breakpointPredicate=null,this._pendingActivation=null,this._stepMode=!1,this._skipBreakpointForBlockId=null,this.treatDataAsRightHanded=!1,this._enableLogging=!1,this._configuration=e,this.assetsContext=e.assetsContext??e.scene}hasVariable(e){return e in this._userVariables}setVariable(e,t){this._userVariables[e]=t,this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"ContextVariableSet",payload:{name:e,value:t}})}getAsset(e,t){return(0,u.GetFlowGraphAssetWithType)(this.assetsContext,e,t)}getVariable(e){return this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"ContextVariableGet",payload:{name:e,value:this._userVariables[e]}}),this._userVariables[e]}get userVariables(){return this._userVariables}setVariableType(e,t){this._variableTypes[e]=t}getVariableType(e){return this._variableTypes[e]}get variableTypes(){return this._variableTypes}getScene(){return this._configuration.scene}_getUniqueIdPrefixedName(e,t){return`${e.uniqueId}_${t}`}_getGlobalContextVariable(e,t){return(this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"GlobalVariableGet",payload:{name:e,defaultValue:t,possibleValue:this._globalContextVariables[e]}}),this._hasGlobalContextVariable(e))?this._globalContextVariables[e]:t}_setGlobalContextVariable(e,t){this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"GlobalVariableSet",payload:{name:e,value:t}}),this._globalContextVariables[e]=t}_deleteGlobalContextVariable(e){this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"GlobalVariableDelete",payload:{name:e}}),delete this._globalContextVariables[e]}_hasGlobalContextVariable(e){return e in this._globalContextVariables}_setExecutionVariable(e,t,s){this._executionVariables[this._getUniqueIdPrefixedName(e,t)]=s}_getExecutionVariable(e,t,s){return this._hasExecutionVariable(e,t)?this._executionVariables[this._getUniqueIdPrefixedName(e,t)]:s}_deleteExecutionVariable(e,t){delete this._executionVariables[this._getUniqueIdPrefixedName(e,t)]}_hasExecutionVariable(e,t){return this._getUniqueIdPrefixedName(e,t)in this._executionVariables}_hasConnectionValue(e){return e.uniqueId in this._connectionValues}_setConnectionValue(e,t){this._connectionValues[e.uniqueId]=t,this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"SetConnectionValue",payload:{connectionPointId:e.uniqueId,value:t}})}_setConnectionValueByKey(e,t){this._connectionValues[e]=t}_getConnectionValue(e){return this.logger?.addLogItem({time:Date.now(),className:this.getClassName(),uniqueId:this.uniqueId,action:"GetConnectionValue",payload:{connectionPointId:e.uniqueId,value:this._connectionValues[e.uniqueId]}}),this._connectionValues[e.uniqueId]}get configuration(){return this._configuration}get hasPendingBlocks(){return this._pendingBlocks.length>0}_addPendingBlock(e){this._pendingBlocks.includes(e)||(this._pendingBlocks.push(e),this._pendingBlocks.sort((e,t)=>e.priority-t.priority))}_removePendingBlock(e){let t=this._pendingBlocks.indexOf(e);-1!==t&&this._pendingBlocks.splice(t,1)}_clearPendingBlocks(){for(let e of this._pendingBlocks)e._cancelPendingTasks(this);this._pendingBlocks.length=0}_notifyExecuteNode(e){this.onNodeExecutedObservable.notifyObservers(e),this.logger?.addLogItem({time:Date.now(),className:e.getClassName(),uniqueId:e.uniqueId,action:"ExecuteBlock"})}_notifyOnTick(e){for(let t of(this._setGlobalContextVariable("timeSinceStart",e.timeSinceStart),this._setGlobalContextVariable("deltaTime",e.deltaTime),this._pendingBlocks))t._executeOnTick?.(this)}_increaseExecutionId(){this._executionId++}get executionId(){return this._executionId}_shouldBreak(e,t){return this._skipBreakpointForBlockId===e.uniqueId?(this._skipBreakpointForBlockId=null,!1):!!this._pendingActivation||(this._stepMode?(this._stepMode=!1,this._pendingActivation={block:e,context:this,signal:t},this.onBreakpointHitObservable.notifyObservers(this._pendingActivation),!0):!!(this.breakpointPredicate&&this.breakpointPredicate(e))&&(this._pendingActivation={block:e,context:this,signal:t},this.onBreakpointHitObservable.notifyObservers(this._pendingActivation),!0))}get pendingActivation(){return this._pendingActivation}continueExecution(){let e=this._pendingActivation;e&&(this._pendingActivation=null,this._skipBreakpointForBlockId=e.block.uniqueId,e.signal._activateSignal(this),this._skipBreakpointForBlockId=null)}stepExecution(){let e=this._pendingActivation;e&&(this._pendingActivation=null,this._stepMode=!0,this._skipBreakpointForBlockId=e.block.uniqueId,e.signal._activateSignal(this),this._stepMode=!1,this._skipBreakpointForBlockId=null)}_clearPendingActivation(){this._pendingActivation=null,this._stepMode=!1,this._skipBreakpointForBlockId=null}serialize(e={},t=d.defaultValueSerializationFunction){for(let s in e.uniqueId=this.uniqueId,e.name=this.name,e._userVariables={},this._userVariables)t(s,this._userVariables[s],e._userVariables);for(let s in Object.keys(this._variableTypes).length>0&&(e._variableTypes={...this._variableTypes}),e._connectionValues={},this._connectionValues)t(s,this._connectionValues[s],e._connectionValues);this.assetsContext!==this.getScene()&&(e._assetsContext={meshes:this.assetsContext.meshes.map(e=>e.id),materials:this.assetsContext.materials.map(e=>e.id),textures:this.assetsContext.textures.map(e=>e.name),animations:this.assetsContext.animations.map(e=>e.name),lights:this.assetsContext.lights.map(e=>e.id),cameras:this.assetsContext.cameras.map(e=>e.id),sounds:this.assetsContext.sounds?.map(e=>e.name),skeletons:this.assetsContext.skeletons.map(e=>e.id),particleSystems:this.assetsContext.particleSystems.map(e=>e.name),geometries:this.assetsContext.geometries.map(e=>e.id),multiMaterials:this.assetsContext.multiMaterials.map(e=>e.id),transformNodes:this.assetsContext.transformNodes.map(e=>e.id)})}getClassName(){return"FlowGraphContext"}}(0,l.__decorate)([(0,h.serialize)()],p.prototype,"uniqueId",void 0),(0,l.__decorate)([(0,h.serialize)()],p.prototype,"name",void 0);var v=e.i(55491),b=e.i(46518),f=e.i(21222),m=e.i(36365),y=e.i(63719);class x{constructor(e){this.onEventTriggeredObservable=new a.Observable,this.sceneReadyTriggered=!1,this._pointerUnderMeshState={},this._onBlurHandler=null,this.pressedKeys=new Set,this._startingTime=0,this._scene=e,this._initialize()}_initialize(){this._sceneReadyObserver=this._scene.onReadyObservable.addOnce(()=>{this.sceneReadyTriggered||(this.onEventTriggeredObservable.notifyObservers({type:"SceneReady"}),this.sceneReadyTriggered=!0)}),this._sceneDisposeObserver=this._scene.onDisposeObservable.add(()=>{this.onEventTriggeredObservable.notifyObservers({type:"SceneDispose"})}),this._sceneOnBeforeRenderObserver=this._scene.onBeforeRenderObservable.add(()=>{let e=this._scene.getEngine().getDeltaTime()/1e3;this.onEventTriggeredObservable.notifyObservers({type:"SceneBeforeRender",payload:{timeSinceStart:this._startingTime,deltaTime:e}}),this._startingTime+=e}),this._meshPickedObserver=this._scene.onPointerObservable.add(e=>{this.onEventTriggeredObservable.notifyObservers({type:"MeshPick",payload:e})},f.PointerEventTypes.POINTERPICK),this._pointerDownObserver=this._scene.onPointerObservable.add(e=>{this.onEventTriggeredObservable.notifyObservers({type:"PointerDown",payload:e})},f.PointerEventTypes.POINTERDOWN),this._pointerUpObserver=this._scene.onPointerObservable.add(e=>{this.onEventTriggeredObservable.notifyObservers({type:"PointerUp",payload:e})},f.PointerEventTypes.POINTERUP),this._pointerMoveObserver=this._scene.onPointerObservable.add(e=>{this.onEventTriggeredObservable.notifyObservers({type:"PointerMove",payload:e})},f.PointerEventTypes.POINTERMOVE),this._meshUnderPointerObserver=this._scene.onMeshUnderPointerUpdatedObservable.add(e=>{let t=e.pointerId,s=e.mesh,i=this._pointerUnderMeshState[t];!i&&s?this.onEventTriggeredObservable.notifyObservers({type:"PointerOver",payload:{pointerId:t,mesh:s}}):i&&!s?this.onEventTriggeredObservable.notifyObservers({type:"PointerOut",payload:{pointerId:t,mesh:i}}):i&&s&&i!==s&&(this.onEventTriggeredObservable.notifyObservers({type:"PointerOut",payload:{pointerId:t,mesh:i,over:s}}),this.onEventTriggeredObservable.notifyObservers({type:"PointerOver",payload:{pointerId:t,mesh:s,out:i}})),this._pointerUnderMeshState[t]=s},f.PointerEventTypes.POINTERMOVE),this._keyDownObserver=this._scene.onKeyboardObservable.add(e=>{let t=e.event.code;this.pressedKeys.add(t),x._COMMAND_OR_CTRL_CODES.has(t)&&this.pressedKeys.add("CommandOrControl"),this.onEventTriggeredObservable.notifyObservers({type:"KeyDown",payload:e})},m.KeyboardEventTypes.KEYDOWN),this._keyUpObserver=this._scene.onKeyboardObservable.add(e=>{let t=e.event.code;if(this.pressedKeys.delete(t),x._COMMAND_OR_CTRL_CODES.has(t)){let e=!1;for(let s of Array.from(x._COMMAND_OR_CTRL_CODES))if(s!==t&&this.pressedKeys.has(s)){e=!0;break}e||this.pressedKeys.delete("CommandOrControl")}this.onEventTriggeredObservable.notifyObservers({type:"KeyUp",payload:e})},m.KeyboardEventTypes.KEYUP);let e=this._scene.getEngine().getRenderingCanvas();e&&(this._onBlurHandler=()=>this.pressedKeys.clear(),e.addEventListener("blur",this._onBlurHandler))}dispose(){if(this._sceneDisposeObserver?.remove(),this._sceneReadyObserver?.remove(),this._sceneOnBeforeRenderObserver?.remove(),this._meshPickedObserver?.remove(),this._meshUnderPointerObserver?.remove(),this._pointerDownObserver?.remove(),this._pointerUpObserver?.remove(),this._pointerMoveObserver?.remove(),this._keyDownObserver?.remove(),this._keyUpObserver?.remove(),this._onBlurHandler){let e=this._scene.getEngine().getRenderingCanvas();e?.removeEventListener("blur",this._onBlurHandler),this._onBlurHandler=null}this.pressedKeys.clear(),this.onEventTriggeredObservable.clear()}}x._COMMAND_OR_CTRL_CODES=new Set(y._IsMacPlatform?["MetaLeft","MetaRight"]:["ControlLeft","ControlRight"]);var C=e.i(43350);(s=o||(o={}))[s.Error=0]="Error",s[s.Warning=1]="Warning";let O=new Set(["number","FlowGraphInteger","boolean"]),k=new Set(["Vector4","Quaternion"]),E=new Set(["Color3","Color4"]);function I(e){return e instanceof C.FlowGraphEventBlock}(i=r||(r={}))[i.Stopped=0]="Stopped",i[i.Started=1]="Started",i[i.Paused=2]="Paused";class B{get scene(){return this._scene}get coordinator(){return this._coordinator}get sceneEventCoordinator(){return this._sceneEventCoordinator}get state(){return this._state}set state(e){this._state=e,this.onStateChangedObservable.notifyObservers(e)}constructor(e){this.onStateChangedObservable=new a.Observable,this._eventBlocks={SceneReady:[],SceneDispose:[],SceneBeforeRender:[],MeshPick:[],PointerDown:[],PointerUp:[],PointerMove:[],PointerOver:[],PointerOut:[],KeyDown:[],KeyUp:[],SceneAfterRender:[],NoTrigger:[]},this._allBlocks=[],this._executionContexts=[],this._state=0,this._scene=e.scene,this._sceneEventCoordinator=new x(this._scene),this._coordinator=e.coordinator,this.name=e.name??"Graph",this.uniqueId=e.uniqueId??(0,c.RandomGUID)()}_attachEventObserver(){this._eventObserver||(this._eventObserver=this._sceneEventCoordinator.onEventTriggeredObservable.add(e=>{if("SceneDispose"===e.type)return void this.dispose();if(1===this.state){for(let t of this._executionContexts)for(let s of this._getContextualOrder(e.type,t))if(!s._executeEvent(t,e.payload))break;switch(e.type){case"SceneReady":this._sceneEventCoordinator.sceneReadyTriggered=!0;break;case"SceneBeforeRender":for(let t of this._executionContexts)t._notifyOnTick(e.payload)}}}))}_detachEventObserver(){this._eventObserver?.remove(),this._eventObserver=null}setScene(e){e!==this._scene&&(1===this.state&&this.stop(),this._detachEventObserver(),this._sceneEventCoordinator.dispose(),this._executionContexts.length=0,this._scene=e,this._scene.constantlyUpdateMeshUnderPointer=!0,this._sceneEventCoordinator=new x(this._scene),this._attachEventObserver())}createContext(){let e=new p({scene:this._scene,coordinator:this._coordinator,sceneEventCoordinator:this._sceneEventCoordinator});return this._executionContexts.push(e),e}getContext(e){return this._executionContexts[e]}get contextCount(){return this._executionContexts.length}removeContext(e){if(e<0||e>=this._executionContexts.length)return;let[t]=this._executionContexts.splice(e,1);return t._clearPendingBlocks(),t}getAllBlocks(){return this._allBlocks}addBlock(e){-1===this._allBlocks.indexOf(e)&&this._allBlocks.push(e)}removeBlock(e){let t=this._allBlocks.indexOf(e);if(-1!==t&&this._allBlocks.splice(t,1),e instanceof v.FlowGraphExecutionBlock&&"type"in e){let t=this._eventBlocks[e.type];if(t){let s=t.indexOf(e);-1!==s&&t.splice(s,1)}}if(e instanceof b.FlowGraphAsyncExecutionBlock)for(let t of this._executionContexts)e._cancelPendingTasks(t),e._resetAfterCanceled(t);for(let t of e.dataInputs)t.disconnectFromAll();for(let t of e.dataOutputs)t.disconnectFromAll();if(e instanceof v.FlowGraphExecutionBlock){for(let t of e.signalInputs)t.disconnectFromAll();for(let t of e.signalOutputs)t.disconnectFromAll()}}addEventBlock(e){if(this.addBlock(e),("PointerOver"===e.type||"PointerOut"===e.type)&&(this._scene.constantlyUpdateMeshUnderPointer=!0),this._eventBlocks[e.type].push(e),1===this.state)for(let t of this._executionContexts)e._startPendingTasks(t);else this.onStateChangedObservable.addOnce(t=>{if(1===t)for(let t of this._executionContexts)e._startPendingTasks(t)})}stop(){if(0!==this.state){for(let e of(this._detachEventObserver(),this.state=0,this._executionContexts))e._clearPendingBlocks(),e._clearPendingActivation();this._executionContexts.length=0}}pause(){if(1===this.state)for(let e of(this._detachEventObserver(),this.state=2,this._executionContexts))e._clearPendingBlocks()}start(){if(1===this.state)return;let e=2===this.state;0===this._executionContexts.length&&this.createContext(),this._attachEventObserver(),this.state=1,this._startPendingEvents(),e||(this._sceneEventCoordinator.sceneReadyTriggered=!1,this._scene.isReady(!0)?(this._sceneEventCoordinator.sceneReadyTriggered=!0,this._sceneEventCoordinator.onEventTriggeredObservable.notifyObservers({type:"SceneReady"})):this._scene.executeWhenReady(()=>{1!==this.state||this._sceneEventCoordinator.sceneReadyTriggered||(this._sceneEventCoordinator.sceneReadyTriggered=!0,this._sceneEventCoordinator.onEventTriggeredObservable.notifyObservers({type:"SceneReady"}))},!0))}_startPendingEvents(){for(let e of this._executionContexts)for(let t in this._eventBlocks)for(let s of this._getContextualOrder(t,e))s._startPendingTasks(e)}_getContextualOrder(e,t){let s=this._eventBlocks[e].sort((e,t)=>t.initPriority-e.initPriority);if("MeshPick"===e){let e=[];for(let i of s){let n=i.asset.getValue(t),o=0;for(;o<s.length;o++){let e=s[o].asset.getValue(t);if(n&&e&&(0,y._IsDescendantOf)(n,e))break}e.splice(o,0,i)}return e}return s}dispose(){if(0!==this.state){for(let e of(this.state=0,this._executionContexts))e._clearPendingBlocks(),e._clearPendingActivation();for(let e in this._executionContexts.length=0,this._eventBlocks)this._eventBlocks[e].length=0;this._allBlocks.length=0,this._detachEventObserver(),this._sceneEventCoordinator.dispose()}}visitAllBlocks(e){let t=[],s=new Set;for(let e in this._eventBlocks)for(let i of this._eventBlocks[e])t.push(i),s.add(i.uniqueId);for(;t.length>0;){let i=t.pop();for(let n of(e(i),i.dataInputs))for(let e of n._connectedPoint)s.has(e._ownerBlock.uniqueId)||(t.push(e._ownerBlock),s.add(e._ownerBlock.uniqueId));if(i instanceof v.FlowGraphExecutionBlock)for(let e of i.signalOutputs)for(let i of e._connectedPoint)s.has(i._ownerBlock.uniqueId)||(t.push(i._ownerBlock),s.add(i._ownerBlock.uniqueId))}}validate(){return function(e,t){let s=function(e){let t=[],s=new Map,i=e=>{if(t.push(e),e.block){let t=s.get(e.block.uniqueId);t||(t=[],s.set(e.block.uniqueId,t)),t.push(e)}},n=[];for(let t of(e.visitAllBlocks(e=>{n.push(e)}),0===function(e){let t=[];for(let s in e._eventBlocks)for(let i of e._eventBlocks[s])t.push(i);return t}(e).length&&i({severity:0,message:"Graph has no event blocks — nothing will trigger execution."}),n))for(let e of t.dataInputs)e.optional||e.isDisabled||e.isConnected()||i({severity:1,message:`"${e.name}" is not connected and will use its default value.`,block:t,connectionName:e.name});for(let e of n)if(e instanceof v.FlowGraphExecutionBlock){if(I(e))continue;let t=e.signalInputs.find(e=>"in"===e.name);t&&!t.isConnected()&&i({severity:0,message:"Execution block has no incoming signal — it will never execute.",block:e,connectionName:"in"})}for(let e of n)for(let t of e.dataInputs){if(!t.isConnected())continue;let s=t._connectedPoint[0],n=s.richType?.typeName,o=t.richType?.typeName;if(n&&o&&!(n===o||"any"===n||"any"===o||O.has(n)&&O.has(o)||k.has(n)&&k.has(o)||E.has(n)&&E.has(o))){if(void 0!==s.richType.typeTransformer||void 0!==t.richType.typeTransformer)continue;i({severity:1,message:`Type mismatch: "${s._ownerBlock.name}.${s.name}" (${n}) → "${e.name}.${t.name}" (${o}).`,block:e,connectionName:t.name})}}let o=new Set;return e.visitAllBlocks(e=>{o.add(e.uniqueId)}),function(e,t){let s=new Map;for(let t of e)s.set(t.uniqueId,0);let i=new Map;for(let t of e)i.set(t.uniqueId,t);let n=new Set;for(let i of e)0===s.get(i.uniqueId)&&function e(i){for(let o of(s.set(i.uniqueId,1),i.dataInputs))if(o.isConnected())for(let r of o._connectedPoint){let o=r._ownerBlock;if(o instanceof v.FlowGraphExecutionBlock)continue;let a=s.get(o.uniqueId);if(1===a)return n.has(i.uniqueId)||(n.add(i.uniqueId),t({severity:0,message:"Data dependency cycle detected — getValue() will recurse infinitely.",block:i})),n.has(o.uniqueId)||(n.add(o.uniqueId),t({severity:0,message:"Data dependency cycle detected — getValue() will recurse infinitely.",block:o})),!0;0===a&&e(o)}return s.set(i.uniqueId,2),!1}(i)}(n,i),t.sort((e,t)=>e.severity-t.severity),{isValid:t.every(e=>0!==e.severity),issues:t,errorCount:t.filter(e=>0===e.severity).length,warningCount:t.filter(e=>1===e.severity).length,issuesByBlock:s}}(e),i=new Set;for(let n of(e.visitAllBlocks(e=>{i.add(e.uniqueId)}),t))if(!i.has(n.uniqueId)){let e={severity:1,message:"Block is unreachable from any event block.",block:n};s.issues.push(e),s.warningCount++;let t=s.issuesByBlock.get(n.uniqueId);for(let i of(t||(t=[],s.issuesByBlock.set(n.uniqueId,t)),t.push(e),n.dataInputs))if(!i.optional&&!i.isDisabled&&!i.isConnected()){let e={severity:1,message:`"${i.name}" is not connected and will use its default value.`,block:n,connectionName:i.name};s.issues.push(e),s.warningCount++,t.push(e)}if(n instanceof v.FlowGraphExecutionBlock&&!I(n)){let e=n.signalInputs.find(e=>"in"===e.name);if(e&&!e.isConnected()){let e={severity:0,message:"Execution block has no incoming signal — it will never execute.",block:n,connectionName:"in"};s.issues.push(e),s.errorCount++,t.push(e)}}}return s.isValid=s.issues.every(e=>0!==e.severity),s.issues.sort((e,t)=>e.severity-t.severity),s}(this,this._allBlocks)}serialize(e={},t){e.name=this.name,e.uniqueId=this.uniqueId,e.allBlocks=[];let s=new Set,i=t=>{if(s.has(t.uniqueId))return;s.add(t.uniqueId);let i={};t.serialize(i),e.allBlocks.push(i)};for(let e of(this.visitAllBlocks(i),this._allBlocks))i(e);for(let s of(e.executionContexts=[],this._executionContexts)){let i={};s.serialize(i,t),e.executionContexts.push(i)}}}class T{constructor(e){this.config=e,this.dispatchEventsSynchronously=!0,this._flowGraphs=[],this._customEventsMap=new Map,this._eventExecutionCounter=new Map,this._executeOnNextFrame=[],this._eventUniqueId=0,this._disposeObserver=this.config.scene.onDisposeObservable.add(()=>{this.dispose()}),this._onBeforeRenderObserver=this.config.scene.onBeforeRenderObservable.add(()=>{this._eventExecutionCounter.clear();let e=this._executeOnNextFrame.slice(0);if(e.length)for(let t of e){this.notifyCustomEvent(t.id,t.data,!1);let e=this._executeOnNextFrame.findIndex(e=>e.uniqueId===t.uniqueId);-1!==e&&this._executeOnNextFrame.splice(e,1)}});let t=T.SceneCoordinators.get(this.config.scene);t||(t=[],T.SceneCoordinators.set(this.config.scene,t)),t.push(this)}createGraph(e){let t=e??`Graph ${this._flowGraphs.length+1}`,s=new B({scene:this.config.scene,coordinator:this,name:t});return this._flowGraphs.push(s),s}removeGraph(e){let t=this._flowGraphs.indexOf(e);-1!==t&&(e.dispose(),this._flowGraphs.splice(t,1))}start(){for(let e of this._flowGraphs)e.start()}dispose(){for(let e of this._flowGraphs)e.dispose();this._flowGraphs.length=0,this._disposeObserver?.remove(),this._onBeforeRenderObserver?.remove();let e=T.SceneCoordinators.get(this.config.scene)??[],t=e.indexOf(this);-1!==t&&e.splice(t,1)}serialize(e,t){for(let s of(e._flowGraphs=[],this._flowGraphs)){let i={};s.serialize(i,t),e._flowGraphs.push(i)}e.dispatchEventsSynchronously=this.dispatchEventsSynchronously}get flowGraphs(){return this._flowGraphs}getCustomEventObservable(e){let t=this._customEventsMap.get(e);return t||(t=new a.Observable,this._customEventsMap.set(e,t)),t}notifyCustomEvent(e,t,s=!this.dispatchEventsSynchronously){if(s)return void this._executeOnNextFrame.push({id:e,data:t,uniqueId:this._eventUniqueId++});if(this._eventExecutionCounter.has(e)){let t=this._eventExecutionCounter.get(e);if(this._eventExecutionCounter.set(e,t+1),t>=T.MaxEventTypeExecutionPerFrame){t===T.MaxEventTypeExecutionPerFrame&&_.Logger.Warn(`FlowGraphCoordinator: Too many executions of event "${e}".`);return}}else this._eventExecutionCounter.set(e,1);let i=this._customEventsMap.get(e);i&&i.notifyObservers(t)}}T.MaxEventsPerType=30,T.MaxEventTypeExecutionPerFrame=30,T.SceneCoordinators=new Map,e.s(["FlowGraphCoordinator",0,T],65299)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,1773,e=>{"use strict";e.s(["useOpenGLOrientationForUV",()=>!1])},54361,e=>{"use strict";class t{constructor(e,t){this.width=e,this.height=t}toString(){return`{W: ${this.width}, H: ${this.height}}`}getClassName(){return"Size"}getHashCode(){let e=0|this.width;return 397*e^this.height}copyFrom(e){this.width=e.width,this.height=e.height}copyFromFloats(e,t){return this.width=e,this.height=t,this}set(e,t){return this.copyFromFloats(e,t)}multiplyByFloats(e,i){return new t(this.width*e,this.height*i)}clone(){return new t(this.width,this.height)}equals(e){return!!e&&this.width===e.width&&this.height===e.height}get surface(){return this.width*this.height}static Zero(){return new t(0,0)}add(e){return new t(this.width+e.width,this.height+e.height)}subtract(e){return new t(this.width-e.width,this.height-e.height)}scale(e){return new t(this.width*e,this.height*e)}static Lerp(e,i,r){return new t(e.width+(i.width-e.width)*r,e.height+(i.height-e.height)*r)}}e.s(["Size",0,t])},52153,e=>{"use strict";var t,i=e.i(10272),r=e.i(37143),s=e.i(99267),a=e.i(96265),n=e.i(81623),h=e.i(84768),o=e.i(54361);class l{get wrapU(){return this._wrapU}set wrapU(e){this._wrapU=e}get wrapV(){return this._wrapV}set wrapV(e){this._wrapV=e}get coordinatesMode(){return 0}get isCube(){return!!this._texture&&this._texture.isCube}set isCube(e){this._texture&&(this._texture.isCube=e)}get is3D(){return!!this._texture&&this._texture.is3D}set is3D(e){this._texture&&(this._texture.is3D=e)}get is2DArray(){return!!this._texture&&this._texture.is2DArray}set is2DArray(e){this._texture&&(this._texture.is2DArray=e)}getClassName(){return"ThinTexture"}static _IsRenderTargetWrapper(e){return e?.shareDepth!==void 0}constructor(e){this._wrapU=1,this._wrapV=1,this.wrapR=1,this.anisotropicFilteringLevel=4,this.delayLoadState=0,this._texture=null,this._engine=null,this._cachedSize=o.Size.Zero(),this._cachedBaseSize=o.Size.Zero(),this._initialSamplingMode=2,this._texture=l._IsRenderTargetWrapper(e)?e.texture:e,this._texture&&(this._engine=this._texture.getEngine(),this.wrapU=this._texture._cachedWrapU??this.wrapU,this.wrapV=this._texture._cachedWrapV??this.wrapV,this.wrapR=this._texture._cachedWrapR??this.wrapR)}isReady(){return 4===this.delayLoadState?(this.delayLoad(),!1):!!this._texture&&this._texture.isReady}delayLoad(){}getInternalTexture(){return this._texture}getSize(){if(this._texture){if(this._texture.width)return this._cachedSize.width=this._texture.width,this._cachedSize.height=this._texture.height,this._cachedSize;this._texture._size&&(this._cachedSize.width=this._texture._size,this._cachedSize.height=this._texture._size)}return this._cachedSize}getBaseSize(){return this.isReady()&&this._texture?this._texture._size?(this._cachedBaseSize.width=this._texture._size,this._cachedBaseSize.height=this._texture._size):(this._cachedBaseSize.width=this._texture.baseWidth,this._cachedBaseSize.height=this._texture.baseHeight):(this._cachedBaseSize.width=0,this._cachedBaseSize.height=0),this._cachedBaseSize}get samplingMode(){return this._texture?this._texture.samplingMode:this._initialSamplingMode}updateSamplingMode(e,t=!1){this._texture&&this._engine&&this._engine.updateTextureSamplingMode(e,this._texture,this._texture.generateMipMaps&&t)}releaseInternalTexture(){this._texture&&(this._texture.dispose(),this._texture=null)}dispose(){this._texture&&(this.releaseInternalTexture(),this._engine=null)}}var u=e.i(80871),_=e.i(75405);class c extends l{set hasAlpha(e){this._hasAlpha!==e&&(this._hasAlpha=e,this._scene&&this._scene.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)))}get hasAlpha(){return this._hasAlpha}set getAlphaFromRGB(e){this._getAlphaFromRGB!==e&&(this._getAlphaFromRGB=e,this._scene&&this._scene.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)))}get getAlphaFromRGB(){return this._getAlphaFromRGB}set coordinatesIndex(e){this._coordinatesIndex!==e&&(this._coordinatesIndex=e,this._scene&&this._scene.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)))}get coordinatesIndex(){return this._coordinatesIndex}set coordinatesMode(e){this._coordinatesMode!==e&&(this._coordinatesMode=e,this._scene&&this._scene.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)))}get coordinatesMode(){return this._coordinatesMode}get wrapU(){return this._wrapU}set wrapU(e){this._wrapU=e}get wrapV(){return this._wrapV}set wrapV(e){this._wrapV=e}get isCube(){return this._texture?this._texture.isCube:this._isCube}set isCube(e){this._texture?this._texture.isCube=e:this._isCube=e}get is3D(){return!!this._texture&&this._texture.is3D}set is3D(e){this._texture&&(this._texture.is3D=e)}get is2DArray(){return!!this._texture&&this._texture.is2DArray}set is2DArray(e){this._texture&&(this._texture.is2DArray=e)}get gammaSpace(){return this._texture?(null===this._texture._gammaSpace&&(this._texture._gammaSpace=this._gammaSpace),this._texture._gammaSpace&&!this._texture._useSRGBBuffer):this._gammaSpace}set gammaSpace(e){if(this._texture){if(this._texture._gammaSpace===e)return;this._texture._gammaSpace=e}else{if(this._gammaSpace===e)return;this._gammaSpace=e}this.getScene()?.markAllMaterialsAsDirty(1,e=>e.hasTexture(this))}get isRGBD(){return null!=this._texture&&this._texture._isRGBD}set isRGBD(e){e!==this.isRGBD&&(this._texture&&(this._texture._isRGBD=e),this.getScene()?.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)))}get noMipmap(){return!1}get lodGenerationOffset(){return this._texture?this._texture._lodGenerationOffset:0}set lodGenerationOffset(e){this._texture&&(this._texture._lodGenerationOffset=e)}get lodGenerationScale(){return this._texture?this._texture._lodGenerationScale:0}set lodGenerationScale(e){this._texture&&(this._texture._lodGenerationScale=e)}get linearSpecularLOD(){return!!this._texture&&this._texture._linearSpecularLOD}set linearSpecularLOD(e){this._texture&&(this._texture._linearSpecularLOD=e)}get irradianceTexture(){return this._texture?this._texture._irradianceTexture:null}set irradianceTexture(e){this._texture&&(this._texture._irradianceTexture=e)}get uid(){return this._uid||(this._uid=(0,h.RandomGUID)()),this._uid}toString(){return this.name}getClassName(){return"BaseTexture"}set onDispose(e){this._onDisposeObserver&&this.onDisposeObservable.remove(this._onDisposeObserver),this._onDisposeObserver=this.onDisposeObservable.add(e)}get isBlocking(){return!0}get loadingError(){return this._loadingError}get errorObject(){return this._errorObject}constructor(e,t=null){super(null),this.metadata=null,this.reservedDataStore=null,this._hasAlpha=!1,this._getAlphaFromRGB=!1,this.level=1,this._coordinatesIndex=0,this.optimizeUVAllocation=!0,this._coordinatesMode=0,this.wrapR=1,this.anisotropicFilteringLevel=c.DEFAULT_ANISOTROPIC_FILTERING_LEVEL,this._isCube=!1,this._gammaSpace=!0,this.invertZ=!1,this.lodLevelInAlpha=!1,this._dominantDirection=null,this.isRenderTarget=!1,this._prefiltered=!1,this._forceSerialize=!1,this.animations=[],this.onDisposeObservable=new s.Observable,this._onDisposeObserver=null,this._scene=null,this._uid=null,this._parentContainer=null,this._loadingError=!1,e?c._IsScene(e)?this._scene=e:this._engine=e:this._scene=n.EngineStore.LastCreatedScene,this._scene&&(this.uniqueId=this._scene.getUniqueId(),this._scene.addTexture(this),this._engine=this._scene.getEngine()),this._texture=t,this._uid=null}getScene(){return this._scene}_getEngine(){return this._engine}getTextureMatrix(){return a.Matrix.IdentityReadOnly}getReflectionTextureMatrix(){return a.Matrix.IdentityReadOnly}getRefractionTextureMatrix(){return this.getReflectionTextureMatrix()}isReadyOrNotBlocking(){return!this.isBlocking||this.isReady()||this.loadingError}scale(e){}get canRescale(){return!1}_getFromCache(e,t,i,r,s,a){let n=this._getEngine();if(!n)return null;let h=n._getUseSRGBBuffer(!!s,t),o=n.getLoadedTexturesCache();for(let n=0;n<o.length;n++){let l=o[n];if((void 0===s||h===l._useSRGBBuffer)&&(void 0===r||r===l.invertY)&&l.url===e&&!t===l.generateMipMaps&&(!i||i===l.samplingMode)&&(void 0===a||a===l.isCube))return l.incrementReferences(),l}return null}_rebuild(e=!1){}clone(){return null}get textureType(){return this._texture&&void 0!==this._texture.type?this._texture.type:0}get textureFormat(){return this._texture&&void 0!==this._texture.format?this._texture.format:5}_markAllSubMeshesAsTexturesDirty(){let e=this.getScene();e&&e.markAllMaterialsAsDirty(1)}readPixels(e=0,t=0,i=null,r=!0,s=!1,a=0,n=0,h=Number.MAX_VALUE,o=Number.MAX_VALUE){if(!this._texture)return null;let l=this._getEngine();if(!l)return null;let u=this.getSize(),_=u.width,c=u.height;0!==t&&(_/=Math.pow(2,t),c/=Math.pow(2,t),_=Math.round(_),c=Math.round(c)),h=Math.min(_,h),o=Math.min(c,o);try{if(this._texture.isCube||this._texture.is2DArray)return l._readTexturePixels(this._texture,h,o,e,t,i,r,s,a,n);return l._readTexturePixels(this._texture,h,o,-1,t,i,r,s,a,n)}catch(e){return null}}_readPixelsSync(e=0,t=0,i=null,r=!0,s=!1){if(!this._texture)return null;let a=this.getSize(),n=a.width,h=a.height,o=this._getEngine();if(!o)return null;0!=t&&(n/=Math.pow(2,t),h/=Math.pow(2,t),n=Math.round(n),h=Math.round(h));try{if(this._texture.isCube)return o._readTexturePixelsSync(this._texture,n,h,e,t,i,r,s);return o._readTexturePixelsSync(this._texture,n,h,-1,t,i,r,s)}catch(e){return null}}get _lodTextureHigh(){return this._texture?this._texture._lodTextureHigh:null}get _lodTextureMid(){return this._texture?this._texture._lodTextureMid:null}get _lodTextureLow(){return this._texture?this._texture._lodTextureLow:null}dispose(){if(this._scene){this._scene.stopAnimation&&this._scene.stopAnimation(this),this._scene.removePendingData(this);let e=this._scene.textures.indexOf(this);if(e>=0&&this._scene.textures.splice(e,1),this._scene.onTextureRemovedObservable.notifyObservers(this),this._scene=null,this._parentContainer){let e=this._parentContainer.textures.indexOf(this);e>-1&&this._parentContainer.textures.splice(e,1),this._parentContainer=null}}this.onDisposeObservable.notifyObservers(this),this.onDisposeObservable.clear(),this.metadata=null,super.dispose()}serialize(e=!1){if(!this.name&&!e)return null;let t=u.SerializationHelper.Serialize(this);return u.SerializationHelper.AppendSerializedAnimations(this,t),t}static WhenAllReady(e,t){let i=e.length;if(0===i)return void t();for(let r=0;r<e.length;r++){let s=e[r];if(s.isReady())0==--i&&t();else{let e=s.onLoadObservable;e?e.addOnce(()=>{0==--i&&t()}):0==--i&&t()}}}static _IsScene(e){return"Scene"===e.getClassName()}}c.DEFAULT_ANISOTROPIC_FILTERING_LEVEL=4,(0,i.__decorate)([(0,r.serialize)()],c.prototype,"uniqueId",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"name",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"displayName",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"metadata",void 0),(0,i.__decorate)([(0,r.serialize)("hasAlpha")],c.prototype,"_hasAlpha",void 0),(0,i.__decorate)([(0,r.serialize)("getAlphaFromRGB")],c.prototype,"_getAlphaFromRGB",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"level",void 0),(0,i.__decorate)([(0,r.serialize)("coordinatesIndex")],c.prototype,"_coordinatesIndex",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"optimizeUVAllocation",void 0),(0,i.__decorate)([(0,r.serialize)("coordinatesMode")],c.prototype,"_coordinatesMode",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"wrapU",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"wrapV",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"wrapR",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"anisotropicFilteringLevel",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"isCube",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"is3D",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"is2DArray",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"gammaSpace",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"invertZ",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"lodLevelInAlpha",void 0),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"lodGenerationOffset",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"lodGenerationScale",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"linearSpecularLOD",null),(0,i.__decorate)([(0,r.serializeAsTexture)()],c.prototype,"irradianceTexture",null),(0,i.__decorate)([(0,r.serialize)()],c.prototype,"isRenderTarget",void 0),(t=c.prototype).forceSphericalPolynomialsRecompute??(t.forceSphericalPolynomialsRecompute=(0,_._MissingSideEffect)("BaseTexture","forceSphericalPolynomialsRecompute")),Object.getOwnPropertyDescriptor(c.prototype,"sphericalPolynomial")||Object.defineProperty(c.prototype,"sphericalPolynomial",(0,_._MissingSideEffectProperty)("BaseTexture","sphericalPolynomial")),e.s(["BaseTexture",0,c],52153)},58720,e=>{"use strict";var t=e.i(10272),i=e.i(37143),r=e.i(99267),s=e.i(96265),a=e.i(52153),n=e.i(77052),h=e.i(75405),o=e.i(23240),l=e.i(98105),u=e.i(65002),_=e.i(49311);function c(e,t,i=!1){let r=t.width,s=t.height;if(e instanceof Float32Array){let t=e.byteLength/e.BYTES_PER_ELEMENT,i=new Uint8Array(t);for(;--t>=0;){let r=e[t];r<0?r=0:r>1&&(r=1),i[t]=255*r}e=i}let a=document.createElement("canvas");a.width=r,a.height=s;let n=a.getContext("2d");if(!n)return null;let h=n.createImageData(r,s);if(h.data.set(e),n.putImageData(h,0,0),i){let e=document.createElement("canvas");e.width=r,e.height=s;let t=e.getContext("2d");return t?(t.translate(0,s),t.scale(1,-1),t.drawImage(a,0,0),e.toDataURL("image/png")):null}return a.toDataURL("image/png")}async function d(e,t=0,i=0){let r=e.getInternalTexture();if(!r)return null;let s=await e.readPixels(t,i);return s?c(s,e.getSize(),r.invertY):null}var x=e.i(1773),p=e.i(80871);class f extends a.BaseTexture{static _CreateVideoTexture(e,t,i,r=!1,s=!1,a=f.TRILINEAR_SAMPLINGMODE,n={},o,l=5){throw(0,h._WarnImport)("VideoTexture")}get noMipmap(){return this._noMipmap}get mimeType(){return this._mimeType}set isBlocking(e){this._isBlocking=e}get isBlocking(){return this._isBlocking}get invertY(){return this._invertY}constructor(e,t,i,s,a=f.TRILINEAR_SAMPLINGMODE,n=null,h=null,l=null,u=!1,_,c,d,p,g){let m;super(t),this.url=null,this.uOffset=0,this.vOffset=0,this.uScale=1,this.vScale=1,this.uAng=0,this.vAng=0,this.wAng=0,this.uRotationCenter=.5,this.vRotationCenter=.5,this.wRotationCenter=.5,this.homogeneousRotationInUVTransform=!1,this.inspectableCustomProperties=null,this._noMipmap=!1,this._invertY=!1,this._rowGenerationMatrix=null,this._cachedTextureMatrix=null,this._projectionModeMatrix=null,this._t0=null,this._t1=null,this._t2=null,this._cachedUOffset=-1,this._cachedVOffset=-1,this._cachedUScale=0,this._cachedVScale=0,this._cachedUAng=-1,this._cachedVAng=-1,this._cachedWAng=-1,this._cachedReflectionProjectionMatrixId=-1,this._cachedURotationCenter=-1,this._cachedVRotationCenter=-1,this._cachedWRotationCenter=-1,this._cachedHomogeneousRotationInUVTransform=!1,this._cachedIdentity3x2=!0,this._cachedReflectionTextureMatrix=null,this._cachedReflectionUOffset=-1,this._cachedReflectionVOffset=-1,this._cachedReflectionUScale=0,this._cachedReflectionVScale=0,this._cachedReflectionCoordinatesMode=-1,this._buffer=null,this._deleteBuffer=!1,this._format=null,this._delayedOnLoad=null,this._delayedOnError=null,this.onLoadObservable=new r.Observable,this._isBlocking=!0,this.name=e||"",this.url=e;let R=!1,M=null,T=!0;"object"==typeof i&&null!==i?(m=i.noMipmap??!1,s=i.invertY??!x.useOpenGLOrientationForUV,a=i.samplingMode??f.TRILINEAR_SAMPLINGMODE,n=i.onLoad??null,h=i.onError??null,l=i.buffer??null,u=i.deleteBuffer??!1,_=i.format,c=i.mimeType,d=i.loaderOptions,p=i.creationFlags,R=i.useSRGBBuffer??!1,M=i.internalTexture??null,T=i.gammaSpace??T,g=i.forcedExtension??g):m=!!i,this._gammaSpace=T,this._noMipmap=m,this._invertY=void 0===s?!x.useOpenGLOrientationForUV:s,this._initialSamplingMode=a,this._buffer=l,this._deleteBuffer=u,this._mimeType=c,this._loaderOptions=d,this._creationFlags=p,this._useSRGBBuffer=R,this._forcedExtension=g,void 0!==_&&(this._format=_);const S=this.getScene(),y=this._getEngine();if(!y)return;y.onBeforeTextureInitObservable.notifyObservers(this);const A=()=>{this._texture&&(this._texture._invertVScale&&(this.vScale*=-1,this.vOffset+=1),null!==this._texture._cachedWrapU&&(this.wrapU=this._texture._cachedWrapU,this._texture._cachedWrapU=null),null!==this._texture._cachedWrapV&&(this.wrapV=this._texture._cachedWrapV,this._texture._cachedWrapV=null),null!==this._texture._cachedWrapR&&(this.wrapR=this._texture._cachedWrapR,this._texture._cachedWrapR=null)),this.onLoadObservable.hasObservers()&&this.onLoadObservable.notifyObservers(this),n&&n(),!this.isBlocking&&S&&S.resetCachedMaterial()},O=(e,t)=>{this._loadingError=!0,this._errorObject={message:e,exception:t},h&&h(e,t),f.OnTextureLoadErrorObservable.notifyObservers(this)};if(!this.url&&!M){this._delayedOnLoad=A,this._delayedOnError=O;return}if(this._texture=M??this._getFromCache(this.url,m,a,this._invertY,R,this.isCube),this._texture)if(this._texture.isReady)o.TimingTools.SetImmediate(()=>A());else{const e=this._texture.onLoadedObservable.add(A);this._texture.onErrorObservable.add(t=>{O(t.message,t.exception),this._texture?.onLoadedObservable.remove(e)})}else if(S&&S.useDelayedTextureLoading)this.delayLoadState=4,this._delayedOnLoad=A,this._delayedOnError=O;else{try{this._texture=y.createTexture(this.url,m,this._invertY,S,a,A,O,this._buffer,void 0,this._format,this._forcedExtension,c,d,p,R)}catch(e){throw O("error loading",e),e}u&&(this._buffer=null)}}updateURL(e,t=null,i,r){this.url&&(this.releaseInternalTexture(),this.getScene().markAllMaterialsAsDirty(1,e=>e.hasTexture(this))),(!this.name||this.name.startsWith("data:"))&&(this.name=e),this.url=e,this._buffer=t,this._forcedExtension=r,this.delayLoadState=4;let s=this._delayedOnLoad,a=()=>{s?s():this.onLoadObservable.hasObservers()&&this.onLoadObservable.notifyObservers(this),i&&i()};this._delayedOnLoad=a,this.delayLoad()}delayLoad(){if(4!==this.delayLoadState)return;let e=this.getScene();if(!e)return;let t=this.url;!t&&(this.name.indexOf("://")>0||this.name.startsWith("data:"))&&(t=this.name),this.delayLoadState=1,this._texture=this._getFromCache(t,this._noMipmap,this.samplingMode,this._invertY,this._useSRGBBuffer,this.isCube),this._texture?this._delayedOnLoad&&(this._texture.isReady?o.TimingTools.SetImmediate(this._delayedOnLoad):this._texture.onLoadedObservable.add(this._delayedOnLoad)):(this._texture=e.getEngine().createTexture(t,this._noMipmap,this._invertY,e,this.samplingMode,this._delayedOnLoad,this._delayedOnError,this._buffer,null,this._format,this._forcedExtension,this._mimeType,this._loaderOptions,this._creationFlags,this._useSRGBBuffer),this._deleteBuffer&&(this._buffer=null)),this._delayedOnLoad=null,this._delayedOnError=null}_prepareRowForTextureGeneration(e,t,i,r){e*=this._cachedUScale,t*=this._cachedVScale,e-=this.uRotationCenter*this._cachedUScale,t-=this.vRotationCenter*this._cachedVScale,i-=this.wRotationCenter,s.Vector3.TransformCoordinatesFromFloatsToRef(e,t,i,this._rowGenerationMatrix,r),r.x+=this.uRotationCenter*this._cachedUScale+this._cachedUOffset,r.y+=this.vRotationCenter*this._cachedVScale+this._cachedVOffset,r.z+=this.wRotationCenter}getTextureMatrix(e=1){if(this.uOffset===this._cachedUOffset&&this.vOffset===this._cachedVOffset&&this.uScale*e===this._cachedUScale&&this.vScale===this._cachedVScale&&this.uAng===this._cachedUAng&&this.vAng===this._cachedVAng&&this.wAng===this._cachedWAng&&this.uRotationCenter===this._cachedURotationCenter&&this.vRotationCenter===this._cachedVRotationCenter&&this.wRotationCenter===this._cachedWRotationCenter&&this.homogeneousRotationInUVTransform===this._cachedHomogeneousRotationInUVTransform)return this._cachedTextureMatrix;this._cachedUOffset=this.uOffset,this._cachedVOffset=this.vOffset,this._cachedUScale=this.uScale*e,this._cachedVScale=this.vScale,this._cachedUAng=this.uAng,this._cachedVAng=this.vAng,this._cachedWAng=this.wAng,this._cachedURotationCenter=this.uRotationCenter,this._cachedVRotationCenter=this.vRotationCenter,this._cachedWRotationCenter=this.wRotationCenter,this._cachedHomogeneousRotationInUVTransform=this.homogeneousRotationInUVTransform,this._cachedTextureMatrix&&this._rowGenerationMatrix||(this._cachedTextureMatrix=s.Matrix.Zero(),this._rowGenerationMatrix=new s.Matrix,this._t0=s.Vector3.Zero(),this._t1=s.Vector3.Zero(),this._t2=s.Vector3.Zero()),s.Matrix.RotationYawPitchRollToRef(this.vAng,this.uAng,this.wAng,this._rowGenerationMatrix),this.homogeneousRotationInUVTransform?(s.Matrix.TranslationToRef(-this._cachedURotationCenter,-this._cachedVRotationCenter,-this._cachedWRotationCenter,s.TmpVectors.Matrix[0]),s.Matrix.TranslationToRef(this._cachedURotationCenter,this._cachedVRotationCenter,this._cachedWRotationCenter,s.TmpVectors.Matrix[1]),s.Matrix.ScalingToRef(this._cachedUScale,this._cachedVScale,0,s.TmpVectors.Matrix[2]),s.Matrix.TranslationToRef(this._cachedUOffset,this._cachedVOffset,0,s.TmpVectors.Matrix[3]),s.TmpVectors.Matrix[0].multiplyToRef(this._rowGenerationMatrix,this._cachedTextureMatrix),this._cachedTextureMatrix.multiplyToRef(s.TmpVectors.Matrix[1],this._cachedTextureMatrix),this._cachedTextureMatrix.multiplyToRef(s.TmpVectors.Matrix[2],this._cachedTextureMatrix),this._cachedTextureMatrix.multiplyToRef(s.TmpVectors.Matrix[3],this._cachedTextureMatrix),this._cachedTextureMatrix.setRowFromFloats(2,this._cachedTextureMatrix.m[12],this._cachedTextureMatrix.m[13],this._cachedTextureMatrix.m[14],1)):(this._prepareRowForTextureGeneration(0,0,0,this._t0),this._prepareRowForTextureGeneration(1,0,0,this._t1),this._prepareRowForTextureGeneration(0,1,0,this._t2),this._t1.subtractInPlace(this._t0),this._t2.subtractInPlace(this._t0),s.Matrix.FromValuesToRef(this._t1.x,this._t1.y,this._t1.z,0,this._t2.x,this._t2.y,this._t2.z,0,this._t0.x,this._t0.y,this._t0.z,0,0,0,0,1,this._cachedTextureMatrix));let t=this.getScene();if(!t)return this._cachedTextureMatrix;let i=this._cachedIdentity3x2;return this._cachedIdentity3x2=this._cachedTextureMatrix.isIdentityAs3x2(),this.optimizeUVAllocation&&i!==this._cachedIdentity3x2&&t.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)),this._cachedTextureMatrix}getReflectionTextureMatrix(){let e=this.getScene();if(!e)return this._cachedReflectionTextureMatrix;if(this.uOffset===this._cachedReflectionUOffset&&this.vOffset===this._cachedReflectionVOffset&&this.uScale===this._cachedReflectionUScale&&this.vScale===this._cachedReflectionVScale&&this.coordinatesMode===this._cachedReflectionCoordinatesMode){if(this.coordinatesMode!==f.PROJECTION_MODE)return this._cachedReflectionTextureMatrix;else if(this._cachedReflectionProjectionMatrixId===e.getProjectionMatrix().updateFlag)return this._cachedReflectionTextureMatrix}this._cachedReflectionTextureMatrix||(this._cachedReflectionTextureMatrix=s.Matrix.Zero()),this._projectionModeMatrix||(this._projectionModeMatrix=s.Matrix.Zero());let t=this._cachedReflectionCoordinatesMode!==this.coordinatesMode;switch(this._cachedReflectionUOffset=this.uOffset,this._cachedReflectionVOffset=this.vOffset,this._cachedReflectionUScale=this.uScale,this._cachedReflectionVScale=this.vScale,this._cachedReflectionCoordinatesMode=this.coordinatesMode,this.coordinatesMode){case f.PLANAR_MODE:s.Matrix.IdentityToRef(this._cachedReflectionTextureMatrix),this._cachedReflectionTextureMatrix[0]=this.uScale,this._cachedReflectionTextureMatrix[5]=this.vScale,this._cachedReflectionTextureMatrix[12]=this.uOffset,this._cachedReflectionTextureMatrix[13]=this.vOffset;break;case f.PROJECTION_MODE:{s.Matrix.FromValuesToRef(.5,0,0,0,0,-.5,0,0,0,0,0,0,.5,.5,1,1,this._projectionModeMatrix);let t=e.getProjectionMatrix();this._cachedReflectionProjectionMatrixId=t.updateFlag,t.multiplyToRef(this._projectionModeMatrix,this._cachedReflectionTextureMatrix);break}default:s.Matrix.IdentityToRef(this._cachedReflectionTextureMatrix)}return t&&e.markAllMaterialsAsDirty(1,e=>e.hasTexture(this)),this._cachedReflectionTextureMatrix}clone(){let e={noMipmap:this._noMipmap,invertY:this._invertY,samplingMode:this.samplingMode,onLoad:void 0,onError:void 0,buffer:this._texture?this._texture._buffer:void 0,deleteBuffer:this._deleteBuffer,format:this.textureFormat,mimeType:this.mimeType,loaderOptions:this._loaderOptions,creationFlags:this._creationFlags,useSRGBBuffer:this._useSRGBBuffer};return p.SerializationHelper.Clone(()=>new f(this._texture?this._texture.url:null,this.getScene(),e),this)}serialize(){let e=this.name;!f.SerializeBuffers&&this.name.startsWith("data:")&&(this.name=""),this.name.startsWith("data:")&&this.url===this.name&&(this.url="");let t=super.serialize(f._SerializeInternalTextureUniqueId);if(!t)return null;if(f.SerializeBuffers||f.ForceSerializeBuffers)if("string"==typeof this._buffer&&this._buffer.startsWith("data:"))t.base64String=this._buffer,t.name=t.name.replace("data:","");else if(this.url&&this.url.startsWith("data:")&&this._buffer instanceof Uint8Array){let e=this.mimeType||"image/png";t.base64String=`data:${e};base64,${(0,_.EncodeArrayBufferToBase64)(this._buffer)}`}else(f.ForceSerializeBuffers||this.url&&this.url.startsWith("blob:")||this._forceSerialize)&&(t.base64String=!this._engine||this._engine._features.supportSyncTextureRead?function(e,t=0,i=0){let r=e.getInternalTexture();if(!r)return null;let s=e._readPixelsSync(t,i);return s?c(s,e.getSize(),r.invertY):null}(this):d(this));return t.invertY=this._invertY,t.samplingMode=this.samplingMode,t._creationFlags=this._creationFlags,t._useSRGBBuffer=this._useSRGBBuffer,f._SerializeInternalTextureUniqueId&&(t.internalTextureUniqueId=this._texture?.uniqueId),t.internalTextureLabel=this._texture?.label,t.noMipmap=this._noMipmap,this.name=e,t}getClassName(){return"Texture"}dispose(){super.dispose(),this.onLoadObservable.clear(),this._delayedOnLoad=null,this._delayedOnError=null,this._buffer=null}static Parse(e,t,i){let r;if(e.customType){let r=l.InstantiationTools.Instantiate(e.customType).Parse(e,t,i);return e.samplingMode&&r.updateSamplingMode&&r._samplingMode&&r._samplingMode!==e.samplingMode&&r.updateSamplingMode(e.samplingMode),r}if(e.isCube&&!e.isRenderTarget)return f._CubeTextureParser(e,t,i);let s=void 0!==e.internalTextureUniqueId;if(!e.name&&!e.isRenderTarget&&!s)return null;if(s){for(let i of t.getEngine().getLoadedTexturesCache())if(i.uniqueId===e.internalTextureUniqueId){r=i;break}}let a=t=>{if(t&&t._texture&&(t._texture._cachedWrapU=null,t._texture._cachedWrapV=null,t._texture._cachedWrapR=null),e.samplingMode){let i=e.samplingMode;t&&t.samplingMode!==i&&t.updateSamplingMode(i)}if(t&&e.animations)for(let i=0;i<e.animations.length;i++){let r=e.animations[i],s=(0,n.GetClass)("BABYLON.Animation");s&&t.animations.push(s.Parse(r))}t&&t._texture&&(s&&!r&&t._texture._setUniqueId(e.internalTextureUniqueId),t._texture.label=e.internalTextureLabel)};return p.SerializationHelper.Parse(()=>{let s=!0;if(e.noMipmap&&(s=!1),e.mirrorPlane){let i=f._CreateMirror(e.name,e.renderTargetSize,t,s);return i._waitingRenderList=e.renderList,i.mirrorPlane=u.Plane.FromArray(e.mirrorPlane),a(i),i}if(e.isRenderTarget&&!e.base64String){let i=null;if(e.isCube){if(t.reflectionProbes)for(let i=0;i<t.reflectionProbes.length;i++){let r=t.reflectionProbes[i];if(r.name===e.name)return r.cubeTexture}}else(i=f._CreateRenderTargetTexture(e.name,e.renderTargetSize,t,s,e._creationFlags??0))._waitingRenderList=e.renderList;return a(i),i}if(e.isVideo){let r=f._CreateVideoTexture(i+(e.url||e.name),i+(e.src||e.url),t,s,e.invertY,e.samplingMode,e.settings||{});return a(r),r}{let n;if("string"==typeof e.base64String&&e.base64String&&!r){let i={buffer:e.base64String,noMipmap:!s,invertY:e.invertY,samplingMode:e.samplingMode,useSRGBBuffer:e._useSRGBBuffer??!1,creationFlags:e._creationFlags??0,onLoad:()=>{a(n)}},r=e.base64String,h=r.startsWith("data:")?r.substring(5):r;(n=f.CreateFromBase64String("",h,t,i)).name=e.name}else{let h;h=e.name&&(e.name.indexOf("://")>0||e.name.startsWith("data:"))?e.name:i+e.name,e.url&&(e.url.startsWith("data:")||f.UseSerializedUrlIfAny)&&(h=e.url),n=new f(h,t,{noMipmap:!s,invertY:e.invertY,samplingMode:e.samplingMode,useSRGBBuffer:e._useSRGBBuffer??!1,creationFlags:e._creationFlags??0,onLoad:()=>{a(n)},internalTexture:r})}return n}},e,t)}static CreateFromBase64String(e,t,i,r,s,a=f.TRILINEAR_SAMPLINGMODE,n=null,h=null,o=5,l,u){return new f("data:"+t,i,r,s,a,n,h,e,!1,o,void 0,void 0,l,u)}static LoadFromDataString(e,t,i,r=!1,s,a=!0,n=f.TRILINEAR_SAMPLINGMODE,h=null,o=null,l=5,u,_){return"data:"!==e.substring(0,5)&&(e="data:"+e),new f(e,i,s,a,n,h,o,t,r,l,void 0,void 0,u,_)}}f.SerializeBuffers=!0,f.ForceSerializeBuffers=!1,f.OnTextureLoadErrorObservable=new r.Observable,f._SerializeInternalTextureUniqueId=!1,f._CubeTextureParser=(e,t,i)=>{throw(0,h._WarnImport)("CubeTexture")},f._CreateMirror=(e,t,i,r)=>{throw(0,h._WarnImport)("MirrorTexture")},f._CreateRenderTargetTexture=(e,t,i,r,s)=>{throw(0,h._WarnImport)("RenderTargetTexture")},f.NEAREST_SAMPLINGMODE=1,f.NEAREST_NEAREST_MIPLINEAR=8,f.BILINEAR_SAMPLINGMODE=2,f.LINEAR_LINEAR_MIPNEAREST=11,f.TRILINEAR_SAMPLINGMODE=3,f.LINEAR_LINEAR_MIPLINEAR=3,f.NEAREST_NEAREST_MIPNEAREST=4,f.NEAREST_LINEAR_MIPNEAREST=5,f.NEAREST_LINEAR_MIPLINEAR=6,f.NEAREST_LINEAR=7,f.NEAREST_NEAREST=1,f.LINEAR_NEAREST_MIPNEAREST=9,f.LINEAR_NEAREST_MIPLINEAR=10,f.LINEAR_LINEAR=2,f.LINEAR_NEAREST=12,f.EXPLICIT_MODE=0,f.SPHERICAL_MODE=1,f.PLANAR_MODE=2,f.CUBIC_MODE=3,f.PROJECTION_MODE=4,f.SKYBOX_MODE=5,f.INVCUBIC_MODE=6,f.EQUIRECTANGULAR_MODE=7,f.FIXED_EQUIRECTANGULAR_MODE=8,f.FIXED_EQUIRECTANGULAR_MIRRORED_MODE=9,f.CLAMP_ADDRESSMODE=0,f.WRAP_ADDRESSMODE=1,f.MIRROR_ADDRESSMODE=2,f.UseSerializedUrlIfAny=!1,(0,t.__decorate)([(0,i.serialize)()],f.prototype,"url",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"uOffset",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"vOffset",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"uScale",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"vScale",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"uAng",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"vAng",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"wAng",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"uRotationCenter",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"vRotationCenter",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"wRotationCenter",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"homogeneousRotationInUVTransform",void 0),(0,t.__decorate)([(0,i.serialize)()],f.prototype,"isBlocking",null);let g=!1;e.s(["RegisterTexture",0,function(){g||(g=!0,(0,n.RegisterClass)("BABYLON.Texture",f),p.SerializationHelper._TextureParser=f.Parse)},"Texture",0,f],58720)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,72904,t=>{"use strict";var i=t.i(5110),e=t.i(13379),n=t.i(46518),o=t.i(77052);class a extends n.FlowGraphAsyncExecutionBlock{constructor(t){super(t),this.animationGroup=this.registerDataInput("animationGroup",i.RichTypeAny),this.stopAtFrame=this.registerDataInput("stopAtFrame",i.RichTypeNumber,-1)}_preparePendingTasks(t){let i=this.animationGroup.getValue(t),e=this.stopAtFrame.getValue(t)??-1,n=t._getGlobalContextVariable("pendingStopAnimations",[]);n.push({uniqueId:i.uniqueId,stopAtFrame:e}),t._setGlobalContextVariable("pendingStopAnimations",n)}_cancelPendingTasks(t){let i=this.animationGroup.getValue(t),e=t._getGlobalContextVariable("pendingStopAnimations",[]);for(let n=0;n<e.length;n++)if(e[n].uniqueId===i.uniqueId){e.splice(n,1),t._setGlobalContextVariable("pendingStopAnimations",e);break}}_execute(t){let i=this.animationGroup.getValue(t),n=this.stopAtFrame.getValue(t)??-1;return i?isNaN(n)?this._reportError(t,"Invalid stop time."):void(n>0?this._startPendingTasks(t):this._stopAnimation(i,t),this.out._activateSignal(t)):(e.Logger.Warn("No animation group provided to stop."),this._reportError(t,"No animation group provided to stop."))}_executeOnTick(t){let i=this.animationGroup.getValue(t),e=t._getGlobalContextVariable("pendingStopAnimations",[]);for(let n=0;n<e.length;n++)if(e[n].uniqueId===i.uniqueId&&i.getCurrentFrame()>=e[n].stopAtFrame){this._stopAnimation(i,t),e.splice(n,1),t._setGlobalContextVariable("pendingStopAnimations",e),this.done._activateSignal(t),t._removePendingBlock(this);break}}getClassName(){return"FlowGraphStopAnimationBlock"}_stopAnimation(t,i){let e=i._getGlobalContextVariable("currentlyRunningAnimationGroups",[]),n=e.indexOf(t.uniqueId);-1!==n&&(t.stop(),e.splice(n,1),i._setGlobalContextVariable("currentlyRunningAnimationGroups",e))}}let r=!1;function s(){r||(r=!0,(0,o.RegisterClass)("FlowGraphStopAnimationBlock",a))}t.s(["FlowGraphStopAnimationBlock",0,a,"RegisterFlowGraphStopAnimationBlock",0,s],72500),s(),t.s([],56102),t.i(56102),t.i(72500),t.s(["FlowGraphStopAnimationBlock",0,a],72904)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12423,t=>{"use strict";class e{static GetShadersRepository(t=0){return 0===t?e.ShadersRepository:e.ShadersRepositoryWGSL}static GetShadersStore(t=0){return 0===t?e.ShadersStore:e.ShadersStoreWGSL}static GetIncludesShadersStore(t=0){return 0===t?e.IncludesShadersStore:e.IncludesShadersStoreWGSL}}e.ShadersRepository="src/Shaders/",e.ShadersStore={},e.IncludesShadersStore={},e.ShadersRepositoryWGSL="src/ShadersWGSL/",e.ShadersStoreWGSL={},e.IncludesShadersStoreWGSL={},t.s(["ShaderStore",0,e])},70247,t=>{"use strict";var e,s,a,i,r=t.i(96265);(e=a||(a={}))[e.LOCAL=0]="LOCAL",e[e.WORLD=1]="WORLD",e[e.BONE=2]="BONE";class n{}n.X=new r.Vector3(1,0,0),n.Y=new r.Vector3(0,1,0),n.Z=new r.Vector3(0,0,1),(s=i||(i={}))[s.X=0]="X",s[s.Y=1]="Y",s[s.Z=2]="Z",t.s(["Axis",0,n,"Coordinate",0,i,"Space",0,a])},45707,t=>{"use strict";class e{constructor(t){this.length=0,this.data=Array(t),this._id=e._GlobalId++}push(t){this.data[this.length++]=t,this.length>this.data.length&&(this.data.length*=2)}forEach(t){for(let e=0;e<this.length;e++)t(this.data[e])}sort(t){this.data.sort(t)}reset(){this.length=0}dispose(){this.reset(),this.data&&(this.data.length=0)}concat(t){if(0!==t.length){this.length+t.length>this.data.length&&(this.data.length=(this.length+t.length)*2);for(let e=0;e<t.length;e++)this.data[this.length++]=(t.data||t)[e]}}indexOf(t){let e=this.data.indexOf(t);return e>=this.length?-1:e}contains(t){return -1!==this.indexOf(t)}}e._GlobalId=0,t.s(["SmartArray",0,e,"SmartArrayNoDuplicate",0,class extends e{constructor(){super(...arguments),this._duplicateId=0}push(t){super.push(t),t.__smartArrayFlags||(t.__smartArrayFlags={}),t.__smartArrayFlags[this._id]=this._duplicateId}pushNoDuplicate(t){return(!t.__smartArrayFlags||t.__smartArrayFlags[this._id]!==this._duplicateId)&&(this.push(t),!0)}reset(){super.reset(),this._duplicateId++}concatWithNoDuplicate(t){if(0!==t.length){this.length+t.length>this.data.length&&(this.data.length=(this.length+t.length)*2);for(let e=0;e<t.length;e++){let s=(t.data||t)[e];this.pushNoDuplicate(s)}}}}])},85531,t=>{"use strict";var e=t.i(65002);class s{static GetPlanes(t){let a=[];for(let t=0;t<6;t++)a.push(new e.Plane(0,0,0,0));return s.GetPlanesToRef(t,a),a}static GetNearPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]+s[2],e.normal.y=s[7]+s[6],e.normal.z=s[11]+s[10],e.d=s[15]+s[14],e.normalize()}static GetFarPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]-s[2],e.normal.y=s[7]-s[6],e.normal.z=s[11]-s[10],e.d=s[15]-s[14],e.normalize()}static GetLeftPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]+s[0],e.normal.y=s[7]+s[4],e.normal.z=s[11]+s[8],e.d=s[15]+s[12],e.normalize()}static GetRightPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]-s[0],e.normal.y=s[7]-s[4],e.normal.z=s[11]-s[8],e.d=s[15]-s[12],e.normalize()}static GetTopPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]-s[1],e.normal.y=s[7]-s[5],e.normal.z=s[11]-s[9],e.d=s[15]-s[13],e.normalize()}static GetBottomPlaneToRef(t,e){let s=t.m;e.normal.x=s[3]+s[1],e.normal.y=s[7]+s[5],e.normal.z=s[11]+s[9],e.d=s[15]+s[13],e.normalize()}static GetPlanesToRef(t,e){s.GetNearPlaneToRef(t,e[0]),s.GetFarPlaneToRef(t,e[1]),s.GetLeftPlaneToRef(t,e[2]),s.GetRightPlaneToRef(t,e[3]),s.GetTopPlaneToRef(t,e[4]),s.GetBottomPlaneToRef(t,e[5])}static IsPointInFrustum(t,e){for(let s=0;s<6;s++)if(0>e[s].dotCoordinate(t))return!1;return!0}}t.s(["Frustum",0,s])},21222,t=>{"use strict";var e=t.i(96265);class s{}s.POINTERDOWN=1,s.POINTERUP=2,s.POINTERMOVE=4,s.POINTERWHEEL=8,s.POINTERPICK=16,s.POINTERTAP=32,s.POINTERDOUBLETAP=64;class a{constructor(t,e){this.type=t,this.event=e}}t.s(["PointerEventTypes",0,s,"PointerInfo",0,class extends a{get pickInfo(){return this._pickInfo||this._generatePickInfo(),this._pickInfo}constructor(t,e,s,a=null){super(t,e),this._pickInfo=s,this._inputManager=a}_generatePickInfo(){this._inputManager&&(this._pickInfo=this._inputManager._pickMove(this.event),this._inputManager._setRayOnPointerInfo(this._pickInfo,this.event),this._inputManager=null)}},"PointerInfoPre",0,class extends a{constructor(t,s,a,i){super(t,s),this.ray=null,this.originalPickingInfo=null,this.skipOnPointerObservable=!1,this.localPosition=new e.Vector2(a,i)}}])},36365,t=>{"use strict";class e{}e.KEYDOWN=1,e.KEYUP=2;class s{constructor(t,e){this.type=t,this.event=e}}t.s(["KeyboardEventTypes",0,e,"KeyboardInfo",0,s,"KeyboardInfoPre",0,class extends s{get skipOnPointerObservable(){return this.skipOnKeyboardObservable}set skipOnPointerObservable(t){this.skipOnKeyboardObservable=t}constructor(t,e){super(t,e),this.type=t,this.event=e,this.skipOnKeyboardObservable=!1}}])},76696,t=>{"use strict";var e,s;(s=e||(e={}))[s.PointerMove=0]="PointerMove",s[s.PointerDown=1]="PointerDown",s[s.PointerUp=2]="PointerUp";class a{}a.DOM_DELTA_PIXEL=0,a.DOM_DELTA_LINE=1,a.DOM_DELTA_PAGE=2,t.s(["EventConstants",0,a])},25348,t=>{"use strict";class e{constructor(t,e,s,a){this.x=t,this.y=e,this.width=s,this.height=a}toGlobal(t,s){return new e(this.x*t,this.y*s,this.width*t,this.height*s)}toGlobalToRef(t,e,s){return s.x=this.x*t,s.y=this.y*e,s.width=this.width*t,s.height=this.height*e,this}clone(){return new e(this.x,this.y,this.width,this.height)}}t.s(["Viewport",0,e])},30118,t=>{"use strict";var e=t.i(25882);class s extends e.FreeCamera{get touchAngularSensibility(){let t=this.inputs.attached.touch;return t?t.touchAngularSensibility:0}set touchAngularSensibility(t){let e=this.inputs.attached.touch;e&&(e.touchAngularSensibility=t)}get touchMoveSensibility(){let t=this.inputs.attached.touch;return t?t.touchMoveSensibility:0}set touchMoveSensibility(t){let e=this.inputs.attached.touch;e&&(e.touchMoveSensibility=t)}constructor(t,e,s){super(t,e,s),this.inputs.addTouch(),this._setupInputs()}getClassName(){return"TouchCamera"}_setupInputs(){let t=this.inputs.attached.touch,e=this.inputs.attached.mouse;e?e.touchEnabled=!t:t&&(t.allowMouse=!e)}}var a=t.i(96265),i=t.i(34548),r=t.i(59576);class n extends s{get gamepadAngularSensibility(){let t=this.inputs.attached.gamepad;return t?t.gamepadAngularSensibility:0}set gamepadAngularSensibility(t){let e=this.inputs.attached.gamepad;e&&(e.gamepadAngularSensibility=t)}get gamepadMoveSensibility(){let t=this.inputs.attached.gamepad;return t?t.gamepadMoveSensibility:0}set gamepadMoveSensibility(t){let e=this.inputs.attached.gamepad;e&&(e.gamepadMoveSensibility=t)}constructor(t,e,s){super(t,e,s),this.inputs.addGamepad()}getClassName(){return"UniversalCamera"}}let o=!1;function h(){o||(o=!0,i.Node.AddNodeConstructor("FreeCamera",(t,e)=>()=>new n(t,a.Vector3.Zero(),e)),r.Camera._CreateDefaultParsedCamera=(t,e)=>new n(t,a.Vector3.Zero(),e))}t.s(["RegisterUniversalCamera",0,h,"UniversalCamera",0,n],36186),h(),t.s([],61208),t.i(61208),t.i(36186),t.s(["RegisterUniversalCamera",0,h,"UniversalCamera",0,n],30118)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,59011,t=>{"use strict";var e=t.i(55491),i=t.i(5110),l=t.i(77052);class o extends e.FlowGraphExecutionBlock{constructor(t){super(t),this.onOn=this._registerSignalOutput("onOn"),this.onOff=this._registerSignalOutput("onOff"),this.value=this.registerDataOutput("value",i.RichTypeBoolean)}_execute(t,e){let i=t._getExecutionVariable(this,"value","boolean"==typeof this.config?.startValue&&!this.config.startValue);i=!i,t._setExecutionVariable(this,"value",i),this.value.setValue(i,t),i?this.onOn._activateSignal(t):this.onOff._activateSignal(t)}getClassName(){return"FlowGraphFlipFlopBlock"}}let a=!1;function s(){a||(a=!0,(0,l.RegisterClass)("FlowGraphFlipFlopBlock",o))}t.s(["FlowGraphFlipFlopBlock",0,o,"RegisterFlowGraphFlipFlopBlock",0,s],54247),s(),t.s([],57171),t.i(57171),t.i(54247),t.s(["FlowGraphFlipFlopBlock",0,o],59011)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,13379,e=>{"use strict";class t{static _CheckLimit(e,r){let o=t._LogLimitOutputs[e];return o?o.current++:(o={limit:r,current:1},t._LogLimitOutputs[e]=o),o.current<=o.limit}static _GenerateLimitMessage(e,r=1){let o=t._LogLimitOutputs[e];if(!o||!t.MessageLimitReached)return;let a=this._Levels[r];o.current===o.limit&&t[a.name](t.MessageLimitReached.replace(/%LIMIT%/g,""+o.limit).replace(/%TYPE%/g,a.name??""))}static _AddLogEntry(e){t._LogCache=e+t._LogCache,t.OnNewCacheEntry&&t.OnNewCacheEntry(e)}static _FormatMessage(e){let t=e=>e<10?"0"+e:""+e,r=new Date;return"["+t(r.getHours())+":"+t(r.getMinutes())+":"+t(r.getSeconds())+"]: "+e}static _LogDisabled(e,t){}static _LogEnabled(e=1,r,o){let a=Array.isArray(r)?r[0]:r;if(void 0!==o&&!t._CheckLimit(a,o))return;let i=t._FormatMessage(a),s=this._Levels[e],n=Array.isArray(r)?r.slice(1):[];s.logFunc&&s.logFunc("BJS - "+i,...n);let l=`<div style='color:${s.color}'>${i}</div><br>`;t._AddLogEntry(l),t._GenerateLimitMessage(a,e)}static get LogCache(){return t._LogCache}static ClearLogCache(){t._LogCache="",t._LogLimitOutputs={},t.errorsCount=0}static set LogLevels(e){for(let r of(t.Log=t._LogDisabled,t.Warn=t._LogDisabled,t.Error=t._LogDisabled,[t.MessageLogLevel,t.WarningLogLevel,t.ErrorLogLevel]))(e&r)===r&&(t[this._Levels[r].name]=t._LogEnabled.bind(t,r))}}t.NoneLogLevel=0,t.MessageLogLevel=1,t.WarningLogLevel=2,t.ErrorLogLevel=4,t.AllLogLevel=7,t.MessageLimitReached="Too many %TYPE%s (%LIMIT%), no more %TYPE%s will be reported for this message.",t._LogCache="",t._LogLimitOutputs={},t._Levels=[{},{color:"white",logFunc:console.log,name:"Log"},{color:"orange",logFunc:console.warn,name:"Warn"},{},{color:"red",logFunc:console.error,name:"Error"}],t.errorsCount=0,t.Log=t._LogEnabled.bind(t,t.MessageLogLevel),t.Warn=t._LogEnabled.bind(t,t.WarningLogLevel),t.Error=t._LogEnabled.bind(t,t.ErrorLogLevel),e.s(["Logger",0,t])},84768,e=>{"use strict";e.s(["RandomGUID",0,function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}])},64545,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}])},65295,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 s=new t;s.responseType="arraybuffer",s.addEventListener("readystatechange",()=>{if(4===s.readyState)if(s.status>=200&&s.status<300){let e="u">typeof Headers?new Headers:void 0,t=s.getResponseHeader("Content-Type");t&&e&&e.set("Content-Type",t),"u">typeof Response?a(new Response(s.response,{status:s.status,statusText:s.statusText,headers:e})):a({ok:!0,status:s.status,statusText:s.statusText,headers:{get:e=>s.getResponseHeader(e)},arrayBuffer:async()=>await Promise.resolve(s.response)})}else i(Error(`HTTP ${s.status} loading '${s.requestURL}': ${s.statusText}`))}),s.open(o,e,r.headers),s.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])},96704,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 s=new Uint32Array(2048),n=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,s[e]=t|r}for(let e=1024;e<2048;++e)s[e]=0x38000000+(e-1024<<13);for(let e=1;e<31;++e)n[e]=e<<23;n[31]=0x47800000,n[32]=0x80000000;for(let e=33;e<63;++e)n[e]=0x80000000+(e-32<<23);n[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:s,exponentTable:n,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])}])},29822,6805,92605,e=>{"use strict";class t{}t.FilesToLoad={},e.s(["FilesInputStore",0,t],29822),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}}],6805);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],92605)},49311,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,s,n,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,s=(15&r)<<2|o>>6,n=63&o,isNaN(r)?s=n=64:isNaN(o)&&(n=64),c+=l.charAt(a)+l.charAt(i)+l.charAt(s)+l.charAt(n);return c}(t)}])},23240,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,s=!0,n)=>{if(s&&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. "+(n||"")),!0))},a);return()=>clearInterval(l)}])},38118,e=>{"use strict";var t=e.i(13379),r=e.i(96704);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,s,n,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<n;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 g=ArrayBuffer.isView(e)?new DataView(e.buffer,e.byteOffset,e.byteLength):new DataView(e),d=o(s);for(let e=0;e<n;e+=i){for(let e=0,o=t;e<i;e++,o+=d)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}`)}}(g,s,o,l);c(f,e);for(let e=0,o=t;e<i;e++,o+=d)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}`)}}(g,s,o,l,f[e]);t+=a}}}e.s(["CopyFloatData",0,function(e,r,a,s,n,l,c,u){let f=r*o(a),g=c*r;if(u.length!==g)throw Error("Output length is not valid");if(5126!==a||n!==f)return void i(e,s,n,r,a,g,l,(e,t)=>{for(let o=0;o<r;o++)u[t+o]=e[o]});if(e instanceof Array){let t=s/4;u.set(e,t)}else if(ArrayBuffer.isView(e)){let r=e.byteOffset+s;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+g*Float32Array.BYTES_PER_ELEMENT)));return}let o=new Float32Array(e.buffer,r,g);u.set(o)}else{let t=new Float32Array(e,s,g);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,s,n,l,c,u){let f=r*o(a),g=c*r;if(5126!==a||n!==f){let t=new Float32Array(g);return i(e,s,n,r,a,g,l,(e,o)=>{for(let a=0;a<r;a++)t[o+a]=e[a]}),t}if(!(e instanceof Array||e instanceof Float32Array)||0!==s||e.length!==g)if(e instanceof Array){let t=s/4;return e.slice(t,t+g)}else{if(!ArrayBuffer.isView(e))return new Float32Array(e,s,g);let r=e.byteOffset+s;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+g*Float32Array.BYTES_PER_ELEMENT)):new Float32Array(e.buffer,r,g)}return u?e.slice():e},"GetTypeByteLength",0,o,"GetTypedArrayConstructor",0,a,"GetTypedArrayData",0,function(e,r,s,n,l,c,u){let f,g=o(s),d=a(s),p=c*r;if(Array.isArray(e)){if((3&n)!=0||(3&l)!=0)throw Error("byteOffset and byteStride must be a multiple of 4 for number[] data.");let t=n/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 d(p);return i(e,n,l,r,s,p,!1,(e,o)=>{for(let a=0;a<r;a++)t[o+a]=e[a]}),t}return new d(e.slice(t,t+p))}let h=n;if(ArrayBuffer.isView(e)?(f=e.buffer,h+=e.byteOffset):f=e,h+(c-1)*l+r*g>f.byteLength)throw Error("Last accessed byte is out of bounds.");let v=r*g;if(l<v)throw Error("Byte stride cannot be smaller than the component's byte size.");if(l!==v){let e=new d(p),t=new Uint8Array(f,h),o=new Uint8Array(e.buffer),a=r*g;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!==g&&(h&g-1)!=0&&(t.Logger.Warn("Array must be aligned to border of element size. Data will be copied."),u=!0),u)?new d(f.slice(h,h+p*g)):new d(f,h,p)}])},46712,e=>{"use strict";let t;var r=e.i(65295),o=e.i(64545),a=e.i(99267),i=e.i(29822),s=e.i(6805),n=e.i(92605),l=e.i(49311),c=e.i(81623),u=e.i(13379),f=e.i(23240),g=e.i(38118);let d=new RegExp(/^data:([^,]+\/[^,]+)?;base64,/i);class p extends n.RuntimeError{constructor(e,t){super(e,n.ErrorCodes.LoadFileError),this.name="LoadFileError",n.BaseError._setPrototypeOf(this,p.prototype),t instanceof r.WebRequest?this.request=t:this.file=t}}class h extends n.RuntimeError{constructor(e,t){super(e,n.ErrorCodes.RequestFileError),this.request=t,this.name="RequestFileError",n.BaseError._setPrototypeOf(this,h.prototype)}}class v extends n.RuntimeError{constructor(e,t){super(e,n.ErrorCodes.ReadFileError),this.file=t,this.name="ReadFileError",n.BaseError._setPrototypeOf(this,v.prototype)}}let m={DefaultRetryStrategy:s.RetryStrategy.ExponentialBackoff(),BaseUrl:"",CorsBehavior:"anonymous",PreprocessUrl:e=>e,ScriptBaseUrl:"",ScriptPreprocessUrl:e=>e,CleanUrl:e=>e=e.replace(/#/gm,"%23")},y=(e,t)=>{if((!e||0!==e.indexOf("data:"))&&m.CorsBehavior)if("string"==typeof m.CorsBehavior||m.CorsBehavior instanceof String)t.crossOrigin=m.CorsBehavior;else{let r=m.CorsBehavior(e);r&&(t.crossOrigin=r)}},b=(e,t,o,a,s="",n,u=c.EngineStore.LastCreatedEngine)=>{let f;if("u"<typeof HTMLImageElement&&!u?._features.forceBitmapOverHTMLImageElement)return o("LoadImage is only supported in web or BabylonNative environments."),null;let d=!1;if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))if("u">typeof Blob&&"u">typeof URL){let t;t=e instanceof ArrayBuffer?e:(0,g.GetBlobBufferSource)(e),f=URL.createObjectURL(new Blob([t],{type:s})),d=!0}else f=`data:${s};base64,`+(0,l.EncodeArrayBufferToBase64)(e);else e instanceof Blob?(f=URL.createObjectURL(e),d=!0):(f=m.CleanUrl(e),f=m.PreprocessUrl(f));let p=t=>{if(o){let r=f||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 A(f,r=>{u.createImageBitmap(new Blob([r],{type:s}),{premultiplyAlpha:"none",colorSpaceConversion:"none",...n}).then(e=>{t(e),d&&URL.revokeObjectURL(f)}).catch(t=>{o&&o("Error while trying to load image: "+e,t)})},void 0,a||void 0,!0,(e,t)=>{p(t)}),null;let h=new Image;!1;y(f,h);let v=[],b=()=>{for(let e of v)e.target.removeEventListener(e.name,e.handler);v.length=0};for(let e of(v.push({target:h,name:"load",handler:()=>{b(),t(h),d&&h.src&&URL.revokeObjectURL(h.src)}}),v.push({target:h,name:"error",handler:e=>{b(),p(e),d&&h.src&&URL.revokeObjectURL(h.src)}}),v.push({target:document,name:"securitypolicyviolation",handler:e=>{if(e.blockedURI!==h.src||"report"===e.disposition)return;b();let t=Error(`CSP violation of policy ${e.effectiveDirective} ${e.blockedURI}. Current policy is ${e.originalPolicy}`);c.EngineStore.UseFallbackTexture=!1,p(t),d&&h.src&&URL.revokeObjectURL(h.src),h.src=""}}),v))e.target.addEventListener(e.name,e.handler);let K="blob:"===f.substring(0,5),U="data:"===f.substring(0,5),P=()=>{K||U||!r.WebRequest.IsCustomRequestAvailable?h.src=f:A(f,(e,t,r)=>{let o=new Blob([e],{type:!s&&r?r:s}),a=URL.createObjectURL(o);d=!0,h.src=a},void 0,a||void 0,!0,(e,t)=>{p(t)})};if(!K&&!U&&a&&a.enableTexturesOffline)a.open(()=>{a&&a.loadImage(f,h)},P);else{if(-1!==f.indexOf("file:")){let e=decodeURIComponent(f.substring(5).toLowerCase());if(i.FilesInputStore.FilesToLoad[e]&&"u">typeof URL){try{let t;try{t=URL.createObjectURL(i.FilesInputStore.FilesToLoad[e])}catch(r){t=URL.createObjectURL(i.FilesInputStore.FilesToLoad[e])}h.src=t,d=!0}catch(e){h.src=""}return h}}P()}return h},K=(e,t,r,o,i)=>{let s=new FileReader,n={onCompleteObservable:new a.Observable,abort:()=>s.abort()};return s.onloadend=()=>n.onCompleteObservable.notifyObservers(n),i&&(s.onerror=()=>{i(new v(`Unable to read ${e.name}`,e))}),s.onload=e=>{t(e.target.result)},r&&(s.onprogress=r),o?s.readAsArrayBuffer(e):s.readAsText(e),n},A=(e,t,r,o,s,n,l)=>{if(e.name)return K(e,t,r,s,n?e=>{n(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 a=i.FilesInputStore.FilesToLoad[o];if(a)return K(a,t,r,s,n?e=>n(void 0,new p(e.message,e.file)):void 0)}let{match:c,type:g}=C(e);if(c){let r={onCompleteObservable:new a.Observable,abort:()=>()=>{}};try{let r=s?T(e):F(e);t(r,void 0,g)}catch(e){n?n(void 0,e):u.Logger.Error(e.message||"Failed to parse the Data URL")}return f.TimingTools.SetImmediate(()=>{r.onCompleteObservable.notifyObservers(r)}),r}return U(e,(e,r)=>{t(e,r?.responseURL,r?.getResponseHeader("content-type"))},r,o,s,n?e=>{n(e.request,new p(e.message,e.request))}:void 0,l)},U=(e,t,i,s,n,l,f)=>{null!==s&&(s??(s=c.EngineStore.LastCreatedScene?.offlineProvider)),e=m.CleanUrl(e),e=m.PreprocessUrl(e);let g=m.BaseUrl+e,d=!1,p={onCompleteObservable:new a.Observable,abort:()=>d=!0},v=()=>{let e,a=new r.WebRequest,s=null,c=()=>{a&&(i&&a.removeEventListener("progress",i),e&&a.removeEventListener("readystatechange",e),a.removeEventListener("loadend",v))},v=()=>{c(),p.onCompleteObservable.notifyObservers(p),p.onCompleteObservable.clear(),i=void 0,e=null,v=null,l=void 0,f=void 0,t=void 0};p.abort=()=>{d=!0,v&&v(),a&&a.readyState!==(XMLHttpRequest.DONE||4)&&a.abort(),null!==s&&(clearTimeout(s),s=null),a=null};let y=e=>{let t=e.message||"Unknown error";l&&a?l(new h(t,a)):u.Logger.Error(t)},b=u=>{if(a){if(a.open("GET",g),f)try{f(a)}catch(e){y(e);return}n&&(a.responseType="arraybuffer"),i&&a.addEventListener("progress",i),v&&a.addEventListener("loadend",v),e=()=>{if(!d&&a&&a.readyState===(XMLHttpRequest.DONE||4)){if(e&&a.removeEventListener("readystatechange",e),a.status>=200&&a.status<300||0===a.status&&(!(0,o.IsWindowObjectExist)()||P())){let e=n?a.response:a.responseText;if(null!==e){try{t&&t(e,a)}catch(e){y(e)}return}}let i=m.DefaultRetryStrategy;if(i){let e=i(g,a,u);if(-1!==e){c(),a=new r.WebRequest,s=setTimeout(()=>b(u+1),e);return}}let f=new h("Error status: "+a.status+" "+a.statusText+" - Unable to load "+g,a);l&&l(f)}},a.addEventListener("readystatechange",e),a.send()}};b(0)};if(s&&s.enableSceneOffline&&!e.startsWith("blob:")){let r=e=>{e&&e.status>400?l&&l(e):v()};s.open(()=>{s&&s.loadFile(m.BaseUrl+e,e=>{!d&&t&&t(e),p.onCompleteObservable.notifyObservers(p)},i?e=>{!d&&i&&i(e)}:void 0,r,n)},r)}else v();return p},P=()=>"u">typeof location&&"file:"===location.protocol,L=e=>d.test(e),C=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 T(e){return(0,l.DecodeBase64ToBinary)(e.split(",")[1])}let F=e=>(0,l.DecodeBase64ToString)(e.split(",")[1]),B=!1;e.s(["DecodeBase64UrlToBinary",0,T,"FileToolsOptions",0,m,"GetMimeType",0,e=>{let{match:t,type:r}=C(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,L,"LoadFile",0,A,"LoadFileError",0,p,"LoadImage",0,b,"ReadFile",0,K,"RegisterFileTools",0,function(){!B&&(B=!0,Object.defineProperty(t={DecodeBase64UrlToBinary:T,DecodeBase64UrlToString:F,DefaultRetryStrategy:m.DefaultRetryStrategy,BaseUrl:m.BaseUrl,CorsBehavior:m.CorsBehavior,PreprocessUrl:m.PreprocessUrl,IsBase64DataUrl:L,IsFileURL:P,LoadFile:A,LoadImage:b,ReadFile:K,RequestFile:U,SetCorsBehavior:y},"DefaultRetryStrategy",{get:function(){return m.DefaultRetryStrategy},set:function(e){m.DefaultRetryStrategy=e}}),Object.defineProperty(t,"BaseUrl",{get:function(){return m.BaseUrl},set:function(e){m.BaseUrl=e}}),Object.defineProperty(t,"PreprocessUrl",{get:function(){return m.PreprocessUrl},set:function(e){m.PreprocessUrl=e}}),Object.defineProperty(t,"CorsBehavior",{get:function(){return m.CorsBehavior},set:function(e){m.CorsBehavior=e}}))},"RequestFile",0,U,"SetCorsBehavior",0,y])},36395,e=>{"use strict";var t=e.i(64545);e.s(["PrecisionDate",0,class{static get Now(){return(0,t.IsWindowObjectExist)()&&window.performance&&window.performance.now?window.performance.now():Date.now()}}])},68179,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 s;switch(i){case 1:s=o(e);break;case 2:s=t(e);break;default:s=r(e)}return Math.min(s,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])},98105,e=>{"use strict";var t=e.i(13379),r=e.i(77052);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])},65740,71265,e=>{"use strict";var t,r=e.i(99267),o=e.i(64545),a=e.i(13379);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 s{static DeepCopy(e,t,r,o,s=!1){for(let n 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("_"===n[0]&&(!o||-1===o.indexOf(n))||n.endsWith("Observable")||r&&-1!==r.indexOf(n))continue;let l=e[n],c=typeof l;if("function"!==c)try{if("object"===c)if(l instanceof Uint8Array)t[n]=Uint8Array.from(l);else if(l instanceof Array){if(t[n]=[],l.length>0)if("object"==typeof l[0])for(let e=0;e<l.length;e++){let r=i(l[e],t,s);-1===t[n].indexOf(r)&&t[n].push(r)}else t[n]=l.slice(0)}else t[n]=i(l,t,s);else t[n]=l}catch(e){a.Logger.Warn(e.message)}}}}e.s(["DeepCopier",0,s],71265);var n=e.i(36395),l=e.i(75405),c=e.i(65295),u=e.i(81623),f=e.i(46712),g=e.i(23240),d=e.i(98105),p=e.i(84768),h=e.i(68179);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 d.InstantiationTools.RegisteredExternalClasses}static set RegisteredExternalClasses(e){d.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 s=((Math.abs(e)*r%r|0)+(Math.abs(t)*o%o|0)*r)*4;i.r=a[s]/255,i.g=a[s+1]/255,i.b=a[s+2]/255,i.a=a[s+3]/255}static Mix(e,t,r){return 0}static Instantiate(e){return d.InstantiationTools.Instantiate(e)}static SetImmediate(e){g.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 s=document.getElementsByTagName("head")[0],n=document.createElement("script");i?(n.setAttribute("type","module"),n.innerText=e):(n.setAttribute("type","text/javascript"),n.setAttribute("src",e)),a&&(n.id=a),n.onload=()=>{t&&t()},n.onerror=t=>{r&&r(`Unable to load script '${e}'`,t)},s.appendChild(n)}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){s.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,s){throw(0,l._WarnImport)("DumpTools")}static DumpData(e,t,r,o,a="image/png",i,s=!1,n=!1,c){throw(0,l._WarnImport)("DumpTools")}static async DumpDataAsync(e,t,r,o="image/png",a,i=!1,s=!1,n){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,s){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,s=!1,n,c=!1,u=!1,f=!0,g,d){throw(0,l._WarnImport)("ScreenshotTools")}static async CreateScreenshotUsingRenderTargetAsync(e,t,r,o="image/png",a=1,i=!1,s,n=!1,c=!1,u=!0,f,g){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 n.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.13.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 s=o.index*t+i;if(s>=e)break;if(r(s),a&&a()){o.breakLoop();break}}o.executeNext()},i)},o)}}let y=!1;e.s(["AsyncLoop",0,m,"RegisterTools",0,function(){y||(y=!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],65740)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,34548,e=>{"use strict";var t=e.i(10272),i=e.i(96265),s=e.i(37143),r=e.i(99267),a=e.i(81623),o=e.i(75405),n=e.i(80871);class h{constructor(){this._doNotSerialize=!1,this._isDisposed=!1,this._sceneRootNodesIndex=-1,this._isEnabled=!0,this._isParentEnabled=!0,this._isReady=!0,this._onEnabledStateChangedObservable=new r.Observable,this._onClonedObservable=new r.Observable,this._inheritVisibility=!1,this._isVisible=!0}}class _{static AddNodeConstructor(e,t){this._NodeConstructors[e]=t}static Construct(e,t,i,s){let r=this._NodeConstructors[e];return r?r(t,i,s):null}set accessibilityTag(e){this._accessibilityTag=e,this.onAccessibilityTagChangedObservable.notifyObservers(e)}get accessibilityTag(){return this._accessibilityTag}get doNotSerialize(){return!!this._nodeDataStorage._doNotSerialize||!!this._parentNode&&this._parentNode.doNotSerialize}set doNotSerialize(e){this._nodeDataStorage._doNotSerialize=e}isDisposed(){return this._nodeDataStorage._isDisposed}set parent(e){if(this._parentNode===e)return;let t=this._parentNode;if(this._parentNode&&void 0!==this._parentNode._children&&null!==this._parentNode._children){let t=this._parentNode._children.indexOf(this);-1!==t&&this._parentNode._children.splice(t,1),e||this._nodeDataStorage._isDisposed||this._addToSceneRootNodes()}this._parentNode=e,this._isDirty=!0,this._parentNode&&((void 0===this._parentNode._children||null===this._parentNode._children)&&(this._parentNode._children=[]),this._parentNode._children.push(this),t||this._removeFromSceneRootNodes()),this._syncParentEnabledState()}get parent(){return this._parentNode}get inheritVisibility(){return this._nodeDataStorage._inheritVisibility}set inheritVisibility(e){this._nodeDataStorage._inheritVisibility=e}get isVisible(){return(!this.inheritVisibility||!this._parentNode||!!this._parentNode.isVisible)&&this._nodeDataStorage._isVisible}set isVisible(e){this._nodeDataStorage._isVisible=e}_serializeAsParent(e){e.parentId=this.uniqueId}_addToSceneRootNodes(){-1===this._nodeDataStorage._sceneRootNodesIndex&&(this._nodeDataStorage._sceneRootNodesIndex=this._scene.rootNodes.length,this._scene.rootNodes.push(this))}_removeFromSceneRootNodes(){if(-1!==this._nodeDataStorage._sceneRootNodesIndex){let e=this._scene.rootNodes,t=e.length-1;e[this._nodeDataStorage._sceneRootNodesIndex]=e[t],e[this._nodeDataStorage._sceneRootNodesIndex]._nodeDataStorage._sceneRootNodesIndex=this._nodeDataStorage._sceneRootNodesIndex,this._scene.rootNodes.pop(),this._nodeDataStorage._sceneRootNodesIndex=-1}}get animationPropertiesOverride(){return this._animationPropertiesOverride?this._animationPropertiesOverride:this._scene.animationPropertiesOverride}set animationPropertiesOverride(e){this._animationPropertiesOverride=e}getClassName(){return"Node"}set onDispose(e){this._onDisposeObserver&&this.onDisposeObservable.remove(this._onDisposeObserver),this._onDisposeObserver=this.onDisposeObservable.add(e)}get onEnabledStateChangedObservable(){return this._nodeDataStorage._onEnabledStateChangedObservable}get onClonedObservable(){return this._nodeDataStorage._onClonedObservable}constructor(e,t=null,s=!0){this._isDirty=!1,this._nodeDataStorage=new h,this.state="",this.metadata=null,this.reservedDataStore=null,this._accessibilityTag=null,this.onAccessibilityTagChangedObservable=new r.Observable,this._parentContainer=null,this.animations=[],this._ranges={},this.onReady=null,this._currentRenderId=-1,this._parentUpdateId=-1,this._childUpdateId=-1,this._waitingParentId=null,this._waitingParentInstanceIndex=null,this._waitingParsedUniqueId=null,this._cache={},this._parentNode=null,this._children=null,this._worldMatrix=i.Matrix.Identity(),this._worldMatrixDeterminant=0,this._worldMatrixDeterminantIsDirty=!0,this._animationPropertiesOverride=null,this._isNode=!0,this.onDisposeObservable=new r.Observable,this._onDisposeObserver=null,this._behaviors=[],this.name=e,this.id=e,this._scene=t||a.EngineStore.LastCreatedScene,this.uniqueId=this._scene.getUniqueId(),this._initCache(),s&&this._addToSceneRootNodes()}getScene(){return this._scene}getEngine(){return this._scene.getEngine()}addBehavior(e,t=!1){return -1!==this._behaviors.indexOf(e)||(e.init(),this._scene.isLoading&&!t?this._scene.onDataLoadedObservable.addOnce(()=>{this._behaviors.includes(e)&&e.attach(this)}):e.attach(this),this._behaviors.push(e)),this}removeBehavior(e){let t=this._behaviors.indexOf(e);return -1===t||(this._behaviors.splice(t,1),e.detach()),this}get behaviors(){return this._behaviors}getBehaviorByName(e){for(let t of this._behaviors)if(t.name===e)return t;return null}getWorldMatrix(){return this._currentRenderId!==this._scene.getRenderId()&&this.computeWorldMatrix(),this._worldMatrix}_getWorldMatrixDeterminant(){return this._worldMatrixDeterminantIsDirty&&(this._worldMatrixDeterminantIsDirty=!1,this._worldMatrixDeterminant=this._worldMatrix.determinant()),this._worldMatrixDeterminant}get worldMatrixFromCache(){return this._worldMatrix}_initCache(){this._cache={}}updateCache(e){!e&&this.isSynchronized()||this._updateCache()}_getActionManagerForTrigger(e,t=!0){return this.parent?this.parent._getActionManagerForTrigger(e,!1):null}_updateCache(e){}_isSynchronized(){return!0}_markSyncedWithParent(){this._parentNode&&(this._parentUpdateId=this._parentNode._childUpdateId)}isSynchronizedWithParent(){return!this._parentNode||!this._parentNode._isDirty&&this._parentUpdateId===this._parentNode._childUpdateId&&this._parentNode.isSynchronized()}isSynchronized(){return(!this._parentNode||!!this.isSynchronizedWithParent())&&this._isSynchronized()}isReady(e=!1){return this._nodeDataStorage._isReady}markAsDirty(e){return this._currentRenderId=Number.MAX_VALUE,this._isDirty=!0,this}isEnabled(e=!0){return!1===e?this._nodeDataStorage._isEnabled:!!this._nodeDataStorage._isEnabled&&this._nodeDataStorage._isParentEnabled}_syncParentEnabledState(){if(this._nodeDataStorage._isParentEnabled=!this._parentNode||this._parentNode.isEnabled(),this._children)for(let e of this._children)e._syncParentEnabledState()}setEnabled(e){this._nodeDataStorage._isEnabled!==e&&(this._nodeDataStorage._isEnabled=e,this._syncParentEnabledState(),this._nodeDataStorage._onEnabledStateChangedObservable.notifyObservers(e))}isDescendantOf(e){return!!this.parent&&(this.parent===e||this.parent.isDescendantOf(e))}_getDescendants(e,t=!1,i){if(this._children)for(let s=0;s<this._children.length;s++){let r=this._children[s];(!i||i(r))&&e.push(r),t||r._getDescendants(e,!1,i)}}getDescendants(e,t){let i=[];return this._getDescendants(i,e,t),i}getChildMeshes(e,t){let i=[];return this._getDescendants(i,e,e=>(!t||t(e))&&void 0!==e.cullingStrategy),i}getChildren(e,t=!0){return this.getDescendants(t,e)}_setReady(e){if(e!==this._nodeDataStorage._isReady){if(!e){this._nodeDataStorage._isReady=!1;return}this.onReady&&this.onReady(this),this._nodeDataStorage._isReady=!0}}getAnimationByName(e){for(let t=0;t<this.animations.length;t++){let i=this.animations[t];if(i.name===e)return i}return null}createAnimationRange(e,t,i){if(!this._ranges[e]){this._ranges[e]=_._AnimationRangeFactory(e,t,i);for(let s=0,r=this.animations.length;s<r;s++)this.animations[s]&&this.animations[s].createRange(e,t,i)}}deleteAnimationRange(e,t=!0){for(let i=0,s=this.animations.length;i<s;i++)this.animations[i]&&this.animations[i].deleteRange(e,t);this._ranges[e]=null}getAnimationRange(e){return this._ranges[e]||null}clone(e,t,i){let s=n.SerializationHelper.Clone(()=>new _(e,this.getScene()),this);if(t&&(s.parent=t),!i){let t=this.getDescendants(!0);for(let i=0;i<t.length;i++){let r=t[i];r.clone(e+"."+r.name,s)}}return s}getAnimationRanges(){let e,t=[];for(e in this._ranges)t.push(this._ranges[e]);return t}beginAnimation(e,t,i,s){let r=this.getAnimationRange(e);return r?this._scene.beginAnimation(this,r.from,r.to,t,i,s):null}serializeAnimationRanges(){let e=[];for(let t in this._ranges){let i=this._ranges[t];if(!i)continue;let s={};s.name=t,s.from=i.from,s.to=i.to,e.push(s)}return e}computeWorldMatrix(e){return this._worldMatrix||(this._worldMatrix=i.Matrix.Identity()),this._worldMatrix}dispose(e,t=!1){if(this._nodeDataStorage._isDisposed=!0,!e)for(let i of this.getDescendants(!0))i.dispose(e,t);for(let e of(this.parent?this.parent=null:this._removeFromSceneRootNodes(),this.onDisposeObservable.notifyObservers(this),this.onDisposeObservable.clear(),this.onEnabledStateChangedObservable.clear(),this.onClonedObservable.clear(),this._behaviors))e.detach();this._behaviors.length=0,this.metadata=null}static ParseAnimationRanges(e,t,i){if(t.ranges)for(let i=0;i<t.ranges.length;i++){let s=t.ranges[i];e.createAnimationRange(s.name,s.from,s.to)}}getHierarchyBoundingVectors(e=!0,t=null){let s,r;if(this.getScene().incrementRenderId(),this.computeWorldMatrix(!0),this.getBoundingInfo&&this.subMeshes){let e=this.getBoundingInfo();s=e.boundingBox.minimumWorld.clone(),r=e.boundingBox.maximumWorld.clone()}else s=new i.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),r=new i.Vector3(-Number.MAX_VALUE,-Number.MAX_VALUE,-Number.MAX_VALUE);if(e)for(let e of this.getDescendants(!1)){if(e.computeWorldMatrix(!0),t&&!t(e)||!e.getBoundingInfo||0===e.getTotalVertices())continue;let a=e.getBoundingInfo().boundingBox,o=a.minimumWorld,n=a.maximumWorld;i.Vector3.CheckExtends(o,s,r),i.Vector3.CheckExtends(n,s,r)}return{min:s,max:r}}}_._AnimationRangeFactory=(e,t,i)=>{throw(0,o._WarnImport)("AnimationRange")},_._NodeConstructors={},(0,t.__decorate)([(0,s.serialize)()],_.prototype,"name",void 0),(0,t.__decorate)([(0,s.serialize)()],_.prototype,"id",void 0),(0,t.__decorate)([(0,s.serialize)()],_.prototype,"uniqueId",void 0),(0,t.__decorate)([(0,s.serialize)()],_.prototype,"state",void 0),(0,t.__decorate)([(0,s.serialize)()],_.prototype,"metadata",void 0),e.s(["Node",0,_])},69938,e=>{"use strict";var t=e.i(76535);let i=!1;e.s(["RegisterAbstractEngineRenderPass",0,function(){i||(i=!0,t.AbstractEngine.prototype.getRenderPassNames=function(){return this._renderPassNames},t.AbstractEngine.prototype.getCurrentRenderPassName=function(){return this._renderPassNames[this.currentRenderPassId]},t.AbstractEngine.prototype.createRenderPassId=function(e){let i=++t.AbstractEngine._RenderPassIdCounter;return this._renderPassNames[i]=e??"NONAME",i},t.AbstractEngine.prototype.releaseRenderPassId=function(e){this._renderPassNames[e]=void 0;for(let t=0;t<this.scenes.length;++t){let i=this.scenes[t];for(let t=0;t<i.meshes.length;++t){let s=i.meshes[t];if(s._releaseRenderPassId(e),s.subMeshes)for(let t=0;t<s.subMeshes.length;++t)s.subMeshes[t]._removeDrawWrapper(e)}}})}])},59576,e=>{"use strict";var t=e.i(10272),i=e.i(37143),s=e.i(45707),r=e.i(99267),a=e.i(96265),o=e.i(34548),n=e.i(13379),h=e.i(77052),_=e.i(75405),d=e.i(25348),l=e.i(85531),c=e.i(69938),g=e.i(80871);class u extends o.Node{get position(){return this._position}set position(e){this._position=e}set upVector(e){this._upVector=e}get upVector(){return this._upVector}get screenArea(){let e,t;if(this.mode===u.PERSPECTIVE_CAMERA)this.fovMode===u.FOVMODE_VERTICAL_FIXED?(t=2*this.minZ*Math.tan(this.fov/2),e=this.getEngine().getAspectRatio(this)*t):t=(e=2*this.minZ*Math.tan(this.fov/2))/this.getEngine().getAspectRatio(this);else{let i=this.getEngine().getRenderWidth()/2,s=this.getEngine().getRenderHeight()/2;e=(this.orthoRight??i)-(this.orthoLeft??-i),t=(this.orthoTop??s)-(this.orthoBottom??-s)}return e*t}set orthoLeft(e){for(let t of(this._orthoLeft=e,this._rigCameras))t.orthoLeft=e}get orthoLeft(){return this._orthoLeft}set orthoRight(e){for(let t of(this._orthoRight=e,this._rigCameras))t.orthoRight=e}get orthoRight(){return this._orthoRight}set orthoBottom(e){for(let t of(this._orthoBottom=e,this._rigCameras))t.orthoBottom=e}get orthoBottom(){return this._orthoBottom}set orthoTop(e){for(let t of(this._orthoTop=e,this._rigCameras))t.orthoTop=e}get orthoTop(){return this._orthoTop}setFocalLength(e,t=36){this.fov=2*Math.atan(t/(2*e))}get inertia(){return this._baseInertia}set inertia(e){this._baseInertia=e}set mode(e){for(let t of(this._mode=e,this._rigCameras))t.mode=e}get mode(){return this._mode}get hasMoved(){return this._hasMoved}constructor(e,t,i,o=!0){(0,c.RegisterAbstractEngineRenderPass)(),super(e,i,!1),this._position=a.Vector3.Zero(),this._upVector=a.Vector3.Up(),this.oblique=null,this._orthoLeft=null,this._orthoRight=null,this._orthoBottom=null,this._orthoTop=null,this.fov=.8,this.projectionPlaneTilt=0,this.minZ=1,this.maxZ=1e4,this._baseInertia=.9,this._mode=u.PERSPECTIVE_CAMERA,this.isIntermediate=!1,this.viewport=new d.Viewport(0,0,1,1),this.layerMask=0xfffffff,this.fovMode=u.FOVMODE_VERTICAL_FIXED,this.cameraRigMode=u.RIG_MODE_NONE,this.ignoreCameraMaxZ=!1,this.customRenderTargets=[],this.outputRenderTarget=null,this.onViewMatrixChangedObservable=new r.Observable,this.onProjectionMatrixChangedObservable=new r.Observable,this.onAfterCheckInputsObservable=new r.Observable,this.onRestoreStateObservable=new r.Observable,this.isRigCamera=!1,this._hasMoved=!1,this._rigCameras=[],this._skipRendering=!1,this._projectionMatrix=new a.Matrix,this._postProcesses=[],this._activeMeshes=new s.SmartArray(256),this._globalPosition=a.Vector3.Zero(),this._computedViewMatrix=a.Matrix.Identity(),this._doNotComputeProjectionMatrix=!1,this._transformMatrix=a.Matrix.Zero(),this._refreshFrustumPlanes=!0,this._absoluteRotation=a.Quaternion.Identity(),this._isCamera=!0,this._isLeftCamera=!1,this._isRightCamera=!1,this.layerMask=this.getScene().defaultCameraLayerMask,this.getScene().addCamera(this),o&&!this.getScene().activeCamera&&(this.getScene().activeCamera=this),this.position=t,this.renderPassId=this.getScene().getEngine().createRenderPassId(`Camera ${e}`)}storeState(){return this._stateStored=!0,this._storedFov=this.fov,this}hasStateStored(){return!!this._stateStored}_restoreStateValues(){return!!this._stateStored&&(this.fov=this._storedFov,!0)}restoreState(){return!!this._restoreStateValues()&&(this.onRestoreStateObservable.notifyObservers(this),!0)}getClassName(){return"Camera"}toString(e){let t="Name: "+this.name;if(t+=", type: "+this.getClassName(),this.animations)for(let i=0;i<this.animations.length;i++)t+=", animation[0]: "+this.animations[i].toString(e);return t}applyVerticalCorrection(){let e=this.absoluteRotation.toEulerAngles();this.projectionPlaneTilt=this._scene.useRightHandedSystem?-e.x:e.x}get globalPosition(){return this._globalPosition}getActiveMeshes(){return this._activeMeshes}isActiveMesh(e){return -1!==this._activeMeshes.indexOf(e)}isReady(e=!1){if(e){for(let e of this._postProcesses)if(e&&!e.isReady())return!1}return super.isReady(e)}_initCache(){super._initCache(),this._cache.position=new a.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.upVector=new a.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.mode=void 0,this._cache.minZ=void 0,this._cache.maxZ=void 0,this._cache.fov=void 0,this._cache.fovMode=void 0,this._cache.aspectRatio=void 0,this._cache.orthoLeft=void 0,this._cache.orthoRight=void 0,this._cache.orthoBottom=void 0,this._cache.orthoTop=void 0,this._cache.obliqueAngle=void 0,this._cache.obliqueLength=void 0,this._cache.obliqueOffset=void 0,this._cache.renderWidth=void 0,this._cache.renderHeight=void 0}_updateCache(e){e||super._updateCache(),this._cache.position.copyFrom(this.position),this._cache.upVector.copyFrom(this.upVector)}_isSynchronized(){return this._isSynchronizedViewMatrix()&&this._isSynchronizedProjectionMatrix()}_isSynchronizedViewMatrix(){return!!super._isSynchronized()&&this._cache.position.equals(this.position)&&this._cache.upVector.equals(this.upVector)&&this.isSynchronizedWithParent()}_isSynchronizedProjectionMatrix(){let e=this.ignoreCameraMaxZ?0:this.maxZ,t=this._cache.mode===this.mode&&this._cache.minZ===this.minZ&&this._cache.maxZ===e;if(!t)return!1;let i=this.getEngine();return this.mode===u.PERSPECTIVE_CAMERA?t=this._cache.fov===this.fov&&this._cache.fovMode===this.fovMode&&this._cache.aspectRatio===i.getAspectRatio(this)&&this._cache.projectionPlaneTilt===this.projectionPlaneTilt:(t=this._cache.orthoLeft===this.orthoLeft&&this._cache.orthoRight===this.orthoRight&&this._cache.orthoBottom===this.orthoBottom&&this._cache.orthoTop===this.orthoTop&&this._cache.renderWidth===i.getRenderWidth()&&this._cache.renderHeight===i.getRenderHeight(),this.oblique&&(t=t&&this._cache.obliqueAngle===this.oblique.angle&&this._cache.obliqueLength===this.oblique.length&&this._cache.obliqueOffset===this.oblique.offset)),t}attachControl(e,t){}detachControl(e){}update(){this._hasMoved=!1,this._checkInputs(),this.cameraRigMode!==u.RIG_MODE_NONE&&this._updateRigCameras(),this.getViewMatrix(),this.getProjectionMatrix()}_checkInputs(){this.onAfterCheckInputsObservable.notifyObservers(this)}get rigCameras(){return this._rigCameras}get rigPostProcess(){return this._rigPostProcess}_getFirstPostProcess(){for(let e=0;e<this._postProcesses.length;e++)if(null!==this._postProcesses[e])return this._postProcesses[e];return null}_cascadePostProcessesToRigCams(){let e=this._getFirstPostProcess();e&&e.markTextureDirty();for(let e=0,t=this._rigCameras.length;e<t;e++){let t=this._rigCameras[e],i=t._rigPostProcess;i?("pass"===i.getEffectName()&&(t.isIntermediate=0===this._postProcesses.length),t._postProcesses=this._postProcesses.slice(0).concat(i),i.markTextureDirty()):t._postProcesses=this._postProcesses.slice(0)}}attachPostProcess(e,t=null){return!e.isReusable()&&this._postProcesses.indexOf(e)>-1?(n.Logger.Error("You're trying to reuse a post process not defined as reusable."),0):(null==t||t<0?this._postProcesses.push(e):null===this._postProcesses[t]?this._postProcesses[t]=e:this._postProcesses.splice(t,0,e),this._cascadePostProcessesToRigCams(),this._scene.prePassRenderer&&this._scene.prePassRenderer.markAsDirty(),this._postProcesses.indexOf(e))}detachPostProcess(e){let t=this._postProcesses.indexOf(e);-1!==t&&(this._postProcesses[t]=null),this._scene.prePassRenderer&&this._scene.prePassRenderer.markAsDirty(),this._cascadePostProcessesToRigCams()}getWorldMatrix(){return this._isSynchronizedViewMatrix()||this.getViewMatrix(),this._worldMatrix}_getViewMatrix(){return a.Matrix.Identity()}getViewMatrix(e){return!e&&this._isSynchronizedViewMatrix()||(this._hasMoved=!0,this.updateCache(),this._computedViewMatrix=this._getViewMatrix(),this._currentRenderId=this.getScene().getRenderId(),this._childUpdateId++,this._refreshFrustumPlanes=!0,this._cameraRigParams&&this._cameraRigParams.vrPreViewMatrix&&this._computedViewMatrix.multiplyToRef(this._cameraRigParams.vrPreViewMatrix,this._computedViewMatrix),this.parent&&this.parent.onViewMatrixChangedObservable&&this.parent.onViewMatrixChangedObservable.notifyObservers(this.parent),this.onViewMatrixChangedObservable.notifyObservers(this),this._computedViewMatrix.invertToRef(this._worldMatrix),this._worldMatrix.getTranslationToRef(this._globalPosition)),this._computedViewMatrix}freezeProjectionMatrix(e){this._doNotComputeProjectionMatrix=!0,void 0!==e&&(this._projectionMatrix=e)}unfreezeProjectionMatrix(){this._doNotComputeProjectionMatrix=!1}getProjectionMatrix(e){if(this._doNotComputeProjectionMatrix||!e&&this._isSynchronizedProjectionMatrix())return this._projectionMatrix;let t=this.ignoreCameraMaxZ?0:this.maxZ;this._cache.mode=this.mode,this._cache.minZ=this.minZ,this._cache.maxZ=t,this._refreshFrustumPlanes=!0;let i=this.getEngine(),s=this.getScene(),r=i.useReverseDepthBuffer;if(this.mode===u.PERSPECTIVE_CAMERA)this._cache.fov=this.fov,this._cache.fovMode=this.fovMode,this._cache.aspectRatio=i.getAspectRatio(this),this._cache.projectionPlaneTilt=this.projectionPlaneTilt,this.minZ<=0&&(this.minZ=.1),(s.useRightHandedSystem?a.Matrix.PerspectiveFovRHToRef:a.Matrix.PerspectiveFovLHToRef)(this.fov,i.getAspectRatio(this),r?t:this.minZ,r?this.minZ:t,this._projectionMatrix,this.fovMode===u.FOVMODE_VERTICAL_FIXED,i.isNDCHalfZRange,this.projectionPlaneTilt,r);else{let e=i.getRenderWidth()/2,o=i.getRenderHeight()/2;s.useRightHandedSystem?this.oblique?a.Matrix.ObliqueOffCenterRHToRef(this.orthoLeft??-e,this.orthoRight??e,this.orthoBottom??-o,this.orthoTop??o,r?t:this.minZ,r?this.minZ:t,this.oblique.length,this.oblique.angle,this._computeObliqueDistance(this.oblique.offset),this._projectionMatrix,i.isNDCHalfZRange):a.Matrix.OrthoOffCenterRHToRef(this.orthoLeft??-e,this.orthoRight??e,this.orthoBottom??-o,this.orthoTop??o,r?t:this.minZ,r?this.minZ:t,this._projectionMatrix,i.isNDCHalfZRange):this.oblique?a.Matrix.ObliqueOffCenterLHToRef(this.orthoLeft??-e,this.orthoRight??e,this.orthoBottom??-o,this.orthoTop??o,r?t:this.minZ,r?this.minZ:t,this.oblique.length,this.oblique.angle,this._computeObliqueDistance(this.oblique.offset),this._projectionMatrix,i.isNDCHalfZRange):a.Matrix.OrthoOffCenterLHToRef(this.orthoLeft??-e,this.orthoRight??e,this.orthoBottom??-o,this.orthoTop??o,r?t:this.minZ,r?this.minZ:t,this._projectionMatrix,i.isNDCHalfZRange),this._cache.orthoLeft=this.orthoLeft,this._cache.orthoRight=this.orthoRight,this._cache.orthoBottom=this.orthoBottom,this._cache.orthoTop=this.orthoTop,this._cache.obliqueAngle=this.oblique?.angle,this._cache.obliqueLength=this.oblique?.length,this._cache.obliqueOffset=this.oblique?.offset,this._cache.renderWidth=i.getRenderWidth(),this._cache.renderHeight=i.getRenderHeight()}return this.onProjectionMatrixChangedObservable.notifyObservers(this),this._projectionMatrix}getTransformationMatrix(){return this._computedViewMatrix.multiplyToRef(this._projectionMatrix,this._transformMatrix),this._transformMatrix}_computeObliqueDistance(e){return(this.radius||(this.target?a.Vector3.Distance(this.position,this.target):this.position.length()))+e}_updateFrustumPlanes(){this._refreshFrustumPlanes&&(this.getTransformationMatrix(),this._frustumPlanes?l.Frustum.GetPlanesToRef(this._transformMatrix,this._frustumPlanes):this._frustumPlanes=l.Frustum.GetPlanes(this._transformMatrix),this._refreshFrustumPlanes=!1)}isInFrustum(e,t=!1){if(this._updateFrustumPlanes(),!t||!(this.rigCameras.length>0))return e.isInFrustum(this._frustumPlanes);{let t=!1;for(let i of this.rigCameras)i._updateFrustumPlanes(),t=t||e.isInFrustum(i._frustumPlanes);return t}}isCompletelyInFrustum(e){return this._updateFrustumPlanes(),e.isCompletelyInFrustum(this._frustumPlanes)}getForwardRay(e=100,t,i){throw(0,_._WarnImport)("Ray")}getForwardRayToRef(e,t=100,i,s){throw(0,_._WarnImport)("Ray")}dispose(e,t=!1){for(this.onViewMatrixChangedObservable.clear(),this.onProjectionMatrixChangedObservable.clear(),this.onAfterCheckInputsObservable.clear(),this.onRestoreStateObservable.clear(),this.inputs&&this.inputs.clear(),this.getScene().stopAnimation(this),this.getScene().removeCamera(this);this._rigCameras.length>0;){let e=this._rigCameras.pop();e&&e.dispose()}if(this._parentContainer){let e=this._parentContainer.cameras.indexOf(this);e>-1&&this._parentContainer.cameras.splice(e,1),this._parentContainer=null}if(this._rigPostProcess)this._rigPostProcess.dispose(this),this._rigPostProcess=null,this._postProcesses.length=0;else if(this.cameraRigMode!==u.RIG_MODE_NONE)this._rigPostProcess=null,this._postProcesses.length=0;else{let e=this._postProcesses.length;for(;--e>=0;){let t=this._postProcesses[e];t&&t.dispose(this)}}let i=this.customRenderTargets.length;for(;--i>=0;)this.customRenderTargets[i].dispose();this.customRenderTargets.length=0,this._activeMeshes.dispose(),this.getScene().getEngine().releaseRenderPassId(this.renderPassId),super.dispose(e,t)}get isLeftCamera(){return this._isLeftCamera}get isRightCamera(){return this._isRightCamera}get leftCamera(){return this._rigCameras.length<1?null:this._rigCameras[0]}get rightCamera(){return this._rigCameras.length<2?null:this._rigCameras[1]}getLeftTarget(){return this._rigCameras.length<1?null:this._rigCameras[0].getTarget()}getRightTarget(){return this._rigCameras.length<2?null:this._rigCameras[1].getTarget()}setCameraRigMode(e,t){if(this.cameraRigMode!==e){for(;this._rigCameras.length>0;){let e=this._rigCameras.pop();e&&e.dispose()}if(this.cameraRigMode=e,this._cameraRigParams={},this._cameraRigParams.interaxialDistance=t.interaxialDistance||.0637,this._cameraRigParams.stereoHalfAngle=this._cameraRigParams.interaxialDistance/.0637*(Math.PI/180),this.cameraRigMode!==u.RIG_MODE_NONE){let e=this.createRigCamera(this.name+"_L",0);e&&(e._isLeftCamera=!0);let t=this.createRigCamera(this.name+"_R",1);t&&(t._isRightCamera=!0),e&&t&&(this._rigCameras.push(e),this._rigCameras.push(t))}this._setRigMode(t),this._cascadePostProcessesToRigCams(),this.update()}}_setRigMode(e){}_getVRProjectionMatrix(){return a.Matrix.PerspectiveFovLHToRef(this._cameraRigParams.vrMetrics.aspectRatioFov,this._cameraRigParams.vrMetrics.aspectRatio,this.minZ,this.ignoreCameraMaxZ?0:this.maxZ,this._cameraRigParams.vrWorkMatrix,!0,this.getEngine().isNDCHalfZRange),this._cameraRigParams.vrWorkMatrix.multiplyToRef(this._cameraRigParams.vrHMatrix,this._projectionMatrix),this._projectionMatrix}setCameraRigParameter(e,t){this._cameraRigParams||(this._cameraRigParams={}),this._cameraRigParams[e]=t,"interaxialDistance"===e&&(this._cameraRigParams.stereoHalfAngle=t/.0637*(Math.PI/180))}createRigCamera(e,t){return null}_updateRigCameras(){for(let e=0;e<this._rigCameras.length;e++)this._rigCameras[e].minZ=this.minZ,this._rigCameras[e].maxZ=this.ignoreCameraMaxZ?0:this.maxZ,this._rigCameras[e].fov=this.fov,this._rigCameras[e].upVector.copyFrom(this.upVector);this.cameraRigMode===u.RIG_MODE_STEREOSCOPIC_ANAGLYPH&&(this._rigCameras[0].viewport=this._rigCameras[1].viewport=this.viewport)}_setupInputs(){}serialize(){let e=g.SerializationHelper.Serialize(this);return e.uniqueId=this.uniqueId,e.type=this.getClassName(),this.parent&&this.parent._serializeAsParent(e),this.inputs&&this.inputs.serialize(e),g.SerializationHelper.AppendSerializedAnimations(this,e),e.ranges=this.serializeAnimationRanges(),e.isEnabled=this.isEnabled(),e}clone(e,t=null){let i=g.SerializationHelper.Clone(u.GetConstructorFromName(this.getClassName(),e,this.getScene(),this.interaxialDistance,this.isStereoscopicSideBySide),this);return i.name=e,i.parent=t,this.onClonedObservable.notifyObservers(i),i}getDirection(e){let t=a.Vector3.Zero();return this.getDirectionToRef(e,t),t}get absoluteRotation(){return this.getWorldMatrix().decompose(void 0,this._absoluteRotation),this._absoluteRotation}getDirectionToRef(e,t){a.Vector3.TransformNormalToRef(e,this.getWorldMatrix(),t)}static GetConstructorFromName(e,t,i,s=0,r=!0){let a=o.Node.Construct(e,t,i,{interaxial_distance:s,isStereoscopicSideBySide:r});return a||(()=>u._CreateDefaultParsedCamera(t,i))}computeWorldMatrix(){return this.getWorldMatrix()}_calculateHandednessMultiplier(){let e=this.getScene().useRightHandedSystem?-1:1;return this.parent&&0>this.parent._getWorldMatrixDeterminant()&&(e*=-1),e}}function m(e,t){let i=e.type,s=u.GetConstructorFromName(i,e.name,t,e.interaxial_distance,e.isStereoscopicSideBySide),r=g.SerializationHelper.Parse(s,e,t);if(void 0!==e.parentId&&(r._waitingParentId=e.parentId),void 0!==e.parentInstanceIndex&&(r._waitingParentInstanceIndex=e.parentInstanceIndex),r.inputs&&(r.inputs.parse(e),r._setupInputs()),e.upVector&&(r.upVector=a.Vector3.FromArray(e.upVector)),r.setPosition&&(r.position.copyFromFloats(0,0,0),r.setPosition(a.Vector3.FromArray(e.position))),e.target&&r.setTarget&&r.setTarget(a.Vector3.FromArray(e.target)),e.cameraRigMode){let t=e.interaxial_distance?{interaxialDistance:e.interaxial_distance}:{};r.setCameraRigMode(e.cameraRigMode,t)}if(e.animations){for(let t=0;t<e.animations.length;t++){let i=e.animations[t],s=(0,h.GetClass)("BABYLON.Animation");s&&r.animations.push(s.Parse(i))}o.Node.ParseAnimationRanges(r,e,t)}return e.autoAnimate&&t.beginAnimation(r,e.autoAnimateFrom,e.autoAnimateTo,e.autoAnimateLoop,e.autoAnimateSpeed||1),void 0!==e.isEnabled&&r.setEnabled(e.isEnabled),r}u._CreateDefaultParsedCamera=(e,t)=>{throw(0,_._WarnImport)("UniversalCamera")},u.PERSPECTIVE_CAMERA=0,u.ORTHOGRAPHIC_CAMERA=1,u.FOVMODE_VERTICAL_FIXED=0,u.FOVMODE_HORIZONTAL_FIXED=1,u.RIG_MODE_NONE=0,u.RIG_MODE_STEREOSCOPIC_ANAGLYPH=10,u.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL=11,u.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED=12,u.RIG_MODE_STEREOSCOPIC_OVERUNDER=13,u.RIG_MODE_STEREOSCOPIC_INTERLACED=14,u.RIG_MODE_VR=20,u.RIG_MODE_CUSTOM=22,u.ForceAttachControlToAlwaysPreventDefault=!1,(0,t.__decorate)([(0,i.serializeAsVector3)("position")],u.prototype,"_position",void 0),(0,t.__decorate)([(0,i.serializeAsVector3)("upVector")],u.prototype,"_upVector",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"orthoLeft",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"orthoRight",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"orthoBottom",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"orthoTop",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"fov",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"projectionPlaneTilt",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"minZ",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"maxZ",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"inertia",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"mode",null),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"layerMask",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"fovMode",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"cameraRigMode",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"interaxialDistance",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"isStereoscopicSideBySide",void 0),(0,t.__decorate)([(0,i.serialize)()],u.prototype,"ignoreCameraMaxZ",void 0);let p=!1;e.s(["Camera",0,u,"RegisterCamera",0,function(){p||(p=!0,u.Parse=m)}])}]);