python-cad-tools 0.1.23__tar.gz → 0.1.25__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/CHANGELOG.md +10 -0
  2. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/PKG-INFO +1 -1
  3. python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/asset-manifest.json +1 -0
  4. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/animationGroup-CWWigNuG.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/animationGroup-DHMjljmB.js +1 -1
  5. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/bakedVertexAnimation-CsvToT2G.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/bakedVertexAnimation-MGFbbw7F.js +1 -1
  6. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/basisTextureLoader-B4pSwZUY.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/basisTextureLoader-BPZV974Q.js +1 -1
  7. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/brdfTextureTools-BNEbZjdc.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/brdfTextureTools-B1t2XUsh.js +2 -2
  8. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/bumpFragment-Nq43ZTAC.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/bumpFragment-DCxLmG61.js +1 -1
  9. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/bumpVertex-XOKqV93Q.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/bumpVertex-0oYjoQMQ.js +1 -1
  10. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/bumpVertexDeclaration-BAa9GdEq.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/bumpVertexDeclaration-BGUPjxym.js +1 -1
  11. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/clipPlaneFragment-C0mhzlyB.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/clipPlaneFragment-DD2JPAF1.js +1 -1
  12. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/clipPlaneVertex-COLxe99z.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/clipPlaneVertex-DN96wmQc.js +1 -1
  13. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/cubemapToSphericalPolynomial-DXnlGMon.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/cubemapToSphericalPolynomial-CF0hkqTs.js +1 -1
  14. python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/dds-B77UKtBn.js +1 -0
  15. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/dds.pure-DsmFpXWx.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/dds.pure-B715oIs0.js +1 -1
  16. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/ddsTextureLoader-ynDyPYwv.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/ddsTextureLoader-7G8Qcc0n.js +1 -1
  17. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/default.fragment-DFPZARfL.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/default.fragment-tZ0oStCg.js +1 -1
  18. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/default.vertex-BIKeKseF.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/default.vertex-C-PbmgtW.js +1 -1
  19. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/defaultUboDeclaration-dOVy1F77.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/defaultUboDeclaration-DA6nmrud.js +1 -1
  20. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/envTextureLoader-j6ZKsMN1.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/envTextureLoader-lsNPYPhe.js +1 -1
  21. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/exrTextureLoader-CpNeUuFk.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/exrTextureLoader-SjwgJAc5.js +1 -1
  22. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphApplyForceBlock-C-QARfm1.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphApplyForceBlock-DTjrMcjl.js +1 -1
  23. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphApplyImpulseBlock-Bxls4CGO.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphApplyImpulseBlock-DamPsUZI.js +1 -1
  24. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphArrayIndexBlock-Bo_GPN6J.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphArrayIndexBlock-rHV_9Jtd.js +1 -1
  25. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphBezierCurveEasingBlock-BQeJ2IuV.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphBezierCurveEasingBlock-B1Mzuvj7.js +1 -1
  26. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphBinaryOperationBlock-BREmjMOC.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphBinaryOperationBlock-BYSm-X9P.js +1 -1
  27. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphBranchBlock-WMggEd5Y.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphBranchBlock-DLLGKTbV.js +1 -1
  28. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphCachedOperationBlock-C2mkL6qz.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphCachedOperationBlock-DyT2_YKh.js +1 -1
  29. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphCancelDelayBlock-Dwov_bJk.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphCancelDelayBlock-CLlaui7O.js +1 -1
  30. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphCodeExecutionBlock-DFSN-doo.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphCodeExecutionBlock-ezmwTbI5.js +1 -1
  31. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphConditionalDataBlock-CP2N09On.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphConditionalDataBlock-BWCBa9B7.js +1 -1
  32. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphConsoleLogBlock-CLrJ-Vwb.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphConsoleLogBlock-Tq8YSBFN.js +1 -1
  33. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphConstantBlock-CA84SIpf.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphConstantBlock-B56RKoF4.js +1 -1
  34. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphContextBlock-COwmdNXC.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphContextBlock-CjuSDwmc.js +1 -1
  35. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphCounterBlock-C-jubjQe.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphCounterBlock-Bmk4MxN7.js +1 -1
  36. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphDataSwitchBlock-D7-0KriE.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphDataSwitchBlock-Dvi9ZvsH.js +1 -1
  37. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphDebounceBlock-D1OUOtLe.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphDebounceBlock-Bj7RTBgv.js +1 -1
  38. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphDebugBlock-7KeNCx0F.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphDebugBlock-CGd8wpR5.js +1 -1
  39. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphDoNBlock-BIYKnK2M.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphDoNBlock-BGZpjQAX.js +1 -1
  40. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphEasingBlock-DvXGudwD.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphEasingBlock-BzLE44T-.js +1 -1
  41. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphFlipFlopBlock-BoNCkPPR.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphFlipFlopBlock-D8_88xUA.js +1 -1
  42. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphForLoopBlock-DDX0f-ID.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphForLoopBlock-CF8dXGIg.js +1 -1
  43. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphFunctionReferenceBlock-CxKib2hj.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphFunctionReferenceBlock-D_YGg8QR.js +1 -1
  44. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGLTFDataProvider-DxHS-xsX.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGLTFDataProvider-B8SiMj9v.js +1 -1
  45. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetAngularVelocityBlock-BsHPZVx7.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetAngularVelocityBlock-DzEtWSf5.js +1 -1
  46. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetAssetBlock-fX6rKi20.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetAssetBlock-CIhvXJWA.js +1 -1
  47. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetLinearVelocityBlock-C2d1P3Ke.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetLinearVelocityBlock-DqgIoJQv.js +1 -1
  48. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetPhysicsMassPropertiesBlock-Djyyk4Ue.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetPhysicsMassPropertiesBlock-CUHG6HMx.js +1 -1
  49. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetPropertyBlock-DPVK6Ujc.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetPropertyBlock-CoS75-c_.js +1 -1
  50. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetSoundVolumeBlock-YPqug4Xx.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetSoundVolumeBlock-1HiYij4X.js +1 -1
  51. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphGetVariableBlock-CeDkEfjT.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphGetVariableBlock-Bzpa8R9d.js +1 -1
  52. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphIndexOfBlock-WMFo9Zat.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphIndexOfBlock-ooox6LH_.js +1 -1
  53. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphInterpolationBlock-C6Ha2IFy.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphInterpolationBlock-Df2jq977.js +1 -1
  54. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphIsKeyPressedBlock-DwNwh1ED.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphIsKeyPressedBlock-B6KLFUdL.js +1 -1
  55. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphIsSoundPlayingBlock-CSQ69GkS.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphIsSoundPlayingBlock-CZe8gZ1b.js +1 -1
  56. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphJsonPointerParserBlock-CF2NlYOP.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphJsonPointerParserBlock-gyM8wAf_.js +1 -1
  57. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphKeyDownEventBlock-TJfb-c5V.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphKeyDownEventBlock-CD-zMI2Y.js +1 -1
  58. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphKeyUpEventBlock-972Gp70f.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphKeyUpEventBlock-dmq771Ye.js +1 -1
  59. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphKeyboardEventBlock-DjsMLzCW.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphKeyboardEventBlock-DcU45hIv.js +1 -1
  60. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphMathBlocks-DnoOtgUp.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphMathBlocks-D3K59ZYx.js +1 -1
  61. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphMathCombineExtractBlocks-C0meI6XA.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphMathCombineExtractBlocks-B84bxb6q.js +1 -1
  62. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphMatrixMathBlocks-AZ0Dut5B.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphMatrixMathBlocks-DvWcRK48.js +1 -1
  63. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphMeshPickEventBlock-Bdu7X63m.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphMeshPickEventBlock-D1QtxJNf.js +1 -1
  64. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphMultiGateBlock-nDUTaQiW.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphMultiGateBlock-BCpUwYzV.js +1 -1
  65. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPauseAnimationBlock-Bo98FGgI.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPauseAnimationBlock-DRNt_SDm.js +1 -1
  66. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPauseSoundBlock-NyOx2_Qc.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPauseSoundBlock-Bg-E3ycn.js +1 -1
  67. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPhysicsCollisionEventBlock-DXlZSDMq.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPhysicsCollisionEventBlock-DNyeMY32.js +1 -1
  68. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPlayAnimationBlock-BTb6qtvS.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPlayAnimationBlock-nxquuNCT.js +1 -1
  69. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPlaySoundBlock-CwVzvl6F.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPlaySoundBlock-Buah9Tkc.js +1 -1
  70. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPointerDownEventBlock-BlXDMdKv.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPointerDownEventBlock-B9bwUWa1.js +1 -1
  71. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPointerMoveEventBlock-BwL2w-bR.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPointerMoveEventBlock-BM0TL_xE.js +1 -1
  72. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOutEventBlock-DuZwtRGA.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOutEventBlock-CJgEh8yV.js +1 -1
  73. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOverEventBlock-BsbFKC2I.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPointerOverEventBlock-DTHG-KwO.js +1 -1
  74. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphPointerUpEventBlock-47HueEIY.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphPointerUpEventBlock-DMGZmwMB.js +1 -1
  75. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphReceiveCustomEventBlock-Vlp1Pfhh.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphReceiveCustomEventBlock-CSI8HkWd.js +1 -1
  76. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSceneReadyEventBlock-Bv3z_n-M.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSceneReadyEventBlock-BE_6AF0x.js +1 -1
  77. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSceneTickEventBlock-BkrpebZ7.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSceneTickEventBlock-zQ9Lr3Qw.js +1 -1
  78. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSendCustomEventBlock-CT8DxToU.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSendCustomEventBlock-rOgY8mka.js +1 -1
  79. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSequenceBlock-Dhl83MB1.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSequenceBlock-BY_DG0RM.js +1 -1
  80. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetAngularVelocityBlock-CfzMuCd3.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetAngularVelocityBlock-BWkX9sU3.js +1 -1
  81. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetDelayBlock-FhUaMqby.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetDelayBlock-BiQhdbqp.js +1 -1
  82. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetLinearVelocityBlock-CcCCluEk.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetLinearVelocityBlock-6Stexwnu.js +1 -1
  83. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetPhysicsMotionTypeBlock-SfshlY8X.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetPhysicsMotionTypeBlock-BhbU9SXg.js +1 -1
  84. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetPropertyBlock-CFrveNvP.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetPropertyBlock-BVIo1W8-.js +1 -1
  85. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetSoundVolumeBlock-C4cU_J1C.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetSoundVolumeBlock-BmVOXY0c.js +1 -1
  86. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSetVariableBlock-Bq13otbq.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSetVariableBlock-BjKR1mgz.js +1 -1
  87. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSoundEndedEventBlock-BBlrlF5u.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSoundEndedEventBlock-Dw-5bxJv.js +1 -1
  88. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphStopAnimationBlock-a5WQ1hKl.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphStopAnimationBlock-DrLtPiEv.js +1 -1
  89. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphStopSoundBlock-B_Bbaeo0.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphStopSoundBlock--MzW9jji.js +1 -1
  90. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphSwitchBlock-2oBclun6.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphSwitchBlock-X2ZoX6tx.js +1 -1
  91. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphThrottleBlock-BLTPbLE_.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphThrottleBlock-BZ2PAian.js +1 -1
  92. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphTransformCoordinatesSystemBlock-BeGhvF7X.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphTransformCoordinatesSystemBlock-BEBk8xav.js +1 -1
  93. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphTypeToTypeBlocks-D9lcLeo5.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphTypeToTypeBlocks-DPY_kyih.js +1 -1
  94. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphUnaryOperationBlock-CR02VJKy.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphUnaryOperationBlock-D7h--Cdt.js +1 -1
  95. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphVectorMathBlocks-CfFpngcb.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphVectorMathBlocks-2EgD4-kQ.js +1 -1
  96. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphWaitAllBlock-Dx360Ra9.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphWaitAllBlock-CmOzDK5N.js +1 -1
  97. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/flowGraphWhileLoopBlock-QgsZDLPG.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/flowGraphWhileLoopBlock-CbejmuGP.js +1 -1
  98. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/fogFragment-Cg93oslV.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/fogFragment-BTBA7CTP.js +1 -1
  99. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/fxaa.fragment-BE3AwpNA.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/fxaa.fragment-C2eATj9H.js +1 -1
  100. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/fxaa.vertex-CMqfyiIi.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/fxaa.vertex-D0i6Mi6U.js +1 -1
  101. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-DxqPxc0v.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-DSSuHojJ.js +1 -1
  102. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-BRq9XV9F.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting-z1QQSYr0.js +1 -1
  103. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-B00n0JiL.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-BIkORghW.js +1 -1
  104. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-D7uJ-MYw.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.fragment-CPhYpx9O.js +1 -1
  105. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-DsyMsJOl.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-Bb7V--au.js +1 -1
  106. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-CroG-Ltw.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplatting.vertex-DlNYcW-d.js +1 -1
  107. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-tTz36e4f.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-3ZOEWhKY.js +1 -1
  108. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-CbuHwwYM.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.fragment-C2JvL2AM.js +1 -1
  109. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-bkXN2Njn.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-3lxrHk65.js +1 -1
  110. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-CVxpiWyd.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/gaussianSplattingVoxel.vertex-CwZjSh-j.js +1 -1
  111. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/geometry.fragment-CCiCITg1.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/geometry.fragment-B7Bs1-FX.js +1 -1
  112. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/geometry.fragment-Cgat0MCG.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/geometry.fragment-C9e-kv94.js +1 -1
  113. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/geometry.vertex-DXSVIB_2.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/geometry.vertex-CxQUKoXe.js +1 -1
  114. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/geometry.vertex-Cq04f5Ln.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/geometry.vertex-DLLF9YL6.js +1 -1
  115. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/glowBlurPostProcess.fragment-Bt1JV2fJ.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/glowBlurPostProcess.fragment-DJ7GA0Ms.js +1 -1
  116. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.fragment-BjhP89KP.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.fragment-IiyeP0wJ.js +1 -1
  117. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.vertex-Faq0QVfW.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/glowMapGeneration.vertex-D08z2Pqo.js +1 -1
  118. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/glowMapMerge.fragment-CKyVe1CV.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/glowMapMerge.fragment-b_QAS0QR.js +1 -1
  119. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/glowMapMerge.vertex-aH_PMq3S.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/glowMapMerge.vertex-CMSyDSpX.js +1 -1
  120. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/harmonicsFunctions-DDZAS2wb.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/harmonicsFunctions-DT0Dhsff.js +1 -1
  121. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/helperFunctions-D3Ga2k6-.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/helperFunctions-Qma8-N-8.js +1 -1
  122. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/iesTextureLoader-BrYONFqP.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/iesTextureLoader-VePZ3QkV.js +1 -1
  123. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/index-BZ1jSBLc.css → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/index-C7PQDOQI.css +1 -1
  124. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/index-DMstpx40.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/index-Dl0bWA0T.js +156 -157
  125. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-C5b4KAEg.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-ChxVYEAV.js +1 -1
  126. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-Derkbx9w.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlur.fragment-DdUkyZYa.js +1 -1
  127. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-CBMvYDT-.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-CfFBINQK.js +1 -1
  128. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-CbO1lW2k.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlur.vertex-CsUEAlHp.js +1 -1
  129. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-Dm6ylZqq.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-BfbSJvpD.js +1 -1
  130. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-Dzmp-9kW.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/kernelBlurVaryingDeclaration-YWfJbImG.js +1 -1
  131. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/ktxTextureLoader-CGLuJ3CM.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/ktxTextureLoader-DyPXrWbN.js +1 -1
  132. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/lightFragment-DwljOAKX.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/lightFragment-D1PDwXO3.js +1 -1
  133. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/logDepthDeclaration-D5H1pvXu.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/logDepthDeclaration-DzsADhSm.js +1 -1
  134. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/logDepthVertex-DCHHmUjz.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/logDepthVertex-CVDFVyev.js +1 -1
  135. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/mainUVVaryingDeclaration-C2r7x4SJ.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/mainUVVaryingDeclaration-DapA_gli.js +1 -1
  136. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/meshUboDeclaration-D66Dj1ce.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/meshUboDeclaration-ZqbKD_Z-.js +1 -1
  137. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/oitFragment-BblgJLs2.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/oitFragment-C5HMolir.js +1 -1
  138. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-ApisHGwV.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-CIMBKpMg.js +1 -1
  139. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-DDzCgLmz.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbr.fragment-SdCxmuNh.js +1 -1
  140. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-B3hJbmMD.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-CsVq8zRS.js +1 -1
  141. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-BwG88QJq.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbr.vertex-D6KDFxU7.js +1 -1
  142. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrMaterial.pure-DmktGnAB.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrMaterial.pure-crOU97Ej.js +3 -3
  143. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrMaterialLoadingAdapter-CrmmCGBW.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrMaterialLoadingAdapter-BU5tmfb_.js +2 -2
  144. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-DEhGQe9C.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-CSoLogLq.js +1 -1
  145. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-KAR6124f.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrTransmissionLayerData-Zc5U1uW1.js +1 -1
  146. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-CpsHcz7i.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-BHnTD3Hj.js +1 -1
  147. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-Bk1M96bB.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/openpbrUboDeclaration-qTe8FOQM.js +1 -1
  148. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/packingFunctions-Cf2bYblu.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/packingFunctions-BTo087et.js +1 -1
  149. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/packingFunctions-DWpZhjFr.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/packingFunctions-DkOVZ6dP.js +1 -1
  150. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pass.fragment--5PJYvG_.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pass.fragment-Fvo7rkse.js +1 -1
  151. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/passCube.fragment-TFZnmLc2.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/passCube.fragment-Bpo9R9Mm.js +1 -1
  152. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/passCube.fragment-POHCEXUn.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/passCube.fragment-Dx2u9rd3.js +1 -1
  153. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbr.fragment-DrJnd3FG.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbr.fragment-CsJ83gJP.js +1 -1
  154. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbr.vertex-DrrEPvVg.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbr.vertex-Bjk8gi5S.js +1 -1
  155. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrBRDFFunctions-CAvUMvGl.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrBRDFFunctions-BIkS5CLc.js +1 -1
  156. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrDebug-Fyywxry3.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrDebug-DXECYWn5.js +1 -1
  157. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrIBLFunctions-In3pd2QO.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrIBLFunctions-D3D1vikc.js +1 -1
  158. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrMaterial.pure-CN4dqlHo.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrMaterial.pure-D27tv6kx.js +2 -2
  159. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrMaterialLoadingAdapter-DZHtYHqD.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrMaterialLoadingAdapter-B2QPSPXm.js +1 -1
  160. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/pbrUboDeclaration-C4rekOuR.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/pbrUboDeclaration-CRUyhK8m.js +1 -1
  161. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/postprocess.vertex-Dyu7cQ3W.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/postprocess.vertex-BVUTk21B.js +1 -1
  162. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/procedural.vertex-B-SrhRe7.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/procedural.vertex-D4hY2WEA.js +1 -1
  163. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/procedural.vertex-BhJ051Av.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/procedural.vertex-WHGaOSkN.js +1 -1
  164. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/reflectionFunction-BjE54o2G.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/reflectionFunction-Qpn0UPP2.js +1 -1
  165. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/rgbdDecode.fragment-B6W4l6bx.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/rgbdDecode.fragment-CUYoCQBj.js +1 -1
  166. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-Chbio0ZH.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-Cg9wCk1i.js +1 -1
  167. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-DpZ6_aaU.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/rgbdEncode.fragment-NifDqc2S.js +1 -1
  168. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/sceneUboDeclaration-BCUaVlqI.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/sceneUboDeclaration-D3Naneg4.js +1 -1
  169. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-DsZ-321q.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-BUFM97It.js +1 -1
  170. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-CHELw20N.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/textureProcessor.fragment-BbKV5o42.js +1 -1
  171. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/tgaTextureLoader-M2WvT-v9.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/tgaTextureLoader-C_Gwe725.js +1 -1
  172. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/vertexColorMixing-BjZfaTmT.js → python_cad_tools-0.1.25/src/python_cad_tools/_viewer_static/assets/vertexColorMixing-DXtapHBI.js +1 -1
  173. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/index.html +2 -2
  174. python_cad_tools-0.1.25/src/python_cad_tools/build-info.json +1 -0
  175. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/PKG-INFO +1 -1
  176. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/SOURCES.txt +169 -169
  177. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/scm_file_list.json +169 -169
  178. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/scm_version.json +2 -2
  179. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/asset-manifest.json +0 -1
  180. python_cad_tools-0.1.23/src/python_cad_tools/_viewer_static/assets/dds-CCgS8zmq.js +0 -1
  181. python_cad_tools-0.1.23/src/python_cad_tools/build-info.json +0 -1
  182. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.gitattributes +0 -0
  183. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.githooks/pre-push +0 -0
  184. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.github/workflows/ci.yml +0 -0
  185. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.github/workflows/downstream-compatibility.yml +0 -0
  186. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.github/workflows/release-candidate.yml +0 -0
  187. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.github/workflows/release.yml +0 -0
  188. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.gitignore +0 -0
  189. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.opencode/commands/autocommit.md +0 -0
  190. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.opencode/tools/specrepo-autocommit.js +0 -0
  191. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/.opencode/tools/specrepo-autocommit.py +0 -0
  192. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/AGENTS.md +0 -0
  193. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/CLAUDE.md +0 -0
  194. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/LICENSE +0 -0
  195. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/MANIFEST.in +0 -0
  196. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/README.md +0 -0
  197. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/build-semantics.md +0 -0
  198. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/drawing-extensions.md +0 -0
  199. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/manifests.md +0 -0
  200. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/neutral-model.md +0 -0
  201. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/project-configuration.md +0 -0
  202. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/public-api.md +0 -0
  203. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/spikes/curved-geometry-ifc-bounds.md +0 -0
  204. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/spikes/format-feasibility.md +0 -0
  205. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/toolchain.md +0 -0
  206. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/two-tier-contract.md +0 -0
  207. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/docs/viewer-delivery.md +0 -0
  208. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/pyproject.toml +0 -0
  209. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/setup.cfg +0 -0
  210. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/__init__.py +0 -0
  211. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/__main__.py +0 -0
  212. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_locking.py +0 -0
  213. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_project_loader.py +0 -0
  214. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_project_state.py +0 -0
  215. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_scaffold.py +0 -0
  216. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_transaction.py +0 -0
  217. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/app.webmanifest +0 -0
  218. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/assets/hdrTextureLoader-BGQvgh0h.js +0 -0
  219. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/assets/mesh.vertexData.functions-ayNlGC5K.js +0 -0
  220. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/favicon.svg +0 -0
  221. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/_viewer_static/sw.js +0 -0
  222. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/artifacts.py +0 -0
  223. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/build.py +0 -0
  224. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/cli.py +0 -0
  225. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/context.py +0 -0
  226. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/determinism.py +0 -0
  227. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/drawings/__init__.py +0 -0
  228. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/drawings/_catalog.py +0 -0
  229. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/drawings/_validation.py +0 -0
  230. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/elements.py +0 -0
  231. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exceptions.py +0 -0
  232. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/__init__.py +0 -0
  233. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/base.py +0 -0
  234. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/custom_view.py +0 -0
  235. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/__init__.py +0 -0
  236. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/annotations.py +0 -0
  237. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/dxf.py +0 -0
  238. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/model.py +0 -0
  239. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/pdf.py +0 -0
  240. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/primitives.py +0 -0
  241. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/projection.py +0 -0
  242. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/drawings/svg.py +0 -0
  243. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/glb.py +0 -0
  244. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/ifc.py +0 -0
  245. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/quantities.py +0 -0
  246. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/renders.py +0 -0
  247. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/exporters/step.py +0 -0
  248. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/geometry.py +0 -0
  249. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/manifests.py +0 -0
  250. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/project_config.py +0 -0
  251. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/py.typed +0 -0
  252. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/recipes.py +0 -0
  253. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/runtime_sync.py +0 -0
  254. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/build-manifest-1.json +0 -0
  255. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/design-manifest-1.json +0 -0
  256. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/download-manifest-2.json +0 -0
  257. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/drawing-annotations-1.json +0 -0
  258. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/glb-manifest-1.json +0 -0
  259. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/ifc-validation-1.json +0 -0
  260. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/quantities-1.json +0 -0
  261. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/run-metadata-1.json +0 -0
  262. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/site-metadata-1.json +0 -0
  263. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/schemas/step-validation-1.json +0 -0
  264. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/site.py +0 -0
  265. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/.gitignore +0 -0
  266. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/README.md +0 -0
  267. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/config.py +0 -0
  268. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/drawing_annotations.py +0 -0
  269. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/generated/.gitkeep +0 -0
  270. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/model.py +0 -0
  271. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/templates/project/pyproject.toml +0 -0
  272. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/units.py +0 -0
  273. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools/validation.py +0 -0
  274. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/dependency_links.txt +0 -0
  275. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/entry_points.txt +0 -0
  276. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/requires.txt +0 -0
  277. {python_cad_tools-0.1.23 → python_cad_tools-0.1.25}/src/python_cad_tools.egg-info/top_level.txt +0 -0
@@ -7,8 +7,18 @@ stable release is published.
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Fixed
11
+
12
+ - File names in the viewer's documents list show as written (no forced
13
+ capitals, which turned `test_front.dxf` into `Test_front.Dxf`).
14
+
10
15
  ### Changed
11
16
 
17
+ - The Hosted capture sheet explains its one local download: "Save this
18
+ picture" saves the captured image as a PNG, with a line pointing to
19
+ Request documents for drawings and models. The technical view-description
20
+ download is gone (the request still carries the view), and the build's
21
+ files are headed "Ready-made files (whole model)".
12
22
  - The camera does what the page can offer (makeitours-website#5 owner
13
23
  amendment). On a Hosted page it captures exactly the elements visible now,
14
24
  as Layers leave them, at the current camera angle; selection plays no role
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-cad-tools
3
- Version: 0.1.23
3
+ Version: 0.1.25
4
4
  Summary: Typed, headless Python tooling for CAD/BIM models and artifacts
5
5
  Author: Brandon Benge
6
6
  License: AGPL-3.0-only
@@ -0,0 +1 @@
1
+ {"entries":[{"media_type":"application/manifest+json","path":"app.webmanifest","sha256":"80ad27439df65fb6defc9e30ec2fe782226622e006675e157fac4d145b000661","size":389},{"media_type":"text/javascript; charset=utf-8","path":"assets/animationGroup-DHMjljmB.js","sha256":"ca6315fc8beeaf754029a36126ac91b2ac5c2954b92912b0265027ac69107523","size":35489},{"media_type":"text/javascript; charset=utf-8","path":"assets/bakedVertexAnimation-MGFbbw7F.js","sha256":"ca2cef41de2ff1b4738eeaee9bad0442e8e0ce80f0fd1c8b0a2714ca5933a370","size":15843},{"media_type":"text/javascript; charset=utf-8","path":"assets/basisTextureLoader-BPZV974Q.js","sha256":"32e846ad9a8ba87d72f30c3c5bac0c17affdc979436ba35f19bf342bb443d76a","size":7960},{"media_type":"text/javascript; charset=utf-8","path":"assets/brdfTextureTools-B1t2XUsh.js","sha256":"39b2c323b22d686877126c477d8e22b6bf96292fd3697e1848060d777698f24f","size":60470},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpFragment-DCxLmG61.js","sha256":"b2b3e0376a50e0127450dabbecc8746dfabfe1bcc3e2d775cef85ec6879e9fbc","size":8075},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpVertex-0oYjoQMQ.js","sha256":"76a2cc08400bdfa6d5dfedc9ca5652f80e01d8ac11f1a21edbe6a4f9b150fd11","size":698},{"media_type":"text/javascript; charset=utf-8","path":"assets/bumpVertexDeclaration-BGUPjxym.js","sha256":"9d450c874fd25459b1408091092e9ae00d52af8f6646ecaa2357af64a8ca087a","size":393},{"media_type":"text/javascript; charset=utf-8","path":"assets/clipPlaneFragment-DD2JPAF1.js","sha256":"61859f93acb096ff11f46df1886b7e550c7079d3d018e020023ac7950b6cc75b","size":1275},{"media_type":"text/javascript; charset=utf-8","path":"assets/clipPlaneVertex-DN96wmQc.js","sha256":"01ea057207efff86e49350c75231b90f87f7a5643e1d402916c9c1fbb15edb97","size":1356},{"media_type":"text/javascript; charset=utf-8","path":"assets/cubemapToSphericalPolynomial-CF0hkqTs.js","sha256":"d36ed30163a7e1dcea57738625f280ef82a024cc4ab83f2d695309d8f3c54cee","size":3667},{"media_type":"text/javascript; charset=utf-8","path":"assets/dds-B77UKtBn.js","sha256":"7cfa5c6c067ce30381dc96c78f5e59764766518858df12834d07e8abf12a1e80","size":161},{"media_type":"text/javascript; charset=utf-8","path":"assets/dds.pure-B715oIs0.js","sha256":"4f7415b37079aefab8f9e5a3942a054621ddd905eea1244b7021b2b808ac0c06","size":7046},{"media_type":"text/javascript; charset=utf-8","path":"assets/ddsTextureLoader-7G8Qcc0n.js","sha256":"626f970278e2ce4415086305057f64faa40bbfe9424ab7a0e2add02d7440eb4a","size":1310},{"media_type":"text/javascript; charset=utf-8","path":"assets/default.fragment-tZ0oStCg.js","sha256":"204a5161e487a7fbfaf29b16b927da14e21adf1b3e91fdc0fa1526f38999b70f","size":25362},{"media_type":"text/javascript; charset=utf-8","path":"assets/default.vertex-C-PbmgtW.js","sha256":"0bb640e22d4d28329b53a86c22cee041b39e4949eec849d016d828d6281b0725","size":9451},{"media_type":"text/javascript; charset=utf-8","path":"assets/defaultUboDeclaration-DA6nmrud.js","sha256":"4aeacc565607c9efbfec1d94d000cce24b44c23a075ca5d773b28154d9b25bf5","size":1624},{"media_type":"text/javascript; charset=utf-8","path":"assets/envTextureLoader-lsNPYPhe.js","sha256":"56cdbd5de291e8507762dbfe82a990933fd750643e0082c22aa3f76aff72845c","size":1649},{"media_type":"text/javascript; charset=utf-8","path":"assets/exrTextureLoader-SjwgJAc5.js","sha256":"7e5a113d6371c6f53cc409c68b24bd68afacbfc79feec39a799080a92f4d645e","size":14187},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphApplyForceBlock-DTjrMcjl.js","sha256":"cbd51efb1f4e742cee39bb9d2b50fb082e4cf9c794a94cf9c20594616c46b763","size":675},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphApplyImpulseBlock-DamPsUZI.js","sha256":"48e287fae57dd85c92f564751e631138c6a58471f25fa9d7a0160503d69c4563","size":691},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphArrayIndexBlock-rHV_9Jtd.js","sha256":"bf0cd4bd0ba9d4949f9e6e4353c0e3bab6e09030c3c1725b90385adf17ee1795","size":650},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBezierCurveEasingBlock-B1Mzuvj7.js","sha256":"a956171c7cab65a5c8148e67d5f15d44e119dc0b744422f3a36ee9fa19ea55f7","size":938},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBinaryOperationBlock-BYSm-X9P.js","sha256":"36ed1cb569c03b039bfd727afdea85b40b31002b15e524ddf950eab0b8973892","size":375},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphBranchBlock-DLLGKTbV.js","sha256":"2762f69b17a8572047c5905078e0f240617e5e1b5918a11ac02dc62dccc761f7","size":529},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCachedOperationBlock-DyT2_YKh.js","sha256":"bc4975b5b56e6f762a76e162024567610251f79085c3de3d5b11df7ae768c84c","size":688},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCancelDelayBlock-CLlaui7O.js","sha256":"95fa188f2e53dea97ffb646000c7256ae4b2c56094641ed79ee4fc7deea6f168","size":592},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCodeExecutionBlock-ezmwTbI5.js","sha256":"034e90a2ef3c24e16464f6d565ea5c92d4f577413d5d0246f2e138e2db9e81ab","size":470},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConditionalDataBlock-BWCBa9B7.js","sha256":"6117a2150464f2e22c7bff3a997b13a0b4555cdbb679e8bf29b925a26c8547c5","size":634},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConsoleLogBlock-Tq8YSBFN.js","sha256":"c00ef14456822e5018bec00fb54c10cb8492575447c88c8291a721fb45daa0ad","size":1416},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphConstantBlock-B56RKoF4.js","sha256":"dd843552a1ba2dcc178a03aaf0f9fb88422bfc18a87a00a7dadca135d6fc6952","size":499},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphContextBlock-CjuSDwmc.js","sha256":"2e89ba8b1780ed0d6e02f911a1fd625a1f3c187ea024728ff2ef3eadd418adb8","size":540},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphCounterBlock-Bmk4MxN7.js","sha256":"7243be084825b48438c6a48df8086daaca0c27d41af27d066c9f3b3eefebbfa8","size":630},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDataSwitchBlock-Dvi9ZvsH.js","sha256":"7765032b6c0336a496697b965b269408521d60d8ed6a8811be9b4fae24db1960","size":905},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDebounceBlock-Bj7RTBgv.js","sha256":"f9c9faa255b2326f4540791c060c60ec299a64c1a8950735af8f7652af7fbadb","size":768},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDebugBlock-CGd8wpR5.js","sha256":"b7915e8d306e9dd294f45c994d6c77d9f13255021e619efe1771b007a5ec8e24","size":1450},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphDoNBlock-BGZpjQAX.js","sha256":"eaaa6a60c52917e0ef79a075ec52f6feb7b44382638aaae8015e0a7c0b34207c","size":771},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphEasingBlock-BzLE44T-.js","sha256":"e2efc4dd54c95bf707f41514d89d5aabc3b84a4c78e89c41ffc75ff3216cd4da","size":1627},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphFlipFlopBlock-D8_88xUA.js","sha256":"648bc7417049e75757dcaf3eb81ef04a84fd56eb482801d034ca7f987684d9ea","size":678},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphForLoopBlock-CF8dXGIg.js","sha256":"758af15248ffe70b9123d8b50288c68cb2e112de7ca3962865759d73996b5ee8","size":1109},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphFunctionReferenceBlock-D_YGg8QR.js","sha256":"4c7882609e0eaad19a9b5e0940ac8a46cef40d024052f466ff87569c9f5c2794","size":714},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGLTFDataProvider-B8SiMj9v.js","sha256":"133dde4768c2eaff19d84ff2f3fc41cb2d8a674e64a47b531eb1c21c67fc679b","size":418},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetAngularVelocityBlock-DzEtWSf5.js","sha256":"de4660405341704525895e3a56af6bfd9ca411124dc82ed1625ff0dae8322fe9","size":657},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetAssetBlock-CIhvXJWA.js","sha256":"78f7ee002ddcd8cb04d0bc31c597660103e3712220ecf0aa2a2cdcb52c3703f9","size":639},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetLinearVelocityBlock-DqgIoJQv.js","sha256":"835bdae7c6831679a14f898453d6dd80b9829927edd48dc4152ebffe22486260","size":652},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetPhysicsMassPropertiesBlock-CUHG6HMx.js","sha256":"cd3b3c73700cb595860b3766ca5c0eec0ace10ce70cade25e14234aa5077b583","size":801},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetPropertyBlock-CoS75-c_.js","sha256":"01123b7282c6d02ef98d2742fe2df9f250354c8d06af59864d52a952d8665fff","size":930},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetSoundVolumeBlock-1HiYij4X.js","sha256":"0babd0e070755d647195f7940711596f1e4b2f7cad4cde2e175889ad4b9ca77b","size":485},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphGetVariableBlock-Bzpa8R9d.js","sha256":"b29126ba5192321b6ed0a0cf0c809245e3a380bd981c3c06df46a29470984585","size":545},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIndexOfBlock-ooox6LH_.js","sha256":"1071d450e77b6adebb3c1917f5684dad3996b138e70475955f25e60ceea6f56c","size":608},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphInterpolationBlock-Df2jq977.js","sha256":"40bfe8832e02ddb63065f8d467c9348bae5da508ba46d2449a05d2e941fc0b27","size":2089},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIsKeyPressedBlock-B6KLFUdL.js","sha256":"5ed037140eb59dde354dd19511e324f8ce7d2a873bafb478b9bc249b0cb20d3f","size":1162},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphIsSoundPlayingBlock-CZe8gZ1b.js","sha256":"6a2b4a501ec0a6ff89706f626685ba4742be42ffe2602946a69f3ab60a3027f3","size":501},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphJsonPointerParserBlock-gyM8wAf_.js","sha256":"1367aaf710e7579b1ba2143e08efba0c11dae6730505fcb7902da2dcf777cb6f","size":3028},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyDownEventBlock-CD-zMI2Y.js","sha256":"7314c9a1f6a493e18ba154825c1c46cfb100b7907dd32abe459bb05c050eb16d","size":489},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyUpEventBlock-dmq771Ye.js","sha256":"97cf95efc65000ad03a909b2f4802f1c61c8a1c76ddf37ee637a86467c07ced9","size":282},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphKeyboardEventBlock-DcU45hIv.js","sha256":"2117d76bc0e2ba04e022a41a3a182cb1230502fcf3264a812f9da1f8dcc2786f","size":962},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMathBlocks-D3K59ZYx.js","sha256":"a977df676262f43233817a7323622a2a35c96cffa35895593769957529d2e51e","size":18512},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMathCombineExtractBlocks-B84bxb6q.js","sha256":"a90426668e8f4766d7adc7781b44c7a22fc9a38767fa752a7ec66a5f140b6d9a","size":7966},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMatrixMathBlocks-DvWcRK48.js","sha256":"83e31004735083e7c7136745bf8b68627842eeea6e6c74dc163f10feb9cefbc6","size":3570},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMeshPickEventBlock-D1QtxJNf.js","sha256":"2ea63d2f8a6d9e9a8b75276214aa00344ff139858d7bc339f1802dc46976c388","size":1394},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphMultiGateBlock-BCpUwYzV.js","sha256":"0544673e9dbb70a8481f203f669323614345cb2b322fa8fcdf05b898c4bae8a6","size":1661},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPauseAnimationBlock-DRNt_SDm.js","sha256":"05b37388dafa1c2dcfd55f25ca81b6a5e5cd8e70540797c08de5cb783d3e4ed0","size":455},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPauseSoundBlock-Bg-E3ycn.js","sha256":"f9c30fe352d112ae5bc4b16c3e079816591e9d817c3941042e0f680d1c433d73","size":552},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPhysicsCollisionEventBlock-DNyeMY32.js","sha256":"417f0d4acd98df7190ee18d3ee380a5d63abbc380e20ecc5e5cb1508fed89447","size":1678},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPlayAnimationBlock-nxquuNCT.js","sha256":"014190c8ab8bf49705b3a19223ea606bdb10a97489a6aee9b81be6f0539bfefe","size":3736},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPlaySoundBlock-Buah9Tkc.js","sha256":"7d50bd1dc092e7ffd12c5b6ece66176fc1724e558dbff8d011582692b88d0502","size":782},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerDownEventBlock-B9bwUWa1.js","sha256":"27bf640824367e5663492dfa9503325c32c5ddf99370a7d526117515e848bfc5","size":940},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerMoveEventBlock-BM0TL_xE.js","sha256":"0c60ab0b27a80af4c9e361932d83231d1b1cd300d309f155b20f98b487981540","size":958},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerOutEventBlock-CJgEh8yV.js","sha256":"a7279edd8fbd6c5950a2f0588a4bfcbac3f4e1c7a72b91511ea1b6e70fb646b4","size":831},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerOverEventBlock-DTHG-KwO.js","sha256":"137596f26ec7dbbd251a3f9ce2f4491da73e3391863d6caeda861bd5415e3084","size":842},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphPointerUpEventBlock-DMGZmwMB.js","sha256":"7406d1f1ab9a544106942eabcba9e9ae6e32899a61e96ab0c8102918035ca316","size":930},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphReceiveCustomEventBlock-CSI8HkWd.js","sha256":"95dde06ad3582698dbb2902b81998a40d3057b36ed50d9ff8fc4571cfd3c9462","size":1530},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSceneReadyEventBlock-BE_6AF0x.js","sha256":"49bc94bf57f0cf877c89d675fb226092900d93db8b80d7788cfb02dd37f296b7","size":452},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSceneTickEventBlock-zQ9Lr3Qw.js","sha256":"f50be96e4090afbcb685d5002796c3a8e9dc8021200a15a6078dd8b35c3cfde9","size":635},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSendCustomEventBlock-rOgY8mka.js","sha256":"40ac07f6e0f1278fd3043eb8a71265bf2a7b886e606bf7729fd02e3a73f8dccb","size":926},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSequenceBlock-BY_DG0RM.js","sha256":"cd80a6c659df205af9e7aa4f978d376e42ef369b9bdc2ae66e44ee2279d2aa1e","size":777},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetAngularVelocityBlock-BWkX9sU3.js","sha256":"8562f95814a4786158f275a613f21947ff003c99ab783dd15e169eee509ae6c7","size":633},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetDelayBlock-BiQhdbqp.js","sha256":"c160c4722aebe18650d3d3f16fa432d00ef400f63b41a29f8ebb35ca73230c43","size":4184},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetLinearVelocityBlock-6Stexwnu.js","sha256":"162cfb308bcc2e8ec66866f0d7076b3b9af744f154eaf288a9781d91367ef87d","size":628},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetPhysicsMotionTypeBlock-BhbU9SXg.js","sha256":"652e1fc4d1c991dfb7ea3048408b868b0920484fbccb9d04dd3023c735a169ae","size":644},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetPropertyBlock-BVIo1W8-.js","sha256":"c3a90cb6959fba8bf203eaf022e9bba2d5d7cfe13e1314752b7301e66e73d64f","size":1408},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetSoundVolumeBlock-BmVOXY0c.js","sha256":"8d2078c38e8ad66a8de2b94c263a6fda15d2b4585865bf4d470140308946ff65","size":601},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSetVariableBlock-BjKR1mgz.js","sha256":"c731138b377d4aee8a8c0cff570c1c81473d2f01986f868e365f36ddf1b602f3","size":1228},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSoundEndedEventBlock-Dw-5bxJv.js","sha256":"925dca436d37b11e61f5c3b3bc54790f2b6f9055938a3c2ac965975ed780681b","size":967},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphStopAnimationBlock-DrLtPiEv.js","sha256":"17352a74d5f34b2e150b0088d04e07973a34ff80209b33b965a34449a053e9ed","size":1889},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphStopSoundBlock--MzW9jji.js","sha256":"572ccb8d1bbea341b7780509ea66c8a5a1df6e5e6aa7061cd697c673f004142f","size":496},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphSwitchBlock-X2ZoX6tx.js","sha256":"5790f67bda8cc8d4fddb4e69015d04f0a66965b40298ae2ee7108dbf50f03441","size":1135},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphThrottleBlock-BZ2PAian.js","sha256":"0124cb4fe388f0b3eb1adb90ec303b8184ca6d7b48238d023a729d17b5d3e15f","size":1363},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphTransformCoordinatesSystemBlock-BEBk8xav.js","sha256":"7584db8963dd2077805bd9874a8a0d4e70a6a8857ece1871cc4f653c20386bc7","size":968},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphTypeToTypeBlocks-DPY_kyih.js","sha256":"a5be9949629bff7b7cd3a442219ce3ae953ffa45d3d5a3fb30d18b4e80b4213c","size":1282},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphUnaryOperationBlock-D7h--Cdt.js","sha256":"f21ac8275492ac550b23c86c7065b2ca09b22001f260f19101024230231b2cf2","size":303},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphVectorMathBlocks-2EgD4-kQ.js","sha256":"61888bbc04fa30f700a0f6a29df8fe08285ce6745710bb484928fb2d1677a7fd","size":4726},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphWaitAllBlock-CmOzDK5N.js","sha256":"65a61e33939826e76c3238b9265ebef98d066a969dacafa18ed3b1dc94dc528b","size":1532},{"media_type":"text/javascript; charset=utf-8","path":"assets/flowGraphWhileLoopBlock-CbejmuGP.js","sha256":"90ed89e746e8531c1a9fca535f3ee328d1433278fc6c3eb5cdb759746ddf538a","size":863},{"media_type":"text/javascript; charset=utf-8","path":"assets/fogFragment-BTBA7CTP.js","sha256":"2c16b998a686e4be1369a8a18adffcf1f7d7891ef0305dbccca761a6c0562261","size":1471},{"media_type":"text/javascript; charset=utf-8","path":"assets/fxaa.fragment-C2eATj9H.js","sha256":"4bbeaa72e31ac337eda38ece6e8ba51f6642ad66340a33b16d8268f2ddd68441","size":6431},{"media_type":"text/javascript; charset=utf-8","path":"assets/fxaa.vertex-D0i6Mi6U.js","sha256":"eb7410974bc25dac485b5fa2ff31fdb9f0e24af46b6906aa045500cfb7252292","size":1438},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting-DSSuHojJ.js","sha256":"50f525c88b6c72e7db389c2ff0f06c6891b3a5c6bf5841f3b755615174e47acd","size":14395},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting-z1QQSYr0.js","sha256":"ef4db27099cb67cb64d46f7440c11fe0112cc873f98d6feb186732f40fb8fb8f","size":14631},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.fragment-BIkORghW.js","sha256":"cd6f7346592e3c9493e9f77c0c43e6b57c7c1e3d67c4f18f849f4ebca08c5edc","size":1541},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.fragment-CPhYpx9O.js","sha256":"645a10a918c29a84b1723ed7611f6a5c6b5fb17f0cf422caa3df6136ee6a77c1","size":1812},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.vertex-Bb7V--au.js","sha256":"1ec8a8c4324f1d82a296dcdfed80b29e5bd37b9638dd987256bd4b11af5f4478","size":4904},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplatting.vertex-DlNYcW-d.js","sha256":"6d763acd2bce9f63cf7cdfc612da4689c32627515e000ee83103d88ca37c3f72","size":3748},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.fragment-3ZOEWhKY.js","sha256":"25909b7a406f91470efdb0d84578836470c856d77e56213174b83d9c18463b07","size":1488},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.fragment-C2JvL2AM.js","sha256":"cc15156da8e4563a734245642e6d90dbc8f0bdfb48272cae7a5916dac7924359","size":1984},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.vertex-3lxrHk65.js","sha256":"69448c5aba15455822849a25f12c73e96897f4b755fcf6531c9a53d31cc08f98","size":1802},{"media_type":"text/javascript; charset=utf-8","path":"assets/gaussianSplattingVoxel.vertex-CwZjSh-j.js","sha256":"f03d06ae549f4b9876f173153077eaa964da7a9469958eeacf7cdb25f89eb217","size":2611},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.fragment-B7Bs1-FX.js","sha256":"66221fe380ba4ec2b71d15b2f1741cc7b80be89daa3c929b5ba68e9350eb7077","size":10410},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.fragment-C9e-kv94.js","sha256":"69dde45854391ca648b5224b808a7ea2af797494f2cd64852513b4aae34e3283","size":8171},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.vertex-CxQUKoXe.js","sha256":"4dfc4fe6b547e26f15ee3afced27f8711e0a5132fbe6b525dc4cb4ea6a246110","size":9012},{"media_type":"text/javascript; charset=utf-8","path":"assets/geometry.vertex-DLLF9YL6.js","sha256":"b2dd4135dcc63e2c1cede06dfb15092c96e77c498934664561894899a6f3a389","size":7601},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowBlurPostProcess.fragment-DJ7GA0Ms.js","sha256":"e87073d8c79f7adc9e30aab28c55ae5e0c6ed310cd8fe311cb8b7bfc89817140","size":1409},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapGeneration.fragment-IiyeP0wJ.js","sha256":"4966f4ec9c8adb0cd22f1419edcdf9f6252057732fd664a57f29b70555cfde10","size":2530},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapGeneration.vertex-D08z2Pqo.js","sha256":"4baccec70ab9e40365d2d602846be3a4bc3c9809e4c862969df5544955421d49","size":2798},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapMerge.fragment-b_QAS0QR.js","sha256":"e229b4047908061b36ca6abf914425bd6132fe7147eec8c394277f3f83e2d243","size":1059},{"media_type":"text/javascript; charset=utf-8","path":"assets/glowMapMerge.vertex-CMSyDSpX.js","sha256":"fb902f4090d23cf157721919ba73f379cc6ffcad0c06aaf430cb7aca9cc2fe2f","size":545},{"media_type":"text/javascript; charset=utf-8","path":"assets/harmonicsFunctions-DT0Dhsff.js","sha256":"ad96eec5d0bc909014b31bc9faf2d622572c45c33d0fa691bc2272d76b069b40","size":1420},{"media_type":"text/javascript; charset=utf-8","path":"assets/hdrTextureLoader-BGQvgh0h.js","sha256":"3cca41d849d41bf1df7aef34b4f8b5ef30440e716d894158207bd12b97236953","size":2391},{"media_type":"text/javascript; charset=utf-8","path":"assets/helperFunctions-Qma8-N-8.js","sha256":"b459a78799ba2b6534dc1f114a3d2a3f4523a5c4e861368d7eeaaa532e266f7c","size":6488},{"media_type":"text/javascript; charset=utf-8","path":"assets/iesTextureLoader-VePZ3QkV.js","sha256":"add59d1f8dc4bfdfd4024479e40a9263e7cc282428111ff62fd4f49a2a55155b","size":2701},{"media_type":"text/css; charset=utf-8","path":"assets/index-C7PQDOQI.css","sha256":"6470bd581c0bb51e5a573a87e1905a97b34202aa83852ee455899694582a9d8c","size":15822},{"media_type":"text/javascript; charset=utf-8","path":"assets/index-Dl0bWA0T.js","sha256":"54600013a7ff5accad165393cfe11466d0858915c5af680609c350c146781780","size":2345174},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.fragment-ChxVYEAV.js","sha256":"eb5ea3160007cb8190668de0fa9dba9a3714167c6feafbfad5ebaac11512a5a5","size":2851},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.fragment-DdUkyZYa.js","sha256":"c53abbc3598096968ea6b9c155f08502919efe4d38029a0c7f18d5d81c2d025d","size":2311},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.vertex-CfFBINQK.js","sha256":"2b14374e6d2fe2a9ce01defbdb2fdf7801fad85aaa467b1e64bc92ae080181d4","size":899},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlur.vertex-CsUEAlHp.js","sha256":"2f5c75d1c2762d563bf8a31924efbc0a5fcd6806259c57c761dde8916723b64f","size":1064},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlurVaryingDeclaration-BfbSJvpD.js","sha256":"f8abe843015ff689fd2f972a0e094419844bfd8b9c51e2ab7ff157ad269c87ee","size":211},{"media_type":"text/javascript; charset=utf-8","path":"assets/kernelBlurVaryingDeclaration-YWfJbImG.js","sha256":"9d4a273b90942432517d3bedbcc04e5055494eb0166f1f09a8d7ad55b1cc3fe0","size":221},{"media_type":"text/javascript; charset=utf-8","path":"assets/ktxTextureLoader-DyPXrWbN.js","sha256":"eae31aab5d4f7e3f6e87e9436ab93351b467b91e41a63b56b05b025e7cee6095","size":14979},{"media_type":"text/javascript; charset=utf-8","path":"assets/lightFragment-D1PDwXO3.js","sha256":"fec96d135fa1a11760dfd3c6bca92e0da172a80ba3885bc1fb1ca35dc1a4f164","size":22605},{"media_type":"text/javascript; charset=utf-8","path":"assets/logDepthDeclaration-DzsADhSm.js","sha256":"2bf8f1f817950fc5e5344d9b7db45f71e652dfeb4bd77827d46dfd427e5c5e5d","size":280},{"media_type":"text/javascript; charset=utf-8","path":"assets/logDepthVertex-CVDFVyev.js","sha256":"0a520d67081c3b4443916539907abffd36aea1f75af5a7d5e57fbc04741a6077","size":826},{"media_type":"text/javascript; charset=utf-8","path":"assets/mainUVVaryingDeclaration-DapA_gli.js","sha256":"e0db3c3339065a1b32c451ab3ed14103b0d44695bac95eaee4770b6a10bc4189","size":238},{"media_type":"text/javascript; charset=utf-8","path":"assets/mesh.vertexData.functions-ayNlGC5K.js","sha256":"109b0c291f78ec6b98053b23c7a9ce01eb8bcee909a0964ce337a68a9b4bc61e","size":960},{"media_type":"text/javascript; charset=utf-8","path":"assets/meshUboDeclaration-ZqbKD_Z-.js","sha256":"179e0524ab2b208a40190453d0c66511d69f5b93cb3155242b3fc82d1dae45b2","size":278},{"media_type":"text/javascript; charset=utf-8","path":"assets/oitFragment-C5HMolir.js","sha256":"c20ff4d948a749c0bc60f79d380da0660f4273ff89fb8fd1970d3bef5b5b475a","size":52427},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.fragment-CIMBKpMg.js","sha256":"4c397749767811ec7df213b5a3f5e84918b13ac3dd45efb822b9dd50f96cb3fc","size":86994},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.fragment-SdCxmuNh.js","sha256":"e6ce330a7f12465085ae54d798f2ea901d8699f97a56ada8d50ab66d52987ee7","size":89838},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.vertex-CsVq8zRS.js","sha256":"f7a485efc087fc5c44e985875143534851027299d58423dbaee79daf406f45e1","size":20214},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbr.vertex-D6KDFxU7.js","sha256":"8e71315746b60153cb1529a2a942f7be41547e5fce52d25f81c4fda79a2f5517","size":17340},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrMaterial.pure-crOU97Ej.js","sha256":"5843cb800f0a9ca509ca01261a361e6e5714ec7b93f49eafb05e1017f5a32305","size":134156},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrMaterialLoadingAdapter-BU5tmfb_.js","sha256":"41c36674fab68613aedafced188e1a55fc877fa8c475b21c0abb880d26fb6165","size":33218},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrTransmissionLayerData-CSoLogLq.js","sha256":"5b8749a1bf157e5c27b09710f2065fd67193eddf6103bc1905d4ff2a4cffd8d9","size":17708},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrTransmissionLayerData-Zc5U1uW1.js","sha256":"e874a340617a0626f0a6ecbe73d57d31c1c06a5be98fd44c800816db7cd1cc0e","size":17043},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrUboDeclaration-BHnTD3Hj.js","sha256":"10b9d396eca55855ff01907cf6aff3bcefd3e026f1b092ea39c6f6e85d7313a0","size":3791},{"media_type":"text/javascript; charset=utf-8","path":"assets/openpbrUboDeclaration-qTe8FOQM.js","sha256":"1aa4c07c49aeac4199d164791e35ff587b68f020d70b6b52eeb0b39f530c4a97","size":5221},{"media_type":"text/javascript; charset=utf-8","path":"assets/packingFunctions-BTo087et.js","sha256":"b3617721826d1572391ae0544a7571c9969a88cbe233ca41ed89c4d7558cfd4a","size":528},{"media_type":"text/javascript; charset=utf-8","path":"assets/packingFunctions-DkOVZ6dP.js","sha256":"f0ca5d7bb3b900d753492cce6951c86da4b933b731b0de7a184c13b66f875cfd","size":562},{"media_type":"text/javascript; charset=utf-8","path":"assets/pass.fragment-Fvo7rkse.js","sha256":"f64f9f0c338552815cbcbd8a475e45eed58871b72d706f235cc6a8396ae33cda","size":451},{"media_type":"text/javascript; charset=utf-8","path":"assets/passCube.fragment-Bpo9R9Mm.js","sha256":"f179704bc956d333c0ae15f918f33923c501417e26a31035696bb411fc2f8f89","size":822},{"media_type":"text/javascript; charset=utf-8","path":"assets/passCube.fragment-Dx2u9rd3.js","sha256":"e26c12dc37aa701eba1b9c0f26b7146dbdb34f701665eb5c6b7b553aab734e3b","size":1131},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbr.fragment-CsJ83gJP.js","sha256":"d0dfb984b55ad0b2ef758f7ab0bf7cba93c9732b3c6a259c7fba9f05f8a4966a","size":93721},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbr.vertex-Bjk8gi5S.js","sha256":"4410ac590fa10e8a9827bb09995ad2361d5c48fa5fb13ed5380001d15865aeb2","size":14451},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrBRDFFunctions-BIkS5CLc.js","sha256":"aa4126b28a9180ff2e8c360980c8b03b7d1073f2b0df2607419d7ef650d4b74a","size":12760},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrDebug-DXECYWn5.js","sha256":"21b552f413a68413fae22982561679b94c116312f63891cf2520e41c091f486b","size":43522},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrIBLFunctions-D3D1vikc.js","sha256":"ca843d2c69c107605edb4a629f3320b072576d818e7903dc3b1c96613707e92a","size":2720},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrMaterial.pure-D27tv6kx.js","sha256":"b1c517a6798667323a17c16604bbdb81b9d18d49a10b6f47067bd555a1c02a80","size":134888},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrMaterialLoadingAdapter-B2QPSPXm.js","sha256":"2746be4b70925067cba2756608e98ecc2faf53527ade4d82f5cb91250d6bb25c","size":12426},{"media_type":"text/javascript; charset=utf-8","path":"assets/pbrUboDeclaration-CRUyhK8m.js","sha256":"01a03177174251d93511031dd0eecd08db3b3dbe9ad1fb286eac2eb9140a29ed","size":2398},{"media_type":"text/javascript; charset=utf-8","path":"assets/postprocess.vertex-BVUTk21B.js","sha256":"29fc6028b16916819a0e5a13d8257a89f74e06dd80770c9c3b53ab74b28ba041","size":583},{"media_type":"text/javascript; charset=utf-8","path":"assets/procedural.vertex-D4hY2WEA.js","sha256":"70c093619d69b1dcc720d68fc5fe545afeb6760953f290eeaa6a97173c205031","size":612},{"media_type":"text/javascript; charset=utf-8","path":"assets/procedural.vertex-WHGaOSkN.js","sha256":"362b0002f25d9f4d2c398d346a0aab5525dc91eb7609f63851c427eac7ff0722","size":472},{"media_type":"text/javascript; charset=utf-8","path":"assets/reflectionFunction-Qpn0UPP2.js","sha256":"fba44ff5434c257af4e09e75b1c8e9cbe95050e006d767a8794a9c1b5c86908e","size":5231},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdDecode.fragment-CUYoCQBj.js","sha256":"b746a4abd5765c29f5e32378bbf4cb6c93f98e5ecffe367a7dfc7fa21cf182bc","size":671},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdEncode.fragment-Cg9wCk1i.js","sha256":"9c368bf6362d7a817084cbaadac3e40d228317d366b0a8a36138164a68a335d7","size":477},{"media_type":"text/javascript; charset=utf-8","path":"assets/rgbdEncode.fragment-NifDqc2S.js","sha256":"53de2d33daed59d73cbc4b67955535094d8af0bef63e31bcb5c88a887eaafb54","size":662},{"media_type":"text/javascript; charset=utf-8","path":"assets/sceneUboDeclaration-D3Naneg4.js","sha256":"3b2669567fe6c999876702a02fa251270873c5b90fa85270c661671461a886b0","size":435},{"media_type":"text/javascript; charset=utf-8","path":"assets/textureProcessor.fragment-BUFM97It.js","sha256":"46f1c42b9fe4ba110565b23551abdbaafa863f63cc7d26030276e53c2d5cb90e","size":4377},{"media_type":"text/javascript; charset=utf-8","path":"assets/textureProcessor.fragment-BbKV5o42.js","sha256":"9b63982fbf1cb730e0abddd0700197aff50c8f0da4a92a8c3a310bde45a3a211","size":3490},{"media_type":"text/javascript; charset=utf-8","path":"assets/tgaTextureLoader-C_Gwe725.js","sha256":"afbdf144e24299ec0e5c42192a74e8dda9618e957aac6e9bf34145fc2fbbf6c2","size":3527},{"media_type":"text/javascript; charset=utf-8","path":"assets/vertexColorMixing-DXtapHBI.js","sha256":"f58ec30be9b82563b623857054b4599e8132d430fe9164e7fcd11726504a8471","size":22140},{"media_type":"image/svg+xml","path":"favicon.svg","sha256":"0af8d9f546677c4655fbd25bcded1339b5de603d92808201b14dbee6301dd846","size":2222},{"media_type":"text/html; charset=utf-8","path":"index.html","sha256":"5693b7f5abd250f31f9924ae547f8f4dec0d8a7e8e902197a72d716f0a91cab4","size":723},{"media_type":"text/javascript; charset=utf-8","path":"sw.js","sha256":"60ad840f556e65a4226633d0222eb2ce447627dac537c5d15afcf54aa5f44b5d","size":5019}],"schema_id":"urn:python-cad-tools:schema:viewer-assets:1","schema_version":1}
@@ -1 +1 @@
1
- import{b0 as A,W as F,b1 as B,b2 as C,b3 as k,b4 as D,b5 as W,b6 as K,b7 as U,aA as P,a4 as T,X as S,V as Y,b8 as z,b9 as H,aQ as G,ba as w,bb as X,bc as J,bd as q}from"./index-DMstpx40.js";class Q{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(e,t,i,n){if(this._events=new Array,this._currentFrame=0,this._originalValue=new Array,this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=t,this._target=e,this._scene=i,this._host=n,this._activeTargets=[],t._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===A.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=F.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,this._minFrame!==0){const a={frame:0,value:this._keys[0].value};this._keys.splice(0,0,a)}if(this._target instanceof Array){let a=0;for(const l of this._target)this._preparePath(l,a),this._getOriginalValues(a),a++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const s=t.getEvents();if(s&&s.length>0)for(const a of s)this._events.push(a._clone());this._enableBlending=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(e,t=0){const i=this._animation.targetPropertyPath;if(i.length>1){let n=e;for(let s=0;s<i.length-1;s++){const a=i[s];if(n=n[a],n===void 0)throw new Error(`Invalid property (${a}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[t]=n}else this._targetPath=i[0],this._activeTargets[t]=e;if(this._activeTargets[t][this._targetPath]===void 0)throw new Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(e=!1){if(e)if(this._target instanceof Array){let t=0;for(const i of this._target)this._originalValue[t]!==void 0&&this._setValue(i,this._activeTargets[t],this._originalValue[t],-1,t),t++}else this._originalValue[0]!==void 0&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){const e=this._animation.runtimeAnimations.indexOf(this);e>-1&&this._animation.runtimeAnimations.splice(e,1)}setValue(e,t){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){const n=this._target[i];this._setValue(n,this._activeTargets[i],e,t,i)}return}this._setValue(this._target,this._directTarget,e,t,0)}_getOriginalValues(e=0){let t;const i=this._activeTargets[e];if(A.InheritOriginalValueFromActiveAnimations){const n=this._scene._activeAnimatables;for(let s=0;s<n.length;s++){const a=n[s]._runtimeAnimations;for(let l=0;l<a.length;l++){const r=a[l];if(r!==this&&r._targetPath===this._targetPath){for(let h=0;h<r._activeTargets.length;h++)if(r._activeTargets[h]===i&&r._originalValue[h]!==void 0){r._originalValue[h]&&r._originalValue[h].clone?this._originalValue[e]=r._originalValue[h].clone():this._originalValue[e]=r._originalValue[h];return}}}}}i.getLocalMatrix&&this._targetPath==="_matrix"?t=i.getLocalMatrix():t=i[this._targetPath],t&&t.clone?this._originalValue[e]=t.clone():this._originalValue[e]=t}_registerTargetForLateAnimationBinding(e,t){const i=e.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[e.targetPath]||(i._lateAnimationHolders[e.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:t}),e.isAdditive?(i._lateAnimationHolders[e.targetPath].additiveAnimations.push(e),i._lateAnimationHolders[e.targetPath].totalAdditiveWeight+=e.weight):(i._lateAnimationHolders[e.targetPath].animations.push(e),i._lateAnimationHolders[e.targetPath].totalWeight+=e.weight)}_setValue(e,t,i,n,s){if(this._currentActiveTarget=t,this._weight=n,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){const l=t[this._targetPath];l.clone?this._originalBlendValue=l.clone():this._originalBlendValue=l}this._originalBlendValue.m?A.AllowMatrixDecomposeForInterpolation?this._currentValue?F.DecomposeLerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.DecomposeLerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue?F.LerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.Lerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue=A._UniversalLerp(this._originalBlendValue,i,this._blendingFactor);const a=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=a}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(i):this._currentValue=i:i?.clone?this._currentValue=i.clone():this._currentValue=i;n!==-1?this._registerTargetForLateAnimationBinding(this,this._originalValue[s]):this._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[s],t[this._targetPath]):t[this._targetPath]=this._originalValue[s]+this._currentValue:t[this._targetPath]=this._currentValue,e.markAsDirty&&e.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&this._target._animationPropertiesOverride==null?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(e,t=-1){const i=this._animation.getKeys();e<i[0].frame?e=i[0].frame:e>i[i.length-1].frame&&(e=i[i.length-1].frame);const n=this._events;if(n.length)for(let a=0;a<n.length;a++)n[a].onlyOnce||(n[a].isDone=n[a].frame<e);this._currentFrame=e;const s=this._animation._interpolate(e,this._animationState);this.setValue(s,t)}_prepareForSpeedRatioChange(e){const t=this._previousElapsedTime*(this._animation.framePerSecond*e)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-t}animate(e,t,i,n,s,a=-1){const l=this._animation,r=l.targetPropertyPath;if(!r||r.length<1)return this._stopped=!0,!1;let h=!0,g;const u=this._events;let c;if(this._coreRuntimeAnimation)c=i-t,g=this._coreRuntimeAnimation.currentFrame,this._currentFrame=g,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{(t<this._minFrame||t>this._maxFrame)&&(t=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),c=i-t;let _,m=e*(l.framePerSecond*s)/1e3+this._absoluteFrameOffset,b=0,V=!1;const O=n&&this._animationState.loopMode===A.ANIMATIONLOOPMODE_YOYO;if(O){const d=(m-t)/c,p=Math.sin(d*Math.PI);m=Math.abs(p)*c+t;const L=p>=0?1:-1;this._yoyoDirection!==L&&(V=!0),this._yoyoDirection=L}if(this._previousElapsedTime=e,this._previousAbsoluteFrame=m,!n&&i>=t&&(m>=c&&s>0||m<=0&&s<0))h=!1,b=l.evaluate(i);else if(!n&&t>=i&&(m<=c&&s<0||m>=0&&s>0))h=!1,b=l.evaluate(t);else if(this._animationState.loopMode!==A.ANIMATIONLOOPMODE_CYCLE){const d=i.toString()+t.toString();if(!this._offsetsCache[d]){this._animationState.repeatCount=0,this._animationState.loopMode=A.ANIMATIONLOOPMODE_CYCLE;const p=l._interpolate(t,this._animationState),y=l._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),l.dataType){case A.ANIMATIONTYPE_FLOAT:this._offsetsCache[d]=y-p;break;case A.ANIMATIONTYPE_QUATERNION:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR3:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR2:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_SIZE:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_COLOR3:this._offsetsCache[d]=y.subtract(p);break}this._highLimitsCache[d]=y}b=this._highLimitsCache[d],_=this._offsetsCache[d]}if(_===void 0)switch(l.dataType){case A.ANIMATIONTYPE_FLOAT:_=0;break;case A.ANIMATIONTYPE_QUATERNION:_=K;break;case A.ANIMATIONTYPE_VECTOR3:_=W;break;case A.ANIMATIONTYPE_VECTOR2:_=D;break;case A.ANIMATIONTYPE_SIZE:_=k;break;case A.ANIMATIONTYPE_COLOR3:_=C;break;case A.ANIMATIONTYPE_COLOR4:_=B;break}if(this._host&&this._host.syncRoot){const d=this._host.syncRoot,p=(d.masterFrame-d.fromFrame)/(d.toFrame-d.fromFrame);g=t+c*p}else m>0&&t>i||m<0&&t<i?g=h&&c!==0?i+m%c:t:g=h&&c!==0?t+m%c:i;if(!O&&(s>0&&this.currentFrame>g||s<0&&this.currentFrame<g)||O&&V){this._onLoop();for(let d=0;d<u.length;d++)u[d].onlyOnce||(u[d].isDone=!1);this._animationState.key=s>0?0:l.getKeys().length-1}this._currentFrame=g,this._animationState.repeatCount=c===0?0:m/c>>0,this._animationState.highLimitValue=b,this._animationState.offsetValue=_}const f=l._interpolate(g,this._animationState);if(this.setValue(f,a),u.length){for(let _=0;_<u.length;_++)if(c>=0&&g>=u[_].frame&&u[_].frame>=t||c<0&&g<=u[_].frame&&u[_].frame<=t){const m=u[_];m.isDone||(m.onlyOnce&&(u.splice(_,1),_--),m.isDone=!0,m.action(g))}}return h||(this._stopped=!0),h}}class I{get syncRoot(){return this._syncRoot}get masterFrame(){return this._runtimeAnimations.length===0?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(e){if(e===-1){this._weight=-1;return}this._weight=Math.min(Math.max(e,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(e){for(let t=0;t<this._runtimeAnimations.length;t++)this._runtimeAnimations[t]._prepareForSpeedRatioChange(e);this._speedRatio=e,this._goToFrame!==null&&this.goToFrame(this._goToFrame)}get elapsedTime(){return this._localDelayOffset===null?0:this._scene._animationTime-this._localDelayOffset}constructor(e,t,i=0,n=100,s=!1,a=1,l,r,h,g=!1,u=0){this.target=t,this.fromFrame=i,this.toFrame=n,this.loopAnimation=s,this.onAnimationEnd=l,this.onAnimationLoop=h,this.isAdditive=g,this.playOrder=u,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=new Array,this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this._scene=e,r&&this.appendAnimations(t,r),this._speedRatio=a,e._activeAnimatables.push(this)}syncWith(e){if(this._syncRoot=e,e){const t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(e,t){for(let i=0;i<t.length;i++){const n=t[i],s=new Q(e,n,this._scene,this);s._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(s)}}getAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i].animation;return null}getRuntimeAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i];return null}reset(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)t[i].animation.enableBlending=!0,t[i].animation.blendingSpeed=e}disableBlending(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].animation.enableBlending=!1}goToFrame(e,t=!1){const i=this._runtimeAnimations;if(i[0]){const n=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;const s=this.speedRatio===0?0:(e-this._frameToSyncFromJump)/n*1e3/this.speedRatio;this._manualJumpDelay=-s}for(let n=0;n<i.length;n++)i[n].goToFrame(e,t?this._weight:-1);this._goToFrame=e}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(e,t,i=!1,n=!1){if(e||t){const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){const a=this._runtimeAnimations;for(let l=a.length-1;l>=0;l--){const r=a[l];e&&r.animation.name!=e||t&&!t(r.target)||(r.dispose(),a.splice(l,1))}a.length==0&&(i||this._scene._activeAnimatables.splice(s,1),n||this._raiseOnAnimationEnd())}}else{const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){i||this._scene._activeAnimatables.splice(s,1);const a=this._runtimeAnimations;for(let l=0;l<a.length;l++)a[l].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(e=>{this.onAnimationEndObservable.add(()=>{e(this)},void 0,void 0,this,!0)})}_animate(e){if(this._paused)return this.animationStarted=!1,this._pausedDelay===null&&(this._pausedDelay=e),!0;if(this._localDelayOffset===null?(this._localDelayOffset=e,this._pausedDelay=null):this._pausedDelay!==null&&(this._localDelayOffset+=e-this._pausedDelay,this._pausedDelay=null),this._manualJumpDelay!==null&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!I.ProcessPausedAnimatables&&this._weight===0&&this._previousWeight===0)return!0;this._previousWeight=this._weight;let t=!1;const i=this._runtimeAnimations;let n;for(n=0;n<i.length;n++){const a=i[n].animate(e-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);t=t||a}if(this.animationStarted=t,!t){if(this.disposeOnEnd)for(n=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(n,1),n=0;n<i.length;n++)i[n].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return t}}I.ProcessPausedAnimatables=!1;function j(o){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return o.originalValue;let e=1;const t=T.Vector3[0],i=T.Vector3[1],n=T.Quaternion[0];let s=0;const a=o.animations[0],l=o.originalValue;let r,h=!1;if(o.totalWeight<1)r=1-o.totalWeight,l.decompose(i,n,t);else{if(s=1,e=o.totalWeight,r=a.weight/e,r==1)if(o.totalAdditiveWeight)h=!0;else return a.currentValue;a.currentValue.decompose(i,n,t)}if(!h){i.scaleInPlace(r),t.scaleInPlace(r),n.scaleInPlace(r);for(let u=s;u<o.animations.length;u++){const c=o.animations[u];if(c.weight===0)continue;r=c.weight/e;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.scaleAndAddToRef(r,i),m.scaleAndAddToRef(S.Dot(n,m)>0?r:-r,n),f.scaleAndAddToRef(r,t)}n.normalize()}for(let u=0;u<o.additiveAnimations.length;u++){const c=o.additiveAnimations[u];if(c.weight===0)continue;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.multiplyToRef(i,_),Y.LerpToRef(i,_,c.weight,i),n.multiplyToRef(m,m),S.SlerpToRef(n,m,c.weight,n),f.scaleAndAddToRef(c.weight,t)}const g=a?a._animationState.workValue:T.Matrix[0].clone();return F.ComposeToRef(i,n,t,g),g}function $(o,e){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return e;const t=o.animations[0],i=o.originalValue;let n=e;if(o.totalWeight===0&&o.totalAdditiveWeight>0)n.copyFrom(i);else if(o.animations.length===1){if(S.SlerpToRef(i,t.currentValue,Math.min(1,o.totalWeight),n),o.totalAdditiveWeight===0)return n}else if(o.animations.length>1){let s=1,a,l;if(o.totalWeight<1){const h=1-o.totalWeight;a=[],l=[],a.push(i),l.push(h)}else{if(o.animations.length===2&&(S.SlerpToRef(o.animations[0].currentValue,o.animations[1].currentValue,o.animations[1].weight/o.totalWeight,e),o.totalAdditiveWeight===0))return e;a=[],l=[],s=o.totalWeight}for(let h=0;h<o.animations.length;h++){const g=o.animations[h];a.push(g.currentValue),l.push(g.weight/s)}let r=0;for(let h=0;h<a.length;){if(!h){S.SlerpToRef(a[h],a[h+1],l[h+1]/(l[h]+l[h+1]),e),n=e,r=l[h]+l[h+1],h+=2;continue}r+=l[h],S.SlerpToRef(n,a[h],l[h]/r,n),h++}}for(let s=0;s<o.additiveAnimations.length;s++){const a=o.additiveAnimations[s];a.weight!==0&&(n.multiplyToRef(a.currentValue,T.Quaternion[0]),S.SlerpToRef(n,T.Quaternion[0],a.weight,n))}return n}function Z(o){if(o._registeredForLateAnimationBindings.length){for(let e=0;e<o._registeredForLateAnimationBindings.length;e++){const t=o._registeredForLateAnimationBindings.data[e];for(const i in t._lateAnimationHolders){const n=t._lateAnimationHolders[i],s=n.animations[0],a=n.originalValue;if(a==null)continue;const l=A.AllowMatrixDecomposeForInterpolation&&a.m;let r=t[i];if(l)r=j(n);else if(a.w!==void 0)r=$(n,r||S.Identity());else{let g=0,u=1;const c=s&&s._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(n.totalWeight<1)c?r=a.clone?a.clone():a:s&&a.scale?r=a.scale(1-n.totalWeight):s?r=a*(1-n.totalWeight):a.clone?r=a.clone():r=a;else if(s){u=n.totalWeight;const f=s.weight/u;f!==1?s.currentValue.scale?r=s.currentValue.scale(f):r=s.currentValue*f:r=s.currentValue,c&&(r.addToRef?r.addToRef(a,r):r+=a),g=1}for(let f=g;f<n.animations.length;f++){const _=n.animations[f],m=_.weight/u;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}for(let f=0;f<n.additiveAnimations.length;f++){const _=n.additiveAnimations[f],m=_.weight;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}}t[i]=r}t._lateAnimationHolders={}}o._registeredForLateAnimationBindings.reset()}}function tt(o,e){e&&(e.prototype.copyAnimationRange=function(t,i,n,s=!1,a=null){this.animations.length===0&&(this.animations.push(new A(this.name,"_matrix",t.animations[0].framePerSecond,A.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));const l=t.animations[0].getRange(i);if(!l)return!1;const r=l.from,h=l.to,g=t.animations[0].getKeys(),u=t.length,c=t.getParent(),f=this.getParent(),_=s&&c&&u&&this.length&&u!==this.length,m=_&&f&&c?f.length/c.length:1,b=s&&!f&&a&&(a.x!==1||a.y!==1||a.z!==1),V=this.animations[0].getKeys();let O,d,p;for(let y=0,L=g.length;y<L;y++)O=g[y],O.frame>=r&&O.frame<=h&&(s?(p=O.value.clone(),_?(d=p.getTranslation(),p.setTranslation(d.scaleInPlace(m))):b&&a?(d=p.getTranslation(),p.setTranslation(d.multiplyInPlace(a))):p=O.value):p=O.value,V.push({frame:O.frame+n,value:p}));return this.animations[0].createRange(i,r+n,h+n),!0}),o&&(o.prototype._animate=function(t){if(!this.animationsEnabled)return;const i=U.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=i}this.deltaTime=t!==void 0?t:this.useConstantAnimationDeltaTime?16:(i-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=i;const n=this._activeAnimatables;if(n.length===0)return;this._animationTime+=this.deltaTime;const s=this._animationTime;for(let a=0;a<n.length;a++){const l=n[a];!l._animate(s)&&l.disposeOnEnd&&a--}Z(this)},o.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,i)=>t.playOrder-i.playOrder)},o.prototype.beginWeightedAnimation=function(t,i,n,s=1,a,l=1,r,h,g,u,c=!1){const f=this.beginAnimation(t,i,n,a,l,r,h,!1,g,u,c);return f.weight=s,f},o.prototype.beginAnimation=function(t,i,n,s,a=1,l,r,h=!0,g,u,c=!1){if(a<0){const _=i;i=n,n=_,a=-a}i>n&&(a=-a),h&&this.stopAnimation(t,void 0,g),r||(r=new I(this,t,i,n,s,a,l,void 0,u,c));const f=g?g(t):!0;if(t.animations&&f&&r.appendAnimations(t,t.animations),t.getAnimatables){const _=t.getAnimatables();for(let m=0;m<_.length;m++)this.beginAnimation(_[m],i,n,s,a,l,r,h,g,u)}return r.reset(),r},o.prototype.beginHierarchyAnimation=function(t,i,n,s,a,l=1,r,h,g=!0,u,c,f=!1){const _=t.getDescendants(i),m=[];m.push(this.beginAnimation(t,n,s,a,l,r,h,g,u,void 0,f));for(const b of _)m.push(this.beginAnimation(b,n,s,a,l,r,h,g,u,void 0,f));return m},o.prototype.beginDirectAnimation=function(t,i,n,s,a,l=1,r,h,g=!1){if(l<0){const c=n;n=s,s=c,l=-l}return n>s&&(l=-l),new I(this,t,n,s,a,l,r,i,h,g)},o.prototype.beginDirectHierarchyAnimation=function(t,i,n,s,a,l,r,h,g,u=!1){const c=t.getDescendants(i),f=[];f.push(this.beginDirectAnimation(t,n,s,a,l,r,h,g,u));for(const _ of c)f.push(this.beginDirectAnimation(_,n,s,a,l,r,h,g,u));return f},o.prototype.getAnimatableByTarget=function(t){for(let i=0;i<this._activeAnimatables.length;i++)if(this._activeAnimatables[i].target===t)return this._activeAnimatables[i];return null},o.prototype.getAllAnimatablesByTarget=function(t){const i=[];for(let n=0;n<this._activeAnimatables.length;n++)this._activeAnimatables[n].target===t&&i.push(this._activeAnimatables[n]);return i},o.prototype.stopAnimation=function(t,i,n){const s=this.getAllAnimatablesByTarget(t);for(const a of s)a.stop(i,n)},o.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(const t of this.animationGroups)t.stop()})}let x=!1;function et(){x||(x=!0,tt(H,z))}class it{getClassName(){return"TargetedAnimation"}constructor(e){this.parent=e,this.uniqueId=q.UniqueId}serialize(){const e={};return e.animation=this.animation.serialize(),e.targetId=this.target.id,e.targetUniqueId=this.target.uniqueId,e}}class v{get mask(){return this._mask}set mask(e){this._mask!==e&&(this._mask=e,this.syncWithMask(!0))}syncWithMask(e=!1){if(!this.mask&&!e){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){const i=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(i.target.name)?(this._numActiveAnimatables++,i.paused&&i.restart()):i.paused||i.pause()}}removeUnmaskedAnimations(){if(!(!this.mask||this.mask.disabled)){for(let e=0;e<this._animatables.length;++e){const t=this._animatables[e];this.mask.retainsTarget(t.target.name)||(t.stop(),this._animatables.splice(e,1),--e)}for(let e=0;e<this._targetedAnimations.length;e++){const t=this._targetedAnimations[e];this.mask.retainsTarget(t.target.name)||(this._targetedAnimations.splice(e,1),--e)}}}get from(){return this._from}set from(e){if(this._from!==e){this._from=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.fromFrame=this._from}}}get to(){return this._to}set to(e){if(this._to!==e){this._to=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.toFrame=this._to}}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(e){if(this._speedRatio!==e){this._speedRatio=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.speedRatio=this._speedRatio}}}get loopAnimation(){return this._loopAnimation}set loopAnimation(e){if(this._loopAnimation!==e){this._loopAnimation=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.loopAnimation=this._loopAnimation}}}get isAdditive(){return this._isAdditive}set isAdditive(e){if(this._isAdditive!==e){this._isAdditive=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.isAdditive=this._isAdditive}}}get weight(){return this._weight}set weight(e){this._weight!==e&&(this._weight=e,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(e){if(this._playOrder!==e&&(this._playOrder=e,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(e){if(this._enableBlending!==e&&(this._enableBlending=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.enableBlending=e}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(e){if(this._blendingSpeed!==e&&(this._blendingSpeed=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.blendingSpeed=e}getLength(e,t){e=e??this._from,t=t??this._to;const i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(t-e)/i}getScene(){return this._scene}constructor(e,t=null,i=-1,n=0){this.name=e,this._targetedAnimations=new Array,this._animatables=new Array,this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this.onAnimationGroupLoopObservable=new P,this.onAnimationGroupEndObservable=new P,this.onAnimationGroupPauseObservable=new P,this.onAnimationGroupPlayObservable=new P,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=t||G.LastCreatedScene,this._weight=i,this._playOrder=n,this.uniqueId=this._scene.getUniqueId(),et(),this._scene.addAnimationGroup(this)}addTargetedAnimation(e,t){const i=new it(this);i.animation=e,i.target=t;const n=e.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),this._enableBlending!==null&&(e.enableBlending=this._enableBlending),this._blendingSpeed!==null&&(e.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(e){for(let t=this._targetedAnimations.length-1;t>-1;t--)this._targetedAnimations[t].animation===e&&this._targetedAnimations.splice(t,1)}normalize(e=null,t=null){e==null&&(e=this._from),t==null&&(t=this._to);for(let i=0;i<this._targetedAnimations.length;i++){const s=this._targetedAnimations[i].animation.getKeys(),a=s[0],l=s[s.length-1];if(a.frame>e){const r={frame:e,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};s.splice(0,0,r)}if(l.frame<t){const r={frame:t,value:l.value,inTangent:l.inTangent,outTangent:l.outTangent,interpolation:l.interpolation};s.push(r)}}return this._from=e,this._to=t,this}_processLoop(e,t,i){e.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(t),!this._animationLoopFlags[i]&&(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(e=!1,t=1,i,n,s){if(this._isStarted||this._targetedAnimations.length===0)return this;this._loopAnimation=e,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let a=0;a<this._targetedAnimations.length;a++){const l=this._targetedAnimations[a],r=this._scene.beginDirectAnimation(l.target,[l.animation],i!==void 0?i:this._from,n!==void 0?n:this._to,e,t,void 0,void 0,s!==void 0?s:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(l),this._checkAnimationGroupEnded(r)},this._processLoop(r,l,a),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=t,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let e=0;e<this._animatables.length;e++)this._animatables[e].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(e){return this.isStarted&&this._animatables.length&&!this._shouldStart?(e!==void 0&&(this.loopAnimation=e),this.restart()):(this.stop(),this.start(e,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].reset();return this}restart(){if(!this._isStarted)return this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(e=!1){if(!this._isStarted)return this;const t=this._animatables.slice();for(let n=0;n<t.length;n++)t[n].stop(void 0,void 0,!0,e);let i=0;for(let n=0;n<this._scene._activeAnimatables.length;n++){const s=this._scene._activeAnimatables[n];s._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=s:e&&this._checkAnimationGroupEnded(s,e)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(e){for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.weight=e}return this}syncAllAnimationsWith(e){for(let t=0;t<this._animatables.length;t++)this._animatables[t].syncWith(e);return this}goToFrame(e,t=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(e,t);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){const e=this._parentContainer.animationGroups.indexOf(this);e>-1&&this._parentContainer.animationGroups.splice(e,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(e,t=!1){const i=this._animatables.indexOf(e);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,t||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(e,t,i=!1,n=!1){const s=new v(e||this.name,this._scene,this._weight,this._playOrder);s._from=this.from,s._to=this.to,s._speedRatio=this.speedRatio,s._loopAnimation=this.loopAnimation,s._isAdditive=this.isAdditive,s._enableBlending=this.enableBlending,s._blendingSpeed=this.blendingSpeed,s.metadata=this.metadata,s.mask=this.mask;for(const a of this._targetedAnimations)s.addTargetedAnimation(i?a.animation.clone(n):a.animation,t?t(a.target):a.target);return s}serialize(){const e={};e.name=this.name,e.from=this.from,e.to=this.to,e.speedRatio=this.speedRatio,e.loopAnimation=this.loopAnimation,e.isAdditive=this.isAdditive,e.weight=this.weight,e.playOrder=this.playOrder,e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,e.targetedAnimations=[];for(let t=0;t<this.targetedAnimations.length;t++){const i=this.targetedAnimations[t];e.targetedAnimations[t]=i.serialize()}return w&&w.HasTags(this)&&(e.tags=w.GetTags(this)),this.metadata&&(e.metadata=this.metadata),e}getClassName(){return"AnimationGroup"}toString(e){let t="Name: "+this.name;return t+=", type: "+this.getClassName(),e&&(t+=", from: "+this._from,t+=", to: "+this._to,t+=", isStarted: "+this._isStarted,t+=", speedRatio: "+this._speedRatio,t+=", targetedAnimations length: "+this._targetedAnimations.length,t+=", animatables length: "+this._animatables.length),t}}function nt(o,e=!0,t=!1,i){if(o.length===0)return null;i=i??o[0].weight;let n=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(t)for(const l of o)l.from<n&&(n=l.from),l.to>s&&(s=l.to);const a=new v(o[0].name+"_merged",o[0].getScene(),i);for(const l of o){t&&l.normalize(n,s);for(const r of l.targetedAnimations)a.addTargetedAnimation(r.animation,r.target);e&&l.dispose()}return a}function at(o,e,t){const i=new v(o.name,e,o.weight,o.playOrder),n=i;for(let s=0;s<o.targetedAnimations.length;s++){const a=o.targetedAnimations[s],l=J(a.animation),r=t?t(a):a.animation.property==="influence"?e.getMorphTargetById(a.targetId):e.getNodeById(a.targetId);r&&i.addTargetedAnimation(l,r)}return w&&w.AddTagsTo(i,o.tags),o.from!==null&&o.to!==null&&i.normalize(o.from,o.to),o.speedRatio!==void 0&&(n._speedRatio=o.speedRatio),o.loopAnimation!==void 0&&(n._loopAnimation=o.loopAnimation),o.isAdditive!==void 0&&(n._isAdditive=o.isAdditive),o.weight!==void 0&&(n._weight=o.weight),o.playOrder!==void 0&&(n._playOrder=o.playOrder),o.enableBlending!==void 0&&(n._enableBlending=o.enableBlending),o.blendingSpeed!==void 0&&(n._blendingSpeed=o.blendingSpeed),o.metadata!==void 0&&(i.metadata=o.metadata),i}function st(o,e,t,i=!1,n){let s;typeof e=="object"?s=e:s={referenceFrame:e,range:t,cloneOriginalAnimationGroup:i,clonedAnimationName:n};let a=o;s.cloneOriginalAnimationGroup&&(a=o.clone(s.clonedAnimationGroupName||a.name));const l=a.targetedAnimations;for(let r=0;r<l.length;r++){const h=l[r];h.animation=X(h.animation,s)}if(a.isAdditive=!0,s.clipKeys){let r=Number.MAX_VALUE,h=-Number.MAX_VALUE;const g=a.targetedAnimations;for(let c=0;c<g.length;c++){const m=g[c].animation.getKeys();r>m[0].frame&&(r=m[0].frame),h<m[m.length-1].frame&&(h=m[m.length-1].frame)}const u=a;u._from=r,u._to=h}return a}function ot(o,e,t,i,n){const s=o.clone(i||o.name);return E(s,e,t,n)}function E(o,e,t,i){return R(o,e,t,i,!1)}function rt(o,e,t,i,n){const s=o.clone(i||o.name);return N(s,e,t,n)}function N(o,e,t,i){return R(o,e,t,i,!0)}function R(o,e,t,i,n=!1){let s=Number.MAX_VALUE,a=-Number.MAX_VALUE;const l=o.targetedAnimations;for(let h=0;h<l.length;h++){const g=l[h],u=i?g.animation:g.animation.clone();n&&(u.createKeyForFrame(e),u.createKeyForFrame(t));const c=u.getKeys(),f=[];let _=Number.MAX_VALUE;for(let m=0;m<c.length;m++){const b=c[m];if(!n&&m>=e&&m<=t||n&&b.frame>=e&&b.frame<=t){const V={frame:b.frame,value:b.value.clone?b.value.clone():b.value,inTangent:b.inTangent,outTangent:b.outTangent,interpolation:b.interpolation,lockedTangent:b.lockedTangent};_===Number.MAX_VALUE&&(_=V.frame),V.frame-=_,f.push(V)}}if(f.length===0){l.splice(h,1),h--;continue}s>f[0].frame&&(s=f[0].frame),a<f[f.length-1].frame&&(a=f[f.length-1].frame),u.setKeys(f,!0),g.animation=u}const r=o;return r._from=s,r._to=a,o}let M=!1;function lt(){M||(M=!0,v.MergeAnimationGroups=nt,v.Parse=at,v.MakeAnimationAdditive=st,v.ClipKeys=ot,v.ClipKeysInPlace=E,v.ClipFrames=rt,v.ClipFramesInPlace=N,v.ClipInPlace=R)}lt();export{v as AnimationGroup,rt as AnimationGroupClipFrames,N as AnimationGroupClipFramesInPlace,R as AnimationGroupClipInPlace,ot as AnimationGroupClipKeys,E as AnimationGroupClipKeysInPlace,st as AnimationGroupMakeAnimationAdditive,nt as AnimationGroupMergeAnimationGroups,at as AnimationGroupParse,lt as RegisterAnimationGroup,it as TargetedAnimation};
1
+ import{b0 as A,W as F,b1 as B,b2 as C,b3 as k,b4 as D,b5 as W,b6 as K,b7 as U,aA as P,a4 as T,X as S,V as Y,b8 as z,b9 as H,aQ as G,ba as w,bb as X,bc as J,bd as q}from"./index-Dl0bWA0T.js";class Q{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(e,t,i,n){if(this._events=new Array,this._currentFrame=0,this._originalValue=new Array,this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=t,this._target=e,this._scene=i,this._host=n,this._activeTargets=[],t._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===A.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=F.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,this._minFrame!==0){const a={frame:0,value:this._keys[0].value};this._keys.splice(0,0,a)}if(this._target instanceof Array){let a=0;for(const l of this._target)this._preparePath(l,a),this._getOriginalValues(a),a++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const s=t.getEvents();if(s&&s.length>0)for(const a of s)this._events.push(a._clone());this._enableBlending=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(e,t=0){const i=this._animation.targetPropertyPath;if(i.length>1){let n=e;for(let s=0;s<i.length-1;s++){const a=i[s];if(n=n[a],n===void 0)throw new Error(`Invalid property (${a}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[t]=n}else this._targetPath=i[0],this._activeTargets[t]=e;if(this._activeTargets[t][this._targetPath]===void 0)throw new Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(e=!1){if(e)if(this._target instanceof Array){let t=0;for(const i of this._target)this._originalValue[t]!==void 0&&this._setValue(i,this._activeTargets[t],this._originalValue[t],-1,t),t++}else this._originalValue[0]!==void 0&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){const e=this._animation.runtimeAnimations.indexOf(this);e>-1&&this._animation.runtimeAnimations.splice(e,1)}setValue(e,t){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){const n=this._target[i];this._setValue(n,this._activeTargets[i],e,t,i)}return}this._setValue(this._target,this._directTarget,e,t,0)}_getOriginalValues(e=0){let t;const i=this._activeTargets[e];if(A.InheritOriginalValueFromActiveAnimations){const n=this._scene._activeAnimatables;for(let s=0;s<n.length;s++){const a=n[s]._runtimeAnimations;for(let l=0;l<a.length;l++){const r=a[l];if(r!==this&&r._targetPath===this._targetPath){for(let h=0;h<r._activeTargets.length;h++)if(r._activeTargets[h]===i&&r._originalValue[h]!==void 0){r._originalValue[h]&&r._originalValue[h].clone?this._originalValue[e]=r._originalValue[h].clone():this._originalValue[e]=r._originalValue[h];return}}}}}i.getLocalMatrix&&this._targetPath==="_matrix"?t=i.getLocalMatrix():t=i[this._targetPath],t&&t.clone?this._originalValue[e]=t.clone():this._originalValue[e]=t}_registerTargetForLateAnimationBinding(e,t){const i=e.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[e.targetPath]||(i._lateAnimationHolders[e.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:t}),e.isAdditive?(i._lateAnimationHolders[e.targetPath].additiveAnimations.push(e),i._lateAnimationHolders[e.targetPath].totalAdditiveWeight+=e.weight):(i._lateAnimationHolders[e.targetPath].animations.push(e),i._lateAnimationHolders[e.targetPath].totalWeight+=e.weight)}_setValue(e,t,i,n,s){if(this._currentActiveTarget=t,this._weight=n,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){const l=t[this._targetPath];l.clone?this._originalBlendValue=l.clone():this._originalBlendValue=l}this._originalBlendValue.m?A.AllowMatrixDecomposeForInterpolation?this._currentValue?F.DecomposeLerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.DecomposeLerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue?F.LerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.Lerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue=A._UniversalLerp(this._originalBlendValue,i,this._blendingFactor);const a=e&&e.animationPropertiesOverride?e.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=a}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(i):this._currentValue=i:i?.clone?this._currentValue=i.clone():this._currentValue=i;n!==-1?this._registerTargetForLateAnimationBinding(this,this._originalValue[s]):this._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[s],t[this._targetPath]):t[this._targetPath]=this._originalValue[s]+this._currentValue:t[this._targetPath]=this._currentValue,e.markAsDirty&&e.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&this._target._animationPropertiesOverride==null?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(e,t=-1){const i=this._animation.getKeys();e<i[0].frame?e=i[0].frame:e>i[i.length-1].frame&&(e=i[i.length-1].frame);const n=this._events;if(n.length)for(let a=0;a<n.length;a++)n[a].onlyOnce||(n[a].isDone=n[a].frame<e);this._currentFrame=e;const s=this._animation._interpolate(e,this._animationState);this.setValue(s,t)}_prepareForSpeedRatioChange(e){const t=this._previousElapsedTime*(this._animation.framePerSecond*e)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-t}animate(e,t,i,n,s,a=-1){const l=this._animation,r=l.targetPropertyPath;if(!r||r.length<1)return this._stopped=!0,!1;let h=!0,g;const u=this._events;let c;if(this._coreRuntimeAnimation)c=i-t,g=this._coreRuntimeAnimation.currentFrame,this._currentFrame=g,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{(t<this._minFrame||t>this._maxFrame)&&(t=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),c=i-t;let _,m=e*(l.framePerSecond*s)/1e3+this._absoluteFrameOffset,b=0,V=!1;const O=n&&this._animationState.loopMode===A.ANIMATIONLOOPMODE_YOYO;if(O){const d=(m-t)/c,p=Math.sin(d*Math.PI);m=Math.abs(p)*c+t;const L=p>=0?1:-1;this._yoyoDirection!==L&&(V=!0),this._yoyoDirection=L}if(this._previousElapsedTime=e,this._previousAbsoluteFrame=m,!n&&i>=t&&(m>=c&&s>0||m<=0&&s<0))h=!1,b=l.evaluate(i);else if(!n&&t>=i&&(m<=c&&s<0||m>=0&&s>0))h=!1,b=l.evaluate(t);else if(this._animationState.loopMode!==A.ANIMATIONLOOPMODE_CYCLE){const d=i.toString()+t.toString();if(!this._offsetsCache[d]){this._animationState.repeatCount=0,this._animationState.loopMode=A.ANIMATIONLOOPMODE_CYCLE;const p=l._interpolate(t,this._animationState),y=l._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),l.dataType){case A.ANIMATIONTYPE_FLOAT:this._offsetsCache[d]=y-p;break;case A.ANIMATIONTYPE_QUATERNION:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR3:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR2:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_SIZE:this._offsetsCache[d]=y.subtract(p);break;case A.ANIMATIONTYPE_COLOR3:this._offsetsCache[d]=y.subtract(p);break}this._highLimitsCache[d]=y}b=this._highLimitsCache[d],_=this._offsetsCache[d]}if(_===void 0)switch(l.dataType){case A.ANIMATIONTYPE_FLOAT:_=0;break;case A.ANIMATIONTYPE_QUATERNION:_=K;break;case A.ANIMATIONTYPE_VECTOR3:_=W;break;case A.ANIMATIONTYPE_VECTOR2:_=D;break;case A.ANIMATIONTYPE_SIZE:_=k;break;case A.ANIMATIONTYPE_COLOR3:_=C;break;case A.ANIMATIONTYPE_COLOR4:_=B;break}if(this._host&&this._host.syncRoot){const d=this._host.syncRoot,p=(d.masterFrame-d.fromFrame)/(d.toFrame-d.fromFrame);g=t+c*p}else m>0&&t>i||m<0&&t<i?g=h&&c!==0?i+m%c:t:g=h&&c!==0?t+m%c:i;if(!O&&(s>0&&this.currentFrame>g||s<0&&this.currentFrame<g)||O&&V){this._onLoop();for(let d=0;d<u.length;d++)u[d].onlyOnce||(u[d].isDone=!1);this._animationState.key=s>0?0:l.getKeys().length-1}this._currentFrame=g,this._animationState.repeatCount=c===0?0:m/c>>0,this._animationState.highLimitValue=b,this._animationState.offsetValue=_}const f=l._interpolate(g,this._animationState);if(this.setValue(f,a),u.length){for(let _=0;_<u.length;_++)if(c>=0&&g>=u[_].frame&&u[_].frame>=t||c<0&&g<=u[_].frame&&u[_].frame<=t){const m=u[_];m.isDone||(m.onlyOnce&&(u.splice(_,1),_--),m.isDone=!0,m.action(g))}}return h||(this._stopped=!0),h}}class I{get syncRoot(){return this._syncRoot}get masterFrame(){return this._runtimeAnimations.length===0?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(e){if(e===-1){this._weight=-1;return}this._weight=Math.min(Math.max(e,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(e){for(let t=0;t<this._runtimeAnimations.length;t++)this._runtimeAnimations[t]._prepareForSpeedRatioChange(e);this._speedRatio=e,this._goToFrame!==null&&this.goToFrame(this._goToFrame)}get elapsedTime(){return this._localDelayOffset===null?0:this._scene._animationTime-this._localDelayOffset}constructor(e,t,i=0,n=100,s=!1,a=1,l,r,h,g=!1,u=0){this.target=t,this.fromFrame=i,this.toFrame=n,this.loopAnimation=s,this.onAnimationEnd=l,this.onAnimationLoop=h,this.isAdditive=g,this.playOrder=u,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=new Array,this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this._scene=e,r&&this.appendAnimations(t,r),this._speedRatio=a,e._activeAnimatables.push(this)}syncWith(e){if(this._syncRoot=e,e){const t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(e,t){for(let i=0;i<t.length;i++){const n=t[i],s=new Q(e,n,this._scene,this);s._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(s)}}getAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i].animation;return null}getRuntimeAnimationByTargetProperty(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)if(t[i].animation.targetProperty===e)return t[i];return null}reset(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(e){const t=this._runtimeAnimations;for(let i=0;i<t.length;i++)t[i].animation.enableBlending=!0,t[i].animation.blendingSpeed=e}disableBlending(){const e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].animation.enableBlending=!1}goToFrame(e,t=!1){const i=this._runtimeAnimations;if(i[0]){const n=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;const s=this.speedRatio===0?0:(e-this._frameToSyncFromJump)/n*1e3/this.speedRatio;this._manualJumpDelay=-s}for(let n=0;n<i.length;n++)i[n].goToFrame(e,t?this._weight:-1);this._goToFrame=e}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(e,t,i=!1,n=!1){if(e||t){const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){const a=this._runtimeAnimations;for(let l=a.length-1;l>=0;l--){const r=a[l];e&&r.animation.name!=e||t&&!t(r.target)||(r.dispose(),a.splice(l,1))}a.length==0&&(i||this._scene._activeAnimatables.splice(s,1),n||this._raiseOnAnimationEnd())}}else{const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){i||this._scene._activeAnimatables.splice(s,1);const a=this._runtimeAnimations;for(let l=0;l<a.length;l++)a[l].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(e=>{this.onAnimationEndObservable.add(()=>{e(this)},void 0,void 0,this,!0)})}_animate(e){if(this._paused)return this.animationStarted=!1,this._pausedDelay===null&&(this._pausedDelay=e),!0;if(this._localDelayOffset===null?(this._localDelayOffset=e,this._pausedDelay=null):this._pausedDelay!==null&&(this._localDelayOffset+=e-this._pausedDelay,this._pausedDelay=null),this._manualJumpDelay!==null&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!I.ProcessPausedAnimatables&&this._weight===0&&this._previousWeight===0)return!0;this._previousWeight=this._weight;let t=!1;const i=this._runtimeAnimations;let n;for(n=0;n<i.length;n++){const a=i[n].animate(e-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);t=t||a}if(this.animationStarted=t,!t){if(this.disposeOnEnd)for(n=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(n,1),n=0;n<i.length;n++)i[n].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return t}}I.ProcessPausedAnimatables=!1;function j(o){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return o.originalValue;let e=1;const t=T.Vector3[0],i=T.Vector3[1],n=T.Quaternion[0];let s=0;const a=o.animations[0],l=o.originalValue;let r,h=!1;if(o.totalWeight<1)r=1-o.totalWeight,l.decompose(i,n,t);else{if(s=1,e=o.totalWeight,r=a.weight/e,r==1)if(o.totalAdditiveWeight)h=!0;else return a.currentValue;a.currentValue.decompose(i,n,t)}if(!h){i.scaleInPlace(r),t.scaleInPlace(r),n.scaleInPlace(r);for(let u=s;u<o.animations.length;u++){const c=o.animations[u];if(c.weight===0)continue;r=c.weight/e;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.scaleAndAddToRef(r,i),m.scaleAndAddToRef(S.Dot(n,m)>0?r:-r,n),f.scaleAndAddToRef(r,t)}n.normalize()}for(let u=0;u<o.additiveAnimations.length;u++){const c=o.additiveAnimations[u];if(c.weight===0)continue;const f=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,f),_.multiplyToRef(i,_),Y.LerpToRef(i,_,c.weight,i),n.multiplyToRef(m,m),S.SlerpToRef(n,m,c.weight,n),f.scaleAndAddToRef(c.weight,t)}const g=a?a._animationState.workValue:T.Matrix[0].clone();return F.ComposeToRef(i,n,t,g),g}function $(o,e){if(o.totalWeight===0&&o.totalAdditiveWeight===0)return e;const t=o.animations[0],i=o.originalValue;let n=e;if(o.totalWeight===0&&o.totalAdditiveWeight>0)n.copyFrom(i);else if(o.animations.length===1){if(S.SlerpToRef(i,t.currentValue,Math.min(1,o.totalWeight),n),o.totalAdditiveWeight===0)return n}else if(o.animations.length>1){let s=1,a,l;if(o.totalWeight<1){const h=1-o.totalWeight;a=[],l=[],a.push(i),l.push(h)}else{if(o.animations.length===2&&(S.SlerpToRef(o.animations[0].currentValue,o.animations[1].currentValue,o.animations[1].weight/o.totalWeight,e),o.totalAdditiveWeight===0))return e;a=[],l=[],s=o.totalWeight}for(let h=0;h<o.animations.length;h++){const g=o.animations[h];a.push(g.currentValue),l.push(g.weight/s)}let r=0;for(let h=0;h<a.length;){if(!h){S.SlerpToRef(a[h],a[h+1],l[h+1]/(l[h]+l[h+1]),e),n=e,r=l[h]+l[h+1],h+=2;continue}r+=l[h],S.SlerpToRef(n,a[h],l[h]/r,n),h++}}for(let s=0;s<o.additiveAnimations.length;s++){const a=o.additiveAnimations[s];a.weight!==0&&(n.multiplyToRef(a.currentValue,T.Quaternion[0]),S.SlerpToRef(n,T.Quaternion[0],a.weight,n))}return n}function Z(o){if(o._registeredForLateAnimationBindings.length){for(let e=0;e<o._registeredForLateAnimationBindings.length;e++){const t=o._registeredForLateAnimationBindings.data[e];for(const i in t._lateAnimationHolders){const n=t._lateAnimationHolders[i],s=n.animations[0],a=n.originalValue;if(a==null)continue;const l=A.AllowMatrixDecomposeForInterpolation&&a.m;let r=t[i];if(l)r=j(n);else if(a.w!==void 0)r=$(n,r||S.Identity());else{let g=0,u=1;const c=s&&s._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(n.totalWeight<1)c?r=a.clone?a.clone():a:s&&a.scale?r=a.scale(1-n.totalWeight):s?r=a*(1-n.totalWeight):a.clone?r=a.clone():r=a;else if(s){u=n.totalWeight;const f=s.weight/u;f!==1?s.currentValue.scale?r=s.currentValue.scale(f):r=s.currentValue*f:r=s.currentValue,c&&(r.addToRef?r.addToRef(a,r):r+=a),g=1}for(let f=g;f<n.animations.length;f++){const _=n.animations[f],m=_.weight/u;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}for(let f=0;f<n.additiveAnimations.length;f++){const _=n.additiveAnimations[f],m=_.weight;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}}t[i]=r}t._lateAnimationHolders={}}o._registeredForLateAnimationBindings.reset()}}function tt(o,e){e&&(e.prototype.copyAnimationRange=function(t,i,n,s=!1,a=null){this.animations.length===0&&(this.animations.push(new A(this.name,"_matrix",t.animations[0].framePerSecond,A.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));const l=t.animations[0].getRange(i);if(!l)return!1;const r=l.from,h=l.to,g=t.animations[0].getKeys(),u=t.length,c=t.getParent(),f=this.getParent(),_=s&&c&&u&&this.length&&u!==this.length,m=_&&f&&c?f.length/c.length:1,b=s&&!f&&a&&(a.x!==1||a.y!==1||a.z!==1),V=this.animations[0].getKeys();let O,d,p;for(let y=0,L=g.length;y<L;y++)O=g[y],O.frame>=r&&O.frame<=h&&(s?(p=O.value.clone(),_?(d=p.getTranslation(),p.setTranslation(d.scaleInPlace(m))):b&&a?(d=p.getTranslation(),p.setTranslation(d.multiplyInPlace(a))):p=O.value):p=O.value,V.push({frame:O.frame+n,value:p}));return this.animations[0].createRange(i,r+n,h+n),!0}),o&&(o.prototype._animate=function(t){if(!this.animationsEnabled)return;const i=U.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=i}this.deltaTime=t!==void 0?t:this.useConstantAnimationDeltaTime?16:(i-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=i;const n=this._activeAnimatables;if(n.length===0)return;this._animationTime+=this.deltaTime;const s=this._animationTime;for(let a=0;a<n.length;a++){const l=n[a];!l._animate(s)&&l.disposeOnEnd&&a--}Z(this)},o.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,i)=>t.playOrder-i.playOrder)},o.prototype.beginWeightedAnimation=function(t,i,n,s=1,a,l=1,r,h,g,u,c=!1){const f=this.beginAnimation(t,i,n,a,l,r,h,!1,g,u,c);return f.weight=s,f},o.prototype.beginAnimation=function(t,i,n,s,a=1,l,r,h=!0,g,u,c=!1){if(a<0){const _=i;i=n,n=_,a=-a}i>n&&(a=-a),h&&this.stopAnimation(t,void 0,g),r||(r=new I(this,t,i,n,s,a,l,void 0,u,c));const f=g?g(t):!0;if(t.animations&&f&&r.appendAnimations(t,t.animations),t.getAnimatables){const _=t.getAnimatables();for(let m=0;m<_.length;m++)this.beginAnimation(_[m],i,n,s,a,l,r,h,g,u)}return r.reset(),r},o.prototype.beginHierarchyAnimation=function(t,i,n,s,a,l=1,r,h,g=!0,u,c,f=!1){const _=t.getDescendants(i),m=[];m.push(this.beginAnimation(t,n,s,a,l,r,h,g,u,void 0,f));for(const b of _)m.push(this.beginAnimation(b,n,s,a,l,r,h,g,u,void 0,f));return m},o.prototype.beginDirectAnimation=function(t,i,n,s,a,l=1,r,h,g=!1){if(l<0){const c=n;n=s,s=c,l=-l}return n>s&&(l=-l),new I(this,t,n,s,a,l,r,i,h,g)},o.prototype.beginDirectHierarchyAnimation=function(t,i,n,s,a,l,r,h,g,u=!1){const c=t.getDescendants(i),f=[];f.push(this.beginDirectAnimation(t,n,s,a,l,r,h,g,u));for(const _ of c)f.push(this.beginDirectAnimation(_,n,s,a,l,r,h,g,u));return f},o.prototype.getAnimatableByTarget=function(t){for(let i=0;i<this._activeAnimatables.length;i++)if(this._activeAnimatables[i].target===t)return this._activeAnimatables[i];return null},o.prototype.getAllAnimatablesByTarget=function(t){const i=[];for(let n=0;n<this._activeAnimatables.length;n++)this._activeAnimatables[n].target===t&&i.push(this._activeAnimatables[n]);return i},o.prototype.stopAnimation=function(t,i,n){const s=this.getAllAnimatablesByTarget(t);for(const a of s)a.stop(i,n)},o.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(const t of this.animationGroups)t.stop()})}let x=!1;function et(){x||(x=!0,tt(H,z))}class it{getClassName(){return"TargetedAnimation"}constructor(e){this.parent=e,this.uniqueId=q.UniqueId}serialize(){const e={};return e.animation=this.animation.serialize(),e.targetId=this.target.id,e.targetUniqueId=this.target.uniqueId,e}}class v{get mask(){return this._mask}set mask(e){this._mask!==e&&(this._mask=e,this.syncWithMask(!0))}syncWithMask(e=!1){if(!this.mask&&!e){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){const i=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(i.target.name)?(this._numActiveAnimatables++,i.paused&&i.restart()):i.paused||i.pause()}}removeUnmaskedAnimations(){if(!(!this.mask||this.mask.disabled)){for(let e=0;e<this._animatables.length;++e){const t=this._animatables[e];this.mask.retainsTarget(t.target.name)||(t.stop(),this._animatables.splice(e,1),--e)}for(let e=0;e<this._targetedAnimations.length;e++){const t=this._targetedAnimations[e];this.mask.retainsTarget(t.target.name)||(this._targetedAnimations.splice(e,1),--e)}}}get from(){return this._from}set from(e){if(this._from!==e){this._from=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.fromFrame=this._from}}}get to(){return this._to}set to(e){if(this._to!==e){this._to=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.toFrame=this._to}}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(e){if(this._speedRatio!==e){this._speedRatio=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.speedRatio=this._speedRatio}}}get loopAnimation(){return this._loopAnimation}set loopAnimation(e){if(this._loopAnimation!==e){this._loopAnimation=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.loopAnimation=this._loopAnimation}}}get isAdditive(){return this._isAdditive}set isAdditive(e){if(this._isAdditive!==e){this._isAdditive=e;for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.isAdditive=this._isAdditive}}}get weight(){return this._weight}set weight(e){this._weight!==e&&(this._weight=e,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(e){if(this._playOrder!==e&&(this._playOrder=e,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(e){if(this._enableBlending!==e&&(this._enableBlending=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.enableBlending=e}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(e){if(this._blendingSpeed!==e&&(this._blendingSpeed=e,e!==null))for(let t=0;t<this._targetedAnimations.length;++t)this._targetedAnimations[t].animation.blendingSpeed=e}getLength(e,t){e=e??this._from,t=t??this._to;const i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(t-e)/i}getScene(){return this._scene}constructor(e,t=null,i=-1,n=0){this.name=e,this._targetedAnimations=new Array,this._animatables=new Array,this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this.onAnimationGroupLoopObservable=new P,this.onAnimationGroupEndObservable=new P,this.onAnimationGroupPauseObservable=new P,this.onAnimationGroupPlayObservable=new P,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=t||G.LastCreatedScene,this._weight=i,this._playOrder=n,this.uniqueId=this._scene.getUniqueId(),et(),this._scene.addAnimationGroup(this)}addTargetedAnimation(e,t){const i=new it(this);i.animation=e,i.target=t;const n=e.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),this._enableBlending!==null&&(e.enableBlending=this._enableBlending),this._blendingSpeed!==null&&(e.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(e){for(let t=this._targetedAnimations.length-1;t>-1;t--)this._targetedAnimations[t].animation===e&&this._targetedAnimations.splice(t,1)}normalize(e=null,t=null){e==null&&(e=this._from),t==null&&(t=this._to);for(let i=0;i<this._targetedAnimations.length;i++){const s=this._targetedAnimations[i].animation.getKeys(),a=s[0],l=s[s.length-1];if(a.frame>e){const r={frame:e,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};s.splice(0,0,r)}if(l.frame<t){const r={frame:t,value:l.value,inTangent:l.inTangent,outTangent:l.outTangent,interpolation:l.interpolation};s.push(r)}}return this._from=e,this._to=t,this}_processLoop(e,t,i){e.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(t),!this._animationLoopFlags[i]&&(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(e=!1,t=1,i,n,s){if(this._isStarted||this._targetedAnimations.length===0)return this;this._loopAnimation=e,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let a=0;a<this._targetedAnimations.length;a++){const l=this._targetedAnimations[a],r=this._scene.beginDirectAnimation(l.target,[l.animation],i!==void 0?i:this._from,n!==void 0?n:this._to,e,t,void 0,void 0,s!==void 0?s:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(l),this._checkAnimationGroupEnded(r)},this._processLoop(r,l,a),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=t,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let e=0;e<this._animatables.length;e++)this._animatables[e].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(e){return this.isStarted&&this._animatables.length&&!this._shouldStart?(e!==void 0&&(this.loopAnimation=e),this.restart()):(this.stop(),this.start(e,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].reset();return this}restart(){if(!this._isStarted)return this;for(let e=0;e<this._animatables.length;e++)this._animatables[e].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(e=!1){if(!this._isStarted)return this;const t=this._animatables.slice();for(let n=0;n<t.length;n++)t[n].stop(void 0,void 0,!0,e);let i=0;for(let n=0;n<this._scene._activeAnimatables.length;n++){const s=this._scene._activeAnimatables[n];s._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=s:e&&this._checkAnimationGroupEnded(s,e)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(e){for(let t=0;t<this._animatables.length;t++){const i=this._animatables[t];i.weight=e}return this}syncAllAnimationsWith(e){for(let t=0;t<this._animatables.length;t++)this._animatables[t].syncWith(e);return this}goToFrame(e,t=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(e,t);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){const e=this._parentContainer.animationGroups.indexOf(this);e>-1&&this._parentContainer.animationGroups.splice(e,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(e,t=!1){const i=this._animatables.indexOf(e);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,t||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(e,t,i=!1,n=!1){const s=new v(e||this.name,this._scene,this._weight,this._playOrder);s._from=this.from,s._to=this.to,s._speedRatio=this.speedRatio,s._loopAnimation=this.loopAnimation,s._isAdditive=this.isAdditive,s._enableBlending=this.enableBlending,s._blendingSpeed=this.blendingSpeed,s.metadata=this.metadata,s.mask=this.mask;for(const a of this._targetedAnimations)s.addTargetedAnimation(i?a.animation.clone(n):a.animation,t?t(a.target):a.target);return s}serialize(){const e={};e.name=this.name,e.from=this.from,e.to=this.to,e.speedRatio=this.speedRatio,e.loopAnimation=this.loopAnimation,e.isAdditive=this.isAdditive,e.weight=this.weight,e.playOrder=this.playOrder,e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,e.targetedAnimations=[];for(let t=0;t<this.targetedAnimations.length;t++){const i=this.targetedAnimations[t];e.targetedAnimations[t]=i.serialize()}return w&&w.HasTags(this)&&(e.tags=w.GetTags(this)),this.metadata&&(e.metadata=this.metadata),e}getClassName(){return"AnimationGroup"}toString(e){let t="Name: "+this.name;return t+=", type: "+this.getClassName(),e&&(t+=", from: "+this._from,t+=", to: "+this._to,t+=", isStarted: "+this._isStarted,t+=", speedRatio: "+this._speedRatio,t+=", targetedAnimations length: "+this._targetedAnimations.length,t+=", animatables length: "+this._animatables.length),t}}function nt(o,e=!0,t=!1,i){if(o.length===0)return null;i=i??o[0].weight;let n=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(t)for(const l of o)l.from<n&&(n=l.from),l.to>s&&(s=l.to);const a=new v(o[0].name+"_merged",o[0].getScene(),i);for(const l of o){t&&l.normalize(n,s);for(const r of l.targetedAnimations)a.addTargetedAnimation(r.animation,r.target);e&&l.dispose()}return a}function at(o,e,t){const i=new v(o.name,e,o.weight,o.playOrder),n=i;for(let s=0;s<o.targetedAnimations.length;s++){const a=o.targetedAnimations[s],l=J(a.animation),r=t?t(a):a.animation.property==="influence"?e.getMorphTargetById(a.targetId):e.getNodeById(a.targetId);r&&i.addTargetedAnimation(l,r)}return w&&w.AddTagsTo(i,o.tags),o.from!==null&&o.to!==null&&i.normalize(o.from,o.to),o.speedRatio!==void 0&&(n._speedRatio=o.speedRatio),o.loopAnimation!==void 0&&(n._loopAnimation=o.loopAnimation),o.isAdditive!==void 0&&(n._isAdditive=o.isAdditive),o.weight!==void 0&&(n._weight=o.weight),o.playOrder!==void 0&&(n._playOrder=o.playOrder),o.enableBlending!==void 0&&(n._enableBlending=o.enableBlending),o.blendingSpeed!==void 0&&(n._blendingSpeed=o.blendingSpeed),o.metadata!==void 0&&(i.metadata=o.metadata),i}function st(o,e,t,i=!1,n){let s;typeof e=="object"?s=e:s={referenceFrame:e,range:t,cloneOriginalAnimationGroup:i,clonedAnimationName:n};let a=o;s.cloneOriginalAnimationGroup&&(a=o.clone(s.clonedAnimationGroupName||a.name));const l=a.targetedAnimations;for(let r=0;r<l.length;r++){const h=l[r];h.animation=X(h.animation,s)}if(a.isAdditive=!0,s.clipKeys){let r=Number.MAX_VALUE,h=-Number.MAX_VALUE;const g=a.targetedAnimations;for(let c=0;c<g.length;c++){const m=g[c].animation.getKeys();r>m[0].frame&&(r=m[0].frame),h<m[m.length-1].frame&&(h=m[m.length-1].frame)}const u=a;u._from=r,u._to=h}return a}function ot(o,e,t,i,n){const s=o.clone(i||o.name);return E(s,e,t,n)}function E(o,e,t,i){return R(o,e,t,i,!1)}function rt(o,e,t,i,n){const s=o.clone(i||o.name);return N(s,e,t,n)}function N(o,e,t,i){return R(o,e,t,i,!0)}function R(o,e,t,i,n=!1){let s=Number.MAX_VALUE,a=-Number.MAX_VALUE;const l=o.targetedAnimations;for(let h=0;h<l.length;h++){const g=l[h],u=i?g.animation:g.animation.clone();n&&(u.createKeyForFrame(e),u.createKeyForFrame(t));const c=u.getKeys(),f=[];let _=Number.MAX_VALUE;for(let m=0;m<c.length;m++){const b=c[m];if(!n&&m>=e&&m<=t||n&&b.frame>=e&&b.frame<=t){const V={frame:b.frame,value:b.value.clone?b.value.clone():b.value,inTangent:b.inTangent,outTangent:b.outTangent,interpolation:b.interpolation,lockedTangent:b.lockedTangent};_===Number.MAX_VALUE&&(_=V.frame),V.frame-=_,f.push(V)}}if(f.length===0){l.splice(h,1),h--;continue}s>f[0].frame&&(s=f[0].frame),a<f[f.length-1].frame&&(a=f[f.length-1].frame),u.setKeys(f,!0),g.animation=u}const r=o;return r._from=s,r._to=a,o}let M=!1;function lt(){M||(M=!0,v.MergeAnimationGroups=nt,v.Parse=at,v.MakeAnimationAdditive=st,v.ClipKeys=ot,v.ClipKeysInPlace=E,v.ClipFrames=rt,v.ClipFramesInPlace=N,v.ClipInPlace=R)}lt();export{v as AnimationGroup,rt as AnimationGroupClipFrames,N as AnimationGroupClipFramesInPlace,R as AnimationGroupClipInPlace,ot as AnimationGroupClipKeys,E as AnimationGroupClipKeysInPlace,st as AnimationGroupMakeAnimationAdditive,nt as AnimationGroupMergeAnimationGroups,at as AnimationGroupParse,lt as RegisterAnimationGroup,it as TargetedAnimation};
@@ -1,4 +1,4 @@
1
- import{S as e}from"./index-DMstpx40.js";const t="bonesDeclaration",u=`#if NUM_BONE_INFLUENCERS>0
1
+ import{S as e}from"./index-Dl0bWA0T.js";const t="bonesDeclaration",u=`#if NUM_BONE_INFLUENCERS>0
2
2
  #ifndef USE_VERTEX_PULLING
3
3
  attribute matricesIndices : vec4f;attribute matricesWeights : vec4f;
4
4
  #if NUM_BONE_INFLUENCERS>4
@@ -1 +1 @@
1
- import{ay as F,az as U,L as D,x as P}from"./index-DMstpx40.js";function R(){const e={cTFETC1:0,cTFETC2:1,cTFBC1:2,cTFBC3:3,cTFBC7:6,cTFPVRTC1_4_RGB:8,cTFPVRTC1_4_RGBA:9,cTFASTC_4x4:10,cTFRGB565:14};let n=null;onmessage=s=>{if(s.data.action==="init"){if(s.data.url)try{importScripts(s.data.url)}catch(o){postMessage({action:"error",error:o})}n||(n=BASIS({wasmBinary:s.data.wasmBinary})),n!==null&&n.then(o=>{BASIS=o,o.initializeBasis(),postMessage({action:"init"})})}else if(s.data.action==="transcode"){const o=s.data.config,a=s.data.imageData,d=new BASIS.BasisFile(a),r=l(d);let f=s.data.ignoreSupportedFormats?null:t(s.data.config,r),p=!1;f===null&&(p=!0,f=r.hasAlpha?e.cTFBC3:e.cTFBC1);let g=!0;d.startTranscoding()||(g=!1);const T=[];for(let m=0;m<r.images.length&&g;m++){const u=r.images[m];if(o.loadSingleImage===void 0||o.loadSingleImage===m){let b=u.levels.length;o.loadMipmapLevels===!1&&(b=1);for(let C=0;C<b;C++){const w=u.levels[C],B=i(d,m,C,f,p);if(!B){g=!1;break}w.transcodedPixels=B,T.push(w.transcodedPixels.buffer)}}}d.close(),d.delete(),p&&(f=-1),g?postMessage({action:"transcode",success:g,id:s.data.id,fileInfo:r,format:f},T):postMessage({action:"transcode",success:g,id:s.data.id})}};function t(s,o){let a=null;return s.supportedCompressionFormats&&(s.supportedCompressionFormats.astc?a=e.cTFASTC_4x4:s.supportedCompressionFormats.bc7?a=e.cTFBC7:s.supportedCompressionFormats.s3tc?a=o.hasAlpha?e.cTFBC3:e.cTFBC1:s.supportedCompressionFormats.pvrtc?a=o.hasAlpha?e.cTFPVRTC1_4_RGBA:e.cTFPVRTC1_4_RGB:s.supportedCompressionFormats.etc2?a=e.cTFETC2:s.supportedCompressionFormats.etc1?a=e.cTFETC1:a=e.cTFRGB565),a}function l(s){const o=s.getHasAlpha(),a=s.getNumImages(),d=[];for(let f=0;f<a;f++){const p={levels:[]},g=s.getNumLevels(f);for(let T=0;T<g;T++){const m={width:s.getImageWidth(f,T),height:s.getImageHeight(f,T)};p.levels.push(m)}d.push(p)}return{hasAlpha:o,images:d}}function i(s,o,a,d,r){const f=s.getImageTranscodedSizeInBytes(o,a,d);let p=new Uint8Array(f);if(!s.transcodeImage(p,o,a,d,1,0))return null;if(r){const g=s.getImageWidth(o,a)+3&-4,T=s.getImageHeight(o,a)+3&-4;p=c(p,0,g,T)}return p}function c(s,o,a,d){const r=new Uint16Array(4),f=new Uint16Array(a*d),p=a/4,g=d/4;for(let T=0;T<g;T++)for(let m=0;m<p;m++){const u=o+8*(T*p+m);r[0]=s[u]|s[u+1]<<8,r[1]=s[u+2]|s[u+3]<<8,r[2]=(2*(r[0]&31)+1*(r[1]&31))/3|(2*(r[0]&2016)+1*(r[1]&2016))/3&2016|(2*(r[0]&63488)+1*(r[1]&63488))/3&63488,r[3]=(2*(r[1]&31)+1*(r[0]&31))/3|(2*(r[1]&2016)+1*(r[0]&2016))/3&2016|(2*(r[1]&63488)+1*(r[0]&63488))/3&63488;for(let b=0;b<4;b++){const C=s[u+4+b];let w=(T*4+b)*a+m*4;f[w++]=r[C&3],f[w++]=r[C>>2&3],f[w++]=r[C>>4&3],f[w]=r[C>>6&3]}}return f}}async function W(e,n,t){return await new Promise((l,i)=>{const c=s=>{s.data.action==="init"?(e.removeEventListener("message",c),l(e)):s.data.action==="error"&&i(s.data.error||"error initializing worker")};e.addEventListener("message",c),e.postMessage({action:"init",url:t?F.GetBabylonScriptURL(t):void 0,wasmBinary:n},[n])})}var h;(function(e){e[e.cTFETC1=0]="cTFETC1",e[e.cTFETC2=1]="cTFETC2",e[e.cTFBC1=2]="cTFBC1",e[e.cTFBC3=3]="cTFBC3",e[e.cTFBC4=4]="cTFBC4",e[e.cTFBC5=5]="cTFBC5",e[e.cTFBC7=6]="cTFBC7",e[e.cTFPVRTC1_4_RGB=8]="cTFPVRTC1_4_RGB",e[e.cTFPVRTC1_4_RGBA=9]="cTFPVRTC1_4_RGBA",e[e.cTFASTC_4x4=10]="cTFASTC_4x4",e[e.cTFATC_RGB=11]="cTFATC_RGB",e[e.cTFATC_RGBA_INTERPOLATED_ALPHA=12]="cTFATC_RGBA_INTERPOLATED_ALPHA",e[e.cTFRGBA32=13]="cTFRGBA32",e[e.cTFRGB565=14]="cTFRGB565",e[e.cTFBGR565=15]="cTFBGR565",e[e.cTFRGBA4444=16]="cTFRGBA4444",e[e.cTFFXT1_RGB=17]="cTFFXT1_RGB",e[e.cTFPVRTC2_4_RGB=18]="cTFPVRTC2_4_RGB",e[e.cTFPVRTC2_4_RGBA=19]="cTFPVRTC2_4_RGBA",e[e.cTFETC2_EAC_R11=20]="cTFETC2_EAC_R11",e[e.cTFETC2_EAC_RG11=21]="cTFETC2_EAC_RG11"})(h||(h={}));const L={JSModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.js`,WasmModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.wasm`},V=(e,n)=>{let t;switch(e){case h.cTFETC1:t=36196;break;case h.cTFBC1:t=33776;break;case h.cTFBC4:t=33779;break;case h.cTFASTC_4x4:t=37808;break;case h.cTFETC2:t=37496;break;case h.cTFBC7:t=36492;break}if(t===void 0)throw"The chosen Basis transcoder format is not currently supported";return t};let G=null,y=null,k=0;const x=!1,H=async()=>(G||(G=new Promise((e,n)=>{y?e(y):F.LoadFileAsync(F.GetBabylonScriptURL(L.WasmModuleURL)).then(t=>{if(typeof URL!="function")return n("Basis transcoder requires an environment with a URL constructor");const l=URL.createObjectURL(new Blob([`(${R})()`],{type:"application/javascript"}));y=new Worker(l),W(y,t,L.JSModuleURL).then(e,n)}).catch(n)})),await G),_=async(e,n)=>{const t=e instanceof ArrayBuffer?new Uint8Array(e):e;return await new Promise((l,i)=>{H().then(()=>{const c=k++,s=a=>{a.data.action==="transcode"&&a.data.id===c&&(y.removeEventListener("message",s),a.data.success?l(a.data):i("Transcode is not supported on this device"))};y.addEventListener("message",s);const o=new Uint8Array(t.byteLength);o.set(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),y.postMessage({action:"transcode",id:c,imageData:o,config:n,ignoreSupportedFormats:x},[o.buffer])},c=>{i(c)})})},E=(e,n)=>{let t=n._gl?.TEXTURE_2D;e.isCube&&(t=n._gl?.TEXTURE_CUBE_MAP),n._bindTextureDirectly(t,e,!0)},v=(e,n)=>{const t=e.getEngine();for(let l=0;l<n.fileInfo.images.length;l++){const i=n.fileInfo.images[l].levels[0];if(e._invertVScale=e.invertY,n.format===-1||n.format===h.cTFRGB565)if(e.type=10,e.format=4,t._features.basisNeedsPOT&&(Math.log2(i.width)%1!==0||Math.log2(i.height)%1!==0)){const c=new U(t,2);e._invertVScale=e.invertY,c.type=10,c.format=4,c.width=i.width+3&-4,c.height=i.height+3&-4,E(c,t),t._uploadDataToTextureDirectly(c,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0),t._rescaleTexture(c,e,t.scenes[0],t._getInternalFormat(4),()=>{t._releaseTexture(c),E(e,t)})}else e._invertVScale=!e.invertY,e.width=i.width+3&-4,e.height=i.height+3&-4,e.samplingMode=2,E(e,t),t._uploadDataToTextureDirectly(e,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0);else{e.width=i.width,e.height=i.height,e.generateMipMaps=n.fileInfo.images[l].levels.length>1;const c=z.GetInternalFormatFromBasisFormat(n.format,t);e.format=c,E(e,t);const s=n.fileInfo.images[l].levels;for(let o=0;o<s.length;o++){const a=s[o];t._uploadCompressedDataToTextureDirectly(e,c,a.width,a.height,a.transcodedPixels,l,o)}t._features.basisNeedsPOT&&(Math.log2(e.width)%1!==0||Math.log2(e.height)%1!==0)&&(D.Warn("Loaded .basis texture width and height are not a power of two. Texture wrapping will be set to Texture.CLAMP_ADDRESSMODE as other modes are not supported with non power of two dimensions in webGL 1."),e._cachedWrapU=P.CLAMP_ADDRESSMODE,e._cachedWrapV=P.CLAMP_ADDRESSMODE)}}},z={JSModuleURL:L.JSModuleURL,WasmModuleURL:L.WasmModuleURL,GetInternalFormatFromBasisFormat:V,TranscodeAsync:_,LoadTextureFromTranscodeResult:v};class X{constructor(){this.supportCascades=!1}loadCubeData(n,t,l,i,c){if(Array.isArray(n))return;const s=t.getEngine().getCaps(),o={supportedCompressionFormats:{etc1:!!s.etc1,s3tc:!!s.s3tc,pvrtc:!!s.pvrtc,etc2:!!s.etc2,astc:!!s.astc,bc7:!!s.bptc}};_(n,o).then(a=>{const d=a.fileInfo.images[0].levels.length>1&&t.generateMipMaps;v(t,a),t.getEngine()._setCubeMapTextureParams(t,d),t.isReady=!0,t.onLoadedObservable.notifyObservers(t),t.onLoadedObservable.clear(),i&&i()}).catch(a=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),t.isReady=!0,c&&c(a)})}loadData(n,t,l){const i=t.getEngine().getCaps(),c={supportedCompressionFormats:{etc1:!!i.etc1,s3tc:!!i.s3tc,pvrtc:!!i.pvrtc,etc2:!!i.etc2,astc:!!i.astc,bc7:!!i.bptc}};_(n,c).then(s=>{const o=s.fileInfo.images[0].levels[0],a=s.fileInfo.images[0].levels.length>1&&t.generateMipMaps;l(o.width,o.height,a,s.format!==-1,()=>{v(t,s)})}).catch(s=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),F.Warn(`Failed to transcode Basis file: ${s}`),l(0,0,!1,!1,()=>{},!0)})}}export{X as _BasisTextureLoader};
1
+ import{ay as F,az as U,L as D,x as P}from"./index-Dl0bWA0T.js";function R(){const e={cTFETC1:0,cTFETC2:1,cTFBC1:2,cTFBC3:3,cTFBC7:6,cTFPVRTC1_4_RGB:8,cTFPVRTC1_4_RGBA:9,cTFASTC_4x4:10,cTFRGB565:14};let n=null;onmessage=s=>{if(s.data.action==="init"){if(s.data.url)try{importScripts(s.data.url)}catch(o){postMessage({action:"error",error:o})}n||(n=BASIS({wasmBinary:s.data.wasmBinary})),n!==null&&n.then(o=>{BASIS=o,o.initializeBasis(),postMessage({action:"init"})})}else if(s.data.action==="transcode"){const o=s.data.config,a=s.data.imageData,d=new BASIS.BasisFile(a),r=l(d);let f=s.data.ignoreSupportedFormats?null:t(s.data.config,r),p=!1;f===null&&(p=!0,f=r.hasAlpha?e.cTFBC3:e.cTFBC1);let g=!0;d.startTranscoding()||(g=!1);const T=[];for(let m=0;m<r.images.length&&g;m++){const u=r.images[m];if(o.loadSingleImage===void 0||o.loadSingleImage===m){let b=u.levels.length;o.loadMipmapLevels===!1&&(b=1);for(let C=0;C<b;C++){const w=u.levels[C],B=i(d,m,C,f,p);if(!B){g=!1;break}w.transcodedPixels=B,T.push(w.transcodedPixels.buffer)}}}d.close(),d.delete(),p&&(f=-1),g?postMessage({action:"transcode",success:g,id:s.data.id,fileInfo:r,format:f},T):postMessage({action:"transcode",success:g,id:s.data.id})}};function t(s,o){let a=null;return s.supportedCompressionFormats&&(s.supportedCompressionFormats.astc?a=e.cTFASTC_4x4:s.supportedCompressionFormats.bc7?a=e.cTFBC7:s.supportedCompressionFormats.s3tc?a=o.hasAlpha?e.cTFBC3:e.cTFBC1:s.supportedCompressionFormats.pvrtc?a=o.hasAlpha?e.cTFPVRTC1_4_RGBA:e.cTFPVRTC1_4_RGB:s.supportedCompressionFormats.etc2?a=e.cTFETC2:s.supportedCompressionFormats.etc1?a=e.cTFETC1:a=e.cTFRGB565),a}function l(s){const o=s.getHasAlpha(),a=s.getNumImages(),d=[];for(let f=0;f<a;f++){const p={levels:[]},g=s.getNumLevels(f);for(let T=0;T<g;T++){const m={width:s.getImageWidth(f,T),height:s.getImageHeight(f,T)};p.levels.push(m)}d.push(p)}return{hasAlpha:o,images:d}}function i(s,o,a,d,r){const f=s.getImageTranscodedSizeInBytes(o,a,d);let p=new Uint8Array(f);if(!s.transcodeImage(p,o,a,d,1,0))return null;if(r){const g=s.getImageWidth(o,a)+3&-4,T=s.getImageHeight(o,a)+3&-4;p=c(p,0,g,T)}return p}function c(s,o,a,d){const r=new Uint16Array(4),f=new Uint16Array(a*d),p=a/4,g=d/4;for(let T=0;T<g;T++)for(let m=0;m<p;m++){const u=o+8*(T*p+m);r[0]=s[u]|s[u+1]<<8,r[1]=s[u+2]|s[u+3]<<8,r[2]=(2*(r[0]&31)+1*(r[1]&31))/3|(2*(r[0]&2016)+1*(r[1]&2016))/3&2016|(2*(r[0]&63488)+1*(r[1]&63488))/3&63488,r[3]=(2*(r[1]&31)+1*(r[0]&31))/3|(2*(r[1]&2016)+1*(r[0]&2016))/3&2016|(2*(r[1]&63488)+1*(r[0]&63488))/3&63488;for(let b=0;b<4;b++){const C=s[u+4+b];let w=(T*4+b)*a+m*4;f[w++]=r[C&3],f[w++]=r[C>>2&3],f[w++]=r[C>>4&3],f[w]=r[C>>6&3]}}return f}}async function W(e,n,t){return await new Promise((l,i)=>{const c=s=>{s.data.action==="init"?(e.removeEventListener("message",c),l(e)):s.data.action==="error"&&i(s.data.error||"error initializing worker")};e.addEventListener("message",c),e.postMessage({action:"init",url:t?F.GetBabylonScriptURL(t):void 0,wasmBinary:n},[n])})}var h;(function(e){e[e.cTFETC1=0]="cTFETC1",e[e.cTFETC2=1]="cTFETC2",e[e.cTFBC1=2]="cTFBC1",e[e.cTFBC3=3]="cTFBC3",e[e.cTFBC4=4]="cTFBC4",e[e.cTFBC5=5]="cTFBC5",e[e.cTFBC7=6]="cTFBC7",e[e.cTFPVRTC1_4_RGB=8]="cTFPVRTC1_4_RGB",e[e.cTFPVRTC1_4_RGBA=9]="cTFPVRTC1_4_RGBA",e[e.cTFASTC_4x4=10]="cTFASTC_4x4",e[e.cTFATC_RGB=11]="cTFATC_RGB",e[e.cTFATC_RGBA_INTERPOLATED_ALPHA=12]="cTFATC_RGBA_INTERPOLATED_ALPHA",e[e.cTFRGBA32=13]="cTFRGBA32",e[e.cTFRGB565=14]="cTFRGB565",e[e.cTFBGR565=15]="cTFBGR565",e[e.cTFRGBA4444=16]="cTFRGBA4444",e[e.cTFFXT1_RGB=17]="cTFFXT1_RGB",e[e.cTFPVRTC2_4_RGB=18]="cTFPVRTC2_4_RGB",e[e.cTFPVRTC2_4_RGBA=19]="cTFPVRTC2_4_RGBA",e[e.cTFETC2_EAC_R11=20]="cTFETC2_EAC_R11",e[e.cTFETC2_EAC_RG11=21]="cTFETC2_EAC_RG11"})(h||(h={}));const L={JSModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.js`,WasmModuleURL:`${F._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.wasm`},V=(e,n)=>{let t;switch(e){case h.cTFETC1:t=36196;break;case h.cTFBC1:t=33776;break;case h.cTFBC4:t=33779;break;case h.cTFASTC_4x4:t=37808;break;case h.cTFETC2:t=37496;break;case h.cTFBC7:t=36492;break}if(t===void 0)throw"The chosen Basis transcoder format is not currently supported";return t};let G=null,y=null,k=0;const x=!1,H=async()=>(G||(G=new Promise((e,n)=>{y?e(y):F.LoadFileAsync(F.GetBabylonScriptURL(L.WasmModuleURL)).then(t=>{if(typeof URL!="function")return n("Basis transcoder requires an environment with a URL constructor");const l=URL.createObjectURL(new Blob([`(${R})()`],{type:"application/javascript"}));y=new Worker(l),W(y,t,L.JSModuleURL).then(e,n)}).catch(n)})),await G),_=async(e,n)=>{const t=e instanceof ArrayBuffer?new Uint8Array(e):e;return await new Promise((l,i)=>{H().then(()=>{const c=k++,s=a=>{a.data.action==="transcode"&&a.data.id===c&&(y.removeEventListener("message",s),a.data.success?l(a.data):i("Transcode is not supported on this device"))};y.addEventListener("message",s);const o=new Uint8Array(t.byteLength);o.set(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),y.postMessage({action:"transcode",id:c,imageData:o,config:n,ignoreSupportedFormats:x},[o.buffer])},c=>{i(c)})})},E=(e,n)=>{let t=n._gl?.TEXTURE_2D;e.isCube&&(t=n._gl?.TEXTURE_CUBE_MAP),n._bindTextureDirectly(t,e,!0)},v=(e,n)=>{const t=e.getEngine();for(let l=0;l<n.fileInfo.images.length;l++){const i=n.fileInfo.images[l].levels[0];if(e._invertVScale=e.invertY,n.format===-1||n.format===h.cTFRGB565)if(e.type=10,e.format=4,t._features.basisNeedsPOT&&(Math.log2(i.width)%1!==0||Math.log2(i.height)%1!==0)){const c=new U(t,2);e._invertVScale=e.invertY,c.type=10,c.format=4,c.width=i.width+3&-4,c.height=i.height+3&-4,E(c,t),t._uploadDataToTextureDirectly(c,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0),t._rescaleTexture(c,e,t.scenes[0],t._getInternalFormat(4),()=>{t._releaseTexture(c),E(e,t)})}else e._invertVScale=!e.invertY,e.width=i.width+3&-4,e.height=i.height+3&-4,e.samplingMode=2,E(e,t),t._uploadDataToTextureDirectly(e,new Uint16Array(i.transcodedPixels.buffer),l,0,4,!0);else{e.width=i.width,e.height=i.height,e.generateMipMaps=n.fileInfo.images[l].levels.length>1;const c=z.GetInternalFormatFromBasisFormat(n.format,t);e.format=c,E(e,t);const s=n.fileInfo.images[l].levels;for(let o=0;o<s.length;o++){const a=s[o];t._uploadCompressedDataToTextureDirectly(e,c,a.width,a.height,a.transcodedPixels,l,o)}t._features.basisNeedsPOT&&(Math.log2(e.width)%1!==0||Math.log2(e.height)%1!==0)&&(D.Warn("Loaded .basis texture width and height are not a power of two. Texture wrapping will be set to Texture.CLAMP_ADDRESSMODE as other modes are not supported with non power of two dimensions in webGL 1."),e._cachedWrapU=P.CLAMP_ADDRESSMODE,e._cachedWrapV=P.CLAMP_ADDRESSMODE)}}},z={JSModuleURL:L.JSModuleURL,WasmModuleURL:L.WasmModuleURL,GetInternalFormatFromBasisFormat:V,TranscodeAsync:_,LoadTextureFromTranscodeResult:v};class X{constructor(){this.supportCascades=!1}loadCubeData(n,t,l,i,c){if(Array.isArray(n))return;const s=t.getEngine().getCaps(),o={supportedCompressionFormats:{etc1:!!s.etc1,s3tc:!!s.s3tc,pvrtc:!!s.pvrtc,etc2:!!s.etc2,astc:!!s.astc,bc7:!!s.bptc}};_(n,o).then(a=>{const d=a.fileInfo.images[0].levels.length>1&&t.generateMipMaps;v(t,a),t.getEngine()._setCubeMapTextureParams(t,d),t.isReady=!0,t.onLoadedObservable.notifyObservers(t),t.onLoadedObservable.clear(),i&&i()}).catch(a=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),t.isReady=!0,c&&c(a)})}loadData(n,t,l){const i=t.getEngine().getCaps(),c={supportedCompressionFormats:{etc1:!!i.etc1,s3tc:!!i.s3tc,pvrtc:!!i.pvrtc,etc2:!!i.etc2,astc:!!i.astc,bc7:!!i.bptc}};_(n,c).then(s=>{const o=s.fileInfo.images[0].levels[0],a=s.fileInfo.images[0].levels.length>1&&t.generateMipMaps;l(o.width,o.height,a,s.format!==-1,()=>{v(t,s)})}).catch(s=>{F.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),F.Warn(`Failed to transcode Basis file: ${s}`),l(0,0,!1,!1,()=>{},!0)})}}export{X as _BasisTextureLoader};