@splinetool/runtime 2.0.31 → 2.0.33
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 +44 -34
- 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-CYJ626R5.js → runtime-aiAssistant-O2CXSPWK.js} +1 -1
- package/build/runtime-aiAssistant-O2CXSPWK.js.br +0 -0
- package/build/runtime-aiAssistant-O2CXSPWK.js.gz +0 -0
- package/build/{runtime-apiServices-QWPNWK6X.js → runtime-apiServices-332YME3N.js} +1 -1
- package/build/runtime-apiServices-332YME3N.js.br +0 -0
- package/build/runtime-apiServices-332YME3N.js.gz +0 -0
- package/build/{runtime-audio-CZNFK3LE.js → runtime-audio-W35MH46I.js} +1 -1
- package/build/runtime-audio-W35MH46I.js.br +0 -0
- package/build/runtime-audio-W35MH46I.js.gz +0 -0
- package/build/{runtime-chunk-3JKX2EOM.js → runtime-chunk-45XEVQ3G.js} +1 -1
- package/build/runtime-chunk-45XEVQ3G.js.br +0 -0
- package/build/runtime-chunk-45XEVQ3G.js.gz +0 -0
- package/build/{runtime-chunk-KKPKCVQ5.js → runtime-chunk-4PWCQGEO.js} +1 -1
- package/build/runtime-chunk-4PWCQGEO.js.br +0 -0
- package/build/runtime-chunk-4PWCQGEO.js.gz +0 -0
- package/build/runtime-chunk-5FPQ5FYG.js +1 -0
- package/build/runtime-chunk-5FPQ5FYG.js.br +0 -0
- package/build/runtime-chunk-5FPQ5FYG.js.gz +0 -0
- package/build/{runtime-chunk-5GMVJ265.js → runtime-chunk-67LSERUX.js} +1 -1
- package/build/{runtime-chunk-5GMVJ265.js.br → runtime-chunk-67LSERUX.js.br} +0 -0
- package/build/runtime-chunk-67LSERUX.js.gz +0 -0
- package/build/runtime-chunk-76ASHNH5.js +1 -0
- package/build/runtime-chunk-76ASHNH5.js.br +0 -0
- package/build/runtime-chunk-76ASHNH5.js.gz +0 -0
- package/build/{runtime-chunk-TGE5PZ3T.js → runtime-chunk-7KG76FNY.js} +1 -1
- package/build/runtime-chunk-7KG76FNY.js.br +0 -0
- package/build/runtime-chunk-7KG76FNY.js.gz +0 -0
- package/build/{runtime-chunk-DCZ6G5ZD.js → runtime-chunk-AN7KRN56.js} +1 -1
- package/build/runtime-chunk-AN7KRN56.js.br +0 -0
- package/build/runtime-chunk-AN7KRN56.js.gz +0 -0
- package/build/{runtime-chunk-J7HO7GPT.js → runtime-chunk-B5IERHDJ.js} +1 -1
- package/build/runtime-chunk-B5IERHDJ.js.br +0 -0
- package/build/runtime-chunk-B5IERHDJ.js.gz +0 -0
- package/build/{runtime-chunk-BIWIAWFP.js → runtime-chunk-DETJAPEW.js} +1 -1
- package/build/runtime-chunk-DETJAPEW.js.br +0 -0
- package/build/runtime-chunk-DETJAPEW.js.gz +0 -0
- package/build/{runtime-chunk-FR2TTCTG.js → runtime-chunk-E6DD5XGN.js} +1 -1
- package/build/runtime-chunk-E6DD5XGN.js.br +0 -0
- package/build/runtime-chunk-E6DD5XGN.js.gz +0 -0
- package/build/{runtime-chunk-Q76LQIFB.js → runtime-chunk-FYZZPPDQ.js} +1 -1
- package/build/runtime-chunk-FYZZPPDQ.js.br +0 -0
- package/build/runtime-chunk-FYZZPPDQ.js.gz +0 -0
- package/build/{runtime-chunk-SN33PRER.js → runtime-chunk-GD6DXFXU.js} +1 -1
- package/build/runtime-chunk-GD6DXFXU.js.br +0 -0
- package/build/runtime-chunk-GD6DXFXU.js.gz +0 -0
- package/build/{runtime-chunk-7KLCJQ5I.js → runtime-chunk-GMD2NH74.js} +1 -1
- package/build/runtime-chunk-GMD2NH74.js.br +0 -0
- package/build/runtime-chunk-GMD2NH74.js.gz +0 -0
- package/build/{runtime-chunk-3V2AM6QU.js → runtime-chunk-H5PVAACQ.js} +1 -1
- package/build/runtime-chunk-H5PVAACQ.js.br +0 -0
- package/build/runtime-chunk-H5PVAACQ.js.gz +0 -0
- package/build/{runtime-chunk-DHZVCYH4.js → runtime-chunk-K3MJM76A.js} +1 -1
- package/build/runtime-chunk-K3MJM76A.js.br +0 -0
- package/build/runtime-chunk-K3MJM76A.js.gz +0 -0
- package/build/{runtime-chunk-OIGLTIRH.js → runtime-chunk-LDOZDZC7.js} +1 -1
- package/build/runtime-chunk-LDOZDZC7.js.br +0 -0
- package/build/runtime-chunk-LDOZDZC7.js.gz +0 -0
- package/build/{runtime-chunk-PS6GXDSS.js → runtime-chunk-NCJON2ZQ.js} +1 -1
- package/build/runtime-chunk-NCJON2ZQ.js.br +0 -0
- package/build/runtime-chunk-NCJON2ZQ.js.gz +0 -0
- package/build/{runtime-chunk-DLRDNEQC.js → runtime-chunk-PBQNNEHM.js} +1 -1
- package/build/runtime-chunk-PBQNNEHM.js.br +0 -0
- package/build/runtime-chunk-PBQNNEHM.js.gz +0 -0
- package/build/{runtime-chunk-TOMFQJJI.js → runtime-chunk-PWCPVKZV.js} +1 -1
- package/build/runtime-chunk-PWCPVKZV.js.br +0 -0
- package/build/runtime-chunk-PWCPVKZV.js.gz +0 -0
- package/build/{runtime-chunk-D2P6DMLH.js → runtime-chunk-Q2NJ34WP.js} +1 -1
- package/build/runtime-chunk-Q2NJ34WP.js.br +0 -0
- package/build/runtime-chunk-Q2NJ34WP.js.gz +0 -0
- package/build/{runtime-chunk-V25PONPW.js → runtime-chunk-RYZ5Y2UD.js} +1 -1
- package/build/runtime-chunk-RYZ5Y2UD.js.br +0 -0
- package/build/runtime-chunk-RYZ5Y2UD.js.gz +0 -0
- package/build/runtime-chunk-SB5SNGGM.js +1 -0
- package/build/runtime-chunk-SB5SNGGM.js.br +0 -0
- package/build/runtime-chunk-SB5SNGGM.js.gz +0 -0
- package/build/{runtime-chunk-HMU6EGSH.js → runtime-chunk-T5W7UUKQ.js} +1 -1
- package/build/runtime-chunk-T5W7UUKQ.js.br +0 -0
- package/build/runtime-chunk-T5W7UUKQ.js.gz +0 -0
- package/build/{runtime-chunk-MOM2QMSV.js → runtime-chunk-TT2F77QZ.js} +1 -1
- package/build/runtime-chunk-TT2F77QZ.js.br +0 -0
- package/build/runtime-chunk-TT2F77QZ.js.gz +0 -0
- package/build/runtime-chunk-VDZLCK3P.js +1 -0
- package/build/runtime-chunk-VDZLCK3P.js.br +0 -0
- package/build/runtime-chunk-VDZLCK3P.js.gz +0 -0
- package/build/{runtime-chunk-ERO2V667.js → runtime-chunk-VKFSHS4O.js} +1 -1
- package/build/runtime-chunk-VKFSHS4O.js.br +0 -0
- package/build/runtime-chunk-VKFSHS4O.js.gz +0 -0
- package/build/{runtime-chunk-INDD2IUU.js → runtime-chunk-WTHIEJBK.js} +1 -1
- package/build/runtime-chunk-WTHIEJBK.js.br +0 -0
- package/build/runtime-chunk-WTHIEJBK.js.gz +0 -0
- package/build/{runtime-chunk-TDRWIO4R.js → runtime-chunk-XKVJRGT3.js} +1 -1
- package/build/runtime-chunk-XKVJRGT3.js.br +0 -0
- package/build/runtime-chunk-XKVJRGT3.js.gz +0 -0
- package/build/runtime-chunk-Y5OIIRGT.js +1 -0
- package/build/runtime-chunk-Y5OIIRGT.js.br +0 -0
- package/build/runtime-chunk-Y5OIIRGT.js.gz +0 -0
- package/build/runtime-chunk-ZE3Y3273.js +1 -0
- package/build/runtime-chunk-ZE3Y3273.js.br +0 -0
- package/build/runtime-chunk-ZE3Y3273.js.gz +0 -0
- package/build/{runtime-classicRuntime-5ZYB6A6C.js → runtime-classicRuntime-G2NHV252.js} +1 -1
- package/build/runtime-classicRuntime-G2NHV252.js.br +0 -0
- package/build/runtime-classicRuntime-G2NHV252.js.gz +0 -0
- package/build/runtime-cloners-DXUA5B7Z.js +1 -0
- package/build/runtime-cloners-DXUA5B7Z.js.br +1 -0
- package/build/runtime-cloners-DXUA5B7Z.js.gz +0 -0
- package/build/{runtime-components-P5NOGHPV.js → runtime-components-RN6FVN37.js} +1 -1
- package/build/runtime-components-RN6FVN37.js.br +0 -0
- package/build/runtime-components-RN6FVN37.js.gz +0 -0
- package/build/{runtime-conditional-PP2DVNTQ.js → runtime-conditional-RPHIH6FU.js} +1 -1
- package/build/runtime-conditional-RPHIH6FU.js.br +0 -0
- package/build/runtime-conditional-RPHIH6FU.js.gz +0 -0
- package/build/{runtime-createDestroy-PBQ25AU3.js → runtime-createDestroy-DF5QEIQ3.js} +1 -1
- package/build/runtime-createDestroy-DF5QEIQ3.js.br +0 -0
- package/build/runtime-createDestroy-DF5QEIQ3.js.gz +0 -0
- package/build/{runtime-dragDrop-LLBFO2Z3.js → runtime-dragDrop-BIHQ5KZR.js} +1 -1
- package/build/runtime-dragDrop-BIHQ5KZR.js.br +0 -0
- package/build/runtime-dragDrop-BIHQ5KZR.js.gz +0 -0
- package/build/{runtime-fxBloom-6IFM7HAH.js → runtime-fxBloom-76KMQOQQ.js} +1 -1
- package/build/runtime-fxBloom-76KMQOQQ.js.br +0 -0
- package/build/runtime-fxBloom-76KMQOQQ.js.gz +0 -0
- package/build/{runtime-fxDepthOfField-7GNESKXY.js → runtime-fxDepthOfField-72TWLFER.js} +1 -1
- package/build/runtime-fxDepthOfField-72TWLFER.js.br +0 -0
- package/build/runtime-fxDepthOfField-72TWLFER.js.gz +0 -0
- package/build/{runtime-gameControls-AJLKUT72.js → runtime-gameControls-66ZOCHBQ.js} +1 -1
- package/build/runtime-gameControls-66ZOCHBQ.js.br +0 -0
- package/build/runtime-gameControls-66ZOCHBQ.js.gz +0 -0
- package/build/runtime-hair-MA6FN35D.js +1 -0
- package/build/runtime-hair-MA6FN35D.js.br +0 -0
- package/build/runtime-hair-MA6FN35D.js.gz +0 -0
- package/build/{runtime-mergeStaticGeometries-PS3WDC7F.js → runtime-mergeStaticGeometries-HHUXK4BW.js} +1 -1
- package/build/runtime-mergeStaticGeometries-HHUXK4BW.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-HHUXK4BW.js.gz +0 -0
- package/build/{runtime-miscActions-ZA42POZ5.js → runtime-miscActions-24ZVLPRO.js} +1 -1
- package/build/runtime-miscActions-24ZVLPRO.js.br +0 -0
- package/build/runtime-miscActions-24ZVLPRO.js.gz +0 -0
- package/build/{runtime-mouseHover-H3YYT2RA.js → runtime-mouseHover-3G4E5GAF.js} +1 -1
- package/build/runtime-mouseHover-3G4E5GAF.js.br +0 -0
- package/build/runtime-mouseHover-3G4E5GAF.js.gz +0 -0
- package/build/{runtime-particles-7XJ2SXF2.js → runtime-particles-PN3EYBDA.js} +1 -1
- package/build/runtime-particles-PN3EYBDA.js.br +0 -0
- package/build/runtime-particles-PN3EYBDA.js.gz +0 -0
- package/build/{runtime-paths-ME2M4R7X.js → runtime-paths-GSK2JZMU.js} +1 -1
- package/build/runtime-paths-GSK2JZMU.js.br +0 -0
- package/build/runtime-paths-GSK2JZMU.js.gz +0 -0
- package/build/{runtime-resize-BOSMJSAG.js → runtime-resize-UW73Z5IN.js} +1 -1
- package/build/runtime-resize-UW73Z5IN.js.br +0 -0
- package/build/runtime-resize-UW73Z5IN.js.gz +0 -0
- package/build/{runtime-sceneTransition-3UDCZSVK.js → runtime-sceneTransition-LPS7ZHS4.js} +1 -1
- package/build/runtime-sceneTransition-LPS7ZHS4.js.br +0 -0
- package/build/runtime-sceneTransition-LPS7ZHS4.js.gz +0 -0
- package/build/{runtime-scroll-GHZEG4L4.js → runtime-scroll-2RACPF3L.js} +1 -1
- package/build/runtime-scroll-2RACPF3L.js.br +0 -0
- package/build/runtime-scroll-2RACPF3L.js.gz +0 -0
- package/build/runtime-shapeBlends-W3UDTX47.js +1 -0
- package/build/runtime-shapeBlends-W3UDTX47.js.br +0 -0
- package/build/runtime-shapeBlends-W3UDTX47.js.gz +0 -0
- package/build/{runtime-text-ZMRMHZQC.js → runtime-text-CGWVXLNC.js} +1 -1
- package/build/runtime-text-CGWVXLNC.js.br +0 -0
- package/build/runtime-text-CGWVXLNC.js.gz +0 -0
- package/build/{runtime-textInputs-DHCVWHXQ.js → runtime-textInputs-C5RWG2TR.js} +1 -1
- package/build/runtime-textInputs-C5RWG2TR.js.br +0 -0
- package/build/runtime-textInputs-C5RWG2TR.js.gz +0 -0
- package/build/{runtime-timeline-HDBREC6O.js → runtime-timeline-3NEYLJHX.js} +1 -1
- package/build/runtime-timeline-3NEYLJHX.js.br +0 -0
- package/build/runtime-timeline-3NEYLJHX.js.gz +0 -0
- package/build/{runtime-tracking-YA6A2GWY.js → runtime-tracking-4J3G5NE6.js} +1 -1
- package/build/runtime-tracking-4J3G5NE6.js.br +0 -0
- package/build/runtime-tracking-4J3G5NE6.js.gz +0 -0
- package/build/{runtime-transitions-EQYPCNDH.js → runtime-transitions-6WCGNZX7.js} +1 -1
- package/build/runtime-transitions-6WCGNZX7.js.br +0 -0
- package/build/runtime-transitions-6WCGNZX7.js.gz +0 -0
- package/build/{runtime-ui2d-2GWNKF5Y.js → runtime-ui2d-Q7BEDZKY.js} +1 -1
- package/build/runtime-ui2d-Q7BEDZKY.js.br +0 -0
- package/build/runtime-ui2d-Q7BEDZKY.js.gz +0 -0
- package/build/{runtime-updater-2CFDVEWY.js → runtime-updater-7DBCK2D5.js} +1 -1
- package/build/runtime-updater-7DBCK2D5.js.br +1 -0
- package/build/runtime-updater-7DBCK2D5.js.gz +0 -0
- package/build/{runtime-variables-S7QUT7HH.js → runtime-variables-WUE23WSE.js} +1 -1
- package/build/runtime-variables-WUE23WSE.js.br +0 -0
- package/build/runtime-variables-WUE23WSE.js.gz +0 -0
- package/build/{runtime-vectorShapes-XOE7MSEE.js → runtime-vectorShapes-6XWTTMQC.js} +1 -1
- package/build/runtime-vectorShapes-6XWTTMQC.js.br +0 -0
- package/build/runtime-vectorShapes-6XWTTMQC.js.gz +0 -0
- package/build/{runtime-video-SBFWLQQT.js → runtime-video-3WYFSQFW.js} +1 -1
- package/build/runtime-video-3WYFSQFW.js.br +0 -0
- package/build/runtime-video-3WYFSQFW.js.gz +0 -0
- package/build/runtime-webgpu-TEJIPT3H.js +1 -0
- package/build/runtime-webgpu-TEJIPT3H.js.br +0 -0
- package/build/runtime-webgpu-TEJIPT3H.js.gz +0 -0
- package/build/runtime.cjs +398 -398
- 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-CYJ626R5.js.br +0 -0
- package/build/runtime-aiAssistant-CYJ626R5.js.gz +0 -0
- package/build/runtime-apiServices-QWPNWK6X.js.br +0 -0
- package/build/runtime-apiServices-QWPNWK6X.js.gz +0 -0
- package/build/runtime-audio-CZNFK3LE.js.br +0 -0
- package/build/runtime-audio-CZNFK3LE.js.gz +0 -0
- package/build/runtime-chunk-2GJZ6HVO.js +0 -1
- package/build/runtime-chunk-2GJZ6HVO.js.br +0 -0
- package/build/runtime-chunk-2GJZ6HVO.js.gz +0 -0
- package/build/runtime-chunk-3JKX2EOM.js.br +0 -0
- package/build/runtime-chunk-3JKX2EOM.js.gz +0 -0
- package/build/runtime-chunk-3V2AM6QU.js.br +0 -0
- package/build/runtime-chunk-3V2AM6QU.js.gz +0 -0
- package/build/runtime-chunk-5GMVJ265.js.gz +0 -0
- package/build/runtime-chunk-7KLCJQ5I.js.br +0 -0
- package/build/runtime-chunk-7KLCJQ5I.js.gz +0 -0
- package/build/runtime-chunk-AIWIOLR6.js +0 -1
- package/build/runtime-chunk-AIWIOLR6.js.br +0 -0
- package/build/runtime-chunk-AIWIOLR6.js.gz +0 -0
- package/build/runtime-chunk-ASOMKSTV.js +0 -1
- package/build/runtime-chunk-ASOMKSTV.js.br +0 -0
- package/build/runtime-chunk-ASOMKSTV.js.gz +0 -0
- package/build/runtime-chunk-BIWIAWFP.js.br +0 -0
- package/build/runtime-chunk-BIWIAWFP.js.gz +0 -0
- package/build/runtime-chunk-D2P6DMLH.js.br +0 -0
- package/build/runtime-chunk-D2P6DMLH.js.gz +0 -0
- package/build/runtime-chunk-DCZ6G5ZD.js.br +0 -0
- package/build/runtime-chunk-DCZ6G5ZD.js.gz +0 -0
- package/build/runtime-chunk-DHZVCYH4.js.br +0 -0
- package/build/runtime-chunk-DHZVCYH4.js.gz +0 -0
- package/build/runtime-chunk-DLRDNEQC.js.br +0 -0
- package/build/runtime-chunk-DLRDNEQC.js.gz +0 -0
- package/build/runtime-chunk-ERO2V667.js.br +0 -0
- package/build/runtime-chunk-ERO2V667.js.gz +0 -0
- package/build/runtime-chunk-FR2TTCTG.js.br +0 -0
- package/build/runtime-chunk-FR2TTCTG.js.gz +0 -0
- package/build/runtime-chunk-HMU6EGSH.js.br +0 -0
- package/build/runtime-chunk-HMU6EGSH.js.gz +0 -0
- package/build/runtime-chunk-INDD2IUU.js.br +0 -0
- package/build/runtime-chunk-INDD2IUU.js.gz +0 -0
- package/build/runtime-chunk-J7HO7GPT.js.br +0 -0
- package/build/runtime-chunk-J7HO7GPT.js.gz +0 -0
- package/build/runtime-chunk-KKPKCVQ5.js.br +0 -0
- package/build/runtime-chunk-KKPKCVQ5.js.gz +0 -0
- package/build/runtime-chunk-MOM2QMSV.js.br +0 -0
- package/build/runtime-chunk-MOM2QMSV.js.gz +0 -0
- package/build/runtime-chunk-OC2KKQYZ.js +0 -1
- package/build/runtime-chunk-OC2KKQYZ.js.br +0 -0
- package/build/runtime-chunk-OC2KKQYZ.js.gz +0 -0
- package/build/runtime-chunk-OIGLTIRH.js.br +0 -0
- package/build/runtime-chunk-OIGLTIRH.js.gz +0 -0
- package/build/runtime-chunk-PS6GXDSS.js.br +0 -0
- package/build/runtime-chunk-PS6GXDSS.js.gz +0 -0
- package/build/runtime-chunk-Q76LQIFB.js.br +0 -0
- package/build/runtime-chunk-Q76LQIFB.js.gz +0 -0
- package/build/runtime-chunk-SN33PRER.js.br +0 -0
- package/build/runtime-chunk-SN33PRER.js.gz +0 -0
- package/build/runtime-chunk-TDRWIO4R.js.br +0 -0
- package/build/runtime-chunk-TDRWIO4R.js.gz +0 -0
- package/build/runtime-chunk-TGE5PZ3T.js.br +0 -0
- package/build/runtime-chunk-TGE5PZ3T.js.gz +0 -0
- package/build/runtime-chunk-TOMFQJJI.js.br +0 -0
- package/build/runtime-chunk-TOMFQJJI.js.gz +0 -0
- package/build/runtime-chunk-V25PONPW.js.br +0 -0
- package/build/runtime-chunk-V25PONPW.js.gz +0 -0
- package/build/runtime-chunk-XWPU6QZZ.js +0 -1
- package/build/runtime-chunk-XWPU6QZZ.js.br +0 -0
- package/build/runtime-chunk-XWPU6QZZ.js.gz +0 -0
- package/build/runtime-chunk-ZK434IQC.js +0 -1
- package/build/runtime-chunk-ZK434IQC.js.br +0 -0
- package/build/runtime-chunk-ZK434IQC.js.gz +0 -0
- package/build/runtime-classicRuntime-5ZYB6A6C.js.br +0 -0
- package/build/runtime-classicRuntime-5ZYB6A6C.js.gz +0 -0
- package/build/runtime-cloners-7GF2XLXZ.js +0 -1
- package/build/runtime-cloners-7GF2XLXZ.js.br +0 -0
- package/build/runtime-cloners-7GF2XLXZ.js.gz +0 -0
- package/build/runtime-components-P5NOGHPV.js.br +0 -0
- package/build/runtime-components-P5NOGHPV.js.gz +0 -0
- package/build/runtime-conditional-PP2DVNTQ.js.br +0 -0
- package/build/runtime-conditional-PP2DVNTQ.js.gz +0 -0
- package/build/runtime-createDestroy-PBQ25AU3.js.br +0 -0
- package/build/runtime-createDestroy-PBQ25AU3.js.gz +0 -0
- package/build/runtime-dragDrop-LLBFO2Z3.js.br +0 -0
- package/build/runtime-dragDrop-LLBFO2Z3.js.gz +0 -0
- package/build/runtime-fxBloom-6IFM7HAH.js.br +0 -0
- package/build/runtime-fxBloom-6IFM7HAH.js.gz +0 -0
- package/build/runtime-fxDepthOfField-7GNESKXY.js.br +0 -0
- package/build/runtime-fxDepthOfField-7GNESKXY.js.gz +0 -0
- package/build/runtime-gameControls-AJLKUT72.js.br +0 -0
- package/build/runtime-gameControls-AJLKUT72.js.gz +0 -0
- package/build/runtime-hair-F2F2WEXR.js +0 -1
- package/build/runtime-hair-F2F2WEXR.js.br +0 -2
- package/build/runtime-hair-F2F2WEXR.js.gz +0 -0
- package/build/runtime-mergeStaticGeometries-PS3WDC7F.js.br +0 -0
- package/build/runtime-mergeStaticGeometries-PS3WDC7F.js.gz +0 -0
- package/build/runtime-miscActions-ZA42POZ5.js.br +0 -0
- package/build/runtime-miscActions-ZA42POZ5.js.gz +0 -0
- package/build/runtime-mouseHover-H3YYT2RA.js.br +0 -0
- package/build/runtime-mouseHover-H3YYT2RA.js.gz +0 -0
- package/build/runtime-particles-7XJ2SXF2.js.br +0 -0
- package/build/runtime-particles-7XJ2SXF2.js.gz +0 -0
- package/build/runtime-paths-ME2M4R7X.js.br +0 -0
- package/build/runtime-paths-ME2M4R7X.js.gz +0 -0
- package/build/runtime-resize-BOSMJSAG.js.br +0 -0
- package/build/runtime-resize-BOSMJSAG.js.gz +0 -0
- package/build/runtime-sceneTransition-3UDCZSVK.js.br +0 -0
- package/build/runtime-sceneTransition-3UDCZSVK.js.gz +0 -0
- package/build/runtime-scroll-GHZEG4L4.js.br +0 -0
- package/build/runtime-scroll-GHZEG4L4.js.gz +0 -0
- package/build/runtime-shapeBlends-D3EUWES3.js +0 -1
- package/build/runtime-shapeBlends-D3EUWES3.js.br +0 -0
- package/build/runtime-shapeBlends-D3EUWES3.js.gz +0 -0
- package/build/runtime-text-ZMRMHZQC.js.br +0 -0
- package/build/runtime-text-ZMRMHZQC.js.gz +0 -0
- package/build/runtime-textInputs-DHCVWHXQ.js.br +0 -0
- package/build/runtime-textInputs-DHCVWHXQ.js.gz +0 -0
- package/build/runtime-timeline-HDBREC6O.js.br +0 -0
- package/build/runtime-timeline-HDBREC6O.js.gz +0 -0
- package/build/runtime-tracking-YA6A2GWY.js.br +0 -0
- package/build/runtime-tracking-YA6A2GWY.js.gz +0 -0
- package/build/runtime-transitions-EQYPCNDH.js.br +0 -0
- package/build/runtime-transitions-EQYPCNDH.js.gz +0 -0
- package/build/runtime-ui2d-2GWNKF5Y.js.br +0 -0
- package/build/runtime-ui2d-2GWNKF5Y.js.gz +0 -0
- package/build/runtime-updater-2CFDVEWY.js.br +0 -0
- package/build/runtime-updater-2CFDVEWY.js.gz +0 -0
- package/build/runtime-variables-S7QUT7HH.js.br +0 -0
- package/build/runtime-variables-S7QUT7HH.js.gz +0 -0
- package/build/runtime-vectorShapes-XOE7MSEE.js.br +0 -0
- package/build/runtime-vectorShapes-XOE7MSEE.js.gz +0 -0
- package/build/runtime-video-SBFWLQQT.js.br +0 -0
- package/build/runtime-video-SBFWLQQT.js.gz +0 -0
- package/build/runtime-webgpu-YHFBSU5I.js +0 -1
- package/build/runtime-webgpu-YHFBSU5I.js.br +0 -0
- package/build/runtime-webgpu-YHFBSU5I.js.gz +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as t}from"./runtime-chunk-7KG76FNY.js";import{a as e}from"./runtime-chunk-LDOZDZC7.js";import{d as n,e as s,f as i,g as r,h as a}from"./runtime-chunk-GD6DXFXU.js";import{a as o,b as l}from"./runtime-chunk-E6DD5XGN.js";import{b as d,e as c,f as h,g as p}from"./runtime-chunk-FYZZPPDQ.js";import{a as u}from"./runtime-chunk-VKFSHS4O.js";import{a as m}from"./runtime-chunk-DETJAPEW.js";import{a as f}from"./runtime-chunk-XKVJRGT3.js";import{b as y}from"./runtime-chunk-PBQNNEHM.js";import{a as g,b as x}from"./runtime-chunk-B5IERHDJ.js";import{a as v}from"./runtime-chunk-67LSERUX.js";import{d as A}from"./runtime-chunk-TT2F77QZ.js";import{K as b,da as w,ea as C,g as I}from"./runtime-chunk-VDZLCK3P.js";import{b as M,c as P,e as S,h as B,v as D}from"./runtime-chunk-T5W7UUKQ.js";import{a as E,b as R,c as z,d as O,f as j,i as W,j as T}from"./runtime-chunk-2PT2WH66.js";import{c as _,e as k,g as U}from"./runtime-chunk-TZCHGFVF.js";import{Ba as N,I as G,La as V,a as F,b as L,m as Q,n as Y,v as q,va as Z}from"./runtime-chunk-ZE3Y3273.js";import{Aa as X,Ba as K,Dc as H,Ec as J,Fc as $,Gc as tt,Ge as et,Ja as nt,Oa as st,Oc as it,Ra as rt,Tc as at,Vc as ot,Xc as lt,Yc as dt,Zc as ct,bd as ht,cd as pt,ce as ut,dd as mt,kd as ft,l as yt,ld as gt,mc as xt,md as vt,n as At,nd as bt,od as wt,pd as Ct,qd as It,za as Mt}from"./runtime-chunk-BVVSZMXD.js";import{c as Pt}from"./runtime-chunk-ML3Z74BL.js";var St=null;function Bt(t){St=t}var Dt=new WeakMap,Et=1;function Rt(t){let e=Dt.get(t);return void 0===e&&(e=Et++,Dt.set(t,e)),e}function zt(t,e,n,s){let i=t,r=e;return[Rt(n),Rt(s),i.layers?.mask??0,i.renderOrder??0,!0===(i.castShadow??r.castShadow)?1:0,!0===(i.receiveShadow??r.receiveShadow)?1:0].join(":")}var Ot=[8,32,128,512],jt=Ot[Ot.length-1],Wt=(new it).makeScale(0,0,0),Tt=class extends It{constructor(t,e,n,s){super(t,e,n),this.isInstanceGroup=!0,this.members=new Array(n).fill(null),this.raycast=()=>{},this.matrixAutoUpdate=!1,this.frustumCulled=!1,this.adoptPassState(s);for(let t=0;t<n;t++)this.setMatrixAt(t,Wt);this.instanceMatrix.needsUpdate=!0}adoptPassState(t){this.layers.mask=t.layers.mask,this.renderOrder=t.renderOrder,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow}assign(t,e){this.members[t]=e}writeSlot(t,e,n){return!1===n?(this.setMatrixAt(t,Wt),!1):(this.setMatrixAt(t,e.matrixWorld),!0)}park(t){this.members[t]=null,this.setMatrixAt(t,Wt)}get memberCount(){let t=0;for(let e of this.members)null!==e&&t++;return t}};function _t(t,e){let n=e.get(t);if(void 0!==n)return n;let s=t.visible&&(null===t.parent||_t(t.parent,e));return e.set(t,s),s}var kt=8,Ut=class{constructor(t=8){this.minGroupSize=t,this.groups=[],this.groupKeys=new WeakMap,this.placements=new Map,this.visibilityMemo=new Map,this.page=null,this.stats={instancingGroups:0,instancedDrawsSaved:0,instancingRegroups:0,instancingParks:0,instancingIneligible:{}}}update(t,e){this.page!==t&&(this.teardown(),this.page=t,e=!0),!0===t.matrixWorldAutoUpdate&&t.updateMatrixWorld(),e&&this.reconcile(t),this.refresh()}reconcile(t){let e={},n=new Map;t.traverse(t=>{if(!0===t.isInstanceGroup)return;let s=function(t){if(!0!==t.isMesh)return"not-a-mesh";if(z(t)||j(t)||R(t)||E(t))return"excluded-type";let e=function(t){let e=W(t)?t.object:t;return void 0!==e.geometry?e:void 0}(t);if(void 0===e)return"not-a-mesh";let n=e.material;if(void 0===n)return"not-a-mesh";if(Array.isArray(n))return"array-material";let s=e.builtSharedGeometry;if(void 0===s)return"unrealized-geometry";if(!function(t){return!0===t.isShared}(s))return"unshared-geometry";if(void 0===s.attributes.position)return"empty-geometry";if(void 0!==s.morphAttributes.position)return"morph";if(!0===e.isSkinnedMesh)return"skinned";let i=e.morphTargetInfluences;if(void 0!==i&&i.length>0)return"morph";if(0!==s.drawRange.start||s.drawRange.count!==Number.POSITIVE_INFINITY)return"draw-range";let r=n;return null!=r.positionNode||null!=r.castShadowPositionNode?"position-node":!0===r.transparent?"transparent":void 0!==e.userData?.__splinePlanarMirror?"reflection":function(t){let e=t;for(;null!==e;){let t=e.states;if(void 0!==t&&Object.keys(t).length>0)return!0;e=e.parent}return!1}(e)?"interaction-states":{object:t,owner:e,geometry:s,material:n,key:zt(t,e,s,n)}}(t);if("string"==typeof s)return void(e[s]=(e[s]??0)+1);let i=n.get(s.key);void 0===i?n.set(s.key,[s]):i.push(s)});let s=new Map;for(let[t,e]of n)for(let n of e)s.set(n.object,t);let i=!1;for(let[t,e]of this.placements)s.get(t)!==this.groupKeys.get(e.group)&&this.parkPlacement(t,e);for(let t=this.groups.length-1;t>=0;t--){let e=this.groups[t];e.memberCount>=this.minGroupSize||(this.destroyGroup(e),this.groups.splice(t,1),i=!0)}for(let[e,s]of n){let n=s.filter(t=>!this.placements.has(t.object));if(0===n.length)continue;let r=0;for(let t of this.groups){if(r>=n.length)break;if(this.groupKeys.get(t)!==e)continue;let{members:s}=t;for(let e=0;e<s.length&&r<n.length;e++)null===s[e]&&this.place(t,e,n[r++].object)}for(;n.length-r>=this.minGroupSize;){let s=n.slice(r,r+jt);this.groups.push(this.createGroup(t,e,s)),r+=s.length,i=!0}}i&&this.stats.instancingRegroups++,this.publishGroupStats(),this.stats.instancingIneligible=e}createGroup(t,e,n){let s=n[0],i=new Tt(s.geometry,s.material,function(t){for(let e of Ot)if(t<=e)return e;return jt}(n.length),s.object);this.groupKeys.set(i,e);for(let t=0;t<n.length;t++)this.place(i,t,n[t].object);return t.add(i),i}destroyGroup(t){for(let e=0;e<t.members.length;e++){let n=t.members[e];null!==n&&this.parkPlacement(n,{group:t,slot:e})}t.removeFromParent(),t.dispose()}place(t,e,n){t.assign(e,n),this.placements.set(n,{group:t,slot:e}),n.isDrawSuppressed=!0}parkPlacement(t,e){e.group.park(e.slot),e.group.instanceMatrix.needsUpdate=!0,this.placements.delete(t),t.isDrawSuppressed=!1,this.stats.instancingParks++}refresh(){this.visibilityMemo.clear();for(let t of this.groups){let{members:e}=t,n=null;for(let s=0;s<e.length;s++){let i=e[s];null!==i&&(null===n&&(n=i),t.writeSlot(s,i,_t(i,this.visibilityMemo)))}null!==n&&(t.adoptPassState(n),t.instanceMatrix.needsUpdate=!0)}}teardown(){for(let t of this.groups)this.destroyGroup(t);this.groups.length=0;for(let t of this.placements.keys())t.isDrawSuppressed=!1;this.placements.clear(),this.publishGroupStats()}dispose(){this.teardown(),this.page=null}publishGroupStats(){let t=0;for(let e of this.groups){let n=e.memberCount;n>0&&(t+=n-1)}this.stats.instancingGroups=this.groups.length,this.stats.instancedDrawsSaved=t}},Nt=function(){let t=new Float32Array(1),e=new Int32Array(t.buffer);return function(n){return t[0]=n,e[0]}}(),Gt=function(t,e,n,s){return t+(e<<8)+(n<<16)+(s<<24)},Vt=new H;function Ft(t){let e=!1;return t.scene.objects.traverse((t,n)=>{if(!1===n.visible)return!0;"Splat"===n.type&&(e=!0)}),e}var Lt,Qt,Yt=class extends gt{constructor(t,e,n,s,i=!1,r=1,a,o){super(n,s),this.splatCount=e,this.meshIndexIntervals=a,this.meshMatrixWorlds=o,this.splatBuffers=t,this.geometry=n,this.material=s,this.splatDataTextures=null,this.halfPrecisionCovariancesOnGPU=i,this.devicePixelRatio=r,this.resetLocalSplatDataAndTexturesFromSplatBuffer()}static buildMesh(t,e,n=!1,s=1,i,r){let a=Yt.buildGeomtery(e),o=Yt.buildMaterial(i);return new Yt(t,e,a,o,n,s,i,r)}static buildMaterial(t){if("webgpu"===b()&&St)return St.createSplatMaterial(t);let e={covariancesTexture:{type:"t",value:null},centersColorsTexture:{type:"t",value:null},meshIndexIntervals:{value:t},meshMatrixWorldsTexture:{type:"t",value:null},focal:{type:"v2",value:new H},viewport:{type:"v2",value:new H},basisViewport:{type:"v2",value:new H},debugColor:{type:"v3",value:new at},covariancesTextureSize:{type:"v2",value:new H(1024,1024)},centersColorsTextureSize:{type:"v2",value:new H(1024,1024)},orthoZoom:{type:"f",value:-1}};return new ut({uniforms:e,vertexShader:"\n precision highp float;\n #include <common>\n\n attribute uint splatIndex;\n\n uniform highp sampler2D covariancesTexture;\n uniform highp usampler2D centersColorsTexture;\n uniform vec2 focal;\n uniform vec2 viewport;\n uniform vec2 basisViewport;\n uniform vec2 covariancesTextureSize;\n uniform vec2 centersColorsTextureSize;\n\t\t\t\t\t\tuniform highp sampler2D meshMatrixWorldsTexture;\n\t\t\t\t\t\tuniform uint meshIndexIntervals[257];\n\t\t\t\t\t\tuniform float orthoZoom;\n\n varying vec4 vColor;\n varying vec2 vUv;\n\n varying vec2 vPosition;\n\n const vec4 encodeNorm4 = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0);\n const uvec4 mask4 = uvec4(uint(0x000000FF), uint(0x0000FF00), uint(0x00FF0000), uint(0xFF000000));\n const uvec4 shift4 = uvec4(0, 8, 16, 24);\n vec4 uintToRGBAVec (uint u) {\n uvec4 urgba = mask4 & u;\n urgba = urgba >> shift4;\n vec4 rgba = vec4(urgba) * encodeNorm4;\n return rgba;\n }\n\n vec2 getDataUV(in int stride, in int offset, in vec2 dimensions) {\n vec2 samplerUV = vec2(0.0, 0.0);\n float d = float(splatIndex * uint(stride) + uint(offset)) / dimensions.x;\n samplerUV.y = float(floor(d)) / dimensions.y;\n samplerUV.x = fract(d);\n return samplerUV;\n }\n\n void main () {\n uvec4 sampledCenterColor = texture(centersColorsTexture, getDataUV(1, 0, centersColorsTextureSize));\n vec3 splatCenter = uintBitsToFloat(uvec3(sampledCenterColor.gba));\n vColor = uintToRGBAVec(sampledCenterColor.r);\n\n vPosition = position.xy * 2.0;\n\n\t\t\t\t\t\t\t\tuint meshIndex;\n\t\t\t\t\t\t\t\tfor (int i = 1; i < 257; i++) {\n\t\t\t\t\t\t\t\t\tif (splatIndex < meshIndexIntervals[i]) {\n\t\t\t\t\t\t\t\t\t\tmeshIndex = uint(i - 1);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tfloat strideMulmeshIndex = float(4u*meshIndex);\n\t\t\t\t\t\t\t\tfloat meshMatrixWorldsTextureLength = float(256*4);\n\n\t\t\t\t\t\t\t\tmat4 modelMat = mat4(\n\t\t\t\t\t\t\t\t\ttexture(meshMatrixWorldsTexture, vec2((strideMulmeshIndex+0.0)/meshMatrixWorldsTextureLength, 0)),\n\t\t\t\t\t\t\t\t\ttexture(meshMatrixWorldsTexture, vec2((strideMulmeshIndex+1.0)/meshMatrixWorldsTextureLength, 0)),\n\t\t\t\t\t\t\t\t\ttexture(meshMatrixWorldsTexture, vec2((strideMulmeshIndex+2.0)/meshMatrixWorldsTextureLength, 0)),\n\t\t\t\t\t\t\t\t\ttexture(meshMatrixWorldsTexture, vec2((strideMulmeshIndex+3.0)/meshMatrixWorldsTextureLength, 0))\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tmat4 modelViewMat = viewMatrix * modelMat;\n\t\t\t\t\t\t\t\tvec4 viewCenter = modelViewMat * vec4(splatCenter, 1.0); \n vec4 clipCenter = projectionMatrix * viewCenter;\n\n vec2 sampledCovarianceA = texture(covariancesTexture, getDataUV(3, 0, covariancesTextureSize)).rg;\n vec2 sampledCovarianceB = texture(covariancesTexture, getDataUV(3, 1, covariancesTextureSize)).rg;\n vec2 sampledCovarianceC = texture(covariancesTexture, getDataUV(3, 2, covariancesTextureSize)).rg;\n\n vec3 cov3D_M11_M12_M13 = vec3(sampledCovarianceA.rg, sampledCovarianceB.r);\n vec3 cov3D_M22_M23_M33 = vec3(sampledCovarianceB.g, sampledCovarianceC.rg);\n\n \n mat3 Vrk = mat3(\n cov3D_M11_M12_M13.x, cov3D_M11_M12_M13.y, cov3D_M11_M12_M13.z,\n cov3D_M11_M12_M13.y, cov3D_M22_M23_M33.x, cov3D_M22_M23_M33.y,\n cov3D_M11_M12_M13.z, cov3D_M22_M23_M33.y, cov3D_M22_M23_M33.z\n );\n float s = 1.0 / (viewCenter.z * viewCenter.z);\n\n mat3 W = transpose(mat3(modelViewMat));\n mat3 T = orthoZoom > 0.0 ? W : W * mat3(\n\t\t\t\t\t\t\t\t\tfocal.x / viewCenter.z, 0., -(focal.x * viewCenter.x) * s,\n\t\t\t\t\t\t\t\t\t0., focal.y / viewCenter.z, -(focal.y * viewCenter.y) * s,\n\t\t\t\t\t\t\t\t\t0., 0., 0.\n\t\t\t\t\t\t\t\t);\n mat3 cov2Dm = transpose(T) * Vrk * T;\n cov2Dm[0][0] += 0.3;\n cov2Dm[1][1] += 0.3;\n\n \n \n \n \n vec3 cov2Dv = vec3(cov2Dm[0][0], cov2Dm[0][1], cov2Dm[1][1]);\n\n vec3 ndcCenter = clipCenter.xyz / clipCenter.w;\n\n \n \n \n \n \n \n \n \n float a = cov2Dv.x;\n float d = cov2Dv.z;\n float b = cov2Dv.y;\n float D = a * d - b * b;\n float trace = a + d;\n float traceOver2 = 0.5 * trace;\n float term2 = sqrt(trace * trace / 4.0 - D);\n float eigenValue1 = traceOver2 + term2;\n\t\t\t\t\t\t\t\tfloat eigenValue2 = max(traceOver2 - term2, 0.00); \n\n const float maxSplatSize = 1024.0;\n vec2 eigenVector1 = normalize(vec2(b, eigenValue1 - a));\n \n vec2 eigenVector2 = vec2(eigenVector1.y, -eigenVector1.x);\n vec2 basisVector1 = eigenVector1 * min(sqrt(2.0 * eigenValue1), maxSplatSize);\n vec2 basisVector2 = eigenVector2 * min(sqrt(2.0 * eigenValue2), maxSplatSize);\n\n vec2 ndcOffset = vec2(vPosition.x * basisVector1 + vPosition.y * basisVector2) * basisViewport;\n\n\t\t\t\t\t\t\t\tif (orthoZoom > 0.0) {\n\t\t\t\t\t\t\t\t\tndcOffset *= orthoZoom;\n\t\t\t\t\t\t\t\t}\n\n gl_Position = vec4(ndcCenter.xy + ndcOffset, ndcCenter.z, 1.0);\n }",fragmentShader:"\n precision highp float;\n #include <common>\n\n uniform vec3 debugColor;\n\n varying vec4 vColor;\n varying vec2 vUv;\n\n varying vec2 vPosition;\n\t\t\t\t\t\tlayout(location = 1) out vec4 gVelocity; \n\n void main () {\n \n \n float A = -dot(vPosition, vPosition);\n if (A < -4.0) discard;\n vec3 color = vColor.rgb;\n A = exp(A) * vColor.a;\n gl_FragColor = vec4(color.rgb, A);\n\t\t\t\t\t\t\t\tgVelocity = vec4(0.0); \n }",transparent:!0,alphaTest:1,blending:At,depthTest:!0,depthWrite:!1,side:yt})}static buildGeomtery(t){let e=new mt;e.setIndex([0,1,2,0,2,3]);let n=new Float32Array(12),s=new ct(n,3);e.setAttribute("position",s),s.setXYZ(0,-1,-1,0),s.setXYZ(1,-1,1,0),s.setXYZ(2,1,1,0),s.setXYZ(3,1,-1,0),s.needsUpdate=!0;let i=(new et).copy(e),r=new Uint32Array(t),a=new Ct(r,1,!1);return a.setUsage(xt),i.setAttribute("splatIndex",a),i.instanceCount=t,i}resetLocalSplatDataAndTexturesFromSplatBuffer(){this.updateLocalSplatDataFromSplatBuffer(),this.allocateAndStoreLocalSplatDataInTextures()}updateLocalSplatDataFromSplatBuffer(){this.splatBuffers.forEach(t=>t.buildPreComputedBuffers()),this.covariances=new Float32Array(6*this.splatCount),this.colors=new Uint8Array(4*this.splatCount),this.centers=new Float32Array(3*this.splatCount);let t=0,e=0,n=0;for(let s of this.splatBuffers){let i=s.nsplats;this.colors.subarray(t,t+4*i).set(s.colorsA),t+=4*i,this.centers.subarray(e,e+3*i).set(s.decoded.xyz.denormDequant().data),e+=3*i,this.covariances.subarray(n,n+6*i).set(new Float32Array(s.precomputedCovarianceBufferData)),n+=6*i}}allocateAndStoreLocalSplatDataInTextures(){let t=this.splatCount,e=new H(4096,1024);for(;e.x*e.y*2<6*t;)e.y*=2;let n,s,i=new H(4096,1024);for(;i.x*i.y*4<4*t;)i.y*=2;if(this.halfPrecisionCovariancesOnGPU){s=new Uint16Array(e.x*e.y*2);for(let t=0;t<this.covariances.length;t++)s[t]=dt.toHalfFloat(this.covariances[t]);n=new bt(s,e.x,e.y,st,K)}else s=new Float32Array(e.x*e.y*2),s.set(this.covariances),n=new bt(s,e.x,e.y,st,X);n.needsUpdate=!0,this.material.uniforms.covariancesTexture.value=n,this.material.uniforms.covariancesTextureSize.value.copy(e);let r=new Uint32Array(i.x*i.y*4);for(let e=0;e<t;e++){let t=4*e,n=3*e,s=4*e;r[s]=Gt(this.colors[t],this.colors[t+1],this.colors[t+2],this.colors[t+3]),r[s+1]=Nt(this.centers[n]),r[s+2]=Nt(this.centers[n+1]),r[s+3]=Nt(this.centers[n+2])}let a=new bt(r,i.x,i.y,rt,Mt);"webgpu"!==b()&&(a.internalFormat="RGBA32UI"),a.needsUpdate=!0,this.material.uniforms.centersColorsTexture.value=a,this.material.uniforms.centersColorsTextureSize.value.copy(i);let o=new Float32Array(4096);for(let t=0;t<this.meshMatrixWorlds.length;t++)o.set(this.meshMatrixWorlds[t].elements,16*t);let l=new bt(o,1024,1,nt,X);l.needsUpdate=!0,this.material.uniforms.meshMatrixWorldsTexture.value=l,this.material.uniformsNeedUpdate=!0,this.splatDataTextures={covariances:{data:s,texture:n,size:e},centerColors:{data:r,texture:a,size:i},meshMatrixWorlds:{data:o,texture:l}}}updateIndexes(t){let e=this.geometry;e.attributes.splatIndex.set(t),e.attributes.splatIndex.needsUpdate=!0,e.instanceCount=t.length}updateUniforms(t,e,n,s){this.splatCount>0&&(Vt.set(t.x*this.devicePixelRatio,t.y*this.devicePixelRatio),this.material.uniforms.viewport.value.copy(Vt),this.material.uniforms.basisViewport.value.set(2/Vt.x,2/Vt.y),this.material.uniforms.focal.value.set(e,n),this.material.uniforms.orthoZoom.value=s,this.material.uniformsNeedUpdate=!0)}getSplatDataTextures(){return this.splatDataTextures}getSplatCount(){return this.splatCount}getCenters(){return this.centers}getColors(){return this.colors}getCovariances(){return this.covariances}dispose(){this.geometry.dispose(),this.material.dispose(),this.splatDataTextures&&(this.splatDataTextures.covariances.texture.dispose(),this.splatDataTextures.centerColors.texture.dispose(),this.splatDataTextures.meshMatrixWorlds.texture.dispose()),this.removeFromParent()}},qt=new Promise(t=>{Lt=t}),Zt=!1;function Xt(){if(!Zt)return Qt||(Qt=async function(){let t=await import("./gaussian-splat-compression.js");Lt(t),Zt=!0}())}var Kt=new it,Ht=new tt,Jt=new $,$t=new $,te=new $,ee=new $,ne=new $,se=new $;function ie(t,e,n){n.length=0;let{axis:s,sign:i,limit:r}=e;for(let e=0;e<t.length;e++){let a=t[e],o=t[(e+1)%t.length],l=(0===s?a.px:1===s?a.py:a.pz)*i-r,d=(0===s?o.px:1===s?o.py:o.pz)*i-r,c=l<=0,h=d<=0;if(c&&n.push(a),c!==h){let t=l/(l-d);n.push({px:a.px+(o.px-a.px)*t,py:a.py+(o.py-a.py)*t,pz:a.pz+(o.pz-a.pz)*t,nx:a.nx+(o.nx-a.nx)*t,ny:a.ny+(o.ny-a.ny)*t,nz:a.nz+(o.nz-a.nz)*t})}}return n}function re(t,e,n,s,i,r,a,o,l){let d=t.geometry,c=d.getAttribute("position");if(void 0===c||0===c.count)return!0;let h=d.getAttribute("normal"),p=d.getIndex(),u=null!==p?p.count:c.count;if(u>15e5)return!0;let m=d.drawRange.start,f=m+(d.drawRange.count===1/0?u-m:Math.min(d.drawRange.count,u-m));Kt.copy(t.objectToDecal),Ht.getNormalMatrix(Kt);let y=[],g=[];for(let t=m;t+2<f;t+=3){let d=null!==p?p.getX(t):t,u=null!==p?p.getX(t+1):t+1,m=null!==p?p.getX(t+2):t+2;if(Jt.fromBufferAttribute(c,d).applyMatrix4(Kt),$t.fromBufferAttribute(c,u).applyMatrix4(Kt),te.fromBufferAttribute(c,m).applyMatrix4(Kt),Jt.z>n&&$t.z>n&&te.z>n||Jt.z<-n&&$t.z<-n&&te.z<-n)continue;ee.subVectors($t,Jt),ne.subVectors(te,Jt),se.crossVectors(ee,ne);let f=se.length();if(!(0===f||se.z/f<=.01)){if(y.length=0,void 0!==h)ee.fromBufferAttribute(h,d).applyMatrix3(Ht),y.push({px:Jt.x,py:Jt.y,pz:Jt.z,nx:ee.x,ny:ee.y,nz:ee.z}),ee.fromBufferAttribute(h,u).applyMatrix3(Ht),y.push({px:$t.x,py:$t.y,pz:$t.z,nx:ee.x,ny:ee.y,nz:ee.z}),ee.fromBufferAttribute(h,m).applyMatrix3(Ht),y.push({px:te.x,py:te.y,pz:te.z,nx:ee.x,ny:ee.y,nz:ee.z});else{se.divideScalar(f);for(let t of[Jt,$t,te])y.push({px:t.x,py:t.y,pz:t.z,nx:se.x,ny:se.y,nz:se.z})}for(let t of e){if(0===y.length)break;let e=ie(y,t,g);g=y,y=e}if(!(y.length<3)){if(a.length/3+3*(y.length-2)>3e5)return!1;for(let t=1;t+1<y.length;t++)for(let e of[y[0],y[t],y[t+1]]){l.push(e.px*s+.5,e.py*i+.5);let t=e.nx,n=e.ny,d=e.nz,c=Math.hypot(t,n,d);c>0?(t/=c,n/=c,d/=c):(t=0,n=0,d=1),a.push(e.px+t*r,e.py+n*r,e.pz+d*r),o.push(t,n,d)}}}}return!0}var ae=new lt,oe=new lt,le=new it,de=new $,ce=class extends w{constructor(t,e,n){super(t,e),this.data=e,this.geometry=new mt,this.lastSignature=[],this.nextSignature=[],this.scanned=[],this.lastParams={width:0,height:0,depth:0,offset:0},this.targetFilter=new Set,this.context=n;let s=this.data.geometry;this.lastParams={width:this.resolveNumber(s.width,0),height:this.resolveNumber(s.height,0),depth:this.resolveNumber(s.depth,0),offset:s.offset??0},this.geometry.userData={type:"DecalGeometry",parameters:{...this.lastParams}}}get isLOD(){return this.updateDecal(),!1}get isDecalObject(){return!0}resolveNumber(t,e){if("number"==typeof t)return t;let n=Number(this.context.shared.getVariable(t));return Number.isFinite(n)?n:e}currentParams(){let t=this.dataPatched.geometry;return{width:this.resolveNumber(t.width,this.lastParams.width),height:this.resolveNumber(t.height,this.lastParams.height),depth:this.resolveNumber(t.depth,this.lastParams.depth),offset:t.offset??0}}projectionRoot(){let t=this.parent;for(;null!==t&&B.is(t);){if("Page"===t.data?.type)return t;t=t.parent}return this.context.scene}currentTargetFilter(){let t=this.dataPatched.geometry;if("select"!==t.projection)return null;let e=t.projectionTargets;if(e!==this.targetFilterSource&&(this.targetFilterSource=e,this.targetFilter.clear(),void 0!==e))for(let t of e)this.targetFilter.add(t);return this.targetFilter}static matchesTargetFilter(t,e,n){let s=t;for(;null!==s&&s!==n;){if(e.has(s.uuid))return!0;s=s.parent}return!1}scanTargets(t,e,n){let s=this.scanned;s.length=0;let i=this.projectionRoot();if(null===i)return s;let r=this.currentTargetFilter();if(null!==r&&0===r.size)return s;ae.makeEmpty();for(let s=0;s<8;s++)de.set((1&s?.5:-.5)*t,(2&s?.5:-.5)*e,(4&s?.5:-.5)*n).applyMatrix4(this.matrixWorld),ae.expandByPoint(de);return i.traverse(t=>{if(t===this||!B.is(t)||!(t instanceof D)||t instanceof ce||"Mesh"!==t.dataPatched?.type||!t.visible||t.destroyedInAction||512&t.layers.mask||null!==r&&!ce.matchesTargetFilter(t,r,i))return;let e=t.geometry,n=e?.getAttribute("position");void 0===n||0===n.count||0!==e.drawRange.count&&(null===e.boundingBox&&e.computeBoundingBox(),oe.copy(e.boundingBox).applyMatrix4(t.matrixWorld),ae.intersectsBox(oe)&&s.push(t))}),s}collectSignature(t,e,n){t.length=0,t.push(n.width,n.height,n.depth,n.offset);for(let e of this.matrixWorld.elements)t.push(e);for(let n of e){t.push(n.id,n.geometry.id);let e=n.geometry.getAttribute("position");t.push(void 0===e?-1:"version"in e?e.version:e.data.version);let s=n.geometry.getIndex();t.push(null!==s?s.version:-1),t.push(n.geometry.drawRange.count===1/0?-1:n.geometry.drawRange.count);for(let e of n.matrixWorld.elements)t.push(e)}}signaturesEqual(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}updateDecal(){if(this.disposed)return!1;this.updateWorldMatrix(!0,!1);let t=this.currentParams(),e=this.scanTargets(t.width,t.height,t.depth);if(this.collectSignature(this.nextSignature,e,t),this.signaturesEqual(this.nextSignature,this.lastSignature))return!1;let n=this.lastSignature;this.lastSignature=this.nextSignature,this.nextSignature=n,this.lastParams=t,le.copy(this.matrixWorld).invert();let s=e.map(t=>({geometry:t.geometry,objectToDecal:(new it).multiplyMatrices(le,t.matrixWorld)}));return this.geometry.dispose(),this.geometry=function(t,e){let n=Math.max(Math.abs(e.width),1e-6),s=Math.max(Math.abs(e.height),1e-6),i=Math.max(Math.abs(e.depth),1e-6),r=[{axis:0,sign:1,limit:n/2},{axis:0,sign:-1,limit:n/2},{axis:1,sign:1,limit:s/2},{axis:1,sign:-1,limit:s/2},{axis:2,sign:1,limit:i/2},{axis:2,sign:-1,limit:i/2}],a=[],o=[],l=[];for(let d of t)if(!re(d,r,i/2,1/n,1/s,e.offset,a,o,l))break;let d=new mt;return d.setAttribute("position",new ht(a,3)),d.setAttribute("normal",new ht(o,3)),d.setAttribute("uv",new ht(l,2)),0===a.length?(d.setDrawRange(0,0),d.boundingSphere=new pt):d.computeBoundingSphere(),d}(s,t),this.geometry.userData={type:"DecalGeometry",parameters:{width:t.width,height:t.height,depth:t.depth}},g(this),x(this),this.resetBBoxNeedsUpdate(),!0}updateByPatchedOp(t,e,n){super.updateByPatchedOp(t,e,n),M(t.path,["geometry"])&&this.resetBBoxNeedsUpdate()}updateEntityBoxSize(t,e){let n=this.currentParams();t.setScalar(0),e.set(n.width,n.height,n.depth).multiplyScalar(.5)}dispose(){super.dispose(),this.geometry.dispose()}},he=class extends(A(vt,v)){constructor(t,e){super(),this.super_Entity(t,e),this.objectHelper.update(),this.matrixAutoUpdate=!0}updateState(t,e){this.updateState_Entity(t,e)}},pe=function(){try{let t=window.location.href;if(t.includes("reducesubdiv=")){let e=t.indexOf("reducesubdiv=")+13;return parseInt(t.slice(e,e+1))}}catch{}}();function ue(n,s,i){if(console.assert(void 0!==s.type),"Mesh"===s.type)return function(t,e,n){let s;if(void 0!==pe&&e?.geometry&&"subdivisions"in e.geometry&&(e.geometry.subdivisions??0)>pe&&Object.assign(e.geometry,{subdivisions:pe}),"TextGeometry"===e.geometry.type||"InputGeometry"===e.geometry.type){let s=U(e.geometry.type);return s?s(t,e,n):(_("InputGeometry"===e.geometry.type?"textinputs":"text",`a Mesh with ${e.geometry.type}`),new C(t,e,n))}if("SubdivGeometry"===e.geometry.type)s=new y(t,e,n);else if("PathGeometry"===e.geometry.type||"VectorGeometry"===e.geometry.type||"ShapeBlendGeometry"===e.geometry.type){let i=U(e.geometry.type);i?s=i(t,e,n):(_("ShapeBlendGeometry"===e.geometry.type?"shape-blends":"PathGeometry"===e.geometry.type?"3d-paths":"vector-shapes",`a Mesh with ${e.geometry.type}`),s=new C(t,e,n))}else if("BooleanGeometry"===e.geometry.type)s=new d(t,e,n);else if("DecalGeometry"===e.geometry.type)s=new ce(t,e,n);else if("UIGeometry"===e.geometry.type){let i=U("UIGeometry");i?s=i(t,e,n):(_("ui-2d","a Mesh with UIGeometry"),s=new C(t,e,n))}else s=new C(t,e,n);return s}(n,s,i);if("Empty"===s.type)return new e(n,s);if("Particle"===s.type){let t=k("Particle");return t?t(n,s,i):(_("particles","a Particle system"),new e(n,s))}if("ParticleCollider"===s.type)return new f(n,s,i);if("Hair"===s.type){let t=k("Hair");return t?t(n,s,i):(_("hair","a Hair System"),new e(n,s))}if("Splat"===s.type)return new e(n,s);if("Bone"===s.type)return new he(n,s);if("Page"===s.type)return new a(n,s,i);if("PointLight"===s.type)return new t(n,s,i);if("SpotLight"===s.type)return new l(n,s,i);if("DirectionalLight"===s.type)return new o(n,s,i);if("Component"===s.type||"Instance"===s.type){let t=k(s.type);return t?t(n,s,i):(_("components",`a ${s.type}`),new e(n,s))}return G.is(s.type)?new m(n,s):(console.error(s),new e(n,s))}P.createEntity=ue,P.changeEntityProptotype=function(t,e,n){let s=ue(t.identity,e,n),i=t.children,r=t.attachedPaths,a=t.parent,o=t.component,l=t.instances,d=t.overrideData,c=t.uuid,h=t.stateSelection;t.dispose();for(let e of Object.keys(t))delete t[e];Object.setPrototypeOf(t,Object.getPrototypeOf(s));for(let e of Object.keys(s))t[e]=s[e];t.children=[...t.children,...i],t.attachedPaths=r,t.parent=a,t.component=o,t.instances=l,t.uuid=c,t.overrideData=d,t.updateState(t.data,n),h&&t.changeSelectedState(h,n),t.resetBBoxNeedsUpdate()};var me,fe=class{constructor(){this._constraints=new Map}setConstraint(t,e){null===e?this._constraints.delete(t):this._constraints.set(t,e)}removeDependencies(t){this._constraints.delete(t)}applyConstraints(t){let e=new Set;this._constraints.forEach((n,s)=>{let i=[s,n],r=n;for(;this._constraints.has(r);){if(r=this._constraints.get(r),i.includes(r)){console.warn(`circular dependency detected: ${i.join(" -> ")}`);break}e.has(r)||i.push(r)}for(let n=i.length-2;n>=0;n--)if(!e.has(i[n])){let s=t.find(i[n]);s?s.applyPathSnapping(t):console.warn(`missing entity ${i[n]}`),e.add(i[n])}})}findDependency(t,e){let n=t;for(;this._constraints.has(n);)if(n=this._constraints.get(n),n===e)return!0;return!1}},ye=class{};Pt(ye,"DepthMapRange",65536),Pt(ye,"MemoryPageSize",65536),Pt(ye,"BytesPerFloat",4),Pt(ye,"BytesPerInt",4),qt.then(t=>me=t);var ge=class{constructor(t={}){Pt(this,"updateView",function(){let t=new it,e=[],n=new $(0,0,-1),s=new $(0,0,-1),i=new $,r=new $;return function(a=!1,o){let l=this.updateMatrixWorldsInWorkerIfNeeded(),d=this.cropsChanged();if(!a){s.set(0,0,-1).applyQuaternion(o.quaternion);let t=!1,e=!1;if(s.dot(n)<=.95&&(t=!0),r.copy(o.position).sub(i).length()>=1&&(e=!0),!(t||e||l||d||this.needsInitialRender))return}this.needsInitialRender=!1,i.copy(o.position),n.copy(s),t.copy(o.matrixWorld).invert(),t.premultiply(this.dummyPerspectiveMatrix),e[0]=o.position.x,e[1]=o.position.y,e[2]=o.position.z;let c={sort:{view:t.elements,cameraPosition:e,splatRenderCount:this.splatRenderCount,splatSortCount:this.splatRenderCount},...l?{newMatrixWorlds:this.meshMatrixWorlds}:{},...d?{newCropsArray:this.cropsArray}:{}};this.sortRunning?this.queuedMessage=c:(this.queuedMessage=null,this.sortRunning=!0,this.sortWorker.postMessage(c))}}()),this.scene=t.scene,this.currentPage=null,this.devicePixelRatio=window.devicePixelRatio,this.sortWorker=null,this.splatRenderCount=0,this.splatSortCount=0,this.splatMesh=null,this.sortRunning=!1,this.meshMatrixWorlds=null,this.meshMatrixWorldsOld=null,this.cropsArray=null,this.splatEntries=null,this.queuedMessage=null,this.needsInitialRender=!0,this.dummyPerspectiveMatrix=(new it).makePerspective(-1,1,-1,1,.1,1e3)}updateSplatMeshUniforms(t,e){let n=new H;null!==this.splatMesh&&this.splatMesh.getSplatCount()>0&&(t.getSize(n),this.cameraFocalLengthX=e.projectionMatrix.elements[0]*this.devicePixelRatio*n.x*.45,this.cameraFocalLengthY=e.projectionMatrix.elements[5]*this.devicePixelRatio*n.y*.45,this.splatMesh.updateUniforms(n,this.cameraFocalLengthX,this.cameraFocalLengthY,e.isPerspectiveCamera?-1:e.zoom*this.devicePixelRatio))}loadSplat(t={}){this.activePage=this.scene.activePage,t.position&&(t.position=(new $).fromArray(t.position)),t.orientation&&(t.orientation=(new J).fromArray(t.orientation)),t.halfPrecisionCovariances=!!t.halfPrecisionCovariances;let e=[];if(this.splatEntries=e,this.activePage.traverseVisibleEntity(t=>{"Splat"===t.data.type&&e.push(t)}),this.splatMesh&&this.splatMesh.dispose(),0===e.length)return this.splatMesh=null,!1;this.meshMatrixWorlds=e.map(t=>t.matrixWorld),this.meshMatrixWorldsOld=e.map(t=>t.matrixWorld.clone()),this.cropsArray=e.map(t=>t.data.crops.map(t=>t.data)),this._splatBufferCache??(this._splatBufferCache=new WeakMap);let n=e.map(t=>{let e=this._splatBufferCache.get(t.data.buffer);return void 0===e&&(e=new me.GSplineBuffer(new Uint8Array(t.data.buffer).buffer),this._splatBufferCache.set(t.data.buffer,e)),e}),s=0,i=[0];for(let t of n)s+=t.getSplatCount(),i.push(s);return this.setupSplatMesh(n,s,t.position,t.orientation,t.halfPrecisionCovariances,this.devicePixelRatio,i,this.meshMatrixWorlds),this.setupSortWorker(s),!0}updateMatrixWorldsInWorkerIfNeeded(){let t=this.splatDataTextures.meshMatrixWorlds.data;for(let e=0;e<this.meshMatrixWorlds.length;e++)t.set(this.meshMatrixWorlds[e].elements,16*e);return this.splatDataTextures.meshMatrixWorlds.texture.needsUpdate=!0,!this.meshMatrixWorlds.every((t,e)=>t.equals(this.meshMatrixWorldsOld[e]))&&(this.meshMatrixWorldsOld=this.meshMatrixWorlds.map(t=>t.clone()),!0)}cropsChanged(){let t=!1;return this.splatEntries.forEach((e,n)=>{e.data.crops.forEach((e,s)=>{void 0===this.cropsArray[n][s]?(t=!0,this.cropsArray[n][s]=e.data):Object.entries(e.data).forEach(([e,i])=>{(Array.isArray(i)&&i.some((t,i)=>t!==this.cropsArray[n][s][e][i])||i!==this.cropsArray[n][s]?.[e])&&(t=!0,this.cropsArray[n][s][e]=i)})}),e.data.crops.length!==this.cropsArray[n]?.length&&(this.cropsArray[n].length=e.data.crops.length,t=!0)}),t}setupSplatMesh(t,e,n=new $,s=new J,i=!1,r=1,a,o){this.splatMesh=Yt.buildMesh(t,e,i,r,a,o),this.splatMesh.position.copy(n),this.splatMesh.quaternion.copy(s),this.splatMesh.frustumCulled=!1,this.splatMesh.renderOrder=99999,this.splatRenderCount=e,this.splatMesh.onBeforeRender=(t,e,n)=>this.update(t,n)}setupSortWorker(t){this.sortWorker=function(t){let e=new Worker(URL.createObjectURL(new Blob(["(","\nfunction sortWorker(self) {\n\tlet wasmInstance;\n\tlet splatCount;\n\tlet splatRC;\n\tlet indexesOffset;\n\tlet positionsOffset;\n\tlet viewProjOffset;\n\tlet frequenciesOffset;\n\tlet indexesOutOffset;\n\tlet sortBuffersOffset;\n\tlet wasmMemory;\n\tlet positions;\n\n\tlet Constants;\n\tlet floatPositions;\n\tlet meshIndexIntervals;\n\tlet meshMatrixWorlds;\n\tlet cropsArray;\n\n\tfunction sort(viewProj) {\n\t\t// console.time('WASM SORT');\n\t\tconst viewProjArray = new Float64Array(wasmMemory, viewProjOffset, 16);\n\t\tfor (let i = 0; i < 16; i++) {\n\t\t\tviewProjArray[i] = viewProj[i];\n\t\t}\n\t\tlet indexesBuffer;\n\t\t// console.timeEnd('WASM SORT');\n\t\tif (splatRC > 1) {\n\t\t\twasmInstance.exports.sortIndexes(\n\t\t\t\tindexesOffset,\n\t\t\t\tpositionsOffset,\n\t\t\t\tsortBuffersOffset,\n\t\t\t\tviewProjOffset,\n\t\t\t\tfrequenciesOffset,\n\t\t\t\tindexesOutOffset,\n\t\t\t\tConstants.DepthMapRange,\n\t\t\t\tsplatRC\n\t\t\t);\n\t\t\tconst indexes = new Uint32Array(splatRC);\n\t\t\tindexesBuffer = indexes.buffer;\n\t\t\tindexes.set(new Uint32Array(wasmMemory, indexesOutOffset, splatRC));\n\t\t} else if (splatRC === 1) {\n\t\t\tconst indexes = new Uint32Array(splatRC);\n\t\t\tindexes[0] = new Uint32Array(wasmMemory, indexesOffset, splatCount)[0];\n\t\t\tindexesBuffer = indexes.buffer;\n\t\t} else {\n\t\t\tindexesBuffer = new ArrayBuffer(0);\n\t\t}\n\n\t\tself.postMessage(\n\t\t\t{\n\t\t\t\tsortDone: true,\n\t\t\t\tindexesBuffer,\n\t\t\t},\n\t\t\t[indexesBuffer]\n\t\t);\n\t}\n\tfunction updateRenderedSplats(\n\t\tmeshMatrixWorlds,\n\t\tcropsArray,\n\t\tmeshIndexIntervals\n\t) {\n\t\tconst renderedPositions = new Float32Array(\n\t\t\twasmMemory,\n\t\t\tpositionsOffset,\n\t\t\tsplatCount * 3\n\t\t);\n\t\tsplatRC = 0;\n\t\tconst wasmMemoryIndexes = new Uint32Array(\n\t\t\twasmMemory,\n\t\t\tindexesOffset,\n\t\t\tsplatCount\n\t\t);\n\t\tfor (let i = 0; i < meshIndexIntervals.length - 1; i++) {\n\t\t\tconst crops = cropsArray[i];\n\t\t\tconst matrixWorld = meshMatrixWorlds[i].elements;\n\t\t\tconst paramsIn = crops\n\t\t\t\t.filter((a) => a.enabled && a.mode === 'Include')\n\t\t\t\t.map((c) =>\n\t\t\t\t\tc.type === 'Box'\n\t\t\t\t\t\t? computeBoundingBoxVertices(c)\n\t\t\t\t\t\t: computeEllipsoidParams(c)\n\t\t\t\t);\n\t\t\tconst paramsOut = crops\n\t\t\t\t.filter((a) => a.enabled && a.mode === 'Exclude')\n\t\t\t\t.map((c) =>\n\t\t\t\t\tc.type === 'Box'\n\t\t\t\t\t\t? computeBoundingBoxVertices(c)\n\t\t\t\t\t\t: computeEllipsoidParams(c)\n\t\t\t\t);\n\t\t\tfor (let j = meshIndexIntervals[i]; j < meshIndexIntervals[i + 1]; j++) {\n\t\t\t\tconst x = floatPositions[j * 3];\n\t\t\t\tconst y = floatPositions[j * 3 + 1];\n\t\t\t\tconst z = floatPositions[j * 3 + 2];\n\t\t\t\tif (\n\t\t\t\t\t(paramsIn.length === 0 || isInBounds(x, y, z, paramsIn)) &&\n\t\t\t\t\t(paramsOut.length === 0 || !isInBounds(x, y, z, paramsOut))\n\t\t\t\t) {\n\t\t\t\t\tconst w =\n\t\t\t\t\t\t1 /\n\t\t\t\t\t\t(matrixWorld[3] * x +\n\t\t\t\t\t\t\tmatrixWorld[7] * y +\n\t\t\t\t\t\t\tmatrixWorld[11] * z +\n\t\t\t\t\t\t\tmatrixWorld[15]);\n\t\t\t\t\trenderedPositions[splatRC * 3] =\n\t\t\t\t\t\t(matrixWorld[0] * x +\n\t\t\t\t\t\t\tmatrixWorld[4] * y +\n\t\t\t\t\t\t\tmatrixWorld[8] * z +\n\t\t\t\t\t\t\tmatrixWorld[12]) *\n\t\t\t\t\t\tw;\n\t\t\t\t\trenderedPositions[splatRC * 3 + 1] =\n\t\t\t\t\t\t(matrixWorld[1] * x +\n\t\t\t\t\t\t\tmatrixWorld[5] * y +\n\t\t\t\t\t\t\tmatrixWorld[9] * z +\n\t\t\t\t\t\t\tmatrixWorld[13]) *\n\t\t\t\t\t\tw;\n\t\t\t\t\trenderedPositions[splatRC * 3 + 2] =\n\t\t\t\t\t\t(matrixWorld[2] * x +\n\t\t\t\t\t\t\tmatrixWorld[6] * y +\n\t\t\t\t\t\t\tmatrixWorld[10] * z +\n\t\t\t\t\t\t\tmatrixWorld[14]) *\n\t\t\t\t\t\tw;\n\t\t\t\t\twasmMemoryIndexes[splatRC] = j;\n\t\t\t\t\tsplatRC++;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tfunction getOutOfBoundsIndexes(floatPositions, crops) {\n\t\tconst outOfBoundsIndexes = [];\n\t\tconst paramsIn = crops\n\t\t\t.filter((a) => a.enabled && a.mode === 'Include')\n\t\t\t.map((c) =>\n\t\t\t\tc.type === 'Box'\n\t\t\t\t\t? computeBoundingBoxVertices(c)\n\t\t\t\t\t: computeEllipsoidParams(c)\n\t\t\t);\n\t\tconst paramsOut = crops\n\t\t\t.filter((a) => a.enabled && a.mode === 'Exclude')\n\t\t\t.map((c) =>\n\t\t\t\tc.type === 'Box'\n\t\t\t\t\t? computeBoundingBoxVertices(c)\n\t\t\t\t\t: computeEllipsoidParams(c)\n\t\t\t);\n\n\t\tconst len = floatPositions.length;\n\t\tfor (let j = 0; j < len; j += 3) {\n\t\t\tconst x = floatPositions[j];\n\t\t\tconst y = floatPositions[j + 1];\n\t\t\tconst z = floatPositions[j + 2];\n\t\t\tif (\n\t\t\t\t(paramsIn.length === 0 || isInBounds(x, y, z, paramsIn)) &&\n\t\t\t\t(paramsOut.length === 0 || !isInBounds(x, y, z, paramsOut))\n\t\t\t) {\n\t\t\t\t// in bounds: intentionally skip\n\t\t\t} else {\n\t\t\t\toutOfBoundsIndexes.push(j / 3);\n\t\t\t}\n\t\t}\n\t\t// console.log(outOfBoundsIndexes);\n\t\treturn outOfBoundsIndexes;\n\t}\n\n\tfunction isInBounds(x, y, z, params, mode) {\n\t\treturn params[mode === 'Intersect' ? 'every' : 'some']((param) => {\n\t\t\tconst t = applyRotationMatrix(\n\t\t\t\tx,\n\t\t\t\ty,\n\t\t\t\tz,\n\t\t\t\tparam.invRotationMatrix,\n\t\t\t\tparam.cropCenter\n\t\t\t);\n\t\t\treturn Array.isArray(param)\n\t\t\t\t? isVertexInsideBoundingBox(t.x, t.y, t.z, param)\n\t\t\t\t: isPointInsideEllipsoid(t.x, t.y, t.z, param);\n\t\t});\n\t}\n\tfunction applyRotationMatrix(_x, _y, _z, e, pivot) {\n\t\tconst x = _x - pivot[0];\n\t\tconst y = _y - pivot[1];\n\t\tconst z = _z - pivot[2];\n\t\tconst w = 1 / (e[3] * x + e[7] * y + e[11] * z + e[15]);\n\t\treturn {\n\t\t\tx: (e[0] * x + e[4] * y + e[8] * z + e[12]) * w + pivot[0],\n\t\t\ty: (e[1] * x + e[5] * y + e[9] * z + e[13]) * w + pivot[1],\n\t\t\tz: (e[2] * x + e[6] * y + e[10] * z + e[14]) * w + pivot[2],\n\t\t};\n\t}\n\tfunction computeBoundingBoxVertices(box) {\n\t\tconst halfSizeX = box.cropSize[0] / 2;\n\t\tconst halfSizeY = box.cropSize[1] / 2;\n\t\tconst halfSizeZ = box.cropSize[2] / 2;\n\t\tconst bounds = [\n\t\t\tbox.cropCenter[0] - halfSizeX,\n\t\t\tbox.cropCenter[1] - halfSizeY,\n\t\t\tbox.cropCenter[2] - halfSizeZ,\n\t\t\tbox.cropCenter[0] + halfSizeX,\n\t\t\tbox.cropCenter[1] + halfSizeY,\n\t\t\tbox.cropCenter[2] + halfSizeZ,\n\t\t];\n\t\tconst invRotationMatrix = getInvRotationMatrix(box.cropRotation);\n\t\treturn Object.assign(bounds, {\n\t\t\tinvRotationMatrix,\n\t\t\tcropCenter: box.cropCenter,\n\t\t});\n\t}\n\tfunction getInvRotationMatrix(_rotation) {\n\t\tconst te = [];\n\t\tconst x = (_rotation[0] * Math.PI) / 180,\n\t\t\ty = (_rotation[1] * Math.PI) / 180,\n\t\t\tz = (_rotation[2] * Math.PI) / 180;\n\t\tconst a = Math.cos(x),\n\t\t\tb = Math.sin(x);\n\t\tconst c = Math.cos(y),\n\t\t\td = Math.sin(y);\n\t\tconst e = Math.cos(z),\n\t\t\tf = Math.sin(z);\n\t\tconst ae = a * e,\n\t\t\taf = a * f,\n\t\t\tbe = b * e,\n\t\t\tbf = b * f;\n\n\t\tte[0] = c * e;\n\t\tte[1] = -c * f;\n\t\tte[2] = d;\n\n\t\tte[4] = af + be * d;\n\t\tte[5] = ae - bf * d;\n\t\tte[6] = -b * c;\n\n\t\tte[8] = bf - ae * d;\n\t\tte[9] = be + af * d;\n\t\tte[10] = a * c;\n\n\t\tte[12] = 0;\n\t\tte[13] = 0;\n\t\tte[14] = 0;\n\n\t\tte[3] = 0;\n\t\tte[7] = 0;\n\t\tte[11] = 0;\n\t\tte[15] = 1;\n\n\t\treturn te;\n\t}\n\tfunction isVertexInsideBoundingBox(x, y, z, bounds) {\n\t\treturn (\n\t\t\tx >= bounds[0] &&\n\t\t\tx <= bounds[3] &&\n\t\t\ty >= bounds[1] &&\n\t\t\ty <= bounds[4] &&\n\t\t\tz >= bounds[2] &&\n\t\t\tz <= bounds[5]\n\t\t);\n\t}\n\tfunction computeEllipsoidParams(ellipsoid) {\n\t\t// Precompute the scaling factors\n\t\tconst invRadiusX = 2 / ellipsoid.cropSize[0];\n\t\tconst invRadiusY = 2 / ellipsoid.cropSize[1];\n\t\tconst invRadiusZ = 2 / ellipsoid.cropSize[2];\n\t\tconst invRotationMatrix = getInvRotationMatrix(ellipsoid.cropRotation);\n\t\treturn {\n\t\t\tinvRadiusX,\n\t\t\tinvRadiusY,\n\t\t\tinvRadiusZ,\n\t\t\tcropCenter: ellipsoid.cropCenter,\n\t\t\tinvRotationMatrix,\n\t\t};\n\t}\n\tfunction isPointInsideEllipsoid(x, y, z, ellipsoidParams) {\n\t\tconst _x = (x - ellipsoidParams.cropCenter[0]) * ellipsoidParams.invRadiusX;\n\t\tconst _y = (y - ellipsoidParams.cropCenter[1]) * ellipsoidParams.invRadiusY;\n\t\tconst _z = (z - ellipsoidParams.cropCenter[2]) * ellipsoidParams.invRadiusZ;\n\t\treturn _x * _x + _y * _y + _z * _z <= 1;\n\t}\n\n\tself.onmessage = (e) => {\n\t\tif (e.data.getCroppedIndexes) {\n\t\t\tconst outOfBoundsIndexes = new Uint32Array(\n\t\t\t\tgetOutOfBoundsIndexes(new Float32Array(e.data.positions), e.data.crops)\n\t\t\t).buffer;\n\t\t\tself.postMessage(\n\t\t\t\t{\n\t\t\t\t\toutOfBoundsIndexes,\n\t\t\t\t},\n\t\t\t\t[outOfBoundsIndexes]\n\t\t\t);\n\t\t} else if (e.data.positions) {\n\t\t\tpositions = e.data.positions;\n\t\t\tfloatPositions = new Float32Array(positions);\n\t\t\tmeshMatrixWorlds = e.data.meshMatrixWorlds;\n\t\t\tcropsArray = e.data.cropsArray;\n\t\t\tmeshIndexIntervals = e.data.meshIndexIntervals;\n\t\t\tupdateRenderedSplats(meshMatrixWorlds, cropsArray, meshIndexIntervals);\n\t\t\tself.postMessage({\n\t\t\t\tsortSetupComplete: true,\n\t\t\t});\n\t\t} else if (e.data.sort || e.data.newMatrixWorlds || e.data.newCropsArray) {\n\t\t\tif (e.data.newMatrixWorlds || e.data.newCropsArray) {\n\t\t\t\tcropsArray = e.data.newCropsArray || cropsArray;\n\t\t\t\tmeshMatrixWorlds = e.data.newMatrixWorlds || meshMatrixWorlds;\n\t\t\t\tupdateRenderedSplats(meshMatrixWorlds, cropsArray, meshIndexIntervals);\n\t\t\t}\n\t\t\tsort(e.data.sort.view, e.data.sort.cameraPosition);\n\t\t} else if (e.data.init) {\n\t\t\t// Yep, this is super hacky and gross :(\n\t\t\tConstants = e.data.init.Constants;\n\n\t\t\tsplatCount = e.data.init.splatCount;\n\n\t\t\tconst INDEXES_BYTES_PER_ENTRY = Constants.BytesPerInt;\n\t\t\tconst POSITIONS_BYTES_PER_ENTRY = Constants.BytesPerFloat * 3;\n\n\t\t\tconst sorterWasmBytes = new Uint8Array(e.data.init.sorterWasmBytes);\n\t\t\tconst memoryBytesPerVertex =\n\t\t\t\tINDEXES_BYTES_PER_ENTRY + POSITIONS_BYTES_PER_ENTRY;\n\t\t\tconst memoryRequiredForVertices = splatCount * memoryBytesPerVertex;\n\t\t\tconst memoryRequiredForSortBuffers =\n\t\t\t\tsplatCount * Constants.BytesPerInt * 2 +\n\t\t\t\tConstants.DepthMapRange * Constants.BytesPerInt * 2;\n\t\t\tconst extraMemory = Constants.MemoryPageSize * 32;\n\t\t\tconst totalRequiredMemory =\n\t\t\t\tmemoryRequiredForVertices + memoryRequiredForSortBuffers + extraMemory;\n\t\t\tconst totalPagesRequired =\n\t\t\t\tMath.floor(totalRequiredMemory / Constants.MemoryPageSize) + 1;\n\t\t\tconst sorterWasmImport = {\n\t\t\t\tmodule: {},\n\t\t\t\tenv: {\n\t\t\t\t\tmemory: new WebAssembly.Memory({\n\t\t\t\t\t\tinitial: totalPagesRequired * 2,\n\t\t\t\t\t\tmaximum: totalPagesRequired * 3,\n\t\t\t\t\t\tshared: true,\n\t\t\t\t\t}),\n\t\t\t\t},\n\t\t\t};\n\t\t\tWebAssembly.compile(sorterWasmBytes)\n\t\t\t\t.then((wasmModule) => {\n\t\t\t\t\treturn WebAssembly.instantiate(wasmModule, sorterWasmImport);\n\t\t\t\t})\n\t\t\t\t.then((instance) => {\n\t\t\t\t\twasmInstance = instance;\n\t\t\t\t\tindexesOffset = 0;\n\t\t\t\t\tpositionsOffset = splatCount * INDEXES_BYTES_PER_ENTRY;\n\t\t\t\t\tviewProjOffset =\n\t\t\t\t\t\tpositionsOffset + splatCount * POSITIONS_BYTES_PER_ENTRY;\n\t\t\t\t\tsortBuffersOffset = viewProjOffset + 16 * Constants.BytesPerFloat * 2;\n\t\t\t\t\tfrequenciesOffset =\n\t\t\t\t\t\tsortBuffersOffset + splatCount * Constants.BytesPerInt;\n\t\t\t\t\tindexesOutOffset =\n\t\t\t\t\t\tfrequenciesOffset + Constants.DepthMapRange * Constants.BytesPerInt;\n\t\t\t\t\twasmMemory = sorterWasmImport.env.memory.buffer;\n\t\t\t\t\tself.postMessage({\n\t\t\t\t\t\tsortSetupPhase1Complete: true,\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t}\n\t};\n}\n",")(self)"],{type:"application/javascript"}))),n=atob("AGFzbQEAAAAADwhkeWxpbmsuMAEEAAAAAAETA2AAAGAIf39/f39/f38AYAABfwISAQNlbnYGbWVtb3J5AgMAgIAEAwQDAAECBzkDEV9fd2FzbV9jYWxsX2N0b3JzAAALc29ydEluZGV4ZXMAARNlbXNjcmlwdGVuX3Rsc19pbml0AAIK3gMDAwABC9IDAwF/BnwBfgJAIAdFDQAgAysDUCEMIAMrAzAhDSADKwMQIQ5BACEDRP///////+9/IQtEAAAAAAAAEAAhCgNAIAIgA0ECdGoCfyAOIAEgA0EMbGoiCCoCALuiIA0gCCoCBLuioCAMIAgqAgi7oqBEAAAAAAAAsECiIgmZRAAAAAAAAOBBYwRAIAmqDAELQYCAgIB4CzYCACAJIAsgCSALYxshCyAJIAogCSAKZBshCiADQQFqIgMgB0cNAAsgB0UNACAGuCAKIAuhoyEJQQAhAwNAAn8gCSACIANBAnRqIgEoAgC3IAuhoiIKmUQAAAAAAADgQWMEQCAKqgwBC0GAgICAeAshCCABIAg2AgAgBCAIQQJ0aiIBIAEoAgBBAWo2AgAgA0EBaiIDIAdHDQALCyAGQQJPBEAgBCgCACEIQQEhAwNAIAQgA0ECdGoiASABKAIAIAhqIgg2AgAgA0EBaiIDIAZHDQALCyAHQQFrIgGtIQ8DQCAEIAIgD6dBAnQiA2ooAgBBAnRqIgcgBygCAEEBayIHNgIAIAUgASAHa0ECdGogACADaigCADYCACAPUCEDIA9CAX0hDyADRQ0ACyAGBEAgBEEAIAZBAnT8CwALCwQAQQAL"),s=new Uint8Array(n.length);for(let t=0;t<n.length;t++)s[t]=n.charCodeAt(t);return e.postMessage({init:{sorterWasmBytes:s.buffer,splatCount:t,Constants:{BytesPerFloat:ye.BytesPerFloat,BytesPerInt:ye.BytesPerInt,DepthMapRange:ye.DepthMapRange,MemoryPageSize:ye.MemoryPageSize}}}),e}(t),this.sortWorker.onmessage=t=>{t.data.sortDone?(this.sortRunning=!1,this.splatMesh?.updateIndexes(new Uint32Array(t.data.indexesBuffer)),this.lastSortTime=t.data.sortTime,this.queuedMessage&&(this.sortWorker.postMessage(this.queuedMessage),this.queuedMessage=null)):t.data.sortCanceled?this.sortRunning=!1:t.data.sortSetupPhase1Complete?this.sortWorker.postMessage({positions:this.splatMesh.getCenters().buffer,meshMatrixWorlds:this.splatMesh.meshMatrixWorlds,meshIndexIntervals:this.splatMesh.meshIndexIntervals,cropsArray:this.cropsArray}):t.data.sortSetupComplete&&(this.splatDataTextures=this.splatMesh.getSplatDataTextures(),this.scene.activePage.add(this.splatMesh),this.needsInitialRender=!0)}}update(t,e){null!==this.splatMesh&&(this.updateSplatMeshUniforms(t,e),this.updateView(!1,e))}getSplatMesh(){return this.splatMesh}},xe=new ft;xe.wireframe=!0;var ve=new $,Ae=class extends ot{constructor(t,n){super(),this.data=t,this.sharedAssets=n,this.enableHelpers=!1,this.wireframeState=!1,this.needsTransmissionDirty=!0,this.needsNormalDirty=!0,this.needsReflectionDirty=!0,this._needsTransmission=!1,this._needsNormal=!1,this._normalPassNeeds={outline:!1,cavity:!1},this._needsReflection=!1,this.geometryCacheChanged=!1,this.splatViewer=null,this.shapeBlendIntances=[],this.hairInstances=[],this.shadowsDirty=!0,this.instanceGroupsDirty=!0,this._autoInstancing=null,this.entityByUuid={},this.entityIdentityToEntity={},this.toExpandCloner=new Set,this.toUpdateCloner=new Set,this.pendingCommands=[],this.pathConstraints=new fe,this.invisibleObjects=new e("jflkdsafjasdifjaslk",{...Z.defaultData,visible:!1,name:"buildin invisible"}),this.needsRecomputeInstances=!1,this.init(t,n),this.matrixAutoUpdate=!1,this.errorPage=new a("fdasfa",{...N.defaultData,name:""},{shared:n,scene:this})}markGeometryCacheDirty(){this.geometryCacheChanged=!0}markShadowsDirty(){this.shadowsDirty=!0}markInstanceGroupsDirty(){this.instanceGroupsDirty=!0}get autoInstancing(){return this._autoInstancing}updateInstanceGroups(t,e){let n=this._autoInstancing;(null===n||n.minGroupSize!==e)&&(n?.dispose(),n=new Ut(e),this._autoInstancing=n);let s=this.instanceGroupsDirty;return this.instanceGroupsDirty=!1,n.update(t,s),n.stats}releaseInstanceGroups(){this._autoInstancing?.teardown(),this.instanceGroupsDirty=!0}markNeedsUpdateRendererDirty(){this.needsTransmissionDirty=!0,this.needsNormalDirty=!0,this.needsReflectionDirty=!0,this.shadowsDirty=!0,this.instanceGroupsDirty=!0}needsTransmission(){return this.needsTransmissionDirty&&(this._needsTransmission=s(this),this.needsTransmissionDirty=!1),this._needsTransmission}needsNormal(){return this.needsNormalDirty&&(this._normalPassNeeds=n(this),this._needsNormal=this._normalPassNeeds.outline||this._normalPassNeeds.cavity,this.needsNormalDirty=!1),this._needsNormal}normalPassNeeds(){return this.needsNormal(),this._normalPassNeeds}needsReflection(){return this.needsReflectionDirty&&(this._needsReflection=i(this),this.needsReflectionDirty=!1),this._needsReflection}registerInstanceAndSetUuid(t){let e=t.identity.join("-"),n=this.entityIdentityToEntity[e];n&&(t.uuid=n.uuid),this.entityIdentityToEntity[e]=t,this.entityByUuid[t.uuid]=t}markPenumbraSizeDirty(){for(let t of this.children)t instanceof a&&(t.penumbraSizeArrayCache=null)}findInstance(t){return this.entityIdentityToEntity[t.join("-")]}get bgColor(){return this.activePage.bgColor}get postprocessing(){return this.activePage.data.postprocessing}getWithSortKey(t){let e=this.find(t);if(void 0===e)return;let n=[],s=e;for(;s!==this;){let t=s;s=s.parent;let e=s.children.indexOf(t);n.splice(0,0,e)}return{entity:e,sortKey:n}}getAllSorted(t){let e=[];for(let n of t){let t=this.getWithSortKey(n.id);void 0!==t&&e.push(t)}return e.sort((t,e)=>L(t.sortKey,e.sortKey)),e.map(t=>t.entity)}nonExistOrDescendantOf(t,e){let n=this.find(t);if(void 0===n)return!0;for(;n;){if(n.uuid===e)return!0;n=n.parent}return!1}find(t){if(this.activePage&&this.activePage.personalCamera.parent){if("f23858d0-4a3b-4bd8-8173-66ed0af7f6fb-personalCamera"===t)return this.activePage.personalCamera;if(t===q)return this.activePage.personalCamera}if(""===t||void 0===t)return;let e=this.entityByUuid[t];return void 0===e?this.getObjectByProperty("uuid",t):e}find2D(t){for(let e of this.children)if(e instanceof a&&e.uiScene){let n=e.uiScene.find(t);if(n)return n}}findScene2DfromObject2D(t){for(let e of this.children)if(e instanceof a&&e.uiScene&&e.uiScene.find(t))return e.uiScene}find2DInUIObjects(t){let e;return this.traverseEntity(n=>{void 0===e&&j(n)&&(e=n.uiCanvas.find(t))}),e}traverse2D(t){for(let e of this.children)e instanceof a&&e.uiScene&&e.uiScene.traverse(t)}debugEnsureEntity(t){let e=this.find(t);e?Array.isArray(e.identity)&&void 0===this.findInstance(e.identity)&&console.error("not found instance"):console.error("not found")}addPendingExpandCloner(t){this.toExpandCloner.add(t)}addPendingUpdateCloner(t){this.toUpdateCloner.add(t)}markToExpandCloner(t){this.toExpandCloner.add(t),t.traverseEntityAncestors(t=>{this.toExpandCloner.add(t)})}doPendingExpandCloner(t){this.toExpandCloner.forEach(e=>{e.expandCloner(t)}),this.toExpandCloner.clear()}doPendingUpdateCloner(t){this.toUpdateCloner.forEach(e=>{e.cloner?.update(t)}),this.toUpdateCloner.clear()}doPendingUpdates(t){this.doPendingExpandCloner(t),this.doPendingUpdateCloner(t),this.applyPendingCommands()}addPendingCommand(t){this.pendingCommands.push(t)}applyPendingCommands(){this.pendingCommands.forEach(t=>t()),this.pendingCommands.length=0}updateByLibOp(t,e){1===t.path.length&&"components"===t.path[0]&&1===t.type&&this.createChildrenObjects([{...t.data.asset,id:t.id}],this.invisibleObjects,e)}updateTreeByOp(t,e){if(0===t.path.length&&7===t.type){let n=null===t.parent?this:this.find(t.parent);if(void 0===n)throw new Error(`scene tree add: parent ${t.parent} not found for object ${t.id}`);let s=this.createObject(t.id,t.data,t.children,n,t.localIndex,e);s.updateVisible(this),s.resetBBoxNeedsUpdate(),c(s)&&h(s.parent)&&(s.invalidateUpstreamBooleanData(),s.parent.invalidateDownstreamBooleanData().recomputeBoolean()),this.markNeedsRecomputeInstancesForAncessors(n),this.markNeedsRecomputeInstancesForChildren(s),this.markToExpandCloner(s),this.markPenumbraSizeDirty(),s.updatePathSnapping()}else if(0===t.path.length&&8===t.type){let e=this.find(t.id);if(void 0===e)throw new Error(`scene tree delete: object ${t.id} not found`);e.traverseEntity(t=>{z(t)&&(this.shapeBlendIntances=this.shapeBlendIntances.filter(e=>e!==t)),R(t)&&(this.hairInstances=this.hairInstances.filter(e=>e!==t))}),this.markToExpandCloner(e),e.resetBBoxNeedsUpdate(),this.unregisterObject(e);let n=e.parent;this.markNeedsRecomputeInstancesForAncessors(n),this.markNeedsRecomputeInstancesForChildren(e),this.markPenumbraSizeDirty(),e.parent.remove(e),h(e.parent)&&(e.parent.invalidateUpstreamBooleanData(),e.parent.invalidateDownstreamBooleanData().recomputeBoolean()),c(e)&&(e.freeBooleanPointer(),n instanceof d&&n.invalidateDownstreamBooleanData().recomputeBoolean()),O(e)&&e.detachShape(),this.disposeAndUnregisterEntityRecursivelyIfNotReregistered(e),this.pathConstraints.removeDependencies(e.uuid),e.updatePathSnapping()}else if(0===t.path.length&&9===t.type){let e=this.find(t.id);if(void 0===e)throw new Error(`scene tree move: object ${t.id} not found`);this.markNeedsRecomputeInstancesForChildren(e);let n=e.parent;this.markNeedsRecomputeInstancesForAncessors(n),e.cloner?.resetOnMove(),this.markToExpandCloner(e);let s=null===t.parent?this:this.find(t.parent);if(void 0===s)throw new Error(`scene tree move: new parent ${t.parent} not found for object ${t.id}`);s.add(e),this.markNeedsRecomputeInstancesForAncessors(s),this.markToExpandCloner(e),e.invalidateClonerTransform(e),e.updateVisible(this),e.resetBBoxNeedsUpdate(),this.markPenumbraSizeDirty();let i=t.localIndex;s.children.splice(i,0,s.children.pop()),c(e)&&(e.invalidateUpstreamBooleanData(),h(e.parent)?e.parent.invalidateDownstreamBooleanData().recomputeBoolean():n instanceof d&&n.invalidateDownstreamBooleanData().recomputeBoolean()),e.updatePathSnapping()}this.markNeedsUpdateRendererDirty(),this.markGeometryCacheDirty()}get playPage(){return this.find(this.data.publish.playPage)??this.errorPage}updatePage(t){this.shadowsDirty=!0,this.activePage&&this.activePage.onDeactive(),this.activePage=this.errorPage;for(let e of this.children)e instanceof a&&(e.visible=e.uuid===t,e.visible&&(this.activePage=e,this.activePage.onActive(this)));this.activePage!==this.splatViewer?.activePage&&this.reloadSplats()}updateEntityByOp(t,e,n,s){if(this.shadowsDirty=!0,0===e.type){if(("overrides"in e.props||"component"in e.props)&&this.markNeedsRecomputeInstances(),"visible"in e.props&&this.markPenumbraSizeDirty(),e.path.includes("overrides")&&"states"in e.props){let{rest:t}=e.props;e={...e,props:t},this.markNeedsRecomputeInstances()}"pathSnapping"===e.path[0]&&void 0!==e.props.pathId&&this.pathConstraints.setConstraint(t,e.props.pathId)}let i=this.find(t);if(i)try{(function(t,e,n,s){t.updateByOp(e,n,s,!1)})(i,e,n,{scene:this,shared:s}),i instanceof C&&i.updateGeometryGroupsIfNeeded()}catch(t){console.error(t)}}updateEntity2DByOp(t,e,n,s,i,r=[]){t.updateEntityByOp(e,n,s,i),this.traverseEntity(t=>{(j(t)||t instanceof a)&&(r.includes(t.frameId??"")||t.frameId===e)&&t.updateEntity2DByOp(e,n,s,i)})}get activeCamera(){return this.activePage.activeCamera}switchActiveCamera(t){this.activePage.switchActiveCamera(t)}isInvisibleObjects(t){return t===this.invisibleObjects||t.hasAnccestor(this.invisibleObjects)}init(t,e){let n=Object.entries(e.data.lib.components).map((t,e)=>({data:t[1].asset.data,children:t[1].asset.children,id:t[0],fi:e}));this.invisibleObjects.updateState(this.invisibleObjects.data,{scene:this,shared:e}),this.add(this.invisibleObjects),this.createChildrenObjects(n,this.invisibleObjects,e),this.createChildrenObjects(t.objects,this,e),this.updatePage(t.publish.playPage),this.activePage.switchToPlayCamera(),this.expandInstances(e,!0),this.traverseEntity(t=>{t instanceof m&&t.updateUp()}),this.doPendingExpandCloner({scene:this,shared:e}),this.applyPendingCommands()}markNeedsRecomputeInstances(){this.needsRecomputeInstances=!0}markNeedsRecomputeInstancesForChildren(t){t.traverseEntity(t=>{("Component"===t.data.type||"Instance"===t.data.type)&&this.markNeedsRecomputeInstances()})}markNeedsRecomputeInstancesForAncessors(t){B.is(t)&&("Component"===t.data.type&&this.markNeedsRecomputeInstances(),t.traverseAncestors(t=>{B.is(t)&&"Component"===t.data.type&&this.markNeedsRecomputeInstances()}))}relativeizeInner(t,e,n,s,i,r,a){if(t){let o=s.find(t);o&&o!==s&&i.forInstancesRec(s=>{s.data=Q(s.data,i=>{let o=i.events.data(a.id),l=s.goUp(r);if(l){let s=[...F(l.identity),t].join("-"),i=this.entityIdentityToEntity[s];if(i){let t=i.uuid;Y.zoom(o,e)[n]=t}else console.warn("cannot find instance")}}).data})}}rewriteActions(t,e,n,s,i,r){t.forEach(t=>{"Transition"===t.data.type||"Animation"===t.data.type?this.relativeizeInner(t.data.object,[...e,t.id],"object",n,s,i,r):"Conditional"===t.data.type&&(this.rewriteActions(t.data.ifActions,[...e,t.id,"ifActions"],n,s,i,r),this.rewriteActions(t.data.elseActions,[...e,t.id,"elseActions"],n,s,i,r))})}rewriteEventsBeforeGoToPlayMode(){this.traverseEntity(t=>{if(T(t)&&"string"==typeof t.identity&&"Component"===t.data.type)return t.traverseEntity((e,n)=>{e.data.events.forEach(s=>{if("GameControl"===s.data.type){let i=!1;if(e.forInstancesRec(t=>{t.data=Q(t.data,e=>{t.isInstanceRoot||(e.events.delete(s.id),i=!0)}).data}),!1===i)for(let i of V.list)this.rewriteActions(s.data.gameActions[i],["gameActions",i],t,e,n,s)}else"Conditional"===s.data.type?("Distance"===s.data.condition.type?(this.relativeizeInner(s.data.condition.fromObject,["condition"],"fromObject",t,e,n,s),this.relativeizeInner(s.data.condition.toObject,["condition"],"toObject",t,e,n,s)):"State"===s.data.condition.type?this.relativeizeInner(s.data.condition.object,["condition"],"object",t,e,n,s):"Comparison"===s.data.condition.type&&("Property"===s.data.condition.lOperand.type&&this.relativeizeInner(s.data.condition.lOperand.value[0],["condition","lOperand","value"],0,t,e,n,s),"Property"===s.data.condition.rOperand.type&&this.relativeizeInner(s.data.condition.rOperand.value[0],["condition","rOperand","value"],0,t,e,n,s)),this.rewriteActions(s.data.inActions,["inActions"],t,e,n,s),this.rewriteActions(s.data.outActions,["outActions"],t,e,n,s)):"actions"in s.data&&this.rewriteActions(s.data.actions,["actions"],t,e,n,s)})}),!0})}expandInstances(t,e,n){let s=new Set;this.traverseEntity(i=>{if(T(i)&&i.isInstanceRoot)return i.expandInstanceChildren({scene:this,shared:t,pendingDeletes:s}),e||i.resetBBoxNeedsUpdate(),n&&i.traverseEntity(t=>{n.addClip(t)}),!0});for(let t of s)this.disposeAndUnregisterEntityRecursivelyIfNotReregistered(t),u(t)}recomputeInstances(t,e){this.needsRecomputeInstances&&(this.needsRecomputeInstances=!1,this.traverseEntity(t=>{T(t)&&t.isInstanceRoot&&(t.component=void 0)}),this.expandInstances(t,!1,e))}disposeAndUnregisterEntityRecursivelyIfNotReregistered(t){t.traverseEntity(t=>{let e="string"==typeof t.identity?t.identity:t.identity.join("-");this.entityIdentityToEntity[e]===t&&(delete this.entityByUuid[t.uuid],delete this.entityIdentityToEntity[e]),t.dispose()})}clearScene(){this._autoInstancing?.dispose(),this._autoInstancing=null,this.instanceGroupsDirty=!0;for(let t of this.children)B.is(t)&&t.disposeRecursively();this.children.length=0}resetAfterClear(t,e){this.init(t,e)}raycast(t){return this.raycast1(t,!1)}raycast1(t,e){let n=[],s=i=>{for(let a of i.children){let i=a.cloner;if(B.is(a)&&!a.raycastLock&&(a.visible||i?.object.data.visible))if(!0===e&&a.isInstanceRoot){let e=[];if(t.intersectObject(a,!0,e),e.length){let t=e[0];t.object=a,t.point.applyMatrix4(t.object.matrixWorld);let s=a.matrixWorld.clone().invert();t.point.applyMatrix4(s),n.push(t)}}else(c(a)||p(a)&&this.enableHelpers&&a.objectHelper.visible)&&(t.intersectObject(a,!1,n),r(a,t,n)),s(a)}};return s(this.activePage),n}raycastWithClones(t){let e=[],n=s=>{for(let i of s.children){let s=i.cloner;B.is(i)&&(i.visible||s?.object.data.visible)&&((c(i)||p(i)&&this.enableHelpers&&i.objectHelper.visible)&&(t.intersectObject(i,!1,e),r(i,t,e,!0)),n(i))}};return n(this),e}forEachEntity(t){for(let e of this.children)B.is(e)&&t(e)}traverseConcreteEntity(t){for(let e of this.children)B.is(e)&&e.isConcreteEntity&&e.traverseEntity(t)}traverseEntity(t){for(let e of this.children)B.is(e)&&e.traverseEntity(t)}updateFont(t,e){this.traverseEntity(n=>{if(n instanceof C&&"Mesh"===n.data.type&&("TextGeometry"===n.data.geometry.type||"InputGeometry"===n.data.geometry.type)&&n.data.geometry.font===t){let s=n.geometry,i=n.data.geometry;s.updateFont(t,e).then(()=>{s.update(i,e);let t=n.invalidateDownstreamBooleanData();h(t)&&t.recomputeBoolean()})}})}traverseObject(t){for(let e of this.children)S.is(e)&&e.traverseObject(t)}traverseVisibleEntity(t){for(let e of this.children)B.is(e)&&e.visible&&e.traverseVisibleEntity(t)}dispose(){this.clearScene()}createChildrenObjects(t,e,n){let s=0;for(let i of t)this.createObject(i.id,i.data,i.children,e,s,n),s+=1}registerObjectCreatedInLegacy(t){this.entityByUuid[t.uuid]=t}unregisterObject(t){delete this.entityByUuid[t.uuid];for(let e of t.children)this.unregisterObject(e)}createObject(t,e,n,s,i,r){let a={scene:this,shared:r},o=ue(t,e,a);return z(o)&&this.shapeBlendIntances.push(o),R(o)&&this.hairInstances.push(o),o&&(this.entityByUuid[t]=o,s.add(o),s.children.splice(i,0,s.children.pop()),n.length>0&&(o.isInstanceRoot?console.error("instance should not have children!"):this.createChildrenObjects(n,o,r)),o.updateState(e,a),o instanceof C&&o.updateGeometryGroupsIfNeeded(),o.updateVisible(this),o.cloner&&this.toExpandCloner.add(o),e.pathSnapping?.pathId&&this.pathConstraints.setConstraint(t,e.pathSnapping.pathId)),"Empty"===e.type&&e.animations&&o.traverseEntity(t=>{let e=t.dataPatched;if(t instanceof C&&e.bones&&e.boneInverses){let n=e.bones.map(t=>this.find(t)),s=e.boneInverses.map(t=>(new it).fromArray(t)),i=new wt(n,s);t.bind(i,t.bindMatrix)}else t.matrixAutoUpdate=!0}),o}getCenter(t){let e=[];for(let n=0,s=t.length;n<s;++n){let{id:s,recursive:i}=t[n],r=this.find(s),a=i?r.recursiveBBox:r.singleBBox;e.push(...a.vertices)}let n=new lt;return n.setFromPoints(e),n.getCenter(ve),ve}copyMatrixWorld(t,e){if(null===t)return void e.identity();let n=this.find(t);n?(n.updateWorldMatrix(!0,!1),e.copy(n.matrixWorld)):e.identity()}copyParentMatrixWorld(t,e){if(null===t)return void e.identity();let n=this.find(t)?.parent;n?(n.updateWorldMatrix(!0,!1),e.copy(n.matrixWorld)):e.identity()}traverseMaterial(t){this.traverseEntity(e=>{if(e instanceof D)if(Array.isArray(e.material))for(let n=0;n<e.material.length;n++)I(e.material[n])&&t(e.material[n]);else I(e.material)&&t(e.material)})}updateViewPlaneSize(t,e,n=!1){this.traverseConcreteEntity(s=>{s instanceof m&&s.setViewplaneSize(t,e,n)})}initializeSplatViewer(){this.splatViewer=new ge({scene:this}),this.reloadSplats()}reloadSplats(){this.splatViewer?.loadSplat()}};export{kt as a,Bt as b,Ft as c,Xt as d,xe as e,Ae as f};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Cc as e}from"./runtime-chunk-BVVSZMXD.js";import{c as t}from"./runtime-chunk-ML3Z74BL.js";function r(e){return Array.isArray(e)?e:[e]}function a(e,t){let r=0;for(;r<e.length&&r<t.length;){if(e[r]<t[r])return-1;if(e[r]>t[r])return 1;r+=1}return r!==t.length?-1:r!==e.length?1:0}function i(e,t){return Object.setPrototypeOf(e,t),e}function n(e){let t={...e};return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),t}function o(e,t,r){if(void 0===e?void 0===t?(e=0,t=10):e=t-10:void 0===t&&(t=e+10),e>t){let r=e;e=t,t=r}let a=[],i=1/(r+1);for(let n=0;n<r;n++){let r=e+(t-e)*(n+.75+.5*Math.random())*i;a.push(r)}return a}function s(e){return e instanceof Uint8Array||e instanceof Uint16Array||e instanceof Uint32Array||e instanceof Int8Array||e instanceof Int16Array||e instanceof Int32Array||e instanceof Float32Array||e instanceof Float64Array}function l(e){if(void 0!==e.deepFreeze)return void e.deepFreeze(e);let t=Object.getOwnPropertyNames(e);for(let r of t){let t=e[r];t&&"object"==typeof t&&l(t)}return Object.freeze(e)}function c(e){for(let t of Object.keys(e))void 0===e[t]&&delete e[t];return e}var u=class{},d=class extends u{constructor(e){super(),this.id=e}},p=class extends u{constructor(e){super(),this.data=e}},f=class{modifyById(e,t){let r=this;if(void 0===r[e])throw new Error("not expected");{let a={...r,[e]:t};return Object.setPrototypeOf(a,f.prototype),a}}add(e,t){return this.runOp({type:1,id:e,data:t})?.data??this}runOp(e){let t=this;if(1===e.type){let r,a=t[e.id];r=void 0===a?{type:2,id:e.id}:{type:1,id:e.id,data:a};let{id:i,data:n}=e,o={...t,[i]:n};return Object.setPrototypeOf(o,f.prototype),{data:o,actual:e,reverse:r}}if(2===e.type){let{id:r}=e,a=t[r];if(void 0===a)return null;{let i={...t};return Object.setPrototypeOf(i,f.prototype),delete i[r],{data:i,actual:e,reverse:{type:1,id:r,data:a}}}}return null}},h=class extends Error{};function y(e,t){for(let r of e)!0!==t(r.id,r.data)&&y(r.children,t)}function m(e,t){if(!0!==t(e.id,e.data))for(let r of e.children)m(r,t)}var g,b,v=class extends Array{constructor(...e){super(...e),t(this,"partialObjectCaches"),t(this,"objCaches"),t(this,"parentCaches"),Object.setPrototypeOf(this,v.prototype)}deepFreeze(){let e=0;for(;e<this.length;)l(this[e]),e++}fillCaches0(e,t){this.objCaches.set(e.id,e),this.parentCaches.set(e.id,t);for(let t of e.children)this.fillCaches0(t,e.id)}fillCaches(){if(void 0===this.objCaches){this.objCaches=new Map,this.parentCaches=new Map;for(let e of this)this.fillCaches0(e,null)}}randomId(){this.fillCaches();let e=Array.from(this.objCaches.keys());if(0!==e.length)return e[Math.max(0,Math.floor(Math.random()*e.length)-1)]}nonExistOrDescendantOf(e,t){if(!this.has(e))return!0;for(;e;){let r=this.parent(e);if(r===t)return!0;e=r}return!1}rootAcestor(e){for(;e;){let t=this.parent(e);if(!t)return e;e=t}return e}isDescendantOf(e,t){for(;e;){let r=this.parent(e);if(r===t)return!0;e=r}return!1}data(e){return this.get(e)?.data}has(e){return void 0!==this.childrenOf(e)}partialCache(e){void 0===this.partialObjectCaches&&(this.partialObjectCaches=new Map);let t=this.get(e);void 0!==t&&this.partialObjectCaches.set(e,t)}get(e){if(void 0!==this.partialObjectCaches){let t=this.partialObjectCaches.get(e);if(void 0!==t)return t}return this.fillCaches(),this.objCaches.get(e)}childrenOf(e){return null===e?this:this.get(e)?.children}traverseFrom(e,t){if(null===e)this.traverse(t);else{let r=this.get(e);r&&m(r,t)}}traverse(e){y(this,e)}totalSize(){return this.fillCaches(),this.objCaches.size}parent(e){return this.fillCaches(),this.parentCaches.get(e)}childrenArray(e){return null===e?this:this.get(e).children}modifyById(e,t){if(void 0===this.get(e))throw new Error("not expected");{let r=this.parent(e),a=this.childrenArray(r),i=a.findIndex(t=>t.id===e);if(i<0)throw new Error("not expected");let n=a[i];a=[...a],a[i]={...n,data:t};let o=new Map;return o.set(e,a[i]),this.modifyArrayBy(r,a,o)}}modifyArrayBy(e,t,r=void 0){let a=e,i=t;for(;null!==a;){let e=i,t=a;if(a=this.parent(a),void 0===a)throw new Error;i=this.childrenArray(a);let n=i.findIndex(e=>e.id===t);if(n<0)throw new Error;i=[...i],i[n]={...i[n],children:e},r&&r.set(t,i[n])}Object.setPrototypeOf(i,v.prototype);let n=i;if(r&&void 0!==this.objCaches&&void 0!==this.parentCaches){n.objCaches=this.objCaches;for(let[e,t]of r)n.objCaches.set(e,t);n.parentCaches=this.parentCaches,this.objCaches=void 0,this.parentCaches=void 0}else n.fillCaches();return n}runOp(e){switch(e.type){case 7:return this.addOp(e);case 8:return this.deleteOp(e);case 9:return this.moveOp(e)}return null}checkDuplicatedIdRec({id:e,children:t}){if(void 0!==this.get(e))return!0;for(let e of t)if(this.checkDuplicatedIdRec(e))return!0;return!1}addOp(e){let{parent:t,fi:r,id:a,data:i,children:n}=e;if(null!==t&&void 0===this.get(t))return null;if(this.checkDuplicatedIdRec(e))return null;{let o=t,s=this.childrenArray(o),l={fi:r,id:a,data:i,children:n};return s=[...s,l],s.sort((e,t)=>e.fi-t.fi),e.localIndex=s.indexOf(l),{data:this.modifyArrayBy(o,s),actual:e,reverse:{type:8,id:a}}}}deleteOp(e){let{id:t}=e;if(null===this.get(t))return null;{let r=this.parent(t);if(void 0===r)return null;let a=this.childrenArray(r),i=a.findIndex(e=>e.id===t);e.localIndex=i,a=[...a];let n=a.splice(i,1)[0];return{data:this.modifyArrayBy(r,a),actual:e,reverse:{type:7,...n,parent:r}}}}moveOp(e){let{parent:t,fi:r,id:a}=e;if(null!==t&&void 0===this.get(t))return this.deleteOp({type:8,id:a});if(null!==t){let e=t;for(;null!==e;){if(void 0===e)throw new Error;if(e===a)throw new h("cyclic tree");e=this.parent(e)}}let i=this.parent(a);if(void 0===i)return null;let n=i,o=this.childrenArray(i),s=o.findIndex(e=>e.id===a);o=[...o];let l=o.splice(s,1)[0],c=this.modifyArrayBy(i,o);i=t,o=c.childrenArray(i);let u=l.fi;return l={...l,fi:r},o=[...o,l],o.sort((e,t)=>e.fi-t.fi),e.localIndex=o.indexOf(l),c=c.modifyArrayBy(i,o),{data:c,actual:e,reverse:{type:9,parent:n,fi:u,id:a}}}previous(e,t){if(null===t){let t=this.childrenArray(e);return 0===t.length?null:t[t.length-1].id}let r=null;for(let a of this.childrenArray(e)){if(a.id===t)return r;r=a.id}return null}traverseSortNext(e){let t=this.parent(e);if(void 0!==t){let r=this.childrenArray(t),a=r.findIndex(t=>t.id===e)+1;if(a<r.length)return r[a].id;if(t)return this.traverseSortNext(t)}}sortNext(e){let t=this.childrenArray(e);return t.length>0?t[0].id:this.traverseSortNext(e)}traverseSortPrevious(e){let t=this.childrenArray(e);return t.length>0?this.traverseSortPrevious(t[t.length-1].id):e}sortPrevious(e){let t=this.parent(e);if(void 0!==t){let r=this.childrenArray(t),a=r.findIndex(t=>t.id===e)-1;return a>=0?this.traverseSortPrevious(r[a].id):t}}getAllSorted(e){let t=[];for(let r of e){let e=this.getWithSortKey(r.id);void 0!==e&&t.push({...r,...e})}t.sort((e,t)=>a(e.sortKey,t.sortKey));for(let e of t)delete e.sortKey;return t}getAllIdSorted(e){let t=[];for(let r of e){let e=this.getWithSortKey(r);void 0!==e&&t.push(e)}t.sort((e,t)=>a(e.sortKey,t.sortKey));for(let e of t)delete e.sortKey;return t.map(e=>e.id)}getWithSortKey(e){let t=e,r=[],a=this.get(t),i=a;if(void 0!==a){for(;t;)r.splice(0,0,a.fi),t=this.parent(t),null!==t&&(a=this.get(t));return{...i,sortKey:r}}}insertBeforeHelper(e,t,r){return this.insertAfterHelper(e,this.previous(e,t),r)}insertAfterHelper(e,t,r){let a=this.childrenArray(e);if(null===t){if(0===a.length)return o(0,r,r);{let e=a[0].fi;return o(e-r,e,r)}}{let i=this.get(t);if(void 0===i||this.parent(t)!==e)throw new Error("illegal args");let n=a.find(e=>e.fi>i.fi);if(void 0===n){let e=a[a.length-1].fi;return o(e,e+r,r)}return o(i.fi,n.fi,r)}}},w=null;(b=g||(g={})).setPreservePrototype=function(e){w=e},b.tryPreservePrototype=function(e,t){return Object.getPrototypeOf(e)===w&&Object.setPrototypeOf(t,w),t},b.runOp=function(e,t){if(0!==t.type)return null;if(Array.isArray(e)||s(e)){let r=t.props,a={},i=s(e)?e.slice():[...e],n=!1;if(r)for(let e of Object.keys(r)){let t=parseInt(e);if(isNaN(t))throw new Error("wrong index");a[e]=i[t],i[t]=r[e],n=!0}return n?{data:i,actual:t,reverse:{type:0,props:a}}:null}{let r=t.props,a={},i={...e},n=!1;if(r)for(let e of Object.keys(r)){a[e]=i[e];let t=r[e];void 0===t?delete i[e]:i[e]=t,n=!0}return n?{data:b.tryPreservePrototype(e,i),actual:t,reverse:{type:0,props:a}}:null}};var D=class extends Array{constructor(...e){super(...e),t(this,"objCaches"),Object.setPrototypeOf(this,D.prototype)}deepFreeze(){let e=0;for(;e<this.length;)l(this[e]),e++}fillCaches0(e){this.objCaches.set(e.id,e)}fillCaches(){if(void 0===this.objCaches){this.objCaches=new Map,Object.getOwnPropertyDescriptor(this,"objCaches").enumerable=!1;for(let e of this)this.fillCaches0(e)}}randomId(){this.fillCaches();let e=Array.from(this.objCaches.keys());if(0!==e.length)return e[Math.max(0,Math.floor(Math.random()*e.length)-1)]}data(e){return this.get(e)?.data}get(e){return this.fillCaches(),this.objCaches.get(e)}modifyById(e,t){if(void 0===this.get(e))throw new Error("not expected");{let r=this,a=r.findIndex(t=>t.id===e);if(a<0)throw new Error("not expected");let i=r[a];return r=[...r],r[a]={...i,data:t},this.modifyArrayBy(r)}}modifyArrayBy(e){Object.setPrototypeOf(e,D.prototype);let t=e;return typeof process<"u"||t.fillCaches(),t}runOp(e){switch(e.type){case 4:return this.addOp(e);case 5:return this.deleteOp(e);case 6:return this.moveOp(e)}return null}addOp(e){let{fi:t,id:r,data:a}=e,i=this,n={fi:t,id:r,data:a};return i=[...i,n],i.sort((e,t)=>e.fi-t.fi),e.localIndex=i.indexOf(n),{data:this.modifyArrayBy(i),actual:e,reverse:{type:5,id:r}}}deleteOp(e){let{id:t}=e,r=this,a=r.findIndex(e=>e.id===t);if(-1===a)return null;e.localIndex=a,r=[...r];let i=r.splice(a,1)[0];return{data:this.modifyArrayBy(r),actual:e,reverse:{type:4,...i}}}moveOp(e){let{fi:t,id:r}=e,a=this;a=[...a];let i=a.findIndex(e=>e.id===r);if(-1===i)return null;let n=a[i].fi,o={...a[i],fi:t};return a[i]=o,a.sort((e,t)=>e.fi-t.fi),e.localIndex=a.indexOf(o),{data:this.modifyArrayBy(a),actual:e,reverse:{type:6,fi:n,id:r}}}previous(e){if(null===e)return 0===this.length?null:this[this.length-1].id;let t=null;for(let r of this){if(r.id===e)return t;t=r.id}return null}insertBeforeHelper(e,t){return this.insertAfterHelper(this.previous(e),t)}insertAfterHelper(e,t){let r=this;if(null===e){if(0===r.length)return o(0,t,t);{let e=r[0].fi;return o(e-t,e,t)}}{let a=this.get(e);if(void 0===a)throw new Error("illegal args");let i=r.find(e=>e.fi>a.fi);if(void 0===i){let e=r[r.length-1].fi;return o(e,e+t,t)}return o(a.fi,i.fi,t)}}};function S(e,t){return P(e,t,null)??e}function O(e,t){let r={cur:[],result:[],len:0};return[e=P(e,t,r)??e,r.result]}function j(e,t){return null===e?null:(e.cur[e.len]=t,e.len+=1,e)}function A(e){e&&(e.len-=1)}function C(e,t,r){let a=!1,i=e.map(e=>{let i=e.id,n=t[i];if(void 0!==n&&"string"==typeof n&&(a=!0,i=n,null!==r))throw new Error("not supported");let o=P(e.data,t,j(r,i));A(r),a=a||void 0!==o,void 0===o&&(o=e.data);let s=C(e.children,t,r);return void 0!==s?a=!0:s=e.children,{...e,id:i,data:o,children:s}});if(a)return i}function P(e,t,r){if(e instanceof v){let a=C(e,t,r);return void 0!==a&&Object.setPrototypeOf(a,Object.getPrototypeOf(e)),a}if(e instanceof D)return function(e,t,r){let a=!1,i=e.map(e=>{let i=e.id,n=t[i];if(void 0!==n&&"string"==typeof n&&(a=!0,i=n,null!==r))throw new Error("not supported");let o=P(e.data,t,j(r,i));return A(r),a=a||void 0!==o,void 0===o&&(o=e.data),{...e,id:i,data:o}});if(a)return Object.setPrototypeOf(i,Object.getPrototypeOf(e)),i}(e,t,r);if(Array.isArray(e)){let a=!1,i=e.map((e,i)=>{let n=P(e,t,j(r,i));return A(r),a=a||void 0!==n,void 0===n&&(n=e),n});return a?(Object.setPrototypeOf(i,Object.getPrototypeOf(e)),i):void 0}if(e&&"object"==typeof e&&!s(e)){let a={},i=!1;for(let[n,o]of Object.entries(e))if("name"!==n&&"variableId"!==n){let e=t[n];if("string"==typeof e){if(null!==r)throw new Error("not supported");i=!0,n=e}let s=P(o,t,j(r,n));A(r),i=i||void 0!==s,void 0===s&&(s=o),a[n]=s}else a[n]=o;return i?(Object.setPrototypeOf(a,Object.getPrototypeOf(e)),a):void 0}if("string"==typeof e){let a=t[e];return void 0!==a&&function(e){if(null===e)return null;e.result.push(e.cur.slice(0,e.len))}(r),a}}function x(e){return e&&"object"==typeof e&&e instanceof _}var M,T,E,I,_=class{unusedFunOverridesTable(e){}runOp(e){let t=[],r=this,a=0,i={};for(;a<e.path.length;){if(t.push(r),r=void 0===r?void 0:r[e.path[a]],void 0!==r&&!x(r))return null;a+=1}r=r?n(r):new _;for(let[t,a]of Object.entries(e.props)){let e=r[t];i[t]=e,void 0===a?delete r[t]:r[t]=a}for(;a>0;){if(0===Object.keys(r).length){let i=t[a-1];i&&(r=n(i),delete r[e.path[a-1]])}else{let i=t[a-1];if(i){let t=n(i);t[e.path[a-1]]=r,r=t}else{let t=new _;t[e.path[a-1]]=r,r=t}}a-=1}return{data:Object.setPrototypeOf(r,_.prototype),actual:e,reverse:{...e,props:i}}}};function k(e,t){if(void 0===t)return;let r=!1,a=e.map(e=>{let a=e.id,i=R(e.data,t[a]);if(r=r||void 0!==i,void 0===i&&(i=e.data),e.children){let n=k(e.children,t);return void 0!==n?r=!0:n=e.children,{...e,id:a,data:i,children:n}}return{...e,id:a,data:i}});return r?a:void 0}function R(e,t){if(!x(t))return t;if(e instanceof v){let r=k(e,t);return void 0!==r&&Object.setPrototypeOf(r,Object.getPrototypeOf(e)),r}if(e instanceof D)return function(e,t){if(void 0===t)return;let r=!1,a=e.map(e=>{let a=e.id,i=R(e.data,t[a]);return r=r||void 0!==i,void 0===i&&(i=e.data),{...e,id:a,data:i}});return r?(Object.setPrototypeOf(a,Object.getPrototypeOf(e)),a):void 0}(e,t);if(Array.isArray(e)){let r=!1,a=e.map((e,a)=>{let i=R(e,t[a]);return r=r||void 0!==i,void 0===i&&(i=e),i});return r?(Object.setPrototypeOf(a,Object.getPrototypeOf(e)),a):void 0}if(e instanceof _)return L(e,t);if(e&&"object"==typeof e){let r={},a=!1;for(let[i,n]of Object.entries(e)){let e=R(n,t[i]);a=a||void 0!==e,void 0===e&&(e=n),r[i]=e}return a?(Object.setPrototypeOf(r,Object.getPrototypeOf(e)),r):void 0}}function L(e,t){if(void 0===e)return t;if(void 0===t)return e;if(!x(t))return t;if(!x(e))return M.apply(e,t);let r=new Set;for(let t of Object.keys(e))r.add(t);for(let e of Object.keys(t))r.add(e);let a=new _;for(let i of r){let r=L(void 0===e?void 0:e[i],void 0===t?void 0:t[i]);a[i]=r}return a}(e=>{e.apply=function(e,t){return R(e,t)??e},e.merge=function(e,t){return L(e,t)},e.filterOp=function(e,t){let r=0,a=t.path,i=e;for(;r<a.length&&void 0!==i;){if(i=Y.zoomOnce(i,a[r]),void 0===i)return t;if(!x(i))return;r+=1}if(void 0===i)return t;if(x(i)){if(0===t.type){let e={...t.props};for(let t of Object.keys(i))delete e[t];return{...t,props:e}}if(1===t.type||4===t.type||7===t.type){let e=k([t],i);return e?e[0]:t}return t}}})(M||(M={})),(T||(T={})).replaceProps=function(e,t){let r=Y.zoom(t,e.path);if("object"==typeof r){let t={};for(let a of Object.keys(e.props))t[a]=r[a];return{...e,props:t}}return{...e,props:{}}},(e=>{function t(e,t){let r=t.path,a=[];for(;;){let i;if(e instanceof _&&0===t.type&&(i=e.runOp({...t,path:r.slice(a.length)}),null===i&&(i=void 0)),void 0===i&&a.length===r.length&&(i=e instanceof v||e instanceof D||e instanceof f?e.runOp(t):g.runOp(e,t)),void 0!==i){if(null!==i){let e=i.data;for(let t=a.length-1;t>=0;t--){let i=r[t],n=a[t];if(n instanceof v){if("number"==typeof i)throw new Error("illegal arg");e=n.modifyById(i,e)}else if(n instanceof D){if("number"==typeof i)throw new Error("illegal arg");e=n.modifyById(i,e)}else if(n instanceof f){if("number"==typeof i)throw new Error("illegal arg");e=n.modifyById(i,e)}else if(n instanceof _){let t={...n,[i]:e};e=Object.setPrototypeOf(t,_.prototype)}else{if("object"!=typeof n)return null;if(Array.isArray(n)||s(n)){if("string"==typeof i&&(i=parseInt(i),isNaN(i)))throw new Error("Invalid path");let t=e;e=s(n)?n.slice():[...n],e[i]=t}else e=g.tryPreservePrototype(n,{...n,[i]:e})}}return{data:e,actual:{...i.actual,path:r},reverse:{...i.reverse,path:r}}}return null}let n,o=r[a.length];if(e instanceof v){if("number"==typeof o)throw new Error("");n=e.get(o)?.data}else if(e instanceof D){if("number"==typeof o)throw new Error("");n=e.get(o)?.data}else null!==e&&(n=e[o]);if(void 0===n)return null;a.push(e),e=n}}function r(e,t){for(let r=0;r<e.length&&r<t.length;r++)if(e[r]!==t[r])return!0;return!1}function a(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}e.drop=function(e,t){return{...e,path:e.path.slice(t)}},e.applySimple=function(e,r){return t(e,r)?.data??e},e.apply=t,e.pathDisjoint=r,e.pathEq=a,e.commutative=function(e,t){return r(e.path,t.path)},e.subsumed=function(e,t){return!(0!==e.type||0!==t.type||!a(e.path,t.path))&&Object.keys(e.props).every(e=>void 0!==t.props[e])}})(E||(E={})),(e=>{function t(e,t){let r=e,a=[],i=[];for(let e of t)try{if(3===e.type||5===e.type&&"variables"===e.path[e.path.length-1]){let t,n,o;if(3===e.type?(t=Y.zoom(r,[...e.path,e.id]),o=E.apply(r,{...e,type:2})):(t=Y.zoom(r,[...e.path,e.id,"value"]),o=E.apply(r,e)),null!==o){r=o.data;let[s,l]=O(r,{[e.id]:t});r=s;for(let o=0;o<l.length;o++){let s=l[o],c=s.pop();if("number"==typeof c){let a=[c];for(let e=o+1;e<l.length;e++){let t=l[e],r=t[t.length-1];if("number"!=typeof r||!Y.equal(s,t.slice(0,t.length-1)))break;a.push(r),l.splice(e,1)}let i=Y.zoom(r,s);n=i.map((t,r)=>a.includes(r)?e.id:t),t=i,c=s.pop()}else{if("alphaOverride"===c||"alpha"===c){t/=100;let e=t,a=Y.zoom(r,s.slice(0,s.length-2)),i=a.layers.map(t=>t.id===s[s.length-1]?{...t,data:{...t.data,[c]:e}}:t);Object.setPrototypeOf(i,Object.getPrototypeOf(a.layers)),a.layers=i}n=e.id}a.push({type:0,path:s,props:{[c]:t}}),i.push({type:0,path:s,props:{[c]:n}})}i.push(o.reverse),a.push(o.actual)}}else{let t=E.apply(r,e);null!==t&&(a.push(t.actual),r=t.data,i.push(t.reverse))}}catch(e){if(e instanceof h)return null;throw e}return{data:r,actual:a,reverse:i.reverse()}}e.empty=function(){return[]},e.removePrefix=function(e,t){let r=[];for(let a of e){let[e,...i]=a.path;e===t&&r.push({...a,path:i})}return r},e.addPrefix=function(e,t){return e.map(e=>({...e,path:[t,...e.path]}))},e.concat=function(e,t){return[...e,...t]},e.compress=function(e,t){return[...e.filter(e=>!t.some(t=>E.subsumed(e,t))),...t]},e.commutative=function(e,t){return e.every(e=>t.every(t=>E.commutative(e,t)))},e.applyAll=function(e,r){for(let a of r){let r=t(e,a);null!==r&&(e=r.data)}return e},e.apply=t})(I||(I={}));var B=Symbol(),z=Symbol(),U=Symbol(),V=class{reportOp(e,t,r=[]){let a=this;if(null===t)return;a._current=t.data;let i=r;for(;!(a instanceof X);){let e=a._path,t=a._current;if(""!==e&&i.splice(0,0,e),a=a._parent,null===a)return;a.update(e,t)}a.push(i,e,t.actual,t.reverse)}deleteChildren(e){if(this._children){let t=this._children[e];if(t){let r=t[U];r&&r(),delete this._children[e]}}}},F=class extends V{constructor(e,t,r){super(),this._parent=e,this._path=t,this._current=r}update(e,t){if(Array.isArray(this._current)){if("string"==typeof e&&(e=parseInt(e),isNaN(e)))throw new Error("Invalid path");this._current=[...this._current],this._current[e]=t}else this._current=g.tryPreservePrototype(this._current,{...this._current,[e]:t})}runOp(e){this.reportOp(e,g.runOp(this._current,e),e.path)}},G=class extends V{constructor(e,t,r){super(),this._parent=e,this._path=t,this._current=r}update(e,t){this._current={...this._current,[e]:t},Object.setPrototypeOf(this._current,f.prototype)}runOp(e){this.reportOp(e,this._current.runOp(e))}},H={get(e,t){if(t===U)return()=>{e._parent=null};if(t===B)return e._current;if(t===z)return e;let{_current:r,_children:a}=e;if("push"===t&&Array.isArray(r))throw new Error("not supported to expand array");let i=void 0===a?void 0:a[t];if(void 0!==i)return i;let n=r[t],o=Q(e,t,n);return o!==n?(void 0===a&&(a={},e._children=a),a[t]=o,o):n},has:(e,t)=>t in e._current,ownKeys:e=>Reflect.ownKeys(e._current),defineProperty(){throw Error("not supported")},getPrototypeOf:e=>Object.getPrototypeOf(e._current),setPrototypeOf(){throw Error("not supported")},getOwnPropertyDescriptor(e,t){let r=e._current,a=Reflect.getOwnPropertyDescriptor(r,t);return a&&{writable:!0,configurable:!0,enumerable:a.enumerable,value:r[t]}}},N={...H,set(e,t,r){let a={type:0,props:{[t]:te(r)??r}};return e.deleteChildren(t),e.runOp(a),!0},deleteProperty(e,t){let r={type:0,props:{[t]:void 0}};return e.deleteChildren(t),e.runOp(r),!0}},K={...H,set(e,t,r){return void 0===r?this.deleteProperty(e,t):(e.deleteChildren(t),e.runOp({type:1,id:t,data:r})),!0},deleteProperty:(e,t)=>(e.runOp({type:2,id:t}),!0)},W=class extends V{constructor(e,t,r){super(),this._children={},this._parent=e,this._path=t,this._current=r,this[U]=()=>{this._parent=null}}unproxy(){return this._current}update(e,t){this._current=this._current.modifyById(e,t)}runOp(e){this.reportOp(e,this._current.runOp(e))}randomId(){return this._current.randomId()}isDescendantOf(e,t){return this._current.isDescendantOf(e,t)}childrenOf(e){return this._current.childrenOf(e)}get(e){return this._current.get(e)}parent(e){return this._current.parent(e)}traverse(e){this._current.traverse((t,r)=>{e(t,this.data(t))})}data(e){let{_current:t,_children:r}=this,a=void 0===r?void 0:r[e];if(void 0!==a)return a;let i=t.get(e)?.data,n=Q(this,e,i);return n!==i?(void 0===r&&(r={},this._children=r),r[e]=n,n):i}add(e,t,r,a,i){this.runOp({type:7,parent:e,fi:t,id:r,data:a,children:i})}move(e,t,r){this.runOp({type:9,parent:e,fi:t,id:r})}insertAfter(e,t,r){let a=this._current.insertAfterHelper(e,t,r.length);for(let t=0;t<r.length;t++){let i=r[t];this.add(e,a[t],i.id,i.data,i.children)}}insertBefore(e,t,r){let a=this._current.insertBeforeHelper(e,t,r.length);for(let t=0;t<r.length;t++){let i=r[t];this.add(e,a[t],i.id,i.data,i.children)}}moveAfter(e,t,r){let a=this._current.insertAfterHelper(e,t,r.length);for(let t=0;t<r.length;t++){let i=r[t];this.move(e,a[t],i)}}moveBefore(e,t,r){let a=this._current.insertBeforeHelper(e,t,r.length);for(let t=0;t<r.length;t++){let i=r[t];this.move(e,a[t],i)}}delete(e){this.deleteChildren(e),this.runOp({type:8,id:e})}sortNext(e){return this._current.sortNext(e)}sortPrevious(e){return this._current.sortPrevious(e)}getAllSorted(e){return this._current.getAllSorted(e)}},q=class extends V{constructor(e,t,r){super(),this._children={},this._parent=e,this._path=t,this._current=r,this[U]=()=>{this._parent=null}}unproxy(){return this._current}get length(){return this._current.length}forEach(e){let t=this.length;for(let r=0;r<t;r++){let t=this._current[r].id,a=this._current[r].fi;e(this.data(this._current[r].id),t,a,r)}}find(e){let t=this.length;for(let r=0;r<t;r++){let t=this._current[r].id;if(e(this.data(t),t))return this.get(t)}}update(e,t){this._current=this._current.modifyById(e,t)}randomId(){return this._current.randomId()}get(e){return{...this._current.get(e),data:this.data(e)}}at(e){let{id:t,fi:r}=this._current.at(e);return{id:t,fi:r,data:this.data(t)}}data(e){let{_current:t,_children:r}=this,a=void 0===r?void 0:r[e];if(void 0!==a)return a;let i=t.get(e)?.data,n=Q(this,e,i);return n!==i?(void 0===r&&(r={},this._children=r),r[e]=n,n):i}runOp(e){this.reportOp(e,this._current.runOp(e))}add(e,t,r){this.runOp({type:4,fi:e,id:t,data:r})}move(e,t){this.runOp({type:6,fi:e,id:t})}insertAfter(e,t){let r=this._current.insertAfterHelper(e,t.length);for(let e=0;e<t.length;e++){let a=t[e];this.add(r[e],a.id,a.data)}}insertBefore(e,t){let r=this._current.insertBeforeHelper(e,t.length);for(let e=0;e<t.length;e++){let a=t[e];this.add(r[e],a.id,a.data)}}moveAfter(e,t){let r=this._current.insertAfterHelper(e,t.length);for(let e=0;e<t.length;e++){let a=t[e];this.move(r[e],a)}}moveBefore(e,t){let r=this._current.insertBeforeHelper(e,t.length);for(let e=0;e<t.length;e++){let a=t[e];this.move(r[e],a)}}delete(e){this.deleteChildren(e),this.runOp({type:5,id:e})}};function Z(e,t,r){if(e.length>0){let a=e[e.length-1];if(0===a.type&&0===t.type&&Y.equal(a.path,r))return void Object.assign(a.props,t.props)}e.push({...t,path:r})}var Y,$,X=class extends V{constructor(e){super(),this.ts=[],this.actual=[],this.reverse=[],this._current=e}update(e,t){if(""!==e)throw new Error("");this._current=t}push(e,t,r,a){Z(this.ts,t,e),Z(this.actual,r,e),Z(this.reverse,a,e)}result(){return{data:this._current,ts:this.ts,actual:this.actual,reverse:this.reverse.reverse()}}};function Q(e,t,r){return r instanceof v?new W(e,t,r):r instanceof D?new q(e,t,r):r instanceof f?new Proxy(new G(e,t,r),K):null!==r&&"object"==typeof r?s(r)?r:new Proxy(new F(e,t,r),N):r}function J(e){let t=new X(e);return[Q(t,"",e),t]}function ee(e,t){let[r,a]=J(e);return t(r),a.result()}function te(e){return e instanceof W||e instanceof q?e._current:null!==e&&"object"==typeof e?e[B]:e}(e=>{function t(e,t){return(e instanceof v||e instanceof W)&&"string"==typeof t||(e instanceof D||e instanceof q)&&"string"==typeof t?e.data(t):"number"==typeof t&&Array.isArray(e)||"string"==typeof t&&"object"==typeof e&&null!==e?e[t]:void 0}function r(e,r,a=0){for(;a<r.length&&void 0!==e;)e=t(e,r[a]),a+=1;return e}e.equal=function(e,t){if(t.length!==e.length)return!1;{let r=0;for(;r<e.length;){if(e[r]!==t[r])return!1;r+=1}}return!0},e.removeOverridden=function(e,t,a){let i=r(a,e);if(void 0!==i&&"object"==typeof i&&null!==i){let e={...t};return Object.keys(i).forEach(t=>{delete e[t]}),e}return t},e.zoomOnce=t,e.zoom=r,e.findPathes=function(e,t){let r=[];return function e(a,i){if(a instanceof d&&a.id===t.id)r.push(i);else if(a instanceof D)for(let t=0;t<a.length;t++)e(a[t].data,[...i,a[t].id]);else if(a instanceof v)a.traverse((t,r)=>{e(t,[...i,r])});else if(Array.isArray(a))for(let t=0;t<a.length;t++)e(a[t],[...i,t]);else{if(s(a))return;if("object"==typeof a&&null!==a)for(let t in a)e(a[t],[...i,t])}}(e,[]),r}})(Y||(Y={}));try{$=new TextDecoder}catch{}var re,ae,ie,ne,oe,se,le,ce=0,ue=[],de=ue,pe=0,fe={},he=0,ye=0,me=[],ge={useRecords:!1,mapsAsObjects:!0},be=new class{};be.name="MessagePack 0xC1";var ve=!1,we=2,De=class{constructor(e){e&&(!1===e.useRecords&&void 0===e.mapsAsObjects&&(e.mapsAsObjects=!0),e.sequential&&!1!==e.trusted&&(e.trusted=!0,!e.structures&&0!=e.useRecords&&(e.structures=[],e.maxSharedStructures||(e.maxSharedStructures=0))),e.structures?e.structures.sharedLength=e.structures.length:e.getStructures&&((e.structures=[]).uninitialized=!0,e.structures.sharedLength=0),e.int64AsNumber&&(e.int64AsType="number")),Object.assign(this,e)}unpack(e,t){if(re)return $e(()=>(Xe(),this?this.unpack(e,t):De.prototype.unpack.call(ge,e,t)));!e.buffer&&e.constructor===ArrayBuffer&&(e=typeof Buffer<"u"?Buffer.from(e):new Uint8Array(e)),"object"==typeof t?(ae=t.end||e.length,ce=t.start||0):(ce=0,ae=t>-1?t:e.length),pe=0,ye=0,ne=null,de=ue,oe=null,re=e;try{le=e.dataView||(e.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength))}catch(t){throw re=null,e instanceof Uint8Array?t:new Error("Source must be a Uint8Array or Buffer but was a "+(e&&"object"==typeof e?e.constructor.name:typeof e))}if(this instanceof De){if(fe=this,this.structures)return ie=this.structures,Se();(!ie||ie.length>0)&&(ie=[])}else fe=ge,(!ie||ie.length>0)&&(ie=[]);return Se()}unpackMultiple(e,t){let r,a=0;try{ve=!0;let i=e.length,n=this?this.unpack(e,i):et.unpack(e,i);if(!t){for(r=[n];ce<i;)a=ce,r.push(Se());return r}if(!1===t(n,a,ce))return;for(;ce<i;)if(a=ce,!1===t(Se(),a,ce))return}catch(e){throw e.lastPosition=a,e.values=r,e}finally{ve=!1,Xe()}}_mergeStructures(e,t){e=e||[],Object.isFrozen(e)&&(e=e.map(e=>e.slice(0)));for(let t=0,r=e.length;t<r;t++){let r=e[t];r&&(r.isShared=!0,t>=32&&(r.highByte=t-32>>5))}e.sharedLength=e.length;for(let r in t||[])if(r>=0){let a=e[r],i=t[r];i&&(a&&((e.restoreStructures||(e.restoreStructures=[]))[r]=a),e[r]=i)}return this.structures=e}decode(e,t){return this.unpack(e,t)}};function Se(e){try{if(!fe.trusted&&!ve){let e=ie.sharedLength||0;e<ie.length&&(ie.length=e)}let e;if(fe.randomAccessStructure&&re[ce]<64&&re[ce],e=je(),oe&&(ce=oe.postBundlePosition,oe=null),ve&&(ie.restoreStructures=null),ce==ae)ie&&ie.restoreStructures&&Oe(),ie=null,re=null,se&&(se=null);else{if(ce>ae)throw new Error("Unexpected end of MessagePack data");if(!ve){let t;try{t=JSON.stringify(e,(e,t)=>"bigint"==typeof t?`${t}n`:t).slice(0,100)}catch(e){t="(JSON view not available "+e+")"}throw new Error("Data read, but end of buffer not reached "+t)}}return e}catch(e){throw ie&&ie.restoreStructures&&Oe(),Xe(),(e instanceof RangeError||e.message.startsWith("Unexpected end of buffer")||ce>ae)&&(e.incomplete=!0),e}}function Oe(){for(let e in ie.restoreStructures)ie[e]=ie.restoreStructures[e];ie.restoreStructures=null}function je(){let e=re[ce++];if(e<160){if(e<128){if(e<64)return e;{let t=ie[63&e]||fe.getStructures&&xe()[63&e];return t?(t.read||(t.read=Ce(t,63&e)),t.read()):e}}if(e<144){if(e-=128,fe.mapsAsObjects){let t={};for(let r=0;r<e;r++){let e=He();"__proto__"===e&&(e="__proto_"),t[e]=je()}return t}{let t=new Map;for(let r=0;r<e;r++)t.set(je(),je());return t}}{e-=144;let t=new Array(e);for(let r=0;r<e;r++)t[r]=je();return fe.freezeData?Object.freeze(t):t}}if(e<192){let t=e-160;if(ye>=ce)return ne.slice(ce-he,(ce+=t)-he);if(0==ye&&ae<140){let e=t<16?ze(t):Be(t);if(null!=e)return e}return Me(t)}{let t;switch(e){case 192:return null;case 193:return oe?(t=je(),t>0?oe[1].slice(oe.position1,oe.position1+=t):oe[0].slice(oe.position0,oe.position0-=t)):be;case 194:return!1;case 195:return!0;case 196:if(t=re[ce++],void 0===t)throw new Error("Unexpected end of buffer");return Ve(t);case 197:return t=le.getUint16(ce),ce+=2,Ve(t);case 198:return t=le.getUint32(ce),ce+=4,Ve(t);case 199:return Fe(re[ce++]);case 200:return t=le.getUint16(ce),ce+=2,Fe(t);case 201:return t=le.getUint32(ce),ce+=4,Fe(t);case 202:if(t=le.getFloat32(ce),fe.useFloat32>2){let e=Je[(127&re[ce])<<1|re[ce+1]>>7];return ce+=4,(e*t+(t>0?.5:-.5)|0)/e}return ce+=4,t;case 203:return t=le.getFloat64(ce),ce+=8,t;case 204:return re[ce++];case 205:return t=le.getUint16(ce),ce+=2,t;case 206:return t=le.getUint32(ce),ce+=4,t;case 207:return"number"===fe.int64AsType?(t=4294967296*le.getUint32(ce),t+=le.getUint32(ce+4)):"string"===fe.int64AsType?t=le.getBigUint64(ce).toString():"auto"===fe.int64AsType?(t=le.getBigUint64(ce),t<=BigInt(2)<<BigInt(52)&&(t=Number(t))):t=le.getBigUint64(ce),ce+=8,t;case 208:return le.getInt8(ce++);case 209:return t=le.getInt16(ce),ce+=2,t;case 210:return t=le.getInt32(ce),ce+=4,t;case 211:return"number"===fe.int64AsType?(t=4294967296*le.getInt32(ce),t+=le.getUint32(ce+4)):"string"===fe.int64AsType?t=le.getBigInt64(ce).toString():"auto"===fe.int64AsType?(t=le.getBigInt64(ce),t>=BigInt(-2)<<BigInt(52)&&t<=BigInt(2)<<BigInt(52)&&(t=Number(t))):t=le.getBigInt64(ce),ce+=8,t;case 212:if(t=re[ce++],114==t)return Ke(63&re[ce++]);{let e=me[t];if(e)return e.read?(ce++,e.read(je())):e.noBuffer?(ce++,e()):e(re.subarray(ce,++ce));throw new Error("Unknown extension "+t)}case 213:return t=re[ce],114==t?(ce++,Ke(63&re[ce++],re[ce++])):Fe(2);case 214:return Fe(4);case 215:return Fe(8);case 216:return Fe(16);case 217:return t=re[ce++],ye>=ce?ne.slice(ce-he,(ce+=t)-he):Te(t);case 218:return t=le.getUint16(ce),ye>=(ce+=2)?ne.slice(ce-he,(ce+=t)-he):Ee(t);case 219:return t=le.getUint32(ce),ye>=(ce+=4)?ne.slice(ce-he,(ce+=t)-he):Ie(t);case 220:return t=le.getUint16(ce),ce+=2,ke(t);case 221:return t=le.getUint32(ce),ce+=4,ke(t);case 222:return t=le.getUint16(ce),ce+=2,Re(t);case 223:return t=le.getUint32(ce),ce+=4,Re(t);default:if(e>=224)return e-256;if(void 0===e){let e=new Error("Unexpected end of MessagePack data");throw e.incomplete=!0,e}throw new Error("Unknown MessagePack token "+e)}}}var Ae=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Ce(e,t){function r(){if(r.count++>we){let a;try{a=e.read=new Function("r","return function(){return "+(fe.freezeData?"Object.freeze":"")+"({"+e.map(e=>"__proto__"===e?"__proto_:r()":Ae.test(e)?e+":r()":"["+JSON.stringify(e)+"]:r()").join(",")+"})}")(je)}catch{return we=1/0,r()}return e.read0=a,0===e.highByte&&(e.read=Pe(t,e.read)),a()}let a={};for(let t=0,r=e.length;t<r;t++){let r=e[t];"__proto__"===r&&(r="__proto_"),a[r]=je()}return fe.freezeData?Object.freeze(a):a}return r.count=0,e.read0=r,0===e.highByte?Pe(t,r):r}var Pe=(e,t)=>function(){let r=re[ce++];if(0===r)return t();let a=e<32?-(e+(r<<5)):e+(r<<5),i=ie[a]||xe()[a];if(!i)throw new Error("Record id is not defined for "+a);return i.read||(i.read=Ce(i,e)),i.read()};function xe(){let e=$e(()=>(re=null,fe.getStructures()));return ie=fe._mergeStructures(e,ie)}var Me=_e,Te=_e,Ee=_e,Ie=_e;function _e(e){let t;if(e<16&&(t=ze(e)))return t;if(e>64&&$)return $.decode(re.subarray(ce,ce+=e));let r=ce+e,a=[];for(t="";ce<r;){let e=re[ce++];if(128&e)if(192==(224&e)){let t=(31&e)<<6|63&re[ce++];t<128?a.push(65533):a.push(t)}else if(224==(240&e)){let t=(31&e)<<12|(63&re[ce++])<<6|63&re[ce++];t<2048||t>=55296&&t<=57343?a.push(65533):a.push(t)}else if(240==(248&e)){let t=(7&e)<<18|(63&re[ce++])<<12|(63&re[ce++])<<6|63&re[ce++];t<65536||t>1114111?a.push(65533):(t>65535&&(t-=65536,a.push(t>>>10&1023|55296),t=56320|1023&t),a.push(t))}else a.push(65533);else a.push(e);a.length>=4096&&(t+=Le.apply(String,a),a.length=0)}return a.length>0&&(t+=Le.apply(String,a)),t}function ke(e){let t=new Array(e);for(let r=0;r<e;r++)t[r]=je();return fe.freezeData?Object.freeze(t):t}function Re(e){if(fe.mapsAsObjects){let t={};for(let r=0;r<e;r++){let e=He();"__proto__"===e&&(e="__proto_"),t[e]=je()}return t}{let t=new Map;for(let r=0;r<e;r++)t.set(je(),je());return t}}var Le=String.fromCharCode;function Be(e){let t=ce,r=new Array(e);for(let a=0;a<e;a++){let e=re[ce++];if((128&e)>0)return void(ce=t);r[a]=e}return Le.apply(String,r)}function ze(e){if(e<4){if(e<2){if(0===e)return"";{let e=re[ce++];return(128&e)>1?void(ce-=1):Le(e)}}{let t=re[ce++],r=re[ce++];if((128&t)>0||(128&r)>0)return void(ce-=2);if(e<3)return Le(t,r);let a=re[ce++];return(128&a)>0?void(ce-=3):Le(t,r,a)}}{let t=re[ce++],r=re[ce++],a=re[ce++],i=re[ce++];if((128&t)>0||(128&r)>0||(128&a)>0||(128&i)>0)return void(ce-=4);if(e<6){if(4===e)return Le(t,r,a,i);{let e=re[ce++];return(128&e)>0?void(ce-=5):Le(t,r,a,i,e)}}if(e<8){let n=re[ce++],o=re[ce++];if((128&n)>0||(128&o)>0)return void(ce-=6);if(e<7)return Le(t,r,a,i,n,o);let s=re[ce++];return(128&s)>0?void(ce-=7):Le(t,r,a,i,n,o,s)}{let n=re[ce++],o=re[ce++],s=re[ce++],l=re[ce++];if((128&n)>0||(128&o)>0||(128&s)>0||(128&l)>0)return void(ce-=8);if(e<10){if(8===e)return Le(t,r,a,i,n,o,s,l);{let e=re[ce++];return(128&e)>0?void(ce-=9):Le(t,r,a,i,n,o,s,l,e)}}if(e<12){let c=re[ce++],u=re[ce++];if((128&c)>0||(128&u)>0)return void(ce-=10);if(e<11)return Le(t,r,a,i,n,o,s,l,c,u);let d=re[ce++];return(128&d)>0?void(ce-=11):Le(t,r,a,i,n,o,s,l,c,u,d)}{let c=re[ce++],u=re[ce++],d=re[ce++],p=re[ce++];if((128&c)>0||(128&u)>0||(128&d)>0||(128&p)>0)return void(ce-=12);if(e<14){if(12===e)return Le(t,r,a,i,n,o,s,l,c,u,d,p);{let e=re[ce++];return(128&e)>0?void(ce-=13):Le(t,r,a,i,n,o,s,l,c,u,d,p,e)}}{let f=re[ce++],h=re[ce++];if((128&f)>0||(128&h)>0)return void(ce-=14);if(e<15)return Le(t,r,a,i,n,o,s,l,c,u,d,p,f,h);let y=re[ce++];return(128&y)>0?void(ce-=15):Le(t,r,a,i,n,o,s,l,c,u,d,p,f,h,y)}}}}}function Ue(){let e,t=re[ce++];if(t<192)e=t-160;else switch(t){case 217:e=re[ce++];break;case 218:e=le.getUint16(ce),ce+=2;break;case 219:e=le.getUint32(ce),ce+=4;break;default:throw new Error("Expected string")}return _e(e)}function Ve(e){return fe.copyBuffers?Uint8Array.prototype.slice.call(re,ce,ce+=e):re.subarray(ce,ce+=e)}function Fe(e){let t=re[ce++];if(me[t]){let r;return me[t](re.subarray(ce,r=ce+=e),e=>{ce=e;try{return je()}finally{ce=r}})}throw new Error("Unknown extension type "+t)}var Ge=new Array(4096);function He(){let e=re[ce++];if(!(e>=160&&e<192))return ce--,Ne(je());if(e-=160,ye>=ce)return ne.slice(ce-he,(ce+=e)-he);if(!(0==ye&&ae<180))return Me(e);let t,r=4095&(e<<5^(e>1?le.getUint16(ce):e>0?re[ce]:0)),a=Ge[r],i=ce,n=ce+e-3,o=0;if(a&&a.bytes==e){for(;i<n;){if(t=le.getUint32(i),t!=a[o++]){i=1879048192;break}i+=4}for(n+=3;i<n;)if(t=re[i++],t!=a[o++]){i=1879048192;break}if(i===n)return ce=i,a.string;n-=3,i=ce}for(a=[],Ge[r]=a,a.bytes=e;i<n;)t=le.getUint32(i),a.push(t),i+=4;for(n+=3;i<n;)t=re[i++],a.push(t);let s=e<16?ze(e):Be(e);return a.string=null!=s?s:Me(e)}function Ne(e){if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e||"bigint"==typeof e)return e.toString();if(null==e)return e+"";if(fe.allowArraysInMapKeys&&Array.isArray(e)&&e.flat().every(e=>["string","number","boolean","bigint"].includes(typeof e)))return e.flat().toString();throw new Error("Invalid property type for record: "+typeof e)}var Ke=(e,t)=>{let r=je().map(Ne),a=e;void 0!==t&&(e=e<32?-((t<<5)+e):(t<<5)+e,r.highByte=t);let i=ie[e];return i&&(i.isShared||ve)&&((ie.restoreStructures||(ie.restoreStructures=[]))[e]=i),ie[e]=r,r.read=Ce(r,a),(r.read0||r.read)()};me[0]=()=>{},me[0].noBuffer=!0,me[66]=e=>{let t=e.byteLength%8||8,r=BigInt(128&e[0]?e[0]-256:e[0]);for(let a=1;a<t;a++)r<<=BigInt(8),r+=BigInt(e[a]);if(e.byteLength!==t){let a=new DataView(e.buffer,e.byteOffset,e.byteLength),i=(e,t)=>{let r=t-e;if(r<=40){let r=a.getBigUint64(e);for(let i=e+8;i<t;i+=8)r<<=BigInt(64),r|=a.getBigUint64(i);return r}let n=e+(r>>4<<3),o=i(e,n),s=i(n,t);return o<<BigInt(8*(t-n))|s};r=r<<BigInt(8*(a.byteLength-t))|i(t,a.byteLength)}return r};var We={Error:Error,EvalError:EvalError,RangeError:RangeError,ReferenceError:ReferenceError,SyntaxError:SyntaxError,TypeError:TypeError,URIError:URIError,AggregateError:"function"==typeof AggregateError?AggregateError:null};me[101]=()=>{let e=je();if(!We[e[0]]){let t=Error(e[1],{cause:e[2]});return t.name=e[0],t}return We[e[0]](e[1],{cause:e[2]})},me[105]=e=>{if(!1===fe.structuredClone)throw new Error("Structured clone extension is disabled");let t=le.getUint32(ce-4);se||(se=new Map);let r,a=re[ce];r=a>=144&&a<160||220==a||221==a?[]:a>=128&&a<144||222==a||223==a?new Map:(a>=199&&a<=201||a>=212&&a<=216)&&115===re[ce+1]?new Set:{};let i={target:r};se.set(t,i);let n=je();if(!i.used)return i.target=n;if(Object.assign(r,n),r instanceof Map)for(let[e,t]of n.entries())r.set(e,t);if(r instanceof Set)for(let e of Array.from(n))r.add(e);return r},me[112]=e=>{if(!1===fe.structuredClone)throw new Error("Structured clone extension is disabled");let t=le.getUint32(ce-4),r=se.get(t);return r.used=!0,r.target},me[115]=()=>new Set(je());var qe=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map(e=>e+"Array"),Ze="object"==typeof globalThis?globalThis:window;me[116]=e=>{let t=e[0],r=Uint8Array.prototype.slice.call(e,1).buffer,a=qe[t];if(!a){if(16===t)return r;if(17===t)return new DataView(r);throw new Error("Could not find typed array for code "+t)}return new Ze[a](r)},me[120]=()=>{let e=je();return new RegExp(e[0],e[1])};var Ye=[];function $e(e){let t=ae,r=ce,a=pe,i=he,n=ye,o=ne,s=de,l=se,c=oe,u=new Uint8Array(re.slice(0,ae)),d=ie,p=ie.slice(0,ie.length),f=fe,h=ve,y=e();return ae=t,ce=r,pe=a,he=i,ye=n,ne=o,de=s,se=l,oe=c,re=u,ve=h,(ie=d).splice(0,ie.length,...p),fe=f,le=new DataView(re.buffer,re.byteOffset,re.byteLength),y}function Xe(){re=null,se=null,ie=null}function Qe(e){e.unpack?me[e.type]=e.unpack:me[e.type]=e}me[98]=e=>{let t=(e[0]<<24)+(e[1]<<16)+(e[2]<<8)+e[3],r=ce;return ce+=t-e.length,oe=Ye,(oe=[Ue(),Ue()]).position0=0,oe.position1=0,oe.postBundlePosition=ce,ce=r,je()},me[255]=e=>4==e.length?new Date(1e3*(16777216*e[0]+(e[1]<<16)+(e[2]<<8)+e[3])):8==e.length?new Date(((e[0]<<22)+(e[1]<<14)+(e[2]<<6)+(e[3]>>2))/1e6+1e3*(4294967296*(3&e[3])+16777216*e[4]+(e[5]<<16)+(e[6]<<8)+e[7])):12==e.length?new Date(((e[0]<<24)+(e[1]<<16)+(e[2]<<8)+e[3])/1e6+1e3*((128&e[4]?-281474976710656:0)+1099511627776*e[6]+4294967296*e[7]+16777216*e[8]+(e[9]<<16)+(e[10]<<8)+e[11])):new Date("invalid");var Je=new Array(147);for(let e=0;e<256;e++)Je[e]=+("1e"+Math.floor(45.15-.30103*e));var et=new De({useRecords:!1}),tt=(et.unpack,et.unpackMultiple,et.unpack,new Float32Array(1)),rt=(new Uint8Array(tt.buffer,0,4),[{Class:f.prototype.constructor,type:1,write:e=>({...e}),read:e=>(Object.setPrototypeOf(e,f.prototype),e)},{Class:D.prototype.constructor,type:2,write:e=>[...e],read:e=>(Object.setPrototypeOf(e,D.prototype),e)},{Class:v.prototype.constructor,type:3,write:e=>[...e],read:e=>(Object.setPrototypeOf(e,v.prototype),e)},{Class:d.prototype.constructor,type:4,write:e=>e.id,read:e=>new d(e)},{Class:p.prototype.constructor,type:5,write:e=>e.data,read:e=>new p(e)},{Class:_.prototype.constructor,type:6,write:e=>({...e}),read:e=>(Object.setPrototypeOf(e,_.prototype),e)}]);for(let e of rt)Qe(e);var at,it=new De({structuredClone:!0});(at||(at={})).deserialize=function(e){return it.unpack(e)};var nt,ot,st,lt=e=>()=>{throw new Error(e+" is not available in the runtime build (decode-only CollabSerialize)")},ct={deserialize:at.deserialize,serialize:lt("CollabSerialize.serialize"),checksum:lt("CollabSerialize.checksum")};function ut(e){let t=typeof e;return null!==e&&("object"===t||"function"===t)}(ot=nt||(nt={})).all=["PerspectiveCamera","OrthographicCamera"],ot.is=function(e){return ot.all.includes(e)},(e=>{e.DefaultUp=[0,1,0],e.DefaultTargetOffset=1e3,e.MinTargetOffset=.001,e.sanitizeTargetOffset=function(t){return void 0===t||!Number.isFinite(t)||t<e.MinTargetOffset?e.DefaultTargetOffset:t},e.DefaultAzimuth=-24,e.DefaultElevation=15;let t=e.DefaultAzimuth*Math.PI/180,r=e.DefaultElevation*Math.PI/180,a=180/Math.PI;e.DefaultPosition=[e.DefaultTargetOffset*Math.sin(t)*Math.cos(r),e.DefaultTargetOffset*Math.sin(r),e.DefaultTargetOffset*Math.cos(t)*Math.cos(r)],e.DefaultRotation=[Math.atan2(-Math.sin(r),Math.cos(t)*Math.cos(r))*a,Math.asin(Math.sin(t)*Math.cos(r))*a,Math.atan2(Math.sin(t)*Math.sin(r),Math.cos(t))*a],e.defaultData={far:1e5,type:"PerspectiveCamera",perspective:{near:70,fov:45,zoom:1},orthographic:{near:-1e5,zoom:1},up:e.DefaultUp,isUpVectorFlipped:!1,targetOffset:e.DefaultTargetOffset},e.getZoom=function(e){return"PerspectiveCamera"===e.type?e.perspective?.zoom??1:e.orthographic?.zoom??1}})(st||(st={}));var dt,pt,ft,ht,yt,mt,gt,bt,vt,wt,Dt,St,Ot="personal camera",jt="a218fcc3-276b-49b9-b485-49037fd14f5f",At=5526619,Ct=(e=>(e.x="x",e.y="y",e.z="z",e))(Ct||{});(e=>{function t(e,t){return Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2)}function r(e,r){return Math.sqrt(t(e,r))}function a(t,r,a){let i=e.sub(r,t),n=e.sub(a,t),o=e.dot(i,n)/e.dot(i,i),s=e.scalarMultiply(i,o);return e.add(t,s)}e.isEqual=function(e,t){return e[0]===t[0]&&e[1]===t[1]},e.lerp=function(e,t,r){return[e[0]+(t[0]-e[0])*r,e[1]+(t[1]-e[1])*r]},e.add=function(e,t){return[e[0]+t[0],e[1]+t[1]]},e.sub=function(e,t){return[e[0]-t[0],e[1]-t[1]]},e.multiply=function(e,t){return[e[0]*t[0],e[1]*t[1]]},e.divide=function(e,t){return[e[0]/t[0],e[1]/t[1]]},e.distanceSquared=t,e.distance=r,e.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},e.scalarMultiply=function(e,t){return[e[0]*t,e[1]*t]},e.projectionOnto=a,e.projectionOntoDistance=function(e,t,i){return r(e,a(e,t,i))},e.center=function(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}})(dt||(dt={})),(ft=pt||(pt={})).isEqual=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]},ft.add=function(e,t){return[e[0]+t[0],e[1]+t[1],e[2]+t[2]]},ft.sub=function(e,t){return[e[0]-t[0],e[1]-t[1],e[2]-t[2]]},ft.div=function(e,t){return[e[0]/t[0],e[1]/t[1],e[2]/t[2]]},ft.mul=function(e,t){return[e[0]*t[0],e[1]*t[1],e[2]*t[2]]},ft.dist=function(e,t){return Math.hypot(e[0]-t[0],e[1]-t[1],e[2]-t[2])},ft.lerp=function(e,t,r){return[e[0]+(t[0]-e[0])*r,e[1]+(t[1]-e[1])*r,e[2]+(t[2]-e[2])*r]},(e=>{e.isEqual=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},e.lerp=function(e,t,r){return[e[0]+(t[0]-e[0])*r,e[1]+(t[1]-e[1])*r,e[2]+(t[2]-e[2])*r,e[3]+(t[3]-e[3])*r]}})(ht||(ht={})),(e=>{let t=180/Math.PI,r=Math.PI/180;function a(e){return"number"==typeof e?e*t:e}function i(e){return"number"==typeof e?e*r:e}e.radToDeg=function(e){return[a(e[0]),a(e[1]),a(e[2])]},e.degToRad=function(e){return[i(e[0]),i(e[1]),i(e[2])]}})(yt||(yt={})),(gt=mt||(mt={})).identity=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],gt.isEqual=function(e,t){for(let r=0;r<16;r++)if(e[r]!==t[r])return!1;return!0},gt.simplify=function(e){return e??gt.identity},gt.applyMatrix4=function(e,t){let r=t.slice(0);for(let a=0,i=t.length;a<i;a+=3){let i=e[3]*t[a]+e[7]*t[a+1]+e[11]*t[a+2]+e[15];r[a]=(e[0]*t[a]+e[4]*t[a+1]+e[8]*t[a+2]+e[12])/i,r[a+1]=(e[1]*t[a]+e[5]*t[a+1]+e[9]*t[a+2]+e[13])/i,r[a+2]=(e[2]*t[a]+e[6]*t[a+1]+e[10]*t[a+2]+e[14])/i}return r},(vt=bt||(bt={})).isRGB=function(e){return"object"==typeof e&&"number"==typeof e.r&&"number"==typeof e.g&&"number"==typeof e.b},vt.white={r:1,g:1,b:1},vt.red={r:1,g:0,b:0},vt.black={r:0,g:0,b:0},vt.toRgb255a1=function(e){return{r:Math.round(255*e.r),g:Math.round(255*e.g),b:Math.round(255*e.b),a:1}},vt.clone=function(e){return{r:e.r,g:e.g,b:e.b}},vt.fromHex=function(e){return{r:((e=Math.floor(e))>>16&255)/255,g:(e>>8&255)/255,b:(255&e)/255}},vt.toHex=function(e){return 65536*Math.round(255*e.r)+256*Math.round(255*e.g)+Math.round(255*e.b)},vt.equals=function(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b},vt.equalsFixed=function(e,t){return e.r.toFixed(2)===t.r.toFixed(2)&&e.g.toFixed(2)===t.g.toFixed(2)&&e.b.toFixed(2)===t.b.toFixed(2)},vt.lerp=function(e,t,r){return{r:e.r+(t.r-e.r)*r,g:e.g+(t.g-e.g)*r,b:e.b+(t.b-e.b)*r}},vt.is=function(e){return!!ut(e)&&"r"in e&&"g"in e&&"b"in e&&!("a"in e)},(Dt=wt||(wt={})).white={...bt.white,a:1},Dt.is=function(e){return!!ut(e)&&"r"in e&&"g"in e&&"b"in e&&"a"in e},Dt.transparent={...bt.white,a:0},Dt.from0to1=function(e){return{r:e[0],g:e[1],b:e[2],a:e[3]}},Dt.fromHexAndA=function(e,t){return{...bt.fromHex(e),a:t}},Dt.toRgb255a1=function(e){return{r:Math.round(255*e.r),g:Math.round(255*e.g),b:Math.round(255*e.b),a:e.a}},Dt.equals=function(e,t){return bt.equals(e,t)&&e.a===t.a},Dt.equalsFixed=function(e,t){return bt.equalsFixed(e,t)&&e.a.toFixed(2)===t.a.toFixed(2)},Dt.lerp=function(e,t,r){return{r:e.r+(t.r-e.r)*r,g:e.g+(t.g-e.g)*r,b:e.b+(t.b-e.b)*r,a:e.a+(t.a-e.a)*r}},Dt.toStyle=function({r:e,g:t,b:r,a:a}=Dt.white){return`rgba(${255*e}, ${255*t}, ${255*r}, ${a})`},(St||(St={})).identity={position:[0,0,0],rotation:[0,0,0],scale:[1,1,1],pivot:[0,0,0],pivotRotation:[0,0,0]};var Pt,xt,Mt,Tt,Et,It,_t,kt,Rt,Lt,Bt=((xt=Bt||{})[xt.LINEAR=0]="LINEAR",xt[xt.EASE=1]="EASE",xt[xt.EASE_IN=2]="EASE_IN",xt[xt.EASE_OUT=3]="EASE_OUT",xt[xt.EASE_IN_OUT=4]="EASE_IN_OUT",xt[xt.CUBIC=5]="CUBIC",xt[xt.SPRING=6]="SPRING",xt[xt.ARC=7]="ARC",xt[xt.NONE=8]="NONE",xt);function zt(e){return"string"==typeof e&&36===e.length&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}(Pt||(Pt={})).defaultData={mass:1,stiffness:80,damping:10,velocity:0},(Mt||(Mt={})).defaultData={control1:[.5,0],control2:[.5,1]},(Et=Tt||(Tt={})).linear=[0,0,1,1],Et.ease=[.25,.1,.25,1],Et.easeIn=[.42,0,1,1],Et.easeOut=[0,0,.58,1],Et.easeInOut=[.42,0,.58,1],(e=>{e.all=["PointLight","SpotLight","DirectionalLight","HemisphereLight"],e.is=function(t){return e.all.includes(t)}})(It||(It={})),(_t||(_t={})).defaultData=function(e){return function(e){if("PointLight"===e)return{type:e,color:wt.white,intensity:1,distance:2e3,decay:1,shadows:!0,shadowResolution:1024,shadowRadius:1,penumbraSize:.5,depth:1e5};if("SpotLight"===e)return{type:e,color:wt.white,intensity:1,distance:2e3,decay:1,shadows:!0,penumbra:0,angle:30/180*Math.PI,depth:1e5,penumbraSize:.5,shadowResolution:1024,shadowRadius:1};if("DirectionalLight"===e)return{type:e,color:wt.white,intensity:1,shadows:!0,size:2e3,depth:1e5,penumbraSize:.5,shadowResolution:1024,shadowRadius:1};throw new Error("not implemented")}(e)},(e=>{e.defaultShapeData={type:"PlaneEmitterShape",size:[100,100,100]},e.defaultCollisionData={colliderEntityId:null,collisionBounce:.75},e.defaultData={renderMaterial:{type:"particleMaterial",color:{r:1,g:.2,b:.545,a:1},color2:{r:.945,g:.714,b:.184,a:1},coloring:"gradient",ease:"linearFadeOut",easeSize:"linearFadeOut",transparent:!0,size:[40,40],texture:"pt_default_particle",spriteRotation:[0,0]},birthRatePerSec:50,gravity:1,noiseStrength:0,noiseScale:0,noiseSeed:1,noiseType:"curl",randomRotation:0,randomScale:.2,randomMass:.5,rootObjectType:"instancedMesh",life:1,direction:[0,0,0],directionMode:"axis",speed:10,shape:e.defaultShapeData,autoPlay:!0,emitTimeDelay:0,emitTimeCycle:"infinity",emitTimeDuration:1,...e.defaultCollisionData}})(kt||(kt={})),(e=>{e.defaultData={gravity:10,damping:.03,localStiffness:.67,globalStiffness:.5,globalRange:.15,stiffnessFalloff:.1,windStrength:0,vspCoefficient:.01,elasticity:.15,hairLength:.75,tipSeparation:.8,kink:0,kinkFrequency:0,clumpStrength:0,clumpSize:32,clumpTipScale:1.5,spreadRadius:.03,guideStrands:8192,headShape:"sphere",baseObjectId:null,hairColorSource:"custom",hairShadeRoot:.6,hairShadeTip:1.15,hairRootColor:{r:.29,g:.102,b:.039,a:1},hairMidColor:{r:.8,g:.267,b:.133,a:1},hairTipColor:{r:.545,g:.18,b:.18,a:1},headColor:{r:.325,g:.137,b:.114,a:1},noiseEnabled:!1,noiseColorA:{r:.545,g:.184,b:.788,a:1},noiseColorB:{r:.914,g:.188,b:.914,a:1},noiseColorC:{r:.2,g:.4,b:1,a:1},noiseColorD:{r:.2,g:1,b:.6,a:1},noiseScale:1.8,noiseMixHair:.75,noiseMixHead:.8,castShadow:!0,receiveShadow:!0,hairWidth:1.75,specularPower:40,specularIntensity:.4,diffuseIntensity:.6,ambientIntensity:.25,opacity:1,tipFade:.4,autoPlay:!0},e.regenProps=["hairLength","spreadRadius","guideStrands","headShape","baseObjectId"]})(Rt||(Rt={})),(Lt||(Lt={})).defaultData={enabled:"visibility",fusedBody:!0,rigidBody:"positioned",density:1,pointMass:0,gravityScale:1,friction:.5,damping:0,restitution:.2,colliderType:"convex",enabledRotation:[!0,!0,!0],enabledTranslation:[!0,!0,!0]};var Ut,Vt,Ft,Gt,Ht,Nt,Kt,Wt,qt,Zt=(e=>(e[e.Front=0]="Front",e[e.Back=1]="Back",e[e.Double=2]="Double",e))(Zt||{});(e=>{e.defaultData={castShadow:!0,receiveShadow:!0},e.equals=function(e,t){return e.castShadow===t.castShadow&&e.receiveShadow===t.receiveShadow}})(Ut||(Ut={})),(e=>{e.defaultData={flatShading:!1,wireframe:!1,side:0},e.equals=function(e,t){return e.flatShading===t.flatShading&&e.side===t.side&&e.wireframe===t.wireframe&&(e.shadowCatcher??!1)===(t.shadowCatcher??!1)}})(Vt||(Vt={})),(Ft||(Ft={})).defaultData={...Vt.defaultData,...Ut.defaultData},(Gt||(Gt={})).getMaterialData=function(e,t){let r=[];if("material"in e){let a="string"==typeof e.material?t.materials[e.material]??t.lib.materials[e.material]?.asset:e.material;a&&r.push(a)}else if("materials"in e)for(let a of e.materials){let e="string"==typeof a?t.materials[a]??t.lib.materials[a]?.asset:a;e&&r.push(e)}return r},(e=>{e.defaultVideo={data:"",thumb:"/_assets/_videos/catThumb.png",type:"video",name:"Cat video"},e.maxSize=3e7})(Ht||(Ht={})),(Nt||(Nt={})).is=function(e){return"texture"===e||"video"===e||"color"===e||"depth"===e||"normal"===e||"gradient"===e||"noise"===e||"fresnel"===e||"cavity"===e||"dust"===e||"rainbow"===e||"toon"===e||"outline"===e||"particle"===e||"transmission"===e||"reflection"===e||"matcap"===e||"displace"===e||"pattern"===e||"vertexColor"===e||"light"===e},(Kt||(Kt={})).is=function(e){return"luminance"===e||"r"===e||"g"===e||"b"===e||"a"===e},(Wt||(Wt={})).is=function(e){return"object"==typeof e&&null!==e&&null!=e.image},(qt||(qt={})).is=function(e){return"phong"===e||"toon"===e||"lambert"===e||"physical"===e};var Yt,$t,Xt,Qt,Jt=(e=>(e[e.Linear=0]="Linear",e[e.Radial=1]="Radial",e[e.Polar=2]="Polar",e))(Jt||{}),er=(e=>(e[e.RepeatWrapping=1e3]="RepeatWrapping",e[e.ClampToEdgeWrapping=1001]="ClampToEdgeWrapping",e[e.MirroredRepeatWrapping=1002]="MirroredRepeatWrapping",e))(er||{}),tr=(e=>(e[e.NearestFilter=1003]="NearestFilter",e[e.LinearFilter=1006]="LinearFilter",e[e.LinearMipmapLinearFilter=1008]="LinearMipmapLinearFilter",e))(tr||{}),rr=(e=>(e[e.UV=0]="UV",e[e.Planar=1]="Planar",e[e.Spherical=2]="Spherical",e[e.Cylindrical=3]="Cylindrical",e[e.Triplanar=4]="Triplanar",e))(rr||{}),ar=((Xt=ar||{})[Xt.Simplex=0]="Simplex",Xt[Xt.SimplexFractal=1]="SimplexFractal",Xt[Xt.Ashima=2]="Ashima",Xt[Xt.Fbm=3]="Fbm",Xt[Xt.Perlin=4]="Perlin",Xt[Xt.Voronoi=5]="Voronoi",Xt),ir=(($t=ir||{})[$t.F1=0]="F1",$t[$t.F2=1]="F2",$t[$t.F2MinusF1=2]="F2MinusF1",$t[$t.SmoothBlend=3]="SmoothBlend",$t[$t.Edge=4]="Edge",$t[$t.Power=5]="Power",$t[$t.Lines=6]="Lines",$t[$t.Cells=7]="Cells",$t),nr=(e=>(e[e.Lights=0]="Lights",e[e.Static=1]="Static",e[e.Camera=2]="Camera",e))(nr||{}),or=(e=>(e[e.Circle=0]="Circle",e[e.Ring=1]="Ring",e[e.Polygon=2]="Polygon",e[e.Cross=3]="Cross",e[e.Diamond=4]="Diamond",e[e.Checkerboard=5]="Checkerboard",e[e.Line=6]="Line",e[e.Wave=7]="Wave",e))(or||{}),sr=["mode","gradientType","noiseType","tracingMode","mirror","displacementType","projection","cnormal","crop","axis","side","roughnessMapChannel","metalnessMap","metalnessMapChannel","normalMap","aoMap","aoMapChannel","emissiveMap","style"],lr=["wrapping","image","video","name","minFilter","magFilter"];(e=>{e.patch=function(e,t){let{texture:r,...a}=t;if(Object.assign(e,a),r){let t=e.texture;t&&Object.assign(t,r)}},e.defaultColorLayer=function(t){return{...e.defaultData("color"),color:t}},e.defaultData=function(e,t){return"light"===e&&t?function(e){let t={mode:0,isMask:!1,visible:!0,bumpMap:void 0,bumpMapIntensity:5,roughnessMap:void 0,alphaOverride:1};switch(e){case"phong":return{...t,category:"phong",specular:{r:.2,g:.2,b:.2},shininess:5,type:"light",visible:!0,mode:0,occlusion:!0,alpha:.6};case"toon":return{...t,category:"toon",specular:{r:.2,g:.2,b:.2},shininess:10,type:"light",alpha:1};case"lambert":return{...t,category:"lambert",emissive:{r:0,g:0,b:0},type:"light",alpha:1,visible:!0,mode:0,occlusion:!0};case"physical":return{...t,category:"physical",roughness:.6,metalness:.2,reflectivity:.2,type:"light",alpha:.6,visible:!0,mode:0,occlusion:!0}}}(t):function(e){let t={alpha:1,mode:0,isMask:!1,visible:!0};switch(e){case"texture":return{...t,type:"texture",size:[128,128],blending:0,axis:"x",side:2,projection:0,texture:{image:"image_0",wrapping:1e3,repeat:[1,1],offset:[0,0],rotation:0,minFilter:1008,magFilter:1006},crop:!1};case"video":return{...t,type:"video",size:[128,128],blending:0,axis:"x",side:2,projection:0,texture:{video:Ht.defaultVideo,wrapping:1001,repeat:[1,1],offset:[0,0],rotation:0,minFilter:1008,magFilter:1006},crop:!1};case"color":return{...t,type:"color",color:bt.fromHex(At)};case"vertexColor":return{...t,type:"vertexColor"};case"depth":return{...t,type:"depth",gradientType:1,smooth:!1,isVector:!0,isWorldSpace:!1,origin:[0,0,0],direction:[1,0,0],colors:[[1,1,1,1],[0,0,0,1]],steps:[0,1],near:50,far:200};case"normal":return{...t,type:"normal",cnormal:[1,1,1]};case"gradient":return{...t,type:"gradient",gradientType:0,smooth:!1,colors:[[0,0,0,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1]],steps:[0,1,1,1,1,1,1,1,1,1],num:2,angle:0,offset:[0,0],morph:[0,0]};case"noise":return{...t,type:"noise",size:[100,100,100],noiseType:0,scale:1,move:1,colorA:{...bt.fromHex(6710886),a:1},colorB:{...bt.fromHex(6710886),a:1},colorC:{...bt.fromHex(16777215),a:1},colorD:{...bt.fromHex(16777215),a:1},distortion:[1,1],fA:[1.7,9.2],fB:[8.3,2.8],voronoiStyle:0,highCut:1,lowCut:0,smoothness:.3,seed:0,quality:1};case"cavity":return{...t,type:"cavity",mode:3,ridge:1,valley:1};case"fresnel":return{...t,type:"fresnel",color:wt.fromHexAndA(16777215,1),bias:.1,scale:1,intensity:2,factor:1};case"dust":return{...t,type:"dust",color:wt.fromHexAndA(10323813,1),coverage:.2,softness:.2,noiseStrength:.2,noiseScale:1};case"rainbow":return{...t,type:"rainbow",filmThickness:30,movement:0,wavelengths:[0,0,0],noiseStrength:0,noiseScale:1,offset:[0,0,0]};case"toon":return{...t,type:"toon",positioning:2,colors:[[0,0,0,1],[.5,.5,.5,1],[.5,.5,.5,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1]],steps:[0,.475,.525,1,1,1,1,1,1,1],num:4,source:[0,1e3,0],isWorldSpace:!0,noiseStrength:0,noiseScale:1,shadowColor:wt.fromHexAndA(0,0),offset:[0,0,0]};case"outline":return{...t,type:"outline",outlineColor:wt.fromHexAndA(0,1),contourColor:wt.fromHexAndA(0,1),outlineWidth:2,contourWidth:5,outlineThreshold:.4,contourThreshold:0,outlineSmoothing:0,contourFrequency:10,contourDirection:[0,1,0],positionalLines:!1,compensation:!0};case"matcap":return{...t,type:"matcap",texture:{image:"matcap_0",wrapping:1001,repeat:[1,1],offset:[0,0],rotation:0,minFilter:1008,magFilter:1006}};case"transmission":return{...t,type:"transmission",thickness:10,ior:1.5,roughness:1};case"reflection":return{...t,type:"reflection",blur:0,thickness:.001,steps:60,stepSize:.005,tracingMode:1,mirror:0};case"displace":return{visible:!0,type:"displace",displacementType:"noise",noiseType:0,scale:10,movement:1,offset:[0,0,0],intensity:8,voronoiStyle:0,smoothness:.3,seed:0,highCut:1,lowCut:0,quality:1};case"pattern":return{...t,type:"pattern",style:0,projection:0,axis:"y",blending:0,offset:[0,0],colorA:{...bt.fromHex(0),a:1},colorB:{...bt.fromHex(16777215),a:1},frequency:[10,10],size:.5,variation:0,smoothness:.5,zigzag:0,rotation:0,vertical:[0,1],horizontal:[0,1],sides:6}}}(e)}})(Yt||(Yt={})),(e=>{function t(e,t="layer1",r="layer2",a=bt.fromHex(16777215)){let i=new D;return i.push({fi:0,data:Yt.defaultData("light",e),id:t}),i.push({fi:1,data:Yt.defaultData("color"),id:r}),{layers:i}}e.isMergable=function(e){return!e.layers.some(e=>"texture"===e.data.type&&0!==e.data.projection||"depth"===e.data.type&&!e.data.isWorldSpace||"noise"===e.data.type||"dust"===e.data.type&&0!==e.data.noiseStrength||"displace"===e.data.type)},e.getHash=function(e){let t="";return e.layers.forEach(e=>{Object.entries(e.data).forEach(([e,r])=>{t+=`${e}${r}`,Array.isArray(r)?r.forEach(e=>t+=`${e}`):"object"==typeof r?Object.values(r).forEach(e=>{t+="number"==typeof e?`${e.toFixed(4)}`:`${e}`}):t+=`${r}`})}),t},e.defaultEmptyData=function(){return{layers:new D}},e.defaultData=function(e="layer1",r="layer2"){return t("physical",e,r)},e.withName=function(e,t){return{...e,name:t}},e.defaultTwoLayerData=t,e.defaultColorMaterial=function(e,t,r="layer1",a="layer2"){let i=new D;return i.push({fi:0,data:Yt.defaultData("light",t),id:r}),i.push({fi:1,data:Yt.defaultColorLayer(e),id:a}),{layers:i}},e.defaultUIObjectMaterial=function(e){let t=Yt.defaultData("texture");e&&Object.assign(t.texture,{image:e});let r=new D;return r.push({fi:0,data:t,id:"layer1"}),r.push({fi:1,data:{...Yt.defaultData("transmission"),alpha:1},id:"layer2"}),r.push({fi:2,data:{...Yt.defaultData("light","lambert"),alpha:0},id:"layer3"}),{layers:r}},e.defaultTwoLayerTextureData=function(e,t="physical",r="layer1",a="layer2"){let i=Yt.defaultData("texture");Object.assign(i.texture,{image:e});let n=new D;return n.push({fi:0,data:i,id:r}),n.push({fi:1,data:Yt.defaultData("light",t),id:a}),{layers:n}},e.defaultTwoLayerVideoTextureData=function(e,t="physical",r="layer1",a="layer2"){let i=Yt.defaultData("video");Object.assign(i.texture,{video:e});let n=new D;return n.push({fi:0,data:i,id:r}),n.push({fi:1,data:Yt.defaultData("light",t),id:a}),{layers:n}}})(Qt||(Qt={}));var cr,ur,dr="Roboto_regular",pr="https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Me5WZLCzYlKw.ttf";(cr||(cr={})).defaultData=function(){return{points:new D,roundness:0,shapeHoles:[],isClosed:!1}},(ur||(ur={})).defaultData=function(){return{points:new D,lastInsertionPlane:null,subdivisions:12,isClosed:!1,subdivisionMode:"parametric"}};var fr,hr={type:"Ellipse",width:50,height:50,spikes:16,angle:360,innerRadius:0};(fr||(fr={})).merge=function(e,t){let r={...e};return wr.forEach(a=>{Object.assign(r,{[a]:t[a]??e[a]})}),r};var yr,mr,gr,br,vr={shape:hr,depth:1,offset:0,bevel:50,bevelSides:6,angle:0,twist:0,startScale:1,endScale:1,capType:"flat"},wr=["depth","offset","angle","twist","startScale","endScale"];(e=>{e.is2DParametricMesh=function(e){return"PolygonGeometry"===e||"RectangleGeometry"===e||"StarGeometry"===e||"TriangleGeometry"===e||"EllipseGeometry"===e||"UIGeometry"===e},e.isParametricMesh=function(e){return"PolygonGeometry"===e||"RectangleGeometry"===e||"StarGeometry"===e||"TriangleGeometry"===e||"EllipseGeometry"===e||"PathGeometry"===e||"VectorGeometry"===e||"ConeGeometry"===e||"CubeGeometry"===e||"CylinderGeometry"===e||"DodecahedronGeometry"===e||"HelixGeometry"===e||"IcosahedronGeometry"===e||"LatheGeometry"===e||"PyramidGeometry"===e||"SphereGeometry"===e||"PlaneGeometry"===e||"BackdropGeometry"===e||"TorusGeometry"===e||"TorusKnotGeometry"===e||"BooleanGeometry"===e||"TextGeometry"===e||"InputGeometry"===e||"DecalGeometry"===e},e.isSwappableGeometry=function(e){return"PolygonGeometry"===e||"RectangleGeometry"===e||"StarGeometry"===e||"TriangleGeometry"===e||"EllipseGeometry"===e||"PathGeometry"===e||"VectorGeometry"===e||"ConeGeometry"===e||"CubeGeometry"===e||"CylinderGeometry"===e||"DodecahedronGeometry"===e||"HelixGeometry"===e||"IcosahedronGeometry"===e||"LatheGeometry"===e||"PyramidGeometry"===e||"SphereGeometry"===e||"PlaneGeometry"===e||"BackdropGeometry"===e||"TorusGeometry"===e||"TorusKnotGeometry"===e||"TextGeometry"===e||"SubdivGeometry"===e||"NonParametricGeometry"===e}})(yr||(yr={})),(mr||(mr={})).merge=function(e,t){let r={...e};return Object.assign(r,t),"PathGeometry"===r.type&&"extrusion"in t&&t.extrusion&&(r.extrusion={...e.extrusion},Object.assign(r.extrusion,fr.merge(r.extrusion,t.extrusion))),r},(br=gr||(gr={})).defaultData=function(e){if("RectangleGeometry"===e)return{width:320,height:320,type:e,cornerRadius:[0,0,0,0],cornerType:0,depth:0,extrudeBevelSize:0,extrudeBevelSegments:1};if("UIGeometry"===e)return{type:e,frame:"",cornerRadius:[0,0,0,0],cornerType:0,width:1,height:1};if("PathGeometry"===e)return{type:e,width:1,height:1,depth:1,path:ur.defaultData(),extrusion:vr};if("VectorGeometry"===e)return{width:1,height:1,type:e,subdivisions:12,shape:cr.defaultData(),depth:0,extrudeBevelSize:0,extrudeBevelSegments:1};if("BooleanGeometry"===e)return{type:e,operation:2,width:0,height:0,depth:0,phongAngle:35};if("ShapeBlendGeometry"===e)return{type:e,width:0,height:0,depth:0,resolutionLevel:6,blendRange:100,useChildrenColors:!1};if("DecalGeometry"===e)return{type:e,width:200,height:200,depth:200,offset:1,projection:"all",projectionTargets:[]};if("TextGeometry"===e)return{type:e,width:100,height:100,depth:0,horizontalAlign:1,verticalAlign:1,fontSize:16,lineHeight:1.2,letterSpacing:0,text:{textValue:""},textTransform:1,font:"Roboto_regular",editable:!1,extrudeBevelSize:0,extrudeBevelSegments:1};if("InputGeometry"===e)return{...br.defaultData("TextGeometry"),type:e,editable:!0};if("SphereGeometry"===e)return{type:"SphereGeometry",width:100,height:100,depth:100,widthSegments:64,heightSegments:64,phiStart:0,phiLength:2*Math.PI,thetaStart:0,thetaLength:180};throw new Error("not implemented")};var Dr,Sr,Or=["width","height","depth"];(e=>{e.defaultData=function(e,t=.1){return{disabled:!1,type:"linear",hideBase:!1,instanced:!1,count:3,radial:{radius:2*Math.max("number"==typeof e[0]?e[0]:1,"number"==typeof e[1]?e[1]:1),start:0,end:360,alignment:!1,axis:"y",scale:[1,1,1],rotation:[0,0,0],position:[0,0,0],pivot:[0,0,0],pivotRotation:[0,0,0]},toObject:{object:"",spreadType:"random",scale:[0,0,0],rotation:[0,0,0],position:[0,0,0],axis:"x",seed:0,count:99,align:"normal",pivot:[0,0,0],pivotRotation:[0,0,0]},linear:{scale:[1,1,1],rotation:[0,0,0],position:[("number"==typeof e[0]?e[0]+e[0]:1)*t,0,0],pivot:[0,0,0],pivotRotation:[0,0,0]},grid:{count:[2,2,2],size:e.map(e=>("number"==typeof e?e:1)*(1+t)),useCenter:!0},randomness:!1,randomnessObject:{strength:100,scale:[0,0,0],rotation:[0,0,0],position:[0,0,0],movement:1,seed:0,freqScale:10,noiseType:"perlin"}}},e.merge=function(e,t){let r={...e};if(zr.forEach(a=>{Object.assign(r,{[a]:t[a]??e[a]})}),r.radial={...e.radial},t.radial){let a=e.radial,i=t.radial;Ur.forEach(e=>{Object.assign(r.radial,{[e]:i[e]??a[e]})})}if(r.linear={...e.linear},t.linear){let a=e.linear,i=t.linear;Vr.forEach(e=>{Object.assign(r.linear,{[e]:i[e]??a[e]})})}if(r.grid={...e.grid},t.grid){let a=e.grid,i=t.grid;Fr.forEach(e=>{Object.assign(r.grid,{[e]:i[e]??a[e]})})}if(r.toObject={...e.toObject},t.toObject){let a=e.toObject,i=t.toObject;Gr.forEach(e=>{Object.assign(r.toObject,{[e]:i[e]??a[e]})})}if(r.randomnessObject={...e.randomnessObject},t.randomnessObject){let a=e.randomnessObject,i=t.randomnessObject;Hr.forEach(e=>{Object.assign(r.randomnessObject,{[e]:i[e]??a[e]})})}return r},e.isPartial=function(e){return!(!e.randomnessObject&&!e.toObject)}})(Dr||(Dr={})),(e=>{e.defaultData={radial:{},linear:{},grid:{},toObject:{},randomnessObject:{}};let t=["radial","linear","grid","toObject","randomnessObject"];e.toOps=function(e,r){let a=[];void 0!==e.count&&a.push({type:0,path:r,props:{count:e.count}});for(let i of t){let t=e[i];t&&Object.keys(t).length>0&&a.push({type:0,path:[...r,i],props:t})}return a}})(Sr||(Sr={}));var jr,Ar,Cr,Pr,xr,Mr,Tr,Er,Ir,_r,kr,Rr,Lr,Br,zr=["count"],Ur=["radius","start","end","position","scale","rotation"],Vr=["position","scale","rotation"],Fr=["count","size"],Gr=["count","position","scale","rotation"],Hr=["strength","scale","rotation","position","movement","seed","freqScale"];function Nr(e){let t="string"==typeof e?Number.parseInt(e,10):e;return"number"==typeof t&&Number.isFinite(t)?Math.min(5,Math.max(0,Math.round(t))):3}(e=>{function t(e){return e.mode??"linear"}e.defaultData={enabled:!1,useBackgroundColor:!1,color:bt.white,near:.1,far:2e3,mode:"linear",density:.005,heightFalloff:.01,heightBase:0},e.getMode=t,e.getModeIndex=function(e){let r=t(e);return"height"===r?1:"both"===r?2:0},e.getDensity=function(t){return t.density??e.defaultData.density},e.getHeightFalloff=function(t){return t.heightFalloff??e.defaultData.heightFalloff},e.getHeightBase=function(t){return t.heightBase??e.defaultData.heightBase}})(jr||(jr={})),(Ar||(Ar={})).defaultData={image:null,rotation:0,blur:32,showBackground:!0},(Cr||(Cr={})).defaultData={enabled:!1,mode:"hdri",hdri:Ar.defaultData,timeOfDay:10,weather:"partlyCloudy",lighting:!0,lightingIntensity:1,lightingQuality:"full",clouds:!0,windSpeed:2,animateWind:!0,exposure:1,seed:2},(()=>{let e={opacity:1,blendFunction:13,enabled:!1};(Pr||(Pr={})).defaultData={enabled:!1,pixelation:{...e,blendFunction:16,granularity:15},bloom:{...e,blendFunction:16,intensity:1,blurScale:1,luminanceThreshold:.25,luminanceSmoothing:.025,kernelSize:3},chromaticAberration:{...e,offset:[2,2]},vignette:{...e,darkness:1,offset:0},hueSaturation:{...e,hue:3,saturation:0},brightnessContrast:{...e,brightness:.25,contrast:0},depthOfField:{...e,focusDistance:100,focalLength:20,bokehScale:5},noise:{...e,blendFunction:16}}})(),(e=>{e.defaultData={type:"normal",softShadowQuality:"low"},e.isSoft=function(e){return null!=e&&(void 0===e.type||"soft"===e.type)}})(xr||(xr={})),(Mr||(Mr={})).defaultData={enabled:!0,color:{r:.8274509803921568,g:.8274509803921568,b:.8274509803921568},intensity:.75},(Tr||(Tr={})).defaultData={occlusion:!1,aoFullRes:!1,radius:256,bias:.5,aoColor:{r:.19607843137254902,g:.19607843137254902,b:.19607843137254902}},(e=>{e.defaultData={pipeline:"classic",toneMapping:"aces",exposure:1},e.isUntouched=function(e){return void 0===e||"classic"===e.pipeline&&("none"===e.toneMapping||"aces"===e.toneMapping)&&1===e.exposure}})(Er||(Er={})),(Ir||(Ir={})).defaultData={usePhysics:!1,gravity:-10},(_r||(_r={})).defaultData={playCamera:Ot,gameControlObject:null},(kr||(kr={})).defaultData={backgroundColor:wt.fromHexAndA(2500134,1),postprocessing:Pr.defaultData,fog:jr.defaultData,sky:Cr.defaultData,globalPhysics:Ir.defaultData,ambient:Mr.defaultData,ao:Tr.defaultData,shadow:xr.defaultData,publish:_r.defaultData,grading:Er.defaultData},(Rr||(Rr={})).defaultData={colliderType:"box",size:[100,100,100],colliderHelperVisible:!0,forceType:"collider",forceRange:"global",forceIntensity:.5,forceDambing:.95},(e=>{e.isComponentRelated=function(e){return"Component"===e||"Instance"===e},e.isEmptyOrComponent=function(e){return"Empty"===e||"Instance"===e}})(Lr||(Lr={})),(e=>{e.identity={...St.identity,hiddenMatrix:mt.identity},e.fromObject=function(e){return{position:e.position,rotation:e.rotation,scale:e.scale,pivot:e.pivot,pivotRotation:e.pivotRotation,hiddenMatrix:e.hiddenMatrix}},e.merge=function(e,t){return{position:t?.position||e.position,rotation:t?.rotation||e.rotation,pivot:t?.pivot||e.pivot,pivotRotation:t?.pivotRotation||e.pivotRotation,scale:t?.scale||e.scale,hiddenMatrix:t?.hiddenMatrix||e.hiddenMatrix}},e.diff=function(e,t){return c({position:pt.isEqual(e.position,t.position)?void 0:t.position,rotation:pt.isEqual(e.rotation,t.rotation)?void 0:t.rotation,scale:pt.isEqual(e.scale,t.scale)?null:t.scale,hiddenMatrix:mt.isEqual(e.hiddenMatrix,t.hiddenMatrix)?void 0:t.hiddenMatrix})}})(Br||(Br={}));var Kr,Wr,qr,Zr,Yr,$r,Xr,Qr,Jr,ea,ta,ra,aa,ia,na,oa,sa,la,ca,ua,da,pa,fa,ha,ya,ma,ga,ba,va,wa,Da,Sa,Oa,ja,Aa=["slide","offset"];function Ca(e,t=[0,0]){return[e&&!isNaN(e[0])?e[0]:t[0],e&&!isNaN(e[1])?e[1]:t[1]]}function Pa(e,t,r){switch(e){case 0:return"cubicBezier( 0, 0, 1, 1 )";case 1:return"cubicBezier( .25, .1, .25, 1 )";case 2:return"cubicBezier( .42, 0, 1, 1 )";case 3:return"cubicBezier( 0, 0, .58, 1 )";case 4:return"cubicBezier( .42, 0, .58, 1 )";case 7:return"cubicBezier( .25, 1, .5, 1 )";case 5:{let{control1:e,control2:r}=t??{...Mt.defaultData};return`cubicBezier( ${e[0]}, ${e[1]}, ${r[0]}, ${r[1]} )`}case 6:{let{mass:e,stiffness:t,damping:a,velocity:i}=r??{...Pt.defaultData},n=new Ta(e,t,a,i),o=n.solve(1);return()=>e=>n.solve(e)/o}case 8:return()=>e=>Math.floor(e)}}(Kr||(Kr={})).defaultData={states:new D,events:new D,visible:!0,raycastLock:!1,physics:Lt.defaultData,pathSnapping:{pathId:null,slide:0,offset:0,orientation:"tangential"},...Br.identity,cloner:null},(Wr||(Wr={})).defaultData={type:"Empty",...Kr.defaultData},(qr||(qr={})).defaultData={type:"ParticleCollider",...Rr.defaultData,...Kr.defaultData},(Zr||(Zr={})).defaultData={type:"Component",...Kr.defaultData},(Yr||(Yr={})).defaultData={type:"Particle",...Kr.defaultData,...kt.defaultData},($r||($r={})).defaultData={type:"Hair",...Kr.defaultData,...Rt.defaultData},(Xr||(Xr={})).defaultData={type:"Mesh",...Kr.defaultData,...Ft.defaultData},(Qr||(Qr={})).defaultData={...Kr.defaultData,...Br.identity,position:st.DefaultPosition,rotation:st.DefaultRotation,...st.defaultData},(e=>{e.defaultData=function(e){return{...Kr.defaultData,..._t.defaultData(e)}},e.defaultDirectionalLightData={...e.defaultData("DirectionalLight"),position:[200,300,300],name:"Directional Light",intensity:.7}})(Jr||(Jr={})),(e=>{function t(e,t,r=0){for(;r<t.length;){let a=e?e[t[r]]:void 0;if(t.length===r+1)return a;if(!a)return;e=a.descendants,r+=1}}e.resolveWithDes=t,e.resolve=function(e,r,a=0){let i=t(e,r,a);if(i){let e=Object.keys(i);if(1===e.length&&"descendants"===e[0])return}return i}})(ea||(ea={})),(e=>{function t(e,t){return{...Kr.defaultData,...t,component:e,overrides:new _,physics:void 0,events:void 0,type:"Instance"}}e.rootOverrideProps=["physics","events"],e.compositeNonOptionalOverrideProps=["geometry"],e.compositeEntireOverrideOverrideProps=["material"],e.ofComponent=t,e.fromComponentData=function(e){let r=Br.fromObject(e.data);return t(e.id,r)}})(ta||(ta={})),(e=>{e.defaultData={type:"Page",...Kr.defaultData,physics:{...Lt.defaultData,fusedBody:!1},...kr.defaultData,camera:Qr.defaultData,timelines:new f},e.isUIPage=function(e){return void 0!==e.uiScene}})(ra||(ra={})),(e=>{e.defaultCamera={position:[0,0,1e3],scale:[1,1,1],rotation:[0,0,0],pivot:[0,0,0],pivotRotation:[0,0,0],hiddenMatrix:mt.identity,name:"Play Camera",visible:!0,raycastLock:!1,physics:Lt.defaultData,states:new D,events:new D,cloner:null,pathSnapping:{pathId:null,orientation:"tangential",slide:0,offset:0},...st.defaultData},e.KeysByResetCategory={States:["states"],Events:["events"],Material:["material","materials"],Geometry:["geometry"],Position:["position"],Rotation:["rotation"],Scale:["scale"],Transform:["position","scale","rotation","hiddenMatrix"],Name:["name"],Visibility:["visible","raycastLock","flatShading","wireframe","side","shadowCatcher"],Shadows:["castShadow","receiveShadow"],Cloner:["cloner"],Physics:["physics"]},e.defaultMeshObject={name:"Rectangle",...Kr.defaultData,...Xr.defaultData,geometry:gr.defaultData("RectangleGeometry"),material:Qt.defaultTwoLayerData("physical","layer1","layer2")},e.defaultBooleanObject={name:"Boolean",...Kr.defaultData,...Xr.defaultData,geometry:gr.defaultData("BooleanGeometry"),material:Qt.defaultTwoLayerData("physical","layer1","layer2")},e.defaultShapeBlendObject={name:"Shape Blend",...Kr.defaultData,...Xr.defaultData,geometry:gr.defaultData("ShapeBlendGeometry"),material:Qt.defaultTwoLayerData("physical","layer1","layer2")},e.defaultTextObject={name:"Text",...Kr.defaultData,...Xr.defaultData,geometry:gr.defaultData("TextGeometry"),material:Qt.defaultTwoLayerData("physical","layer1","layer2")},e.defaultInputObject={name:"Input",...Kr.defaultData,...Xr.defaultData,geometry:gr.defaultData("InputGeometry"),material:Qt.defaultTwoLayerData("physical","layer1","layer2")}})(aa||(aa={})),(e=>{e.newEmpty=function(e,t){let r={name:t};return"Mesh"===e.type?(r.geometry={},"material"in e&&(r.material={layers:new _}),"materials"in e&&(r.materials=e.materials.map(e=>({layers:new _})))):nt.is(e.type)&&(r.perspective={},r.orthographic={}),r},e.toOps=function(e,t){let r,a=[],i={orthographic:0,perspective:0,geometry:0};function n(e,t){for(let[r,i]of Object.entries(t.layers)){let{texture:t,...n}=i;if(void 0!==t&&Object.keys(t).length>0){let i={path:[...e,"layers",r,"texture"],props:t,type:0};a.push(i)}if(Object.keys(n).length>0){let t={path:[...e,"layers",r],props:n,type:0};a.push(t)}}}for(let[e,o]of Object.entries(t)){let t=o;if("name"!==e)if("cloner"===e)a.push(...Sr.toOps(t,["cloner"]));else if("pathSnapping"===e)a.push({path:[e],props:{slide:t.slide,offset:t.offset},type:0});else if("material"===e)n(["material"],t);else if("materials"===e)for(let[e,r]of Object.entries(t))n(["materials",e],r);else if(0===i[e]){if("geometry"===e&&void 0!==t.extrusion){let r={path:[e,"extrusion"],props:t.extrusion,type:0};a.push(r),t={...t},delete t.extrusion}if(Object.keys(t).length>0){let r={path:[e],props:t,type:0};a.push(r)}}else void 0===r&&(r={path:[],props:{},type:0},a.push(r)),r.props[e]=t}return a},e.patch=function(e,t){if(void 0===t)return e;let r={...e};if(Object.assign(r,Br.merge(r,t)),Object.assign(r,{pathSnapping:Object.assign({},r.pathSnapping,{slide:t.pathSnapping?.slide??r.pathSnapping?.slide??0,offset:t.pathSnapping?.offset??r.pathSnapping?.offset??0})}),nt.is(e.type)){r.orthographic={...r.orthographic},r.perspective={...r.perspective};let e=t;void 0!==e.orthographic?.zoom&&(r.orthographic.zoom=e.orthographic.zoom),void 0!==e.perspective?.zoom&&(r.perspective.zoom=e.perspective.zoom),void 0!==e.isUpVectorFlipped&&(r.isUpVectorFlipped=e.isUpVectorFlipped),void 0!==e.targetOffset&&(r.targetOffset=e.targetOffset)}else if("Mesh"===e.type)"geometry"in t&&Object.assign(r,{geometry:mr.merge(r.geometry,t.geometry)}),(t.material||t.materials)&&(r=function(e,t){if(void 0===t)return e;let r={...e};return"material"in r&&"material"in t&&t.material&&(r.material=ee(r.material,e=>{if("string"!=typeof e)for(let[r,a]of Object.entries(t.material.layers)){let t=e.layers.data(r);t&&Yt.patch(t,a)}}).data),r.materials&&t.materials&&(r.materials=ee(r.materials,e=>{for(let a=0;a<r.materials.length;a++){let r=t.materials[a];if("string"!=typeof r)for(let[t,i]of Object.entries(r.layers)){let r=e[a]?.layers?.data(t);r&&Yt.patch(r,i)}}}).data),r}(r,t)),r.cloner&&"cloner"in t&&Object.assign(r,{cloner:Dr.merge(r.cloner,t.cloner)});else if("Empty"===e.type)r.cloner&&"cloner"in t&&Object.assign(r,{cloner:Dr.merge(r.cloner,t.cloner)});else if(It.is(e.type)){let e=t;void 0!==e.intensity&&(r.intensity=e.intensity),void 0!==e.color&&("string"==typeof e.color?r.color=e.color:r.color=bt.clone(e.color))}return r}})(ia||(ia={})),(na||(na={})).defaultData={enablePan:!0,enableZoom:!0,enableRotate:!0,enableDamping:!0,rotationLimitsMode:0,rotationVerticalOffset:{min:Math.PI/4,max:Math.PI/4},rotationHorizontalOffset:{min:Math.PI/4,max:Math.PI/4},rotationSoftLimit:2,rotationSpeed:1,panLimitsMode:0,panVerticalOffset:{min:250,max:250},panHorizontalOffset:{min:250,max:250},panSoftLimit:2,zoomLimitsEnabled:!1,zoomLimits:{min:.1,max:2},autoRotate:!1,autoRotateSpeed:2,autoRotateClockwise:!0,hoverRotatePanMode:0,hoverRotatePanStrength:20,hoverRotateDamping:.125,isTouchZoom:!0,orbitTouches:2,panTouches:3,resetHoverEffectOnPointerLeave:!0},(oa||(oa={})).defaultData={orbitControls:na.defaultData,playPage:jt,withBackground:!0,preventScroll:!1,preventTouchScroll:!1,hideCursor:!1,mouseEventTarget:"canvas",joystickSizeAndXYOffset:Array(12).fill(0).map((e,t)=>{let r=0,a=0;return t<5?a=-30:t<10&&(a=30),0===t||10===t||5===t?r=30:(4===t||11===t||9===t)&&(r=-30),[120,[r,a],"show"]}),settings:{image:{format:"jpg",ratio:1,colorSpace:"display-p3"},videoStatic:{fps:60,mbps:150,ratio:1,duration:1e3,format:"mp4",imageFormat:"jpg",activeTimeline:null,colorSpace:"display-p3"},web:{logo:!0,compress:!0,preset:1,preload:!0,hint:!1,imageQuality:70,pixelRatioMobile:0,pixelRatioDesktop:0}},stopRaycast:!0,hdTransmission:!1,renderer:"webgpu",asyncShaderCompilation:!0},(sa||(sa={})).defaultData={id:"basic",label:"Basic",style:"None",prompt:""},(la||(la={})).defaultData={weather:0,shadows:0,lightOrigin:0,temperature:0,sun:0,camera:0,environment:0,particles:0,nature:0,floor:0},(e=>{e.defaultData=()=>({mode:"line-art-both",prompt:"",negativePrompt:"",style:{...sa.defaultData},isRandomSeed:!0,seed:e.generateSeed(),guessMode:!1,advanced:!1,steps:20,guidanceScale:7.5,controlNetScale:1,modifiers:la.defaultData}),e.generateSeed=()=>Math.round(1e5*Math.random())})(ca||(ca={})),(e=>{function t(e,t){let r=e.scene.objects.get(t);if(r&&"Component"===r.data.type)return r;{let r=e.shared.lib.components[t];if(r)return{...r.asset,id:t}}}e.physicsEnabled=function(e){return void 0!==e.find(e=>"Page"===e.data.type&&e.data.globalPhysics.usePhysics)},e.findTimeline=function(e,t){let r=e.find(e=>"Page"===e.data.type&&void 0!==e.data.timelines?.[t]);return r&&r.data.timelines?.[t]},e.getComponentData=t,e.traverseModuleInstances=function(e,r,a){e.scene.objects.traverseFrom(r,(r,i)=>{if("Instance"===i.type){let n=t(e,i.component)?.data;n&&a(r,i,n.events)}else a(r,i,i.events)})}})(ua||(ua={})),(e=>{function t(t=!0,r=[]){let a=[];t&&a.push({...e.defaultLight}),a.push(...r);let i=new v;return i.push({fi:1,id:jt,data:{...ra.defaultData,name:"Scene 1"},children:a}),i}function r(t){return{...e.defaultData,objects:i(t,v.prototype)}}e.TRASH_CAN_ID="830a2708-8ed9-49cf-a68e-085299892222",e.defaultLight={fi:-1,data:Jr.defaultDirectionalLightData,id:"830a2708-8ed9-49cf-a68e-085299899103",children:[]},e.createDefaultObjectTreeWithPage=t,e.defaultData={objects:t(),publish:oa.defaultData,styles:ca.defaultData()},e.emptyDataWithoutPage=function(){return{objects:new v,publish:oa.defaultData,styles:ca.defaultData()}},e.emptyDataWithPage=function(e=!0){return{objects:t(e),publish:oa.defaultData,styles:ca.defaultData()}},e.emptyData=function(){return{objects:new v,publish:{...oa.defaultData},styles:ca.defaultData()}},e.withObjs=r,e.withObj=function(e,t){return r([{id:e,data:t,children:[],fi:0}])}})(da||(da={})),(pa||(pa={})).defaultData={preset:"fullscreen",allowResponsive:!1,size:[512,512],coords:[0,0],sceneScale:1,color:{r:0,g:0,b:0,a:.5}},(e=>{e.defaultData=e=>({url:e,name:"New Webhook",parametersSchemas:new D}),e.defaultParameterValueByType=e=>"number"===e?0:"boolean"!==e&&""})(fa||(fa={})),(ha||(ha={})).defaultData=(e,t="GET")=>({url:e,method:t,name:"New API",headers:new D,queries:new D,autoStart:!0}),(e=>{function t(e){return void 0!==e.textValue}function r(e){return"boolean"==typeof e}e.isTextValue=t,e.isNumber=function(e){return"number"==typeof e},e.isBoolean=r,e.typeOfVariable=function(e){return t(e)?"string":r(e)?"boolean":"number"},e.getDisplayedValue=function(t){return e.isTextValue(t)?Array.isArray(t.textValue)?t.textValue.map(e=>e.toString().padStart(t.padding??2,"0")).join(t.deliminator??":")+(void 0!==t.suffix?" "+t.suffix:""):t.textValue.toString():e.isBoolean(t)?t?"True":"False":e.isNumber(t)?parseFloat(t.toFixed(3)).toString():t.toString()}})(ya||(ya={})),(ma||(ma={})).all=["images","videos","colors","audios","particles","fonts","materials","variables"],(ga||(ga={})).all=[...ma.all,"components"],(ba||(ba={})).defaultData=function(){return{images:new f,videos:new f,colors:new f,audios:new f,particles:new f,fonts:new f,materials:new f,components:new f,variables:new f,userAPIs:new f,userWebhooks:new f}},(va||(va={})).defaultData=function(){return{images:new f,videos:new f,colors:new f,audios:new f,particles:new f,fonts:new f,materials:new f,components:new f,variables:new f,userAPIs:new f,userWebhooks:new f}},(e=>{e.defaultColors=function(){return i({"89b10010-844c-11ec-a8a3-0242ac120002":{r:.5,g:.5,b:.5,a:1,name:"Default Color"}},f.prototype)},e.defaultImages=function(){return i({},f.prototype)},e.emptyData=function(){return{catelogs:new f,materials:new f,images:new f,videos:new f,colors:new f,audios:new f,particles:new f,fonts:new f,variables:new D,userAPIs:new f,userWebhooks:new f,lib:va.defaultData()}},e.defaultVariables=function(e){switch(e){case"number":return{value:0,name:"Number"};case"boolean":return{value:!1,name:"Boolean"};case"string":return{value:{textValue:"String value"},name:"String"};case"time":{let e=[0,0,0];return{name:"Time",value:{textValue:e,deliminator:":",padding:2,suffix:"AM"},dynamicVariableType:"time",format:"HH:mm:ss",format12h24h:"12ampm",timeZone:null,hasEnd:!1,endValue:{textValue:e,deliminator:":",padding:2,suffix:"AM"},autoStart:!0,repeat:!1}}case"counter":return{name:"Counter",value:0,dynamicVariableType:"counter",updateInterval:1e3,increment:1,autoStart:!0,hasEnd:!0,endValue:60,repeat:!0,randomStart:!1,range:[0,100],decimals:0};case"random":return{name:"Random",value:0,dynamicVariableType:"random",updateInterval:1e3,increment:1,autoStart:!0,isStatic:!1,hasEnd:!0,endValue:60,repeat:!0,min:0,max:100,decimals:0};default:console.error("Unknown variable type",e)}},e.getFormattedTimerTime=function(e,t){if("HH:mm:ss"===t.format){let t=Math.floor(e/3600),r=Math.floor((e-3600*t)/60);return{textValue:[t,r,Math.round(e-3600*t-60*r)]}}if("mm:ss"===t.format){let t=Math.floor(e/60);return{textValue:[t,Math.round(e-60*t)]}}return"number"===t.format?Math.round(e):Math.round(1e3*e)/1e3}})(wa||(wa={})),(e=>{e.defaultData={schema:131,scene:da.defaultData,frames:(new f).add("72fc2993-2da3-4b6b-96ac-2879db3a28bd",pa.defaultData),shared:{...wa.emptyData(),colors:wa.defaultColors()}},e.createDefaultData=function(){return ct.deserialize(ct.serialize(e.defaultData))},e.emptyDataForImports=function(){return{schema:131,scene:da.emptyDataWithPage(),frames:(new f).add("72fc2993-2da3-4b6b-96ac-2879db3a28bd",pa.defaultData),shared:{...wa.emptyData(),colors:wa.defaultColors(),images:wa.defaultImages()}}},e.emptyData=function(){return{schema:131,scene:da.emptyDataWithPage(),frames:(new f).add("72fc2993-2da3-4b6b-96ac-2879db3a28bd",pa.defaultData),shared:wa.emptyData()}},e.clipboard2dData=function(){return{schema:131,scene:da.emptyData(),frames:new f,shared:wa.emptyData()}},e.withoutLib=function(e){return{...e,shared:{...e.shared,lib:va.defaultData()}}},e.getComponentData=function(e,t){return ua.getComponentData(e,t)},e.hasSensitiveData=function(e){let t=Object.values(e.shared.userAPIs);for(let e of t){let t=e.headers;for(let e of t)if("authorization"===e.data.key.toLowerCase()&&""!==e.data.value)return!0}return!1}})(Da||(Da={})),(Sa||(Sa={})).defaultData=function(e,t){return{id:e,name:t,duration:5,objectTimelines:new f}},(Oa||(Oa={})).is=function(e){return e&&"number"==typeof e.x&&"number"==typeof e.y&&"number"==typeof e.z},(e=>{function t(e,t){let r=[0,0],a=[1,1];if(e?.cubicControls)r=Ca(e.cubicControls.control1,r);else switch(e?.type){case 2:case 4:r=[.42,0];break;case 3:case 0:r=[0,0];break;case 1:r=[.25,.1];break;case 7:r=[.25,1]}if(t?.cubicControls)a=Ca(t.cubicControls.control2,a);else switch(t?.type){case 2:case 0:a=[1,1];break;case 3:case 4:a=[.58,1];break;case 1:a=[.25,1];break;case 7:a=[.5,1]}return{control1:r,control2:a}}function r(r){if(!e.BEZIER_PRESETS.includes(r))return;let a={type:r};return{control1:t(a).control1,control2:t(void 0,a).control2}}function a(e,t){return Math.abs(e[0]-t[0])<.001&&Math.abs(e[1]-t[1])<.001}function i(t){let r=e.ROOT_PROPERTY_ORDER.indexOf(t[0]);return-1===r?e.ROOT_PROPERTY_ORDER.length:r}function n(e){return e.layerId??e.path.join(".")}function o(e){let t=e[e.length-1];return Ma.includes(t)?t:void 0}function s(e){return e.layerId?e.layerId:(o(e.path)?e.path.slice(0,-1):e.path).join(".")}function l(e){return["material","light"===e.type?`${e.category} lighting`:e.type]}function c(e,t,r){return{id:e,data:{id:e,time:r?.time??0,path:t,value:{},layerId:r?.layerId,index:r?.index,isPlaceholder:!0,easing:{type:5,cubicControls:{control1:[.42,0],control2:[.58,1]}}}}}e.getControlsWithDefault=t,e.BEZIER_PRESETS=[0,1,2,3,4,7],e.presetHandles=r,e.presetForHandles=function(t){return e.BEZIER_PRESETS.find(e=>{let i=r(e);return void 0!==i&&a(i.control1,t.control1)&&a(i.control2,t.control2)})},e.defaultData=function(e){return{id:e,keyframes:new D}},e.ROOT_PROPERTY_ORDER=["position","rotation","scale","shape size","material","opacity","camera","light","cloner","path extrusion","path snapping"],e.rowOrder=i,e.propertyKey=n,e.groupKeyframes=function(e,t){let r=new Map;for(let a of e){let e=a.data;if(t?.(e))continue;let i=n(e),o=r.get(i);o||(o={id:i,path:e.path,keyframes:[],layerId:e.layerId,index:e.index},r.set(i,o)),e.isPlaceholder?o.placeholder=a.id:o.keyframes.push(a)}return[...r.values()].sort((e,t)=>{let r=i(e.path)-i(t.path);return 0!==r?r:(e.index??0)-(t.index??0)})},e.rowAxis=o,e.drawnRowKey=s,e.drawnRows=function(e){let t=new Map;for(let r of e){let e=o(r.path),a=e?r.path.slice(0,-1):r.path,i=s(r),n=t.get(i);n||(n={id:i,path:a,layerId:r.layerId,index:r.index,tracks:[]},t.set(i,n)),n.tracks.push({axis:e,property:r})}return[...t.values()]},e.sortedKeyframes=function(e){return[...e].sort((e,t)=>e.data.time-t.data.time)},e.materialLayerPath=l,e.createMaterialGroup=function(e,t){return e.map(({data:e,id:r},a)=>c(t(),l(e),{layerId:r,index:a}))},e.placeholderKeyframe=c,e.createName=function(e){return Object.entries(e).reduce((e,[t,r])=>("string"!=typeof r&&e.push({name:r.name}),e),[])},e.Presets=[{name:"Slide in",animationParams:{translateX:{value:[-20,0],easing:Pa(3),duration:1e3},opacity:{value:[0,1],easing:Pa(3),duration:1e3},endDelay:250,loop:!0}},{name:"Rotate",animationParams:{rotate:{value:[0,"1turn"],easing:Pa(5),duration:700},endDelay:250,loop:!0}},{name:"Scale Out",animationParams:{scale:{value:[1,1.5],easing:Pa(4),duration:1e3},endDelay:250,loop:!0}},{name:"Jump",animationParams:{translateY:[{value:0,duration:200,easing:"linear"},{value:-20,easing:"linear",duration:200},{value:0,easing:"linear",duration:100}],endDelay:500,loop:!0}},{name:"Jump Rotate",animationParams:{translateY:[{value:0,duration:200,easing:"linear"},{value:-20,easing:"linear",duration:200},{value:0,easing:"linear",duration:100}],rotate:{value:[0,"1turn"],easing:Pa(5),duration:500},endDelay:500,loop:!0}},{name:"Bounce",animationParams:{translateY:{value:["20px","-20px"],duration:575,easing:"easeOutQuad"},direction:"alternate",loop:!0}}]})(ja||(ja={}));var xa,Ma=["x","y","z"],Ta=class{constructor(e=1,t=100,r=10,a=0){this.mass=e,this.stiffness=t,this.damping=r,this.initialVelocity=a,this.m_w0=Math.sqrt(t/e),this.m_zeta=r/(2*Math.sqrt(t*e)),this.m_zeta<1?(this.m_wd=this.m_w0*Math.sqrt(1-this.m_zeta*this.m_zeta),this.m_A=1,this.m_B=(this.m_zeta*this.m_w0-a)/this.m_wd):(this.m_wd=0,this.m_A=1,this.m_B=-a+this.m_w0)}solve(e){return 1-(this.m_zeta<1?Math.exp(-e*this.m_zeta*this.m_w0)*(this.m_A*Math.cos(this.m_wd*e)+this.m_B*Math.sin(this.m_wd*e)):(this.m_A+this.m_B*e)*Math.exp(-e*this.m_w0))}getDuration(){let e=.16666666666666666,t=0,r=0;for(;;)if(t+=e,1===this.solve(t)){if(r++,r>=16)break}else r=0;return t*e*1e3}};function Ea(e){return"MouseDown"===e||"MouseUp"===e||"KeyDown"===e||"KeyUp"===e||"Collision"===e||"Trigger"===e}(e=>{e.toEventUIType=function(e){return"Conditional"===e.type?"Distance"===e.condition.type?"Distance":"StateChange":e.type},e.fromEventUIType=function(e){return"Distance"===e||"StateChange"===e?"Conditional":e}})(xa||(xa={}));var Ia,_a,ka,Ra,La,Ba,za,Ua,Va,Fa,Ga,Ha,Na,Ka,Wa,qa,Za,Ya,$a,Xa,Qa,Ja={LookAt:[],Follow:["Create"],DragDrop:["Transition","Animation","Audio","Particles","Create","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],MouseHover:["Transition","Animation","TimelineAnimation","Particles","Create","Destroy","SwitchCamera","SceneTransition","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],Scroll:["Transition","Animation","TimelineAnimation","Create","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],Start:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],Conditional:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],MouseDown:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],MouseUp:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],MousePress:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],KeyDown:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],KeyUp:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],KeyPress:["Transition","Animation","Audio","Particles","Video","Link","Create","SwitchCamera","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],GameControl:["Transition","Animation","TimelineAnimation","Audio","Particles","Create","Conditional"],Collision:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Create","Destroy","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],Trigger:["Transition","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],Resize:["Transition","Animation","Audio","Particles","Video","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],VariableChange:["Transition","Animation","TimelineAnimation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],API:["Transition","Animation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],WEBHOOK:["Transition","Animation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"],AIAssistantListener:["SetVariable"],AIAssistantTrigger:["Transition","Animation","Audio","Particles","Video","Link","Create","Destroy","SwitchCamera","SceneTransition","Reset","SetVariable","DynamicVariablePlay","Conditional","ClearLocalStorage","UserAPI"]};function ei(e,...t){let r={};for(let a of t.flat())null!=e&&a in e&&(r[a]=e[a]);return r}function ti(e){e.layers.forEach(e=>{if("depth"===e.type&&void 0!==e.colorA){let t=e.colorA,r=e.colorB,a=[[t.r,t.g,t.b,t.a],[r.r,r.g,r.b,r.a]],i=[0,1];for(let e=2;e<10;e++)a.push(a[1]),i.push(1);let n={...ei(te(e),"type","visible","isVector","isWorldSpace","origin","alpha","mode"),near:Math.max(0,e.near),far:Math.max(0,e.far),colors:a,steps:i,num:2,direction:[1,0,0],smooth:!1,gradientType:1};Object.assign(e,n)}else if("depth"===e.type&&1===e.gradientType&&(e.near<0||e.far<0)){let t={...te(e),near:Math.max(e.near,0),far:Math.max(e.far,0)};Object.assign(e,t)}})}function ri(e,t){Object.values(e.shared.materials).forEach(e=>t(e))}function ai(e,t){e.scene.objects.traverse((e,r)=>{"materials"in r?r.materials.forEach((e,a)=>{void 0===e&&(r.materials[a]=Qt.defaultTwoLayerData("phong"),e=r.materials[a]),"string"!=typeof e&&t(e)}):"material"in r?"string"!=typeof r.material&&(void 0===r.material&&(r.material=Qt.defaultTwoLayerData("phong")),t(r.material)):"Mesh"===r.type&&(void 0===r.material&&(r.material=Qt.defaultTwoLayerData("phong")),t(r.material)),"overrides"in r&&Object.values(r.overrides).forEach(e=>{e.material&&"string"!=typeof e.material&&Object.getPrototypeOf(e.material)!==_.prototype&&t(e.material)})})}function ii(e){void 0===e.layers&&Object.assign(e,Qt.defaultTwoLayerData("lambert"))}function ni(e){!e.layers||e.layers.forEach(e=>{if("depth"===e.type&&10===e.colors.length){let t=[...e.colors];t.push(e.colors[9]);let r=[...e.steps];r.push(e.steps[9]);let a={...te(e),colors:t,steps:r};Object.assign(e,a)}})}function oi(e){e.scene.objects.traverse((e,t)=>{"materials"in t?t.materials.forEach(e=>{"string"!=typeof e&&ni(e)}):"material"in t&&"string"!=typeof t.material&&ni(t.material)}),Object.values(e.shared.materials).forEach(e=>ni(e))}function si(e){e.layers&&e.layers.forEach(e=>{"depth"===e.type&&void 0!==e.num&&(e.colors=e.colors.slice(0,e.num),e.steps=e.steps.slice(0,e.num),delete e.num)})}function li(e){e.layers&&e.layers.forEach(e=>{(function(e){return"displace"!==e.type})(e)&&void 0===e.isMask&&(e.isMask=!1),("texture"===e.type||"video"===e.type)&&void 0===e.blending&&(e.blending=0),("noise"===e.type||"displace"===e.type&&"noise"===e.displacementType)&&(void 0===e.voronoiStyle&&(e.voronoiStyle=0),void 0===e.highCut&&(e.highCut=1),void 0===e.lowCut&&(e.lowCut=0),void 0===e.smoothness&&(e.smoothness=.3),void 0===e.seed&&(e.seed=0),void 0===e.quality&&(e.quality=1))})}function ci(e){let t=e.layers.find(e=>"light"===e.type)?.data;if("basic"===t?.category){let e=Yt.defaultData("light","phong"),r=t;Object.assign(r,e),r.visible=!1}}function ui(e){ri(e,ci),ai(e,ci)}function di(e){e.layers.forEach(e=>{"light"===e.type&&"toon"!==e.category&&void 0===e.occlusion&&(e.occlusion=!0)})}function pi(e){e.layers&&e.layers.forEach(e=>{"light"===e.type&&void 0===e.bumpMapIntensity&&(e.bumpMapIntensity=5)})}function fi(e){e.layers&&e.layers.forEach(e=>{"light"===e.type&&void 0===e.alphaOverride&&(e.alphaOverride=1)})}(e=>{e.is=function(e){return"MouseDown"===e.type||"MouseUp"===e.type||"MousePress"===e.type||"KeyDown"===e.type||"KeyUp"===e.type||"KeyPress"===e.type},e.defaultData=function(e){return"MouseDown"===e||"MouseUp"===e||"MousePress"===e?{type:e,mode:"Object",disabled:!1,name:"",actions:new D}:{type:e,disabled:!1,name:"",key:void 0,actions:new D}}})(Ia||(Ia={})),(e=>{e.propertyDefaultData=function(e){return{type:"Property",value:[e??null,"position","x"]}},e.valueDefaultData={type:"Literal",value:0}})(_a||(_a={})),(e=>{e.comparisonDefaultData=function(e){return{type:"Comparison",operator:"==",lOperand:_a.propertyDefaultData(e),rOperand:{..._a.valueDefaultData}}},e.distanceDefaultData=function(e){return{type:"Distance",toObject:e??null,fromObject:e??null,distance:200}},e.stateDefaultData=function(e,t){return{type:"State",object:e??null,state:t??null}}})(ka||(ka={})),(Ra||(Ra={})).isConditionalSubActions=function(e){return void 0!==e.find(e=>"ifActions"===e||"elseActions"===e)},(e=>{e.is=function(e){return"Conditional"===e.type},e.defaultData=function(e){return{type:"Conditional",disabled:!1,name:"",inActions:new D,outActions:new D,condition:ka.distanceDefaultData(e)}}})(La||(La={})),(Ba||(Ba={})).defaultData={type:"DragDrop",name:"",cursor:"hand",disabled:!1,dampingFactor:1,objects:[],snapTo:"center",snapSurfaceMode:"bbox",snapSurfaceOffset:0,dropOn:"all",autoOrient:!0,dropDestinations:[],plane:"adaptive",planeMode:"locked",referenceFrame:"global",limits:[-1/0,1/0,-1/0,1/0,-1/0,1/0],drop:!1,resetOnSnapFail:!1,snapSpeed:20,resetSpeed:20,dragDropActions:{drag:new D,drop:new D}},(za||(za={})).defaultData={type:"Follow",disabled:!1,name:"",maxDelta:0,dampingFactor:1,target:"cursor",plane:"custom",resetOnPointerLeave:!0,resetAfterDistanceLimit:!0,enabledTranslation:[!0,!0,!0],limitDistanceEnabled:!1,limitDistance:1e3,snapDelay:0,resetSpeed:5,actions:new D},(Ua||(Ua={})).defaultData={type:"LookAt",disabled:!1,name:"",distance:1e3,dampingFactor:1,target:"cursor",tilt:"up",axis:"z",plane:"custom",resetOnPointerLeave:!0,resetAfterDistanceLimit:!0,enabledRotation:[!0,!0,!0],limitDistanceEnabled:!1,limitDistance:1e3,snapDelay:0,resetSpeed:5},(e=>{e.is=function(e){return"MouseHover"===e.type},e.defaultData=function(){return{type:"MouseHover",disabled:!1,name:"",actions:new D}}})(Va||(Va={})),(e=>{e.is=function(e){return"Scroll"===e.type},e.defaultData=function(){return{type:"Scroll",disabled:!1,name:"",steps:100,trigger:"load",startFrom:"enter",enterAnchor:"top",startOffset:0,endAfter:400,actions:new D}}})(Fa||(Fa={})),(e=>{e.is=function(e){return"Start"===e.type},e.defaultData=function(){return{type:"Start",disabled:!1,name:"",actions:new D}}})(Ga||(Ga={})),(e=>{e.is=function(e){return"Collision"===e.type},e.defaultData=function(){return{type:"Collision",disabled:!1,name:"",target:"character",actions:new D}}})(Ha||(Ha={})),(e=>{e.is=function(e){return"Trigger"===e.type},e.defaultData=function(e,t){return{type:"Trigger",name:"",disabled:!1,target:"all",triggeringObjects:[],actions:new D,triggerZone:"box",position:t.toArray(),rotation:[0,0,0],size:e.toArray(),radius:e.length()/2,helperVisible:!0}}})(Na||(Na={})),(t=>{t.defaultSizes={mobile:[480,480],tablet:[768,768],desktop:[1200,1200],custom:[769,1200]},t.is=function(e){return"Resize"===e.type},t.sizeToDevice=function(e){return"string"==typeof e?e:"custom"},t.deviceToSize=function(e){return"string"==typeof e?[...t.defaultSizes[e]]:[...e]},t.defaultData=function(){let r={size:"mobile",operator:"<",actions:new D},a={size:"tablet",operator:"<",actions:new D},i={size:[...t.defaultSizes.custom],operator:"<>",actions:new D},n=new D;return n.push({id:e.generateUUID(),fi:0,data:r},{id:e.generateUUID(),fi:1,data:a},{id:e.generateUUID(),fi:2,data:i}),{type:"Resize",disabled:!1,name:"",orientation:"horizontal",breakpoints:n}},t.defaultBreakpointData=function(){return{size:[...t.defaultSizes.custom],operator:"<>",actions:new D}}})(Ka||(Ka={})),(e=>{e.propertyPaths={Position:["position"],"Position X":["position","x"],"Position Y":["position","y"],"Position Z":["position","z"],Rotation:["rotation"],"Rotation X":["rotation","x"],"Rotation Y":["rotation","y"],"Rotation Z":["rotation","z"],Scale:["scale"],"Scale X":["scale","x"],"Scale Y":["scale","y"],"Scale Z":["scale","z"],Width:["width"],Height:["height"],Depth:["depth"],"Mouse Position X":["mouse","x"],"Mouse Position Y":["mouse","y"],"Mouse Pressed":["mouse","pressed"],"Screen Width":["mouse","width"],"Screen Height":["mouse","height"],"Hit Position X":["raycast","x"],"Hit Position Y":["raycast","y"],"Hit Position Z":["raycast","z"],"Hit Object Position X":["raycast","objX"],"Hit Object Position Y":["raycast","objY"],"Hit Object Position Z":["raycast","objZ"]},e.is=function(e){return"VariableChange"===e.type},e.defaultData=function(){return{disabled:!1,type:"VariableChange",name:"",actions:new D,variableId:"",objectId:null,property:"Position X"}}})(Wa||(Wa={})),(e=>{e.is=function(e){return"API"===e.type},e.defaultData=function(){return{disabled:!1,type:"API",name:"",successActions:new D,errorActions:new D,userAPIId:""}}})(qa||(qa={})),(e=>{e.is=function(e){return"WEBHOOK"===e.type},e.defaultData=function(){return{disabled:!1,type:"WEBHOOK",name:"",actions:new D,userWebhookId:""}}})(Za||(Za={})),(e=>{e.is=function(e){return"AIAssistantListener"===e.type},e.defaultData=function(){return{disabled:!1,type:"AIAssistantListener",name:"",actions:new D,analysis:"average",analysisRange:[0,71],analysisSingle:0}}})(Ya||(Ya={})),(e=>{e.is=function(e){return"AIAssistantTrigger"===e.type},e.defaultData=function(){return{disabled:!1,description:"",name:"",type:"AIAssistantTrigger",actions:new D}}})($a||($a={})),(Xa||(Xa={})).list=["idle","move","jump","run"],(e=>{e.defaultColliderData={type:"capsule",height:200,radius:50,position:[0,0,0],rotation:[0,0,0]},e.defaultDataThirdPerson={moveMode:"walk",forwardDirection:"+z",speedTranslate:1e3,speedRotate:100,runMultiplier:2,rotationMode:"normal",rotBy:"keys",rotByTouch:"drag",delayPos:[.3,.3],delayRot:[.3,.3],keyAssignments:[["moveNegZ","W"],["moveNegX","A"],["movePosZ","S"],["movePosX","D"],["rotPosX","▲"],["rotPosY","◀"],["rotNegX","▼"],["rotNegY","▶"],["jump","Space"],["run","⇧"],["none","Ctrl"]],touchControl:!0,joystickPosLoc:5,joystickRotLoc:11,jumpTouchButtonLoc:9,collider:e.defaultColliderData,colliderHelperVisible:!0,collisionEnabled:!0,jumpPower:100,resetYPosition:3e3,alignToGround:!1,autoOrientMove:!0,orientWith:"camera",orientMode:"radial",delayPosCamera:.3,delayRotCamera:.3,camera:"",cameraXAxis:"Limit",cameraYAxis:"Free",cameraRotXLimits:[0,Math.PI/2],cameraRotYLimits:[-Math.PI/2,Math.PI/2],gameActions:{idle:new D,move:new D,jump:new D,run:new D},navmesh:{enabled:!1,ch:6,cs:6,walkableClimb:5,walkableHeight:1,walkableRadius:0,zones:"all",objects:[],helperVisible:!0,destinationHelperRadius:0,destinationHelperColor:wt.fromHexAndA(3728051,1)}}})(Qa||(Qa={}));var hi=180/Math.PI;function yi(e){e.rotation=e.rotation.slice(0,3).map(e=>e*hi)}function mi(e){yi(e),"Page"===e.type&&yi(e.camera),e.states?.forEach(e=>{void 0===e.rotation||null===e.rotation||(e.rotation=e.rotation.slice(0,3).map(e=>e*hi))});let t=e.geometry;t&&"SphereGeometry"===t.type&&(t.thetaLength=(t.thetaLength??180)*hi),t&&"TorusGeometry"===t.type&&(t.arc=t.arc*hi),t&&"PathGeometry"===t.type&&(t.extrusion.angle*=hi,t.extrusion.twist*=hi),"Mesh"===e.type&&"TextGeometry"===e.geometry.type&&(e.geometry.text={textValue:e.geometry.text}),Array.isArray(te(e.events))&&e.events?.forEach(e=>{("MouseDown"===e.type||"MouseUp"===e.type||"MousePress"===e.type||"KeyDown"===e.type||"KeyUp"===e.type||"KeyPress"===e.type||"Collision"===e.type||"Trigger"===e.type)&&(e.runMode=e.toggle?"Toggle":"Repeat")})}function gi(e){e.scene.objects.traverse((e,t)=>{})}function bi(e){let t=e.schema??104;131!==t&&t<130&&(Si(e.asset),e.schema=130)}function vi(e,t){t(e.data);for(let r of e.children)vi(r,t)}function wi(e){let t=e.schema??104;131!==t&&(t<105&&(vi(e.asset,mi),e.schema=105),t<118&&(vi(e.asset,ji),e.schema=118),t<121&&(vi(e.asset,_i),e.schema=121),t<130&&(vi(e.asset,Oi),e.schema=130))}function Di(e,t){ai(e,t),ri(e,t),Object.values(e.shared.lib.materials).forEach(e=>t(e.asset))}function Si(e){void 0===e.layers&&Object.assign(e,Qt.defaultTwoLayerData("phong"))}function Oi(e){"materials"in e?e.materials.forEach(e=>{void 0!==e&&"string"!=typeof e&&Si(e)}):"material"in e&&void 0!==e.material&&"string"!=typeof e.material&&Si(e.material)}function ji(e){e.timelineAnimations=i({},f.prototype)}function Ai(e){let t=[];return e?(e.forEach((e,r)=>{let{path:a,keyframes:i}=e.data,n="material"===a[0]?e.id:void 0;i?.length?i.forEach(({id:e,data:i})=>{t.push({id:e,data:{...i,path:a,layerId:n,index:r}})}):t.push(ja.placeholderKeyframe(e.id,a,{layerId:n,index:r}))}),t.sort((e,t)=>e.data.time-t.data.time),new D(...t.map((e,t)=>({...e,fi:t})))):new D}var Ci=["position","rotation","scale","shape size"];function Pi(t){for(let{id:r,data:a}of[...t.unproxy()]){let i=a.path?.[0];if(!i||!Ci.includes(i))continue;let n=xi(a.value);if(!n.length)continue;let o=t.data(r);if(!o)continue;let s=a.value,[l,...c]=n;for(let r of c){let n=e.generateUUID();t.insertBefore(null,[{id:n,data:{...a,id:n,path:[i,r],value:s[r],easing:Mi(a.easing)}}])}o.path=[i,l],o.value=s[l]}}function xi(e){return null===e||"object"!=typeof e?[]:Ma.filter(t=>t in e)}function Mi(e){let t=e?.cubicControls;return{...e,cubicControls:{control1:[...t?.control1??[0,0]],control2:[...t?.control2??[1,1]]},...e?.springParameters?{springParameters:{...e.springParameters}}:{}}}function Ti(e,t){return Math.abs(e[0]-t[0])<1e-6&&Math.abs(e[1]-t[1])<1e-6}function Ei(e){let t=function(e){let t=[];for(let r of ja.groupKeyframes(e)){let e=new Set(r.keyframes.flatMap(e=>xi(e.data.value))),a=e.size?[...e].map(e=>r.keyframes.filter(t=>xi(t.data.value).includes(e))):[r.keyframes];for(let e of a){let r=[...e].sort((e,t)=>e.data.time-t.data.time);for(let e=0;e+1<r.length;e++)t.push({left:r[e],right:r[e+1]})}}return t}([...e.unproxy()]),r=new Map,a=new Set;for(let{left:e,right:i}of t){let t=e.data.easing?.type,n=(void 0===t?void 0:ja.presetHandles(t))?.control2??(5===t?Ca(i.data.easing?.cubicControls?.control2,[1,1]):void 0);if(!n)continue;let o=r.get(i.id);o?Ti(o,n)||a.add(i.id):r.set(i.id,n)}let i=new Map;for(let{id:t,data:r}of e.unproxy()){let e=r.easing?.type,a=void 0===e?void 0:ja.presetHandles(e);a&&i.set(t,a.control1)}for(let{left:e,right:r}of t)a.has(r.id)&&i.delete(e.id);for(let[t,r]of i){let a=e.data(t);!a?.easing||(a.easing.cubicControls={control1:r,control2:Ca(a.easing.cubicControls?.control2,[1,1])},a.easing.type=5)}for(let{left:a,right:n}of t){if(!i.has(a.id))continue;let t=e.data(n.id),o=r.get(n.id);!t?.easing||!o||(t.easing.cubicControls={control1:Ca(t.easing.cubicControls?.control1,[0,0]),control2:o})}}function Ii(e,t){e.scene.objects.traverse((e,r)=>{let a=r;if("Page"===a.type&&a.timelines)for(let e of Object.values(a.timelines))for(let r of Object.values(e.objectTimelines??{}))t(r.keyframes)})}function _i(e){e.pivot=[0,0,0],e.pivotRotation=[0,0,0]}function ki(e){}function Ri(t){let r=t.schema??0;if(131!==r){if(r>131)return void console.error(`This scene was created with a newer version of Spline (file format ${r}, this runtime reads 131). Update @splinetool/runtime to the latest version to load it correctly.`);console.warn("updating from ",r,"to ",131),function(t,r){if(r<1&&(ai(t,ti),ri(t,ti),t.schema=1),r<2&&(function(e){Object.assign(e.scene.publish,{orbitControls:{...na.defaultData,...te(e.scene.publish.orbitControls)}})}(t),t.schema=2),r<3&&(function(e){function t(e){if(e.layers)for(let t of Object.values(e.layers))if(t)for(let[e,r]of Object.entries(t))if((sr.includes(e)||"boolean"==typeof r)&&delete t[e],"texture"===e)for(let[e,t]of Object.entries(r))(lr.includes(e)||"boolean"==typeof t)&&delete r[e]}e.scene.objects.traverse((e,r)=>{r.states.forEach(e=>{let r=e;r.material?t(r.material):r.materials&&r.materials.forEach(e=>{t(e)})})})}(t),t.schema=3),r<4&&(function(e){e.scene.publish.withBackground=!0}(t),t.schema=4),r<5&&(function(e){e.scene.publish.settings.web={compress:!0,preload:!0,preset:1,logo:!0,hint:!1}}(t),t.schema=5),r<6&&(function(e){e.scene.objects.traverse((e,t)=>{let r=t.cloner;r&&(r.radial.scale=r.radial.scale.map(e=>e+1),r.linear.scale=r.linear.scale.map(e=>e+1))})}(t),t.schema=6),r<7&&(function(e){e.scene.objects.traverse((e,t)=>{let r=t.geometry;r&&("DodecahedronGeometry"===r.type||"IcosahedronGeometry"===r.type)&&(r.detail=Math.round(r.detail))})}(t),t.schema=7),r<8&&(t.schema=8),r<9&&(oi(t),t.schema=9),r<10&&(function(e){e.scene.objects.traverse((e,t)=>{"Mesh"===t.type&&("BooleanGeometry"===t.geometry.type||"SubdivGeometry"===t.geometry.type)&&(t.geometry.phongAngle=35)})}(t),t.schema=10),r<11&&(function(e){e.scene.environment.ambientLight.softShadows=!1,e.scene.environment.ambientLight.softShadowQuality="low",e.scene.objects.traverse((e,t)=>{("DirectionalLight"===t.type||"SpotLight"===t.type)&&(t.shadowResolution=1024,t.shadowRadius=1,t.depth=1e5)}),e.shared.penumbraSize=new Array(5).fill(.5)}(t),t.schema=11),r<12&&(oi(t),t.schema=12),r<13&&(function(e){e.shared.audios=i({},f.prototype)}(t),t.schema=13),r<14&&(function(e){let t=e.shared.materials;Object.entries(t).forEach(([e,r])=>{if(!r.layers){let r={name:"Untitled Material",layers:[{fi:0,data:{type:"light",category:"phong",alpha:.6,visible:!0,mode:0,specular:{r:.2,g:.2,b:.2},shininess:5},id:"layer1"},{fi:1,data:{type:"color",alpha:1,visible:!0,mode:0,color:{r:.2823529411764706,g:.2823529411764706,b:.30196078431372547}},id:"layer2"}]};Object.assign(t,{[e]:r})}})}(t),t.schema=14),r<15&&(function(e){Object.entries(te(e.shared.images)).filter(e=>!1===e[1].asset).map(e=>e[0]).forEach(t=>{delete e.shared.images[t]}),Object.entries(te(e.shared.audios)).filter(e=>!1===e[1].asset).map(e=>e[0]).forEach(t=>{delete e.shared.audios[t]})}(t),t.schema=15),r<16&&(function(e){e.scene.publish.settings.web.preload=!1}(t),t.schema=16),r<17&&(ai(t,si),ri(t,si),t.schema=17),r<18&&(ai(t,ii),ri(t,ii),t.schema=18),r<19&&(function(e){Object.assign(e.scene.publish.settings,{video:{...oa.defaultData.settings.video,...te(e.scene.publish.settings.video)}})}(t),t.schema=19),r<20&&(function(e){e.shared.fonts=i({},f.prototype)}(t),function(e){let t=[];e.scene.objects.traverse((r,a)=>{let i=a;if("TextFrame"===i.type){let a=Qt.defaultTwoLayerData("phong"),n="string"==typeof i.color?e.shared.colors[i.color]:i.color;a.layers[1].data.color={r:n.r,g:n.g,b:n.b},a.layers[1].data.alpha=i.alpha;let o=function(e){return e.replace(".typeface","").replace(/optimer/gi,"open sans").replace("space_mono","space mono").replace(/alma_mono/gi,"varela round").replace(/droid_sans_mono/gi,"noto sans mono").replace(/droid_sans|gentilis|gnomon_(simple|foreground)|helvetiker/gi,"roboto").replace(/droid_serif/gi,"roboto slab").replace("_sans"," sans").replace("crimson_text","crimson text").replace("medium_medium","medium").replace("fatface_fatface","fatface").replace("100hairline","thin").replace("200thin","extralight").replace("300light","light").replace("500medium","medium").replace("600semi","semibold").replace("800heavy","extrabold").replace("900black","black").replace(/bodoni_(11|16|24|36|48|72|96)([^_])/gi,"bodoni_$1_$2").replace(/bodoni_(11|16|24|36|48|72|96)/gi,"bodoni moda").replace(/(thin|hairline)(_regular)?/gi,"100").replace(/(extra|ultra)light(_regular)?/gi,"200").replace(/light(_regular)?/gi,"300").replace(/_book|_normal|_roman/gi,"_regular").replace(/medium(_regular)?/gi,"500").replace(/(semi|demi)bold(_regular)?/gi,"600").replace(/(extra|ultra)bold(_regular)?/gi,"800").replace(/bold(_regular)?/gi,"700").replace(/(black|heavy|fatface)(_regular)?/gi,"900").replace(/([1-9]00)_italic/gi,"$1italic").replace(/regularitalic/gi,"italic").replace(/regularitalic/gi,"italic").split(" ").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}(i.font);void 0===e.shared.fonts[o]&&(e.shared.fonts[o]={name:o});let s={name:i.name,...Kr.defaultData,...Xr.defaultData,flatShading:!1,wireframe:!1,geometry:{...gr.defaultData("TextGeometry"),width:i.width,height:i.height,font:o,depth:0,horizontalAlign:i.horizontalAlign,verticalAlign:i.verticalAlign,fontSize:1.40625*i.fontSize,lineHeight:i.lineHeight/1.40625,letterSpacing:i.letterSpacing-1,text:i.text,textTransform:i.textTransform,extrudeBevelSize:0,extrudeBevelSegments:1},material:a,states:te(i.states),events:te(i.events),visible:i.visible,raycastLock:i.raycastLock,position:i.position,rotation:i.rotation,scale:i.scale,hiddenMatrix:i.hiddenMatrix},l=te(e.scene.objects).parent(r);e.scene.objects.insertAfter(l??null,r,[{id:r+"new",data:s,children:[]}]),t.push(r)}}),t.forEach(t=>{e.scene.objects.delete(t)})}(t),t.schema=20),r<21&&(function(t){let r={0:"MouseDown",1:"MouseUp",2:"MouseHover",5:"KeyDown",6:"KeyUp",7:"Start",9:"LookAt",10:"Follow",11:"Scroll",12:"Audio",13:"GameControl"};t.scene.objects.traverse((t,a)=>{a.events.forEach(t=>{if(r[Number(t.type)])if(Object.assign(t,{type:r[Number(t.type)]}),"Audio"===t.type&&"audioEvent"in t&&(Object.assign(t,{playAudio:t.audioEvent}),delete t.audioEvent),"GameControl"===t.type)Object.assign(t,{gameActions:{idle:new D,move:new D,jump:new D}});else{let r=new D;Object.assign(t,{actions:r}),("MouseDown"===t.type||"MouseUp"===t.type||"KeyDown"===t.type||"KeyUp"===t.type)&&"url"in t&&r.push({fi:0,id:e.generateUUID(),data:{type:"Link",url:t.url,delay:0}}),"targets"in t&&(t.targets.forEach((t,a,i)=>{let n={easing:t.easing,duration:t.duration};6===t.easing?Object.assign(n,ei(t,"mass","stiffness","damping","velocity")):5===t.easing&&Object.assign(n,{control1:{...t.control1},control2:{...t.control2}});let o={repeat:t.repeat?-1:0,delay:t.delay,delayDirection:t.delayDirection,direction:t.cycle&&t.rewind?"pingpong-rewind":t.cycle?"pingpong":"normal"},s={state:t.state,...o,...n},l={allowSlerp:!0,type:"Transition",object:t.object,repeat:0,delay:0,delayDirection:void 0,direction:"normal",tweens:new D({fi:0,id:e.generateUUID(),data:{state:void 0,repeat:0,delay:0,delayDirection:void 0,direction:"normal",duration:0,easing:4}},{fi:1,id:e.generateUUID(),data:s})};r.push({fi:i,id:a,data:l})}),delete t.targets)}})})}(t),function(t){t.scene.objects.traverse((t,r)=>{function a(t,a){let i=new D,n=[];if(r.events.forEach((e,t,r)=>{if("Audio"===e.type&&e.trigger===a){let a;n.push(t),"play"===e.interaction?a={...ei(e,"interaction","audio","delay","volume","loop"),triggerAfter:"after"in e?e.after:void 0,toggle:"after"in e?e.toggle:void 0,type:"Audio"}:("pause"===e.interaction||"stop"===e.interaction)&&(a={...ei(e,"interaction","delay","object","playAudio"),type:"Audio"}),a&&i.push({fi:r,id:t,data:a})}}),n.forEach(e=>r.events.delete(e)),i.length){let a=r.events.find(e=>e.type===t)?.data;a?"actions"in a&&a.actions.insertBefore(null,i):r.events.insertBefore(null,[{id:e.generateUUID(),data:{type:t,actions:i}}])}}a("Start","start"),a("MouseDown","mouseDown"),a("MouseUp","mouseUp"),a("KeyDown","keyDown"),a("KeyUp","keyUp")})}(t),t.schema=21),r<22&&(ui(t),t.schema=22),r<23&&(function(e){e.scene.objects.traverse((e,t)=>{"Mesh"===t.type&&"SubdivGeometry"===t.geometry.type&&(t.geometry.scaleBaked||(t.geometry.scaleBaked=[1,1,1]))})}(t),t.schema=23),r<24&&(function(e){e.scene.objects.traverse((e,t)=>{("Empty"===t.type||"Mesh"===t.type)&&t.cloner&&!t.cloner.randomnessObject&&!t.cloner.toObject&&!t.cloner.randomness&&(t.cloner={...t.cloner,toObject:{object:"",spreadType:"random",scale:[0,0,0],rotation:[0,0,0],position:[0,0,0],axis:"x",seed:0,count:99,align:"normal"},randomness:!1,randomnessObject:{strength:100,scale:[0,0,0],rotation:[0,0,0],position:[0,0,0],movement:1,seed:0,freqScale:10,noiseType:"perlin"}})})}(t),t.schema=24),(r<25||void 0===t.shared.videos)&&(function(e){e.shared.videos=i({},f.prototype)}(t),r<25&&(t.schema=25)),r<26&&(function(e){e.scene.objects.traverse((t,r)=>{let a=e.scene.objects.unproxy().parent(t);if(a){let t=te(e.scene.objects.data(a));t&&"Mesh"===t.type&&"BooleanGeometry"===t.geometry.type&&"Mesh"===r.type&&(r.visible=!0!==te(r).booleanExclude)}})}(t),t.schema=26),r<27&&(function(e){e.scene.objects.traverse((e,t)=>{if("Mesh"===t.type){let e=t;"NonParametricGeometry"===t.geometry.type?void 0!==e.material&&delete e.material:void 0!==e.materials&&delete e.materials}})}(t),t.schema=27),r<28&&(ui(t),t.schema=28),r<29&&(function(e){function t(e){Object.setPrototypeOf(e,_.prototype),e.texture&&Object.setPrototypeOf(e.texture,_.prototype)}function r(e){Object.setPrototypeOf(e,_.prototype);for(let r in e)t(e[r])}e.scene.objects.traverse((e,t)=>{t.states.forEach(e=>{let t=e;if(t.material){let e=te(t.material).layers;r(e),t.material.layers=e}if(t.materials)for(let e=0;e<t.materials.length;e++){let a=t.materials[e],i=te(a).layers;r(i),a.layers=i}})})}(t),t.schema=29),r<30&&(function(e){e.scene.objects.traverse((e,t)=>{"Mesh"===t.type&&"NonParametricGeometry"===t.geometry.type&&!("material"in t)&&!("materials"in t)&&(t.material=Qt.defaultTwoLayerData("phong"))})}(t),t.schema=30),r<31&&(function(e){void 0===e.scene.publish.orbitControls.autoZoom&&(e.scene.publish.orbitControls.autoZoom=!1),e.scene.objects.traverse((e,t)=>{("OrthographicCamera"===t.type||"PerspectiveCamera"===t.type)&&(void 0===t.orthographic.autoZoom&&(t.orthographic.autoZoom=!1),void 0===t.orthographic.autoZoomFrustumSize&&(t.orthographic.autoZoomFrustumSize=790))})}(t),t.schema=31),r<33&&(function(e){e.scene.objects.traverse((e,t)=>{void 0===t.pathSnapping&&(t.pathSnapping={pathId:null,slide:0,offset:0,orientation:"tangential"}),void 0===t.pathSnapping.offset&&(t.pathSnapping.offset=0)})}(t),t.schema=33),r<34&&(function(e){void 0===e.scene.publish.mouseEventTarget&&(e.scene.publish.mouseEventTarget="canvas"),void 0===e.scene.publish.settings.web.hint&&(e.scene.publish.settings.web.hint=!1)}(t),t.schema=34),r<35&&(function(e){let{video:t}=e.scene.publish.settings;"gif"===t.format&&t.fps>48&&(t.fps=15)}(t),t.schema=35),r<36&&(function(e){e.scene.objects.traverse((e,t)=>{t.events.forEach(e=>{"GameControl"===e.type&&(e.resetYPosition=Math.abs(e.resetYPosition-t.position[1]))})})}(t),t.schema=36),r<37&&(function(e){let t=e.scene.environment.usePhysics;e.scene.objects.traverse((e,r)=>{t&&null===r.physics?r.collision=!1:r.collision="visibility"})}(t),t.schema=37),r<38&&(ai(t,li),ri(t,li),t.schema=38),r<39&&(function(e){e.scene.objects.traverse((e,t)=>{t.events.forEach(e=>{"GameControl"===e.type&&(e.navmesh=Qa.defaultDataThirdPerson.navmesh)})})}(t),t.schema=39),r<40&&(function(e){e.scene.styles||(e.scene.styles=ca.defaultData())}(t),t.schema=40),r<41&&(function(e){void 0===e.scene.environment.ambientLight.occlusion&&(e.scene.environment.ambientLight.occlusion=!1),void 0===e.scene.environment.ambientLight.aoFullRes&&(e.scene.environment.ambientLight.aoFullRes=!1),void 0===e.scene.environment.ambientLight.radius&&(e.scene.environment.ambientLight.radius=256),void 0===e.scene.environment.ambientLight.bias&&(e.scene.environment.ambientLight.bias=.5),void 0===e.scene.environment.ambientLight.aoColor&&(e.scene.environment.ambientLight.aoColor={r:.19607843137254902,g:.19607843137254902,b:.19607843137254902}),ai(e,di),ri(e,di)}(t),t.schema=41),r<42&&(function(e){e.scene.objects.traverse((e,t)=>{t.events.forEach(e=>{"GameControl"===e.type&&Object.assign(e.gameActions,{run:new D})})})}(t),t.schema=42),r<43&&(function(e){e.scene.objects.traverse((e,t)=>{t.events.forEach(e=>{"GameControl"===e.type&&(e.keyAssignments=[...e.keyAssignments,["run","⇧"],["none","Ctrl"]])})})}(t),t.schema=43),r<99){ai(t,pi),ri(t,pi),null===t.scene.publish.playCamera&&(t.scene.publish.playCamera=Ot);let e=te(t.scene.objects),r=t.scene.objects;t.scene.publish.playPage=jt,r.insertBefore(null,null,[{id:jt,data:{...ra.defaultData,backgroundColor:t.scene.backgroundColor,fog:t.scene.fog,postprocessing:t.scene.postprocessing,ao:ei(t.scene.environment.ambientLight,"occlusion","aoFullRes","radius","bias","aoColor"),publish:{playCamera:t.scene.publish.playCamera,gameControlObject:t.scene.publish.gameControlObject},shadow:ei(t.scene.environment.ambientLight,"softShadowQuality"),globalPhysics:{...Ir.defaultData,...ei(t.scene.environment,"usePhysics","gravity")},camera:te(t.scene.ownerCamera)??ra.defaultData.camera,name:"Scene"},children:[]}]);for(let t of e)t.id!==da.TRASH_CAN_ID&&r.move(jt,t.fi,t.id);let a=0,i=0;t.shared.penumbraSize&&t.scene.objects.traverse((e,r)=>{"DirectionalLight"===r.type?(r.penumbraSize=t.shared.penumbraSize[Math.min(a,2)],a+=1):"SpotLight"===r.type&&(r.penumbraSize=t.shared.penumbraSize[3+Math.min(i,1)],i+=1),(void 0===r.physics||null===r.physics)&&"Instance"!==r.type&&(r.physics={},Object.assign(r.physics,Lt.defaultData)),void 0!==r.physics&&null!==r.physics&&(r.physics.enabled=r.collision??"visibility",delete r.collision)}),t.schema=99}}(t,r),r<100&&(void 0===t.scene.publish.joystickSizeAndXYOffset&&(t.scene.publish.joystickSizeAndXYOffset=oa.defaultData.joystickSizeAndXYOffset),t.schema=100),r<101&&(ai(t,fi),ri(t,fi),t.schema=101),r<102&&(function(e){e.scene.objects.traverse((e,t)=>{let r=t.geometry;r&&"PathGeometry"===r.type&&(r.extrusion.capType="flat",r.extrusion.bevel=50,r.extrusion.bevelSides=6,"Custom"===r.extrusion.shape.type&&(r.extrusion.shape.shapeQuality="low"))})}(t),t.schema=102),r<104&&(t.shared.catelogs=new f,t.shared.lib=va.defaultData(),t.schema=104),r<105&&(function(e){e.shared.variables=i({},f.prototype)}(t),t.scene.objects.traverse((e,t)=>{mi(t)}),t.schema=105);for(let e of Object.values(t.shared.lib.components))wi(e);r<106&&(function(e){let t=te(e.shared.variables);e.shared.variables=i(Object.entries(t??{}).map(([e,t],r)=>({fi:r,id:e,data:t})),D.prototype)}(t),t.schema=106),r<107&&(t.shared.lib.variables=va.defaultData().variables,t.schema=107),r<109&&(function(e){e.shared.particles=i({},f.prototype),e.shared.lib&&(e.shared.lib.particles=va.defaultData().particles)}(t),t.schema=109),r<110&&(function(e){e.scene.objects.traverse((e,t)=>{"Particle"===t.type&&"number"==typeof t.renderMaterial.size&&Object.assign(t.renderMaterial,{size:[t.renderMaterial.size,t.renderMaterial.size]})})}(t),t.schema=110),r<111&&(t.scene.objects.traverse((e,t)=>{!function(e){Array.isArray(te(e.events))&&e.events?.forEach(e=>{"disabled"in e||(e.disabled=!1),("MouseDown"===e.type||"MouseUp"===e.type||"MousePress"===e.type)&&(e.mode=e.mode||"Object")})}(t)}),t.schema=111),r<112&&(function(e){e.scene.objects.traverse((e,t)=>{"Page"===t.type&&(t.postprocessing.depthOfField.focusDistance=100,t.postprocessing.depthOfField.focalLength=20,t.postprocessing.depthOfField.bokehScale=5)})}(t),t.schema=112),r<113&&(function(e){e.scene.objects.traverse((e,t)=>{!1!==Array.isArray(te(t.events))&&t.events?.forEach(e=>{let t=e.runMode;"MouseDown"===e.type||"MouseUp"===e.type||"KeyDown"===e.type||"KeyUp"===e.type||"Collision"===e.type||"Trigger"===e.type?e.actions?.forEach(e=>{"Transition"===e.type&&(e.runMode=t??"Repeat"),("Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Toggle"===t?"Toggle":"Normal")}):"MouseHover"===e.type||"MousePress"===e.type||"KeyPress"===e.type?e.actions?.forEach(e=>{("Transition"===e.type||"Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Toggle")}):"GameControl"===e.type?(delete e.actions,Object.keys(e.gameActions).forEach(t=>{e.gameActions[t]?.forEach(e=>{"Transition"===e.type&&(e.runMode="Repeat"),"Animation"===e.type&&(e.runMode="Normal")})})):"DragDrop"===e.type?(delete e.actions,e.dragDropActions?.drag?.forEach(e=>{("Transition"===e.type||"Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Toggle")}),e.dragDropActions?.drop?.forEach(e=>{("Transition"===e.type||"Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Toggle")})):"Resize"===e.type?(delete e.actions,e.breakpoints?.forEach(e=>{e.actions?.forEach(e=>{("Transition"===e.type||"Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Toggle")})})):"Start"===e.type?e.actions?.forEach(e=>{"Transition"===e.type&&(e.runMode="Once"),("Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Normal")}):"VariableChange"===e.type||"Scroll"===e.type?e.actions?.forEach(e=>{"Transition"===e.type&&(e.runMode="Repeat"),("Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Normal")}):"Conditional"===e.type&&(delete e.actions,e.inActions?.forEach(e=>{"Transition"===e.type&&(e.runMode="Repeat"),("Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Normal")}),e.outActions?.forEach(e=>{"Transition"===e.type&&(e.runMode="Repeat"),("Animation"===e.type||"SwitchCamera"===e.type)&&(e.runMode="Normal")}))})})}(t),t.schema=113),r<114&&(void 0===t.scene.publish.settings.web.imageQuality&&(t.scene.publish.settings.web.imageQuality=70),t.schema=114),r<115&&(function(e){e.shared.userAPIs=i({},f.prototype),e.shared.userWebhooks=i({},f.prototype),e.shared.lib&&(e.shared.lib.userAPIs=va.defaultData().userAPIs,e.shared.lib.userWebhooks=va.defaultData().userWebhooks)}(t),t.schema=115),r<116&&(function(e){void 0===e.scene.publish.settings.videoStatic&&(e.scene.publish.settings.videoStatic=oa.defaultData.settings.videoStatic)}(t),t.schema=116),r<117&&(void 0===t.scene.publish.settings.web.pixelRatioMobile&&(t.scene.publish.settings.web.pixelRatioMobile=0),void 0===t.scene.publish.settings.web.pixelRatioDesktop&&(t.scene.publish.settings.web.pixelRatioDesktop=0),t.schema=117),r<118&&(t.shared.timelineAnimations=i({},f.prototype),t.scene.objects.traverse((e,t)=>{ji(t)}),t.schema=118),r<119&&(t.scene.publish.settings.videoStatic.format=Da.defaultData.scene.publish.settings.videoStatic.format,t.scene.publish.settings.videoStatic.imageFormat=Da.defaultData.scene.publish.settings.videoStatic.imageFormat,t.schema=119),r<120&&(t.scene.publish.settings.image.colorSpace="display-p3",t.scene.publish.settings.videoStatic.colorSpace="display-p3",t.schema=120),r<121&&(t.scene.objects.traverse((e,t)=>{_i(t),"Page"===t.type&&void 0!==t.camera&&_i(t.camera)}),t.schema=121),r<122&&(delete t.scene.publish.settings.video,t.scene.publish.orbitControls.rotationSpeed=Da.defaultData.scene.publish.orbitControls.rotationSpeed,t.schema=122),r<123&&(t.scene.objects.traverse((e,t)=>{"Page"===t.type&&void 0===t.sky&&(t.sky=Cr.defaultData)}),t.schema=123),r<124&&(r>=123&&t.scene.objects.traverse((e,t)=>{let r=t.sky;"Page"===t.type&&void 0!==r&&("number"==typeof r.exposure&&(r.exposure=Math.round(r.exposure/5e-4*1e4)/1e4),void 0===r.lighting&&(r.lighting=Cr.defaultData.lighting))}),t.schema=124),r<125&&(t.scene.objects.traverse((e,t)=>{let r=t.sky;"Page"===t.type&&void 0!==r&&void 0===r.lightingIntensity&&(r.lightingIntensity=Cr.defaultData.lightingIntensity)}),t.schema=125),r<126&&(t.scene.objects.traverse((e,t)=>{let r=t.sky;"Page"===t.type&&void 0!==r&&(void 0===r.mode&&(r.mode="physical"),void 0===r.hdri?r.hdri={...Cr.defaultData.hdri}:(void 0===r.hdri.blur&&(r.hdri.blur=Cr.defaultData.hdri.blur),Array.isArray(r.hdri.rotation)&&(r.hdri.rotation=r.hdri.rotation[1]??0)))}),t.schema=126),r<127&&(t.scene.objects.traverse((e,t)=>{let r=t.sky;"Page"===t.type&&void 0!==r?.hdri&&void 0===r.hdri.showBackground&&(r.hdri.showBackground=!0)}),t.schema=127),r<128&&(t.scene.objects.traverse((e,t)=>{let r=t.sky;"Page"===t.type&&void 0!==r&&void 0===r.lightingQuality&&(r.lightingQuality="full")}),t.schema=128),r<129&&(t.scene.objects.traverse((e,t)=>{if("Page"===t.type){void 0===t.camera&&(t.camera=ra.defaultData.camera);let e=t.camera;e.far=1e5,e.perspective?e.perspective.near=70:e.perspective={near:70,fov:45,zoom:1}}}),t.schema=129),r<130&&(Di(t,Si),t.schema=130),r<131&&(function(e){e.scene.objects.traverse((e,t)=>{let r=t.states;if(!r)return;let a=t.timelineAnimations,i=[];r.forEach((e,t)=>{(e.isAnimation||a?.[t])&&i.push(t)}),i.forEach(e=>r.delete(e))})}(t),function(e){let t=e.shared,r=t.timelineAnimations;if(!r)return;let a=e.scene.objects,n=a.unproxy().find(e=>"Page"===e.data.type)?.id;for(let[e,t]of Object.entries(r)){let r=i({},f.prototype),o=0,s=Boolean(t.loop);for(let[e,i]of Object.entries(t.mapping??{})){let t=a.data(e)?.timelineAnimations?.[i];!t||(o=Math.max(o,t.to??0),s=s||Boolean(t.loop),r[e]={id:e,keyframes:Ai(t.properties?.unproxy())})}let l=t.page??n,c=l?a.data(l):void 0;c&&"Page"===c.type&&((c.timelines??(c.timelines=i({},f.prototype)))[e]={id:e,name:t.name,duration:o||5,...s?{loop:s}:{},objectTimelines:r})}delete t.timelineAnimations,a.traverse((e,t)=>{delete t.timelineAnimations})}(t),Ii(t,Pi),Ii(t,Ei),t.schema=131)}}export{r as a,a as b,i as c,c as d,v as e,D as f,S as g,_ as h,M as i,T as j,E as k,J as l,ee as m,Y as n,ct as o,Ea as p,Ja as q,za as r,Ua as s,Ka as t,Wa as u,Ot as v,At as w,Ct as x,dt as y,pt as z,ht as A,mt as B,bt as C,wt as D,Bt as E,Pt as F,Mt as G,zt as H,nt as I,st as J,Dr as K,zr as L,Ur as M,Vr as N,Fr as O,Gr as P,Hr as Q,kt as R,Zt as S,Ht as T,Wt as U,Jt as V,er as W,tr as X,rr as Y,ar as Z,ir as _,nr as $,or as aa,sr as ba,Yt as ca,Qt as da,dr as ea,pr as fa,cr as ga,ur as ha,hr as ia,vr as ja,wr as ka,yr as la,gr as ma,Or as na,jr as oa,Nr as pa,Pr as qa,xr as ra,Ir as sa,Aa as ta,Kr as ua,Wr as va,Xr as wa,Qr as xa,Jr as ya,ea as za,ta as Aa,ra as Ba,ia as Ca,ua as Da,fa as Ea,ya as Fa,wa as Ga,Da as Ha,Ca as Ia,ja as Ja,Ma as Ka,Xa as La,Qa as Ma,gi as Na,bi as Oa,vi as Pa,wi as Qa,Di as Ra,ki as Sa,Ri as Ta};
|
|
Binary file
|
|
Binary file
|