@splinetool/runtime 2.0.3 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/hana-ui.js +46 -31
- package/build/hana-ui.js.br +0 -0
- package/build/hana-ui.js.gz +0 -0
- package/build/hana-ui.wasm +0 -0
- package/build/hana-ui.wasm.br +0 -0
- package/build/hana-ui.wasm.gz +0 -0
- package/build/runtime-aiAssistant-RMA2DMFU.js +1 -0
- package/build/runtime-aiAssistant-RMA2DMFU.js.br +0 -0
- package/build/runtime-aiAssistant-RMA2DMFU.js.gz +0 -0
- package/build/runtime-apiServices-KA4FEP5Y.js +1 -0
- package/build/runtime-apiServices-KA4FEP5Y.js.br +0 -0
- package/build/runtime-apiServices-KA4FEP5Y.js.gz +0 -0
- package/build/{runtime-audio-Y3GYW4YQ.js → runtime-audio-BQSRM3W2.js} +1 -1
- package/build/runtime-audio-BQSRM3W2.js.br +0 -0
- package/build/runtime-audio-BQSRM3W2.js.gz +0 -0
- package/build/{runtime-chunk-MVRGHRTL.js → runtime-chunk-36FZTFCC.js} +1 -1
- package/build/runtime-chunk-36FZTFCC.js.br +0 -0
- package/build/runtime-chunk-36FZTFCC.js.gz +0 -0
- package/build/{runtime-chunk-ZHNGVKGZ.js → runtime-chunk-3J5YHSQW.js} +1 -1
- package/build/runtime-chunk-3J5YHSQW.js.br +0 -0
- package/build/runtime-chunk-3J5YHSQW.js.gz +0 -0
- package/build/{runtime-chunk-32ZE2X4C.js → runtime-chunk-4I22JDL6.js} +1 -1
- package/build/runtime-chunk-4I22JDL6.js.br +0 -0
- package/build/runtime-chunk-4I22JDL6.js.gz +0 -0
- package/build/{runtime-chunk-Z5OH244S.js → runtime-chunk-5XUI4Z6R.js} +1 -1
- package/build/runtime-chunk-5XUI4Z6R.js.br +0 -0
- package/build/runtime-chunk-5XUI4Z6R.js.gz +0 -0
- package/build/runtime-chunk-6UUF5VIS.js +1 -0
- package/build/runtime-chunk-6UUF5VIS.js.br +0 -0
- package/build/runtime-chunk-6UUF5VIS.js.gz +0 -0
- package/build/{runtime-chunk-RAAW7WHN.js → runtime-chunk-CIBY4YG3.js} +1 -1
- package/build/runtime-chunk-CIBY4YG3.js.br +0 -0
- package/build/runtime-chunk-CIBY4YG3.js.gz +0 -0
- package/build/{runtime-chunk-XTKPUDRE.js → runtime-chunk-DKGQ6OYZ.js} +1 -1
- package/build/runtime-chunk-DKGQ6OYZ.js.br +0 -0
- package/build/runtime-chunk-DKGQ6OYZ.js.gz +0 -0
- package/build/{runtime-chunk-4FAMJWEB.js → runtime-chunk-DSJY3WL2.js} +1 -1
- package/build/runtime-chunk-DSJY3WL2.js.br +0 -0
- package/build/runtime-chunk-DSJY3WL2.js.gz +0 -0
- package/build/{runtime-chunk-W7THORYR.js → runtime-chunk-ESZD4IRS.js} +1 -1
- package/build/runtime-chunk-ESZD4IRS.js.br +0 -0
- package/build/runtime-chunk-ESZD4IRS.js.gz +0 -0
- package/build/{runtime-chunk-NGWM5WPD.js → runtime-chunk-GPACKOH2.js} +1 -1
- package/build/runtime-chunk-GPACKOH2.js.br +0 -0
- package/build/runtime-chunk-GPACKOH2.js.gz +0 -0
- package/build/{runtime-chunk-6UQ4Z4JG.js → runtime-chunk-I5QFGBIU.js} +1 -1
- package/build/runtime-chunk-I5QFGBIU.js.br +0 -0
- package/build/runtime-chunk-I5QFGBIU.js.gz +0 -0
- package/build/{runtime-chunk-EXHPAC6T.js → runtime-chunk-JNSHQPHC.js} +1 -1
- package/build/runtime-chunk-JNSHQPHC.js.br +0 -0
- package/build/runtime-chunk-JNSHQPHC.js.gz +0 -0
- package/build/{runtime-chunk-TQBPVLGB.js → runtime-chunk-LT4UVXE2.js} +1 -1
- package/build/runtime-chunk-LT4UVXE2.js.br +0 -0
- package/build/runtime-chunk-LT4UVXE2.js.gz +0 -0
- package/build/{runtime-chunk-Y2GFSK5L.js → runtime-chunk-NTW4X3NC.js} +1 -1
- package/build/runtime-chunk-NTW4X3NC.js.br +0 -0
- package/build/runtime-chunk-NTW4X3NC.js.gz +0 -0
- package/build/runtime-chunk-OOC7YSI5.js +1 -0
- package/build/runtime-chunk-OOC7YSI5.js.br +0 -0
- package/build/runtime-chunk-OOC7YSI5.js.gz +0 -0
- package/build/runtime-chunk-QVC5UDJO.js +1 -0
- package/build/runtime-chunk-QVC5UDJO.js.br +0 -0
- package/build/runtime-chunk-QVC5UDJO.js.gz +0 -0
- package/build/runtime-chunk-R7NC6CZZ.js +1 -0
- package/build/runtime-chunk-R7NC6CZZ.js.br +0 -0
- package/build/runtime-chunk-R7NC6CZZ.js.gz +0 -0
- package/build/{runtime-chunk-D2IFC55F.js → runtime-chunk-RF63UVAU.js} +1 -1
- package/build/runtime-chunk-RF63UVAU.js.br +0 -0
- package/build/runtime-chunk-RF63UVAU.js.gz +0 -0
- package/build/{runtime-chunk-MC3OVJQU.js → runtime-chunk-SL64ZYCB.js} +1 -1
- package/build/runtime-chunk-SL64ZYCB.js.br +0 -0
- package/build/runtime-chunk-SL64ZYCB.js.gz +0 -0
- package/build/{runtime-chunk-BCJEHBXX.js → runtime-chunk-TPKGBIJU.js} +1 -1
- package/build/runtime-chunk-TPKGBIJU.js.br +0 -0
- package/build/runtime-chunk-TPKGBIJU.js.gz +0 -0
- package/build/{runtime-chunk-ZULFQKQK.js → runtime-chunk-V5NUL7BL.js} +1 -1
- package/build/runtime-chunk-V5NUL7BL.js.br +1 -0
- package/build/runtime-chunk-V5NUL7BL.js.gz +0 -0
- package/build/{runtime-chunk-G5XH52BM.js → runtime-chunk-V7XDOE2W.js} +1 -1
- package/build/runtime-chunk-V7XDOE2W.js.br +0 -0
- package/build/runtime-chunk-V7XDOE2W.js.gz +0 -0
- package/build/{runtime-chunk-PXPQZ7SX.js → runtime-chunk-W4ZCHGLQ.js} +1 -1
- package/build/runtime-chunk-W4ZCHGLQ.js.br +0 -0
- package/build/runtime-chunk-W4ZCHGLQ.js.gz +0 -0
- package/build/runtime-chunk-WHKBOV2O.js +1 -0
- package/build/runtime-chunk-WHKBOV2O.js.br +0 -0
- package/build/runtime-chunk-WHKBOV2O.js.gz +0 -0
- package/build/{runtime-chunk-D6NWJJTR.js → runtime-chunk-WMWQXAOH.js} +1 -1
- package/build/runtime-chunk-WMWQXAOH.js.br +0 -0
- package/build/runtime-chunk-WMWQXAOH.js.gz +0 -0
- package/build/runtime-chunk-YFAATRJU.js +1 -0
- package/build/runtime-chunk-YFAATRJU.js.br +0 -0
- package/build/runtime-chunk-YFAATRJU.js.gz +0 -0
- package/build/{runtime-chunk-Q4H7PFTE.js → runtime-chunk-ZJPGZKPX.js} +1 -1
- package/build/runtime-chunk-ZJPGZKPX.js.br +0 -0
- package/build/runtime-chunk-ZJPGZKPX.js.gz +0 -0
- package/build/{runtime-chunk-SQKBNW2G.js → runtime-chunk-ZMXEX5NX.js} +1 -1
- package/build/runtime-chunk-ZMXEX5NX.js.br +0 -0
- package/build/runtime-chunk-ZMXEX5NX.js.gz +0 -0
- package/build/{runtime-classicRuntime-IFIIFBNS.js → runtime-classicRuntime-UOZ6RID5.js} +1 -1
- package/build/runtime-classicRuntime-UOZ6RID5.js.br +0 -0
- package/build/runtime-classicRuntime-UOZ6RID5.js.gz +0 -0
- package/build/runtime-cloners-DALMNZYL.js +1 -0
- package/build/runtime-cloners-DALMNZYL.js.br +0 -0
- package/build/runtime-cloners-DALMNZYL.js.gz +0 -0
- package/build/{runtime-components-LNJJ3QLB.js → runtime-components-IGNRKI6T.js} +1 -1
- package/build/runtime-components-IGNRKI6T.js.br +0 -0
- package/build/runtime-components-IGNRKI6T.js.gz +0 -0
- package/build/runtime-conditional-DCOFCW5I.js +1 -0
- package/build/runtime-conditional-DCOFCW5I.js.br +0 -0
- package/build/runtime-conditional-DCOFCW5I.js.gz +0 -0
- package/build/{runtime-createDestroy-DWI7C4WO.js → runtime-createDestroy-JLB7IIQL.js} +1 -1
- package/build/runtime-createDestroy-JLB7IIQL.js.br +0 -0
- package/build/runtime-createDestroy-JLB7IIQL.js.gz +0 -0
- package/build/{runtime-dragDrop-46CHKTIE.js → runtime-dragDrop-ERDSNA3S.js} +1 -1
- package/build/runtime-dragDrop-ERDSNA3S.js.br +0 -0
- package/build/runtime-dragDrop-ERDSNA3S.js.gz +0 -0
- package/build/runtime-gameControls-XKOQVZZC.js +1 -0
- package/build/runtime-gameControls-XKOQVZZC.js.br +0 -0
- package/build/runtime-gameControls-XKOQVZZC.js.gz +0 -0
- package/build/runtime-hair-EOZHA2BH.js +1 -0
- package/build/runtime-hair-EOZHA2BH.js.br +0 -0
- package/build/runtime-hair-EOZHA2BH.js.gz +0 -0
- package/build/{runtime-mergeStaticGeometries-O5XKFANJ.js → runtime-mergeStaticGeometries-4Y3LE3VX.js} +1 -1
- package/build/runtime-mergeStaticGeometries-4Y3LE3VX.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-4Y3LE3VX.js.gz +0 -0
- package/build/{runtime-miscActions-IRARI4E6.js → runtime-miscActions-KIRLTM7C.js} +1 -1
- package/build/runtime-miscActions-KIRLTM7C.js.br +0 -0
- package/build/runtime-miscActions-KIRLTM7C.js.gz +0 -0
- package/build/runtime-mouseHover-WULIJFG2.js +1 -0
- package/build/runtime-mouseHover-WULIJFG2.js.br +0 -0
- package/build/runtime-mouseHover-WULIJFG2.js.gz +0 -0
- package/build/{runtime-particles-INK4LA4P.js → runtime-particles-NNV35DLD.js} +1 -1
- package/build/runtime-particles-NNV35DLD.js.br +0 -0
- package/build/runtime-particles-NNV35DLD.js.gz +0 -0
- package/build/{runtime-paths-LRTW3RNL.js → runtime-paths-RRXZ3PXM.js} +1 -1
- package/build/runtime-paths-RRXZ3PXM.js.br +0 -0
- package/build/runtime-paths-RRXZ3PXM.js.gz +0 -0
- package/build/runtime-resize-V6LZSOZB.js +1 -0
- package/build/runtime-resize-V6LZSOZB.js.br +0 -0
- package/build/runtime-resize-V6LZSOZB.js.gz +0 -0
- package/build/{runtime-sceneTransition-X7RGRC3W.js → runtime-sceneTransition-CP5TI3VP.js} +1 -1
- package/build/runtime-sceneTransition-CP5TI3VP.js.br +0 -0
- package/build/runtime-sceneTransition-CP5TI3VP.js.gz +0 -0
- package/build/{runtime-scroll-VK7XXJPE.js → runtime-scroll-Q7VGS5NM.js} +1 -1
- package/build/runtime-scroll-Q7VGS5NM.js.br +0 -0
- package/build/runtime-scroll-Q7VGS5NM.js.gz +0 -0
- package/build/runtime-shapeBlends-UN7GGFRG.js +1 -0
- package/build/runtime-shapeBlends-UN7GGFRG.js.br +0 -0
- package/build/runtime-shapeBlends-UN7GGFRG.js.gz +0 -0
- package/build/{runtime-text-KC66JGLC.js → runtime-text-N6XLUSM2.js} +1 -1
- package/build/runtime-text-N6XLUSM2.js.br +0 -0
- package/build/runtime-text-N6XLUSM2.js.gz +0 -0
- package/build/{runtime-textInputs-Y7CREUMS.js → runtime-textInputs-IW2E6BNU.js} +1 -1
- package/build/runtime-textInputs-IW2E6BNU.js.br +0 -0
- package/build/runtime-textInputs-IW2E6BNU.js.gz +0 -0
- package/build/runtime-timeline-JA2JZIS7.js +1 -0
- package/build/runtime-timeline-JA2JZIS7.js.br +0 -0
- package/build/runtime-timeline-JA2JZIS7.js.gz +0 -0
- package/build/{runtime-tracking-FA45SGZJ.js → runtime-tracking-M57J2PGK.js} +1 -1
- package/build/runtime-tracking-M57J2PGK.js.br +0 -0
- package/build/runtime-tracking-M57J2PGK.js.gz +0 -0
- package/build/{runtime-transitions-A7UP5OMB.js → runtime-transitions-PELRDE7B.js} +1 -1
- package/build/runtime-transitions-PELRDE7B.js.br +0 -0
- package/build/runtime-transitions-PELRDE7B.js.gz +0 -0
- package/build/runtime-ui2d-IOB5Y76W.js +1 -0
- package/build/runtime-ui2d-IOB5Y76W.js.br +0 -0
- package/build/runtime-ui2d-IOB5Y76W.js.gz +0 -0
- package/build/{runtime-variables-U36KPJ5V.js → runtime-variables-Q6Q2JCGI.js} +1 -1
- package/build/runtime-variables-Q6Q2JCGI.js.br +0 -0
- package/build/runtime-variables-Q6Q2JCGI.js.gz +0 -0
- package/build/{runtime-vectorShapes-MA6PKTF5.js → runtime-vectorShapes-ISY7MWHY.js} +1 -1
- package/build/runtime-vectorShapes-ISY7MWHY.js.br +0 -0
- package/build/runtime-vectorShapes-ISY7MWHY.js.gz +0 -0
- package/build/{runtime-video-7GHZOZRJ.js → runtime-video-DUDXGADJ.js} +1 -1
- package/build/runtime-video-DUDXGADJ.js.br +0 -0
- package/build/runtime-video-DUDXGADJ.js.gz +0 -0
- package/build/runtime-webgpu-4ZCV5EAD.js +1 -0
- package/build/runtime-webgpu-4ZCV5EAD.js.br +0 -0
- package/build/runtime-webgpu-4ZCV5EAD.js.gz +0 -0
- package/build/runtime.cjs +325 -325
- package/build/runtime.js +1 -1
- package/build/runtime.js.br +0 -0
- package/build/runtime.js.gz +0 -0
- package/build/runtime.standalone.js +1 -1
- package/build/runtime.standalone.js.br +0 -0
- package/build/runtime.standalone.js.gz +0 -0
- package/build/runtime.standalone.webgl.js +1 -1
- package/build/runtime.standalone.webgl.js.br +0 -0
- package/build/runtime.standalone.webgl.js.gz +0 -0
- package/build/runtime.standalone.webgpu.js +1 -1
- package/build/runtime.standalone.webgpu.js.br +0 -0
- package/build/runtime.standalone.webgpu.js.gz +0 -0
- package/build/runtime.standalone.webgpu.micro.js +1 -1
- package/build/runtime.standalone.webgpu.micro.js.br +0 -0
- package/build/runtime.standalone.webgpu.micro.js.gz +0 -0
- package/build/runtime.standalone.webgpu.min.js +1 -1
- package/build/runtime.standalone.webgpu.min.js.br +0 -0
- package/build/runtime.standalone.webgpu.min.js.gz +0 -0
- package/package.json +1 -1
- package/build/runtime-aiAssistant-XJVJ7TQB.js +0 -1
- package/build/runtime-aiAssistant-XJVJ7TQB.js.br +0 -0
- package/build/runtime-aiAssistant-XJVJ7TQB.js.gz +0 -0
- package/build/runtime-apiServices-KAO5SQJZ.js +0 -1
- package/build/runtime-apiServices-KAO5SQJZ.js.br +0 -0
- package/build/runtime-apiServices-KAO5SQJZ.js.gz +0 -0
- package/build/runtime-audio-Y3GYW4YQ.js.br +0 -0
- package/build/runtime-audio-Y3GYW4YQ.js.gz +0 -0
- package/build/runtime-chunk-32ZE2X4C.js.br +0 -0
- package/build/runtime-chunk-32ZE2X4C.js.gz +0 -0
- package/build/runtime-chunk-4FAMJWEB.js.br +0 -0
- package/build/runtime-chunk-4FAMJWEB.js.gz +0 -0
- package/build/runtime-chunk-6UQ4Z4JG.js.br +0 -0
- package/build/runtime-chunk-6UQ4Z4JG.js.gz +0 -0
- package/build/runtime-chunk-BCJEHBXX.js.br +0 -0
- package/build/runtime-chunk-BCJEHBXX.js.gz +0 -0
- package/build/runtime-chunk-D2IFC55F.js.br +0 -0
- package/build/runtime-chunk-D2IFC55F.js.gz +0 -0
- package/build/runtime-chunk-D6NWJJTR.js.br +0 -0
- package/build/runtime-chunk-D6NWJJTR.js.gz +0 -0
- package/build/runtime-chunk-EXHPAC6T.js.br +0 -0
- package/build/runtime-chunk-EXHPAC6T.js.gz +0 -0
- package/build/runtime-chunk-G5XH52BM.js.br +0 -0
- package/build/runtime-chunk-G5XH52BM.js.gz +0 -0
- package/build/runtime-chunk-MC3OVJQU.js.br +0 -0
- package/build/runtime-chunk-MC3OVJQU.js.gz +0 -0
- package/build/runtime-chunk-MM75L5X4.js +0 -1
- package/build/runtime-chunk-MM75L5X4.js.br +0 -0
- package/build/runtime-chunk-MM75L5X4.js.gz +0 -0
- package/build/runtime-chunk-MVRGHRTL.js.br +0 -0
- package/build/runtime-chunk-MVRGHRTL.js.gz +0 -0
- package/build/runtime-chunk-NGWM5WPD.js.br +0 -0
- package/build/runtime-chunk-NGWM5WPD.js.gz +0 -0
- package/build/runtime-chunk-NRJDJMQZ.js +0 -1
- package/build/runtime-chunk-NRJDJMQZ.js.br +0 -0
- package/build/runtime-chunk-NRJDJMQZ.js.gz +0 -0
- package/build/runtime-chunk-PXPQZ7SX.js.br +0 -0
- package/build/runtime-chunk-PXPQZ7SX.js.gz +0 -0
- package/build/runtime-chunk-Q4H7PFTE.js.br +0 -0
- package/build/runtime-chunk-Q4H7PFTE.js.gz +0 -0
- package/build/runtime-chunk-QFGFABLH.js +0 -1
- package/build/runtime-chunk-QFGFABLH.js.br +0 -0
- package/build/runtime-chunk-QFGFABLH.js.gz +0 -0
- package/build/runtime-chunk-RAAW7WHN.js.br +0 -0
- package/build/runtime-chunk-RAAW7WHN.js.gz +0 -0
- package/build/runtime-chunk-SQKBNW2G.js.br +0 -0
- package/build/runtime-chunk-SQKBNW2G.js.gz +0 -0
- package/build/runtime-chunk-TQBPVLGB.js.br +0 -0
- package/build/runtime-chunk-TQBPVLGB.js.gz +0 -0
- package/build/runtime-chunk-U5ACSO5E.js +0 -1
- package/build/runtime-chunk-U5ACSO5E.js.br +0 -0
- package/build/runtime-chunk-U5ACSO5E.js.gz +0 -0
- package/build/runtime-chunk-W7THORYR.js.br +0 -0
- package/build/runtime-chunk-W7THORYR.js.gz +0 -0
- package/build/runtime-chunk-XTKPUDRE.js.br +0 -0
- package/build/runtime-chunk-XTKPUDRE.js.gz +0 -0
- package/build/runtime-chunk-XV2ZLRKD.js +0 -1
- package/build/runtime-chunk-XV2ZLRKD.js.br +0 -0
- package/build/runtime-chunk-XV2ZLRKD.js.gz +0 -0
- package/build/runtime-chunk-Y2GFSK5L.js.br +0 -0
- package/build/runtime-chunk-Y2GFSK5L.js.gz +0 -0
- package/build/runtime-chunk-Z5OH244S.js.br +0 -0
- package/build/runtime-chunk-Z5OH244S.js.gz +0 -0
- package/build/runtime-chunk-ZHNGVKGZ.js.br +0 -0
- package/build/runtime-chunk-ZHNGVKGZ.js.gz +0 -0
- package/build/runtime-chunk-ZLW3UWOA.js +0 -1
- package/build/runtime-chunk-ZLW3UWOA.js.br +0 -0
- package/build/runtime-chunk-ZLW3UWOA.js.gz +0 -0
- package/build/runtime-chunk-ZULFQKQK.js.br +0 -0
- package/build/runtime-chunk-ZULFQKQK.js.gz +0 -0
- package/build/runtime-classicRuntime-IFIIFBNS.js.br +0 -0
- package/build/runtime-classicRuntime-IFIIFBNS.js.gz +0 -0
- package/build/runtime-cloners-WEF7XIM4.js +0 -1
- package/build/runtime-cloners-WEF7XIM4.js.br +0 -2
- package/build/runtime-cloners-WEF7XIM4.js.gz +0 -0
- package/build/runtime-components-LNJJ3QLB.js.br +0 -0
- package/build/runtime-components-LNJJ3QLB.js.gz +0 -0
- package/build/runtime-conditional-3A423CXW.js +0 -1
- package/build/runtime-conditional-3A423CXW.js.br +0 -0
- package/build/runtime-conditional-3A423CXW.js.gz +0 -0
- package/build/runtime-createDestroy-DWI7C4WO.js.br +0 -0
- package/build/runtime-createDestroy-DWI7C4WO.js.gz +0 -0
- package/build/runtime-dragDrop-46CHKTIE.js.br +0 -0
- package/build/runtime-dragDrop-46CHKTIE.js.gz +0 -0
- package/build/runtime-gameControls-YA2YP4UH.js +0 -1
- package/build/runtime-gameControls-YA2YP4UH.js.br +0 -0
- package/build/runtime-gameControls-YA2YP4UH.js.gz +0 -0
- package/build/runtime-hair-XVWLJEZC.js +0 -1
- package/build/runtime-hair-XVWLJEZC.js.br +0 -3
- package/build/runtime-hair-XVWLJEZC.js.gz +0 -0
- package/build/runtime-mergeStaticGeometries-O5XKFANJ.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-O5XKFANJ.js.gz +0 -0
- package/build/runtime-miscActions-IRARI4E6.js.br +0 -0
- package/build/runtime-miscActions-IRARI4E6.js.gz +0 -0
- package/build/runtime-mouseHover-3LVJJIFG.js +0 -1
- package/build/runtime-mouseHover-3LVJJIFG.js.br +0 -0
- package/build/runtime-mouseHover-3LVJJIFG.js.gz +0 -0
- package/build/runtime-particles-INK4LA4P.js.br +0 -0
- package/build/runtime-particles-INK4LA4P.js.gz +0 -0
- package/build/runtime-paths-LRTW3RNL.js.br +0 -0
- package/build/runtime-paths-LRTW3RNL.js.gz +0 -0
- package/build/runtime-resize-4OIVU46M.js +0 -1
- package/build/runtime-resize-4OIVU46M.js.br +0 -0
- package/build/runtime-resize-4OIVU46M.js.gz +0 -0
- package/build/runtime-sceneTransition-X7RGRC3W.js.br +0 -0
- package/build/runtime-sceneTransition-X7RGRC3W.js.gz +0 -0
- package/build/runtime-scroll-VK7XXJPE.js.br +0 -0
- package/build/runtime-scroll-VK7XXJPE.js.gz +0 -0
- package/build/runtime-shapeBlends-VLITROES.js +0 -1
- package/build/runtime-shapeBlends-VLITROES.js.br +0 -2
- package/build/runtime-shapeBlends-VLITROES.js.gz +0 -0
- package/build/runtime-text-KC66JGLC.js.br +0 -0
- package/build/runtime-text-KC66JGLC.js.gz +0 -0
- package/build/runtime-textInputs-Y7CREUMS.js.br +0 -0
- package/build/runtime-textInputs-Y7CREUMS.js.gz +0 -0
- package/build/runtime-timeline-KTMKRAZU.js +0 -1
- package/build/runtime-timeline-KTMKRAZU.js.br +0 -0
- package/build/runtime-timeline-KTMKRAZU.js.gz +0 -0
- package/build/runtime-tracking-FA45SGZJ.js.br +0 -0
- package/build/runtime-tracking-FA45SGZJ.js.gz +0 -0
- package/build/runtime-transitions-A7UP5OMB.js.br +0 -0
- package/build/runtime-transitions-A7UP5OMB.js.gz +0 -0
- package/build/runtime-ui2d-XLYMHVMW.js +0 -1
- package/build/runtime-ui2d-XLYMHVMW.js.br +0 -0
- package/build/runtime-ui2d-XLYMHVMW.js.gz +0 -0
- package/build/runtime-variables-U36KPJ5V.js.br +0 -0
- package/build/runtime-variables-U36KPJ5V.js.gz +0 -0
- package/build/runtime-vectorShapes-MA6PKTF5.js.br +0 -0
- package/build/runtime-vectorShapes-MA6PKTF5.js.gz +0 -0
- package/build/runtime-video-7GHZOZRJ.js.br +0 -0
- package/build/runtime-video-7GHZOZRJ.js.gz +0 -0
- package/build/runtime-webgpu-JPQ4VPBY.js +0 -1
- package/build/runtime-webgpu-JPQ4VPBY.js.br +0 -0
- package/build/runtime-webgpu-JPQ4VPBY.js.gz +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as t}from"./runtime-chunk-N2ZRGNPR.js";import{a as e,c as i}from"./runtime-chunk-VAVYZ35B.js";import{b as s,c as o,d as a,e as n}from"./runtime-chunk-FQNSP44B.js";import{a as r}from"./runtime-chunk-ZULFQKQK.js";import{G as h,a as l}from"./runtime-chunk-NRJDJMQZ.js";import{f as d,g as c}from"./runtime-chunk-MM75L5X4.js";import{h as p}from"./runtime-chunk-ZLW3UWOA.js";import{a as m,g as u,h as y,i as v}from"./runtime-chunk-2PT2WH66.js";import{a as g}from"./runtime-chunk-4KZXQGUQ.js";import{a as f}from"./runtime-chunk-Z5OH244S.js";import{c as b}from"./runtime-chunk-TZCHGFVF.js";import{Fa as E}from"./runtime-chunk-OW6T4XFV.js";import{Bc as P,Dc as C,Ec as M,Fc as x,Oc as T,Oe as S,Pc as D,Rc as w,Xc as R,b as j,bd as L,cd as G,dd as B}from"./runtime-chunk-VGN7YHB7.js";var A=200,W=null;function O(t){W=t}function I(){return W}function F(t){let e=!1;return t.scene.objects.forEach(i=>{"Page"===i.data.type&&!e&&i.data.publish.gameControlObject&&E.traverseModuleInstances(t,i.id,(t,i,s)=>{for(let t of s)"GameControl"===t.data.type&&t.data.navmesh.enabled&&(e=!0)})}),e}function k(t){return s?t.metaKey:t.ctrlKey}function V(t,e){return Math.abs(t+3*e)<=2||Math.abs(t+3*window.devicePixelRatio*e)<=2}var z={type:"change"},H={type:"start"},Z={type:"end",nonOrbit:!0},U={type:"end",nonOrbit:!1},Y={type:"end",isZoom:!0,nonOrbit:!0},X={type:"end",changed:!1},N={type:"cameraAnimatingInTimeline"},K=new M,_=new C,Q=2*Math.PI,q=new x,J=new C,$=new x,tt=new M,et=new T,it={type:"requestRender"},st=class extends P{constructor(t,i,s={isPlayMode:!1,isExport:!1},a){super(),this.object=t,this.domElement=i,this.options=s,this.timelineState=a,this.enabled=!0,this.useKeyEvents=!0,this.enableDamping=!1,this.enableZoom=!0,this.enableRotate=!0,this.enablePan=!0,this.autoRotate=!1,this.rotationLimitsMode=0,this.panLimitsMode=0,this.rotationSoftLimit=2,this.panSoftLimit=2,this.hoverRotatePanMode=0,this.zoomLimitsEnabled=!1,this.mouseButtons=[0,5],this.mouseButtonsPlay=[3,4,5],this.touches=[null,j.DOLLY_ROTATE,j.PAN],this.offset=new x,this.eye=new x,this.lastPosition=new x,this.lastQuaternion=new M,this.current=new C,this.overShoot=new C,this.overRatio=new C,this.spherical=new S,this.sphericalDelta=new S,this.panOffset=new x,this.panLeftV=new x,this.panUpV=new x,this.panV=new x,this.rotateStart=new C,this.rotateEnd=new C,this.rotateDelta=new C,this.panStart=new C,this.panEnd=new C,this.panDelta=new C,this.dollyStart=new C,this.dollyEnd=new C,this.dollyDelta=new C,this.rotationRangeFactor=new C,this.panRangeFactor=new C,this.state=-1,this.zoomChanged=!1,this.isPointerDown=!1,this.isThetaFlipped=!1,this.prevScale=0,this.scale=1,this.gesture=!1,this.lastTrackpadPanTime=-1/0,this.lastMouseWheelZoomTime=-1/0,this.timer=-1,this.timerHover=-1,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minPhi=0,this.maxPhi=Math.PI,this.minTheta=-1/0,this.maxTheta=1/0,this.minH=0,this.maxH=Math.PI,this.minV=-1/0,this.maxV=1/0,this.autoRotateClockwise=!0,this.isPanOverShoot=!1,this.isRotateOverShoot=!1,this.resetHoverEffectOnPointerLeave=!1,this.hasChange=!1,this.useWindowEvents=!1,this.isTouchZoom=!0,this.autoRotateSpeed=2,this.dampingFactor=.125,this.zoomSpeed=2,this.rotateSpeed=1,this.rotateFactor=1,this.panSpeed=1,this.hoverRotatePanStrength=.1,this.hoverRotateDamping=this.dampingFactor,this.isCurrentlyDamping=!1,this.thetaIsFree=!1,this.phiIsFree=!1,this.needsUpdate=!0,this.onCameraChange=t=>{this.object.removeEventListener("beginState",this.onBeginState),this.object.removeEventListener("completeState",this.onCompleteState),this.object.removeEventListener("cameraChange",this.onCameraChange),this.object=t.camera,this.object.addEventListener("beginState",this.onBeginState),this.object.addEventListener("completeState",this.onCompleteState),this.object.addEventListener("cameraChange",this.onCameraChange)},this.update=()=>{this.object.updateWorldMatrix(!0,!1),this.object.matrixWorld.decompose($,tt,q),this.offset.copy($).sub(this.target),this.spherical.setFromVector3(this.offset),this.object.isUpVectorFlipped&&(this.spherical.phi*=-1,this.spherical.theta-=Math.PI),this.autoRotate&&-1===this.state&&this.rotateLeft((!0===this.autoRotateClockwise?1:-1)*this.getAutoRotationAngle()),0!==this.rotationLimitsMode&&this.applyLimits(this.sphericalDelta,this.rotationLimitsMode,this.rotationSoftLimit,this.maxTheta,this.minTheta,this.maxPhi,this.minPhi,this.rotationRangeFactor),2!==this.rotationLimitsMode&&(this.spherical.phi+=this.sphericalDelta.phi),(1!==this.rotationLimitsMode||!0===this.autoRotate)&&(this.spherical.theta+=this.sphericalDelta.theta),this.spherical.radius*=this.scale,this.zoomLimitsEnabled&&this.object.isPerspectiveCamera&&(this.spherical.radius=Math.max(this.minDistance,Math.min(this.maxDistance,this.spherical.radius))),0!==this.panLimitsMode&&(this.target.applyQuaternion(K.copy(tt).invert()),this.panOffset.applyQuaternion(K),this.applyLimits(this.panOffset,this.panLimitsMode,this.panSoftLimit,this.maxH,this.minH,this.maxV,this.minV,this.panRangeFactor),this.target.applyQuaternion(tt),this.panOffset.applyQuaternion(tt)),2===this.panLimitsMode&&(this.panOffset.y=0),1===this.panLimitsMode&&(this.panOffset.x=0),-1!==this.state||this.gesture?(this.target.add(this.panOffset),this.panOffset.set(0,0,0)):(this.panOffset.multiplyScalar(1-this.dampingFactor),this.target.add(this.panOffset)),this.offset.setFromSpherical(this.spherical),$.copy(this.target).add(this.offset),this.object.position.copy(this.target).add(this.offset),this.object.parent&&(et.copy(this.object.parent.matrixWorld).invert(),this.object.position.applyMatrix4(et));let t=this.spherical.phi%Q;if(this.eye.copy(this.offset).normalize(),this.object.up.copy(w.DEFAULT_UP).applyAxisAngle(this.eye,this.object.angleOffsetFromUp),t>0&&t>Math.PI||t<0&&t>-Math.PI?(this.object.up.negate(),this.object.lookAt(this.target),this.object.isUpVectorFlipped=!0):(this.object.lookAt(this.target),this.object.isUpVectorFlipped=!1),-1===this.state||!0===this.enableDamping){let t=1===this.hoverRotatePanMode?this.hoverRotateDamping:this.dampingFactor;this.sphericalDelta.theta*=1-t,this.sphericalDelta.phi*=1-t}else this.sphericalDelta.set(0,0,0);if(this.scale=1,this.lastPosition.distanceToSquared(this.object.position)>.01||8*(1-this.lastQuaternion.dot(this.object.quaternion))>1e-8)return this.dispatchEvent(z),this.object.dispatchEvent(it),this.lastPosition.copy(this.object.position),this.lastQuaternion.copy(this.object.quaternion),void(this.isCurrentlyDamping=!0);this.isPanOverShoot=!1,this.isRotateOverShoot=!1,this.object.wasMovedBySwitchCameraAction=!1,this.sphericalDelta.set(0,0,0),this.panOffset.set(0,0,0),this.isCurrentlyDamping=!1},this.onPointerDown=t=>{!1!==this.enabled&&("touch"===t.pointerType||"pen"===t.pointerType&&n?this.onPointerDownTouch(t):this.onPointerDownMouse(t),-1!==this.state&&(this.isPointerDown=!0,this.dispatchEvent(H),this.domElement.addEventListener("pointermove",this.onPointerMove),this.domElement.addEventListener("pointerup",this.onPointerUp),t.stopPropagation(),"touch"===t.pointerType||"pen"===t.pointerType&&n||this.domElement.setPointerCapture(t.pointerId)))},this.onPointerLeave=t=>{this.resetHoverEffectOnPointerLeave&&!this.useWindowEvents?(1===this.hoverRotatePanMode?(this.sphericalDelta.theta=-this.spherical.theta,this.sphericalDelta.phi=-this.spherical.phi,q.subVectors(this.position0,this.target0),this.spherical.setFromVector3(q),this.sphericalDelta.theta+=this.spherical.theta,this.sphericalDelta.phi+=this.spherical.phi,this.sphericalDelta.theta/=8,this.sphericalDelta.phi/=8):2===this.hoverRotatePanMode&&this.panOffset.subVectors(this.target0,this.target).divideScalar(8),this.update()):this.pointerLeaveEvent=t},this.onPointerEnter=t=>{this.resetHoverEffectOnPointerLeave||void 0===this.pointerLeaveEvent?J.set(t.clientX-this.domElement.clientWidth/2,t.clientY-this.domElement.clientHeight/2):J.set(t.clientX-this.pointerLeaveEvent.clientX,t.clientY-this.pointerLeaveEvent.clientY),1===this.hoverRotatePanMode?(this.rotateDelta.copy(J).multiplyScalar(this.rotateSpeed*this.hoverRotatePanStrength).rotateAround(_,-this.object.angleOffsetFromUp),this.rotateLeft(2*Math.PI*this.rotateDelta.x/this.domElement.clientHeight),this.rotateUp(2*Math.PI*this.rotateDelta.y/this.domElement.clientHeight),this.rotateStart.set(t.clientX,t.clientY)):2===this.hoverRotatePanMode&&(this.panDelta.copy(J).multiplyScalar(this.panSpeed*this.hoverRotatePanStrength),this.pan(this.panDelta.x,this.panDelta.y),this.panStart.set(t.clientX,t.clientY)),this.update()},this.onPointerMove=t=>{this.timelineState?.isPlayingCameraAnimation?this.dispatchEvent(N):!1!==this.enabled&&(this.checkRaycastLock()||("touch"===t.pointerType||"pen"===t.pointerType&&n?this.onPointerMoveTouch(t):this.onPointerMoveMouse(t),t.stopPropagation()))},this.onPointerUp=t=>{this.isPointerDown=!1,0===e.length&&(this.domElement.removeEventListener("pointermove",this.onPointerMove),this.domElement.removeEventListener("pointerup",this.onPointerUp)),e.length>1&&t.preventDefault(),this.hasChange?this.dispatchEvent(0===this.state?U:Z):this.dispatchEvent(X),this.state=-1,t&&(t.stopPropagation(),"touch"===t.pointerType||"pen"===t.pointerType&&n||this.domElement.releasePointerCapture(t.pointerId))},this.onPointerDownMouse=t=>{let e;switch(e=this.useKeyEvents?this.mouseButtons[t.button]:this.mouseButtonsPlay[t.button],e){case 0:if(!0!==t.altKey||t.shiftKey||k(t)){if(" "===this.key){if(!1===this.enablePan)return;this.handleMouseDownPan(t),this.state=2}}else{if(!1===this.enableRotate)return;this.handleMouseDownRotate(t),this.state=0}break;case 4:if(!1===this.enablePan)return;this.handleMouseDownPan(t),this.state=2;break;case 3:if(k(t)||t.shiftKey){if(!1===this.enablePan)return;this.handleMouseDownPan(t),this.state=2}else{if(!1===this.enableRotate)return;this.handleMouseDownRotate(t),this.state=0}break;case 5:if(k(t)||t.shiftKey){if(!1===this.enableRotate)return;this.handleMouseDownRotate(t),this.state=0}else{if(!1===this.enablePan)return;this.handleMouseDownPan(t),this.state=2}break;default:this.state=-1}},this.onPointerMoveMouse=t=>{switch(this.state){case 0:if(!1===this.enableRotate)return;this.handleMouseMoveRotate(t);break;case 1:if(!1===this.enableZoom)return;this.handleMouseMoveDolly(t);break;case 2:if(!1===this.enablePan)return;this.handleMouseMovePan(t)}this.object.wasMovedByUser=!0},this.onPointerDownTouch=t=>{switch(e.length>1&&t.preventDefault(),this.touches[e.length-1]){case j.ROTATE:if(!1===this.enableRotate)return void(this.state=-1);this.handleTouchStartRotate(),this.state=3;break;case j.PAN:if(!1===this.enablePan)return void(this.state=-1);this.handleTouchStartPan(),this.state=4;break;case j.DOLLY_PAN:if(!1===this.enableZoom&&!1===this.enablePan)return;this.handleTouchStartDollyPan(),this.state=5;break;case j.DOLLY_ROTATE:if(!1===this.enableZoom&&!1===this.enableRotate)return;this.handleTouchStartDollyRotate(),this.state=6;break;default:this.state=-1}},this.onPointerMoveTouch=t=>{switch(e.length>1&&t.preventDefault(),this.state){case 3:if(!1===this.enableRotate)return;this.handleTouchMoveRotate(t),this.update();break;case 4:if(!1===this.enablePan)return;this.handleTouchMovePan(t),this.update();break;case 5:if(!1===this.enableZoom&&!1===this.enablePan)return;this.handleTouchMoveDollyPan(t),this.update();break;case 6:if(!1===this.enableZoom&&!1===this.enableRotate)return;this.handleTouchMoveDollyRotate(t),this.update();break;default:this.state=-1}this.object.wasMovedByUser=!0},this.dispatchEndDebounced=g(()=>{this.zoomChanged?this.dispatchEvent(Y):this.dispatchEvent(Z),this.zoomChanged=!1},33),this.onMouseWheel=t=>{if(!1!==this.enabled&&(!1!==this.enableZoom||!1!==this.enablePan)&&!this.checkRaycastLock()){if(!this.options.isExport&&this.domElement.clientHeight===document.body.clientHeight&&this.domElement.clientWidth===document.body.clientWidth&&t.preventDefault(),this.dispatchEvent(H),this.timelineState?.isPlayingCameraAnimation)return void this.dispatchEvent(N);this.handleMouseWheel(t),this.dispatchEndDebounced(),this.object.wasMovedByUser=!0}},this.onGesture=t=>{if(t.preventDefault(),!1!==this.enabled&&!this.checkRaycastLock()&&!o){if(this.timelineState?.isPlayingCameraAnimation)return void this.dispatchEvent(N);if("gesturechange"===t.type){if(!1===this.enableZoom||!1===this.isTouchZoom)return;this.dispatchEvent(H),t.scale>this.prevScale?this.dollyIn(this.getZoomScale()):t.scale<this.prevScale&&this.dollyOut(this.getZoomScale()),this.prevScale=t.scale,this.update(),this.object.wasMovedByUser=!0}else this.dispatchEvent(Z)}},this.onContextMenu=t=>{t.preventDefault()},this.onTouchEnd=t=>{t.preventDefault()},this.onKeyDown=t=>{!1!==this.enabled&&(this.key=t.key," "===t.key&&this.dispatchEvent(H))},this.onKeyUp=t=>{this.key=void 0,!1!==this.enabled&&(-1!==this.state&&"Alt"===t.key&&this.onPointerUp(e[0])," "===t.key&&this.dispatchEvent(Z))},this.onPointerHover=t=>{"mouse"!==t.pointerType||!1===this.enabled||-1!==this.state||2===this.hoverRotatePanMode&&this.isPanOverShoot||1===this.hoverRotatePanMode&&this.isRotateOverShoot||(this.isPointerDown=!0,2===this.hoverRotatePanMode?this.handleMouseMovePan(t,this.hoverRotatePanStrength):1===this.hoverRotatePanMode&&this.handleMouseMoveRotate(t,this.hoverRotatePanStrength))},this.onBeginState=()=>{this.enabled=!1,this.needsUpdate=!1},this.onCompleteState=t=>{t.isfromEntity&&this.options.isPlayMode||(this.enabled=!0,this.needsUpdate=!0,this.object.updateUp(),this.object.getTarget(this.target))},this.target=this.object.getTarget(),this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this.quat0=this.object.quaternion.clone(),this.isUpVectorFlipped0=this.object.isUpVectorFlipped,this.object.updateWorldMatrix(!0,!1),this.object.matrixWorld.decompose($,tt,q),this.offset.copy($).sub(this.target),this.spherical.setFromVector3(this.offset),this.object.isUpVectorFlipped&&(this.spherical.phi*=-1,this.spherical.theta-=Math.PI),this.initialSphericalRadius=this.spherical.radius,this.addEventListenersToCamera()}dispatchEvent(t){"start"===t.type?this.hasChange=!1:this.hasChange=!0,super.dispatchEvent(t)}addEventListenersToCamera(){this.object.addEventListener("beginState",this.onBeginState),this.object.addEventListener("completeState",this.onCompleteState),this.object.addEventListener("cameraChange",this.onCameraChange)}removeEventListenersFromCamera(){this.object.removeEventListener("beginState",this.onBeginState),this.object.removeEventListener("completeState",this.onCompleteState),this.object.removeEventListener("cameraChange",this.onCameraChange)}updateUseWindowEvents(t){if(window.removeEventListener("pointermove",this.onPointerHover),this.domElement.removeEventListener("pointermove",this.onPointerHover),this.useWindowEvents=t,0!==this.hoverRotatePanMode&&(this.useWindowEvents?window.addEventListener("pointermove",this.onPointerHover):this.domElement.addEventListener("pointermove",this.onPointerHover)),this.domElement.removeEventListener("pointerleave",this.onPointerLeave),this.domElement.removeEventListener("pointerenter",this.onPointerEnter),window.removeEventListener("pointerleave",this.onPointerLeave),window.removeEventListener("pointerenter",this.onPointerEnter),0!==this.hoverRotatePanMode&&!this.useWindowEvents){let t=this.useWindowEvents?window:this.domElement;t.addEventListener("pointerleave",this.onPointerLeave),t.addEventListener("pointerenter",this.onPointerEnter)}}fromJSON(t,e){this.rotateFactor=t.rotationSpeed??1,this.setEnableDampingSpeed(t.enableDamping),this.enablePan=t.enablePan,this.enableZoom=t.enableZoom,this.enableRotate=t.enableRotate,this.rotationLimitsMode=t.rotationLimitsMode,this.thetaIsFree=t.rotationHorizontalOffset.min===t.rotationHorizontalOffset.max&&t.rotationHorizontalOffset.min===Math.PI,this.phiIsFree=t.rotationVerticalOffset.min===t.rotationVerticalOffset.max&&t.rotationVerticalOffset.min===Math.PI,this.panLimitsMode=t.panLimitsMode,this.panSoftLimit=t.panSoftLimit,this.rotationSoftLimit=t.rotationSoftLimit,this.hoverRotatePanMode=t.hoverRotatePanMode,this.hoverRotateDamping=t.hoverRotateDamping??this.dampingFactor,this.useWindowEvents="window"===e,0!==this.hoverRotatePanMode&&(this.useWindowEvents?window.addEventListener("pointermove",this.onPointerHover):this.domElement.addEventListener("pointermove",this.onPointerHover));let i=t.hoverRotatePanStrength/100;this.hoverRotatePanStrength=i**2,this.zoomLimitsEnabled=t.zoomLimitsEnabled,this.minZoom=t.zoomLimits.min,this.maxZoom=Math.max(t.zoomLimits.min,t.zoomLimits.max),this.minDistance=1e3/this.maxZoom,this.maxDistance=Math.max(this.minDistance,1e3/t.zoomLimits.min),this.autoRotate=t.autoRotate,this.autoRotateSpeed=t.autoRotateSpeed,this.autoRotateClockwise=t.autoRotateClockwise;let s=this.object.getTarget().applyQuaternion(K.copy(this.object.quaternion).invert());this.minV=-t.panVerticalOffset.min+s.y,this.maxV=t.panVerticalOffset.max+s.y,this.minH=-t.panHorizontalOffset.min+s.x,this.maxH=t.panHorizontalOffset.max+s.x,this.panRangeFactor.set(this.maxH-this.minH,this.maxV-this.minV).divideScalar(2),this.rotationRangeFactor.setScalar(Math.PI).divideScalar(4),this.minPhi=ot(this.spherical.phi-t.rotationVerticalOffset.min),this.maxPhi=ot(this.spherical.phi+t.rotationVerticalOffset.max),this.minTheta=ot(ot(this.spherical.theta)-t.rotationHorizontalOffset.min),this.maxTheta=ot(ot(this.spherical.theta)+t.rotationHorizontalOffset.max),this.isThetaFlipped=this.minTheta>this.maxTheta,1===t.orbitTouches&&(this.touches[0]=j.ROTATE),1===t.panTouches&&(this.touches[0]=j.PAN),2===t.orbitTouches&&(this.touches[1]=j.DOLLY_ROTATE),2===t.panTouches&&(this.touches[1]=j.DOLLY_PAN),3===t.orbitTouches&&(this.touches[2]=j.ROTATE),3===t.panTouches&&(this.touches[2]=j.PAN),this.isTouchZoom=t.isTouchZoom,this.resetHoverEffectOnPointerLeave=t.resetHoverEffectOnPointerLeave??!1}connect(){if(this.domElement.addEventListener("contextmenu",this.onContextMenu),this.domElement.addEventListener("pointerdown",this.onPointerDown),this.domElement.addEventListener("wheel",this.onMouseWheel),window.addEventListener("keydown",this.onKeyDown,!1),window.addEventListener("keyup",this.onKeyUp,!1),this.domElement.addEventListener("gesturestart",this.onGesture),this.domElement.addEventListener("gesturechange",this.onGesture),this.domElement.addEventListener("gestureend",this.onGesture),this.domElement.addEventListener("touchend",this.onTouchEnd),0!==this.hoverRotatePanMode&&!this.useWindowEvents){let t=this.useWindowEvents?window:this.domElement;t.addEventListener("pointerleave",this.onPointerLeave),t.addEventListener("pointerenter",this.onPointerEnter)}this.pointerLeaveEvent=void 0}dispose(){this.removeEventListenersFromCamera(),this.domElement.removeEventListener("contextmenu",this.onContextMenu),this.domElement.removeEventListener("pointerdown",this.onPointerDown),this.domElement.removeEventListener("wheel",this.onMouseWheel),window.removeEventListener("keydown",this.onKeyDown,!1),window.removeEventListener("keyup",this.onKeyUp,!1),this.domElement.removeEventListener("pointermove",this.onPointerHover),window.removeEventListener("pointermove",this.onPointerHover),this.domElement.removeEventListener("gesturestart",this.onGesture),this.domElement.removeEventListener("gesturechange",this.onGesture),this.domElement.removeEventListener("gestureend",this.onGesture),this.domElement.removeEventListener("touchend",this.onTouchEnd),this.domElement.removeEventListener("pointerleave",this.onPointerLeave),this.domElement.removeEventListener("pointerenter",this.onPointerEnter),window.removeEventListener("pointerleave",this.onPointerLeave),window.removeEventListener("pointerenter",this.onPointerEnter),this.domElement.removeEventListener("pointermove",this.onPointerMove),this.domElement.removeEventListener("pointerup",this.onPointerUp)}applyLimits(t,e,i,s,o,a,n,r){let h,l,d;this.overShoot.set(0,0),t instanceof x?(h=t.x,l=t.y,this.current.set(this.target.x,this.target.y),d=!0):(h=t.theta,l=t.phi,this.current.set(ot(this.spherical.theta),ot(this.spherical.phi)),d=!1),0===i&&(this.current.x+=h,this.current.y+=l),(3===e||2===e)&&(!d&&this.isThetaFlipped?this.current.x>s&&this.current.x<0?this.overShoot.x=s-this.current.x:this.current.x<o&&this.current.x>0&&(this.overShoot.x=o-this.current.x):this.current.x>s?this.overShoot.x=s-this.current.x:this.current.x<o&&(this.overShoot.x=o-this.current.x)),(3===e||1===e)&&(this.current.y>a?this.overShoot.y=a-this.current.y:this.current.y<n&&(this.overShoot.y=n-this.current.y)),d||(this.overShoot.x=ot(this.overShoot.x),this.overShoot.y=ot(this.overShoot.y)),0!==i?(this.overRatio.copy(this.overShoot).divide(r),this.overRatio.x=Math.min(Math.abs(this.overRatio.x),1),this.overRatio.y=Math.min(Math.abs(this.overRatio.y),1),1===i&&(this.overRatio.x=at(Math.abs(this.overRatio.x)),this.overRatio.y=at(Math.abs(this.overRatio.y))),this.isPointerDown||1===i?2===i&&(this.overRatio.x>.9&&!this.thetaIsFree||this.overRatio.y>.9&&!this.phiIsFree)?this.isPointerDown=!1:(h*this.overShoot.x<0&&!this.thetaIsFree&&(h*=1-this.overRatio.x),l*this.overShoot.y<0&&!this.phiIsFree&&(l*=1-this.overRatio.y)):2===i&&(!d&&(this.overRatio.x>.002&&!this.thetaIsFree||this.overRatio.y>.002&&!this.phiIsFree)||d&&(Math.abs(this.overShoot.x)>2||Math.abs(this.overShoot.y)>2)?(this.thetaIsFree||(h=.05*this.overShoot.x),this.phiIsFree||(l=.05*this.overShoot.y),d?this.isPanOverShoot=!0:this.isRotateOverShoot=!0):d?this.isPanOverShoot=!1:this.isRotateOverShoot=!1)):(h+=this.overShoot.x,l+=this.overShoot.y),t instanceof x?(t.x=h,t.y=l):(this.thetaIsFree||(t.theta=h),this.phiIsFree||(t.phi=l))}setEnableDampingSpeed(t){this.enableDamping=t,this.rotateSpeed=(!0===t?.2:1)*this.rotateFactor}stopDamping(){this.sphericalDelta.theta=0,this.sphericalDelta.phi=0,this.panOffset.set(0,0,0)}setTarget(t,e,i){this.stopDamping(),this.target.set(t,e,i)}getAutoRotationAngle(){return 2*Math.PI/60/60*this.autoRotateSpeed}getZoomScale(){return Math.pow(.95,this.zoomSpeed)}rotateLeft(t){this.sphericalDelta.theta-=t}rotateUp(t){this.sphericalDelta.phi-=t}panLeft(t,e){this.panLeftV.setFromMatrixColumn(e,0),this.panLeftV.multiplyScalar(-t),this.panOffset.add(this.panLeftV)}panUp(t,e){this.panUpV.setFromMatrixColumn(e,1),this.panUpV.multiplyScalar(t),this.panOffset.add(this.panUpV)}pan(t,e){let i=this.domElement;if(i&&this.object.isPerspectiveCamera){let s=this.object.position;this.panV.copy(s).sub(this.target);let o=this.panV.length();o*=Math.tan(this.object.fov/2*Math.PI/180),this.panLeft(2*t*o/i.clientHeight,this.object.matrixWorld),this.panUp(2*e*o/i.clientHeight,this.object.matrixWorld)}else i&&this.object.isOrthographicCamera&&(this.panLeft(t*(this.object.right-this.object.left)/this.object.zoom/i.clientWidth,this.object.matrixWorld),this.panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/i.clientHeight,this.object.matrixWorld));this.dispatchEvent(z)}dollyOut(t){this.object.isPerspectiveCamera?this.scale/=t:this.object.isOrthographicCamera&&(this.object.zoom*=t,this.zoomLimitsEnabled&&(this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom))),this.object.updateProjectionMatrix(),this.zoomChanged=!0),this.dispatchEvent(z)}dollyIn(t){this.object.isPerspectiveCamera?this.scale*=t:this.object.isOrthographicCamera&&(this.object.zoom/=t,this.zoomLimitsEnabled&&(this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom))),this.object.updateProjectionMatrix(),this.zoomChanged=!0),this.dispatchEvent(z)}setZoom(t){if(this.dispatchEvent(H),this.object.isPerspectiveCamera){let e=this.initialSphericalRadius/t/this.spherical.radius;this.scale=e}else this.object.isOrthographicCamera&&(this.object.zoom=t,this.zoomLimitsEnabled&&(this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom))),this.object.updateProjectionMatrix(),this.zoomChanged=!0);this.dispatchEvent(Z)}handleMouseDownRotate(t){this.rotateStart.set(t.clientX,t.clientY)}handleMouseDownDolly(t){this.dollyStart.set(t.clientX,t.clientY)}handleMouseDownPan(t){this.panStart.set(t.clientX,t.clientY)}handleMouseMoveRotate(t,e=1){void 0!==t.movementX?this.rotateDelta.set(t.movementX,t.movementY):(this.rotateEnd.set(t.clientX,t.clientY),this.rotateDelta.subVectors(this.rotateEnd,this.rotateStart),this.rotateStart.copy(this.rotateEnd)),this.rotateDelta.multiplyScalar(this.rotateSpeed*e).rotateAround(_,-this.object.angleOffsetFromUp);let i=this.domElement,s=this.useWindowEvents?window.innerHeight:i.clientHeight,o=2*Math.PI*this.rotateDelta.x/s,a=2*Math.PI*this.rotateDelta.y/s;this.rotateLeft(o),this.rotateUp(a),this.update()}handleMouseMoveDolly(t){this.dollyEnd.set(t.clientX,t.clientY),this.dollyDelta.subVectors(this.dollyEnd,this.dollyStart),this.dollyDelta.y>0?this.dollyOut(this.getZoomScale()):this.dollyDelta.y<0&&this.dollyIn(this.getZoomScale()),this.dollyStart.copy(this.dollyEnd),this.update()}handleMouseMovePan(t,e=1){void 0!==t.movementX?this.panDelta.set(t.movementX,t.movementY):(this.panEnd.set(t.clientX,t.clientY),this.panDelta.subVectors(this.panEnd,this.panStart),this.panStart.copy(this.panEnd)),this.panDelta.multiplyScalar(this.panSpeed*e),this.pan(this.panDelta.x,this.panDelta.y),this.update()}handleMouseWheel(t){if(0===t.deltaX&&0===t.deltaY)return;let e=!0===t.ctrlKey||!0===k(t),i=!1===k(t)&&!0===(0===(r=t).wheelDeltaY||0===r.deltaY?!(s&&r.shiftKey&&Math.abs(r.wheelDeltaX)>=120)&&(r.wheelDeltaX?V(r.wheelDeltaX,r.deltaX):0===r.deltaMode):r.wheelDeltaY?V(r.wheelDeltaY,r.deltaY):0===r.deltaMode),o=!1===e&&(!0===this.gesture||t.timeStamp-this.lastTrackpadPanTime<300),n=!1===e&&!1===o&&t.timeStamp-this.lastMouseWheelZoomTime<300;var r;if(!1!==a||!1!==n||!0!==i&&!0!==o){if(!1===this.enableZoom)return;this.gesture&&(window.clearTimeout(this.timer),this.gesture=!1,this.isPointerDown=!1,this.dispatchEvent(Z)),!1===e&&!1===i&&(this.lastMouseWheelZoomTime=t.timeStamp),0===t.deltaY?t.deltaX<0?this.dollyIn(this.getZoomScale()):t.deltaX>0&&this.dollyOut(this.getZoomScale()):t.deltaY<0?this.dollyIn(this.getZoomScale()):t.deltaY>0&&this.dollyOut(this.getZoomScale()),this.update(),this.gesture=!1,this.isPointerDown=!1}else{if(!1===this.enablePan)return;let e=!1===this.gesture&&!1===o;this.lastTrackpadPanTime=t.timeStamp,this.gesture||(this.gesture=!0,this.isPointerDown=!0),!1===e&&(this.panDelta.set(-t.deltaX,-t.deltaY).multiplyScalar(this.panSpeed),this.panDelta.x=Math.min(Math.abs(this.panDelta.x),100)*(this.panDelta.x<0?-1:1),this.panDelta.y=Math.min(Math.abs(this.panDelta.y),100)*(this.panDelta.y<0?-1:1),t.altKey?this.pan(0,this.panDelta.y):t.shiftKey?this.pan(this.panDelta.x,0):this.pan(this.panDelta.x,this.panDelta.y),this.update()),window.clearTimeout(this.timer),this.timer=window.setTimeout(()=>{this.gesture=!1,this.isPointerDown=!1,this.dispatchEvent(Z)},100)}}handleTouchStartRotate(){if(2===e.length){let t=.5*(e[0].pageX+e[1].pageX),i=.5*(e[0].pageY+e[1].pageY);this.rotateStart.set(t,i)}else this.rotateStart.set(e[0].pageX,e[0].pageY)}handleTouchStartPan(){if(2===e.length){let t=.5*(e[0].pageX+e[1].pageX),i=.5*(e[0].pageY+e[1].pageY);this.panStart.set(t,i)}else this.panStart.set(e[0].pageX,e[0].pageY)}handleTouchStartDolly(){let t=e[0].pageX-e[1].pageX,i=e[0].pageY-e[1].pageY,s=Math.sqrt(t*t+i*i);this.dollyStart.set(0,s)}handleTouchStartDollyPan(){this.enableZoom&&!0===this.isTouchZoom&&this.handleTouchStartDolly(),this.enablePan&&this.handleTouchStartPan()}handleTouchStartDollyRotate(){this.enableZoom&&!0===this.isTouchZoom&&this.handleTouchStartDolly(),this.enableRotate&&this.handleTouchStartRotate()}handleTouchMoveRotate(t){if(2===e.length){let e=i(t),s=.5*(t.pageX+e.x),o=.5*(t.pageY+e.y);this.rotateEnd.set(s,o)}else{if(t.pointerId!==e[0].pointerId)return;this.rotateEnd.set(t.pageX,t.pageY)}this.rotateDelta.subVectors(this.rotateEnd,this.rotateStart).multiplyScalar(this.rotateSpeed);let s=this.domElement;s&&(this.rotateLeft(2*Math.PI*this.rotateDelta.x/s.clientHeight),this.rotateUp(2*Math.PI*this.rotateDelta.y/s.clientHeight)),this.rotateStart.copy(this.rotateEnd)}handleTouchMovePan(t){if(2===e.length){let e=i(t),s=.5*(t.pageX+e.x),o=.5*(t.pageY+e.y);this.panEnd.set(s,o)}else{if(t.pointerId!==e[0].pointerId)return;this.panEnd.set(t.pageX,t.pageY)}this.panDelta.subVectors(this.panEnd,this.panStart).multiplyScalar(this.panSpeed),this.pan(this.panDelta.x,this.panDelta.y),this.panStart.copy(this.panEnd)}handleTouchMoveDolly(t){let e=i(t),s=t.pageX-e.x,o=t.pageY-e.y,a=Math.sqrt(s*s+o*o);this.dollyEnd.set(0,a),this.dollyDelta.set(0,Math.pow(this.dollyEnd.y/this.dollyStart.y,this.zoomSpeed)),this.dollyOut(this.dollyDelta.y),this.dollyStart.copy(this.dollyEnd)}handleTouchMoveDollyPan(t){this.enableZoom&&!0===this.isTouchZoom&&this.handleTouchMoveDolly(t),this.enablePan&&this.handleTouchMovePan(t)}handleTouchMoveDollyRotate(t){this.enableZoom&&!0===this.isTouchZoom&&this.handleTouchMoveDolly(t),this.enableRotate&&this.handleTouchMoveRotate(t)}checkRaycastLock(){if(this.object.data.raycastLock){if(this.options.isPlayMode)return!1;{let t=this.options?.showCameraLock;return t&&t(),!0}}return!1}};function ot(t){let e=2*Math.PI;for(;t<=-Math.PI;)t+=e;for(;t>Math.PI;)t-=e;return t}function at(t){return 1-Math.pow(1-t,4)}var nt,rt,ht=new Promise(t=>{nt=t});function lt(t){return rt||(rt=async function(){let e=t??(f?".":"https://cdn.spline.design/@splinetool/runtime@2.0.3/build"),i=import("./physics.js"),[s,o]=await Promise.all([i,fetch(`${e}/physics.wasm`).then(t=>t.arrayBuffer())]);await s.init(o),nt(s)}())}function dt(t){let e=t.elements,i=e[0]**2+e[1]**2+e[2]**2,s=e[4]**2+e[5]**2+e[6]**2,o=e[8]**2+e[9]**2+e[10]**2,a=e[0]**2+e[4]**2+e[8]**2,n=e[1]**2+e[5]**2+e[9]**2,r=e[2]**2+e[6]**2+e[10]**2,h=1e-8;return i<h||s<h||o<h||a<h||n<h||r<h}function ct(t,e){let i=new B;if(e&&dt(e))return i.setAttribute("position",new L([],3)),i.setIndex([]),i;if(!t.getAttribute("position"))return i.setAttribute("position",new L([],3)),i.setIndex([]),i;let{positions:s,triIndices:o}=h(t.getAttribute("position"),t.getIndex());return i.setAttribute("position",new L(s,3)),i.setIndex(o),e&&i.applyMatrix4(e),i}var pt,mt=class{constructor(t,e,i,s,o,a){this.id=t,this.data=e,this.object=i,this.initialDisabled=!1,this.actions=d(e,e.actions,s,o,a,i),this.target=e.target}disconnect(){c(this.actions)}dispatch(t){this.initialDisabled||(this.actions.Transition.forEach(t=>{t.object.currentTransitionEvent!==this&&(t.object.currentTransitionEvent=this,t.init())}),this.object.dispatchEvent({type:"beginEvent",eventName:"Collision"}),this.actions.Transition.forEach(t=>{"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.Animation.forEach(t=>{"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.TimelineAnimation.forEach(t=>{"runMode"in t.data&&"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.Reset.forEach(t=>{t.dispatch()}),this.actions.Link.forEach(t=>{t.dispatch()}),this.actions.Reset.forEach(t=>{t.dispatch()}),this.actions.Create.forEach(t=>{t.dispatch()}),this.actions.Destroy.forEach(e=>{e.dispatch(t??!1)}),this.actions.SetVariable.forEach(t=>t.checkConditions()),this.actions.SetVariable.forEach(t=>t.dispatch()),this.actions.DynamicVariablePlay.forEach(t=>t.dispatch()),this.actions.Audio.forEach(t=>{t.dispatchBasic()}),this.actions.Particles.forEach(t=>{t.dispatchBasic()}),this.actions.Video.forEach(t=>{t.dispatchBasic()}),this.actions.ClearLocalStorage.forEach(t=>t.dispatch()),this.actions.UserAPI.forEach(t=>t.dispatch()))}},ut=class{constructor(t,e,i,s,o,a){this.id=t,this.data=e,this.object=i,this.page=s,this.currentIntersectedObjects=[],this.actions=d(e,e.actions,s,o,a,i),this.target=e.target,this.triggeringObjects=[];for(let t of e.triggeringObjects){let e=s.scene.find(t);e&&this.triggeringObjects.push(e)}}isValidTriggeringObject(t){return"all"===this.target||this.triggeringObjects.some(e=>e===t||e.isAncestorOf(t.uuid)||t.isAncestorOf(e.uuid))}disconnect(){c(this.actions)}dispatch(){this.object.destroyedInAction||(this.actions.Transition.forEach(t=>{t.object.currentTransitionEvent!==this&&(t.object.currentTransitionEvent=this,t.init())}),this.object.dispatchEvent({type:"beginEvent",eventName:"Trigger"}),this.actions.Transition.forEach(t=>{"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.SwitchCamera.forEach(t=>{"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.TimelineAnimation.forEach(t=>{"runMode"in t.data&&"Toggle"===t.data.runMode?t.toggle():t.play()}),this.actions.Link.forEach(t=>{t.dispatch()}),this.actions.Reset.forEach(t=>{t.dispatch()}),this.actions.Create.forEach(t=>{t.dispatch()}),this.actions.Destroy.forEach(t=>{t.dispatch(!1)}),this.actions.Audio.forEach(t=>{t.dispatchBasic()}),this.actions.Particles.forEach(t=>{t.dispatchBasic()}),this.actions.Video.forEach(t=>{t.dispatchBasic()}),this.actions.SceneTransition.forEach(t=>{t.dispatch()}),this.actions.SetVariable.forEach(t=>t.checkConditions()),this.actions.SetVariable.forEach(t=>t.dispatch()),this.actions.DynamicVariablePlay.forEach(t=>t.dispatch()),this.actions.ClearLocalStorage.forEach(t=>t.dispatch()),this.actions.UserAPI.forEach(t=>t.dispatch()))}};ht.then(t=>pt=t);var yt=new x,vt=new M,gt=new x,ft=(new D(0,0,0,"YXZ"),new D(0,0,0,"XYZ")),bt=new x,Et=new x,Pt=new x(1,1,1),Ct=new M,Mt=new T,xt=new T,Tt={type:"updateMatrix"},St=new M,Dt=new G,wt=.01,Rt={type:"beginEvent",eventName:"Collision"},jt={type:"beginEvent",eventName:"Trigger"};function Lt(t){if(E.physicsEnabled(t.scene.objects))return!0;let e=!1;return t.scene.objects.traverse((t,i)=>{if(i.events)if(Array.isArray(i.events)){for(let t of i.events)if(!0!==t.data.disabled&&"GameControl"===t.data.type&&t.data.collisionEnabled){e=!0;break}}else for(let t of Object.values(i.events))if(!0!==t.disabled&&"GameControl"===t.type&&t.collisionEnabled){e=!0;break}}),e}var Gt=t=>t.states.some(t=>void 0!==t.data.position||void 0!==t.data.rotation||void 0!==t.data.hiddenMatrix||void 0!==t.data.cloner||void 0!==t.data.pathSnapping);function Bt(t){return u(v(t)?t.object:t)}var At,Wt,Ot,It=class{constructor(t){this.eventContext=t,this.isEnabled=!1,this.gameControl=null,this.joysticks=[],this.joystickToGameControls=[],this.sharedGameControlGlobals={entitiesWithTransformAnim:[],entityToCollisionEvents:{},colliderToEntity:new Map,kinematicBodyToEntity:new Map,triggers:[],gamePads:[],createdObjects:[],nCreatedPerAction:{}},this.sensorToTriggerEvent={},this.eventManager=void 0,this.needsCollisionDetection=!1,this.initializationCounter=-1,this.fixedBodiesToWatch=[],this.rigidBodyToMesh=new Map,this.nActiveRigidBodies=0,this.collisionEvents=[],this.isExport=!1,this.skipRender=!0,this._staticBVHAttrIds=new WeakMap,this._staticBVHNextAttrId=1,this.processRigidBody=t=>{if(t.bodyType()!==pt.RigidBodyType.Dynamic)return;t.isSleeping()||this.nActiveRigidBodies++;let[e,i,s]=this.rigidBodyToMesh.get(t.handle);if(yt.copy(t.translation()).multiplyScalar(this.pixelsPerMeter),vt.copy(t.rotation()),e.matrixWorld.compose(yt,vt,i),e.hasNonUniformScale&&e.matrixWorld.multiply(e.shearScale),e.dispatchEvent(Tt),s){let t=e.cloner;if(t&&void 0===t.objectForSample){t.matrixWorld.copy(e.matrixWorld);for(let e of t.children)e.updateMatrixWorld(!0)}for(let t of e.children)t.updateMatrixWorld(!0)}},this.accumulator=0,this.handleCollisionEvents=(t,e,i)=>{if(!1===i)return;let s,o;if(this.sensorToTriggerEvent[t]?(s=this.sensorToTriggerEvent[t],o=this.sharedGameControlGlobals.colliderToEntity.get(e)):this.sensorToTriggerEvent[e]&&(s=this.sensorToTriggerEvent[e],o=this.sharedGameControlGlobals.colliderToEntity.get(t)),s&&o&&s.isValidTriggeringObject(o))s.dispatch();else{for(let i=this.sharedGameControlGlobals.createdObjects.length-1;i>=0;i--){let s=this.sharedGameControlGlobals.createdObjects[i];if(s.userData.hasCollisionDestroy&&(s.rigidBody?.collider(0).handle===t||s.rigidBody?.collider(0).handle===e)){this.sharedGameControlGlobals.createdObjects.splice(i,1),s.removeFromParent(),requestAnimationFrame(()=>this.sharedGameControlGlobals.rapierWorld?.removeRigidBody(s.rigidBody));break}}if(void 0!==this.gameControl?.object&&this.gameControl.object===this.sharedGameControlGlobals.colliderToEntity.get(t)){let t=this.sharedGameControlGlobals.colliderToEntity.get(e),i=this.sharedGameControlGlobals.entityToCollisionEvents[t.uuid];if(void 0===i)return;for(let s of i)"character"===s.data.target&&this.dispatchCollisionEvent(s,t,e)}else if(void 0!==this.gameControl?.object&&this.gameControl.object===this.sharedGameControlGlobals.colliderToEntity.get(e)){let e=this.sharedGameControlGlobals.colliderToEntity.get(t),i=this.sharedGameControlGlobals.entityToCollisionEvents[e.uuid];if(void 0===i)return;for(let s of i)"character"===s.data.target&&this.dispatchCollisionEvent(s,e,t)}else{let i=this.sharedGameControlGlobals.colliderToEntity.get(t),s=this.sharedGameControlGlobals.entityToCollisionEvents[i.uuid];if(void 0!==s)for(let e of s)"scene"===e.data.target&&this.dispatchCollisionEvent(e,i,t);let o=this.sharedGameControlGlobals.colliderToEntity.get(e),a=this.sharedGameControlGlobals.entityToCollisionEvents[o?.uuid];if(void 0!==a)for(let t of a)"scene"===t.data.target&&this.dispatchCollisionEvent(t,o,e)}}},this.isExport=t.isExport,this.sharedAssets=t.sharedAssets,this.renderer=t.renderer,this.requestRender=t.requestRender,this.domElement=this.renderer.domElement,this.pixelsPerMeter=200,this.gravity=this.page.data.globalPhysics.gravity}get page(){return this.eventContext.page}markIsDestroyTarget(){this.page.traverseVisibleEntity(t=>{let e=t.dataPatched;for(let t of e.events){if(!0===t.data.disabled)continue;let e=t.data.actions?.find(t=>"Destroy"===t.data.type)?.data;if(e)for(let t of e.objects){let e=this.page.scene.find(t);e&&(e.userData.hasDestroy=!0)}}})}markIsDragObject(){this.page.traverseVisibleEntity(t=>{let e=t.dataPatched;for(let t of e.events)if(!0!==t.data.disabled&&"DragDrop"===t.data.type)for(let e of t.data.objects){let t=this.page.scene.find(e);t&&(t.userData.hasDrag=!0)}})}_staticBVHIdOf(t){let e=this._staticBVHAttrIds.get(t);return void 0===e&&(e=this._staticBVHNextAttrId++,this._staticBVHAttrIds.set(t,e)),e}initBVH(){if(null===t())return void b("collision-bvh","trigger/collision detection");let e=[],i=[];if(this.page.traverseChildren(t=>{let s,o=t instanceof r,a=m(t);if(y(t)||o||a)return;s=v(t)?t.object:t;let n=s.dataPatched;if("visibility"===n.physics?.enabled?!n.visible:!n.physics?.enabled)return!0;let h=t.geometry,l=!0===s.userData.hasDestroy,d=!0===s.userData.hasDrag;if(Gt(n)||l||d||s.dataPatched.events.some(t=>!0!==t.data.disabled&&("GameControl"===t.data.type||"Follow"===t.data.type)))return t.updateMatrixWorldRigid(),this.addBoundsTree(t),!0;if(h){let s=h.getAttribute("position");if(void 0!==s&&s.count>0){e.push({geometry:h,matrixWorld:t.matrixWorld}),i.push(h.id,this._staticBVHIdOf(s),s.version,null!==h.index?this._staticBVHIdOf(h.index):-1,null!==h.index?h.index.version:-1);for(let e of t.matrixWorld.elements)i.push(e)}}return!!Bt(t)||void 0}),e.length>0){let s=this._staticBVHCache;if(void 0!==s&&s.signature.length===i.length&&s.signature.every((t,e)=>t===i[e]))return void(this.sharedGameControlGlobals.staticMeshBVH=s.bvh);let o=e.map(t=>ct(t.geometry,t.matrixWorld)),a=l(o,!1),n=new(t())(a);this._staticBVHCache={signature:i,bvh:n},this.sharedGameControlGlobals.staticMeshBVH=n}}addRigidBody(t,e,i){if(dt(t.matrixWorld))return;let s=[],o="geometry"in t?t.geometry:void 0,a=e.dataPatched;if(void 0!==o?.getAttribute("position")&&s.push(ct(o,t.shearScale)),a.physics.fusedBody){let e=this.gatherChildrenGeom(t,s);t.traverseObject(e),t.children.forEach(t=>t.updateMatrixWorld(!0));let i=t.cloner;i&&void 0===i.objectForSample&&"dynamic"===a.physics.rigidBody&&(i.traverseObject(e),i.children.forEach(t=>t.updateMatrixWorld(!0)))}if(s.length>0){let n,r=!1,h=!i.fromCreate&&"dynamic"===a.physics.rigidBody||i.fromCreate&&i.dynamic;h?(n=pt.RigidBodyDesc.dynamic(),n.setLinearDamping(a.physics.damping).setAngularDamping(a.physics.damping).setAdditionalMass(1e-9).setGravityScale(a.physics.gravityScale).enabledRotations(...a.physics.enabledRotation).enabledTranslations(...a.physics.enabledTranslation)):(i.hasTransformAnim||i.hasFollow||i.hasDrag)&&!i.fromCreate?(n=pt.RigidBodyDesc.kinematicPositionBased(),this.sharedGameControlGlobals.entitiesWithTransformAnim.push(t),r=!0):n=pt.RigidBodyDesc.fixed();let d=l(s);(t.hasNonUniformScale?t.matrixWorldRigid:t.matrixWorld).decompose(yt,vt,gt),t.position0=yt.clone().divideScalar(this.pixelsPerMeter),t.rotation0=vt.clone(),yt.divideScalar(this.pixelsPerMeter),n.setTranslation(yt.x,yt.y,yt.z).setRotation(vt),o?d?.scale(1/this.pixelsPerMeter,1/this.pixelsPerMeter,1/this.pixelsPerMeter):d?.scale(gt.x/this.pixelsPerMeter,gt.y/this.pixelsPerMeter,gt.z/this.pixelsPerMeter);let c=this.sharedGameControlGlobals.rapierWorld.createRigidBody(n);h?this.rigidBodyToMesh.set(c.handle,[t,gt.clone(),a.physics.fusedBody]):r?this.sharedGameControlGlobals.kinematicBodyToEntity.set(c.handle,t):this.fixedBodiesToWatch.push([t,c,(t.hasNonUniformScale?t.matrixWorldRigid:t.matrixWorld).clone()]);let p=!(void 0===a.geometry||"SubdivGeometry"===a.geometry.type||"NonParametricGeometry"===a.geometry.type||"BooleanGeometry"===a.geometry.type||"VectorGeometry"===a.geometry.type||"StarGeometry"===a.geometry.type||"RectangleGeometry"===a.geometry.type||"EllipseGeometry"===a.geometry.type||"TriangleGeometry"===a.geometry.type||"TorusGeometry"===a.geometry.type||"HelixGeometry"===a.geometry.type);try{this.addCollider(c,a.physics,d,e,p)}catch{try{this.addCollider(c,a.physics,d,e,!1)}catch(t){console.error(t)}}t.rigidBody=c}}addBoundsTree(e){let i=[];if(void 0!==e.geometry?.getAttribute("position")&&e.geometry?.getAttribute("position").count>0&&i.push(ct(e.geometry,e.shearScale)),e.traverseObject(this.gatherChildrenGeom(e,i)),e.children.forEach(t=>t.updateMatrixWorld(!0)),i.length>0){let s=l(i,!1);e.bvhGeometry=s,s.getAttribute("position").count>0?(e.bvhGeometry.boundsTree=new(t())(s),this.sharedGameControlGlobals.entitiesWithTransformAnim.push(e)):f&&console.warn(`ControlsManager.addBoundsTree: object "${e.name}" has empty geometry`)}}addCollider(t,e,i,s,o=!0){if(0===i?.getAttribute("position").count||0===i?.getIndex()?.count)return;let a;i&&(a="trimesh"===e.colliderType?pt.ColliderDesc.trimesh(i.getAttribute("position").array,i.getIndex().array):pt.ColliderDesc.convexMesh(i.getAttribute("position").array,o?i.getIndex().array:void 0)),a.setFrictionCombineRule(pt.CoefficientCombineRule.Average).setRestitutionCombineRule(pt.CoefficientCombineRule.Average).setDensity(e.density).setFriction(e.friction).setRestitution(e.restitution);let n=this.sharedGameControlGlobals.rapierWorld.createCollider(a,t);this.sharedGameControlGlobals.colliderToEntity.set(n.handle,s),this.sharedGameControlGlobals.entityToCollisionEvents[s.uuid]?.some(t=>"scene"===t.target)&&n.setActiveEvents(pt.ActiveEvents.COLLISION_EVENTS)}gatherChildrenGeom(t,e){let i=Bt(t);return(s,o)=>{if(0===o)return;if(i&&s.parent===t)return!0;let a;if(y(s)){if(!s.objectForSample)return!0===s.object.dataPatched.physics.fusedBody&&"dynamic"===s.object.dataPatched.physics.rigidBody||void 0;if(s.objectForSample.dataPatched.physics.fusedBody)return;a=s.object}else if(v(s))a=s.object;else if(a=s,a.dataPatched.cloner?.hideBase)return!0;let n=a.dataPatched;if("visibility"===n.physics.enabled?!n.visible:!n.physics.enabled)return!0;1===o?t.hasNonUniformScale?s.matrixWorld.multiplyMatrices(t.shearScale,s.hiddenMatrix):s.matrixWorld.copy(s.hiddenMatrix):s.matrixWorld.multiplyMatrices(s.parent.matrixWorld,s.hiddenMatrix),s.matrixWorld.multiply(s.matrix);let r=s.geometry;return void 0!==r?.getAttribute("position")&&e.push(ct(r,s.matrixWorld)),!!Bt(s)||void 0}}activate(t){if(this.isEnabled)return;this.isEnabled=!0,this.eventManager=t,this.usePhysics=this.page.data.globalPhysics.usePhysics;let e=this.page.playCamera,i=!1;this.page.traverseEntity(t=>{for(let e of t.dataPatched.events)if(!1===e.data.disabled&&"Trigger"===e.data.type)return this.needsCollisionDetection=!0,!0});let s=I();if(null!==s?i=s.setup({manager:this,camera:e,renderer:this.renderer,sharedAssets:this.sharedAssets,eventContext:this.eventContext,isExport:this.isExport})||i:null!==this.page.data.publish.gameControlObject&&b("game-controls","the scene's game controls"),!1===i){let{enableRotate:t,enablePan:i,enableZoom:s,autoRotate:o,hoverRotatePanMode:a}=this.eventManager.publish.orbitControls;(t||i||s||o||0!==a)&&(this.orbitControls=new st(e,this.renderer.domElement,{isExport:this.isExport,isPlayMode:!0}),this.orbitControls.addEventListener("change",this.requestRender),this.orbitControls.addEventListener("end",this.requestRender),this.orbitControls.addEventListener("start",this.requestRender),this.orbitControls.fromJSON(this.eventManager.publish.orbitControls,this.eventManager.publish.mouseEventTarget),this.orbitControls.useKeyEvents=!1,this.orbitControls.addEventListenersToCamera(),this.orbitControls.connect(),this.orbitControls.update())}let o=this.renderer.domElement.width/this.renderer.getPixelRatio(),a=this.renderer.domElement.height/this.renderer.getPixelRatio();I()?.createJoysticks(this,o,a),this.markIsDestroyTarget(),this.markIsDragObject(),this.rebuildBVH(),this.initializationCounter++,window.setTimeout(()=>{this.collisionEvents.forEach(t=>t.initialDisabled=!1)},80)}initPhysics(){this.sharedGameControlGlobals.rapierWorld?.free(),this.sharedGameControlGlobals.rapierWorld=new pt.World(new pt.Vector3(0,this.gravity,0)),this.events=new pt.EventQueue(!0);let t=[],e=[];if(this.page.traverseChildren(i=>{let s;if(y(i)){if(!i.objectForSample)return!0===i.object.dataPatched.physics.fusedBody&&"dynamic"===i.object.dataPatched.physics.rigidBody||void 0;if(i.objectForSample.dataPatched.physics.fusedBody)return;s=i.object}else if(v(i))s=i.object;else{if(m(i)||i instanceof r)return;if(s=i,!1===s.dataPatched.cloner?.disabled&&s.dataPatched.cloner?.hideBase&&!0!==s.dataPatched.physics?.fusedBody)return!0}let o,a=s.dataPatched;for(let t of a.events)!0!==t.data.disabled&&"GameControl"===t.data.type&&(o=t.data);if(!a.physics||("visibility"===a.physics.enabled?!a.visible:!a.physics.enabled))return!0;i.updateMatrixWorldRigid();let n=Gt(a),h=!1,l=s.userData.hasDestroy,d=s.userData.hasDrag,c=!1;for(let t of a.events)if(!0!==t.data.disabled)if("Collision"===t.data.type){h=!0;let e=new mt(t.id,t.data,s,this.page,this.sharedAssets,this.eventManager);e.initialDisabled=!0,this.collisionEvents.push(e),this.sharedGameControlGlobals.entityToCollisionEvents[s.uuid]&&this.sharedGameControlGlobals.entityToCollisionEvents[s.uuid].every(e=>e.id!==t.id)?this.sharedGameControlGlobals.entityToCollisionEvents[s.uuid].push(e):this.sharedGameControlGlobals.entityToCollisionEvents[s.uuid]=[e]}else if("Follow"===t.data.type){c=!0;let e=t.data.target;i.traverseVisible(t=>{t.userData.isFollowingObj=e})}"dynamic"===a.physics.rigidBody&&!1===a.physics.fusedBody&&(i.matrixWorldFusedFalse=i.matrixWorld.clone());let p=i.geometry;if(void 0!==o){let t=pt.RigidBodyDesc.kinematicPositionBased();(i.hasNonUniformScale?i.matrixWorldRigid:i.matrixWorld).decompose(yt,vt,gt),i.position0=yt.clone().divideScalar(this.pixelsPerMeter),i.rotation0=vt.clone(),yt.divideScalar(this.pixelsPerMeter),t.setTranslation(yt.x,yt.y,yt.z).setRotation(vt);let e,n=this.sharedGameControlGlobals.rapierWorld.createRigidBody(t);i.rigidBody=n,e="sphere"===o.collider.type?pt.ColliderDesc.ball(o.collider.radius/this.pixelsPerMeter):"capsule"===o.collider.type?pt.ColliderDesc.capsule((o.collider.height/2-o.collider.radius)/this.pixelsPerMeter,o.collider.radius/this.pixelsPerMeter):pt.ColliderDesc.cuboid(o.collider.width/this.pixelsPerMeter/2,o.collider.height/this.pixelsPerMeter/2,o.collider.depth/this.pixelsPerMeter/2),e.setFrictionCombineRule(pt.CoefficientCombineRule.Average).setDensity(a.physics.density).setFriction(a.physics.friction).setRestitution(0).setRestitutionCombineRule(pt.CoefficientCombineRule.Min);let r=this.sharedGameControlGlobals.rapierWorld.createCollider(e,n);this.sharedGameControlGlobals.colliderToEntity.set(r.handle,s),yt.fromArray(o.collider.position.map(t=>"number"==typeof t?t:0)).multiply(gt.setFromMatrixScale(s.matrixWorld)).divideScalar(this.pixelsPerMeter),r.setTranslationWrtParent(yt);let h=(new M).setFromEuler((new D).setFromVector3((new x).fromArray(o.collider.rotation.map(t=>"number"==typeof t?t:0))));r.setRotationWrtParent(h),r.setActiveEvents(pt.ActiveEvents.COLLISION_EVENTS),this.generateSensorColliderDescs(s,!0)}else"dynamic"===a.physics.rigidBody||n||c||l||d||h?(this.addRigidBody(i,s,{hasFollow:c,hasTransformAnim:n,hasDrag:d}),this.generateSensorColliderDescs(s,a.physics.fusedBody)):(p&&t.push(ct(p,i.matrixWorld)),a.physics.fusedBody&&!Bt(i)&&i.traverseObject((e,i)=>{if(0===i)return;let s;if(y(e)){if(!e.objectForSample)return!0===e.object.dataPatched.physics.fusedBody&&"dynamic"===e.object.dataPatched.physics.rigidBody||void 0;if(e.objectForSample.dataPatched.physics.fusedBody)return;s=e.object}else{if(m(e)||e instanceof r)return;if(v(e))s=e.object;else if(s=e,s.dataPatched.cloner?.hideBase)return!0}let o=s.dataPatched;if("visibility"===o.physics.enabled?!o.visible:!o.physics.enabled)return!0;let a=e.geometry;return void 0!==a?.getAttribute("position")&&t.push(ct(a,e.matrixWorld)),!!Bt(e)||void 0}),this.generateSensorColliderDescs(s,a.physics.fusedBody,e));return!(!0!==a.physics?.fusedBody&&!o&&!Bt(i))||void 0}),0===t.length)return;let i=l(t);i.scale(1/this.pixelsPerMeter,1/this.pixelsPerMeter,1/this.pixelsPerMeter);let s=pt.RigidBodyDesc.fixed(),o=this.sharedGameControlGlobals.rapierWorld.createRigidBody(s),a=pt.ColliderDesc.trimesh(i.getAttribute("position").array,i.getIndex().array).setFrictionCombineRule(pt.CoefficientCombineRule.Multiply).setRestitutionCombineRule(pt.CoefficientCombineRule.Multiply).setFriction(1).setRestitution(1);this.sharedGameControlGlobals.rapierWorld.createCollider(a,o);for(let[t,i]of e){let e=this.sharedGameControlGlobals.rapierWorld.createCollider(t,o);this.sensorToTriggerEvent[e.handle]=i}}updatePositions(){return this.nActiveRigidBodies=0,this.sharedGameControlGlobals.rapierWorld.forEachRigidBody(this.processRigidBody),this.nActiveRigidBodies>0}rebuildBVH(){this.usePhysics?this.initPhysics():(this.page.traverseEntity(t=>{for(let e of t.dataPatched.events)if("Trigger"===e.data.type&&!0!==e.data.disabled){let i=new ut(e.id,e.data,t,this.page,this.sharedAssets,this.eventManager),s=(new T).compose(bt.fromArray(e.data.position.map(t=>"number"==typeof t?t:0)),Ct.setFromEuler(ft.fromArray(e.data.rotation.map(t=>"number"==typeof t?t:0))),Pt);if("box"===e.data.triggerZone){let o=new R;o.min.fromArray(e.data.size.map(t=>"number"==typeof t?t:0)).multiplyScalar(-.5),o.max.fromArray(e.data.size.map(t=>"number"==typeof t?t:0)).multiplyScalar(.5),this.sharedGameControlGlobals.triggers.push([o,s,t,i])}else this.sharedGameControlGlobals.triggers.push([e.data.radius,s,t,i])}}),this.needsCollisionDetection&&this.initBVH())}disconnectEvents(){this.collisionEvents.forEach(t=>t.disconnect()),this.sharedGameControlGlobals.triggers.forEach(t=>t[3].disconnect()),this.sharedGameControlGlobals.triggers.length=0}deactivate(){if(this.isEnabled){this.isEnabled=!1,this.page.traverse(t=>{let e=t;e.matrixWorldFusedFalse&&(e.matrixWorldFusedFalse=void 0),e.rigidBody&&(e.rigidBody=void 0),e.position0&&(e.position0=void 0),e.rotation0&&(e.rotation0=void 0)}),this.sharedGameControlGlobals.rapierWorld?.free(),this.sharedGameControlGlobals.rapierWorld=void 0,this.sharedGameControlGlobals.staticMeshBVH=void 0,this.accumulator=0,this.sharedGameControlGlobals.entitiesWithTransformAnim=[],this.sharedGameControlGlobals.kinematicBodyToEntity.clear(),this.fixedBodiesToWatch=[],this.disconnectEvents(),this.gameControl?.reset(),this.gameControl?.dispose(),this.gameControl=null,this.initializationCounter=-1,this.joysticks.forEach(([t,e])=>{t?.destroy(),e.remove()}),this.joystickToGameControls=[],this.joysticks=[],this.orbitControls&&(this.orbitControls.dispose(),this.orbitControls=void 0),this.navigationMeshWrapper?.dispose(),this.navigationMeshWrapper=void 0;for(let t of Object.values(this.sharedGameControlGlobals.entityToCollisionEvents))t.forEach(t=>t.disconnect());this.sharedGameControlGlobals.entityToCollisionEvents={},this.page.updateMatrixWorld(!0)}}update(t){if(!this.isEnabled)return!0;let e=!0;if(void 0!==this.orbitControls&&this.orbitControls.needsUpdate&&(this.orbitControls.update(),e=!this.orbitControls.isCurrentlyDamping),this.initializationCounter>=0&&this.initializationCounter<2?(this.initializationCounter++,e=!1):2===this.initializationCounter&&this.gameControl&&(e=!this.gameControl.update(t)&&e),!1===this.usePhysics&&this.checkTrigger(),this.usePhysics){let i=.016666666666666666;if(0===t)e=this.stepPhysics()&&e;else{let s=t/1e3;s<i&&s>.55*i&&(s=i),this.accumulator+=s;let o=performance.now(),a=0,n=6;for(;this.accumulator>=i&&a<n&&(e=this.stepPhysics()&&e,this.accumulator-=i,a++,!(performance.now()-o>1e3*i)););this.accumulator=this.accumulator%i}}this.skipRender=e}recordPhysicsPose(t){(t.hasNonUniformScale?t.matrixWorldRigid:t.matrixWorld).decompose(yt,vt,gt);let e=t;void 0===e.prevQ?(e.prevQ=vt.clone(),e.prevT=yt.clone()):(e.prevQ.copy(vt),e.prevT.copy(yt))}promoteMovedFixedBodies(){for(let t=this.fixedBodiesToWatch.length-1;t>=0;t--){let[e,i,s]=this.fixedBodiesToWatch[t];(e.hasNonUniformScale?e.matrixWorldRigid:e.matrixWorld).equals(s)||(i.setBodyType(pt.RigidBodyType.KinematicPositionBased,!0),this.sharedGameControlGlobals.kinematicBodyToEntity.set(i.handle,e),this.sharedGameControlGlobals.entitiesWithTransformAnim.push(e),this.fixedBodiesToWatch.splice(t,1))}}clampPushedBodies(){let t=this.gameControl?.object.rigidBody;if(void 0===t)return;let e=this.sharedGameControlGlobals.rapierWorld,i=t.linvel(),s=t.translation(),o=Math.hypot(i.x,i.z);for(let a=0;a<t.numColliders();a++){let n=t.collider(a);e.contactPairsWith(n,t=>{let a=t.parent();if(null===a||!a.isDynamic())return;let r=a.translation(),h=-1/0,l=0,d=0;if(e.contactPair(n,t,t=>{let e=t.normal(),o=e.x*(r.x-s.x)+e.y*(r.y-s.y)+e.z*(r.z-s.z)<0?-1:1;if(Math.abs(e.y)>.7)return;let a=o*e.x,n=o*e.z,c=Math.hypot(a,n);if(c<1e-4)return;let p=(i.x*a+i.z*n)/c;p>h&&(h=p,l=a/c,d=n/c)}),h===-1/0)return;let c=i.x*l+i.z*d;if(c<-wt)return;let p=a.linvel();if(o>wt&&c>wt){let t=p.x*l+p.z*d;if(t<=0)return;let e=Math.min(t,c);return void a.setLinvel({x:l*e,y:p.y,z:d*e},!0)}let m=p.x*l+p.z*d-Math.max(0,c);if(m<=0)return;let u=.5*m;a.setLinvel({x:p.x-l*u,y:p.y,z:p.z-d*u},!0)})}}stepPhysics(){this.promoteMovedFixedBodies();for(let t of this.sharedGameControlGlobals.kinematicBodyToEntity.values())this.recordPhysicsPose(t),t.rigidBody.setNextKinematicTranslation(yt.divideScalar(this.pixelsPerMeter)),t.rigidBody.setNextKinematicRotation(vt);for(let t of this.sharedGameControlGlobals.entitiesWithTransformAnim)!0!==t.rigidBody?.isKinematic()&&this.recordPhysicsPose(t);return this.sharedGameControlGlobals.rapierWorld.step(this.events),this.clampPushedBodies(),this.events?.drainCollisionEvents(this.handleCollisionEvents),!this.updatePositions()}dispatchCollisionEvent(t,e,i){let s,o=(this.sharedGameControlGlobals.rapierWorld?.getCollider(i))._parent;if(e.cloner)for(let t of e.cloner.children)if(t.rigidBody===o){s=t;break}t.dispatch(s),e.dispatchEvent(Rt)}updateUseWindowEvents(t){this.orbitControls?.updateUseWindowEvents(t)}generateSensorColliderDescs(t,e,i){let s=xt.copy(t.matrixWorld).invert();t.traverseEntity((o,a)=>{if(!1===e&&1===a)return!0;for(let e of o.dataPatched.events)if("Trigger"===e.data.type&&!0!==e.data.disabled){let a,n=new ut(e.id,e.data,o,this.page,this.sharedAssets,this.eventManager);if(a="box"===e.data.triggerZone?pt.ColliderDesc.cuboid(...e.data.size.map(t=>("number"==typeof t?t:1)/(2*this.pixelsPerMeter))):pt.ColliderDesc.ball(e.data.radius/this.pixelsPerMeter),a.setDensity(0).setSensor(!0).setActiveEvents(pt.ActiveEvents.COLLISION_EVENTS),bt.fromArray(e.data.position.map(t=>"number"==typeof t?t:0)),Ct.setFromEuler(ft.fromArray(e.data.rotation.map(t=>"number"==typeof t?t:0))),Mt.compose(bt,Ct,Pt).premultiply(o.matrixWorld),i?(Mt.decompose(bt,Ct,Et),a.setActiveCollisionTypes(pt.ActiveCollisionTypes.KINEMATIC_FIXED|pt.ActiveCollisionTypes.DYNAMIC_FIXED)):(Mt.premultiply(s).decompose(bt,Ct,Et),t.rigidBody.bodyType()===pt.RigidBodyType.Dynamic||(t.rigidBody.bodyType()===pt.RigidBodyType.Fixed?a.setActiveCollisionTypes(pt.ActiveCollisionTypes.KINEMATIC_FIXED|pt.ActiveCollisionTypes.DYNAMIC_FIXED):a.setActiveCollisionTypes(pt.ActiveCollisionTypes.KINEMATIC_KINEMATIC|pt.ActiveCollisionTypes.DYNAMIC_KINEMATIC))),bt.divideScalar(this.pixelsPerMeter),a.setTranslation(bt.x,bt.y,bt.z),a.setRotation(Ct),i)i.push([a,n]);else{let e=this.sharedGameControlGlobals.rapierWorld.createCollider(a,t.rigidBody);this.sensorToTriggerEvent[e.handle]=n}}})}checkTrigger(){let t;for(let e=0;e<this.sharedGameControlGlobals.triggers.length;e++){let[i,s,o,a]=this.sharedGameControlGlobals.triggers[e];for(let e=0;e<this.sharedGameControlGlobals.entitiesWithTransformAnim.length;e++){let n=this.sharedGameControlGlobals.entitiesWithTransformAnim[e];if(o===n||!1===a.isValidTriggeringObject(p.is(n)?n:n.object))continue;let r=xt.copy(o.matrixWorld).decompose(bt,St,Et).compose(bt,St,Pt).multiply(s),h=Mt.copy(n.matrixWorld).invert().multiply(r),l=n.bvhGeometry.boundsTree;i instanceof R?t=l.intersectsBox(i,h):(Dt.radius=i,Dt.center.setFromMatrixPosition(h),t=l.intersectsSphere(Dt)),t?-1===a.currentIntersectedObjects.indexOf(n)&&(a.currentIntersectedObjects.push(n),a.dispatch(),o.dispatchEvent(jt)):a.currentIntersectedObjects=a.currentIntersectedObjects.filter(t=>t!==n)}}}},Ft=new Promise(t=>{At=t});function kt(t){return Ot||(Ot=async function(){let e=t??(f?".":"https://cdn.spline.design/@splinetool/runtime@2.0.3/build");typeof window<"u"&&(Wt=new URL(e.endsWith("/")?e:`${e}/`,window.location.href).href);let i=import("./navmesh.js"),[s,o]=await Promise.all([i,fetch(`${e}/navmesh.wasm`).then(t=>t.arrayBuffer())]),a=s.default,n=await a({wasmBinary:o});At(n)}())}export{st as a,lt as b,A as c,O as d,F as e,ct as f,Rt as g,Lt as h,Gt as i,It as j,Ft as k,Wt as l,kt as m};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e,g as t,j as a}from"./runtime-chunk-XV2ZLRKD.js";import{a as r}from"./runtime-chunk-SQKBNW2G.js";import{a as n,b as o}from"./runtime-chunk-4FAMJWEB.js";import{c as i,e as s,f as l}from"./runtime-chunk-ZHNGVKGZ.js";import{a as u}from"./runtime-chunk-W7THORYR.js";import{b as d}from"./runtime-chunk-D6NWJJTR.js";import{U as p,Y as c,Z as h,da as f,ea as g,h as m}from"./runtime-chunk-NRJDJMQZ.js";import{v as y}from"./runtime-chunk-ZLW3UWOA.js";import{d as b,e as v}from"./runtime-chunk-2PT2WH66.js";import{d as w,f as j}from"./runtime-chunk-4KZXQGUQ.js";import{A as D,B as S,I as E,N as V,O as B,P as x,Q as O,R as A,S as k,da as C,ma as N,pa as R,va as M,z as G}from"./runtime-chunk-OW6T4XFV.js";import{Cc as P,Dc as q,Ec as z,Fc as I,Oc as F,Pc as W,Tc as T}from"./runtime-chunk-VGN7YHB7.js";var{degToRad:$,radToDeg:U}=P,_=new I,L=new I,Z=new z;function Q(e,t,a,r,n,o){let i=void 0!==a[e]?a[e]:void 0,s=r[e];if(null==s)return;let l=null!=i?"string"==typeof i?Number(n.getVariable(i)??0):i:t[e],u="string"==typeof s?Number(n.getVariable(s)??0):s;return l!==u?{update:a=>{let r=P.lerp(l,u,a);t[e]=o?Math.trunc(r):r},start:()=>{t[e]=l},end:()=>{t[e]=u}}:void 0}function J(e,t,a,r,n,o){let i=a[e]?a[e]:void 0,s=r[e];if(!s)return;let l=t[e],u=[...i??l].map(e=>"string"==typeof e?Number(n.getVariable(e)??0):e),d=[...s].map(e=>"string"==typeof e?Number(n.getVariable(e)??0):e);return u.length!==d.length||w(u,d)?void 0:{update:a=>{u.forEach((r,n)=>{let i=P.lerp(r,d[n],a);t[e][n]=o?Math.trunc(i):i})},start:()=>{Object.assign(t[e],u)},end:()=>{Object.assign(t[e],d)}}}function H(e,t,a){return t.forEach((t,r)=>{e.setComponent(r,"string"==typeof t?Number(a.getVariable(t)??0):t)}),e}function K(e,t,a,r,n){let o=a[e]?a[e]:void 0,i=r[e];if(!i)return;let s=t[e],l=o?H(new I,o,n):s.clone(),u=H(new I,i,n);return l.equals(u)?void 0:{update:e=>{s.lerpVectors(l,u,e)},start:()=>{s.copy(l)},end:()=>{s.copy(u)}}}function X(e,t,a){return t.forEach((t,r)=>{e.setComponent(r,"string"==typeof t?Number(a.getVariable(t)??0):t)}),e}function Y(e,t,a,r,n){let o=a[e]?a[e]:void 0,i=r[e];if(!i)return;let s=t[e],l=!(s instanceof q),u=s instanceof q?s:(new q).fromArray(s),d=o?X(new q,o,n):u.clone(),p=X(new q,i,n);return d.equals(p)?void 0:{update:a=>{u.lerpVectors(d,p,a),l&&(t[e]=u.toArray())},start:()=>{u.copy(d),l&&(t[e]=u.toArray())},end:()=>{u.copy(p),l&&(t[e]=u.toArray())}}}function ee(e,t,a,r,n){let o=a[e]?a[e]:void 0,i=r[e];if(!i)return;let s=t[e],l=new m(s.r,s.g,s.b,s.a),u=o?"string"==typeof o?n.getColor(o).clone():new m(o.r,o.g,o.b,o.a):l.clone(),d="string"==typeof i?n.getColor(i).clone():new m(i.r,i.g,i.b,i.a);return u.equals(d)?void 0:{update:a=>{l.lerpColors(u,d,a);let r=P.lerp(u.a,d.a,a);l.a=r,t[e]={r:l.r,g:l.g,b:l.b,a:l.a}},start:()=>{l.copy(u)},end:()=>{l.copy(d)}}}function te(e,t,a,r,n){return"number"==typeof t[e]?Q(e,t,a??{},r,n):Array.isArray(t[e])?J(e,t,a??{},r,n):void 0}function ae(e,t,a,r,n){let o=a[e],i=r[e];if("number"==typeof t[e])Math.abs(o-i)>1e-4&&(t[e]=P.lerp(o,i,n));else if(Array.isArray(t[e]))for(let a=0,r=o.length;a<r;a++)t[e][a]=P.lerp(o[a],i[a],n)}function re(e,t,a,r){let n=e.geometry.userData.parameters.extrusion;if(n)return N.forEach(e=>{ae(e,n,t,a,r)}),n}function ne(e,t,a,r){let n=e.updatedPathSnapping;if(n)return M.forEach(e=>{ae(e,n,t,a,r)}),n}function oe(e,t,a,r,n){let o=e.getValue(r);if(void 0!==o){if("colors"===r)return function(e,t,a,r="colors"){if(!e.hasValue(r)||!(r in a))return;let n=[],o=e.getValue(r),i=t?t[r]:o.map(e=>e.toArray()),s=a[r];for(let e=0;e<o.length;++e){let t=[...i[e]],a=[...s[e]];S.isEqual(t,a)||n.push({update:r=>{o[e].fromArray(S.lerp(t,a,r))},start:()=>{o[e].fromArray(t)},end:()=>{o[e].fromArray(a)}})}return n.length?n:void 0}(e,t,a,r);if(Array.isArray(o))return"steps"===r?function(e,t,a,r="steps"){if(!e.hasValue(r)||!(r in a))return;let n=[],o=e.getValue(r),i=t?t[r]:o,s=a[r];return w(i,s)||n.push({update:t=>{let a=[...o];for(let e=0;e<o.length;++e){let r=i[e],n=s[e];a[e]=P.lerp(r,n,t)}e.setValue(r,a)},start:()=>{e.setValue(r,i)},end:()=>{e.setValue(r,s)}}),n.length?n:void 0}(e,t,a,r):void 0;if("number"==typeof o)return function(e,t,a,r,n){if(!e.hasValue(r)||!(r in a))return;let o=t?t[r]:e.getValue(r),i=a[r],s="string"==typeof o?Number(n.getVariable(o)??0):o,l="string"==typeof i?Number(n.getVariable(i)??0):i;return{update:t=>{e.setValue(r,P.lerp(s,l,t))},start:()=>{e.setValue(r,s)},end:()=>{e.setValue(r,l)}}}(e,t,a,r,n);if("boolean"!=typeof o){if(o instanceof q)return function(e,t,a,r){if(!e.hasValue(r)||!(r in a))return;let n=e.getValue(r),o=t?(new q).fromArray(t[r]):n.clone(),i=(new q).fromArray(a[r]);return o.equals(i)?void 0:{update:e=>{n.lerpVectors(o,i,e)},start:()=>{n.copy(o)},end:()=>{n.copy(i)}}}(e,t,a,r);if(o instanceof I)return function(e,t,a,r,n){if(!e.hasValue(r)||!(r in a))return;let o=e.getValue(r),i=t?t[r]:void 0,s=a[r],l=i?H(new I,i,n):o.clone(),u=H(new I,s,n);return l.equals(u)?void 0:{update:e=>{o.lerpVectors(l,u,e)},start:()=>{o.copy(l)},end:()=>{o.copy(u)}}}(e,t,a,r,n);if(o instanceof m)return function(e,t,a,r,n){if(!e.hasValue(r)||!(r in a))return;let o=t?t[r]:void 0,i=a[r],s=e.getValue(r),l=o?"string"==typeof o?n.color(o).clone():(new T).setRGB(o.r,o.g,o.b):s.clone(),u="string"==typeof i?n.color(i).clone():new m(i.r,i.g,i.b,i.a);if(l.equals(u))return;let d=s.clone();return{update:t=>{e.getValue(r)!==d&&e.setValue(r,d),d.lerpColors(l,u,t)},start:()=>{d.copy(l)},end:()=>{d.copy(u)}}}(e,t,a,r,n);if(o instanceof T)return function(e,t,a,r,n){if(!e.hasValue(r)||!(r in a))return;let o=t?t[r]:void 0,i=a[r],s=e.getValue(r),l=o?"string"==typeof o?n.color(o).clone():(new T).setRGB(o.r,o.g,o.b):s.clone(),u="string"==typeof i?n.color(i).clone():(new T).setRGB(i.r,i.g,i.b);if(l.equals(u))return;let d=s.clone();return{update:t=>{e.getValue(r)!==d&&e.setValue(r,d),d.lerpColors(l,u,t)},start:()=>{d.copy(l)},end:()=>{d.copy(u)}}}(e,t,a,r,n);if("isTexture"in o)return function(e,t,a,r="texture"){if(!e.hasValue(r)||!(r in a))return;let n=e.getNode("rotation"),o=t?.[r]?.rotation??0,i=a[r]?.rotation??0;if(n&&o!==i)return{update:e=>{n.value=P.lerp(o,i,e)*P.DEG2RAD},start:()=>{n.value=o*P.DEG2RAD},end:()=>{n.value=i*P.DEG2RAD}};let s=e.getNode("mat");if(!s)return;let l=t?t[r]:s,u=a[r],d=[...l.repeat],p=[...l.offset],c=[...u.repeat],h=[...u.offset],f=l.rotation??0,g=u.rotation??0;return G.isEqual(d,c)&&G.isEqual(p,h)&&f===g?void 0:{update:e=>{s.repeat=G.lerp(d,c,e),s.offset=G.lerp(p,h,e),s.rotation=P.lerp(f,g,e),s.updateMatrix()},start:()=>{s.repeat=[...d],s.offset=[...p],s.rotation=f,s.updateMatrix()},end:()=>{s.repeat=[...c],s.offset=[...h],s.rotation=g,s.updateMatrix()}}}(e,t,a,r)}}}function ie(e,t,a,r){let n=[],o=p(a,r)||!!t.layers&&p(t,r);n.push(function(e,t){return{update:()=>{e.transparent=t}}}(e,o)),function(e,t,a){let r=e.ensureRainbowNoiseCompiled;if("function"==typeof r)for(let n of[...e.layers]){if("rainbow"!==n.type)continue;let o=t.layers?.data(n.uuid),i=a.layers.data(n.uuid);(c(o?.noiseStrength)||c(i?.noiseStrength))&&r.call(e,n.uuid)}}(e,t,a);for(let o of e.layers){let e=t.layers?.data(o.uuid),i=a.layers.data(o.uuid);if(!i||"light"!==o.type&&(!(o.visible??1)||!(i.visible??1)))continue;let s=h[o.type]??[],l=o.getNames().filter(e=>!s.includes(e)&&!C.some(t=>e.includes(t)));for(let t of l)try{let a=oe(o,e,i,t,r);a&&(Array.isArray(a)?n.push(...a):n.push(a))}catch(e){console.error(`lerpMaterial: unexpected material layer for ${t}`,e)}}return n}function se(e,t,a,r,n,o){let i=oe(t,a,r,e,o);!i||(Array.isArray(i)?i.forEach(e=>e.update(n)):i.update(n))}new W;var le=new I,ue=new W;function de(e,t,a,r){let n=r.cloner?.parameters;if(n){ae("count",n,e,t,a),n.count=Math.trunc(n.count);for(let r of B)ae(r,n.radial,e.radial,t.radial,a);for(let r of x)ae(r,n.linear,e.linear,t.linear,a);for(let r of O)ae(r,n.grid,e.grid,t.grid,a);for(let r of A)ae(r,n.toObject,e.toObject,t.toObject,a);return n}}function pe(e,t,a,r){let n=r.cloner?.parameters;if(n){for(let r of k)ae(r,n.randomnessObject,e.randomnessObject,t.randomnessObject,a);return n}}function ce(r,n,o,p,c){let h=[];return r.data.visible&&h.push(...function(e,t,a,r,n){let o,i,u,d,p,c,h,f,g=[];if(v(e)?(o=Y("position",e,t,a,n),o&&g.push(o),u=Q("rotation",e,t,a,n),u&&g.push(u),d=Y("shear",e,t,a,n),d&&g.push(d)):(f={slide:t.pathSnapping?.slide??e.updatedPathSnapping?.slide??e.dataPatched.pathSnapping?.slide??0,offset:t.pathSnapping?.offset??e.updatedPathSnapping?.offset??e.dataPatched.pathSnapping?.offset??0},c=Q("slide",f,t.pathSnapping??e.updatedPathSnapping??e.dataPatched.pathSnapping,a.pathSnapping??e.dataPatched.pathSnapping,n),c&&g.push(c),h=Q("offset",f,t.pathSnapping??e.updatedPathSnapping??e.dataPatched.pathSnapping,a.pathSnapping??e.dataPatched.pathSnapping,n),h&&g.push(h),!c&&!h&&(o=K("position",e,t,a,n),o&&g.push(o),i=K("scale",e,t,a,n),i&&g.push(i),u=function(e,t,a,r,n){let o=t?.rotation?t.rotation.map(e=>("string"==typeof e?Number(n.getVariable(e)??0):e)*P.DEG2RAD):void 0,i=a.rotation?.map(e=>("string"==typeof e?Number(n.getVariable(e)??0):e)*P.DEG2RAD);if(!i)return;let s=o?(new I).fromArray(o):(new I).setFromEuler(e.rotation),l=(new I).fromArray(i);if(s.equals(l))return;let u=le.subVectors(l,s);if(r&&u.toArray().every(e=>Math.abs(e)<2*Math.PI)){let t=(new z).setFromEuler(ue.setFromVector3(s)),a=(new z).setFromEuler(ue.setFromVector3(l));return{update:r=>{!function(e,t,a,r){if(0===r)return a.copy(e);if(1===r)return a.copy(t);let n=e.w*t.w+e.x*t.x+e.y*t.y+e.z*t.z;if(n>=1)return a.copy(e);let o=1-n*n;if(o<=Number.EPSILON){let n=1-r;return a.w=n*e.w+r*t.w,a.x=n*e.x+r*t.x,a.y=n*e.y+r*t.y,a.z=n*e.z+r*t.z,a.normalize(),a}let i=Math.sqrt(o),s=Math.atan2(i,n),l=Math.sin((1-r)*s)/i,u=Math.sin(r*s)/i;a.w=e.w*l+t.w*u,a.x=e.x*l+t.x*u,a.y=e.y*l+t.y*u,a.z=e.z*l+t.z*u}(t,a,e.quaternion,r)},start:()=>{e.rotation.setFromVector3(s)},end:()=>{e.rotation.setFromVector3(l)}}}return{update:t=>{le.lerpVectors(s,l,t),e.rotation.setFromVector3(le)},start:()=>{e.rotation.setFromVector3(s)},end:()=>{e.rotation.setFromVector3(l)}}}(e,t,a,r,n),u&&g.push(u),p=function(e,t,a,r){let n=a[e]?a[e]:void 0,o=r[e];if(!o)return;let i=t[e],s=n?(new F).fromArray(n):i.clone(),l=new I,u=new z,d=new I;s.decompose(l,u,d);let p=(new F).fromArray(o),c=new I,h=new z,f=new I;return p.decompose(c,h,f),s.equals(p)?void 0:{update:e=>{Z.slerpQuaternions(u,h,e),_.lerpVectors(l,c,e),L.lerpVectors(d,f,e),i.compose(_,Z,L)},start:()=>{i.compose(l,u,d)},end:()=>{i.compose(c,h,f)}}}("hiddenMatrix",e,t,a),p&&g.push(p))),o||i||u||p||c||h){let a=v(e)?()=>{e.updateWorldMatrix(!0,!1,!0),e.resetBBoxNeedsUpdate()}:()=>{e.updateMatrix(),e.hasNonUniformScale&&(e.updateMatrixWorld(),e.updateMatrixWorldRigid()),e.parent?.matrixWorldFusedFalse&&(e.matrixWorld.multiplyMatrices(e.parent.matrixWorldFusedFalse,e.matrix),e.matrixWorldNeedsUpdate=!1),s(e)&&l(e.parent)&&e.invalidateDownstreamBooleanData(!0),e.updatePathSnapping(Object.assign({},t.pathSnapping,f))};g.push({update:a,start:a,end:a})}return g}(r,n,o,c,p.shared)),v(r)?h.push(...function(r,n,o,i,s){let l,u,d,p,c,h,f,g,m,y,b,v,w,j,D,S=[];if("width"in r&&(l=Q("width",r,n,o,s),l&&S.push(l)),"height"in r&&(u=Q("height",r,n,o,s),u&&S.push(u)),r instanceof e||r instanceof a){let t={...n.fill},a={...o.fill};void 0!==t.enabled&&t.enabled!==a.enabled&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.fill.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,color:{...t.color,a:0}}),a.enabled||Object.assign(a,{enabled:!0,color:{...a.color,a:0}})),d=ee("color",r.fill,t,a,s),d&&S.push(d)}if(r instanceof e){let t={...n.stroke},a={...o.stroke};(t.enabled||a.enabled)&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.stroke.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,color:{...t.color,a:0}}),a.enabled||Object.assign(a,{enabled:!0,color:{...a.color,a:0}})),p=ee("color",r.stroke,t,a,s),p&&S.push(p),c=Q("thickness",r.stroke,t,a,s),c&&S.push(c)}if(r instanceof e){let t={...n.dropShadow},a={...o.dropShadow};(t.enabled||a.enabled)&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.dropShadow.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,color:{...t.color,a:0}}),a.enabled||Object.assign(a,{enabled:!0,color:{...a.color,a:0}})),h=ee("color",r.dropShadow,t,a,s),h&&S.push(h),f=Q("blurRadius",r.dropShadow,t,a,s),f&&S.push(f),m=Q("spread",r.dropShadow,t,a,s),m&&S.push(m),g=Y("offset",r.dropShadow,t,a,s),g&&S.push(g)}if(r instanceof e){let t={...n.innerShadow},a={...o.innerShadow};(t.enabled||a.enabled)&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.innerShadow.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,color:{...t.color,a:0}}),a.enabled||Object.assign(a,{enabled:!0,color:{...a.color,a:0}})),y=ee("color",r.innerShadow,t,a,s),y&&S.push(y),b=Q("blurRadius",r.innerShadow,t,a,s),b&&S.push(b),w=Q("spread",r.innerShadow,t,a,s),w&&S.push(w),v=Y("offset",r.innerShadow,t,a,s),v&&S.push(v)}if(r instanceof e||r instanceof a){let t={...n.backgroundBlur},a={...o.backgroundBlur};(t.enabled||a.enabled)&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.backgroundBlur.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,radius:0}),a.enabled||Object.assign(a,{enabled:!0,radius:0})),j=Q("radius",r.backgroundBlur,t,a,s),j&&S.push(j)}if(r instanceof e){let t={...n.layerBlur},a={...o.layerBlur};(t.enabled||a.enabled)&&(S.push(function(t){return{update:()=>{t instanceof e&&(t.layerBlur.enabled=!0)}}}(r)),t.enabled||Object.assign(t,{enabled:!0,radius:0}),a.enabled||Object.assign(a,{enabled:!0,radius:0})),D=Q("radius",r.layerBlur,t,a,s),D&&S.push(D)}if(r instanceof a||r instanceof t){let e=J("cornerRadius",r,n,o,s);e&&S.push(e)}return S}(r,n,o,0,p.shared)):(r.data.visible&&h.push(...function(e,t,a,r){let n=[];if(!("cloner"in a)||!e.cloner)return n;let o=e.cloner,i="cloner"in t?t.cloner:{},s=a.cloner;V.forEach(e=>{let t;t="count"===e?Q("count",o.parameters,i,s,r.shared,!0):te(e,o.parameters,i??{},s,r.shared),t&&n.push(t)});let l=function(e,t,a,r){if("radial"!==e.parameters.type)return;let n=t.radial,o=a.radial;if(!o)return;let i=e.parameters.radial,s=[];return B.forEach(e=>{let t=te(e,i,n??{},o,r);t&&s.push(t)}),s}(o,i,s,r.shared);l?.length&&n.push(...l);let u=function(e,t,a,r){if("linear"!==e.parameters.type)return;let n=t.linear,o=a.linear;if(!o)return;let i=[],s=e.parameters.linear;return x.forEach(e=>{let t=te(e,s,n??{},o,r);t&&i.push(t)}),i}(o,i,s,r.shared);u?.length&&n.push(...u);let d=function(e,t,a,r){if("grid"!==e.parameters.type)return;let n=t.grid,o=a.grid;if(!o)return;let i=[],s=e.parameters.grid;return O.forEach(e=>{let t;t="count"===e?J(e,s,n??{},o,r,!0):te(e,s,n??{},o,r),t&&i.push(t)}),i}(o,i,s,r.shared);d?.length&&n.push(...d);let p=function(e,t,a,r){if("toObject"!==e.parameters.type)return;let n=t.toObject,o=a.toObject;if(!o)return;let i=[],s=e.parameters.toObject;return A.forEach(e=>{let t;t="count"===e?Q(e,s,n??{},o,r,!0):te(e,s,n??{},o,r),t&&i.push(t)}),i}(o,i,s,r.shared);p?.length&&n.push(...p);let c=function(e,t,a,r){if(!e.parameters.randomness)return;let n=t.randomnessObject,o=a.randomnessObject;if(!o)return;let i=[],s=e.parameters.randomnessObject;return k.forEach(e=>{let t=te(e,s,n??{},o,r);t&&i.push(t)}),i}(o,i,s,r.shared);return c?.length&&n.push(...c),n.length&&n.push({update:()=>{o.update(r)}}),n}(r,n,o,p)),r instanceof y?(r instanceof g&&r.data.visible&&h.push(...function(e,t,a,r){let n=[];if(!("geometry"in a))return n;let o=e.geometry.userData.parameters,i="geometry"in t?t.geometry:{},s=a.geometry;if(e instanceof d){let t=function(e,t,a,r){if(void 0===a.scaleBaked)return;let n=(t.scaleBaked??e.data.geometry.scaleBaked).map(e=>"string"==typeof e?Number(r.shared.getVariable(e)??0):e),o=a.scaleBaked.map(e=>"string"==typeof e?Number(r.shared.getVariable(e)??0):e);if(D.isEqual(n,o))return;let i=[];return i.push({update:t=>{e.updateGeometryInteractions({scaleBaked:[P.lerp(n[0],o[0],t),P.lerp(n[1],o[1],t),P.lerp(n[2],o[2],t)]},r.shared),e.invalidateDownstreamBooleanData(),e.refreshAttachedClonersInteractions(r)},start:()=>{e.updateGeometryInteractions({scaleBaked:n},r.shared),e.invalidateDownstreamBooleanData(),e.refreshAttachedClonersInteractions(r)},end:()=>{e.updateGeometryInteractions({scaleBaked:o},r.shared),e.invalidateDownstreamBooleanData(),e.refreshAttachedClonersInteractions(r)}}),i}(e,i,s,r);t&&n.push(...t)}else{let t={};if(Object.assign(t,j(o,R),j(i,R)),R.forEach(e=>{let a=te(e,t,i,s,r.shared);a&&n.push(a)}),b(e)){Object.assign(t,{extrusion:{...o.extrusion}});let e=function(e,t,a,r){if(!a.extrusion)return;let n=e.extrusion,o=t.extrusion??{},i=a.extrusion,s=[];return N.forEach(e=>{let t=te(e,n,o,i,r);t&&s.push(t)}),s}(t,i,s,r.shared);e&&n.push(...e)}n.length&&n.push({update:a=>{e.updateGeometryInteractions(t,r.shared),e.updateGeometryGroupsIfNeeded(),e.refreshAttachedClonersInteractions(r)},start:a=>{e.updateGeometryInteractions(t,r.shared),e.updateGeometryGroupsIfNeeded(),e.refreshAttachedClonersInteractions(r)},end:a=>{e.updateGeometryInteractions(t,r.shared),e.updateGeometryGroupsIfNeeded(),e.refreshAttachedClonersInteractions(r)}})}return n}(r,n,o,p)),r.data.visible&&!(r instanceof f&&r.materialOverride)&&h.push(...function(e,t,a,r){let n=[];if(Array.isArray(e.material)){if(!("materials"in a)||!a.materials)return n;let o="materials"in t&&t.materials?t.materials:[],i=a.materials;e.material.forEach((e,t)=>{if(!i[t])return;let a=o[t]??{},s=i[t];"string"==typeof a||"string"==typeof s||n.push(...ie(e,a,s,r))})}else{if(!("material"in a)||!a.material)return n;let o="material"in t&&t.material?t.material:{},i=a.material;if("string"==typeof o||"string"==typeof i)return n;n.push(...ie(e.material,o,i,r))}return n}(r,n,o,p.shared))):i.is(r)?r.data.visible&&h.push(...function(e,t,a,r){let n=[];if(void 0!==a.intensity){let o=Q("intensity",e,t,a,r);o&&n.push(o)}if(void 0!==a.color){let o=function(e,t,a,r,n){let o=a[e]?a[e]:void 0,i=r[e];if(!i)return;let s=t[e],l=o?"string"==typeof o?n.getColor(o).clone():(new T).setRGB(o.r,o.g,o.b):s.clone(),u="string"==typeof i?n.getColor(i).clone():(new T).setRGB(i.r,i.g,i.b);if(l.equals(u))return;let d=s.clone();return{update:a=>{d.lerpColors(l,u,a),t[e]?.copy?.(d)},start:()=>{d.copy(l)},end:()=>{d.copy(u)}}}("color",e,t,a,r);o&&n.push(o)}return n}(r,n,o,p.shared)):r instanceof u&&h.push(...function(e,t,a,r){let n=[],o="OrthographicCamera"===e.cameraType?t.orthographic?.zoom:t.perspective?.zoom,i="OrthographicCamera"===e.cameraType?a.orthographic?.zoom:a.perspective?.zoom;if(void 0!==i){let t=o??e.zoom,a=i;t!==a&&n.push({update:r=>{e.zoom=P.lerp(t,a,r),e.updateProjectionMatrix()},start:()=>{e.zoom=t,e.updateProjectionMatrix()},end:()=>{e.zoom=a,e.updateProjectionMatrix()}})}if(void 0!==a.targetOffset){let o=Q("targetOffset",e,t,a,r);o&&n.push(o)}return n}(r,n,o,p.shared))),h.length?{update:e=>{h.forEach(t=>t.update(e))},start:e=>{h.forEach(t=>t.start?.(e))},end:e=>{h.forEach(t=>t.end?.(e))}}:void 0}function he(e,t){return{position(t){Object.assign(e.position,t),(void 0!==t.x||void 0!==t.y||void 0!==t.z)&&(e.updateMatrix(),e.resetBBoxNeedsUpdate(),e instanceof g&&e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"}))},rotation(t){let a=Object.keys(t)[0];e.rotation[a]=t[a]*P.DEG2RAD,(void 0!==t.x||void 0!==t.y||void 0!==t.z)&&(e.updateMatrix(),e.resetBBoxNeedsUpdate(),e instanceof g&&e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"}))},scale(t){Object.assign(e.scale,t),(void 0!==t.x||void 0!==t.y||void 0!==t.z)&&(e.updateMatrix(),e.resetBBoxNeedsUpdate(),e instanceof g&&e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"}))},shapeSize(a){e instanceof g&&(e.userData.value={...e.userData.value,...a},(void 0!==a.x||void 0!==a.y||void 0!==a.z)&&(e.updateGeometryInteractions({width:e.userData.value.x,height:e.userData.value.y,depth:e.userData.value.z},t.shared),e.resetBBoxNeedsUpdate(),e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"})))},material(a,r,n){n&&(Object.entries(n).forEach(([a,{start:n,end:o,t:i}])=>{let s=r.getValue(a);e instanceof y&&!Array.isArray(e.material)&&"alpha"===a&&"number"==typeof s&&s>0&&(e.material.transparent=!0),void 0!==s&&se(a,r,n,o,i,t.shared)}),e.dispatchEvent({type:"requestRender"}))},opacity(a){if(e instanceof y&&!Array.isArray(e.material)){let r=e.material.getLayersOfType("light")[0];if(void 0===r)return;e.material.transparent=!0,se("alphaOverride",r,{alphaOverride:a},{alphaOverride:a+1},0,t.shared),e.dispatchEvent({type:"requestRender"})}},light(t,a){(e instanceof n||e instanceof r||e instanceof o)&&(e[t]=a,e.dispatchEvent({type:"requestRender"}))},cloner(e){e.cloner?.update(t),e instanceof g&&e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"})},pathExtrusion(e,a){e.geometry.userData.parameters.extrusion={...e.geometry.userData.parameters.extrusion,...a},e.updateGeometryInteractions({extrusion:{...e.geometry.userData.parameters.extrusion}},t.shared),e.resetBBoxNeedsUpdate(),e.invalidateDownstreamBooleanData(),e.dispatchEvent({type:"requestRender"})},pathSnapping(t){e.userData.pathSnapping={...e.userData.pathSnapping,...t},e.updatePathSnapping(e.userData.pathSnapping),e.dispatchEvent({type:"requestRender"})}}}var fe={type:"beginState"};function ge(e){let t;if(5===e.easing){let{control1:a,control2:r}=e;t=`cubicBezier(\n\t\t\t${a[0]}, ${a[1]}, ${r[0]}, ${r[1]}\n\t\t)`}else if(6===e.easing){let{mass:a,stiffness:r,damping:n,velocity:o}=e;t=`spring( ${a}, ${r}, ${n}, ${o} )`}else{let a;switch(e.easing){case 0:default:a=E.linear;break;case 1:a=E.ease;break;case 2:a=E.easeIn;break;case 3:a=E.easeOut;break;case 4:a=E.easeInOut}let[r,n,o,i]=a;t=`cubicBezier( ${r}, ${n}, ${o}, ${i} )`}return{duration:Math.max(e.duration,1e-4),easing:t}}function me(e){let t={delay:0,loop:-1===e.repeat||e.repeat+1};if(0===e.repeat)t.direction="normal",t.rewind=!1;else switch(e.direction){case"pingpong":t.direction="alternate",t.rewind=!1;break;case"pingpong-rewind":t.direction="alternate",t.rewind=!0;break;default:t.direction="normal",t.rewind=!1}switch(t.delay=0,t.endDelay=0,t.startOnceDelay=0,t.pingPongDelayCorrection=0,t.pingPongEndDelayCorrection=0,e.delayDirection){case"start-once":t.startOnceDelay=e.delay;break;case"start":t.delay=e.delay;break;case"end":t.endDelay=e.delay;break;case"start-end":case void 0:t.delay=e.delay,t.endDelay=e.delay}return"alternate"===t.direction&&(t.delay/=2,t.endDelay/=2,"start"===e.delayDirection?(t.pingPongDelayCorrection=t.delay,"number"==typeof t.loop&&t.loop%2==0&&(t.pingPongEndDelayCorrection=t.delay)):"end"===e.delayDirection?"number"==typeof t.loop&&t.loop%2!=0&&(t.pingPongEndDelayCorrection=t.endDelay):"start-end"===e.delayDirection&&(t.pingPongDelayCorrection=t.delay,t.pingPongEndDelayCorrection=t.endDelay)),t}var ye={type:"completeState",isfromEntity:!1};function be(e,t){let a,r;if("string"==typeof t?(a=t,r=e.states?.[a]):null===t&&(a=null,r=e.data),void 0!==a&&void 0!==r)return{id:a,data:r}}var ve=class{constructor(e,t,a,r,n,o,i){if(this.object=e,this.data=r,this.sharedAssets=n,this.allowSlerp=o,this.page=i,this.targets={t:0},this.firstLoop=!0,this._changeBegan=!1,this._changeCompleted=!0,this.onChange=()=>{this.callback&&(this.callback.update(this.targets.t),this.object.requestRender()),0===this.targets.t||1===this.targets.t?this._changeCompleted||(this._changeCompleted=!0,this._changeBegan=!1,this.onChangeComplete()):(this._changeCompleted&&(this._changeCompleted=!1),this._changeBegan||(this._changeBegan=!0,this.onChangeBegin()))},this.onChangeBegin=()=>{this.object.reversibleToState=this.to.id;let e=this.targets.t>.5?this.from.id:this.to.id;this.object.prevState!==this.object.currentState&&(this.object.prevState=this.object.currentState),this.object.currentState=e,this.object.dispatchEvent({type:"beginState",state:e}),v(this.object)||this.object.traverseEntity(e=>{e!==this.object&&e instanceof u&&e.dispatchEvent(fe)})},this.onChangeComplete=()=>{this.firstLoop&&(this.onFirstLoop(),this.firstLoop=!1),this.object.reversibleToState=this.to.id;let e=this.targets.t<.5?this.from.id:this.to.id;this.object.prevState!==this.object.currentState&&(this.object.prevState=this.object.currentState),this.object.currentState=e,this.object.dispatchEvent({type:"completeState",state:e}),v(this.object)||this.object.traverseEntity(e=>{e!==this.object&&e instanceof u&&e.dispatchEvent(ye)})},this.onFirstLoop=()=>{this.useCurrentState&&(this.callback=ce(this.object,this.from.data,this.to.data,{scene:this.page.scene,shared:this.sharedAssets},this.allowSlerp))},void 0===t){let e=be(this.object,this.object.currentState===a?this.object.prevState:this.object.currentState);if(!e)throw new Error("Missing property");this.from=e}else{let e=be(this.object,t);if(!e)throw new Error("Missing property");this.from=e}if(void 0===a)throw new Error("Missing property");{let e=be(this.object,a);if(!e)throw new Error("Missing property");this.to=e}this.useCurrentState=void 0===t||void 0===a,this.params={targets:this.targets,t:1,autoplay:!1,...me(r),...ge(r),change:this.onChange},this.callback=ce(this.object,void 0===t?{}:this.from.data,void 0===a?{}:this.to.data,{scene:this.page.scene,shared:this.sharedAssets},this.allowSlerp)}get changeBegan(){return this._changeBegan}get changeCompleted(){return this._changeCompleted}};export{re as a,ne as b,de as c,pe as d,he as e,fe as f,ge as g,me as h,ye as i,be as j,ve as k};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as t}from"./runtime-chunk-NTUTXO7Q.js";import{b as e}from"./runtime-chunk-ZLW3UWOA.js";import{a as i,c as r,d as s,e as n,f as a}from"./runtime-chunk-Z5OH244S.js";import{E as h,b as o,k as l,o as d}from"./runtime-chunk-OW6T4XFV.js";import{a as u,b as c}from"./runtime-chunk-ML3Z74BL.js";var p,f,x,g=u((t,e)=>{function i(t,e,r,s){this.message=t,this.expected=e,this.found=r,this.location=s,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,i)}!function(t,e){function i(){this.constructor=t}i.prototype=e.prototype,t.prototype=new i}(i,Error),i.buildMessage=function(t,e){var i,r={literal:function(t){return'"'+n(t.text)+'"'},class:function(t){var e,i="";for(e=0;e<t.parts.length;e++)i+=t.parts[e]instanceof Array?a(t.parts[e][0])+"-"+a(t.parts[e][1]):a(t.parts[e]);return"["+(t.inverted?"^":"")+i+"]"},any:function(t){return"any character"},end:function(t){return"end of input"},other:function(t){return t.description}};function s(t){return t.charCodeAt(0).toString(16).toUpperCase()}function n(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+s(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+s(t)})}function a(t){return t.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+s(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+s(t)})}function h(t){return r[t.type](t)}return"Expected "+function(t){var e,i,r=new Array(t.length);for(e=0;e<t.length;e++)r[e]=h(t[e]);if(r.sort(),r.length>0){for(e=1,i=1;e<r.length;e++)r[e-1]!==r[e]&&(r[i]=r[e],i++);r.length=i}switch(r.length){case 1:return r[0];case 2:return r[0]+" or "+r[1];default:return r.slice(0,-1).join(", ")+", or "+r[r.length-1]}}(t)+" but "+((i=e)?'"'+n(i)+'"':"end of input")+" found."},e.exports={SyntaxError:i,parse:function(t,e){e=void 0!==e?e:{};var r,s={},n={svg_path:xt},a=xt,h=function(t){if(!t)return[];for(var e=[],i=0;i<t.length;i++)e=e.concat.apply(e,t[i]);var r=e[0];return r&&"m"==r.code&&(delete r.relative,r.code="M"),e},o=function(t,e){return function(t,e){if(!e)return[t];for(var i=[t],r=0,s=e.length;r<s;r++)i[r+1]=e[r][1];return i}(t,e)},l=/^[Mm]/,d=ut(["M","m"],!1,!1),u=function(t,e,i){var r=jt(t,[e]);return i&&(r=r.concat(jt("M"==t?"L":"l",i[1]))),r},c=/^[Zz]/,p=ut(["Z","z"],!1,!1),f=function(){return jt("Z")},x=/^[Ll]/,g=ut(["L","l"],!1,!1),m=function(t,e){return jt(t,e)},y=/^[Hh]/,v=ut(["H","h"],!1,!1),w=function(t,e){return jt(t,e.map(function(t){return{x:t}}))},_=/^[Vv]/,S=ut(["V","v"],!1,!1),B=function(t,e){return jt(t,e.map(function(t){return{y:t}}))},b=/^[Cc]/,M=ut(["C","c"],!1,!1),C=function(t,e,i){return{x1:t.x,y1:t.y,x2:e.x,y2:e.y,x:i.x,y:i.y}},k=/^[Ss]/,A=ut(["S","s"],!1,!1),T=function(t,e){return{x2:t.x,y2:t.y,x:e.x,y:e.y}},P=/^[Qq]/,z=ut(["Q","q"],!1,!1),R=function(t,e){return{x1:t.x,y1:t.y,x:e.x,y:e.y}},O=/^[Tt]/,E=ut(["T","t"],!1,!1),H=/^[Aa]/,L=ut(["A","a"],!1,!1),F=function(t,e,i,r,s,n){return{rx:t,ry:e,xAxisRotation:i,largeArc:r,sweep:s,x:n.x,y:n.y}},U=function(t,e){return{x:t,y:e}},N=function(t){return 1*t},j=function(t){return 1*t.join("")},W=/^[01]/,I=ut(["0","1"],!1,!1),D=function(t){return"1"==t},X=function(){return""},V=",",q=dt(",",!1),Y=function(t){return t.join("")},$=".",G=dt(".",!1),Q=/^[eE]/,Z=ut(["e","E"],!1,!1),J=/^[+\-]/,K=ut(["+","-"],!1,!1),tt=/^[0-9]/,et=ut([["0","9"]],!1,!1),it=function(t){return t.join("")},rt=/^[ \t\n\r]/,st=ut([" ","\t","\n","\r"],!1,!1),nt=0,at=[{line:1,column:1}],ht=0,ot=[],lt=0;if("startRule"in e){if(!(e.startRule in n))throw new Error("Can't start parsing from rule \""+e.startRule+'".');a=n[e.startRule]}function dt(t,e){return{type:"literal",text:t,ignoreCase:e}}function ut(t,e,i){return{type:"class",parts:t,inverted:e,ignoreCase:i}}function ct(e){var i,r=at[e];if(r)return r;for(i=e-1;!at[i];)i--;for(r={line:(r=at[i]).line,column:r.column};i<e;)10===t.charCodeAt(i)?(r.line++,r.column=1):r.column++,i++;return at[e]=r,r}function pt(t,e){var i=ct(t),r=ct(e);return{start:{offset:t,line:i.line,column:i.column},end:{offset:e,line:r.line,column:r.column}}}function ft(t){nt<ht||(nt>ht&&(ht=nt,ot=[]),ot.push(t))}function xt(){var t,e,i,r,n;for(t=nt,e=[],i=Et();i!==s;)e.push(i),i=Et();if(e!==s)if(i=function(){var t,e,i,r,n,a;if(t=nt,(e=gt())!==s){for(i=[],r=nt,n=[],a=Et();a!==s;)n.push(a),a=Et();for(n!==s&&(a=gt())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;){for(i.push(r),r=nt,n=[],a=Et();a!==s;)n.push(a),a=Et();n!==s&&(a=gt())!==s?r=n=[n,a]:(nt=r,r=s)}i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),i===s&&(i=null),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?t=e=h(i):(nt=t,t=s)}else nt=t,t=s;else nt=t,t=s;return t}function gt(){var e,i,r,n,a,h;if(e=nt,i=function(){var e,i,r,n,a,h,o;if(e=nt,l.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(d)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s&&(n=bt())!==s?(a=nt,(h=At())===s&&(h=null),h!==s&&(o=yt())!==s?a=h=[h,o]:(nt=a,a=s),a===s&&(a=null),a!==s?e=i=u(i,n,a):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}(),i!==s){for(r=[],n=nt,a=[],h=Et();h!==s;)a.push(h),h=Et();for(a!==s&&(h=mt())!==s?n=a=[a,h]:(nt=n,n=s);n!==s;){for(r.push(n),n=nt,a=[],h=Et();h!==s;)a.push(h),h=Et();a!==s&&(h=mt())!==s?n=a=[a,h]:(nt=n,n=s)}r!==s?e=i=o(i,r):(nt=e,e=s)}else nt=e,e=s;return e}function mt(){var e,i;return c.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(p)),i!==s&&(i=f()),(e=i)===s&&(e=function(){var e,i,r,n;if(e=nt,x.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(g)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s&&(n=yt())!==s?e=i=m(i,n):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,y.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(v)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s&&(n=vt())!==s?e=i=w(i,n):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,_.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(S)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s&&(n=vt())!==s?e=i=B(i,n):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,b.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(M)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?(n=function(){var t,e,i,r,n,a;if(t=nt,(e=wt())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=wt())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=wt())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),n!==s?e=i=m(i,n):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,k.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(A)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?(n=function(){var t,e,i,r,n,a;if(t=nt,(e=_t())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=_t())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=_t())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),n!==s?e=i=m(i,n):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,P.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(z)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?(n=function(){var t,e,i,r,n,a;if(t=nt,(e=St())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=St())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=St())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),n!==s?e=i=m(i,n):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,O.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(E)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?(n=function(){var t,e,i,r,n,a;if(t=nt,(e=bt())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=bt())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=bt())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),n!==s?e=i=m(i,n):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}())===s&&(e=function(){var e,i,r,n;if(e=nt,H.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(L)),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?(n=function(){var t,e,i,r,n,a;if(t=nt,(e=Bt())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=Bt())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=Bt())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}(),n!==s?e=i=m(i,n):(nt=e,e=s)):(nt=e,e=s)}else nt=e,e=s;return e}()),e}function yt(){var t,e,i,r,n,a;if(t=nt,(e=bt())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=bt())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=bt())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}function vt(){var t,e,i,r,n,a;if(t=nt,(e=Ct())!==s){for(i=[],r=nt,(n=At())===s&&(n=null),n!==s&&(a=Ct())!==s?r=n=[n,a]:(nt=r,r=s);r!==s;)i.push(r),r=nt,(n=At())===s&&(n=null),n!==s&&(a=Ct())!==s?r=n=[n,a]:(nt=r,r=s);i!==s?t=e=o(e,i):(nt=t,t=s)}else nt=t,t=s;return t}function wt(){var t,e,i,r,n,a;return t=nt,(e=bt())!==s?((i=At())===s&&(i=null),i!==s&&(r=bt())!==s?((n=At())===s&&(n=null),n!==s&&(a=bt())!==s?t=e=C(e,r,a):(nt=t,t=s)):(nt=t,t=s)):(nt=t,t=s),t}function _t(){var t,e,i,r;return t=nt,(e=bt())!==s?((i=At())===s&&(i=null),i!==s&&(r=bt())!==s?t=e=T(e,r):(nt=t,t=s)):(nt=t,t=s),t}function St(){var t,e,i,r;return t=nt,(e=bt())!==s?((i=At())===s&&(i=null),i!==s&&(r=bt())!==s?t=e=R(e,r):(nt=t,t=s)):(nt=t,t=s),t}function Bt(){var t,e,i,r,n,a,h,o,l,d,u;return t=nt,(e=Mt())!==s?((i=At())===s&&(i=null),i!==s&&(r=Mt())!==s?((n=At())===s&&(n=null),n!==s&&(a=Ct())!==s&&At()!==s&&(h=kt())!==s?((o=At())===s&&(o=null),o!==s&&(l=kt())!==s?((d=At())===s&&(d=null),d!==s&&(u=bt())!==s?t=e=F(e,r,a,h,l,u):(nt=t,t=s)):(nt=t,t=s)):(nt=t,t=s)):(nt=t,t=s)):(nt=t,t=s),t}function bt(){var t,e,i,r;return t=nt,(e=Ct())!==s?((i=At())===s&&(i=null),i!==s&&(r=Ct())!==s?t=e=U(e,r):(nt=t,t=s)):(nt=t,t=s),t}function Mt(){var t;return(t=Pt())===s&&(t=Ot()),t!==s&&(t=N(t)),t}function Ct(){var t,e,i;return t=nt,(e=Rt())===s&&(e=null),e!==s&&(i=Pt())!==s?t=e=[e,i]:(nt=t,t=s),t===s&&(t=nt,(e=Rt())===s&&(e=null),e!==s&&(i=Ot())!==s?t=e=[e,i]:(nt=t,t=s)),t!==s&&(t=j(t)),t}function kt(){var e;return W.test(t.charAt(nt))?(e=t.charAt(nt),nt++):(e=s,0===lt&&ft(I)),e!==s&&(e=D(e)),e}function At(){var t,e,i,r,n;if(t=nt,e=[],(i=Et())!==s)for(;i!==s;)e.push(i),i=Et();else e=s;if(e!==s)if((i=Tt())===s&&(i=null),i!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?t=e=[e,i,r]:(nt=t,t=s)}else nt=t,t=s;else nt=t,t=s;if(t===s){if(t=nt,e=nt,(i=Tt())!==s){for(r=[],n=Et();n!==s;)r.push(n),n=Et();r!==s?e=i=[i,r]:(nt=e,e=s)}else nt=e,e=s;e!==s&&(e=X()),t=e}return t}function Tt(){var e;return 44===t.charCodeAt(nt)?(e=V,nt++):(e=s,0===lt&&ft(q)),e}function Pt(){var e,i,r;return e=nt,i=function(){var e,i,r,n;return e=nt,(i=Ot())===s&&(i=null),i!==s?(46===t.charCodeAt(nt)?(r=$,nt++):(r=s,0===lt&&ft(G)),r!==s&&(n=Ot())!==s?e=i=[i,r,n]:(nt=e,e=s)):(nt=e,e=s),e===s&&(e=nt,(i=Ot())!==s?(46===t.charCodeAt(nt)?(r=$,nt++):(r=s,0===lt&&ft(G)),r!==s?e=i=[i,r]:(nt=e,e=s)):(nt=e,e=s)),e!==s&&(e=Y(e)),e}(),i!==s?((r=zt())===s&&(r=null),r!==s?e=i=[i,r]:(nt=e,e=s)):(nt=e,e=s),e===s&&(e=nt,(i=Ot())!==s&&(r=zt())!==s?e=i=[i,r]:(nt=e,e=s)),e!==s&&(e=Y(e)),e}function zt(){var e,i,r,n;return e=nt,Q.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(Z)),i!==s?((r=Rt())===s&&(r=null),r!==s&&(n=Ot())!==s?e=i=[i,r,n]:(nt=e,e=s)):(nt=e,e=s),e!==s&&(e=Y(e)),e}function Rt(){var e;return J.test(t.charAt(nt))?(e=t.charAt(nt),nt++):(e=s,0===lt&&ft(K)),e}function Ot(){var e,i;if(e=[],tt.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(et)),i!==s)for(;i!==s;)e.push(i),tt.test(t.charAt(nt))?(i=t.charAt(nt),nt++):(i=s,0===lt&&ft(et));else e=s;return e!==s&&(e=it(e)),e}function Et(){var e;return rt.test(t.charAt(nt))?(e=t.charAt(nt),nt++):(e=s,0===lt&&ft(st)),e!==s&&(e=X()),e}var Ht,Lt,Ft,Ut={m:"moveto",l:"lineto",h:"horizontal lineto",v:"vertical lineto",c:"curveto",s:"smooth curveto",q:"quadratic curveto",t:"smooth quadratic curveto",a:"elliptical arc",z:"closepath"};for(var Nt in Ut)Ut[Nt.toUpperCase()]=Ut[Nt];function jt(t,e){e||(e=[{}]);for(var i=e.length;i--;){var r={code:t,command:Ut[t]};for(var s in t==t.toLowerCase()&&(r.relative=!0),e[i])r[s]=e[i][s];e[i]=r}return e}if((r=a())!==s&&nt===t.length)return r;throw r!==s&&nt<t.length&&ft({type:"end"}),Ht=ot,Lt=ht<t.length?t.charAt(ht):null,Ft=ht<t.length?pt(ht,ht+1):pt(ht,ht),new i(i.buildMessage(Ht,Lt),Ht,Lt,Ft)}}}),m=u((t,e)=>{var i=g().parse;i.parseSVG=i,i.makeAbsolute=function(t){var e,i={x:0,y:0},r={x:"x0",y:"y0",x1:"x0",y1:"y0",x2:"x0",y2:"y0"};return t.forEach(function(t){for(var s in"moveto"===t.command&&(e=t),t.x0=i.x,t.y0=i.y,r)s in t&&(t[s]+=t.relative?t[r[s]]:0);"x"in t||(t.x=i.x),"y"in t||(t.y=i.y),t.relative=!1,t.code=t.code.toUpperCase(),"closepath"==t.command&&(t.x=e.x,t.y=e.y),i=t}),t},e.exports=i});function y(){if(!f){if(!p)return Promise.reject(new Error("HanaRenderer: no Hana UI loader registered. Call setHanaUILoader() from the host app before initializing a HanaRenderer."));(f=p()).catch(()=>{f=void 0})}return f}function v(t){x=t}function w(){return p||(p=async()=>async function(t,e){return await t.default(e?{module_or_path:e}:void 0),Object.getOwnPropertyDescriptor(t.Engine.prototype,"scene")||Object.defineProperty(t.Engine.prototype,"scene",{get:function(){let e=Object.create(t.SceneController.prototype);return e.__wbg_ptr=this.__wbg_ptr,e}}),{createEngine:e=>t.Engine.create(e,JSON.parse('{"schema":13,"scenes":[{"fi":0,"id":"32603ebf4-bd9a-54ba-c1e9-6645c3ee7a53","data":{"name":"Page","backgroundColor":[0,0,0,0],"objects":[]}}],"assets":{"images":{},"videos":{},"colors":{},"audios":{},"numbers":{},"booleans":{},"strings":{},"dynamicVariables":{"counters":{},"randoms":{},"timers":{},"times":{}},"fonts":{},"animations":{},"geometries":{},"emojiArt":{}},"publish":{"logo":true,"presentationSizing":"Contain","allowPageScroll":true,"showBackground":true},"framePublish":{},"components":{}}'),!0)}}(await import("./hana-ui.js"),x??function(){let t=typeof process<"u"?"2.0.3":void 0;return`https://cdn.spline.design/@splinetool/runtime${t?`@${t}`:""}/build/hana-ui.wasm`}())),y().then(()=>{})}var _=Math.PI/180;Math.PI;var S,B=1e-10;function b(t,e){let[[i,r],[s,n]]=t,[[a,h],[o,l]]=e,d=(i-s)*(h-l)-(r-n)*(a-o);if(0===d)return!1;let u=((i-a)*(h-l)-(r-h)*(a-o))/d,c=-((i-s)*(r-h)-(r-n)*(i-a))/d;return u>=0&&u<=1&&c>=0&&c<=1}(t=>{function e(t){return[t[0],t[3],t[1],t[4],t[2],t[5]]}t.identity=function(){return[1,0,0,0,1,0,0,0,1]},t.copy=function(e,i=t.identity()){for(let t=0,r=e.length;t<r;t++)i[t]=e[t];return i},t.create=function(e,i,r,s,n,a){return t.setAbcdef(t.identity(),e,i,r,s,n,a)},t.setAbcdef=function(t,e,i,r,s,n,a){return t[0]=e,t[1]=r,t[2]=n,t[3]=i,t[4]=s,t[5]=a,t},t.append=function(i,r){let[s,n,a,h,o,l]=e(i),[d,u,c,p,f,x]=e(r),g=d*s+u*a,m=d*n+u*h,y=c*s+p*a,v=c*n+p*h,w=f*s+x*a+o,_=f*n+x*h+l;return t.create(g,m,y,v,w,_)},t.prepend=function(i,r){let[s,n,a,h,o,l]=e(i),[d,u,c,p,f,x]=e(r),g=s,m=n,y=a,v=h;(1!==d||0!==u||0!==c||1!==p)&&(g=s*d+n*c,m=s*u+n*p,y=a*d+h*c,v=a*u+h*p);let w=o*d+l*c+f,_=o*u+l*p+x;return t.create(g,m,y,v,w,_)},t.getAbcdef=e,t.invert=function(e){let[i,r,s,n,a,h]=t.getAbcdef(e),o=i*n-r*s,l=n/o,d=-r/o,u=-s/o,c=i/o,p=(s*h-n*a)/o,f=-(i*h-r*a)/o;return t.create(l,d,u,c,p,f)},t.apply=function([e,i],r){let[s,n,a,h,o,l]=t.getAbcdef(r);return[s*e+a*i+o,n*e+h*i+l]},t.applyInverse=function(e,i){let[r,s,n,a,h,o]=t.getAbcdef(i),l=1/(r*a+n*-s),[d,u]=e;return[a*l*d+-n*l*u+(o*n-h*a)*l,r*l*u+-s*l*d+(-o*r+h*s)*l]},t.scale=function(e,i,r=i){let[s,n,a,h,o,l]=t.getAbcdef(e);return t.setAbcdef(e,s*i,n*r,a*i,h*r,o*i,l*r),e},t.rotate=function(e,i){let r=Math.cos(i),s=Math.sin(i),[n,a,h,o,l,d]=t.getAbcdef(e);return t.setAbcdef(e,n*r-a*s,n*s+a*r,h*r-o*s,h*s+o*r,l*r-d*s,l*s+d*r),e},t.rotateAround=function(e,i,r){let[s,n]=r,a=t.translate(e,-s,-n);return a=t.rotate(a,i),a=t.translate(a,s,n),a},t.translate=function(e,i,r){let[s,n,a,h,o,l]=t.getAbcdef(e);return t.setAbcdef(e,s,n,a,h,o+i,l+r),e},t.setTranslate=function(e,i,r){let[s,n,a,h]=t.getAbcdef(e);return t.setAbcdef(e,s,n,a,h,i,r),e},t.setPosition=function(e,i,r){let[s,n,a,h]=t.getAbcdef(e);return t.setAbcdef(e,s,n,a,h,i,r),e},t.getScale=function(e){let[i,r,s,n]=t.getAbcdef(e);return[Math.sqrt(i*i+r*r),Math.sqrt(s*s+n*n)]},t.getPosition=function(e){let[,,,,i,r]=t.getAbcdef(e);return[i,r]},t.getRotation=function(e,i){return t.decompose(e,i).rotation},t.decompose=function(e,i){let[r,s,n,a,h,o]=t.getAbcdef(e),{rotation:l,scale:d,shear:u}=function(t){let e=t[0][0],i=t[1][0],r=t[0][1],s=t[1][1],n=Math.sqrt(e*e+i*i),a=n>B?e/n:1,h=n>B?i/n:0,o=a*e+h*i,l=a*s-h*r,d=a*r+h*s;return{rotation:Math.atan2(h,a),scale:[o,l],shear:[Math.abs(l)>B?d/l:0,0]}}([[r,n],[s,a]]);return{position:[h+(i[0]*r+i[1]*n)-i[0],o+(i[0]*s+i[1]*a)-i[1]],scale:d,rotation:l,shear:u,pivot:i}},t.compose=function(e,i,r,s,n=[0,0]){let[a,h]=e,[o,l]=s,[d,u,c,p]=function({rotation:t,scale:e,shear:i}){let r=Math.cos(t),s=Math.sin(t),n=i[0]*e[1],a=i[1]*e[0];return[r*e[0]-s*a,s*e[0]+r*a,r*n-s*e[1],s*n+r*e[1]]}({rotation:r,scale:i,shear:n}),f=a-(o*d+l*c)+o,x=h-(o*u+l*p)+l;return t.create(d,u,c,p,f,x)}})(S||(S={}));var M,C,k,A,T,P=[[-1,1],[-1,-1],[1,-1],[1,1]],z=(t,e,i)=>{let r=t.getCenter(),s=t.getHalfSize(),n=S.append(e,t.worldMatrix);0===s[0]&&0===s[1]?i.push(S.apply(r,n)):P.forEach(t=>{let e=[t[0]*s[0]+r[0],t[1]*s[1]+r[1]];i.push(S.apply(e,n))})},R=class{constructor(){this.matrix=S.identity(),this.min=[1/0,1/0],this.max=[-1/0,-1/0],this.vertices=[],this.edges=[]}setFromObjectSize(t,e=!1){t.updateWorldMatrix(),this.makeEmpty(),S.copy(t.worldMatrix,this.matrix);let i=S.invert(t.worldMatrix);this.expandByObjectSize(t,i,e)}expandByObjectSize(t,e,i=!1){let r=[],s=!0===t.isBaseGroup?t:void 0;!0===i&&void 0!==s?s.traverse(t=>{t.visible&&z(t,e,r)}):z(t,e,r),this.setFromPoints(r)}setFromSize(t,e,i){this.makeEmpty(),S.copy(i,this.matrix),this.expandBySize(t,e,i)}expandBySize(t,e,i){[S.apply([0,0],i),S.apply([0,e],i),S.apply([t,e],i),S.apply([t,0],i)].forEach(t=>this.expandByPoint(t))}getCenter(){let[t,e]=this.min,[i,r]=this.getHalfSize();return S.apply([t+i,e+r],this.matrix)}getSize(){return[this.max[0]-this.min[0],this.max[1]-this.min[1]]}getHalfSize(){return[.5*(this.max[0]-this.min[0]),.5*(this.max[1]-this.min[1])]}makeEmpty(){this.min=[1/0,1/0],this.max=[-1/0,-1/0]}setFromPoints(t){this.makeEmpty();for(let e of t)this.expandByPoint(e)}expandByPoint(t){this.min=[Math.min(this.min[0],t[0]),Math.min(this.min[1],t[1])],this.max=[Math.max(this.max[0],t[0]),Math.max(this.max[1],t[1])]}computeVertices(){let[t,e]=this.getHalfSize(),i=this.getCenter(),[r,s,n,a]=S.getAbcdef(this.matrix),h=S.create(r,s,n,a,i[0],i[1]);this.vertices=P.map(([i,r])=>S.apply([i*t,r*e],h))}computeEdges(){this.edges=[];for(let t=0,e=this.vertices.length;t<e;++t)this.edges.push([this.vertices[t],this.vertices[(t+1)%e]])}project(t,e){let i=this.matrix;return e&&(i=S.append(e.worldMatrix,i)),S.applyInverse(t,i)}intersects(t,e,i){return this.intersectsInLocalSpace(...this.project([t,e],i))}intersectsInLocalSpace(t,e){let{min:i,max:r}=this;return t>=i[0]&&t<=r[0]&&e>=i[1]&&e<=r[1]}containsPoint(t){let[e,i]=t,[r,s]=this.min,[n,a]=this.max;return e>=r&&e<=n&&i>=s&&i<=a}intersectsBBox2D(t){for(let e=0,i=this.edges.length;e<i;e++){let i=this.edges[e];for(let e=0,r=t.edges.length;e<r;e++)if(b(i,t.edges[e]))return!0}for(let e=0,i=t.vertices.length;e<i;e++){let i=t.vertices[e];if(this.containsPoint(i))return!0}return!1}ensureMinMax(){let t=this.min,e=this.max;this.min=[Math.min(t[0],e[0]),Math.min(t[1],e[1])],this.max=[Math.max(t[0],e[0]),Math.max(t[1],e[1])]}copy(t){this.min=[...t.min],this.max=[...t.max],S.copy(t.matrix,this.matrix),this.computeVertices(),this.computeEdges()}clone(){let t=new R;return t.copy(this),t}},O=class{constructor(e,i,r){this.uuid=e,this.data=i,this.isObject2D=!0,this.localMatrix=S.identity(),this.worldMatrix=S.identity(),this.ignoreCameraZoom=!1,this.visible=!0,this._singleBBox=new R,this._recursiveBBox=new R,this.singleBBoxNeedsUpdate=!0,this.recursiveBBoxNeedsUpdate=!0,this.stateSelection=null,this.prevState=null,this.currentState=null,this.reversibleToState=null,this.currentTransitionEvent=null,this.previousAction=null,this.name="",this.position=[0,0],this.scale=[1,1],this.rotation=0,this.shear=[0,0],this.emitter=t(),this.dpr=r.dpr??1,this.dataPatched=i}project(t,e){let i=this.worldMatrix;return e&&(i=S.append(e.worldMatrix,i)),S.applyInverse(t,i)}intersects(t,e,i,r=!1){return this.visible&&!this.data.raycastLock&&this.intersectsInLocalSpace(...this.project([t,e],i),r)}intersectsInLocalSpace(t,e,i=!1){let{min:r,max:s}=i?this.recursiveBBox:this.singleBBox;return t>=r[0]&&t<=s[0]&&e>=r[1]&&e<=s[1]}applyTransforms(t){t.setTransform(this.worldMatrix,this.ignoreCameraZoom)}get singleBBox(){return this.singleBBoxNeedsUpdate&&(this.singleBBoxNeedsUpdate=!1,this._singleBBox.setFromObjectSize(this,!1),this._singleBBox.computeVertices(),this._singleBBox.computeEdges()),this._singleBBox}get recursiveBBox(){return this.recursiveBBoxNeedsUpdate&&(this.recursiveBBoxNeedsUpdate=!1,this._recursiveBBox.setFromObjectSize(this,!0),this._recursiveBBox.computeVertices(),this._recursiveBBox.computeEdges()),this._recursiveBBox}updateLocalMatrix(){this.localMatrix=S.compose(this.position,this.scale,this.rotation*_,a.getPivot(this.dataPatched),this.shear)}updateWorldMatrix(t,e,i){let r=this.parent;e&&null!=r&&r.updateWorldMatrix(t,!0,!1),t&&this.updateLocalMatrix(),this.parent?this.worldMatrix=S.append(this.parent.worldMatrix,this.localMatrix):this.worldMatrix=S.copy(this.localMatrix),this.singleBBoxNeedsUpdate=!0,this.recursiveBBoxNeedsUpdate=!0}get pivot(){return a.getPivot(this.data)}getCenter(){return[0,0]}getHalfSize(){return[0,0]}get id(){return this.uuid}resetBBoxNeedsUpdateSelf(){this.singleBBoxNeedsUpdate=!0,this.recursiveBBoxNeedsUpdate=!0}resetBBoxNeedsUpdate(){this.resetBBoxNeedsUpdateSelf(),this.traverseAncestors(t=>{t.resetBBoxNeedsUpdateSelf()})}updateTransformState(t){let e=!1;void 0!==t.position&&(e=!0,this.position=t.position),void 0!==t.rotation&&(e=!0,this.rotation=t.rotation),void 0!==t.scale&&(e=!0,this.scale=t.scale),void 0!==t.shear&&(e=!0,this.shear=t.shear),e&&(this.updateWorldMatrix(!0,!1,!0),this.resetBBoxNeedsUpdate())}updateByOp(t,i,s){0===t.type&&void 0!==t.props.visible&&(this.visible=t.props.visible),this.data=i,this.data=i;let n=t,a=e(t.path,["states","*"]);if(null!==a){if(0===t.type){let[e]=a;if(this?.stateSelection===e){let e={...t.props};if(delete e.name,Object.values(t.props).some(t=>void 0===t)){let i=this.data;if(void 0!==i){let r=d.zoom(i,t.path.slice(2));if(r)for(let i in t.props)void 0===t.props[i]&&i in r&&(e[i]=r[i])}}n={...t,props:e,path:t.path.slice(2)}}}}else if(0===t.type){let e=this.stateSelection?this.data.states.data(this.stateSelection):void 0;if(void 0!==e){if(void 0!==t.props.name&&e.name){let{name:t,...i}=e;e=i}let i=d.removeOverridden(t.path,t.props,e);n={...t,props:i}}}this.updateByPatchedOpBase(n,r.patch(this.data,this.stateSelection?this.data.states.data(this.stateSelection):void 0),s)}changeSelectedState(t,e,i=!1){if(0!==this.data.states.length||i){for(let t of this.data.states)r.toOps(this.data,t.data).forEach(t=>{let i=l.replaceProps(t,this.data);this.dataPatched=this.data,this.updateByPatchedOp(i,this.data,e)});if(null!==t){let i=this.data.states.data(t);i&&(this.dataPatched=r.patch(this.data,i),r.toOps(this.data,i).forEach(t=>{this.updateByPatchedOp(t,this.dataPatched,e)}))}i&&this.updateTransformState(this.dataPatched),this.stateSelection=t}}updateState(t,e){void 0!==t.name&&(this.name=t.name),void 0!==t.visible&&(this.visible=t.visible),this.updateTransformState(t)}updateByPatchedOpBase(t,e,i){this.dataPatched=e,this.updateByPatchedOp(t,e,i)}updateByPatchedOp(t,e,i){0===t.path.length&&0===t.type&&this.updateState(t.props,i),this.requestRender()}traverseFrameAncestors(t){this.traverseAncestors(e=>{"frame2d"===e.data.type&&t(e)})}traverseAncestors(t){let e=this.parent;for(;e;)t(e),e=e.parent}requestRender(){this.traverseFrameAncestors(t=>{t.requestRender()})}clone(t){let e=new O(this.uuid,this.data,t);return e.parent=void 0,e}addEventListener(t,e){this.emitter.on(t,e)}removeEventListener(t,e){this.emitter.off(t,e)}dispatchEvent(t){this.emitter.emit(t.type,{...t,target:t.target??this})}traverseSortNextHelper(){let t=this.parent;if(t){let e=t.children;if(e){let i=e.indexOf(this)+1;return e[i]?e[i]:t.traverseSortNextHelper()}}}sortNext(){let t=this.children;return t&&t.length>0&&t[0]?t[0]:this.traverseSortNextHelper()}isDescendantOf(t){t instanceof O&&(t=t.uuid);let e=this;for(;e.parent;){if(e.parent.uuid===t)return!0;e=e.parent}return!1}},E=class{constructor(t,e,i){this.uuid=t,this.data=e,this.enabled=!1,this.color=h.transparent,this.blurRadius=0,this.offset=[0,0],this.spread=0,this.update(e)}update(t){void 0!==t.color&&(this.color=t.color),void 0!==t.enabled&&(this.enabled=t.enabled),void 0!==t.blurRadius&&(this.blurRadius=t.blurRadius),void 0!==t.offset&&(this.offset=t.offset),void 0!==t.spread&&(this.spread=t.spread)}},H=class{constructor(t,e,i){this.uuid=t,this.data=e,this.enabled=!1,this.radius=0,this.update(e)}update(t){void 0!==t.enabled&&(this.enabled=t.enabled),void 0!==t.radius&&(this.radius=t.radius)}},L=class{constructor(t,e,i){this.uuid=t,this.data=e,this.enabled=!1,this.color=h.transparent,this.update(e)}update(t){void 0!==t.enabled&&(this.enabled=t.enabled),void 0!==t.color&&(this.color=t.color)}},F=class{constructor(t,e,i){this.uuid=t,this.data=e,this.enabled=!1,this.color=h.transparent,this.thickness=0,this.mode="inside",this.update(e)}update(t){void 0!==t.enabled&&(this.enabled=t.enabled),void 0!==t.color&&(this.color=t.color),void 0!==t.thickness&&(this.thickness=t.thickness),void 0!==t.mode&&(this.mode=t.mode)}},U=class extends O{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.autoClose=!0,this.fill=new L(t+"-fill",e.fill,i),this.stroke=new F(t+"-stroke",e.stroke,i),this.dropShadow=new E(t+"-dropShadow",e.dropShadow,i),this.innerShadow=new E(t+"-innerShadow",e.innerShadow,i),this.backgroundBlur=new H(t+"-backgroundBlur",e.backgroundBlur,i),this.layerBlur=new H(t+"-layerBlur",e.layerBlur,i)}applyFillStroke(t){t.fillColor=this.fill.enabled?this.fill.color:h.transparent,t.strokeColor=this.stroke.enabled&&this.stroke.thickness>0?this.stroke.color:h.transparent,t.strokeMode=this.stroke.mode,t.lineWidth=this.stroke.thickness}applyFilters(t){this.layerBlur.enabled?t.layerBlur=5*this.layerBlur.radius:t.layerBlur=0,this.backgroundBlur.enabled?t.backgroundBlur=5*this.backgroundBlur.radius:t.backgroundBlur=0,this.dropShadow.enabled?(t.dropShadowBlur=5*this.dropShadow.blurRadius,t.dropShadowColor=this.dropShadow.color,t.dropShadowOffsetX=this.dropShadow.offset[0],t.dropShadowOffsetY=this.dropShadow.offset[1]):t.dropShadowColor=h.transparent,this.innerShadow.enabled?(t.innerShadowSpread=this.innerShadow.spread,t.innerShadowBlur=5*this.innerShadow.blurRadius,t.innerShadowColor=this.innerShadow.color,t.innerShadowOffsetX=this.innerShadow.offset[0],t.innerShadowOffsetY=this.innerShadow.offset[1]):t.innerShadowColor=h.transparent}innerDraw(t){}draw(t){!this.visible||(t.save(),this.applyTransforms(t),this.applyFilters(t),this.applyFillStroke(t),t.beginPath(),this.innerDraw(t),this.autoClose&&t.closePath(),this.fill.enabled&&t.fill(),this.stroke.enabled&&t.stroke(),t.restore())}updateByPatchedOp(t,i,r){super.updateByPatchedOp(t,i,r),0===t.type&&(e(t.path,["fill"])?this.fill.update(t.props):e(t.path,["stroke"])?this.stroke.update(t.props):e(t.path,["dropShadow"])?this.dropShadow.update(t.props):e(t.path,["innerShadow"])?this.innerShadow.update(t.props):e(t.path,["layerBlur"])?this.layerBlur.update(t.props):e(t.path,["backgroundBlur"])?this.backgroundBlur.update(t.props):this.resetBBoxNeedsUpdate())}updateState(t,e){super.updateState(t,e),void 0!==t.fill&&this.fill.update(t.fill),void 0!==t.stroke&&this.stroke.update(t.stroke),void 0!==t.dropShadow&&this.dropShadow.update(t.dropShadow),void 0!==t.innerShadow&&this.innerShadow.update(t.innerShadow),void 0!==t.layerBlur&&this.layerBlur.update(t.layerBlur),void 0!==t.backgroundBlur&&this.backgroundBlur.update(t.backgroundBlur)}clone(t){let e=new U(this.uuid,this.data,t);return e.parent=void 0,e}},N=class extends U{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.width=0,this.height=0,this.updateState(e,i)}innerDraw(t){t.ellipse(.5*this.width,.5*this.height,.5*this.width,.5*this.height,0,0,2*Math.PI)}intersectsInLocalSpace(t,e){return function(t,e,i,r,s,n){let a=t-i,h=e-r;return a*a/(s*s)+h*h/(n*n)<=1}(t,e,.5*this.width,.5*this.height,.5*this.width,.5*this.height)}getCenter(){return[.5*this.width,.5*this.height]}getHalfSize(){return[.5*this.width,.5*this.height]}updateSizeState(t){let e=!1;void 0!==t.width&&(this.width="number"==typeof t.width?t.width:this.width,e=!0),void 0!==t.height&&(this.height="number"==typeof t.height?t.height:this.height,e=!0),e&&this.updateWorldMatrix(!0,!1,!0)}updateState(t,e){super.updateState(t,e),this.updateSizeState(t)}clone(t){let e=new N(this.uuid,this.data,t);return e.parent=void 0,e}},j=class extends U{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.width=0,this.height=0,this.cornerRadius=[0,0,0,0],this.updateState(e,i)}innerDraw(t){t.rect(0,0,this.width,this.height,...this.cornerRadius)}getCenter(){return[.5*this.width,.5*this.height]}getHalfSize(){return[.5*this.width,.5*this.height]}updateCornerState(t){void 0!==t.cornerRadius&&(this.cornerRadius=t.cornerRadius)}updateSizeState(t){let e=!1;void 0!==t.width&&(this.width="number"==typeof t.width?t.width:this.width,e=!0),void 0!==t.height&&(this.height="number"==typeof t.height?t.height:this.height,e=!0),e&&this.updateWorldMatrix(!0,!1,!0)}updateState(t,e){super.updateState(t,e),this.updateSizeState(t),this.updateCornerState(t)}clone(t){let e=new j(this.uuid,this.data,t);return e.parent=void 0,e}},W=class extends U{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this._textHeight=0,this._textHeightDirty=!0,this.width=0,this.height=0,this.updateState(e,i)}get textHeight(){return this._textHeight}applyFillStroke(t){t.fillColor=this.fill.enabled?this.fill.color:h.transparent,t.strokeColor=this.stroke.enabled&&this.stroke.thickness>0?this.stroke.color:h.transparent,t.strokeMode="center",t.lineWidth=this.stroke.thickness}innerDraw(t){this._fontHolder?.arrayBuffer&&this._fontHolder.arrayBuffer.byteLength>1&&this.data.font&&t.registerFont(this._fontHolder.arrayBuffer,this.data.font);let e=this.data.textTransform,i=this.data.text.textValue.toString(),r=2===e?i.toUpperCase():3===e?i.toLowerCase():i,{height:s}=t.drawText(r,{x:0,y:0,width:this.width,height:this.height,fontSize:this.data.fontSize,lineHeight:this.data.lineHeight??1,letterSpacing:this.data.letterSpacing??0,horizontalAlign:this.data.horizontalAlign,verticalAlign:this.data.verticalAlign,font:this.data.font});this._textHeight=s}getCenter(){return[.5*this.width,.5*this.height]}getHalfSize(){return[.5*this.width,.5*this.height]}updateSizeState(t){let e=!1;void 0!==t.width&&(this.width="number"==typeof t.width?t.width:this.width,e=!0),void 0!==t.height&&(this.height="number"==typeof t.height?t.height:this.height,e=!0),e&&this.updateWorldMatrix(!0,!1,!0)}updateFontState(t,{shared:e}){void 0!==t.font&&(this._fontHolder=e.getFont(t.font),this._fontHolder&&!this._fontHolder.isLoaded&&this._fontHolder.loadingPromise.then(()=>{this.requestRender()}))}updateState(t,e){super.updateState(t,e),this.updateSizeState(t),this.updateFontState(t,e)}clone(t){let e=new W(this.uuid,this.data,t);return e.parent=void 0,e}},I=class extends U{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.curves=[],this.extremasBBox={min:[0,0],max:[0,0]},this.updateState(e,i)}computeExtremas(){0===this.curves.length&&this.computeCurves();let t=this.curves.map(t=>M.extremas(t)),e=[1/0,1/0],i=[-1/0,-1/0];for(let r=0,s=t.length;r<s;r++){let s=t[r];s[0][0]<e[0]&&(e[0]=s[0][0]),s[0][1]<e[1]&&(e[1]=s[0][1]),s[1][0]>i[0]&&(i[0]=s[1][0]),s[1][1]>i[1]&&(i[1]=s[1][1])}return this.extremasBBox.min=[e[0],e[1]],this.extremasBBox.max=[i[0],i[1]],this.extremasBBox}computeCurves(){this.curves=[];for(let t=1,e=this.data.points.length;t<e;t++){let e=this.data.points[t].data,i=this.data.points[t-1].data,r={start:i.position,cp1:i.controlNext.position,cp2:e.controlPrevious.position,end:e.position};this.curves.push(r)}let t=this.data.points[0].data,e=this.data.points[this.data.points.length-1].data;if(this.data.isClosed){let i={start:e.position,cp1:e.controlNext.position,cp2:t.controlPrevious.position,end:t.position};this.curves.push(i)}}getCenter(){let[t,e]=this.extremasBBox.min,[i,r]=this.getHalfSize();return[t+i,e+r]}getHalfSize(){let{min:t,max:e}=this.extremasBBox;return[.5*(e[0]-t[0]),.5*(e[1]-t[1])]}innerDraw(t){for(let e=0,i=this.data.points.length;e<i;e++){let i=this.data.points[e].data;if(0===e){let[e,r]=i.position;t.moveTo(e,r)}else{let r=this.data.points[e-1].data,[s,n]=r.controlNext.position,[a,h]=i.controlPrevious.position,[o,l]=i.position,d={start:r.position,cp1:r.controlNext.position,cp2:i.controlPrevious.position,end:i.position};M.derive(d),t.bezierCurveTo(s,n,a,h,o,l)}}let e=this.data.points[0].data,i=this.data.points[this.data.points.length-1].data;if(this.data.isClosed){let[r,s]=i.controlNext.position,[n,a]=e.controlPrevious.position,[h,o]=e.position;t.bezierCurveTo(r,s,n,a,h,o)}}updateState(t,e){super.updateState(t,e),this.computeExtremas()}clone(t){let e=new I(this.uuid,this.data,t);return e.parent=void 0,e}};(t=>{function e(t,e,i,r=!1){let s=t-2*e+i;if(0!==s){let r=-Math.sqrt(Math.abs(e*e-t*i)),n=-t+e;return[-(r+n)/s,-(-r+n)/s]}return e!==i&&0===s?[(2*e-i)/(2*(e-i))]:[]}t.derive=function(t){let e=t.start,i=t.cp1,r=t.cp2,s=t.end,n={start:[3*(i[0]-e[0]),3*(i[1]-e[1])],cp:[3*(r[0]-i[0]),3*(r[1]-i[1])],end:[3*(s[0]-r[0]),3*(s[1]-r[1])]};return t.derivative=n,n.derivative=C.derive(n),n},t.droot=function(i){let r=i.derivative??t.derive(i),s=r.start,n=r.cp,a=r.end;return[e(s[0],n[0],a[0]),e(s[1],n[1],a[1])]},t.extremas=function(e){let[i,r]=t.droot(e),s=[e.start[0],e.end[0]],n=[e.start[1],e.end[1]];for(let r of i)s.push(t.compute(e,Math.min(1,Math.max(0,r)))[0]);for(let i of r)n.push(t.compute(e,Math.min(1,Math.max(0,i)))[1]);return s.sort((t,e)=>t-e),n.sort((t,e)=>t-e),[[s[0],n[0]],[s[s.length-1],n[n.length-1]]]},t.compute=function(t,e){if(0===e)return[...t.start];if(1===e)return[...t.end];let i=1-e,r=i*i,s=e*e,n=r*i,a=r*e*3,h=i*s*3,o=e*s;return[n*t.start[0]+a*t.cp1[0]+h*t.cp2[0]+o*t.end[0],n*t.start[1]+a*t.cp1[1]+h*t.cp2[1]+o*t.end[1]]}})(M||(M={})),(k=C||(C={})).derive=function(t){let e=t.start,i=t.cp,r=t.end,s={start:[2*(i[0]-e[0]),2*(i[1]-e[1])],end:[2*(r[0]-i[0]),2*(r[1]-i[1])]};return s.derivative=A.derive(s),t.derivative=s,s},k.droot=function(t){let e=t.derivative??k.derive(t),i=e.start,r=e.end;return[i[0]!==r[0]?i[0]/(i[0]-r[0]):0,i[1]!==r[1]?i[1]/(i[1]-r[1]):0]},k.compute=function(t,e){if(0===e)return[...t.start];if(1===e)return[...t.end];let i=1-e,r=i*i,s=i*e*2,n=e*e;return[r*t.start[0]+s*t.cp[0]+n*t.end[0],r*t.start[1]+s*t.cp[1]+n*t.end[1]]},(T=A||(A={})).derive=function(t){let e=t.start,i=t.end,r=[i[0]-e[0],i[1]-e[1]];return t.derivative=r,t.derivative},T.compute=function(t,e){if(0===e)return[...t.start];if(1===e)return[...t.end];let i=t.start,r=t.end;return[i[0]+(r[0]-i[0])*e,i[1]+(r[1]-i[1])*e]};var D=class extends O{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.context=i,this.isBaseGroup=!0,this.children=[]}add(t){t.parent&&t.parent instanceof D&&t.parent.remove(t),this.children.push(t),t.parent=this}remove(t){let e=this.children.indexOf(t);e>=0&&(this.children.splice(e,1),t.parent=void 0)}traverse(t){let e=t(this);if(!0!==e)for(let i of this.children)i instanceof D?i.traverse(t):e=t(i)}intersectsChildrenHelper(t,e,i,r,s){for(let n of this.children)if(n.intersects(t,e,i,!1)&&(s.push(n),r)||n instanceof D&&n.intersectsChildrenHelper(t,e,i,r,s))return!0;return!1}intersectsChildren(t,e,i,r=!1,s=[],n=!1){return this.intersectsChildrenHelper(t,e,i,r,s),s}intersectsChildrenHelperReverse(t,e,i,r,s){for(let n of this.children)if(n instanceof D&&n.intersectsChildrenHelperReverse(t,e,i,r,s)||n.intersects(t,e,i,!1)&&(s.push(n),r))return!0;return!1}intersectsChildrenReverse(t,e,i,r=!1,s=[],n=!1){return this.intersectsChildrenHelperReverse(t,e,i,r,s),s}updateWorldMatrix(t,e,i){if(super.updateWorldMatrix(t,e,i),i&&this.children)for(let e of this.children)e.updateWorldMatrix(t,!1,!0)}find(t){let e;return this.traverse(i=>{i.uuid===t&&(e=i)}),e}innerDrawChildren(t){for(let e=this.children.length-1;e>=0;e--)this.children[e].draw(t)}resetBBoxNeedsUpdate(){super.resetBBoxNeedsUpdate(),this.traverse(t=>{t.resetBBoxNeedsUpdateSelf()})}clone(t){let e=new D(this.uuid,this.data,t);e.parent=void 0;for(let i of this.children)e.add(i.clone(t));return e}},X=class extends D{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this.updateState(e,i)}draw(t){!this.visible||(t.save(),this.applyTransforms(t),this.innerDrawChildren(t),t.restore())}clone(t){let e=new X(this.uuid,this.data,t);e.parent=void 0;for(let i of this.children)e.add(i.clone(t));return e}},V=class extends D{constructor(t,e,i){super(t,e,i),this.uuid=t,this.width=0,this.height=0,this.clipped=!0,this.background=new j(t+"-background",s.defaultData,i),this.background.parent=this,this.updateState(e,i)}get fill(){return this.background.fill}get stroke(){return this.background.stroke}get backgroundBlur(){return this.background.backgroundBlur}get layerBlur(){return this.background.layerBlur}get dropShadow(){return this.background.dropShadow}get innerShadow(){return this.background.innerShadow}get cornerRadius(){return this.background.cornerRadius}set cornerRadius(t){this.background.cornerRadius=t}updateLocalMatrix(){super.updateLocalMatrix(),this.background?.updateLocalMatrix()}updateWorldMatrix(t,e,i){super.updateWorldMatrix(t,e,i),this.background?.updateWorldMatrix(t,e,i)}draw(t){if(!this.visible)return;t.save();let e=this.width,i=this.height;this.applyTransforms(t),this.background.width=e,this.background.height=i,this.background.draw(t),this.clipped&&t.clipRect(0,0,e,i,...this.cornerRadius),this.innerDrawChildren(t),t.restore()}getCenter(){return[.5*this.width,.5*this.height]}getHalfSize(){return[.5*this.width,.5*this.height]}updateCornerState(t){void 0!==t.cornerRadius&&(this.cornerRadius=t.cornerRadius)}updateSizeState(t){let e=!1;void 0!==t.width&&(this.width="number"==typeof t.width?t.width:this.width,e=!0),void 0!==t.height&&(this.height="number"==typeof t.height?t.height:this.height,e=!0),e&&this.updateWorldMatrix(!0,!1,!0)}updateState(t,e){super.updateState(t,e),this.updateSizeState(t),this.updateCornerState(t),void 0!==t.fill&&this.fill.update(t.fill),void 0!==t.stroke&&this.stroke.update(t.stroke),void 0!==t.dropShadow&&this.dropShadow.update(t.dropShadow),void 0!==t.innerShadow&&this.innerShadow.update(t.innerShadow),void 0!==t.layerBlur&&this.layerBlur.update(t.layerBlur),void 0!==t.backgroundBlur&&this.backgroundBlur.update(t.backgroundBlur),void 0!==t.clipped&&(this.clipped=t.clipped)}requestRender(){super.requestRender(),this.dispatchEvent({type:"render"})}dispose(){this.removeEventListener("render")}updateByPatchedOp(t,i,r){super.updateByPatchedOp(t,i,r),0===t.type&&(e(t.path,["fill"])?this.fill.update(t.props):e(t.path,["stroke"])?this.stroke.update(t.props):e(t.path,["dropShadow"])?this.dropShadow.update(t.props):e(t.path,["innerShadow"])?this.innerShadow.update(t.props):e(t.path,["layerBlur"])?this.layerBlur.update(t.props):e(t.path,["backgroundBlur"])?this.backgroundBlur.update(t.props):this.resetBBoxNeedsUpdate())}clone(t){let e=new V(this.uuid,this.data,t);e.parent=void 0;for(let i of this.children)e.add(i.clone(t));return e}},q=c(m(),1),Y=class extends U{constructor(t,e,i){super(t,e,i),this.uuid=t,this.data=e,this._pathBBox=new DOMRect,this.path="",this.updateState(e,i),this.autoClose=!1,this.computeSVGBBox()}computeSVGBBox(){let t=this.path;$(this.path)&&(console.warn("Invalid SVG path",this.uuid),t="");let e=document.createElementNS("http://www.w3.org/2000/svg","svg"),i=document.createElementNS("http://www.w3.org/2000/svg","path");document.body.appendChild(e),i.setAttribute("d",t),e.appendChild(i),this._pathBBox=i.getBBox(),e.remove()}innerDraw(t){t.path(this.path)}intersectsInLocalSpace(t,e){return t>=this._pathBBox.x&&t<=this._pathBBox.x+this._pathBBox.width&&e>=this._pathBBox.y&&e<=this._pathBBox.y+this._pathBBox.height}getCenter(){return[(this._pathBBox.x+this._pathBBox.width)/2,(this._pathBBox.y+this._pathBBox.height)/2]}getHalfSize(){return[(this._pathBBox.x+this._pathBBox.width)/2,(this._pathBBox.y+this._pathBBox.height)/2]}updateState(t,e){super.updateState(t,e),void 0!==t.path&&(this.path=t.path,this.computeSVGBBox())}clone(t){let e=new Y(this.uuid,this.data,t);return e.parent=void 0,e}};function $(t){return/NaN/.test(t)}function G(t,e=1,i=1){if(e<=0||i<=0)return t;if($(t))return console.warn("Cannot scale invalid path",t),Q([]);try{return Q((0,q.parseSVG)(t).map(t=>{let r={...t};return"x"in r&&(r.x=r.x*e),"y"in r&&(r.y=r.y*i),"x1"in r&&(r.x1=r.x1*e),"x2"in r&&(r.x2=r.x2*e),"y1"in r&&(r.y1=r.y1*i),"y2"in r&&(r.y2=r.y2*i),"rx"in r&&(r.rx=r.rx*e),"ry"in r&&(r.ry=r.ry*i),r}))}catch(t){return console.warn("Error parsing SVG path",t),Q([])}}function Q(t){let e,i=["rx","ry","xAxisRotation","largeArc","sweep","x1","y1","x2","y2","x","y"];return t.map(t=>{let r=[];i.forEach(e=>{if(e in t){let i=1*t[e];r.length&&i>=0&&r.push(","),r.push(i)}});let s=(e===t.code?r[0]<0?"":",":t.code)+r.join("");return e=t.code,s}).join("")}var Z=class{constructor(t,e,i){this.uuid=t,this.data=e,this.group=new X(Z.GROUP_ID,{...n.defaultData},i),this.createChildrenObjects(e.objects,this.group,i)}createObject(t,e,i,r,s,n){let a=function(t,e,i){switch(e.type){case"ellipse2d":return new N(t,e,i);case"rectangle2d":return new j(t,e,i);case"text2d":return new W(t,e,i);case"vector2d":return new I(t,e,i);case"path2d":return new Y(t,e,i);case"frame2d":return new V(t,e,i);default:return new X(t,e,i)}}(t,e,n);a&&(r.add(a),r.children.splice(s,0,r.children.pop()),a.updateWorldMatrix(),i.length>0&&(a instanceof X||a instanceof V)&&this.createChildrenObjects(i,a,n))}createChildrenObjects(t,e,i){let r=0;for(let s of t)this.createObject(s.id,s.data,s.children,e,r,i),r+=1}draw(t){this.group.draw(t)}updateEntityByOp(t,e,i,r){let s=this.find(t);if(s)try{s.updateByOp(e,i,{shared:r})}catch(t){console.error(t)}}updateTreeByOp(t,e){if(0===t.path.length&&7===t.type){let i=null===t.parent?this.group:this.find(t.parent);void 0!==i&&i instanceof D&&(this.createObject(t.id,t.data,t.children,i,t.localIndex,e),i.requestRender())}else if(0===t.path.length&&8===t.type){let e=this.find(t.id);if(void 0!==e&&void 0!==e.parent&&e.parent instanceof D){let t=e.parent;e.resetBBoxNeedsUpdate(),t?.remove(e),t?.requestRender()}}else if(0===t.path.length&&9===t.type){let e=this.find(t.id);if(void 0!==e){let r=e.parent,s=null===t.parent?this:this.find(t.parent);if(void 0===s&&i&&console.error("unexpected",s,t),s instanceof D||s===this){s.add(e);let i=t.localIndex;s.children.splice(i,0,s.children.pop()),e.updateWorldMatrix(!0,!1,!0),r?.requestRender(),e.requestRender()}e.resetBBoxNeedsUpdate()}}}add(t){this.group.add(t)}remove(t){this.group.remove(t)}traverse(t){this.group.traverse(e=>{e!==this.group&&t(e)})}intersectsChildren(t,e,i,r=!1,s=[]){return this.group.intersectsChildren(t,e,i,r,s,!0)}intersectsChildrenReverse(t,e,i,r=!1,s=[]){return this.group.intersectsChildrenReverse(t,e,i,r,s,!0)}find(t){return this.group.find(t)}get children(){return this.group.children}project(t,e){return this.group.project(t,e)}getWithSortKey(t){let e=this.find(t);if(void 0===e)return;let i=[],r=e;for(;r!==this.group;){let t=r;r=r.parent;let e=r.children.indexOf(t);i.splice(0,0,e)}return{entity:e,sortKey:i}}getAllSorted(t){let e=[];for(let i of t){let t=this.getWithSortKey(i.id);void 0!==t&&e.push(t)}return e.sort((t,e)=>o(t.sortKey,e.sortKey)),e.map(t=>t.entity)}},J=Z;J.GROUP_ID="scene2d";var K=c(m(),1);function tt(t,e,i,r,s,n,a,h,o,l){if(e===o&&i===l)return;if(r=Math.abs(r),s=Math.abs(s),0===r||0===s)return void t.push({LineTo:{x:o,y:l}});let d=n*Math.PI/180,u=Math.cos(d),c=Math.sin(d),p=(e-o)/2,f=(i-l)/2,x=u*p+c*f,g=-c*p+u*f,m=x*x/(r*r)+g*g/(s*s);if(m>1){let t=Math.sqrt(m);r*=t,s*=t}let y=r*r,v=s*s,w=y*v-y*g*g-v*x*x,_=y*g*g+v*x*x,S=(a!==h?1:-1)*Math.sqrt(Math.max(0,w/_)),B=S*(r*g)/s,b=S*(-s*x)/r,M=u*B-c*b+(e+o)/2,C=c*B+u*b+(i+l)/2,k=Math.atan2((g-b)/s,(x-B)/r),A=Math.atan2((-g-b)/s,(-x-B)/r)-k;!h&&A>0?A-=2*Math.PI:h&&A<0&&(A+=2*Math.PI);let T=Math.max(1,Math.ceil(Math.abs(A)/(Math.PI/2))),P=A/T,z=4/3*Math.tan(P/4),R=k,O=e,E=i;for(let e=0;e<T;e++){let e=R+P,i=Math.cos(R),n=Math.sin(R),a=Math.cos(e),h=Math.sin(e),o=M+r*a*u-s*h*c,l=C+r*a*c+s*h*u,d=-r*n*u-s*i*c,p=-r*n*c+s*i*u,f=-r*h*u-s*a*c,x=-r*h*c+s*a*u;t.push({CurveTo:[{x:O+z*d,y:E+z*p},{x:o-z*f,y:l-z*x},{x:o,y:l}]}),R=e,O=o,E=l}}var et=.5522847498307936,it=3408/2816,rt=1536/2816,st=!1;function nt(){st||(st=!0,console.warn("[HanaRenderer] clipRect: precise clipping of rotated/complex content is not supported by the Hana UI overlay yet; drawing unclipped. (Axis-aligned rectangles are clipped geometrically.)"))}var at=class{constructor(t,e=1){this.canvas=t,this._dpr=e,this._width=0,this._height=0,this._isSizeDirty=!1,this._crashed=!1,this._shapes=[],this._lastPushedJSON="",this._ctm=S.identity(),this._stack=[],this._clips=[],this._pathEls=[],this._simpleShape=null,this._pathPrimitives=0,this._fillColor=h.transparent,this._strokeColor=h.transparent,this._lineWidth=1,this._strokeMode="inside",this._layerBlur=0,this._backgroundBlur=0,this._dropShadowBlur=0,this._dropShadowOffsetX=0,this._dropShadowOffsetY=0,this._dropShadowColor=h.transparent,this._innerShadowBlur=0,this._innerShadowOffsetX=0,this._innerShadowOffsetY=0,this._innerShadowSpread=0,this._innerShadowColor=h.transparent,this._fonts=new Map,this._fontsFlushed=new Set,this._fontXPerEm=new Map,this._measureCache=new Map;try{let i=t.getBoundingClientRect();t.width=i.width*e,t.height=i.height*e}catch{console.log(t.width,e)}}get dpr(){return this._dpr}set dpr(t){this._dpr=t,this._isSizeDirty=!0}get width(){return this._width}get height(){return this._height}async init(){if(!this._engine&&!this._crashed){try{this._context=await y(),this._engine=await this._context.createEngine(this.canvas)}catch(t){return this._crashed=!0,void console.error("[HanaRenderer] Failed to load the Hana UI engine; UI scenes will not render.",t)}if(this._width>0&&this._height>0)this._syncViewport();else{let t=this.canvas.getBoundingClientRect();t.width>0&&t.height>0&&(this._width=t.width,this._height=t.height,this._syncViewport())}this._flushFonts()}}_syncViewport(){let t=this._engine;if(!t||this._crashed)return;let e=this._width,i=this._height;this.canvas.style.width=e+"px",this.canvas.style.height=i+"px",this.canvas.width=Math.max(1,Math.ceil(e*this._dpr)),this.canvas.height=Math.max(1,Math.ceil(i*this._dpr)),this._guard(()=>{t.resize([e,i],this._dpr),t.scene.updateCamera({position:[e/2,i/2],zoom:1})})}setSize(t,e){!this._isSizeDirty&&t===this._width&&e===this._height||(this._isSizeDirty=!1,this._width=t,this._height=e,this._engine?this._syncViewport():(this.canvas.style.width=t+"px",this.canvas.style.height=e+"px",this.canvas.width=Math.max(1,Math.ceil(t*this._dpr)),this.canvas.height=Math.max(1,Math.ceil(e*this._dpr))))}_guard(t){if(!this._crashed)try{t()}catch(t){this._crashed=!0,console.error("[HanaRenderer] Hana engine call failed; disabling this renderer instance.",t)}}async loadFont(t,e){try{let i=await fetch(t);if(!i.ok)return void console.error(`[HanaRenderer] loadFont: ${t} returned HTTP ${i.status}; skipping "${e}"`);let r=await i.arrayBuffer();if(0===r.byteLength)return void console.error(`[HanaRenderer] loadFont: ${t} was empty; skipping "${e}"`);this.registerFont(r,e)}catch(i){console.error(`[HanaRenderer] loadFont failed for "${e}" (${t}):`,i)}}registerFont(t,e){if(this._fonts.has(e))return;this._fonts.set(e,t);let i=function(t){try{let e=new DataView(t),i=e.getUint32(0);if(65536!==i&&1330926671!==i&&1953658213!==i)return;let r=e.getUint16(4),s=-1,n=-1;for(let t=0;t<r;t++){let i=12+16*t,r=e.getUint32(i);1751474532===r&&(s=e.getUint32(i+8)),1330851634===r&&(n=e.getUint32(i+8))}if(s<0||n<0)return;let a=e.getUint16(s+18),h=e.getUint16(n);if(0===a||h<2)return;let o=e.getInt16(n+86);return o>0?o/a:void 0}catch{return}}(t);void 0!==i&&this._fontXPerEm.set(e,i),this._flushFonts()}_flushFonts(){let t=this._engine;if(t)for(let[e,i]of this._fonts)this._fontsFlushed.has(e)||(this._fontsFlushed.add(e),this._guard(()=>{t.scene.addLocalFont(e,new Uint8Array(i))}))}set strokeColor(t){this._strokeColor=t}set fillColor(t){this._fillColor=t}set lineWidth(t){this._lineWidth=t}set strokeMode(t){this._strokeMode=t}set dropShadowBlur(t){this._dropShadowBlur=t}set dropShadowColor(t){this._dropShadowColor=t}set dropShadowOffsetX(t){this._dropShadowOffsetX=t}set dropShadowOffsetY(t){this._dropShadowOffsetY=t}set innerShadowBlur(t){this._innerShadowBlur=t}set innerShadowColor(t){this._innerShadowColor=t}set innerShadowOffsetX(t){this._innerShadowOffsetX=t}set innerShadowOffsetY(t){this._innerShadowOffsetY=t}set innerShadowSpread(t){this._innerShadowSpread=t}set layerBlur(t){this._layerBlur=t}set backgroundBlur(t){this._backgroundBlur=t}save(){this._stack.push({ctm:S.copy(this._ctm),clipLen:this._clips.length})}restore(){let t=this._stack.pop();!t||(this._ctm=t.ctm,this._clips.length=t.clipLen)}setTransform(t,e=!1){let i=S.identity();if(this.camera?.enabled&&(i=S.append(i,this.camera.worldMatrix),e)){let t=S.getScale(this.camera.worldMatrix);i=S.scale(i,1/t[0],1/t[1])}this._ctm=S.append(i,t)}transform(t){this._ctm=S.append(this._ctm,t)}beginPath(){this._pathEls=[],this._simpleShape=null,this._pathPrimitives=0}closePath(){0!==this._pathEls.length&&"ClosePath"!==this._pathEls[this._pathEls.length-1]&&this._pathEls.push("ClosePath")}_startFreeform(){this._simpleShape=null,this._pathPrimitives++}moveTo(t,e){this._startFreeform(),this._pathEls.push({MoveTo:{x:t,y:e}})}lineTo(t,e){this._startFreeform(),this._pathEls.push({LineTo:{x:t,y:e}})}bezierCurveTo(t,e,i,r,s,n){this._startFreeform(),this._pathEls.push({CurveTo:[{x:t,y:e},{x:i,y:r},{x:s,y:n}]})}quadraticCurveTo(t,e,i,r){this._startFreeform(),this._pathEls.push({QuadTo:[{x:t,y:e},{x:i,y:r}]})}path(t){this._startFreeform(),this._pathEls.push(...function(t){let e,i=[];try{e=(0,K.makeAbsolute)((0,K.parseSVG)(t))}catch(t){return console.error("[HanaRenderer] Failed to parse SVG path:",t),i}let r=0,s=0,n=0,a=0,h=null,o=null;for(let t of e){let e=null,l=null;switch(t.code){case"M":r=n=t.x,s=a=t.y,i.push({MoveTo:{x:r,y:s}});break;case"L":r=t.x,s=t.y,i.push({LineTo:{x:r,y:s}});break;case"H":r=t.x,i.push({LineTo:{x:r,y:s}});break;case"V":s=t.y,i.push({LineTo:{x:r,y:s}});break;case"C":{let n={x:t.x1,y:t.y1},a={x:t.x2,y:t.y2};r=t.x,s=t.y,i.push({CurveTo:[n,a,{x:r,y:s}]}),e=a;break}case"S":{let n=h?{x:2*r-h.x,y:2*s-h.y}:{x:r,y:s},a={x:t.x2,y:t.y2};r=t.x,s=t.y,i.push({CurveTo:[n,a,{x:r,y:s}]}),e=a;break}case"Q":{let e={x:t.x1,y:t.y1};r=t.x,s=t.y,i.push({QuadTo:[e,{x:r,y:s}]}),l=e;break}case"T":{let e=o?{x:2*r-o.x,y:2*s-o.y}:{x:r,y:s};r=t.x,s=t.y,i.push({QuadTo:[e,{x:r,y:s}]}),l=e;break}case"A":{let e=r,n=s;r=t.x,s=t.y,tt(i,e,n,t.rx,t.ry,t.xAxisRotation,t.largeArc,t.sweep,r,s);break}case"Z":r=n,s=a,i.push("ClosePath")}h=e,o=l}return i}(t))}rect(t,e,i,r,s=0,n=0,a=0,h=0){if(!ut([t,e,i,r]))return;let o={x:t,y:e,w:i,h:r,radii:[s,n,a,h]};this._pathPrimitives++,this._simpleShape=1===this._pathPrimitives&&0===this._pathEls.length?{kind:"rect",rect:o,smoothing:0}:null,xt(this._pathEls,o)}ellipse(t,e,i,r,s,n,a,h){if(ut([t,e,i,r])){if(i<0||r<0)throw Error("radii cannot be negative");this._pathPrimitives++,this._simpleShape=1===this._pathPrimitives&&0===this._pathEls.length?{kind:"ellipse",cx:t,cy:e,rx:i,ry:r}:null,function(t,e,i,r,s){let n=r*et,a=s*et;t.push({MoveTo:{x:e+r,y:i}},{CurveTo:[{x:e+r,y:i+a},{x:e+n,y:i+s},{x:e,y:i+s}]},{CurveTo:[{x:e-n,y:i+s},{x:e-r,y:i+a},{x:e-r,y:i}]},{CurveTo:[{x:e-r,y:i-a},{x:e-n,y:i-s},{x:e,y:i-s}]},{CurveTo:[{x:e+n,y:i-s},{x:e+r,y:i-a},{x:e+r,y:i}]},"ClosePath")}(this._pathEls,t,e,i,r)}}clipRect(t,e,i,r,s=0,n=0,a=0,h=0){let o=S.invert(this._ctm);!o||this._clips.push({m:S.copy(this._ctm),inv:o,rect:{x:t,y:e,w:i,h:r,radii:[s,n,a,h]}})}fill(){this._emit(!0)}stroke(){this._strokeColor.a<=0||this._lineWidth<=0||this._emit(!1)}_emit(t){let e=this._effectChain(t);if(t&&this._fillColor.a<=0&&!e)return;let i=this._classifyShape();if(!i)return;let r=this._applyClips(i);if("skip"===r)return;if(!t&&r!==i){let t=pt(i);if(t)return void this._emitClippedRectStroke(t,e)}i=r;let s={shape:i,color:t?dt(this._fillColor):[0,0,0,0],transform:S.getAbcdef(this._ctm)};t||(s.stroke=this._strokeDesc()),e&&(s.effect_chain=e),this._shapes.push(s)}_emitClippedRectStroke(t,e){let i=this._lineWidth,r="outside"===this._strokeMode?i:"center"===this._strokeMode?i/2:0,s=i-r,n=Math.min(t.w,t.h)/2,a=t.radii.map(t=>Math.max(0,Math.min(t,n))),h={x:t.x-r,y:t.y-r,w:t.w+2*r,h:t.h+2*r,radii:a.map(t=>t>0?t+r:0)},o=t.w-2*s,l=t.h-2*s,d=o>0&&l>0?{x:t.x+s,y:t.y+s,w:o,h:l,radii:a.map(t=>Math.max(0,t-s))}:null,u=this._applyClips(ct(h,0));if("skip"===u)return;let c=pt(u)??h,p=null;if(d){let t=this._applyClips(ct(d,0));p="skip"===t?null:pt(t)??d}let f=[];xt(f,c),p&&function(t,e){let{x:i,y:r,w:s,h:n}=e,a=Math.min(s,n)/2,[h,o,l,d]=e.radii.map(t=>Math.max(0,Math.min(t,a)));if(0===h&&0===o&&0===l&&0===d)return void t.push({MoveTo:{x:i,y:r}},{LineTo:{x:i,y:r+n}},{LineTo:{x:i+s,y:r+n}},{LineTo:{x:i+s,y:r}},"ClosePath");let u=1-et;t.push({MoveTo:{x:i+h,y:r}}),h>0&&t.push({CurveTo:[{x:i+h*u,y:r},{x:i,y:r+h*u},{x:i,y:r+h}]}),t.push({LineTo:{x:i,y:r+n-d}}),d>0&&t.push({CurveTo:[{x:i,y:r+n-d*u},{x:i+d*u,y:r+n},{x:i+d,y:r+n}]}),t.push({LineTo:{x:i+s-l,y:r+n}}),l>0&&t.push({CurveTo:[{x:i+s-l*u,y:r+n},{x:i+s,y:r+n-l*u},{x:i+s,y:r+n-l}]}),t.push({LineTo:{x:i+s,y:r+o}}),o>0&&t.push({CurveTo:[{x:i+s,y:r+o*u},{x:i+s-o*u,y:r},{x:i+s-o,y:r}]}),t.push("ClosePath")}(f,p);let x={shape:{Custom:f},color:dt(this._strokeColor),transform:S.getAbcdef(this._ctm)};e&&(x.effect_chain=e),this._shapes.push(x)}_classifyShape(){let t=this._simpleShape;return t?"rect"===t.kind?ct(t.rect,t.smoothing):{Ellipse:{center_x:t.cx,center_y:t.cy,rx:t.rx,ry:t.ry}}:0===this._pathEls.length?null:{Custom:this._pathEls.slice()}}_strokeDesc(){return{width:this._lineWidth,line_join:"Miter",color:dt(this._strokeColor),align:ht[this._strokeMode],cap:"Butt"}}_effectChain(t){let e=this.camera?.scale??1,i=[];if(t&&this._dropShadowColor.a>0&&i.push({DropShadow:{position:[this._dropShadowOffsetX*e,this._dropShadowOffsetY*e],blur:{Uniform:{size:2*this._dropShadowBlur*e}},spread:0,color:dt(this._dropShadowColor)}}),t&&this._backgroundBlur>0){let[t,e]=S.getScale(this._ctm),r=(t+e)/2;i.push({BackgroundBlur:{blur:{Uniform:{size:2*this._backgroundBlur*r}}}})}if(this._layerBlur>0&&i.push({LayerBlur:{blur:{Uniform:{size:2*this._layerBlur*e}}}}),t&&this._innerShadowColor.a>0){let[t,r,s,n]=S.getAbcdef(this._ctm),a=this._innerShadowOffsetX,h=this._innerShadowOffsetY;i.push({InnerShadow:{position:[t*a+s*h,r*a+n*h],blur:{Uniform:{size:2*this._innerShadowBlur*e}},spread:this._innerShadowSpread*e,color:dt(this._innerShadowColor)}})}return i.length>0?i:void 0}_applyClips(t){if(0===this._clips.length)return t;let e=t;for(let t of this._clips){let i=S.append(t.inv,this._ctm),[r,s,n,a,h,o]=S.getAbcdef(i),l=Math.abs(s)<=1e-6*(Math.abs(r)+Math.abs(a))&&Math.abs(n)<=1e-6*(Math.abs(r)+Math.abs(a)),d=ft(e);if(!d)return e;if(!l){nt();continue}let u=r*d.minX+h,c=r*d.maxX+h,p=a*d.minY+o,f=a*d.maxY+o,x=Math.min(u,c),g=Math.max(u,c),m=Math.min(p,f),y=Math.max(p,f),v=t.rect,w=Math.max(x,v.x),_=Math.max(m,v.y),B=Math.min(g,v.x+v.w),b=Math.min(y,v.y+v.h);if(w>=B||_>=b)return"skip";if(w===x&&_===m&&B===g&&b===y)continue;let M=pt(e);if(!M||0===r||0===a){nt();continue}let C=(w-h)/r,k=(B-h)/r,A=(_-o)/a,T=(b-o)/a,P=Math.min(C,k),z=Math.min(A,T),R=Math.abs(k-C),O=Math.abs(T-A),[E,H,L,F]=M.radii,U=P!==M.x,N=z!==M.y,j=P+R!==M.x+M.w,W=z+O!==M.y+M.h,I=Math.min(R,O)/2;e=ct({x:P,y:z,w:R,h:O,radii:[U||N?0:Math.min(E,I),j||N?0:Math.min(H,I),j||W?0:Math.min(L,I),U||W?0:Math.min(F,I)]},0)}return e}drawText(t,e){let i=this._fontXPerEm.get(e.font),r=i?i/rt:1,s={TextSimple:{text:t,font_size:e.fontSize*it*r,size:[e.width,e.height],horizontal_align:ot[e.horizontalAlign]??"Left",vertical_align:lt[e.verticalAlign]??"Top"}},n=this._effectChain(!0),a=this._fillColor.a>0,h=this._strokeColor.a>0&&this._lineWidth>0;if(a||h||n){let t={shape:s,color:a?dt(this._fillColor):[0,0,0,0],transform:S.getAbcdef(S.append(this._ctm,S.translate(S.identity(),e.x,e.y)))};h&&(t.stroke=this._strokeDesc()),n&&(t.effect_chain=n),this._shapes.push(t)}return{height:this._measureTextHeight(t,e)}}_measureTextHeight(t,e){let i=`${e.font}|${e.fontSize}|${e.lineHeight}|${e.letterSpacing}|${e.width}|${t}`,r=this._measureCache.get(i);if(void 0!==r)return r;let s=0,n=this._engine;if(n&&!this._crashed&&this._fontsFlushed.has(e.font))try{let[,i]=n.scene.measureTextNaturalSize({size:[e.width,e.height],text:t,fontSize:e.fontSize,horizontalAlign:ot[e.horizontalAlign]??"Left",verticalAlign:lt[e.verticalAlign]??"Top",lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,textTransform:"None",font:e.font,version:0,autoSize:"None",truncate:"None"});s=i}catch{}if(!(s>0)){let i=.55*e.fontSize+Math.max(0,e.letterSpacing),r=Math.max(1,Math.floor(e.width/i)),n=0;for(let e of t.split("\n"))n+=Math.max(1,Math.ceil(e.length/r));s=n*e.fontSize*e.lineHeight}return this._measureCache.size>512&&this._measureCache.clear(),this._measureCache.set(i,s),s}clear(){this._shapes=[],this._ctm=S.identity(),this._stack.length=0,this._clips.length=0}render(){let t=this._engine;if(!t||this._crashed)return;let e=JSON.stringify(this._shapes);e!==this._lastPushedJSON&&(this._guard(()=>t.scene.updateUiShapes(this._shapes)),this._lastPushedJSON=e),this._guard(()=>t.onFrame())}},ht={inside:"Inside",outside:"Outside",center:"Center"},ot={1:"Left",2:"Right",3:"Center",4:"Justify"},lt={1:"Top",2:"Center",3:"Bottom"};function dt({r:t,g:e,b:i,a:r}){return[t,e,i,r]}function ut(t){for(let e=0;e<t.length;e++)if(void 0!==t[e]&&!Number.isFinite(t[e]))return!1;return!0}function ct(t,e){let[i,r,s,n]=t.radii;return 0===i&&0===r&&0===s&&0===n?{Rectangle:{x:t.x,y:t.y,width:t.w,height:t.h}}:{RoundedRectangle:{x:t.x,y:t.y,width:t.w,height:t.h,radius:[i,r,s,n],corner_smoothing:e}}}function pt(t){if("Rectangle"in t){let e=t.Rectangle;return{x:e.x,y:e.y,w:e.width,h:e.height,radii:[0,0,0,0]}}if("RoundedRectangle"in t){let e=t.RoundedRectangle;return{x:e.x,y:e.y,w:e.width,h:e.height,radii:[e.radius[0],e.radius[1],e.radius[2],e.radius[3]]}}return null}function ft(t){let e=pt(t);if(e)return{minX:e.x,minY:e.y,maxX:e.x+e.w,maxY:e.y+e.h};if("Ellipse"in t){let e=t.Ellipse;return{minX:e.center_x-e.rx,minY:e.center_y-e.ry,maxX:e.center_x+e.rx,maxY:e.center_y+e.ry}}if("TextSimple"in t){let e=t.TextSimple;return{minX:0,minY:0,maxX:e.size[0],maxY:e.size[1]}}if("Custom"in t){let e=1/0,i=1/0,r=-1/0,s=-1/0,n=t=>{t.x<e&&(e=t.x),t.y<i&&(i=t.y),t.x>r&&(r=t.x),t.y>s&&(s=t.y)};for(let e of t.Custom)"ClosePath"!==e&&("MoveTo"in e?n(e.MoveTo):"LineTo"in e?n(e.LineTo):"QuadTo"in e?e.QuadTo.forEach(n):"CurveTo"in e&&e.CurveTo.forEach(n));return e===1/0?null:{minX:e,minY:i,maxX:r,maxY:s}}return null}function xt(t,e){let{x:i,y:r,w:s,h:n}=e,a=Math.min(s,n)/2,[h,o,l,d]=e.radii.map(t=>Math.max(0,Math.min(t,a)));if(0===h&&0===o&&0===l&&0===d)return void t.push({MoveTo:{x:i,y:r}},{LineTo:{x:i+s,y:r}},{LineTo:{x:i+s,y:r+n}},{LineTo:{x:i,y:r+n}},"ClosePath");let u=1-et;t.push({MoveTo:{x:i+h,y:r}}),t.push({LineTo:{x:i+s-o,y:r}}),o>0&&t.push({CurveTo:[{x:i+s-o*u,y:r},{x:i+s,y:r+o*u},{x:i+s,y:r+o}]}),t.push({LineTo:{x:i+s,y:r+n-l}}),l>0&&t.push({CurveTo:[{x:i+s,y:r+n-l*u},{x:i+s-l*u,y:r+n},{x:i+s-l,y:r+n}]}),t.push({LineTo:{x:i+d,y:r+n}}),d>0&&t.push({CurveTo:[{x:i+d*u,y:r+n},{x:i,y:r+n-d*u},{x:i,y:r+n-d}]}),t.push({LineTo:{x:i,y:r+h}}),h>0&&t.push({CurveTo:[{x:i,y:r+h*u},{x:i+h*u,y:r},{x:i+h,y:r}]}),t.push("ClosePath")}function gt({constraints:t,newParentWidth:e,newParentHeight:i,initialParentWidth:r,initialParentHeight:s,objectInitialWidth:n,objectInitialHeight:a,objectInitialPosition:h}){let{horizontalConstraint:o,verticalConstraint:l}=t,d=e-r,u=i-s,c=n,p=a,f=h[0],x=h[1];if(0!==o)if(1===o)f+=d;else if(3===o)f+=d/2;else if(2===o)c=Math.max(1,c+d);else if(4===o){let t=e/r;c*=t,f*=t}if(0!==l)if(1===l)x+=u;else if(3===l)x+=u/2;else if(2===l)p=Math.max(1,p+u);else if(4===l){let t=i/s;p*=t,x*=t}return{width:c,height:p,position:[f,x]}}c(m(),1);export{S as a,v as b,w as c,at as d,U as e,N as f,j as g,W as h,X as i,V as j,Y as k,G as l,J as m,gt as n};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as t}from"./runtime-chunk-2PT2WH66.js";import{g as e}from"./runtime-chunk-4KZXQGUQ.js";import{a as i}from"./runtime-chunk-Z5OH244S.js";import{c as r}from"./runtime-chunk-TZCHGFVF.js";import{Ba as s,C as a,Ca as n,Ea as o,K as l,j as h,k as p,l as d,o as c}from"./runtime-chunk-OW6T4XFV.js";import{$c as u,Cc as m,Ec as f,Fc as y,Kd as g,Oc as v,Pc as x,Pd as S,Rc as w,Re as M,Xc as b,bd as B,cd as P,dd as E,kd as A,ld as C}from"./runtime-chunk-VGN7YHB7.js";var D={Cloner:null,changeEntityProptotype:()=>{},createEntity:()=>{}};function O(t,e){let i=[];if(e.length!==t.length)return null;{let r=0;for(;r<t.length;){if("*"===e[r])i.push(t[r]);else if(t[r]!==e[r])return null;r+=1}}return i}function W(t,e){let i=[];if(!(e.length<=t.length))return null;{let r=0;for(;r<e.length;){if("*"===e[r])i.push(t[r]);else if(t[r]!==e[r])return null;r+=1}}return i}var V=new y,_=new y,T=new v,U=[new y(-1,1,1),new y(-1,-1,1),new y(1,-1,1),new y(1,1,1),new y(-1,1,-1),new y(-1,-1,-1),new y(1,-1,-1),new y(1,1,-1)],R=[[0,3],[1,2],[5,6],[4,7],[0,1],[3,2],[7,6],[4,5],[0,4],[1,5],[2,6],[3,7]],z=[[0,2],[7,5],[4,1],[3,6],[4,3],[1,6]],I=(t,e,i)=>{t.updateEntityBoxSize(V,_),T.copy(e).multiply(t.matrixWorld),0===_.x&&0===_.y&&0===_.z?i.push(new y(V.x,V.y,V.z).applyMatrix4(T)):U.forEach(t=>{i.push(t.clone().multiply(_).add(V).applyMatrix4(T))})},L=class extends b{constructor(){super(...arguments),this.matrix=new v,this.vertices=[],this.faces=[],this.edges=[],this.centerEdges=[]}copy(t){return super.copy(t),this.matrix.copy(t.matrix),this.vertices=t.vertices.map(t=>t.clone()),this.faces=t.faces.map(t=>t.clone()),this.edges=t.edges.map(t=>t.clone()),this.centerEdges=t.centerEdges.map(t=>t.clone()),this}setFromObjectSize(t,e=!1){t.updateWorldMatrix(!1,e),this.makeEmpty(),this.matrix.copy(t.matrixWorld);let i=(new v).copy(t.matrixWorld).invert();return this.expandByObjectSize(t,i,e)}expandByObjectSize(t,e,i=!1){let r=[];if(!0===i){let i=[];t.traverseEntity(t=>{if(t.visible||t.cloner&&t.data.visible){if(!("geometry"in t))return T.copy(e).multiply(t.matrixWorld),void i.push((new y).applyMatrix4(T));I(t,e,r)}}),0===r.length&&r.push(...i)}else I(t,e,r);return this.setFromPoints(r)}getCenter(t){return(t=super.getCenter(t)).applyMatrix4(this.matrix),t}getPositionToCenter(t){return(t=super.getCenter(t)).applyMatrix4(T.copy(this.matrix).setPosition(0,0,0)),t}computeVertices(){this.getSize(_).multiplyScalar(.5),this.getCenter(V),T.copy(this.matrix).setPosition(V),this.vertices=U.map(t=>t.clone().multiply(_).applyMatrix4(T))}computeEdges(){this.vertices.length>0&&this.computeVertices(),this.edges=R.map(([t,e])=>new M(this.vertices[t],this.vertices[e])),this.centerEdges=this.edges.map(t=>t.getCenter(new y))}computeFaces(){this.vertices.length>0&&this.computeVertices(),this.faces=z.map(([t,e])=>this.vertices[t].clone().add(this.vertices[e]).multiplyScalar(.5))}},N=new y,j=new y,F=new y,k=new y,q=new y,G=new y,H=new v,X=1e-12,Z=.01;function $(t){let e=t.elements;N.set(e[0],e[1],e[2]),j.set(e[4],e[5],e[6]),F.set(e[8],e[9],e[10])}function K(){let t=Math.max(N.lengthSq(),j.lengthSq(),F.lengthSq());N.lengthSq()>X*t?k.copy(N).normalize():k.set(1,0,0),q.crossVectors(F,k),q.lengthSq()<=X*t&&(q.copy(j).addScaledVector(k,-j.dot(k)),q.lengthSq()<=X*t&&function(t,e){t.set(1,0,0).cross(e),t.lengthSq()<=X&&t.set(0,1,0).cross(e),t.normalize()}(q,k)),q.normalize(),G.crossVectors(k,q)}function Q(t){return $(t),K(),H.makeBasis(k,q,G)}var Y,J=new v;(Y||(Y={})).is=function(t){return t&&t.__isSPEObject};var tt=t=>class extends t{constructor(){super(...arguments),this.previousModelViewMatrix=new v,this.copyPreviousMatrix=!0,this.hiddenMatrix=new v,this.pivotMatrix=new v,this.matrixWorldRigid=new v,this.shearScale=new v,this.shearScaleInv=new v}get __isSPEObject(){return!0}getPhysicsLocalMatrix(t){return!!this.rigidBody?.isDynamic()&&(t.copy(this.matrixWorld),this.hasNonUniformScale&&t.multiply(this.shearScaleInv),this.parent&&t.premultiply(J.copy(this.parent.matrixWorld).invert()),t.premultiply(J.copy(this.hiddenMatrix).invert()),t.multiply(J.copy(this.pivotMatrix).invert()),!0)}isDescendantOf(t){t instanceof w&&(t=t.uuid);let e=this;for(;e.parent;){if(e.parent.uuid===t)return!0;e=e.parent}return!1}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(let e of this.children)e.updateMatrixWorld(t)}updateWorldMatrix(t,e){let i=this.parent;if(t&&null!==i&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.multiplyMatrices(this.hiddenMatrix,this.matrix):(this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.hiddenMatrix),this.matrixWorld.multiplyMatrices(this.matrixWorld,this.matrix)),this.matrixWorld.multiply(this.pivotMatrix),e)for(let t of this.children)t.updateWorldMatrix(!1,!0)}traverseChildren(t,e=0){for(let i of this.children)Y.is(i)&&i.traverseObject(t,e+1)}traverseObject(t,e=0){if(!0!==t(this,e))for(let i of this.children)Y.is(i)&&i.traverseObject(t,e+1)}updateMatrixWorldRigid(){this.hasNonUniformScale=function(t,e,i){return $(t),K(),e.makeBasis(k,q,G),i.set(k.dot(N),k.dot(j),k.dot(F),0,q.dot(N),q.dot(j),q.dot(F),0,G.dot(N),G.dot(j),G.dot(F),0,0,0,0,1),function(){let t=N.length(),e=j.length(),i=F.length(),r=Math.max(t,e,i);if(r-t>Z||r-e>Z||r-i>Z)return!0;let s=Z*r*r;return Math.abs(N.dot(j))>s||Math.abs(N.dot(F))>s||Math.abs(j.dot(F))>s}()}(this.matrixWorld,this.matrixWorldRigid,this.shearScale),this.matrixWorldRigid.copyPosition(this.matrixWorld),this.shearScaleInv.copy(this.shearScale).invert()}attach(t,e){this.updateWorldMatrix(!0,!1);let i=(new v).copy(this.matrixWorld).invert();return null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),i.multiply(t.parent.matrixWorld)),"hiddenMatrix"in t&&t.hiddenMatrix instanceof v?t.hiddenMatrix.premultiply(i):t.applyMatrix4(i),t.updateWorldMatrix(!1,!1),this.add(t),void 0!==e&&(this.children.pop(),this.children.splice(e,0,t)),this}copy(t,e=!1){return super.copy(t,e),this.hasNonUniformScale=t.hasNonUniformScale,this}onAfterRender(t,e,i,r,s,a){this.copyPreviousMatrix&&this.previousModelViewMatrix.copy(this.modelViewMatrix)}},et=class extends S{constructor(){super()}getPoints(t=12){let e,i=[],r=this.getCurveLengths(),s=r[r.length-1]/r.length;for(let a=0,n=this.curves;a<n.length;a++){let o=n[a],l=0===a?r[a]:r[a]-r[a-1],h=Math.ceil(t*l/s),p=o.getPoints(h);for(let t=0;t<p.length;t++){let r=p[t];e&&e.equals(r)||(i.push(r),e=r)}}return this.autoClose&&i.length>1&&!i[i.length-1].equals(i[0])&&i.push(i[0]),i}},it=.001,rt=new y,st=new y,at=new y,nt=new y,ot=new y,lt=new y,ht=new y,pt=new y,dt=new y;function ct(t,e,i){return rt.subVectors(e,t),st.subVectors(e,i),rt.cross(st).length()<=it}var ut,mt=new WeakMap;function ft(t){let e=mt.get(t.points);if(void 0!==e&&e.isClosed===t.isClosed)return e.curve;let i=function(t){let e=t.points,i=[e[0]],r=[new y(...e[0].data.position)];at.copy(r[0]);for(let t=0;t<e.length-1;t++)rt.fromArray(e[t].data.position),st.fromArray(e[t+1].data.position),ot.subVectors(rt,at),ht.subVectors(rt,st),ot.cross(ht).length()>it&&(i.push(e[t]),r.push((new y).copy(rt)),at.copy(rt));let s=e[e.length-1];i.push(s),r.push(new y(...s.data.position));let a=t.isClosed,n=i.length-(a?0:1),o=i.length,l=[],h=[];for(let t=0;t<o;t++){let e=i[t].data;l.push(new y(...e.controlPrevious.position)),h.push(new y(...e.controlNext.position))}let p=[];for(let t=0;t<n;t++){let e=t===o-1?0:t+1;p.push(ct(r[t],h[t],r[e])&&ct(r[t],l[e],r[e]))}let d=[];for(let t=0;t<o;t++){let e=i[t].data,s=r[t],n={position:s,prevDir:void 0,nextDir:void 0,controlPrevious:l[t],controlNext:h[t],tan:void 0,baseRoundness:e.roundness,removedLength:0};if(d.push(n),0===e.roundness||!a&&(0===t||t===o-1))continue;let c=a&&0==t?o-1:t-1,u=a&&t==o-1?0:t+1,m=(new y).subVectors(r[c],s).normalize(),f=(new y).subVectors(r[u],s).normalize();n.prevDir=m,n.nextDir=f;let g=p[a&&0===t?o-1:t-1],v=p[t];if(g&&v){nt.addVectors(m,f).normalize();let t=at.crossVectors(nt,m).length()/m.dot(nt);n.tan=t,n.removedLength=e.roundness/t}}for(let t=0;t<n;t++){let e=a&&t===o-1?0:t+1,i=d[t],r=d[e];if(0!==i.removedLength||0!==r.removedLength){let t=i.position.distanceTo(r.position);i.removedLength=Math.min(i.removedLength,t/2),r.removedLength=Math.min(r.removedLength,t/2)}}let c=new Array(2*o).fill(null);for(let t=0;t<n;t++){let e=a&&t===o-1?0:t+1,i=d[t],r=d[e],s=null;if(p[t]){let t=i.position.clone(),e=r.position.clone();(0!==i.removedLength||0!==r.removedLength)&&(i.nextDir&&t.add(at.copy(i.nextDir).setLength(i.removedLength)),r.prevDir&&e.add(at.copy(r.prevDir).setLength(r.removedLength))),t.distanceTo(e)>it&&(s=new g(t,t.clone().lerp(e,.3),e.clone().lerp(t,.3),e))}else i.position.distanceTo(r.position)>it&&(s=new g(i.position,i.controlNext,r.controlPrevious,r.position));c[2*t+1]=s}for(let t=0;t<o;t++){let e=d[t];if(0===e.removedLength)continue;let i=e.position,r=e.prevDir.clone().multiplyScalar(e.removedLength).add(i),s=e.nextDir.clone().multiplyScalar(e.removedLength).add(i),a=e.tan*e.removedLength;nt.addVectors(e.prevDir,e.nextDir).normalize(),ot.copy(r).lerp(s,.5);let n=r.distanceTo(s)/2;dt.copy(nt).multiplyScalar(Math.sqrt(Math.pow(a,2)-Math.pow(n,2))).add(ot),lt.copy(nt).multiplyScalar(-a).add(dt);let o=i.distanceTo(lt)/i.distanceTo(ot);ht.copy(e.prevDir).multiplyScalar(o*i.distanceTo(r)).add(i),pt.copy(ht).lerp(lt,2);let l=r.clone().lerp(ht,4/3),h=s.clone().lerp(pt,4/3);c[2*t]=new g(r,l,h,s)}let u=new et;for(let t=0;t<c.length;t++){let e=c[t];e&&u.add(e)}return u}(t);return mt.set(t.points,{isClosed:t.isClosed,curve:i}),i}(ut||(ut={})).is=function(t){return t&&t.__isEntity};var yt=t=>ut.is(t),gt={type:"completeState",isfromEntity:!0},vt=["x","y","z"],xt=new y,St=new y(1,1,1),wt=new f,Mt=new x,bt=(new y).set(0,1,0),Bt=new v,Pt=new v,Et=u=>class extends(tt(u)){constructor(){super(...arguments),this.raycastLock=!1,this.scaleLock=!1,this.disposed=!1,this.stateSelection=null,this.destroyedInAction=!1,this.instances=[],this.prevState=null,this.currentState=null,this.currentAnimationAction=null,this.reversibleToState=null,this.currentTransitionEvent=null,this.previousAction=null,this._singleBBox=new L,this._recursiveBBox=new L,this.singleBBoxNeedsUpdate=!0,this.recursiveBBoxNeedsUpdate=!0,this._needApplyPathSnapping=!0,this.attachedPaths=new Set}get __isEntity(){return!0}entityChildren(t){let e=this.children[t];if(ut.is(e))return e}entityChildrenCount(){let t=this.children.length;for(;t--;)if(ut.is(this.children[t]))return t+1;return 0}get isConcreteEntity(){return"string"==typeof this.identity}get isVirtualEntity(){return"string"!=typeof this.identity}get isInstanceRoot(){return this.isConcreteEntity&&"Instance"===this.data.type}nearestInstanceSelfOrParent(){let t=this;for(;"Instance"!==t.data.type;){let e=t.parent;if(!ut.is(e))return;t=e}return t}forInstancesRec(t){this.instances.forEach(e=>{e.disposed||t(e),e.forInstancesRec(t)})}super_Entity(t,e){"string"==typeof t&&(this.uuid=t),this.identity=t,this.data=e,this.matrixAutoUpdate=!1,this.dataPatched=this.data}changeSelectedState(t,e,i=!1){if(0!==this.data.states.length||i){for(let t of this.data.states)o.toOps(this.data,t.data).forEach(t=>{let i=p.replaceProps(t,this.data);this.dataPatched=this.data,this.updateByPatchedOp(i,this.data,e)});if(null!==t){let i=this.data.states.data(t);i&&(this.dataPatched=o.patch(this.data,i),o.toOps(this.data,i).forEach(t=>{this.updateByPatchedOp(t,this.dataPatched,e)}))}i&&this.updateTransformState(this.dataPatched,e),this.stateSelection=t,this.updatePathSnapping(this.dataPatched.pathSnapping)}}get singleBBox(){return this.singleBBoxNeedsUpdate&&(this.singleBBoxNeedsUpdate=!1,this._singleBBox.setFromObjectSize(this,!1),this._singleBBox.computeVertices(),this._singleBBox.computeEdges(),this._singleBBox.computeFaces()),this._singleBBox}get recursiveBBox(){return this.recursiveBBoxNeedsUpdate&&(this.recursiveBBoxNeedsUpdate=!1,this._recursiveBBox.setFromObjectSize(this,!0),this._recursiveBBox.computeVertices(),this._recursiveBBox.computeEdges(),this._recursiveBBox.computeFaces()),this._recursiveBBox}updateEntityBoxSize(t,e){t.setScalar(0),e.setScalar(0)}resetBBoxNeedsUpdateSelf(){this.singleBBoxNeedsUpdate=!0,this.recursiveBBoxNeedsUpdate=!0}resetBBoxNeedsUpdate(){this.resetBBoxNeedsUpdateSelf(),this.traverseAncestors(t=>{yt(t)&&t.resetBBoxNeedsUpdateSelf()}),this.traverseEntity(t=>{t.resetBBoxNeedsUpdateSelf()})}find(t){let e;return this.traverseEntity(i=>{i.uuid===t&&(e=i)}),e}traverseSortNextHelper(){let t=this.parent;if(t){let e=t.children,i=e.indexOf(this)+1;if(ut.is(e[i]))return e[i];if(ut.is(t))return t.traverseSortNextHelper()}}sortNext(){let t=this.children;return this.children.length>0&&ut.is(this.children[0])?t[0]:this.traverseSortNextHelper()}goUp(t){let e=this;for(;t>0&&null!==e;)e=e.parent,t-=1;return e}hasAnccestorOrSelf(t){return this===t||this.hasAnccestor(t)}hasAnccestor(t){let e=this.parent;for(;e;){if(t===e)return!0;e=e.parent}return!1}countToAccestor(t){let e=0,i=this;for(;i!==t;){if(null===i)return-1;i=i.parent,e+=1}return e}forEachEntity(t){for(let e of this.children)yt(e)&&t(e)}traverseEntityAncestors(t){this.traverseAncestors(e=>{ut.is(e)&&t(e)})}traverseConcreteEntity(t,e=0){if(!0!==t(this,e))for(let i of this.children)yt(i)&&i.isConcreteEntity&&i.traverseEntity(t,e+1)}traverseEntity(t,e=0){if(!0!==t(this,e))for(let i of this.children)yt(i)&&i.traverseEntity(t,e+1)}traverseVisibleEntity(t){t(this);for(let e of this.children)yt(e)&&e.visible&&e.traverseVisibleEntity(t)}updateMatrix(){super.updateMatrix(),this.cloner&&this.cloner.onObjUpdateMatrix(),this.dispatchEvent({type:"updateMatrix"})}updateMatrixWorld(t){super.updateMatrixWorld(t),this.dispatchEvent({type:"updateMatrixWorld"})}copy(t,e=!1){return super.copy(t,e),this.dataPatched=t.dataPatched,this.raycastLock=t.raycastLock,this.scaleLock=t.scaleLock,this.hiddenMatrix.copy(t.hiddenMatrix),this}hasEntityChild(){return this.children.some(t=>yt(t))}isAncestorOf(t){if(this.uuid===t)return!1;let e=!1;return this.traverseEntity(i=>{i.uuid===t&&(e=!0)}),e}toObjectTransformState(t=[]){this.updateWorldMatrix(!0,!1);let i={position:this.position.toArray(),rotation:[this.rotation.x*m.RAD2DEG,this.rotation.y*m.RAD2DEG,this.rotation.z*m.RAD2DEG],scale:this.scale.toArray(),hiddenMatrix:this.hiddenMatrix.toArray(),pivot:[0,0,0],pivotRotation:[0,0,0]};return e(i,t)}getTransformValues(t,e,i){return e[t].map((e,r)=>i?.shared.getVariable(e,[this.uuid,t,vt[r]])??e)}updateTransformState(t,e){let i=!1;if(t.position&&(this.position.fromArray(this.getTransformValues("position",t,e)),i=!0),t.rotation&&(xt.fromArray(this.getTransformValues("rotation",t,e)).multiplyScalar(m.DEG2RAD),this.rotation.setFromVector3(xt),i=!0),t.scale&&(this.scale.fromArray(this.getTransformValues("scale",t,e)),i=!0),void 0!==t.hiddenMatrix&&(i=!0,this.hiddenMatrix.fromArray(t.hiddenMatrix??a.identity)),void 0!==t.pivot||void 0!==t.pivotRotation)if(i=!0,void 0!==t.pivot&&void 0!==t.pivotRotation)this.pivotMatrix.compose(xt.fromArray(t.pivot).negate(),wt.setFromEuler(Mt.fromArray(t.pivotRotation.map(t=>t*m.DEG2RAD))).invert(),St);else if(void 0!==t.pivot)this.pivotMatrix.setPosition(-t.pivot[0],-t.pivot[1],-t.pivot[2]);else if(void 0!==t.pivotRotation){let e=xt.setFromMatrixPosition(this.pivotMatrix);wt.setFromEuler(Mt.fromArray(t.pivotRotation.map(t=>t*m.DEG2RAD))).invert(),this.pivotMatrix.compose(e,wt,St)}return i&&(this.updateMatrix(),this.resetBBoxNeedsUpdate(),this.invalidateClonerTransform(this),this.traverseEntityAncestors(t=>{t.invalidateClonerTransform(this)})),t.position&&t.rotation&&t.scale&&void 0!==t.hiddenMatrix&&this.updateWorldMatrix(!1,!0),i}onVariableUpdate(t=!1){t?this.resetBBoxNeedsUpdate():(this.updateMatrix(),this.resetBBoxNeedsUpdate(),this.invalidateClonerTransform(this),this.traverseEntityAncestors(t=>{t.invalidateClonerTransform(this)}),this.requestRender())}dispose(){this.disposed=!0,this.cloner&&(this.cloner.dispose(),this.cloner=void 0)}disposeChildrenRecursively(){for(let t of this.children)ut.is(t)&&t.disposeRecursively()}disposeRecursively(){this.dispose(),this.children.forEach(t=>{ut.is(t)&&t.disposeRecursively()})}toState(t=[]){let i={name:this.name,visible:this.visible,raycastLock:this.raycastLock,...this.toObjectTransformState(t)};return e(i,t)}updateByObjUpdateOp(t,e){void 0!==t&&this.updateByOp({type:0,props:t,path:[]},{...this.data,...t},e,!1)}updateByOp(t,e,i,r){let a=this.data;this.data=e;let l=t,p=W(t.path,["states","*"]);if(null!==p){if(0===t.type){let[e]=p;if(this?.stateSelection===e){let e={...t.props};if(delete e.name,Object.values(t.props).some(t=>void 0===t)){let i=this.data;if(void 0!==i){let r=c.zoom(i,t.path.slice(2));if(r)for(let i in t.props)void 0===t.props[i]&&i in r&&(e[i]=r[i])}}l={...t,props:e,path:t.path.slice(2)}}}}else if(0===t.type){let e=this.stateSelection?this.data.states.data(this.stateSelection):void 0;if(void 0!==e){if(void 0!==t.props.name&&e.name){let{name:t,...i}=e;e=i}if(void 0!==t.props.material&&"material"in e){let{material:t,...i}=e;e=i}let i=c.removeOverridden(t.path,t.props,e);l={...t,props:i}}}if(this.updateByPatchedOpBase(l,o.patch(this.data,this.stateSelection?this.data.states.data(this.stateSelection):void 0),i),W(t.path,["overrides"])){let r=[],a=[...t.path];for(r.push(a[1]),a.splice(0,2);a.length>0&&"descendants"===a[0];)r.push(a[1]),a.splice(0,2);if(void 0===r[r.length-1]){if(0===t.type)for(let e of Object.keys(t.props)){r[r.length-1]=e;let s=i.scene.findInstance([this.uuid,...r]);s&&(s.overrideData=t.props[e],s.updateState(h.apply(s.component.data,s.overrideData),i))}}else{let n=i.scene.findInstance([this.uuid,...r]);if(n){let o=c.zoom(n.component.data,a);if(0===(t={...t,path:a}).type){let e=t.props;if(o)for(let[i,r]of Object.entries(t.props))void 0===r&&(e===t.props&&(e={...t.props}),e[i]=o[i]);t={...t,props:e}}n.overrideData=s.resolve(e.overrides,r),n.updateByOp(t,d.applySimple(n.data,t),i,!1)}}}else if(this.instances.length>0){let r;if(0===t.path.length&&0===t.type){let e;for(let i of n.rootOverrideProps)i in t.props&&(void 0===e&&(e={}),e[i]=t.props[i]);e&&(r={...t,props:e})}else for(let e of n.rootOverrideProps)if(W(t.path,[e])){r=t;break}void 0!==r&&this.instances.forEach(t=>{if(t.isInstanceRoot){let e=h.filterOp(t.overrideData,r);e&&t.updateByOp(e,d.applySimple(t.data,e),i,!0)}}),this.instances.forEach(r=>{if(!r.isInstanceRoot){let s=h.filterOp(r.overrideData,t);if(s){let n;n=a===r.data&&t===s?e:d.applySimple(r.data,s),r.updateByOp(s,n,i,!0)}}})}}updateByPatchedOpBase(t,e,i){if(this.dataPatched=e,0===t.path.length&&0===t.type)void 0!==t.props.type&&!l.is(t.props.type)&&D.changeEntityProptotype(this,e,i);else if(1===t.path.length&&"geometry"===t.path[0]&&0===t.type&&"type"in t.props){D.changeEntityProptotype(this,e,i);for(let t of this.children)ut.is(t)&&t.updateVisible(i.scene)}this.updateByPatchedOp(t,e,i)}updateByPatchedOp(t,e,i){if(0===t.path.length&&0===t.type?this.updateState(t.props,i):0===t.type&&("resolutionLevel"in t.props||"useChildrenColors"in t.props)&&this.updateState(e,i),"morphTargetInfluences"===t.path[0]&&0===t.type){let r=e.morphTargetInfluences.get(t.path[1])?.data.name;r&&this.updateMorphInfluences(r,i.shared.getVariable(t.props.value,[this.uuid,"morphTargetInfluences",r]))}if(null!==W(t.path,["pathSnapping"])&&this.updatePathSnapping(e.pathSnapping),null!==W(t.path,["cloner"])){let r=d.drop(t,1);0===r.path.length&&0===r.type&&!0===r.props.disabled?this.setFromClonerState(null,i):this.cloner?this.cloner.updateState(e.cloner,i):(this.setFromClonerState(e.cloner,i),this.expandCloner(i)),this.updateVisible(i.scene)}}updatePathSnapping(t=this.dataPatched.pathSnapping){this._updatedPathSnapping=t,this._needApplyPathSnapping=!0}get updatedPathSnapping(){return this._updatedPathSnapping}applyPathSnapping(t){if(!1===this._needApplyPathSnapping)return;let e=this._updatedPathSnapping?.pathId??this.dataPatched.pathSnapping.pathId,r=this._updatedPathSnapping?.slide??this.dataPatched.pathSnapping.slide??0,s=this._updatedPathSnapping?.offset??this.dataPatched.pathSnapping.offset??0,a=this._updatedPathSnapping?.orientation??this.dataPatched.pathSnapping.orientation;if(null===e)return;let n=t.find(e);if(!n)return;this._needApplyPathSnapping=!1;let o=n.data;if(o.geometry.path.points.length<=1)return;let l=ft(o.geometry.path),h=(r+s)%1;r+s===1&&0===h&&(h=1);let p=null;try{p=l.curves.length?l.getPointAt(h):null}catch(t){i&&(console.warn(`The aligned path on ${this.name} is invalid. (${n.name})`),console.error(t))}if(null===p)return;n.updateMatrixWorld();let d=this.parent?Bt.copy(this.parent.matrixWorld).invert():Bt.identity();d.multiply(n.matrixWorld),p.applyMatrix4(d);let c={position:p.toArray(),rotation:o.rotation};if("tangential"===a){let t=Pt.extractRotation(n.matrixWorld),e=l.getTangentAt(h).applyMatrix4(t).add(p),i=Pt.lookAt(p,e,bt),r=xt.setFromEuler(Mt.setFromRotationMatrix(i)).multiplyScalar(m.RAD2DEG);c={...c,rotation:r.toArray()}}this.updateTransformState(c),this.traverseEntity(t=>{t._cameraType&&t.dispatchEvent(gt)})}updateVisible(t){if(this.visible=this.dataPatched.visible&&(!this.dataPatched.cloner||(this.dataPatched.cloner.disabled??!1)||!0!==this.dataPatched.cloner?.hideBase),!t)return;let e=!1;this.traverseEntity(t=>{if("Splat"===t.data.type)return e=!0,!0}),e&&t.reloadSplats()}updateState_Entity(t,e){void 0!==t.name&&(this.name=t.name),void 0!==t.raycastLock&&(this.raycastLock=t.raycastLock),void 0!==t.visible&&(this.updateVisible(e?.scene),this.resetBBoxNeedsUpdate()),e&&"cloner"in t&&void 0!==t.cloner&&(this.setFromClonerState(t.cloner,e),this.updateVisible(e.scene)),this.updateTransformState(t,e)}get attachedSurfaceCloners(){return this.children.filter(e=>t(e)&&"toObject"===e.parameters.type)}setFromClonerState(t,e){if(!this.disposed)if(null===t||t.disabled)this.cloner&&this.cloner.dispose(),this.cloner=void 0;else if(void 0===this.cloner){if(null===D.Cloner)return void r("cloners","a cloner");this.cloner=new D.Cloner(this,t),e.scene.addPendingExpandCloner(this)}else this.cloner.updateState(t,e)}expandCloner(t){!this.disposed&&this.cloner&&this.cloner.expandClones(t)}invalidateClonerTransform(t){this.cloner&&this.cloner.invalidateTransform(t)}requestRender(){this.dispatchEvent({type:"requestRender"})}},At=class{static create(t){return this.build(this.normalizeInputs(t))}static normalizeInputs(t,e){let i=Object.assign({},e?.parameters??{width:100,revolutions:2,segments:40,pathRadius:10,pathType:0,pathSegments:30,cornerRadius:30,cornerSegments:4},t.parameters),r=Math.abs(i.width),s=Math.abs(i.height??r),a=Math.abs(i.depth??r),n=Math.abs(Math.min(r,a))/2;return{parameters:Object.assign(i,{width:r,height:s,depth:a,radius:n,segments:Math.round(i.segments),pathSegments:Math.round(i.pathSegments),cornerSegments:Math.round(i.cornerSegments)})}}static build(t){let{width:e,height:i,depth:r,radius:s,revolutions:a,segments:n,pathRadius:o,pathType:l,pathSegments:h,cornerRadius:p,cornerSegments:d}=t.parameters,c=new Vt(!1,e,i,r,s,a,n,o,l,h,p,d);return Object.assign(c,{userData:{...t,type:"HelixGeometry"}})}},Ct=new u([0,0,0],1);function Dt(t){return"TorusGeometry"===t.type&&360===t.arc}var Ot,Wt,Vt=class extends E{constructor(t=!0,e=1,i=1,r=1,s=1,a=1,n=1,o=1,l=1,h=1,p=1,d=1){if(super(),0===a)return;let c=t&&1===a;c&&(d=0),p>100&&(p=100),0===p&&(d=0);let u,m,f,g,v,x,S,w,M=()=>new y,b=new y,P=M(),E=M(),A=M(),C=M(),D=M(),O=M(),W=M(),V=M(),_=M(),T=M(),U=M(),R=i-2*o+.001,z=R/a,I=Math.ceil(n*a),L=I+1,N=R/I,j=-R/2,F=h+1,k=2*Math.PI/h,q=Math.PI/2/d,G=Math.min((1-p/100)*o,o-.01),H=o-G,X=0,Z=2*d+2,$=F*Z/2,K=$+F*L,Q=Math.max(0,F*(L+Z)),[Y,J,tt]=[3,3,2].map(t=>Array(Q*t).fill(0)),et=[],it=s-o;function rt(e,i){let r=Math.PI/2;x=i*N,w=2*Math.PI*(x%z)/z+r,x+=j,S=Math.sin(w)*it,v=Math.cos(w)*it,t?e.set(v,S,x):e.set(v,x,S)}rt(b,-1e-10),rt(P,0),C.copy(b),rt(b,1);let st=b.distanceTo(P),at=c?0:H+G,nt=st*I+2*at,ot=G,lt=nt-at;for(let e=0;e<=I;e++){rt(E,e),U.subVectors(E,C).normalize(),C.copy(E),_.copy(E).setComponent(+t+1,0).normalize(),T.crossVectors(U,_).normalize();let i=0===e,r=e===I,s=i?3*Math.PI/2:q,a=i?ot:lt,n=i?F:K,l=i?0:Q-F,p=U.clone().multiplyScalar(i?-H:H).add(E),u=U.clone().multiplyScalar(i?-1:1).normalize();for(let t=0;t<F;t++){let m=t*k;if(D.addVectors(b.copy(_).multiplyScalar(o*Math.cos(m)),P.copy(T).multiplyScalar(o*Math.sin(m))),O.copy(D).normalize(),i||r){c||(X=l+t,[0,1,2].forEach(t=>{Y[3*X+t]=p.getComponent(t),J[3*X+t]=u.getComponent(t)}),tt[2*X]=+r,tt[2*X+1]=t/h),P.copy(O).multiplyScalar(G),A.addVectors(E,P);for(let e=0;e<d;e++){let r=e*q+s;W.addVectors(b.copy(U).multiplyScalar(H*Math.sin(r)),P.copy(O).multiplyScalar(H*Math.cos(r))),V.copy(W).normalize(),P.addVectors(A,W),W.normalize(),X=n+e*F+t,[0,1,2].forEach(t=>{Y[3*X+t]=P.getComponent(t),J[3*X+t]=V.getComponent(t)});let o=+i+Math.sin(r);tt[2*X]=(a+H*o)/nt,tt[2*X+1]=t/h}}P.addVectors(E,D),X=$+e*F+t,[0,1,2].forEach(t=>{Y[3*X+t]=P.getComponent(t),J[3*X+t]=O.getComponent(t)}),tt[2*X]=(at+e*st)/nt,tt[2*X+1]=t/h}}let ht=L+2*d+2,[pt,dt]=[+c,ht-1];for(let t=pt;t<=dt-1;t++){let e=c&&t===dt-1;for(let i=0;i<F-1;i++)u=t*F+i,m=u+1,f=(e?i:u)+F,g=(e?i+1:m)+F,0===t?et.push(m,g,f):t===ht-2?et.push(u,m,f):et.push(u,m,f,m,g,f)}this.setIndex(et),this.setAttribute("position",new B(Y,3)),this.setAttribute("normal",new B(J,3)),this.setAttribute("uv",new B(tt,2))}getClosedTorusIndicesForBooleanOrSubdiv(){let t,e,i,r,s=this.userData.parameters,a=Math.ceil(s.tubularSegments),n=s.radialSegments,o=n+1,l=[];for(let s=1;s<a;s++)for(let a=0;a<n;a++)t=s*o+a,e=t+1,i=t+o,r=e+o,l.push(t,e,i,e,r,i);for(let s=0;s<n;s++)t=a*o+s,e=t+1,i=s+o,r=s+1+o,l.push(t,e,i,e,r,i);return Ct.array=new Uint32Array(l),Ct.count=l.length,Ct}},_t=new Map,Tt=0;function Ut(t){return Wt||(Wt=async function(){let e=t??(i?".":"https://cdn.spline.design/@splinetool/runtime@2.0.3/build"),r=import("./boolean.js"),[s,a]=await Promise.all([r,fetch(`${e}/boolean.wasm`).then(t=>t.arrayBuffer())]);await s.default({module_or_path:a}),Ot=s}())}function Rt(){if(void 0===Ot)throw new Error("boolean-wasm is not loaded");return Ot}function zt(t){let e=_t.get(t);if(void 0===e)throw new Error("Unknown csg mesh set handle "+t);return e}function It(t){return _t.set(++Tt,t),Tt}var Lt={0:0,1:1,2:2};function Nt(t,e,i){if(void 0===Ot)return-1;let{positions:r,indices:s,normals:a}=function(t,e){if(e&&void 0!==t.userData.positions){let e=t.userData,i=[];for(let t=0,r=0;t<e.verticesPerFace.length;t++){let s=e.verticesPerFace[t];for(let t=1;t<s-1;t++)i.push(e.indices[r],e.indices[r+t],e.indices[r+t+1]);r+=s}return{positions:e.positions instanceof Float32Array?e.positions:new Float32Array(e.positions),indices:new Uint32Array(i)}}let i;i=Dt(t.userData.parameters)?t.getClosedTorusIndicesForBooleanOrSubdiv():t.getIndex();let r,s=t.getAttribute("position");if(null===i){r=new Uint32Array(s.count);for(let t=0;t<r.length;t++)r[t]=t}else r=i.array instanceof Uint32Array?i.array:new Uint32Array(i.array);let a=t.getAttribute("normal"),n=void 0!==a&&3===a.itemSize&&a.count===s.count&&a.array instanceof Float32Array&&!0!==a.isInterleavedBufferAttribute?a.array:void 0;return{positions:s.array,indices:r,normals:n}}(t,e);return It(new Ot.CsgMesh(r,s,a))}function jt(t,e){let i=Rt(),r=Lt[e];if(void 0===r)throw new Error("Unknown boolean operation "+e);let s=t.map(zt);if(1===s.length)return i.clone_mesh(s[0]);let a,n=[];if(2===e&&s.length>2){let t=s[0];for(let e=1;e<s.length-1;e++)t=i.boolean_mesh(t,s[e],0),n.push(t);a=i.boolean_mesh(s[s.length-1],t,2)}else if(2===e)a=i.boolean_mesh(s[1],s[0],2);else{let t=s[s.length-1];for(let e=0;e<s.length-1&&(t=i.boolean_mesh(t,s[e],r),n.push(t),0!==t.tri_count());e++);a=t,n.pop()}for(let t of n)t.free();return a}function Ft(t,e,i,r){let s=Rt(),a=jt(t,e),n=s.mesh_render_data(a,Math.max(r,0));if(i.setAttribute("position",new B(n.positions(),3)),i.setAttribute("normal",new B(n.normals(),3)),n.free(),null===i.boundingSphere&&(i.boundingSphere=new P),0===a.tri_count())i.boundingSphere.center.set(0,0,0),i.boundingSphere.radius=0,i.userData.parameters={width:0,height:0,depth:0};else{let t=a.bounds();i.boundingSphere.center.set(t[0],t[1],t[2]),i.boundingSphere.radius=(t[3]**2+t[4]**2+t[5]**2)**.5,i.userData.parameters={width:2*t[3],height:2*t[4],depth:2*t[5]}}return It(a)}function kt(t,e){let i=Rt(),r=jt(t,e),s=i.mesh_topological_data(r),a=s.positions(),n=s.indices();return s.free(),r.free(),{positions:a,indices:n,verticesPerFace:new Uint8Array(n.length/3).fill(3)}}function qt(t,e){zt(t).transform(new Float32Array(e.elements))}function Gt(t){let e=_t.get(t);void 0!==e&&(e.free(),_t.delete(t))}function Ht(t,e){return It(Rt().instanced_union(zt(t),e))}function Xt(t){return null!==t&&"booleanOp"in t}var Zt=class extends(Et(C)){constructor(){super(...arguments),this.booleanMeshSetAddress=-1,this.booleanWasTransformed=!1,this.booleanMatrixInvOld=new v}updateVisible(t){super.updateVisible(t),this.visible=!Xt(this.parent)&&this.visible,Xt(this.parent)&&this.parent.invalidateDownstreamBooleanData()}onClonerLayoutUpdated(){Xt(this.parent)&&this.invalidateDownstreamBooleanData()}freeBooleanPointer(){-1!==this.booleanMeshSetAddress&&(Gt(this.booleanMeshSetAddress),this.booleanMeshSetAddress=-1)}invalidateDownstreamBooleanData(t=!1){return t?this.booleanWasTransformed=!0:this.freeBooleanPointer(),Xt(this.parent)?this.parent.invalidateDownstreamBooleanData():this}invalidateUpstreamBooleanData(){this.freeBooleanPointer();for(let t of this.children)t instanceof Zt&&(t.freeBooleanPointer(),Xt(t)&&t.invalidateUpstreamBooleanData())}updateTransformState(t,e){let i=super.updateTransformState(t,e);return i&&Xt(this.parent)&&this.invalidateDownstreamBooleanData(!0),i}onVariableUpdate(t=!1){super.onVariableUpdate(t),Xt(this.parent)&&this.invalidateDownstreamBooleanData(!0)}},$t=new b;function Kt(t,e=0,i=t.count,r,s){let a=1/0,n=1/0,o=1/0,l=-1/0,h=-1/0,p=-1/0;for(let r=e;r<i;r++){let e=t.getX(r),i=t.getY(r),s=t.getZ(r);e<a&&(a=e),i<n&&(n=i),s<o&&(o=s),e>l&&(l=e),i>h&&(h=i),s>p&&(p=s)}$t.min.set(a,n,o),$t.max.set(l,h,p),$t.getCenter(r),$t.getSize(s).multiplyScalar(.5)}var Qt=new E,Yt=new A,Jt=class extends Zt{constructor(t,e){super(Qt,Yt),this.super_Entity(t,e)}updateState(t,e){this.updateState_Entity(t,e)}raycast(t,e){super.raycast(t,e)}updateEntityBoxSize(t,e){let i=this.geometry.getAttribute("position");void 0!==i?Kt(i,this.geometry.drawRange.start,this.geometry.drawRange.count<1/0?this.geometry.drawRange.count:i.count,t,e):super.updateEntityBoxSize(t,e)}};export{O as a,W as b,D as c,Q as d,Y as e,tt as f,ft as g,ut as h,yt as i,Et as j,At as k,Dt as l,Vt as m,Ut as n,Nt as o,Ft as p,kt as q,qt as r,Gt as s,Ht as t,Kt as u,Jt as v};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as r}from"./runtime-chunk-Q4H7PFTE.js";import"./runtime-chunk-RAAW7WHN.js";import"./runtime-chunk-D6NWJJTR.js";import"./runtime-chunk-MC3OVJQU.js";import"./runtime-chunk-NRJDJMQZ.js";import"./runtime-chunk-4YV3EXSU.js";import"./runtime-chunk-NSD7DU3P.js";import{c as m}from"./runtime-chunk-ZLW3UWOA.js";import"./runtime-chunk-2PT2WH66.js";import"./runtime-chunk-4KZXQGUQ.js";import"./runtime-chunk-Z5OH244S.js";import{a as n}from"./runtime-chunk-TZCHGFVF.js";import"./runtime-chunk-OW6T4XFV.js";import"./runtime-chunk-VGN7YHB7.js";import"./runtime-chunk-ML3Z74BL.js";m.Cloner=r,n("cloners");
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as t,b as i}from"./runtime-chunk-DZNU62CT.js";import{f as a,g as s}from"./runtime-chunk-MM75L5X4.js";import{e as o}from"./runtime-chunk-4KZXQGUQ.js";import{a as n}from"./runtime-chunk-Z5OH244S.js";import{a as e}from"./runtime-chunk-TZCHGFVF.js";import"./runtime-chunk-OW6T4XFV.js";import{Ec as c,Fc as r,Oc as h,Pc as d}from"./runtime-chunk-VGN7YHB7.js";import"./runtime-chunk-ML3Z74BL.js";var p=new r,f=new r,l=(new h,new r,new c,new r,new d,class{constructor(t,i,s,o,n){this.actionsIn=a(t,t.inActions,s,o,n,i),this.actionsOut=a(t,t.outActions,s,o,n,i)}disconnect(){s(this.actionsIn),s(this.actionsOut)}}),E=class extends l{constructor(t,i,a,s,o,n){super(i,a,s,o,n),this.id=t,this.data=i,this.object=a,this.stage="out",this.objects=[],this.onUpdateMatrixWorld=()=>{for(let t of this.objects)if(!t.visible)return;let t=p.setFromMatrixPosition(this.objects[0].matrixWorld),i=f.setFromMatrixPosition(this.objects[1].matrixWorld),a=t.distanceTo(i)<=this.distance?"in":"out";if(this.stage!==a){this.stage=a;let t="in"===a?this.actionsIn:this.actionsOut;t.Audio.forEach(t=>t.dispatchConditional()),t.Particles.forEach(t=>t.dispatchConditional()),t.Video.forEach(t=>t.dispatchConditional()),t.Link.forEach(t=>t.dispatch()),t.Create.forEach(t=>t.dispatch()),t.Destroy.forEach(t=>t.dispatch()),t.Reset.forEach(t=>t.dispatch()),t.Transition.forEach(t=>{t.object.currentTransitionEvent!==this&&(t.object.currentTransitionEvent=this),t.init()}),t.Transition.forEach(t=>t.play()),t.Animation.forEach(t=>t.play()),t.TimelineAnimation.forEach(t=>t.play()),t.SwitchCamera.forEach(t=>t.play()),t.SceneTransition.forEach(t=>t.dispatch()),t.SetVariable.forEach(t=>t.checkConditions()),t.SetVariable.forEach(t=>t.dispatch()),t.DynamicVariablePlay.forEach(t=>t.dispatch()),t.ClearLocalStorage.forEach(t=>t.dispatch()),t.UserAPI.forEach(t=>t.dispatch())}};let{distance:e,fromObject:c,toObject:r}=i.condition;this.distance=e;for(let t of[c,r]){if(!t)throw new Error("Missing property");let i=s.find(t);if(!i)throw new Error("Missing property");this.objects.push(i)}}connect(){window.setTimeout(()=>{this.objects.forEach(t=>{t.addEventListener("updateMatrixWorld",this.onUpdateMatrixWorld),t.addEventListener("updateMatrix",this.onUpdateMatrixWorld)}),this.onUpdateMatrixWorld()},0)}disconnect(){super.disconnect(),this.stage="out",this.objects.forEach(t=>{t.removeEventListener("updateMatrixWorld",this.onUpdateMatrixWorld),t.removeEventListener("updateMatrix",this.onUpdateMatrixWorld)})}},u=class extends l{constructor(t,i,a,s,o,n){super(i,a,s,o,n),this.id=t,this.data=i,this.object=a,this.onBegin=({target:t,state:i})=>{this.toState!==i&&(this.actionsOut.Audio.forEach(t=>t.dispatchConditional()),this.actionsOut.Particles.forEach(t=>t.dispatchConditional()),this.actionsOut.Video.forEach(t=>t.dispatchConditional()),this.actionsOut.Link.forEach(t=>t.dispatch()),this.actionsOut.Create.forEach(t=>t.dispatch()),this.actionsOut.Destroy.forEach(t=>t.dispatch()),this.actionsOut.Reset.forEach(t=>t.dispatch()),this.actionsIn.Transition.forEach(t=>t.pause()),this.object.currentTransitionEvent=this,this.actionsOut.Transition.forEach(t=>t.play()),this.actionsOut.Animation.forEach(t=>t.play()),this.actionsOut.TimelineAnimation.forEach(t=>t.play()),this.actionsIn.SwitchCamera.forEach(t=>t.pause()),this.actionsOut.SwitchCamera.forEach(t=>t.play()),this.actionsOut.SceneTransition.forEach(t=>t.dispatch()),this.actionsOut.SetVariable.forEach(t=>t.checkConditions()),this.actionsOut.SetVariable.forEach(t=>t.dispatch()),this.actionsOut.DynamicVariablePlay.forEach(t=>t.dispatch()),this.actionsOut.ClearLocalStorage.forEach(t=>t.dispatch()),this.actionsOut.UserAPI.forEach(t=>t.dispatch()))},this.onComplete=({target:t,state:i})=>{this.toState===i&&(this.actionsIn.Audio.forEach(t=>t.dispatchConditional()),this.actionsIn.Particles.forEach(t=>t.dispatchConditional()),this.actionsIn.Video.forEach(t=>t.dispatchConditional()),this.actionsIn.Link.forEach(t=>t.dispatch()),this.actionsIn.Create.forEach(t=>t.dispatch()),this.actionsIn.Destroy.forEach(t=>t.dispatch()),this.actionsIn.Reset.forEach(t=>t.dispatch()),this.actionsOut.Transition.forEach(t=>t.pause()),this.actionsOut.Transition.forEach(t=>t.pause()),this.object.currentTransitionEvent=this,this.actionsIn.Transition.forEach(t=>t.play()),this.actionsIn.Animation.forEach(t=>t.play()),this.actionsIn.TimelineAnimation.forEach(t=>t.play()),this.actionsOut.SwitchCamera.forEach(t=>t.pause()),this.actionsIn.SwitchCamera.forEach(t=>t.play()),this.actionsIn.SceneTransition.forEach(t=>t.dispatch()),this.actionsIn.SetVariable.forEach(t=>t.checkConditions()),this.actionsIn.SetVariable.forEach(t=>t.dispatch()),this.actionsIn.DynamicVariablePlay.forEach(t=>t.dispatch()),this.actionsOut.ClearLocalStorage.forEach(t=>t.dispatch()),this.actionsOut.UserAPI.forEach(t=>t.dispatch()))};let{condition:e}=i;if(!e.object)throw new Error("Missing property");let c=s.find(e.object)??s.scene.find2D(e.object);if(!c)throw new Error("Missing property");if(this.toObject=c,e.state&&!this.toObject.states?.[e.state])throw new Error("Missing property");this.toState=e.state}connect(){o(this.actionsOut).forEach(t=>{this.actionsOut[t]?.length&&this.toObject.addEventListener("beginState",this.onBegin)}),o(this.actionsIn).forEach(t=>{this.actionsIn[t]?.length&&this.toObject.addEventListener("completeState",this.onComplete)})}disconnect(){super.disconnect(),o(this.actionsOut).forEach(t=>{this.actionsIn[t]?.length&&this.toObject.removeEventListener("beginState",this.onBegin)}),o(this.actionsIn).forEach(t=>{this.actionsIn[t]?.length&&this.toObject.removeEventListener("completeState",this.onComplete)})}},m=class extends t{constructor(t,i){super(t),this.eventManager=i,this.eventsPerConditions={Comparison:[],Distance:[],State:[]},this.hasVideoAction=!1}connect(){super.connect();let{page:t,sharedAssets:i}=this.eventContext;t.traverseEntity(a=>{if(a.data?.events.length)for(let{id:s,data:o}of a.data.events)if(!o.disabled&&"Conditional"===o.type)try{let n;"Comparison"===o.condition.type||("Distance"===o.condition.type?n=new E(s,o,a,t,i,this.eventManager):"State"===o.condition.type&&(n=new u(s,o,a,t,i,this.eventManager))),n&&(this.eventsPerConditions[o.condition.type].push(n),(n.actionsIn.Video.length||n.actionsOut.Video.length)&&(this.hasVideoAction=!0))}catch(t){n&&console.error(t)}}),Object.values(this.eventsPerConditions).forEach(t=>t.forEach(t=>t.connect()))}disconnect(){super.disconnect(),Object.values(this.eventsPerConditions).forEach(t=>t.forEach(t=>t.disconnect()))}};i("Conditional",({eventContext:t,eventManager:i})=>new m(t,i)),e("conditional");
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|