@fps-games/editor-deployment 0.2.3-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/fps-editor-prepare.mjs +5 -0
- package/bin/fps-editor-server.mjs +2 -0
- package/licenses/THIRD_PARTY_NOTICES.txt +7 -0
- package/manifest.json +2685 -0
- package/npm-shrinkwrap.json +19 -0
- package/package.json +38 -0
- package/public/assets/abstractAudioBus-DKeLA-55.js +1 -0
- package/public/assets/animation-DY4Gs-Pw.js +1 -0
- package/public/assets/animation-DY4Gs-Pw.js.br +0 -0
- package/public/assets/animation-DY4Gs-Pw.js.gz +0 -0
- package/public/assets/animationGroup-BN6ExD_I.js +1 -0
- package/public/assets/animationGroup-BN6ExD_I.js.br +0 -0
- package/public/assets/animationGroup-BN6ExD_I.js.gz +0 -0
- package/public/assets/arcRotateCamera-BrOEThh0.js +1 -0
- package/public/assets/arcRotateCamera-BrOEThh0.js.br +0 -0
- package/public/assets/arcRotateCamera-BrOEThh0.js.gz +0 -0
- package/public/assets/babylon-core-BiQ_mrkl.js +1 -0
- package/public/assets/babylon-core-BiQ_mrkl.js.br +0 -0
- package/public/assets/babylon-core-BiQ_mrkl.js.gz +0 -0
- package/public/assets/babylon-core-DygJEuf6.js +13882 -0
- package/public/assets/babylon-core-DygJEuf6.js.br +0 -0
- package/public/assets/babylon-core-DygJEuf6.js.gz +0 -0
- package/public/assets/basisTextureLoader-BWwwG7Gw.js +1 -0
- package/public/assets/basisTextureLoader-BWwwG7Gw.js.br +0 -0
- package/public/assets/basisTextureLoader-BWwwG7Gw.js.gz +0 -0
- package/public/assets/bumpVertex-CzYtMFbI.js +177 -0
- package/public/assets/bumpVertex-CzYtMFbI.js.br +0 -0
- package/public/assets/bumpVertex-CzYtMFbI.js.gz +0 -0
- package/public/assets/bumpVertex-DIMp0NiU.js +173 -0
- package/public/assets/bumpVertex-DIMp0NiU.js.br +0 -0
- package/public/assets/bumpVertex-DIMp0NiU.js.gz +0 -0
- package/public/assets/chromaticAberration.fragment-BJhO9WeA.js +7 -0
- package/public/assets/chromaticAberration.fragment-BJhO9WeA.js.br +0 -0
- package/public/assets/chromaticAberration.fragment-BJhO9WeA.js.gz +0 -0
- package/public/assets/chromaticAberration.fragment-DEAEmyJy.js +6 -0
- package/public/assets/chromaticAberration.fragment-DEAEmyJy.js.br +0 -0
- package/public/assets/chromaticAberration.fragment-DEAEmyJy.js.gz +0 -0
- package/public/assets/circleOfConfusion.fragment-DGnleQIE.js +17 -0
- package/public/assets/circleOfConfusion.fragment-DGnleQIE.js.br +0 -0
- package/public/assets/circleOfConfusion.fragment-DGnleQIE.js.gz +0 -0
- package/public/assets/circleOfConfusion.fragment-DqQcLT7C.js +17 -0
- package/public/assets/circleOfConfusion.fragment-DqQcLT7C.js.br +0 -0
- package/public/assets/circleOfConfusion.fragment-DqQcLT7C.js.gz +0 -0
- package/public/assets/clipPlaneFragment-Da_1RMjt.js +46 -0
- package/public/assets/clipPlaneFragment-Da_1RMjt.js.br +0 -0
- package/public/assets/clipPlaneFragment-Da_1RMjt.js.gz +0 -0
- package/public/assets/clipPlaneVertex-B8PIfZU_.js +177 -0
- package/public/assets/clipPlaneVertex-B8PIfZU_.js.br +0 -0
- package/public/assets/clipPlaneVertex-B8PIfZU_.js.gz +0 -0
- package/public/assets/color.fragment-Bf62ouS6.js +20 -0
- package/public/assets/color.fragment-Bf62ouS6.js.br +0 -0
- package/public/assets/color.fragment-Bf62ouS6.js.gz +0 -0
- package/public/assets/color.fragment-DtJC5xR0.js +21 -0
- package/public/assets/color.fragment-DtJC5xR0.js.br +0 -0
- package/public/assets/color.fragment-DtJC5xR0.js.gz +0 -0
- package/public/assets/color.vertex-DYnzh3f-.js +39 -0
- package/public/assets/color.vertex-DYnzh3f-.js.br +0 -0
- package/public/assets/color.vertex-DYnzh3f-.js.gz +0 -0
- package/public/assets/color.vertex-foaAsgqw.js +32 -0
- package/public/assets/color.vertex-foaAsgqw.js.br +0 -0
- package/public/assets/color.vertex-foaAsgqw.js.gz +0 -0
- package/public/assets/dds-CbA4nCCq.js +1 -0
- package/public/assets/dds-CbA4nCCq.js.br +0 -0
- package/public/assets/dds-CbA4nCCq.js.gz +0 -0
- package/public/assets/ddsTextureLoader-Bwa3u-Gp.js +1 -0
- package/public/assets/ddsTextureLoader-Bwa3u-Gp.js.br +0 -0
- package/public/assets/ddsTextureLoader-Bwa3u-Gp.js.gz +0 -0
- package/public/assets/default.fragment-BKaVVFYF.js +526 -0
- package/public/assets/default.fragment-BKaVVFYF.js.br +0 -0
- package/public/assets/default.fragment-BKaVVFYF.js.gz +0 -0
- package/public/assets/default.fragment-DjNCicws.js +468 -0
- package/public/assets/default.fragment-DjNCicws.js.br +0 -0
- package/public/assets/default.fragment-DjNCicws.js.gz +0 -0
- package/public/assets/default.vertex-CKOvcJ54.js +193 -0
- package/public/assets/default.vertex-CKOvcJ54.js.br +0 -0
- package/public/assets/default.vertex-CKOvcJ54.js.gz +0 -0
- package/public/assets/default.vertex-DyPOsib0.js +181 -0
- package/public/assets/default.vertex-DyPOsib0.js.br +0 -0
- package/public/assets/default.vertex-DyPOsib0.js.gz +0 -0
- package/public/assets/defaultUboDeclaration-ChgZa3Dv.js +5 -0
- package/public/assets/defaultUboDeclaration-ChgZa3Dv.js.br +0 -0
- package/public/assets/defaultUboDeclaration-ChgZa3Dv.js.gz +0 -0
- package/public/assets/defaultUboDeclaration-Dzd2ch6X.js +7 -0
- package/public/assets/defaultUboDeclaration-Dzd2ch6X.js.br +0 -0
- package/public/assets/defaultUboDeclaration-Dzd2ch6X.js.gz +0 -0
- package/public/assets/depth.fragment-B9FDfPgW.js +40 -0
- package/public/assets/depth.fragment-B9FDfPgW.js.br +2 -0
- package/public/assets/depth.fragment-B9FDfPgW.js.gz +0 -0
- package/public/assets/depth.vertex-DXkbiW3p.js +57 -0
- package/public/assets/depth.vertex-DXkbiW3p.js.br +0 -0
- package/public/assets/depth.vertex-DXkbiW3p.js.gz +0 -0
- package/public/assets/depthBoxBlur.fragment-BlgJGCM0.js +6 -0
- package/public/assets/depthBoxBlur.fragment-BlgJGCM0.js.br +0 -0
- package/public/assets/depthBoxBlur.fragment-BlgJGCM0.js.gz +0 -0
- package/public/assets/depthBoxBlur.fragment-DUm61npj.js +5 -0
- package/public/assets/depthBoxBlur.fragment-DUm61npj.js.br +0 -0
- package/public/assets/depthBoxBlur.fragment-DUm61npj.js.gz +0 -0
- package/public/assets/depthOfFieldMerge.fragment-25hKWM62.js +21 -0
- package/public/assets/depthOfFieldMerge.fragment-25hKWM62.js.br +0 -0
- package/public/assets/depthOfFieldMerge.fragment-25hKWM62.js.gz +0 -0
- package/public/assets/depthOfFieldMerge.fragment-_d6h2qdf.js +26 -0
- package/public/assets/depthOfFieldMerge.fragment-_d6h2qdf.js.br +0 -0
- package/public/assets/depthOfFieldMerge.fragment-_d6h2qdf.js.gz +0 -0
- package/public/assets/easing-BkcTAuOI.js +1 -0
- package/public/assets/easing-BkcTAuOI.js.br +0 -0
- package/public/assets/easing-BkcTAuOI.js.gz +0 -0
- package/public/assets/editor-core-plugin-host-c2002442.js +1 -0
- package/public/assets/editor-core-plugin-host-c2002442.js.br +0 -0
- package/public/assets/editor-core-plugin-host-c2002442.js.gz +0 -0
- package/public/assets/exrTextureLoader-DD6CMgpF.js +1 -0
- package/public/assets/exrTextureLoader-DD6CMgpF.js.br +0 -0
- package/public/assets/exrTextureLoader-DD6CMgpF.js.gz +0 -0
- package/public/assets/flowGraphArrayIndexBlock-DAsvnV45.js +1 -0
- package/public/assets/flowGraphArrayIndexBlock-DAsvnV45.js.br +0 -0
- package/public/assets/flowGraphArrayIndexBlock-DAsvnV45.js.gz +0 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-_sVLfNt3.js +1 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-_sVLfNt3.js.br +0 -0
- package/public/assets/flowGraphBezierCurveEasingBlock-_sVLfNt3.js.gz +0 -0
- package/public/assets/flowGraphBinaryOperationBlock-D9lz9r7e.js +1 -0
- package/public/assets/flowGraphBinaryOperationBlock-D9lz9r7e.js.br +0 -0
- package/public/assets/flowGraphBinaryOperationBlock-D9lz9r7e.js.gz +0 -0
- package/public/assets/flowGraphBranchBlock-BMgiYImb.js +1 -0
- package/public/assets/flowGraphBranchBlock-BMgiYImb.js.br +0 -0
- package/public/assets/flowGraphBranchBlock-BMgiYImb.js.gz +0 -0
- package/public/assets/flowGraphCachedOperationBlock-CDf6OBvO.js +1 -0
- package/public/assets/flowGraphCachedOperationBlock-CDf6OBvO.js.br +0 -0
- package/public/assets/flowGraphCachedOperationBlock-CDf6OBvO.js.gz +0 -0
- package/public/assets/flowGraphCancelDelayBlock-BbyDVz48.js +1 -0
- package/public/assets/flowGraphCancelDelayBlock-BbyDVz48.js.br +0 -0
- package/public/assets/flowGraphCancelDelayBlock-BbyDVz48.js.gz +0 -0
- package/public/assets/flowGraphCodeExecutionBlock-fMRePVwn.js +1 -0
- package/public/assets/flowGraphCodeExecutionBlock-fMRePVwn.js.br +0 -0
- package/public/assets/flowGraphCodeExecutionBlock-fMRePVwn.js.gz +0 -0
- package/public/assets/flowGraphConditionalDataBlock-Db9HPH7K.js +1 -0
- package/public/assets/flowGraphConditionalDataBlock-Db9HPH7K.js.br +0 -0
- package/public/assets/flowGraphConditionalDataBlock-Db9HPH7K.js.gz +0 -0
- package/public/assets/flowGraphConsoleLogBlock-U9fcEDaX.js +1 -0
- package/public/assets/flowGraphConsoleLogBlock-U9fcEDaX.js.br +0 -0
- package/public/assets/flowGraphConsoleLogBlock-U9fcEDaX.js.gz +0 -0
- package/public/assets/flowGraphConstantBlock-CN1Myhpi.js +1 -0
- package/public/assets/flowGraphConstantBlock-CN1Myhpi.js.br +0 -0
- package/public/assets/flowGraphConstantBlock-CN1Myhpi.js.gz +0 -0
- package/public/assets/flowGraphContextBlock-BbRTNgI4.js +1 -0
- package/public/assets/flowGraphContextBlock-BbRTNgI4.js.br +0 -0
- package/public/assets/flowGraphContextBlock-BbRTNgI4.js.gz +0 -0
- package/public/assets/flowGraphCounterBlock-DTqShVsi.js +1 -0
- package/public/assets/flowGraphCounterBlock-DTqShVsi.js.br +0 -0
- package/public/assets/flowGraphCounterBlock-DTqShVsi.js.gz +0 -0
- package/public/assets/flowGraphDataSwitchBlock-BtEqygYT.js +1 -0
- package/public/assets/flowGraphDataSwitchBlock-BtEqygYT.js.br +0 -0
- package/public/assets/flowGraphDataSwitchBlock-BtEqygYT.js.gz +0 -0
- package/public/assets/flowGraphDebounceBlock-CNHFUJ8N.js +1 -0
- package/public/assets/flowGraphDebounceBlock-CNHFUJ8N.js.br +0 -0
- package/public/assets/flowGraphDebounceBlock-CNHFUJ8N.js.gz +0 -0
- package/public/assets/flowGraphDoNBlock-DfiUsh6W.js +1 -0
- package/public/assets/flowGraphDoNBlock-DfiUsh6W.js.br +0 -0
- package/public/assets/flowGraphDoNBlock-DfiUsh6W.js.gz +0 -0
- package/public/assets/flowGraphEasingBlock-BQz5MDh1.js +1 -0
- package/public/assets/flowGraphEasingBlock-BQz5MDh1.js.br +0 -0
- package/public/assets/flowGraphEasingBlock-BQz5MDh1.js.gz +0 -0
- package/public/assets/flowGraphFlipFlopBlock-FFeDrjtF.js +1 -0
- package/public/assets/flowGraphFlipFlopBlock-FFeDrjtF.js.br +0 -0
- package/public/assets/flowGraphFlipFlopBlock-FFeDrjtF.js.gz +0 -0
- package/public/assets/flowGraphForLoopBlock-CjPa-aIl.js +1 -0
- package/public/assets/flowGraphForLoopBlock-CjPa-aIl.js.br +0 -0
- package/public/assets/flowGraphForLoopBlock-CjPa-aIl.js.gz +0 -0
- package/public/assets/flowGraphFunctionReferenceBlock-CUUBvJaO.js +1 -0
- package/public/assets/flowGraphFunctionReferenceBlock-CUUBvJaO.js.br +0 -0
- package/public/assets/flowGraphFunctionReferenceBlock-CUUBvJaO.js.gz +0 -0
- package/public/assets/flowGraphGetAssetBlock-CuKntTUp.js +1 -0
- package/public/assets/flowGraphGetAssetBlock-CuKntTUp.js.br +0 -0
- package/public/assets/flowGraphGetAssetBlock-CuKntTUp.js.gz +0 -0
- package/public/assets/flowGraphGetPropertyBlock-r3I5d5Pw.js +1 -0
- package/public/assets/flowGraphGetPropertyBlock-r3I5d5Pw.js.br +0 -0
- package/public/assets/flowGraphGetPropertyBlock-r3I5d5Pw.js.gz +0 -0
- package/public/assets/flowGraphGetVariableBlock-ByAhPias.js +1 -0
- package/public/assets/flowGraphGetVariableBlock-ByAhPias.js.br +0 -0
- package/public/assets/flowGraphGetVariableBlock-ByAhPias.js.gz +0 -0
- package/public/assets/flowGraphIndexOfBlock-kKyrBvN9.js +1 -0
- package/public/assets/flowGraphIndexOfBlock-kKyrBvN9.js.br +0 -0
- package/public/assets/flowGraphIndexOfBlock-kKyrBvN9.js.gz +0 -0
- package/public/assets/flowGraphInterpolationBlock-C1KggJs6.js +1 -0
- package/public/assets/flowGraphInterpolationBlock-C1KggJs6.js.br +0 -0
- package/public/assets/flowGraphInterpolationBlock-C1KggJs6.js.gz +0 -0
- package/public/assets/flowGraphJsonPointerParserBlock-Cq1Nm55u.js +1 -0
- package/public/assets/flowGraphJsonPointerParserBlock-Cq1Nm55u.js.br +0 -0
- package/public/assets/flowGraphJsonPointerParserBlock-Cq1Nm55u.js.gz +0 -0
- package/public/assets/flowGraphMathBlocks-DyKkUJIM.js +1 -0
- package/public/assets/flowGraphMathBlocks-DyKkUJIM.js.br +0 -0
- package/public/assets/flowGraphMathBlocks-DyKkUJIM.js.gz +0 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DWLx9Jo-.js +1 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DWLx9Jo-.js.br +0 -0
- package/public/assets/flowGraphMathCombineExtractBlocks-DWLx9Jo-.js.gz +0 -0
- package/public/assets/flowGraphMatrixMathBlocks-CEbyv5Ky.js +1 -0
- package/public/assets/flowGraphMatrixMathBlocks-CEbyv5Ky.js.br +0 -0
- package/public/assets/flowGraphMatrixMathBlocks-CEbyv5Ky.js.gz +0 -0
- package/public/assets/flowGraphMeshPickEventBlock-DBaLM4_x.js +1 -0
- package/public/assets/flowGraphMeshPickEventBlock-DBaLM4_x.js.br +0 -0
- package/public/assets/flowGraphMeshPickEventBlock-DBaLM4_x.js.gz +0 -0
- package/public/assets/flowGraphMultiGateBlock-0zKVRfwg.js +1 -0
- package/public/assets/flowGraphMultiGateBlock-0zKVRfwg.js.br +0 -0
- package/public/assets/flowGraphMultiGateBlock-0zKVRfwg.js.gz +0 -0
- package/public/assets/flowGraphPauseAnimationBlock-Cj1qZ8KL.js +1 -0
- package/public/assets/flowGraphPauseAnimationBlock-Cj1qZ8KL.js.br +0 -0
- package/public/assets/flowGraphPauseAnimationBlock-Cj1qZ8KL.js.gz +0 -0
- package/public/assets/flowGraphPlayAnimationBlock-CmNlz0tC.js +1 -0
- package/public/assets/flowGraphPlayAnimationBlock-CmNlz0tC.js.br +0 -0
- package/public/assets/flowGraphPlayAnimationBlock-CmNlz0tC.js.gz +0 -0
- package/public/assets/flowGraphPointerOutEventBlock-CksX91Wf.js +1 -0
- package/public/assets/flowGraphPointerOutEventBlock-CksX91Wf.js.br +4 -0
- package/public/assets/flowGraphPointerOutEventBlock-CksX91Wf.js.gz +0 -0
- package/public/assets/flowGraphPointerOverEventBlock-BAzWo2rO.js +1 -0
- package/public/assets/flowGraphPointerOverEventBlock-BAzWo2rO.js.br +0 -0
- package/public/assets/flowGraphPointerOverEventBlock-BAzWo2rO.js.gz +0 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DodatkWu.js +1 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DodatkWu.js.br +0 -0
- package/public/assets/flowGraphReceiveCustomEventBlock-DodatkWu.js.gz +0 -0
- package/public/assets/flowGraphSceneReadyEventBlock-CdZZEJxf.js +1 -0
- package/public/assets/flowGraphSceneReadyEventBlock-CdZZEJxf.js.br +0 -0
- package/public/assets/flowGraphSceneReadyEventBlock-CdZZEJxf.js.gz +0 -0
- package/public/assets/flowGraphSceneTickEventBlock-BO5xEA0D.js +1 -0
- package/public/assets/flowGraphSceneTickEventBlock-BO5xEA0D.js.br +0 -0
- package/public/assets/flowGraphSceneTickEventBlock-BO5xEA0D.js.gz +0 -0
- package/public/assets/flowGraphSendCustomEventBlock-BSbW6X-n.js +1 -0
- package/public/assets/flowGraphSendCustomEventBlock-BSbW6X-n.js.br +0 -0
- package/public/assets/flowGraphSendCustomEventBlock-BSbW6X-n.js.gz +0 -0
- package/public/assets/flowGraphSequenceBlock-Ppc6pXve.js +1 -0
- package/public/assets/flowGraphSequenceBlock-Ppc6pXve.js.br +0 -0
- package/public/assets/flowGraphSequenceBlock-Ppc6pXve.js.gz +0 -0
- package/public/assets/flowGraphSetDelayBlock-Ckikj9nw.js +1 -0
- package/public/assets/flowGraphSetDelayBlock-Ckikj9nw.js.br +0 -0
- package/public/assets/flowGraphSetDelayBlock-Ckikj9nw.js.gz +0 -0
- package/public/assets/flowGraphSetPropertyBlock-BgUzizbV.js +1 -0
- package/public/assets/flowGraphSetPropertyBlock-BgUzizbV.js.br +0 -0
- package/public/assets/flowGraphSetPropertyBlock-BgUzizbV.js.gz +0 -0
- package/public/assets/flowGraphSetVariableBlock-BdpCJTDy.js +1 -0
- package/public/assets/flowGraphSetVariableBlock-BdpCJTDy.js.br +0 -0
- package/public/assets/flowGraphSetVariableBlock-BdpCJTDy.js.gz +0 -0
- package/public/assets/flowGraphStopAnimationBlock-NXtDyWkx.js +1 -0
- package/public/assets/flowGraphStopAnimationBlock-NXtDyWkx.js.br +0 -0
- package/public/assets/flowGraphStopAnimationBlock-NXtDyWkx.js.gz +0 -0
- package/public/assets/flowGraphSwitchBlock-BtAbN5pw.js +1 -0
- package/public/assets/flowGraphSwitchBlock-BtAbN5pw.js.br +0 -0
- package/public/assets/flowGraphSwitchBlock-BtAbN5pw.js.gz +0 -0
- package/public/assets/flowGraphThrottleBlock-DouJgya1.js +1 -0
- package/public/assets/flowGraphThrottleBlock-DouJgya1.js.br +0 -0
- package/public/assets/flowGraphThrottleBlock-DouJgya1.js.gz +0 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-DnCim8eo.js +1 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-DnCim8eo.js.br +0 -0
- package/public/assets/flowGraphTransformCoordinatesSystemBlock-DnCim8eo.js.gz +0 -0
- package/public/assets/flowGraphTypeToTypeBlocks-DvTPkHj8.js +1 -0
- package/public/assets/flowGraphTypeToTypeBlocks-DvTPkHj8.js.br +4 -0
- package/public/assets/flowGraphTypeToTypeBlocks-DvTPkHj8.js.gz +0 -0
- package/public/assets/flowGraphUnaryOperationBlock-DfKZLa84.js +1 -0
- package/public/assets/flowGraphUnaryOperationBlock-DfKZLa84.js.br +0 -0
- package/public/assets/flowGraphUnaryOperationBlock-DfKZLa84.js.gz +0 -0
- package/public/assets/flowGraphVectorMathBlocks-BQCEcK0m.js +1 -0
- package/public/assets/flowGraphVectorMathBlocks-BQCEcK0m.js.br +0 -0
- package/public/assets/flowGraphVectorMathBlocks-BQCEcK0m.js.gz +0 -0
- package/public/assets/flowGraphWaitAllBlock-ClqfM5vn.js +1 -0
- package/public/assets/flowGraphWaitAllBlock-ClqfM5vn.js.br +0 -0
- package/public/assets/flowGraphWaitAllBlock-ClqfM5vn.js.gz +0 -0
- package/public/assets/flowGraphWhileLoopBlock-DkTf5x3Z.js +1 -0
- package/public/assets/flowGraphWhileLoopBlock-DkTf5x3Z.js.br +0 -0
- package/public/assets/flowGraphWhileLoopBlock-DkTf5x3Z.js.gz +0 -0
- package/public/assets/fogFragmentDeclaration-CJgnG_Ui.js +22 -0
- package/public/assets/fogFragmentDeclaration-CJgnG_Ui.js.br +0 -0
- package/public/assets/fogFragmentDeclaration-CJgnG_Ui.js.gz +0 -0
- package/public/assets/fogFragmentDeclaration-Dk_KLGI0.js +23 -0
- package/public/assets/fogFragmentDeclaration-Dk_KLGI0.js.br +0 -0
- package/public/assets/fogFragmentDeclaration-Dk_KLGI0.js.gz +0 -0
- package/public/assets/glowBlurPostProcess.fragment-BmoPp0DJ.js +7 -0
- package/public/assets/glowBlurPostProcess.fragment-BmoPp0DJ.js.br +0 -0
- package/public/assets/glowBlurPostProcess.fragment-BmoPp0DJ.js.gz +0 -0
- package/public/assets/glowBlurPostProcess.fragment-DSvlweiI.js +7 -0
- package/public/assets/glowBlurPostProcess.fragment-DSvlweiI.js.br +0 -0
- package/public/assets/glowBlurPostProcess.fragment-DSvlweiI.js.gz +0 -0
- package/public/assets/glowMapGeneration.fragment-BmCna86b.js +63 -0
- package/public/assets/glowMapGeneration.fragment-BmCna86b.js.br +0 -0
- package/public/assets/glowMapGeneration.fragment-BmCna86b.js.gz +0 -0
- package/public/assets/glowMapGeneration.fragment-Bx0somqR.js +63 -0
- package/public/assets/glowMapGeneration.fragment-Bx0somqR.js.br +0 -0
- package/public/assets/glowMapGeneration.fragment-Bx0somqR.js.gz +0 -0
- package/public/assets/glowMapGeneration.vertex-C_K1FVYg.js +75 -0
- package/public/assets/glowMapGeneration.vertex-C_K1FVYg.js.br +0 -0
- package/public/assets/glowMapGeneration.vertex-C_K1FVYg.js.gz +0 -0
- package/public/assets/glowMapGeneration.vertex-Fp7OnH6p.js +75 -0
- package/public/assets/glowMapGeneration.vertex-Fp7OnH6p.js.br +0 -0
- package/public/assets/glowMapGeneration.vertex-Fp7OnH6p.js.gz +0 -0
- package/public/assets/glowMapMerge.fragment-0u_W2SCj.js +25 -0
- package/public/assets/glowMapMerge.fragment-0u_W2SCj.js.br +0 -0
- package/public/assets/glowMapMerge.fragment-0u_W2SCj.js.gz +0 -0
- package/public/assets/glowMapMerge.fragment-DbrUnHjm.js +23 -0
- package/public/assets/glowMapMerge.fragment-DbrUnHjm.js.br +0 -0
- package/public/assets/glowMapMerge.fragment-DbrUnHjm.js.gz +0 -0
- package/public/assets/glowMapMerge.vertex-CuTJKa7K.js +7 -0
- package/public/assets/glowMapMerge.vertex-CuTJKa7K.js.br +0 -0
- package/public/assets/glowMapMerge.vertex-CuTJKa7K.js.gz +0 -0
- package/public/assets/glowMapMerge.vertex-DAvXVsHl.js +8 -0
- package/public/assets/glowMapMerge.vertex-DAvXVsHl.js.br +0 -0
- package/public/assets/glowMapMerge.vertex-DAvXVsHl.js.gz +0 -0
- package/public/assets/grain.fragment-6VtM1VfQ.js +6 -0
- package/public/assets/grain.fragment-6VtM1VfQ.js.br +0 -0
- package/public/assets/grain.fragment-6VtM1VfQ.js.gz +0 -0
- package/public/assets/grain.fragment-DDSnqVVY.js +5 -0
- package/public/assets/grain.fragment-DDSnqVVY.js.br +4 -1
- package/public/assets/grain.fragment-DDSnqVVY.js.gz +0 -0
- package/public/assets/harmonicsFunctions-BKiAKdWL.js +189 -0
- package/public/assets/harmonicsFunctions-BKiAKdWL.js.br +0 -0
- package/public/assets/harmonicsFunctions-BKiAKdWL.js.gz +0 -0
- package/public/assets/harmonicsFunctions-BdFr0SEn.js +192 -0
- package/public/assets/harmonicsFunctions-BdFr0SEn.js.br +0 -0
- package/public/assets/harmonicsFunctions-BdFr0SEn.js.gz +0 -0
- package/public/assets/hdrTextureLoader-BZMtuzrh.js +2 -0
- package/public/assets/hdrTextureLoader-BZMtuzrh.js.br +0 -0
- package/public/assets/hdrTextureLoader-BZMtuzrh.js.gz +0 -0
- package/public/assets/hemisphericLight-BF-Si7a7.js +1 -0
- package/public/assets/hemisphericLight-BF-Si7a7.js.br +0 -0
- package/public/assets/hemisphericLight-BF-Si7a7.js.gz +0 -0
- package/public/assets/iesTextureLoader-CfjtMyLq.js +2 -0
- package/public/assets/iesTextureLoader-CfjtMyLq.js.br +0 -0
- package/public/assets/iesTextureLoader-CfjtMyLq.js.gz +0 -0
- package/public/assets/index-Bc_2vm3Z.js +4 -0
- package/public/assets/index-Bc_2vm3Z.js.br +0 -0
- package/public/assets/index-Bc_2vm3Z.js.gz +0 -0
- package/public/assets/index-DKM_mvsP.js +1 -0
- package/public/assets/index-DKM_mvsP.js.br +0 -0
- package/public/assets/index-DKM_mvsP.js.gz +0 -0
- package/public/assets/instancesDeclaration-DpE3Y0C1.js +23 -0
- package/public/assets/instancesDeclaration-DpE3Y0C1.js.br +0 -0
- package/public/assets/instancesDeclaration-DpE3Y0C1.js.gz +0 -0
- package/public/assets/ktxTextureLoader-7eTZtvh5.js +1 -0
- package/public/assets/ktxTextureLoader-7eTZtvh5.js.br +0 -0
- package/public/assets/ktxTextureLoader-7eTZtvh5.js.gz +0 -0
- package/public/assets/lazy-BcZCe0kL.js +2 -0
- package/public/assets/lazy-BcZCe0kL.js.br +0 -0
- package/public/assets/lazy-BcZCe0kL.js.gz +0 -0
- package/public/assets/lod.fragment-CEfFyCdU.js +3 -0
- package/public/assets/lod.fragment-CEfFyCdU.js.br +0 -0
- package/public/assets/lod.fragment-CEfFyCdU.js.gz +0 -0
- package/public/assets/lod.fragment-DT0r7jVm.js +3 -0
- package/public/assets/lod.fragment-DT0r7jVm.js.br +0 -0
- package/public/assets/lod.fragment-DT0r7jVm.js.gz +0 -0
- package/public/assets/lodCube.fragment-BP5e9OXG.js +22 -0
- package/public/assets/lodCube.fragment-BP5e9OXG.js.br +0 -0
- package/public/assets/lodCube.fragment-BP5e9OXG.js.gz +0 -0
- package/public/assets/lodCube.fragment-mh7W3FpN.js +22 -0
- package/public/assets/lodCube.fragment-mh7W3FpN.js.br +0 -0
- package/public/assets/lodCube.fragment-mh7W3FpN.js.gz +0 -0
- package/public/assets/logDepthDeclaration-DapB3ji1.js +4 -0
- package/public/assets/logDepthDeclaration-_-FceU2g.js +4 -0
- package/public/assets/logDepthFragment-BowlR5UY.js +4 -0
- package/public/assets/logDepthFragment-D1ov0i96.js +4 -0
- package/public/assets/logDepthFragment-D1ov0i96.js.br +0 -0
- package/public/assets/logDepthFragment-D1ov0i96.js.gz +0 -0
- package/public/assets/logDepthVertex-dEn2jB_d.js +4 -0
- package/public/assets/logDepthVertex-dEn2jB_d.js.br +2 -0
- package/public/assets/logDepthVertex-dEn2jB_d.js.gz +0 -0
- package/public/assets/logDepthVertex-jWY57236.js +4 -0
- package/public/assets/logDepthVertex-jWY57236.js.br +3 -0
- package/public/assets/logDepthVertex-jWY57236.js.gz +0 -0
- package/public/assets/mainUVVaryingDeclaration-B-lJcjME.js +4 -0
- package/public/assets/mainUVVaryingDeclaration-D1LMmumw.js +4 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js +1 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.br +0 -0
- package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.gz +0 -0
- package/public/assets/meshUboDeclaration-B5FWJmqY.js +13 -0
- package/public/assets/meshUboDeclaration-B5FWJmqY.js.br +1 -0
- package/public/assets/meshUboDeclaration-B5FWJmqY.js.gz +0 -0
- package/public/assets/meshUboDeclaration-DthvNL2q.js +13 -0
- package/public/assets/meshUboDeclaration-DthvNL2q.js.br +0 -0
- package/public/assets/meshUboDeclaration-DthvNL2q.js.gz +0 -0
- package/public/assets/morphTargetsVertex-DHRA_mKb.js +100 -0
- package/public/assets/morphTargetsVertex-DHRA_mKb.js.br +0 -0
- package/public/assets/morphTargetsVertex-DHRA_mKb.js.gz +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-BDN2XF0x.js +2 -0
- package/public/assets/oitFinalSimpleBlend.fragment-BDN2XF0x.js.br +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-BDN2XF0x.js.gz +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-C5RtcXZE.js +3 -0
- package/public/assets/oitFinalSimpleBlend.fragment-C5RtcXZE.js.br +0 -0
- package/public/assets/oitFinalSimpleBlend.fragment-C5RtcXZE.js.gz +0 -0
- package/public/assets/oitFragment-CAXGfgFH.js +1202 -0
- package/public/assets/oitFragment-CAXGfgFH.js.br +0 -0
- package/public/assets/oitFragment-CAXGfgFH.js.gz +0 -0
- package/public/assets/oitFragment-ay081Wsi.js +1077 -0
- package/public/assets/oitFragment-ay081Wsi.js.br +0 -0
- package/public/assets/oitFragment-ay081Wsi.js.gz +0 -0
- package/public/assets/openpbrMaterial-KVtjwf0K.js +2 -0
- package/public/assets/openpbrMaterial-KVtjwf0K.js.br +0 -0
- package/public/assets/openpbrMaterial-KVtjwf0K.js.gz +0 -0
- package/public/assets/outline.fragment-BanVWYIB.js +21 -0
- package/public/assets/outline.fragment-BanVWYIB.js.br +0 -0
- package/public/assets/outline.fragment-BanVWYIB.js.gz +0 -0
- package/public/assets/outline.fragment-CFKJOJ3l.js +18 -0
- package/public/assets/outline.fragment-CFKJOJ3l.js.br +0 -0
- package/public/assets/outline.fragment-CFKJOJ3l.js.gz +0 -0
- package/public/assets/outline.vertex-1q1i1Z0k.js +47 -0
- package/public/assets/outline.vertex-1q1i1Z0k.js.br +0 -0
- package/public/assets/outline.vertex-1q1i1Z0k.js.gz +0 -0
- package/public/assets/outline.vertex-yrM712o1.js +47 -0
- package/public/assets/outline.vertex-yrM712o1.js.br +0 -0
- package/public/assets/outline.vertex-yrM712o1.js.gz +0 -0
- package/public/assets/passCube.fragment-4x9m1yB9.js +23 -0
- package/public/assets/passCube.fragment-4x9m1yB9.js.br +0 -0
- package/public/assets/passCube.fragment-4x9m1yB9.js.gz +0 -0
- package/public/assets/passCube.fragment-j0YEcfrM.js +23 -0
- package/public/assets/passCube.fragment-j0YEcfrM.js.br +3 -0
- package/public/assets/passCube.fragment-j0YEcfrM.js.gz +0 -0
- package/public/assets/pbr.fragment-D4c9Imut.js +3277 -0
- package/public/assets/pbr.fragment-D4c9Imut.js.br +0 -0
- package/public/assets/pbr.fragment-D4c9Imut.js.gz +0 -0
- package/public/assets/pbr.fragment-qKZeRSsL.js +3327 -0
- package/public/assets/pbr.fragment-qKZeRSsL.js.br +0 -0
- package/public/assets/pbr.fragment-qKZeRSsL.js.gz +0 -0
- package/public/assets/pbr.vertex-CNWuYREY.js +227 -0
- package/public/assets/pbr.vertex-CNWuYREY.js.br +0 -0
- package/public/assets/pbr.vertex-CNWuYREY.js.gz +0 -0
- package/public/assets/pbr.vertex-joJmxK7Z.js +357 -0
- package/public/assets/pbr.vertex-joJmxK7Z.js.br +0 -0
- package/public/assets/pbr.vertex-joJmxK7Z.js.gz +0 -0
- package/public/assets/playable-local-editor-entry-BpT9asOr.js +4 -0
- package/public/assets/playable-local-editor-entry-BpT9asOr.js.br +0 -0
- package/public/assets/playable-local-editor-entry-BpT9asOr.js.gz +0 -0
- package/public/assets/playable-sdk-CrJqCMfO.js +5074 -0
- package/public/assets/playable-sdk-CrJqCMfO.js.br +0 -0
- package/public/assets/playable-sdk-CrJqCMfO.js.gz +0 -0
- package/public/assets/rgbdDecode.fragment-DVQvgSkR.js +5 -0
- package/public/assets/rgbdDecode.fragment-DVQvgSkR.js.br +0 -0
- package/public/assets/rgbdDecode.fragment-DVQvgSkR.js.gz +0 -0
- package/public/assets/rgbdDecode.fragment-jfF24wPs.js +5 -0
- package/public/assets/rgbdDecode.fragment-jfF24wPs.js.br +0 -0
- package/public/assets/rgbdDecode.fragment-jfF24wPs.js.gz +0 -0
- package/public/assets/rgbdEncode.fragment-AWVgflWm.js +5 -0
- package/public/assets/rgbdEncode.fragment-AWVgflWm.js.br +0 -0
- package/public/assets/rgbdEncode.fragment-AWVgflWm.js.gz +0 -0
- package/public/assets/rgbdEncode.fragment-DZGlem9k.js +5 -0
- package/public/assets/rgbdEncode.fragment-DZGlem9k.js.br +0 -0
- package/public/assets/rgbdEncode.fragment-DZGlem9k.js.gz +0 -0
- package/public/assets/sceneLoader-BJz_3O1N.js +1 -0
- package/public/assets/sceneLoader-BJz_3O1N.js.br +0 -0
- package/public/assets/sceneLoader-BJz_3O1N.js.gz +0 -0
- package/public/assets/screenSpaceCurvature.fragment-B-CUjGj1.js +15 -0
- package/public/assets/screenSpaceCurvature.fragment-B-CUjGj1.js.br +0 -0
- package/public/assets/screenSpaceCurvature.fragment-B-CUjGj1.js.gz +0 -0
- package/public/assets/selection.fragment-G8Edn4iI.js +35 -0
- package/public/assets/selection.fragment-G8Edn4iI.js.br +0 -0
- package/public/assets/selection.fragment-G8Edn4iI.js.gz +0 -0
- package/public/assets/selection.fragment-lxotM05-.js +35 -0
- package/public/assets/selection.fragment-lxotM05-.js.br +0 -0
- package/public/assets/selection.fragment-lxotM05-.js.gz +0 -0
- package/public/assets/selection.vertex-BXV_f7Y2.js +74 -0
- package/public/assets/selection.vertex-BXV_f7Y2.js.br +0 -0
- package/public/assets/selection.vertex-BXV_f7Y2.js.gz +0 -0
- package/public/assets/selection.vertex-N4uHCMNz.js +73 -0
- package/public/assets/selection.vertex-N4uHCMNz.js.br +0 -0
- package/public/assets/selection.vertex-N4uHCMNz.js.gz +0 -0
- package/public/assets/selectionOutline.fragment-GI37GIN9.js +48 -0
- package/public/assets/selectionOutline.fragment-GI37GIN9.js.br +0 -0
- package/public/assets/selectionOutline.fragment-GI37GIN9.js.gz +0 -0
- package/public/assets/selectionOutline.fragment-Hvq4J9-Z.js +47 -0
- package/public/assets/selectionOutline.fragment-Hvq4J9-Z.js.br +0 -0
- package/public/assets/selectionOutline.fragment-Hvq4J9-Z.js.gz +0 -0
- package/public/assets/shadowMap.fragment-Bc5HgWvg.js +79 -0
- package/public/assets/shadowMap.fragment-Bc5HgWvg.js.br +0 -0
- package/public/assets/shadowMap.fragment-Bc5HgWvg.js.gz +0 -0
- package/public/assets/shadowMap.fragment-C43vlUxN.js +78 -0
- package/public/assets/shadowMap.fragment-C43vlUxN.js.br +0 -0
- package/public/assets/shadowMap.fragment-C43vlUxN.js.gz +0 -0
- package/public/assets/shadowMap.vertex-CneYEevu.js +119 -0
- package/public/assets/shadowMap.vertex-CneYEevu.js.br +0 -0
- package/public/assets/shadowMap.vertex-CneYEevu.js.gz +0 -0
- package/public/assets/shadowMap.vertex-DCmGPxPg.js +109 -0
- package/public/assets/shadowMap.vertex-DCmGPxPg.js.br +0 -0
- package/public/assets/shadowMap.vertex-DCmGPxPg.js.gz +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-20DchIFl.js +4 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-20DchIFl.js.br +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-20DchIFl.js.gz +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-CcyAwByw.js +4 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-CcyAwByw.js.br +0 -0
- package/public/assets/shadowMapFragmentSoftTransparentShadow-CcyAwByw.js.gz +0 -0
- package/public/assets/sharpen.fragment-u0Zk00IW.js +8 -0
- package/public/assets/sharpen.fragment-u0Zk00IW.js.br +0 -0
- package/public/assets/sharpen.fragment-u0Zk00IW.js.gz +0 -0
- package/public/assets/standardMaterial-CgDYhl-K.js +1329 -0
- package/public/assets/standardMaterial-CgDYhl-K.js.br +0 -0
- package/public/assets/standardMaterial-CgDYhl-K.js.gz +0 -0
- package/public/assets/textureMerger.fragment-Bb06oGwL.js +84 -0
- package/public/assets/textureMerger.fragment-Bb06oGwL.js.br +0 -0
- package/public/assets/textureMerger.fragment-Bb06oGwL.js.gz +0 -0
- package/public/assets/textureMerger.fragment-yYgn-A7X.js +76 -0
- package/public/assets/textureMerger.fragment-yYgn-A7X.js.br +0 -0
- package/public/assets/textureMerger.fragment-yYgn-A7X.js.gz +0 -0
- package/public/assets/tgaTextureLoader-BD8cHb3T.js +1 -0
- package/public/assets/tgaTextureLoader-BD8cHb3T.js.br +0 -0
- package/public/assets/tgaTextureLoader-BD8cHb3T.js.gz +0 -0
- package/public/assets/vertexColorMixing-31u6kp3A.js +24 -0
- package/public/assets/vertexColorMixing-31u6kp3A.js.br +1 -0
- package/public/assets/vertexColorMixing-31u6kp3A.js.gz +0 -0
- package/public/assets/vertexColorMixing-CWKPQGdm.js +20 -0
- package/public/assets/vertexColorMixing-CWKPQGdm.js.br +0 -0
- package/public/assets/vertexColorMixing-CWKPQGdm.js.gz +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-9wHUWZ30.js +11 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-9wHUWZ30.js.br +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-9wHUWZ30.js.gz +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-N-9p72Fm.js +12 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-N-9p72Fm.js.br +0 -0
- package/public/assets/volumetricLightingBlendVolume.fragment-N-9p72Fm.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-DJkHTox8.js +15 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-DJkHTox8.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-DJkHTox8.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-uuHa0TVJ.js +13 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-uuHa0TVJ.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.fragment-uuHa0TVJ.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DR3E2COu.js +4 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DR3E2COu.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DR3E2COu.js.gz +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DhGKqZWW.js +5 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DhGKqZWW.js.br +0 -0
- package/public/assets/volumetricLightingRenderVolume.vertex-DhGKqZWW.js.gz +0 -0
- package/public/assets/webAudioBus-uR5af0TN.js +1 -0
- package/public/assets/webAudioBus-uR5af0TN.js.br +0 -0
- package/public/assets/webAudioBus-uR5af0TN.js.gz +0 -0
- package/public/assets/webAudioMainBus-B4JHk1VB.js +1 -0
- package/public/assets/webAudioMainBus-B4JHk1VB.js.br +0 -0
- package/public/assets/webAudioMainBus-B4JHk1VB.js.gz +0 -0
- package/public/assets/workerPool-H9Ji3mCo.js +1 -0
- package/public/assets/workerPool-H9Ji3mCo.js.br +2 -0
- package/public/assets/workerPool-H9Ji3mCo.js.gz +0 -0
- package/public/index.html +19 -0
- package/public/index.html.br +0 -0
- package/public/index.html.gz +0 -0
- package/runtime/editor-control-plane.mjs +5 -0
- package/worker/editor-service-worker.mjs +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var Jn=Object.create;var $t=Object.defineProperty;var Kn=Object.getOwnPropertyDescriptor;var Wn=Object.getOwnPropertyNames;var Yn=Object.getPrototypeOf,Qn=Object.prototype.hasOwnProperty;var $=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Zn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Wn(t))!Qn.call(e,i)&&i!==r&&$t(e,i,{get:()=>t[i],enumerable:!(n=Kn(t,i))||n.enumerable});return e};var It=(e,t,r)=>(r=e!=null?Jn(Yn(e)):{},Zn(t||!e||!e.__esModule?$t(r,"default",{value:e,enumerable:!0}):r,e));var ne=$((Ua,Ot)=>{"use strict";var ei="2.0.0",ti=Number.MAX_SAFE_INTEGER||9007199254740991,ri=16,ni=250,ii=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Ot.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:ri,MAX_SAFE_BUILD_LENGTH:ni,MAX_SAFE_INTEGER:ti,RELEASE_TYPES:ii,SEMVER_SPEC_VERSION:ei,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var fe=$((Va,St)=>{"use strict";var oi=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};St.exports=oi});var ie=$((G,Pt)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:ke,MAX_SAFE_BUILD_LENGTH:si,MAX_LENGTH:ai}=ne(),ci=fe();G=Pt.exports={};var li=G.re=[],di=G.safeRe=[],g=G.src=[],ui=G.safeSrc=[],E=G.t={},fi=0,Me="[a-zA-Z0-9-]",pi=[["\\s",1],["\\d",ai],[Me,si]],mi=e=>{for(let[t,r]of pi)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},I=(e,t,r)=>{let n=mi(t),i=fi++;ci(e,i,t),E[e]=i,g[i]=t,ui[i]=n,li[i]=new RegExp(t,r?"g":void 0),di[i]=new RegExp(n,r?"g":void 0)};I("NUMERICIDENTIFIER","0|[1-9]\\d*");I("NUMERICIDENTIFIERLOOSE","\\d+");I("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Me}*`);I("MAINVERSION",`(${g[E.NUMERICIDENTIFIER]})\\.(${g[E.NUMERICIDENTIFIER]})\\.(${g[E.NUMERICIDENTIFIER]})`);I("MAINVERSIONLOOSE",`(${g[E.NUMERICIDENTIFIERLOOSE]})\\.(${g[E.NUMERICIDENTIFIERLOOSE]})\\.(${g[E.NUMERICIDENTIFIERLOOSE]})`);I("PRERELEASEIDENTIFIER",`(?:${g[E.NONNUMERICIDENTIFIER]}|${g[E.NUMERICIDENTIFIER]})`);I("PRERELEASEIDENTIFIERLOOSE",`(?:${g[E.NONNUMERICIDENTIFIER]}|${g[E.NUMERICIDENTIFIERLOOSE]})`);I("PRERELEASE",`(?:-(${g[E.PRERELEASEIDENTIFIER]}(?:\\.${g[E.PRERELEASEIDENTIFIER]})*))`);I("PRERELEASELOOSE",`(?:-?(${g[E.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${g[E.PRERELEASEIDENTIFIERLOOSE]})*))`);I("BUILDIDENTIFIER",`${Me}+`);I("BUILD",`(?:\\+(${g[E.BUILDIDENTIFIER]}(?:\\.${g[E.BUILDIDENTIFIER]})*))`);I("FULLPLAIN",`v?${g[E.MAINVERSION]}${g[E.PRERELEASE]}?${g[E.BUILD]}?`);I("FULL",`^${g[E.FULLPLAIN]}$`);I("LOOSEPLAIN",`[v=\\s]*${g[E.MAINVERSIONLOOSE]}${g[E.PRERELEASELOOSE]}?${g[E.BUILD]}?`);I("LOOSE",`^${g[E.LOOSEPLAIN]}$`);I("GTLT","((?:<|>)?=?)");I("XRANGEIDENTIFIERLOOSE",`${g[E.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);I("XRANGEIDENTIFIER",`${g[E.NUMERICIDENTIFIER]}|x|X|\\*`);I("XRANGEPLAIN",`[v=\\s]*(${g[E.XRANGEIDENTIFIER]})(?:\\.(${g[E.XRANGEIDENTIFIER]})(?:\\.(${g[E.XRANGEIDENTIFIER]})(?:${g[E.PRERELEASE]})?${g[E.BUILD]}?)?)?`);I("XRANGEPLAINLOOSE",`[v=\\s]*(${g[E.XRANGEIDENTIFIERLOOSE]})(?:\\.(${g[E.XRANGEIDENTIFIERLOOSE]})(?:\\.(${g[E.XRANGEIDENTIFIERLOOSE]})(?:${g[E.PRERELEASELOOSE]})?${g[E.BUILD]}?)?)?`);I("XRANGE",`^${g[E.GTLT]}\\s*${g[E.XRANGEPLAIN]}$`);I("XRANGELOOSE",`^${g[E.GTLT]}\\s*${g[E.XRANGEPLAINLOOSE]}$`);I("COERCEPLAIN",`(^|[^\\d])(\\d{1,${ke}})(?:\\.(\\d{1,${ke}}))?(?:\\.(\\d{1,${ke}}))?`);I("COERCE",`${g[E.COERCEPLAIN]}(?:$|[^\\d])`);I("COERCEFULL",g[E.COERCEPLAIN]+`(?:${g[E.PRERELEASE]})?(?:${g[E.BUILD]})?(?:$|[^\\d])`);I("COERCERTL",g[E.COERCE],!0);I("COERCERTLFULL",g[E.COERCEFULL],!0);I("LONETILDE","(?:~>?)");I("TILDETRIM",`(\\s*)${g[E.LONETILDE]}\\s+`,!0);G.tildeTrimReplace="$1~";I("TILDE",`^${g[E.LONETILDE]}${g[E.XRANGEPLAIN]}$`);I("TILDELOOSE",`^${g[E.LONETILDE]}${g[E.XRANGEPLAINLOOSE]}$`);I("LONECARET","(?:\\^)");I("CARETTRIM",`(\\s*)${g[E.LONECARET]}\\s+`,!0);G.caretTrimReplace="$1^";I("CARET",`^${g[E.LONECARET]}${g[E.XRANGEPLAIN]}$`);I("CARETLOOSE",`^${g[E.LONECARET]}${g[E.XRANGEPLAINLOOSE]}$`);I("COMPARATORLOOSE",`^${g[E.GTLT]}\\s*(${g[E.LOOSEPLAIN]})$|^$`);I("COMPARATOR",`^${g[E.GTLT]}\\s*(${g[E.FULLPLAIN]})$|^$`);I("COMPARATORTRIM",`(\\s*)${g[E.GTLT]}\\s*(${g[E.LOOSEPLAIN]}|${g[E.XRANGEPLAIN]})`,!0);G.comparatorTrimReplace="$1$2$3";I("HYPHENRANGE",`^\\s*(${g[E.XRANGEPLAIN]})\\s+-\\s+(${g[E.XRANGEPLAIN]})\\s*$`);I("HYPHENRANGELOOSE",`^\\s*(${g[E.XRANGEPLAINLOOSE]})\\s+-\\s+(${g[E.XRANGEPLAINLOOSE]})\\s*$`);I("STAR","(<|>)?=?\\s*\\*");I("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");I("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ve=$((Ga,Rt)=>{"use strict";var hi=Object.freeze({loose:!0}),gi=Object.freeze({}),Ei=e=>e?typeof e!="object"?hi:e:gi;Rt.exports=Ei});var He=$((Xa,Ct)=>{"use strict";var Tt=/^[0-9]+$/,jt=(e,t)=>{if(typeof e=="number"&&typeof t=="number")return e===t?0:e<t?-1:1;let r=Tt.test(e),n=Tt.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:e<t?-1:1},yi=(e,t)=>jt(t,e);Ct.exports={compareIdentifiers:jt,rcompareIdentifiers:yi}});var L=$((Ba,At)=>{"use strict";var $e=fe(),{MAX_LENGTH:xt,MAX_SAFE_INTEGER:Ie}=ne(),{safeRe:Oe,t:Se}=ie(),wi=ve(),{compareIdentifiers:Ue}=He(),bi=(e,t)=>{let r=t.split(".");if(r.length>e.length)return!1;for(let n=0;n<r.length;n++)if(Ue(e[n],r[n])!==0)return!1;return!0},Ve=class e{constructor(t,r){if(r=wi(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>xt)throw new TypeError(`version is longer than ${xt} characters`);$e("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?Oe[Se.LOOSE]:Oe[Se.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>Ie||this.major<0)throw new TypeError("Invalid major version");if(this.minor>Ie||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>Ie||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){let o=+i;if(o>=0&&o<Ie)return o}return i}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if($e("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if(typeof t=="string"&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],i=t.prerelease[r];if($e("prerelease compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return Ue(n,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],i=t.build[r];if($e("build compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return Ue(n,i)}while(++r)}inc(t,r,n){if(t.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let i=`-${r}`.match(this.options.loose?Oe[Se.PRERELEASELOOSE]:Oe[Se.PRERELEASE]);if(!i||i[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let i=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[i];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(r){let o=[r,i];if(n===!1&&(o=[r]),bi(this.prerelease,r)){let s=this.prerelease[r.split(".").length];isNaN(s)&&(this.prerelease=o)}else this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};At.exports=Ve});var Y=$((Ja,Lt)=>{"use strict";var Nt=L(),vi=(e,t,r=!1)=>{if(e instanceof Nt)return e;try{return new Nt(e,t)}catch(n){if(!r)return null;throw n}};Lt.exports=vi});var zt=$((Ka,qt)=>{"use strict";var $i=Y(),Ii=(e,t)=>{let r=$i(e,t);return r?r.version:null};qt.exports=Ii});var Dt=$((Wa,Ft)=>{"use strict";var Oi=Y(),Si=(e,t)=>{let r=Oi(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};Ft.exports=Si});var Mt=$((Ya,kt)=>{"use strict";var _t=L(),Pi=(e,t,r,n,i)=>{typeof r=="string"&&(i=n,n=r,r=void 0);try{return new _t(e instanceof _t?e.version:e,r).inc(t,n,i).version}catch{return null}};kt.exports=Pi});var Vt=$((Qa,Ut)=>{"use strict";var Ht=Y(),Ri=(e,t)=>{let r=Ht(e,null,!0),n=Ht(t,null,!0),i=r.compare(n);if(i===0)return null;let o=i>0,s=o?r:n,a=o?n:r,c=!!s.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(s)===0)return a.minor&&!a.patch?"minor":"patch"}let p=c?"pre":"";return r.major!==n.major?p+"major":r.minor!==n.minor?p+"minor":r.patch!==n.patch?p+"patch":"prerelease"};Ut.exports=Ri});var Xt=$((Za,Gt)=>{"use strict";var Ti=L(),ji=(e,t)=>new Ti(e,t).major;Gt.exports=ji});var Jt=$((ec,Bt)=>{"use strict";var Ci=L(),xi=(e,t)=>new Ci(e,t).minor;Bt.exports=xi});var Wt=$((tc,Kt)=>{"use strict";var Ai=L(),Ni=(e,t)=>new Ai(e,t).patch;Kt.exports=Ni});var Qt=$((rc,Yt)=>{"use strict";var Li=Y(),qi=(e,t)=>{let r=Li(e,t);return r&&r.prerelease.length?r.prerelease:null};Yt.exports=qi});var M=$((nc,er)=>{"use strict";var Zt=L(),zi=(e,t,r)=>new Zt(e,r).compare(new Zt(t,r));er.exports=zi});var rr=$((ic,tr)=>{"use strict";var Fi=M(),Di=(e,t,r)=>Fi(t,e,r);tr.exports=Di});var ir=$((oc,nr)=>{"use strict";var _i=M(),ki=(e,t)=>_i(e,t,!0);nr.exports=ki});var Pe=$((sc,sr)=>{"use strict";var or=L(),Mi=(e,t,r)=>{let n=new or(e,r),i=new or(t,r);return n.compare(i)||n.compareBuild(i)};sr.exports=Mi});var cr=$((ac,ar)=>{"use strict";var Hi=Pe(),Ui=(e,t)=>e.sort((r,n)=>Hi(r,n,t));ar.exports=Ui});var dr=$((cc,lr)=>{"use strict";var Vi=Pe(),Gi=(e,t)=>e.sort((r,n)=>Vi(n,r,t));lr.exports=Gi});var pe=$((lc,ur)=>{"use strict";var Xi=M(),Bi=(e,t,r)=>Xi(e,t,r)>0;ur.exports=Bi});var Re=$((dc,fr)=>{"use strict";var Ji=M(),Ki=(e,t,r)=>Ji(e,t,r)<0;fr.exports=Ki});var Ge=$((uc,pr)=>{"use strict";var Wi=M(),Yi=(e,t,r)=>Wi(e,t,r)===0;pr.exports=Yi});var Xe=$((fc,mr)=>{"use strict";var Qi=M(),Zi=(e,t,r)=>Qi(e,t,r)!==0;mr.exports=Zi});var Te=$((pc,hr)=>{"use strict";var eo=M(),to=(e,t,r)=>eo(e,t,r)>=0;hr.exports=to});var je=$((mc,gr)=>{"use strict";var ro=M(),no=(e,t,r)=>ro(e,t,r)<=0;gr.exports=no});var Be=$((hc,Er)=>{"use strict";var io=Ge(),oo=Xe(),so=pe(),ao=Te(),co=Re(),lo=je(),uo=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return io(e,r,n);case"!=":return oo(e,r,n);case">":return so(e,r,n);case">=":return ao(e,r,n);case"<":return co(e,r,n);case"<=":return lo(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Er.exports=uo});var wr=$((gc,yr)=>{"use strict";var fo=L(),po=Y(),{safeRe:Ce,t:xe}=ie(),mo=(e,t)=>{if(e instanceof fo)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?Ce[xe.COERCEFULL]:Ce[xe.COERCE]);else{let c=t.includePrerelease?Ce[xe.COERCERTLFULL]:Ce[xe.COERCERTL],u;for(;(u=c.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],i=r[3]||"0",o=r[4]||"0",s=t.includePrerelease&&r[5]?`-${r[5]}`:"",a=t.includePrerelease&&r[6]?`+${r[6]}`:"";return po(`${n}.${i}.${o}${s}${a}`,t)};yr.exports=mo});var vr=$((Ec,br)=>{"use strict";var ho=Y(),go=ne(),Eo=L(),yo=(e,t,r)=>{if(!go.RELEASE_TYPES.includes(t))return null;let n=wo(e,r);return n&&bo(n,t)},wo=(e,t)=>{let r=e instanceof Eo?e.version:e;return ho(r,t)},bo=(e,t)=>{if(vo(t))return e.version;switch(e.prerelease=[],t){case"major":e.minor=0,e.patch=0;break;case"minor":e.patch=0;break}return e.format()},vo=e=>e.startsWith("pre");br.exports=yo});var Ir=$((yc,$r)=>{"use strict";var Je=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let i=this.map.keys().next().value;this.delete(i)}this.map.set(t,r)}return this}};$r.exports=Je});var H=$((wc,Rr)=>{"use strict";var $o=/\s+/g,Ke=class e{constructor(t,r){if(r=Oo(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof We)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace($o," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(i=>!Sr(i[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let i of this.set)if(i.length===1&&No(i[0])){this.set=[i];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t<this.set.length;t++){t>0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n<r.length;n++)n>0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){t=t.replace(Ao,"");let n=((this.options.includePrerelease&&Co)|(this.options.loose&&xo))+":"+t,i=Or.get(n);if(i)return i;let o=this.options.loose,s=o?D[q.HYPHENRANGELOOSE]:D[q.HYPHENRANGE];t=t.replace(s,Vo(this.options.includePrerelease)),T("hyphen replace",t),t=t.replace(D[q.COMPARATORTRIM],Ro),T("comparator trim",t),t=t.replace(D[q.TILDETRIM],To),T("tilde trim",t),t=t.replace(D[q.CARETTRIM],jo),T("caret trim",t);let a=t.split(" ").map(y=>Lo(y,this.options)).join(" ").split(/\s+/).map(y=>Uo(y,this.options));o&&(a=a.filter(y=>(T("loose invalid filter",y,this.options),!!y.match(D[q.COMPARATORLOOSE])))),T("range list",a);let c=new Map,u=a.map(y=>new We(y,this.options));for(let y of u){if(Sr(y))return[y];c.set(y.value,y)}c.size>1&&c.has("")&&c.delete("");let p=[...c.values()];return Or.set(n,p),p}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>Pr(n,r)&&t.set.some(i=>Pr(i,r)&&n.every(o=>i.every(s=>o.intersects(s,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new So(t,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(Go(this.set[r],t,this.options))return!0;return!1}};Rr.exports=Ke;var Io=Ir(),Or=new Io,Oo=ve(),We=me(),T=fe(),So=L(),{safeRe:D,src:Po,t:q,comparatorTrimReplace:Ro,tildeTrimReplace:To,caretTrimReplace:jo}=ie(),{FLAG_INCLUDE_PRERELEASE:Co,FLAG_LOOSE:xo}=ne(),Ao=new RegExp(Po[q.BUILD],"g"),Sr=e=>e.value==="<0.0.0-0",No=e=>e.value==="",Pr=(e,t)=>{let r=!0,n=e.slice(),i=n.pop();for(;r&&n.length;)r=n.every(o=>i.intersects(o,t)),i=n.pop();return r},Lo=(e,t)=>(e=e.replace(D[q.BUILD],""),T("comp",e,t),e=Do(e,t),T("caret",e),e=zo(e,t),T("tildes",e),e=ko(e,t),T("xrange",e),e=Ho(e,t),T("stars",e),e),A=e=>!e||e.toLowerCase()==="x"||e==="*",qo=(e,t,r)=>A(e)&&!A(t)||A(t)&&r&&!A(r),zo=(e,t)=>e.trim().split(/\s+/).map(r=>Fo(r,t)).join(" "),Fo=(e,t)=>{let r=t.loose?D[q.TILDELOOSE]:D[q.TILDE],n=t.includePrerelease?"-0":"";return e.replace(r,(i,o,s,a,c)=>{T("tilde",e,i,o,s,a,c);let u;return A(o)?u="":A(s)?u=`>=${o}.0.0${n} <${+o+1}.0.0-0`:A(a)?u=`>=${o}.${s}.0${n} <${o}.${+s+1}.0-0`:c?(T("replaceTilde pr",c),u=`>=${o}.${s}.${a}-${c} <${o}.${+s+1}.0-0`):u=`>=${o}.${s}.${a} <${o}.${+s+1}.0-0`,T("tilde return",u),u})},Do=(e,t)=>e.trim().split(/\s+/).map(r=>_o(r,t)).join(" "),_o=(e,t)=>{T("caret",e,t);let r=t.loose?D[q.CARETLOOSE]:D[q.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(i,o,s,a,c)=>{T("caret",e,i,o,s,a,c);let u;return A(o)?u="":A(s)?u=`>=${o}.0.0${n} <${+o+1}.0.0-0`:A(a)?o==="0"?u=`>=${o}.${s}.0${n} <${o}.${+s+1}.0-0`:u=`>=${o}.${s}.0${n} <${+o+1}.0.0-0`:c?(T("replaceCaret pr",c),o==="0"?s==="0"?u=`>=${o}.${s}.${a}-${c} <${o}.${s}.${+a+1}-0`:u=`>=${o}.${s}.${a}-${c} <${o}.${+s+1}.0-0`:u=`>=${o}.${s}.${a}-${c} <${+o+1}.0.0-0`):(T("no pr"),o==="0"?s==="0"?u=`>=${o}.${s}.${a} <${o}.${s}.${+a+1}-0`:u=`>=${o}.${s}.${a} <${o}.${+s+1}.0-0`:u=`>=${o}.${s}.${a} <${+o+1}.0.0-0`),T("caret return",u),u})},ko=(e,t)=>(T("replaceXRanges",e,t),e.split(/\s+/).map(r=>Mo(r,t)).join(" ")),Mo=(e,t)=>{e=e.trim();let r=t.loose?D[q.XRANGELOOSE]:D[q.XRANGE];return e.replace(r,(n,i,o,s,a,c)=>{if(T("xRange",e,n,i,o,s,a,c),qo(o,s,a))return e;let u=A(o),p=u||A(s),y=p||A(a),m=y;return i==="="&&m&&(i=""),c=t.includePrerelease?"-0":"",u?i===">"||i==="<"?n="<0.0.0-0":n="*":i&&m?(p&&(s=0),a=0,i===">"?(i=">=",p?(o=+o+1,s=0,a=0):(s=+s+1,a=0)):i==="<="&&(i="<",p?o=+o+1:s=+s+1),i==="<"&&(c="-0"),n=`${i+o}.${s}.${a}${c}`):p?n=`>=${o}.0.0${c} <${+o+1}.0.0-0`:y&&(n=`>=${o}.${s}.0${c} <${o}.${+s+1}.0-0`),T("xRange return",n),n})},Ho=(e,t)=>(T("replaceStars",e,t),e.trim().replace(D[q.STAR],"")),Uo=(e,t)=>(T("replaceGTE0",e,t),e.trim().replace(D[t.includePrerelease?q.GTE0PRE:q.GTE0],"")),Vo=e=>(t,r,n,i,o,s,a,c,u,p,y,m)=>(A(n)?r="":A(i)?r=`>=${n}.0.0${e?"-0":""}`:A(o)?r=`>=${n}.${i}.0${e?"-0":""}`:s?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,A(u)?c="":A(p)?c=`<${+u+1}.0.0-0`:A(y)?c=`<${u}.${+p+1}.0-0`:m?c=`<=${u}.${p}.${y}-${m}`:e?c=`<${u}.${p}.${+y+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),Go=(e,t,r)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let n=0;n<e.length;n++)if(T(e[n].semver),e[n].semver!==We.ANY&&e[n].semver.prerelease.length>0){let i=e[n].semver;if(i.major===t.major&&i.minor===t.minor&&i.patch===t.patch)return!0}return!1}return!0}});var me=$((bc,Nr)=>{"use strict";var he=Symbol("SemVer ANY"),Ze=class e{static get ANY(){return he}constructor(t,r){if(r=Tr(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),Qe("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===he?this.value="":this.value=this.operator+this.semver.version,Qe("comp",this)}parse(t){let r=this.options.loose?jr[Cr.COMPARATORLOOSE]:jr[Cr.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new xr(n[2],this.options.loose):this.semver=he}toString(){return this.value}test(t){if(Qe("Comparator.test",t,this.options.loose),this.semver===he||t===he)return!0;if(typeof t=="string")try{t=new xr(t,this.options)}catch{return!1}return Ye(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Ar(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new Ar(this.value,r).test(t.semver):(r=Tr(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||Ye(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||Ye(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Nr.exports=Ze;var Tr=ve(),{safeRe:jr,t:Cr}=ie(),Ye=Be(),Qe=fe(),xr=L(),Ar=H()});var ge=$((vc,Lr)=>{"use strict";var Xo=H(),Bo=(e,t,r)=>{try{t=new Xo(t,r)}catch{return!1}return t.test(e)};Lr.exports=Bo});var zr=$(($c,qr)=>{"use strict";var Jo=H(),Ko=(e,t)=>new Jo(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));qr.exports=Ko});var Dr=$((Ic,Fr)=>{"use strict";var Wo=L(),Yo=H(),Qo=(e,t,r)=>{let n=null,i=null,o=null;try{o=new Yo(t,r)}catch{return null}return e.forEach(s=>{o.test(s)&&(!n||i.compare(s)===-1)&&(n=s,i=new Wo(n,r))}),n};Fr.exports=Qo});var kr=$((Oc,_r)=>{"use strict";var Zo=L(),es=H(),ts=(e,t,r)=>{let n=null,i=null,o=null;try{o=new es(t,r)}catch{return null}return e.forEach(s=>{o.test(s)&&(!n||i.compare(s)===1)&&(n=s,i=new Zo(n,r))}),n};_r.exports=ts});var Ur=$((Sc,Hr)=>{"use strict";var et=L(),rs=H(),Mr=pe(),ns=(e,t)=>{e=new rs(e,t);let r=new et("0.0.0");if(e.test(r)||(r=new et("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n<e.set.length;++n){let i=e.set[n],o=null;i.forEach(s=>{let a=new et(s.semver.version);switch(s.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!o||Mr(a,o))&&(o=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),o&&(!r||Mr(r,o))&&(r=o)}return r&&e.test(r)?r:null};Hr.exports=ns});var Gr=$((Pc,Vr)=>{"use strict";var is=H(),os=(e,t)=>{try{return new is(e,t).range||"*"}catch{return null}};Vr.exports=os});var Ae=$((Rc,Kr)=>{"use strict";var ss=L(),Jr=me(),{ANY:as}=Jr,cs=H(),ls=ge(),Xr=pe(),Br=Re(),ds=je(),us=Te(),fs=(e,t,r,n)=>{e=new ss(e,n),t=new cs(t,n);let i,o,s,a,c;switch(r){case">":i=Xr,o=ds,s=Br,a=">",c=">=";break;case"<":i=Br,o=us,s=Xr,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(ls(e,t,n))return!1;for(let u=0;u<t.set.length;++u){let p=t.set[u],y=null,m=null;if(p.forEach(f=>{f.semver===as&&(f=new Jr(">=0.0.0")),y=y||f,m=m||f,i(f.semver,y.semver,n)?y=f:s(f.semver,m.semver,n)&&(m=f)}),y.operator===a||y.operator===c||(!m.operator||m.operator===a)&&o(e,m.semver))return!1;if(m.operator===c&&s(e,m.semver))return!1}return!0};Kr.exports=fs});var Yr=$((Tc,Wr)=>{"use strict";var ps=Ae(),ms=(e,t,r)=>ps(e,t,">",r);Wr.exports=ms});var Zr=$((jc,Qr)=>{"use strict";var hs=Ae(),gs=(e,t,r)=>hs(e,t,"<",r);Qr.exports=gs});var rn=$((Cc,tn)=>{"use strict";var en=H(),Es=(e,t,r)=>(e=new en(e,r),t=new en(t,r),e.intersects(t,r));tn.exports=Es});var on=$((xc,nn)=>{"use strict";var ys=ge(),ws=M();nn.exports=(e,t,r)=>{let n=[],i=null,o=null,s=e.sort((p,y)=>ws(p,y,r));for(let p of s)ys(p,t,r)?(o=p,i||(i=p)):(o&&n.push([i,o]),o=null,i=null);i&&n.push([i,null]);let a=[];for(let[p,y]of n)p===y?a.push(p):!y&&p===s[0]?a.push("*"):y?p===s[0]?a.push(`<=${y}`):a.push(`${p} - ${y}`):a.push(`>=${p}`);let c=a.join(" || "),u=typeof t.raw=="string"?t.raw:String(t);return c.length<u.length?c:t}});var un=$((Ac,dn)=>{"use strict";var sn=H(),nt=me(),{ANY:tt}=nt,rt=ge(),it=M(),bs=(e,t,r={})=>{if(e===t)return!0;e=new sn(e,r),t=new sn(t,r);let n=!1;e:for(let i of e.set){for(let o of t.set){let s=$s(i,o,r);if(n=n||s!==null,s)continue e}if(n)return!1}return!0},vs=[new nt(">=0.0.0-0")],an=[new nt(">=0.0.0")],$s=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===tt){if(t.length===1&&t[0].semver===tt)return!0;r.includePrerelease?e=vs:e=an}if(t.length===1&&t[0].semver===tt){if(r.includePrerelease)return!0;t=an}let n=new Set,i,o;for(let f of e)f.operator===">"||f.operator===">="?i=cn(i,f,r):f.operator==="<"||f.operator==="<="?o=ln(o,f,r):n.add(f.semver);if(n.size>1)return null;let s;if(i&&o){if(s=it(i.semver,o.semver,r),s>0)return null;if(s===0&&(i.operator!==">="||o.operator!=="<="))return null}for(let f of n){if(i&&!rt(f,String(i),r)||o&&!rt(f,String(o),r))return null;for(let R of t)if(!rt(f,String(R),r))return!1;return!0}let a,c,u,p,y=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,m=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1;y&&y.prerelease.length===1&&o.operator==="<"&&y.prerelease[0]===0&&(y=!1);for(let f of t){if(p=p||f.operator===">"||f.operator===">=",u=u||f.operator==="<"||f.operator==="<=",i){if(m&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===m.major&&f.semver.minor===m.minor&&f.semver.patch===m.patch&&(m=!1),f.operator===">"||f.operator===">="){if(a=cn(i,f,r),a===f&&a!==i)return!1}else if(i.operator===">="&&!f.test(i.semver))return!1}if(o){if(y&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===y.major&&f.semver.minor===y.minor&&f.semver.patch===y.patch&&(y=!1),f.operator==="<"||f.operator==="<="){if(c=ln(o,f,r),c===f&&c!==o)return!1}else if(o.operator==="<="&&!f.test(o.semver))return!1}if(!f.operator&&(o||i)&&s!==0)return!1}return!(i&&u&&!o&&s!==0||o&&p&&!i&&s!==0||m||y)},cn=(e,t,r)=>{if(!e)return t;let n=it(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},ln=(e,t,r)=>{if(!e)return t;let n=it(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};dn.exports=bs});var st=$((Nc,mn)=>{"use strict";var ot=ie(),fn=ne(),Is=L(),pn=He(),Os=Y(),Ss=zt(),Ps=Dt(),Rs=Mt(),Ts=Vt(),js=Xt(),Cs=Jt(),xs=Wt(),As=Qt(),Ns=M(),Ls=rr(),qs=ir(),zs=Pe(),Fs=cr(),Ds=dr(),_s=pe(),ks=Re(),Ms=Ge(),Hs=Xe(),Us=Te(),Vs=je(),Gs=Be(),Xs=wr(),Bs=vr(),Js=me(),Ks=H(),Ws=ge(),Ys=zr(),Qs=Dr(),Zs=kr(),ea=Ur(),ta=Gr(),ra=Ae(),na=Yr(),ia=Zr(),oa=rn(),sa=on(),aa=un();mn.exports={parse:Os,valid:Ss,clean:Ps,inc:Rs,diff:Ts,major:js,minor:Cs,patch:xs,prerelease:As,compare:Ns,rcompare:Ls,compareLoose:qs,compareBuild:zs,sort:Fs,rsort:Ds,gt:_s,lt:ks,eq:Ms,neq:Hs,gte:Us,lte:Vs,cmp:Gs,coerce:Xs,truncate:Bs,Comparator:Js,Range:Ks,satisfies:Ws,toComparators:Ys,maxSatisfying:Qs,minSatisfying:Zs,minVersion:ea,validRange:ta,outside:ra,gtr:na,ltr:ia,intersects:oa,simplifyRange:sa,subset:aa,SemVer:Is,re:ot.re,src:ot.src,tokens:ot.t,SEMVER_SPEC_VERSION:fn.SEMVER_SPEC_VERSION,RELEASE_TYPES:fn.RELEASE_TYPES,compareIdentifiers:pn.compareIdentifiers,rcompareIdentifiers:pn.rcompareIdentifiers}});var bn=It(st(),1),ca=Object.freeze(["editor","game-development","game-test","game-production"]);function En(e,t="Plugin config"){let r=new Set,n=(i,o)=>{if(i===null||typeof i=="string"||typeof i=="boolean")return i;if(typeof i=="number"){if(!Number.isFinite(i))throw new Error(`${o} must contain finite numbers.`);return i}if(typeof i!="object")throw new Error(`${o} must contain static JSON data only.`);if(r.has(i))throw new Error(`${o} must not contain circular references.`);r.add(i);try{if(Array.isArray(i)){if(Object.getPrototypeOf(i)!==Array.prototype)throw new Error(`${o} must contain plain arrays only.`);let c=[];for(let u=0;u<i.length;u+=1){let p=Object.getOwnPropertyDescriptor(i,String(u));if(!p?.enumerable||!("value"in p))throw new Error(`${o} must be a dense data array.`);c.push(n(p.value,`${o}[${u}]`))}for(let u of Reflect.ownKeys(i))if(u!=="length"&&(typeof u!="string"||!/^(0|[1-9][0-9]*)$/.test(u)||Number(u)>=i.length))throw new Error(`${o} contains unsupported property: ${String(u)}`);return Object.freeze(c)}let s=Object.getPrototypeOf(i);if(s!==Object.prototype&&s!==null)throw new Error(`${o} must contain plain objects only.`);let a=Object.create(null);for(let c of Reflect.ownKeys(i)){if(typeof c!="string"||c==="__proto__")throw new Error(`${o} contains unsupported property: ${String(c)}`);let u=Object.getOwnPropertyDescriptor(i,c);if(!u?.enumerable||!("value"in u))throw new Error(`${o}.${c} must be an enumerable data field.`);a[c]=n(u.value,`${o}.${c}`)}return Object.freeze(a)}finally{r.delete(i)}};return n(e,t)}var la=/^[a-z0-9]+(?:[._-][a-z0-9]+)+$/,da=/^[a-z0-9]+(?:[._-][A-Za-z0-9]+)+$/;function oe(e,t){if(!la.test(e))throw new Error(`${t} must be a namespaced lowercase id, got: ${e}`);return e}function ua(e,t){if(!da.test(e))throw new Error(`${t} must be a namespaced event id, got: ${e}`);return e}function K(e,t,r){if(!e||typeof e!="object"||Array.isArray(e))throw new Error(`${r} must be an object.`);let n=Object.getPrototypeOf(e);if(n!==Object.prototype&&n!==null)throw new Error(`${r} must be a plain object.`);let i=new Set(t),o=Object.create(null);for(let s of Reflect.ownKeys(e)){if(typeof s!="string"||!i.has(s))throw new Error(`${r} contains unknown field: ${String(s)}`);if(s==="__proto__")throw new Error(`${r} contains reserved field: ${s}`);let a=Object.getOwnPropertyDescriptor(e,s);if(!a?.enumerable||!("value"in a))throw new Error(`${r} must contain enumerable data fields only: ${s}`);o[s]=a.value}return o}function Ne(e,t){if(!Array.isArray(e))throw new Error(`${t} must be an array.`);let r=[];for(let n=0;n<e.length;n+=1){let i=Object.getOwnPropertyDescriptor(e,String(n));if(!i?.enumerable||!("value"in i))throw new Error(`${t} must be a dense data array.`);r.push(i.value)}for(let n of Reflect.ownKeys(e))if(n!=="length"&&(typeof n!="string"||!/^(0|[1-9][0-9]*)$/.test(n)||Number(n)>=e.length))throw new Error(`${t} contains unsupported property: ${String(n)}`);return r}function at(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))return;let n=Ne(e[t],r).map(i=>{if(typeof i!="string")throw new Error(`${r} entries must be strings.`);return oe(i,`${r} entry`)});return Object.freeze([...new Set(n)])}function yn(e){let t=K(e,["id","version","apiVersion","requires","provides","entries","environmentContracts","deploymentConstraints","testedAgainst"],"Plugin manifest"),r=K(t.entries,["runtime","editor","renderer","tooling","agent"],"Plugin entries");if(typeof t.id!="string")throw new Error("Plugin id must be a string.");let n=oe(t.id,"Plugin id");if(typeof t.version!="string"||!vn(t.version))throw new Error(`Plugin version must be semver, got: ${String(t.version)}`);if(!Number.isInteger(t.apiVersion)||t.apiVersion<1)throw new Error("Plugin apiVersion must be a positive integer.");let i=hn(t.requires,"Plugin requirements","Required services"),o=gn(t.provides,"Plugin provides","Provided features","Provided services"),s=new Set(["runtime","editor","renderer","tooling","agent"]),a=Object.entries(r);if(a.length===0)throw new Error(`Plugin manifest must declare at least one environment entry: ${n}`);for(let[f,R]of a){if(!s.has(f))throw new Error(`Unknown plugin environment entry: ${f}`);if(typeof R!="string"||!R.trim())throw new Error(`Plugin environment entry path is required: ${n} (${f})`)}let c=t.environmentContracts===void 0?void 0:K(t.environmentContracts,["runtime","editor","renderer","tooling","agent"],"Plugin environment contracts"),u=c?Object.freeze(Object.fromEntries(Object.entries(c).map(([f,R])=>{if(!Object.prototype.hasOwnProperty.call(r,f))throw new Error(`Plugin environment contract requires a matching entry: ${n} (${f})`);let v=K(R,["requires","provides","scopes"],`Plugin environment contract ${f}`),j=v.scopes===void 0?void 0:Object.freeze(Ne(v.scopes,`Plugin environment contract ${f}.scopes`).map(_=>{if(typeof _!="string"||!pa(_))throw new Error(`Unknown Plugin scope: ${String(_)}`);return _}));return[f,Object.freeze({requires:hn(v.requires,`Plugin environment contract ${f}.requires`),provides:gn(v.provides,`Plugin environment contract ${f}.provides`),...j?{scopes:Object.freeze([...new Set(j)])}:{}})]}))):void 0,p=t.deploymentConstraints===void 0?void 0:ga(t.deploymentConstraints),y=t.testedAgainst===void 0?void 0:fa(t.testedAgainst),m=Object.freeze({id:n,version:t.version,apiVersion:t.apiVersion,requires:i,provides:o,entries:Object.freeze(Object.fromEntries(a.map(([f,R])=>[f,R.trim()]))),...u?{environmentContracts:u}:{},...p?{deploymentConstraints:p}:{},...y?{testedAgainst:y}:{}});for(let[f]of a)Ee(m,f),ye(m,f);return m}function fa(e){if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Plugin testedAgainst must be an object.");let t=Object.getPrototypeOf(e);if(t!==Object.prototype&&t!==null)throw new Error("Plugin testedAgainst must be a plain object.");let r=Object.create(null);for(let n of Reflect.ownKeys(e)){if(typeof n!="string"||!/^(?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*$/.test(n))throw new Error(`Plugin testedAgainst package name is invalid: ${String(n)}`);let i=Object.getOwnPropertyDescriptor(e,n);if(!i?.enumerable||!("value"in i))throw new Error(`Plugin testedAgainst must contain enumerable data fields only: ${n}`);if(typeof i.value!="string"||!vn(i.value))throw new Error(`Plugin testedAgainst version must be exact semver: ${n}@${String(i.value)}`);r[n]=i.value}if(Object.keys(r).length===0)throw new Error("Plugin testedAgainst must not be empty when declared.");return Object.freeze(r)}function Ee(e,t){let r=e.environmentContracts?.[t]?.requires;return Object.freeze({...ma(e.requires.plugins,r?.plugins),...ct("services",e.requires.services,r?.services)})}function ye(e,t){let r=e.environmentContracts?.[t]?.provides;return Object.freeze({...ct("features",e.provides.features,r?.features),...ct("services",e.provides.services,r?.services)})}function lt(e,t){return e.environmentContracts?.[t]?.scopes??Object.freeze(["application"])}function pa(e){return["application","project","scene","document","preview","session"].includes(e)}function hn(e,t,r=`${t}.services`){let n=K(e,["plugins","services"],t),i=Object.prototype.hasOwnProperty.call(n,"plugins")?Ne(n.plugins,`${t}.plugins`).map(s=>{let a=K(s,["id","range"],"Plugin requirement");if(typeof a.id!="string")throw new Error("Required plugin id must be a string.");let c=oe(a.id,"Required plugin id");if(a.range!==void 0&&(typeof a.range!="string"||!ya(a.range)))throw new Error(`Required plugin range must be semver, got: ${c}@${String(a.range)}`);return Object.freeze({id:c,...a.range===void 0?{}:{range:a.range}})}):void 0,o=at(n,"services",r);return Object.freeze({...i?{plugins:Object.freeze(i)}:{},...o?{services:o}:{}})}function gn(e,t,r=`${t}.features`,n=`${t}.services`){let i=K(e,["features","services"],t),o=at(i,"features",r),s=at(i,"services",n);return Object.freeze({...o?{features:o}:{},...s?{services:s}:{}})}function ma(e,t){let r=new Map;for(let n of[...e??[],...t??[]]){let i=r.get(n.id);if(i&&i.range!==n.range)throw new Error(`Conflicting Plugin requirement ranges: ${n.id}`);r.set(n.id,n)}return r.size>0?{plugins:Object.freeze([...r.values()])}:{}}function ct(e,t,r){let n=[...new Set([...t??[],...r??[]])];return n.length>0?{[e]:Object.freeze(n)}:{}}function ha(e){return typeof e=="string"&&ca.includes(e)}function ga(e){let t=K(e,["allowedTargets"],"Plugin deployment constraints");if(!Object.prototype.hasOwnProperty.call(t,"allowedTargets"))throw new Error("Plugin deployment constraints.allowedTargets is required.");return Object.freeze({allowedTargets:Ea(t.allowedTargets,"Plugin deployment constraints.allowedTargets")})}function Ea(e,t){let r=Ne(e,t).map(n=>{if(!ha(n))throw new Error(`Unknown fps build target: ${String(n)}`);return n});if(r.length===0)throw new Error(`${t} must not be empty.`);if(new Set(r).size!==r.length)throw new Error(`${t} must not contain duplicates.`);return Object.freeze(r)}function Le(e){let t=K(e,["pluginId","environment","register","start","stop","dispose"],"Plugin entry");if(typeof t.pluginId!="string")throw new Error("Plugin entry id must be a string.");let r=oe(t.pluginId,"Plugin entry id");if(typeof t.environment!="string"||!["runtime","editor","renderer","tooling","agent"].includes(t.environment))throw new Error(`Unknown plugin entry environment: ${String(t.environment)}`);if(typeof t.register!="function")throw new Error(`Plugin entry register must be a function: ${r}`);for(let n of["start","stop","dispose"])if(t[n]!==void 0&&typeof t[n]!="function")throw new Error(`Plugin entry ${n} must be a function: ${r}`);return Object.freeze({pluginId:r,environment:t.environment,register:t.register,...t.start?{start:t.start}:{},...t.stop?{stop:t.stop}:{},...t.dispose?{dispose:t.dispose}:{}})}function dt(e){return Object.freeze({kind:"service",id:oe(e,"Service id")})}function U(e){return Object.freeze({kind:"event",id:ua(e,"Event id")})}function wn(e){let t=oe(e,"Plugin event owner id");return`fps.plugin.${t.length}.${t}.`}var{valid:vn,validRange:ya}=bn.default;var In=It(st(),1),{satisfies:wa,valid:On,validRange:ba}=In.default;function we(e,t){let r=e.map(i=>i instanceof Error?i.message:String(i)).join("; "),n=new Error(`${t} ${r}`);return Object.assign(n,{errors:[...e]}),n}var ut=class{constructor(t){this.parent=t,this.values=new Map,this.active=!0}assertActive(){if(!this.active)throw new Error("Service registry is disposed.")}register(t,r){return this.registerOwned(t,r,"host")}registerOwned(t,r,n){if(this.assertActive(),this.values.has(t.id))throw new Error(`Service already registered in this scope: ${t.id}`);let i={value:r,owner:n};return this.values.set(t.id,i),()=>{this.values.get(t.id)===i&&this.values.delete(t.id)}}has(t){return this.assertActive(),this.hasId(t.id)}get(t){this.assertActive();let r=this.resolve(t.id);if(!r)throw new Error(`Service not registered: ${t.id}`);return r.value}getOptional(t){return this.assertActive(),this.resolve(t.id)?.value}resolve(t){return this.values.get(t)??this.parent?.resolve(t)}hasId(t){return this.resolve(t)!==void 0}hasLocalId(t,r){let n=this.values.get(t);return n!==void 0&&(r===void 0||n.owner===r)}deactivate(){this.values.clear(),this.active=!1}},ft=class{constructor(t,r,n){this.services=t,this.manifest=r;let i=Ee(r,n),o=ye(r,n);this.writable=new Set(o.services??[]),this.readable=new Set([...i.services??[],...this.writable])}assertReadable(t){if(!this.readable.has(t.id))throw new Error(`Plugin accessed undeclared service: ${this.manifest.id} -> ${t.id}`)}register(t,r){if(!this.writable.has(t.id))throw new Error(`Plugin registered undeclared service: ${this.manifest.id} -> ${t.id}`);return this.services.registerOwned(t,r,this.manifest.id)}has(t){return this.assertReadable(t),this.services.has(t)}get(t){return this.assertReadable(t),this.services.get(t)}getOptional(t){return this.assertReadable(t),this.services.getOptional(t)}},pt=class{constructor(t,r){this.parent=t,this.assertExecutionAvailable=r,this.handlers=new Map,this.activeExecutions=new Map,this.nextExecutionId=1,this.active=!0}assertActive(){if(!this.active)throw new Error("Command registry is disposed.")}register(t,r){if(this.assertActive(),this.handlers.has(t.id))throw new Error(`Command already registered in this scope: ${t.id}`);return this.handlers.set(t.id,r),()=>{this.handlers.get(t.id)===r&&this.handlers.delete(t.id)}}async execute(t,r){return this.executeWithAuthorization(t,r,!1)}async executeWithAuthorization(t,r,n){this.assertActive(),n||this.assertExecutionAvailable?.();let i=this.handlers.get(t.id);if(i){let o=this.nextExecutionId++;this.activeExecutions.set(o,t.id);try{return await i(r)}finally{this.activeExecutions.delete(o)}}if(this.parent)return this.parent.executeWithAuthorization(t,r,!0);throw new Error(`Command not registered: ${t.id}`)}listActiveExecutions(){return[...this.activeExecutions.values()]}deactivate(){this.handlers.clear(),this.active=!1}},mt=class{constructor(t,r){this.parent=t,this.report=r,this.listeners=new Map,this.active=!0}assertActive(){if(!this.active)throw new Error("Event registry is disposed.")}subscribe(t,r){this.assertActive();let n=this.listeners.get(t.id)??new Set;return n.add(r),this.listeners.set(t.id,n),()=>{n.delete(r),n.size||this.listeners.delete(t.id)}}async deliver(t,r,n){for(let i of[...this.listeners.get(t.id)??[]])try{await i(r)}catch(o){n.push(o)}await this.parent?.deliver(t,r,n)}async publish(t,r){this.assertActive();let n=[];if(await this.deliver(t,r,n),n.length===0)return;let i=n.map(s=>s instanceof Error?s.message:String(s));try{this.report({code:"plugin.event.deliveryFailed",message:`Event ${t.id} reported ${n.length} listener error(s).`,severity:"error",details:Object.freeze({eventId:t.id,listenerErrorCount:n.length,listenerErrorMessages:Object.freeze(i)})})}catch(s){n.push(s)}let o=we(n,`Event delivery failed: ${t.id}.`);throw o.name="FpsEventDeliveryError",o}deactivate(){this.listeners.clear(),this.active=!1}};function va(e,t){let r=wn(t);return Object.freeze({subscribe(n,i){return e.subscribe(n,i)},publish(n,i){return n.ownerPluginId!==t||!n.id.startsWith(r)?Promise.reject(new Error(`Plugin ${t} may only publish events in namespace ${r}*; got ${n.id}`)):e.publish(n,i)}})}var ht=(e,t)=>e.id<t.id?-1:e.id>t.id?1:0;function $n(e,t,r,n){if(!On(e))throw new Error(`Invalid plugin version: ${n}@${e}`);let i=t??"*";if(!ba(i))throw new Error(`Invalid plugin version range: ${r} requires ${n}@${i}`);if(!wa(e,i))throw new Error(`Plugin version mismatch: ${r} requires ${n}@${i}`)}function $a(e,t,r,n){let i=new Map,o=new Map,s=new Map;for(let m of e){let f=n?.(m.id);if(f&&(f.version!==m.version||f.apiVersion!==m.apiVersion))throw new Error(`Plugin identity mismatch across scopes: ${m.id}`);if(i.has(m.id))throw new Error(`Duplicate plugin id: ${m.id}`);if(i.set(m.id,m),!m.entries[t])continue;if(!On(m.version))throw new Error(`Invalid plugin version: ${m.id}@${m.version}`);o.set(m.id,m);let R=ye(m,t);for(let v of R.services??[]){let j=s.get(v);if(j)throw new Error(`Duplicate service provider: ${v} (${j.id}, ${m.id})`);if(r?.hasLocalId(v)&&!r.hasLocalId(v,m.id))throw new Error(`Duplicate service provider: ${v} (host, ${m.id})`);s.set(v,m)}}let a=m=>{let f=new Map,R=Ee(m,t);for(let v of R.plugins??[]){let j=o.get(v.id);if(!j){let _=n?.(v.id);if(_){$n(_.version,v.range,m.id,v.id);continue}let Z=i.has(v.id)?` (${t} entry unavailable)`:"";throw new Error(`Missing plugin dependency: ${m.id} -> ${v.id}${Z}`)}$n(j.version,v.range,m.id,v.id),f.set(j.id,j)}for(let v of R.services??[]){let j=s.get(v);if(j)f.set(j.id,j);else if(!r?.hasId(v))throw new Error(`Missing required service: ${m.id} -> ${v}`)}return[...f.values()].sort(ht)},c=new Set,u=new Set,p=[],y=m=>{if(c.has(m.id))throw new Error(`Plugin dependency cycle at: ${m.id}`);if(!u.has(m.id)){c.add(m.id);for(let f of a(m))y(f);c.delete(m.id),u.add(m.id),p.push(m)}};for(let m of[...o.values()].sort(ht))y(m);return p}function Sn(e,t){let r=Object.freeze(Object.fromEntries(Object.entries(e.pluginConfigs??{}).map(([l,d])=>[l,En(d,`Plugin config ${l}`)])));e={...e,manifests:e.manifests.map(l=>yn(l)),pluginConfigs:r};let n=new ut(t?.services),i=new pt(t?.commands,()=>C()),o=[],s=[],a=new Map(e.manifests.map(l=>[l.id,l.entries[e.environment]?"discovered":"unavailable"])),c=[],u=e.scope??"application",p="created",y,m=!1,f=0,R=null,v,j=new Map(e.manifests.filter(l=>l.entries[e.environment]).map(l=>[l.id,l])),_=l=>j.get(l)??t?.resolvePlugin(l),Z=l=>{s.push(Object.freeze({code:l.code,message:l.message,severity:l.severity,...l.pluginId?{pluginId:l.pluginId}:{}})),s.length>200&&s.shift()},ee=(l,d=!0)=>{if(Z(l),!(!d||!e.report))try{e.report(l)}catch(O){Z({code:"plugin.report.observerFailed",message:O instanceof Error?O.message:String(O),severity:"error",...l.pluginId?{pluginId:l.pluginId}:{}})}},W=new mt(t?.events,l=>ee(l)),be=()=>m||c.some(l=>l.hasTransitionInTree()),X=()=>be()||t?.isTransitioningTree()===!0,B=()=>p==="cleanup-failed"||c.some(l=>l.hasCleanupFailureInTree()),te=()=>B()||t?.hasCleanupFailureInTree()===!0,de=()=>f>0||c.some(l=>l.hasTeardownReservationInTree()),h=()=>de()||t?.isTeardownReservedTree()===!0,b=()=>Object.freeze([...i.listActiveExecutions(),...c.flatMap(l=>l.listActiveCommandsInTree())]),w=()=>Object.freeze([...i.listActiveExecutions(),...t?.listActiveCommandsInLineage()??[]]),S=l=>{let d=Object.freeze([...t?.listActiveCommandsInLineage()??[],...b()]);if(d.length!==0)throw new Error(`Cannot ${l} Plugin Host while commands are active: ${d.join(", ")}`)};function C(){if(h())throw new Error("Plugin host disposal has been requested; command execution is unavailable.");if(te())throw new Error("Plugin host cleanup is incomplete; command execution is unavailable.");let l=X();if((p!=="started"||l)&&!(p==="registered"&&m&&R===null))throw new Error(`Plugin host command execution requires an idle started host, got: ${p}${l?" (transitioning)":""}.`)}let x=()=>{if(h())throw new Error("Plugin host disposal has been requested; public operations are unavailable.");if(te())throw new Error("Plugin host cleanup is incomplete; only stop or dispose may be retried.");let l=X();if(p!=="started"||l)throw new Error(`Plugin host public operations require an idle started host, got: ${p}${l?" (transitioning)":""}.`)},Q={register(l,d){return x(),n.register(l,d)},has(l){return x(),n.has(l)},get(l){return x(),n.get(l)},getOptional(l){return x(),n.getOptional(l)}},k={register(l,d){return x(),i.register(l,d)},execute(l,d){return x(),i.execute(l,d)}},F={subscribe(l,d){return x(),W.subscribe(l,d)},publish(l,d){return x(),W.publish(l,d)}},ue=()=>{let l=e.manifests.map(d=>{let O=a.get(d.id)??"unavailable";return Object.freeze({manifest:d,lifecycle:O,compatible:d.apiVersion===e.apiVersion})}).sort((d,O)=>ht(d.manifest,O.manifest));return Object.freeze({environment:e.environment,apiVersion:e.apiVersion,scope:u,state:B()?"cleanup-failed":p,transitioning:X()||h(),plugins:Object.freeze(l),diagnostics:Object.freeze([...s])})},V=async(l,d=!1)=>{if(m)throw new Error("Plugin host lifecycle transition already in progress.");if(!d&&t?.isTransitioningTree())throw new Error("Ancestor plugin scope lifecycle transition already in progress.");m=!0;try{return await l()}finally{m=!1}};for(let l of e.initialServices??[])n.register(l.token,l.value);let Xn=async(l,d)=>{if(!l.disposeCompleted)try{await l.entry.dispose?.(l.context),l.disposeCompleted=!0}catch(P){return d.push(P),!1}for(let P=l.disposers.length-1;P>=0;P-=1)try{await l.disposers[P](),l.disposers.splice(P,1)}catch(N){d.push(N);break}let O=l.disposeCompleted&&l.disposers.length===0;return O&&a.set(l.manifest.id,"disposed"),O},De=async l=>{for(let d of[...o].reverse())if(d.started)try{await d.entry.stop?.(d.context),d.started=!1,a.set(d.manifest.id,"stopped")}catch(O){l.push(O);break}},_e=async(l,d)=>{R="dispose";let O=[];for(let N of[...c].reverse())try{await N.disposeFromParent()}catch(J){O.push(J);break}if(O.length===0&&(await De(O),O.length===0))for(let N=o.length-1;N>=0;N-=1){let J=o[N];if(!J.started)if(await Xn(J,O))o.splice(N,1);else break}O.length===0?(n.deactivate(),i.deactivate(),W.deactivate(),p="disposed",R=null,t?.removeChild(y)):p="cleanup-failed";let P=[...l?[d]:[],...O];if(P.length===1)throw P[0];if(P.length>1)throw we(P,"Plugin host lifecycle failed and cleanup reported errors:")};return y={get state(){return B()?"cleanup-failed":p},get transitioning(){return X()||h()},scope:u,services:Q,commands:k,events:F,inspect:ue,createScope(l){if(h())throw new Error("Cannot create a child scope while Plugin Host teardown is reserved.");if(te())throw new Error("Cannot create a child scope while Plugin Host tree is cleanup-failed (cleanup is incomplete).");let d=X();if(p!=="started"||d)throw new Error(`Cannot create a child scope from plugin host state: ${p}${d?" (transitioning)":""}`);return Sn({...e,scope:l.scope,manifests:l.manifests??e.manifests,pluginConfigs:l.pluginConfigs??e.pluginConfigs,loadEntry:l.loadEntry??e.loadEntry,initialServices:l.initialServices},{services:n,commands:i,events:W,getState:()=>p,isTransitioningTree:X,hasCleanupFailureInTree:B,isTeardownReservedTree:h,listActiveCommandsInLineage:w,resolvePlugin:_,addChild:P=>c.push(P),removeChild:P=>{let N=c.findIndex(J=>J.host===P);N>=0&&c.splice(N,1)}})},start(){return V(async()=>{if(h())throw new Error("Plugin host cannot start while teardown is reserved.");if(p!=="created")throw new Error(`Plugin host cannot start from state: ${p}`);if(t&&t.getState()!=="started")throw new Error(`Child plugin scope cannot start while parent is: ${t.getState()}`);if(t?.hasCleanupFailureInTree())throw new Error("Child plugin scope cannot start while the Plugin Host tree cleanup is incomplete.");try{let l=$a(e.manifests,e.environment,n,t?.resolvePlugin);for(let d of l){if(v=d.id,d.apiVersion!==e.apiVersion)throw new Error(`Plugin API mismatch: ${d.id}`);if(!d.entries[e.environment])continue;let O=await e.loadEntry(d,e.environment);if(!O)throw new Error(`Plugin entry could not be loaded: ${d.id} (${e.environment})`);let P=Le(O);if(P.pluginId!==d.id||P.environment!==e.environment)throw new Error(`Plugin entry mismatch: ${d.id}`);let N={manifest:d,entry:P,context:void 0,disposers:[],started:!1,disposeCompleted:!1};N.context={environment:e.environment,pluginId:d.id,config:e.pluginConfigs?.[d.id],scope:u,services:new ft(n,d,e.environment),commands:i,events:va(W,d.id),report:re=>ee({...re,pluginId:d.id}),add:re=>N.disposers.push(re)},o.push(N);let J=await P.register(N.context);J&&N.disposers.push(J);let Bn=ye(d,e.environment);for(let re of Bn.services??[])if(!n.hasLocalId(re,d.id))throw new Error(`Plugin did not register declared service: ${d.id} -> ${re}`);a.set(d.id,"registered")}for(let d of l){if(!d.entries[e.environment])continue;let O=Ee(d,e.environment);for(let P of O.services??[])if(!n.hasId(P))throw new Error(`Required service not registered: ${d.id} -> ${P}`)}p="registered";for(let d of o)v=d.manifest.id,d.started=!0,await d.entry.start?.(d.context),a.set(d.manifest.id,"started");v=void 0,p="started"}catch(l){ee({code:"plugin.lifecycle.failed",message:l instanceof Error?l.message:String(l),severity:"error",...v?{pluginId:v}:{}},!1);let d=b();if(d.length>0)throw R="dispose",p="cleanup-failed",we([l,new Error(`Plugin start rollback is waiting for active commands: ${d.join(", ")}`)],"Plugin host start failed and cleanup is pending:");await _e(!0,l)}})},stop(){return S("stop"),V(async()=>{if(p!=="started"&&p!=="cleanup-failed")return;if(p==="cleanup-failed"&&R==="dispose")throw new Error("Plugin host disposal cleanup is incomplete; dispose must be retried.");R="stop";let l=c.find(O=>O.hasTransitionInTree());if(l)throw new Error(`Child plugin scope lifecycle transition already in progress: ${l.host.scope}`);let d=[];for(let O of[...c].reverse())try{await O.stopFromParent()}catch(P){d.push(P);break}if(d.length===0&&await De(d),d.length>0||o.some(O=>O.started)?p="cleanup-failed":(p="stopped",R=null),d.length===1)throw d[0];if(d.length>1)throw we(d,"Plugin host stop reported errors:")})},dispose(){return S("dispose"),V(async()=>{if(p==="disposed")return;let l=c.find(d=>d.hasTransitionInTree());if(l)throw new Error(`Child plugin scope lifecycle transition already in progress: ${l.host.scope}`);await _e(!1)})},reserveTeardown(){if(p==="disposed")return Object.assign(()=>{},{assertReady:()=>{}});f+=1;let l=!0;return Object.assign(()=>{l&&(l=!1,f-=1)},{assertReady:()=>S("reserve teardown for")})}},t?.addChild({host:y,hasTransitionInTree:be,hasCleanupFailureInTree:B,hasTeardownReservationInTree:de,listActiveCommandsInTree:b,stopFromParent:()=>V(async()=>{if(S("stop"),p!=="started"&&p!=="cleanup-failed")return;if(p==="cleanup-failed"&&R==="dispose")throw new Error("Plugin host disposal cleanup is incomplete; dispose must be retried.");R="stop";let l=c.find(O=>O.hasTransitionInTree());if(l)throw new Error(`Child plugin scope lifecycle transition already in progress: ${l.host.scope}`);let d=[];for(let O of[...c].reverse())try{await O.stopFromParent()}catch(P){d.push(P);break}if(d.length===0&&await De(d),d.length>0||o.some(O=>O.started)?p="cleanup-failed":(p="stopped",R=null),d.length===1)throw d[0];if(d.length>1)throw we(d,"Plugin host stop reported errors:")},!0),disposeFromParent:()=>V(async()=>{if(S("dispose"),p==="disposed")return;let l=c.find(d=>d.hasTransitionInTree());if(l)throw new Error(`Child plugin scope lifecycle transition already in progress: ${l.host.scope}`);await _e(!1)},!0)}),y}function Pn(e){return Sn(e)}var Rn=Symbol("fps.editor.event.route"),Dc=U("fps.editor.lifecycle.changed"),_c=U("fps.editor.scope.opened"),kc=U("fps.editor.scope.closed"),Mc=U("fps.editor.document.changed"),Hc=U("fps.editor.document.committed"),Uc=U("fps.editor.document.saveFailed"),Vc=U("fps.editor.selection.changed"),Gc=U("fps.editor.history.changed"),Xc=U("fps.editor.activeTool.changed"),Bc=U("fps.editor.preview.changed"),gt=U("fps.editor.diagnostic.reported");function Ia(e,t){try{e?.(t)}catch{}}function Tn(e){let t=e.now??Date.now,r=0,n=Promise.resolve(),i=o=>Object.freeze({[Rn]:e.captureRoute?.(o)??(()=>e.events)});return Object.freeze({captureRoute:i,publish(o,s,a,c=i(a)){let u=Object.freeze({version:1,sequence:++r,timestamp:t(),scope:a.scope,scopeId:a.scopeId,...a.traceId?{traceId:a.traceId}:{},...a.transactionId?{transactionId:a.transactionId}:{},...a.sourcePluginId?{sourcePluginId:a.sourcePluginId}:{},payload:s}),p=n.then(async()=>{let y=c[Rn]();try{await y.publish(o,u)}catch(m){Ia(e.report,{code:"editor.event.observerFailed",message:m instanceof Error?m.message:String(m),severity:"error",details:Object.freeze({eventId:o.id,sequence:u.sequence})})}});return n=p.catch(()=>{}),p}})}var jn=Object.freeze(["application.start","application.stop","application.dispose","project.open","project.close","mode.enterEdit","mode.recoverEdit","mode.exitEdit","document.load","document.markDirty","document.markClean","document.prepareSave","document.commit","document.saveFailed","document.discard","preview.create","preview.dispose"]),Kc={"application.start":z(e=>e.application==="created",{application:"starting"},{application:"ready"},{application:"failed"}),"application.stop":z(e=>(e.application==="ready"||e.application==="failed")&&e.project==="closed"&&e.mode==="play"&&e.preview==="absent",{application:"stopping"},{application:"disposed"},{application:"failed"}),"application.dispose":z(e=>e.application!=="disposed",{application:"stopping"},{application:"disposed",project:"closed",mode:"play",document:"unloaded",preview:"absent",scopes:Object.freeze([])},{application:"failed",project:"failed",mode:"failed",document:"failed",preview:"failed"}),"project.open":z(e=>e.application==="ready"&&e.project==="closed",{project:"opening"},{project:"open"},{project:"failed"}),"project.close":z(e=>(e.project==="open"||e.project==="failed")&&e.mode==="play"&&e.preview==="absent"&&(e.document==="clean"||e.document==="unloaded"),{project:"closing"},{project:"closed",document:"unloaded"},{project:"failed"}),"mode.enterEdit":z(e=>e.application==="ready"&&e.project==="open"&&e.mode==="play",{mode:"entering-edit"},{mode:"edit"},{mode:"failed",document:"failed"}),"mode.recoverEdit":z(e=>e.application==="ready"&&e.project==="open"&&e.mode==="failed",{mode:"entering-edit"},{mode:"edit"},{mode:"failed",document:"failed"}),"mode.exitEdit":z(e=>(e.mode==="edit"||e.mode==="failed")&&e.preview==="absent"&&(e.document==="clean"||e.document==="unloaded"),{mode:"exiting-edit"},{mode:"play",document:"unloaded"},{mode:"failed",document:"failed"}),"document.load":z(e=>e.project==="open"&&(e.document==="unloaded"||e.document==="failed"),{document:"loading"},{document:"clean"},{document:"failed"}),"document.markDirty":z(e=>e.project==="open"&&e.mode==="edit"&&(e.document==="clean"||e.document==="dirty"||e.document==="committing"||e.document==="failed"),{document:"dirty"},{document:"dirty"},{document:"failed"}),"document.markClean":z(e=>e.project==="open"&&e.mode==="edit"&&(e.document==="clean"||e.document==="dirty"||e.document==="failed"),{document:"clean"},{document:"clean"},{document:"failed"}),"document.prepareSave":z(e=>e.project==="open"&&e.mode==="edit"&&(e.document==="clean"||e.document==="dirty"||e.document==="failed"),{document:"preparing-save"},{document:"committing"},{document:"failed"}),"document.commit":z(e=>e.project==="open"&&e.mode==="edit"&&(e.document==="committing"||e.document==="failed"),{document:"committing"},{document:"clean"},{document:"failed"}),"document.saveFailed":z(e=>e.document==="preparing-save"||e.document==="committing",{document:"failed"},{document:"failed"},{document:"failed"}),"document.discard":z(e=>e.project==="open"&&e.mode==="edit"&&(e.document==="clean"||e.document==="dirty"||e.document==="failed"),{document:"loading"},{document:"clean"},{document:"failed"}),"preview.create":z(e=>e.mode==="edit"&&e.preview==="absent",{preview:"creating"},{preview:"active"},{preview:"failed"}),"preview.dispose":z(e=>e.preview==="active"||e.preview==="failed",{preview:"disposing"},{preview:"absent"},{preview:"failed"})};function z(e,t,r,n){return Object.freeze({assertAllowed:e,start:Object.freeze(t),settled:Object.freeze(r),failed:Object.freeze(n)})}var Oa=Object.freeze({application:Object.freeze([]),project:Object.freeze(["application"]),scene:Object.freeze(["project"]),document:Object.freeze(["project","scene"]),session:Object.freeze(["document"]),preview:Object.freeze(["document","session"])});function Cn(e,t){if(e.scope==="application"){if(e.parentId)throw new Error("Editor application lifecycle scope cannot have a parent.");if(t.some(i=>i.scope==="application"))throw new Error("Editor lifecycle can only have one application scope.");return}if(!e.parentId)throw new Error(`Editor ${e.scope} lifecycle scope requires a parent.`);let r=t.find(i=>i.id===e.parentId);if(!r||r.state!=="open")throw new Error(`Editor lifecycle scope parent is not open: ${e.parentId}`);if(!Oa[e.scope].includes(r.scope))throw new Error(`Editor ${e.scope} lifecycle scope cannot be parented by ${r.scope}.`)}var Yc=Object.freeze({state:"enabled"});function Fe(e){if(!e||typeof e!="object")throw new Error("Editor Tool registration must be an object.");if(typeof e.createRuntime!="function")throw new Error("Editor Tool registration requires createRuntime().");return Object.freeze({definition:Sa(e.definition),createRuntime:e.createRuntime})}function Sa(e){if(!e||typeof e!="object")throw new Error("Editor Tool definition must be an object.");let t=qe(e.id,"Editor Tool id"),r=ze(e.label,"Editor Tool label"),n=qe(e.group,"Editor Tool group");if(e.kind!=="primary"&&e.kind!=="action")throw new Error(`Unknown Editor Tool kind: ${String(e.kind)}`);let i=e.order??0;if(!Number.isFinite(i))throw new Error("Editor Tool order must be finite.");let o=Object.freeze((e.requiredCapabilities??[]).map(s=>qe(s,"Editor capability id")));if(new Set(o).size!==o.length)throw new Error(`Editor Tool required capabilities must be unique: ${t}`);return Object.freeze({id:t,label:r,group:n,order:i,kind:e.kind,requiredCapabilities:o,...e.icon===void 0?{}:{icon:ze(e.icon,"Editor Tool icon")},...e.shortcut===void 0?{}:{shortcut:ze(e.shortcut,"Editor Tool shortcut").toUpperCase()},...e.fallbackToolId===void 0?{}:{fallbackToolId:qe(e.fallbackToolId,"Editor Tool fallback id")}})}function qe(e,t){let r=ze(e,t);if(!/^[a-z0-9]+(?:[._-][a-z0-9]+)+$/.test(r))throw new Error(`${t} must be namespaced lowercase, got: ${e}`);return r}function ze(e,t){if(typeof e!="string"||!e.trim())throw new Error(`${t} must be a non-empty string.`);return e.trim()}var Zc=128*1024;function An(e){if(!e||typeof e!="object")throw new Error("Editor command manifest is required.");if(e.schemaVersion!==1)throw new Error(`Unsupported Editor command schema version: ${String(e.schemaVersion)}`);let t=xa(e.id);if(!Number.isInteger(e.version)||e.version<=0)throw new Error(`Editor command version must be a positive integer: ${t}`);let r=yt(e.title,`Editor command title is required: ${t}`);if(!new Set(["workspace-service","tooling","authoring","view","renderer"]).has(e.target))throw new Error(`Editor command target is invalid: ${t}`);if(e.access!=="read"&&e.access!=="write")throw new Error(`Editor command access is invalid: ${t}`);if(!new Set(["experimental","stable","deprecated"]).has(e.stability))throw new Error(`Editor command stability is invalid: ${t}`);if(!e.effects||typeof e.effects!="object")throw new Error(`Editor command effects are required: ${t}`);if(!new Set(["none","view","authoring","filesystem"]).has(e.effects.persistence))throw new Error(`Editor command persistence is invalid: ${t}`);if(typeof e.effects.undoable!="boolean"||typeof e.effects.idempotent!="boolean")throw new Error(`Editor command effects flags are invalid: ${t}`);if(e.transaction&&(e.transaction.compatible!==!0||e.transaction.sideEffects!=="authoring"||e.transaction.phase!=="mutation"||e.target!=="authoring"||e.access!=="write"||e.effects.persistence!=="authoring"))throw new Error(`Editor command transaction policy is invalid: ${t}`);let s=le(e.description),a={schemaVersion:1,id:t,version:e.version,title:r,...s?{description:s}:{},target:e.target,access:e.access,stability:e.stability,inputSchema:xn(e.inputSchema,`${t}.inputSchema`),outputSchema:xn(e.outputSchema,`${t}.outputSchema`),...e.requires?{requires:Ra(e.requires,t)}:{},effects:Object.freeze({...e.effects}),...e.transaction?{transaction:Object.freeze({...e.transaction})}:{},...e.presentation?{presentation:Ta(e.presentation,t,e.inputSchema)}:{}};return Object.freeze(a)}function Ra(e,t){for(let r of["editorReady","viewAttached","rendererAttached"])if(e[r]!==void 0&&typeof e[r]!="boolean")throw new Error(`Editor command requirement ${r} is invalid: ${t}`);return Object.freeze({...e.editorReady!==void 0?{editorReady:e.editorReady}:{},...e.viewAttached!==void 0?{viewAttached:e.viewAttached}:{},...e.rendererAttached!==void 0?{rendererAttached:e.rendererAttached}:{},...e.activeScope?{activeScope:Object.freeze(ce(e.activeScope,t))}:{},...e.permissions?{permissions:Object.freeze(ce(e.permissions,t))}:{}})}function Ta(e,t,r){let n=le(e.category),i=le(e.shortcut),o=new Set(["none","inline-json","schema-form"]);if(e.inputMode!==void 0&&!o.has(e.inputMode))throw new Error(`Editor command presentation input mode is invalid: ${t}`);let s=e.menu?Object.freeze({path:Object.freeze(ce(e.menu.path,t)),...le(e.menu.group)?{group:e.menu.group.trim()}:{},...e.menu.order!==void 0?{order:Aa(e.menu.order,`${t}.menu.order`)}:{}}):void 0,a=e.selectionBinding?ja(e.selectionBinding,t,r):void 0;return Object.freeze({...n?{category:n}:{},...e.aliases?{aliases:Object.freeze(ce(e.aliases,t))}:{},...e.keywords?{keywords:Object.freeze(ce(e.keywords,t))}:{},...e.examples?{examples:Object.freeze(ce(e.examples,t))}:{},...i?{shortcut:i}:{},...s?{menu:s}:{},...e.inputMode?{inputMode:e.inputMode}:{},...a?{selectionBinding:a}:{}})}function ja(e,t,r){let n=le(e.activeId),i=le(e.selectedIds);if(!n&&!i)throw new Error(`Editor command selection binding is empty: ${t}`);let o=r.properties&&typeof r.properties=="object"?r.properties:{};if(n&&o[n]?.type!=="string")throw new Error(`Editor command active selection binding must target a string property: ${t}.${n}`);if(i&&(o[i]?.type!=="array"||o[i]?.items?.type!=="string"))throw new Error(`Editor command multi-selection binding must target a string array property: ${t}.${i}`);return Object.freeze({...n?{activeId:n}:{},...i?{selectedIds:i}:{}})}var el=Symbol("editor-command-aborted");function xn(e,t){let r=Ca(e,t);return se(r,t),r}function se(e,t){if(typeof e=="boolean")return;if(!ae(e))throw new Error(`Editor command JSON Schema is invalid at ${t}.`);let r=e,n=new Set(["null","object","array","string","number","integer","boolean"]);if("type"in r){let i=typeof r.type=="string"?[r.type]:r.type;if(!Array.isArray(i)||i.length===0||i.some(o=>typeof o!="string"||!n.has(o))||new Set(i).size!==i.length)throw new Error(`Editor command JSON Schema type is invalid at ${t}.type.`)}if("required"in r&&(!Array.isArray(r.required)||r.required.some(i=>typeof i!="string"||i.length===0)||new Set(r.required).size!==r.required.length))throw new Error(`Editor command JSON Schema required is invalid at ${t}.required.`);if("properties"in r){if(!ae(r.properties))throw new Error(`Editor command JSON Schema properties is invalid at ${t}.properties.`);for(let[i,o]of Object.entries(r.properties))se(o,`${t}.properties.${i}`)}if("additionalProperties"in r&&typeof r.additionalProperties!="boolean"&&!ae(r.additionalProperties))throw new Error(`Editor command JSON Schema additionalProperties is invalid at ${t}.additionalProperties.`);ae(r.additionalProperties)&&se(r.additionalProperties,`${t}.additionalProperties`),"items"in r&&se(r.items,`${t}.items`);for(let i of["allOf","anyOf","oneOf"]){if(!(i in r))continue;let o=r[i];if(!Array.isArray(o)||o.length===0)throw new Error(`Editor command JSON Schema ${i} is invalid at ${t}.${i}.`);o.forEach((s,a)=>se(s,`${t}.${i}[${a}]`))}if("not"in r&&se(r.not,`${t}.not`),"enum"in r&&(!Array.isArray(r.enum)||r.enum.length===0))throw new Error(`Editor command JSON Schema enum is invalid at ${t}.enum.`);for(let i of["minLength","maxLength","minItems","maxItems","minProperties","maxProperties"])if(i in r&&(!Number.isSafeInteger(r[i])||r[i]<0))throw new Error(`Editor command JSON Schema ${i} is invalid at ${t}.${i}.`);for(let i of["minimum","maximum","exclusiveMinimum","exclusiveMaximum"])if(i in r&&(typeof r[i]!="number"||!Number.isFinite(r[i])))throw new Error(`Editor command JSON Schema ${i} is invalid at ${t}.${i}.`);if("multipleOf"in r&&(typeof r.multipleOf!="number"||!Number.isFinite(r.multipleOf)||r.multipleOf<=0))throw new Error(`Editor command JSON Schema multipleOf is invalid at ${t}.multipleOf.`);if("uniqueItems"in r&&typeof r.uniqueItems!="boolean")throw new Error(`Editor command JSON Schema uniqueItems is invalid at ${t}.uniqueItems.`);if("pattern"in r){if(typeof r.pattern!="string")throw new Error(`Editor command JSON Schema pattern is invalid at ${t}.pattern.`);try{new RegExp(r.pattern)}catch{throw new Error(`Editor command JSON Schema pattern is invalid at ${t}.pattern.`)}}}function Ca(e,t){let r=Et(e,t);if(!ae(r))throw new Error(`Editor command JSON object is required at ${t}.`);return Object.freeze(r)}function Et(e,t){if(e===null||typeof e=="string"||typeof e=="boolean"||typeof e=="number"&&Number.isFinite(e))return e;if(Array.isArray(e))return Object.freeze(e.map((n,i)=>Et(n,`${t}[${i}]`)));if(!ae(e))throw new Error(`Editor command value must be JSON-compatible at ${t}.`);let r=Object.create(null);for(let[n,i]of Object.entries(e))i!==void 0&&(r[n]=Et(i,`${t}.${n}`));return Object.freeze(r)}function ae(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function ce(e,t){if(!Array.isArray(e))throw new Error(`Editor command string list is invalid: ${t}`);return[...new Set(e.map(r=>yt(r,`Editor command string list contains an empty value: ${t}`)))]}function xa(e){let t=yt(e,"Editor command id is required.");if(t.length>160||/\s/.test(t))throw new Error(`Editor command id is invalid: ${t}`);return t}function yt(e,t){if(typeof e!="string"||!e.trim())throw new Error(t);return e.trim()}function le(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function Aa(e,t){if(typeof e!="number"||!Number.isFinite(e))throw new Error(`Editor command number is invalid: ${t}`);return e}var Na=Object.freeze({subscribe:()=>()=>{},publish:()=>Promise.resolve()}),zn=new WeakMap,wt=new WeakMap,La=new Set(["hierarchy","inspector","panel","command","capability","tool","lifecycle-participant"]),Fn=dt("fps.editor.contributions"),Dn=new WeakMap;function Nn(e,t){let r=t.map(i=>i instanceof Error?i.message:String(i)).join("; "),n=new Error(`${e}: ${r}`);return n.errors=[...t],n}function cl(e){let t=Dn.get(e);if(!t)throw new Error("Editor Plugin lifecycle scope host is unavailable.");return t()}var _n=new WeakMap;function ll(e,t,r){kn(e),Mn(e);let n=_a(t);if(typeof r!="function")throw new Error(`Editor command handler is required: ${n.command.id}`);let i=Object.freeze({type:"editor.command",registration:n});_n.set(i,r),bt(e,{id:n.command.id,kind:"command",value:i})}function dl(e,t){let r=vt(t);return bt(e,{id:r.id,kind:"lifecycle-participant",value:r})}function ul(e,t,r=0){let n=Fe(t);return bt(e,{id:n.definition.id,kind:"tool",priority:r,value:Object.freeze({type:"editor.tool",registration:n})})}function fl(e){return Object.freeze(e.list("tool").map(t=>{let r=t.value;if(!Vn(r)||r.type!=="editor.tool"||!("registration"in r))throw new Error(`Invalid Editor Tool contribution: ${t.id}`);let n=Fe(r.registration);if(n.definition.id!==t.id)throw new Error(`Editor Tool contribution id mismatch: ${t.id} != ${n.definition.id}`);return n}))}function pl(e,t){let r=new Map,n=o=>{let s=new Map(o.list("tool").map(a=>[a.id,a]));for(let[a,c]of[...r])s.get(a)!==c.contribution&&(c.unregister(),r.delete(a));for(let a of s.values()){if(r.has(a.id))continue;let c=Gn(a);r.set(a.id,{contribution:a,unregister:t.register(c)})}};n(e);let i=e.subscribe(n);return()=>{i();for(let o of[...r.values()].reverse())o.unregister();r.clear()}}function ml(e){return e.list("lifecycle-participant").map(t=>{let r=vt(t.value);if(r.id!==t.id)throw new Error(`Editor lifecycle participant contribution id mismatch: ${t.id} != ${r.id}`);return r})}function qa(){let e=new Map,t=new Set,r=()=>{for(let i of[...t])i(n)},n={get:i=>e.get(i),list:i=>(i!==void 0&&qn(i),[...e.values()].filter(o=>i===void 0||o.kind===i).sort(Ma)),subscribe(i){return t.add(i),()=>{t.delete(i)}}};return zn.set(n,(i,o)=>{let s=Hn(o.id),a=qn(o.kind);if(e.has(s))throw new Error(`Duplicate editor contribution id: ${s}`);let c=Object.freeze({...o,id:s,kind:a,pluginId:i,priority:Un(o.priority)});e.set(s,c),r();let u=!0;return()=>{u&&(u=!1,e.get(s)===c&&(e.delete(s),r()))}}),n}function bt(e,t){let r=kn(e);if(Mn(e),e.services.get(Fn)!==r.registry)throw new Error("Editor contribution service does not belong to this Plugin Host.");let i=zn.get(r.registry);if(!i)throw new Error("Editor contribution registry is not owned by this host.");t.kind==="lifecycle-participant"&&vt(t.value),t.kind==="tool"&&Gn(Object.freeze({...t,pluginId:r.pluginId,priority:Un(t.priority)}));let o=i(r.pluginId,t);r.addDisposer(o);let s=!0;return()=>{if(!(!s||!r.registrationOpen))return s=!1,o()}}function za(e){let t=qa(),r=new Map,n=1,i=!1,o=0,s=!1,a=null,c=new Map,u=new Set,p=[],y,m=(h,b,w={scope:"application",scopeId:"editor:application"})=>{p.push(Object.freeze({code:h.code,message:h.message,severity:h.severity,...h.pluginId?{pluginId:h.pluginId}:{}})),p.length>200&&p.shift();try{e.report?.(h)}catch{}!b||!y||h.details?.eventId===gt.id||y.publish(gt,Object.freeze({diagnostic:Object.freeze({code:h.code,message:h.message,severity:h.severity,...h.pluginId?{pluginId:h.pluginId}:{}})}),{...w,...w.sourcePluginId||!h.pluginId?{}:{sourcePluginId:h.pluginId}})},f=()=>s||u.size>0,R=e.manifests.filter(h=>lt(h,"editor").includes("application")),v=Pn({environment:"editor",apiVersion:1,scope:"application",manifests:R,initialServices:[{token:Fn,value:t},...e.initialServices??[]],pluginConfigs:e.pluginConfigs,loadEntry:async(h,b)=>{let w=await e.loadEntry(h,b);return w?ka(Le(w),t):null},report:h=>m(h,!0)});y=Tn({events:v.events,captureRoute(h){let b=[],w=c.get(h.scopeId);for(;w;)b.push(w),w=w.input.parentId?c.get(w.input.parentId):void 0;return()=>{for(let S of b){if(c.get(S.input.id)!==S||S.closeRequested||S.closing)continue;let C=S.host??v;if(!(C.state!=="started"||C.transitioning))return C.events}return v.state==="started"&&!v.transitioning?v.events:Na}},report:h=>m(h,!1)});let j=()=>i||o>0||v.transitioning,_=()=>{if(f())throw new Error("Editor Plugin Host cleanup is incomplete; only cleanup retry operations are available.");if(j())throw new Error("Editor Plugin Host observation is unavailable during a lifecycle transition.")},Z=Object.freeze({get(h){return _(),t.get(h)},list(h){return _(),t.list(h)},subscribe(h){return _(),t.subscribe(h)}}),ee=async h=>{o+=1;try{return await h()}finally{o-=1}},W=(h="anonymous")=>{let b=j();if(v.state!=="started"||b||f())throw new Error(`Editor Plugin Host consumers require an idle started host, got: ${f()?"cleanup-failed":v.state}${b?" (transitioning)":""}`);let w=n++;r.set(w,h);let S=!0;return()=>{S&&(S=!1,r.delete(w))}},be=async(h,b)=>{let w=c.get(b.id);if(w){if(w.input.scope!==b.scope||w.input.parentId!==b.parentId)throw new Error(`Editor Plugin lifecycle scope identity conflicts with the existing scope: ${b.id}`);if(w.owner!==h)throw new Error(`Editor Plugin lifecycle scope is owned by another controller: ${b.id}`);if(u.has(b.id))throw new Error(`Editor Plugin lifecycle scope cleanup is incomplete; close must be retried: ${b.id}`);if(w.closing)throw new Error(`Editor Plugin lifecycle scope is closing: ${b.id}`);return w.ready}let S=i||v.transitioning;if(v.state!=="started"||S||f())throw new Error(`Editor Plugin lifecycle scopes require an idle started host, got: ${f()?"cleanup-failed":v.state}${S?" (transitioning)":""}`);if(Cn(b,[...c.values()].map(F=>({id:F.input.id,scope:F.input.scope,state:F.closing?"failed":"open"}))),b.scope==="application"){c.set(b.id,{input:Object.freeze({...b}),owner:h,host:null,ready:Promise.resolve(),closing:null,closeRequested:!1,releaseTeardownReservation:null});return}let C=c.get(b.parentId);if(!C||C.closing)throw new Error(`Editor Plugin lifecycle parent scope is not open: ${b.parentId}`);if(C.owner!==h)throw new Error(`Editor Plugin lifecycle parent scope is owned by another controller: ${b.parentId}`);let x=b.scope,Q=e.manifests.filter(F=>lt(F,"editor").includes(x)),k={input:Object.freeze({...b}),owner:h,host:null,ready:Promise.resolve(),closing:null,closeRequested:!1,releaseTeardownReservation:null};c.set(b.id,k),k.ready=C.ready.then(async()=>{let F=(C.host??v).createScope({scope:x,manifests:Q});if(k.host=F,k.closeRequested){k.releaseTeardownReservation=F.reserveTeardown();return}await F.start()}).catch(async F=>{let ue;try{await k.host?.dispose()}catch(V){ue=V}if((!k.host||k.host.state==="disposed")&&c.get(b.id)===k&&c.delete(b.id),ue){u.add(b.id),a="dispose";let V=new Error("Editor Plugin lifecycle scope start and cleanup failed.");throw V.errors=[F,ue],V}throw F}),await k.ready},X=(h,b)=>{let w=c.get(h);if(!w)return null;if(b&&w.owner!==b)throw new Error(`Editor Plugin lifecycle scope is owned by another controller: ${h}`);w.closeRequested=!0,w.releaseTeardownReservation??(w.releaseTeardownReservation=w.input.scope==="application"?v.reserveTeardown():w.host?.reserveTeardown()??null);try{w.releaseTeardownReservation?.assertReady()}catch(S){throw u.add(h),a="dispose",S}return w},B=async(h,b)=>{let w=X(h,b);if(w)return w.closing||(w.closing=(async()=>{try{try{await w.ready}catch{}let S=[...c.values()].filter(x=>x.input.parentId===h).reverse(),C=[];for(let x of S)try{await B(x.input.id,b)}catch(Q){C.push(Q);break}if(C.length>0)throw Nn(`Editor Plugin lifecycle child scope cleanup failed: ${h}`,C);w.host?.state!=="disposed"&&await w.host?.dispose(),u.delete(h),c.delete(h)}catch(S){throw(w.host?.state==="cleanup-failed"||[...c.values()].some(x=>x.input.parentId===h&&u.has(x.input.id)))&&(u.add(h),a??(a="dispose")),S}finally{c.get(h)===w?w.closing=null:(w.releaseTeardownReservation?.(),w.releaseTeardownReservation=null)}})()),w.closing},te=async()=>{let h=[...c.values()].filter(w=>!w.input.parentId).reverse(),b=[];for(let w of h)try{await B(w.input.id)}catch(S){b.push(S)}if(b.length>0)throw Nn("Editor Plugin lifecycle root scope cleanup failed",b)},de={get state(){return f()?"cleanup-failed":v.state},get transitioning(){return j()},contributions:Z,eventPublisher:y,reportDiagnostic(h,b={scope:"application",scopeId:"editor:application"}){m(h,!0,b)},inspect:()=>{let h=v.inspect();return Object.freeze({...h,...f()?{state:"cleanup-failed"}:{},transitioning:j(),diagnostics:Object.freeze([...p])})},acquireConsumer:W,mountCommands(h){_();let b=[];try{for(let S of Fa(t)){let{registration:C}=S,x=_n.get(S);if(!x)throw new Error(`Editor command handler is unavailable: ${C.command.id}`);b.push(h.registerCommand({manifest:C.manifest,available:()=>v.state==="started"&&!j()&&!f(),handler:async(Q,k)=>{let F=W(`command:${C.command.id}`);try{return{ok:!0,output:await x(Q,k)}}finally{F()}}}))}}catch(S){for(let C of b.reverse())C();throw S}let w=!0;return()=>{if(w){w=!1;for(let S of b.reverse())S()}}},start:()=>v.start(),stop:()=>{if(Ln(r,"stop"),i)throw new Error("Editor Plugin Host lifecycle is already transitioning.");if(f()&&a==="dispose")throw new Error("Editor Plugin Host disposal cleanup is incomplete; dispose or the owning scope close must be retried.");return i=!0,a="stop",(async()=>{try{await te(),await v.stop(),s=!1,a=null}catch(h){throw s=!0,h}finally{i=!1}})()},dispose:()=>{if(Ln(r,"dispose"),i)throw new Error("Editor Plugin Host lifecycle is already transitioning.");return i=!0,a="dispose",(async()=>{try{await te(),await v.dispose(),s=!1,a=null}catch(h){throw s=!0,h}finally{i=!1}})()}};return Dn.set(de,()=>{let h=Object.freeze({});return Object.freeze({openScope:w=>ee(()=>be(h,w)),reserveScopeClose:w=>{X(w,h)},closeScope:w=>ee(async()=>{await B(w,h),!f()&&!i&&(a=null)})})}),de}function hl(e){if(e.module.environment!=="editor")throw new Error(`Editor Plugin Host requires an editor environment module, got: ${e.module.environment}`);let t=new Map;for(let r of e.module.entries){if(t.has(r.pluginId))throw new Error(`Duplicate Editor Plugin module entry: ${r.pluginId}`);t.set(r.pluginId,r)}return za({manifests:e.module.manifests,pluginConfigs:e.module.pluginConfigs,initialServices:e.initialServices,report:e.report,async loadEntry(r){let n=t.get(r.id);if(!n)throw new Error(`Editor Plugin module entry is missing: ${r.id}`);return n.load()}})}function kn(e){let t=wt.get(e);if(!t)throw new Error("Editor contribution registration requires a host-authenticated Plugin context.");if(!t.registrationOpen)throw new Error("Editor contributions may only be registered during the Plugin register lifecycle.");return t}function Mn(e){if(e.scope!=="application")throw new Error(`Editor contributions are application-scope extension definitions; ${e.scope} scopes may own resources but cannot register global contributions.`)}function Fa(e){return e.list("command").map(t=>{let r=t.value;if(!Da(r)||r.registration.command.id!==t.id)throw new Error(`Invalid Editor command contribution: ${t.id}`);return r})}function Da(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=e;return t.type==="editor.command"&&!!t.registration&&t.registration.command?.kind==="command"}function _a(e){if(e.command?.kind!=="command")throw new Error("Editor command registration requires a command token.");let t=An(e.manifest);if(t.id!==e.command.id)throw new Error(`Editor command token and manifest ids must match: ${e.command.id} != ${t.id}`);return Object.freeze({command:e.command,manifest:t})}function vt(e){if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Editor lifecycle participant must be an object.");let t=e,r=Hn(t.id??"");if(!Array.isArray(t.transitions)||t.transitions.length===0)throw new Error(`Editor lifecycle participant transitions are required: ${r}`);let n=new Set(jn),i=t.transitions.map(o=>{if(typeof o!="string"||!n.has(o))throw new Error(`Editor lifecycle participant transition is invalid: ${r} -> ${String(o)}`);return o});for(let o of["prepare","settled","failed"])if(t[o]!==void 0&&typeof t[o]!="function")throw new Error(`Editor lifecycle participant ${o} must be a function: ${r}`);return Object.freeze({id:r,transitions:Object.freeze([...new Set(i)]),...t.prepare?{prepare:t.prepare}:{},...t.settled?{settled:t.settled}:{},...t.failed?{failed:t.failed}:{}})}function Ln(e,t){if(e.size!==0)throw new Error(`Cannot ${t} Editor Plugin Host with active consumers: ${[...e.values()].join(", ")}`)}function ka(e,t){return{pluginId:e.pluginId,environment:e.environment,async register(r){let n={registry:t,pluginId:r.pluginId,registrationOpen:!0,addDisposer:r.add.bind(r)};wt.set(r,n);try{return await e.register(r)}finally{n.registrationOpen=!1}},...e.start?{start:r=>e.start(r)}:{},...e.stop?{stop:r=>e.stop(r)}:{},dispose:async r=>{try{await e.dispose?.(r)}finally{wt.delete(r)}}}}function Hn(e){let t=e.trim();if(!/^[a-z0-9]+(?:[._-][a-z0-9]+)+$/.test(t))throw new Error(`Editor contribution id must be namespaced lowercase, got: ${e}`);return t}function Un(e){if(e===void 0)return 0;if(!Number.isFinite(e))throw new Error("Editor contribution priority must be finite.");return e}function qn(e){if(typeof e!="string"||!La.has(e))throw new Error(`Unknown editor contribution kind: ${String(e)}`);return e}function Ma(e,t){let r=(t.priority??0)-(e.priority??0);return r!==0?r:e.id<t.id?-1:e.id>t.id?1:0}function Vn(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function Gn(e){let t=e.value;if(!Vn(t)||t.type!=="editor.tool"||!("registration"in t))throw new Error(`Invalid Editor Tool contribution: ${e.id}`);let r=Fe(t.registration);if(r.definition.id!==e.id)throw new Error(`Editor Tool contribution id mismatch: ${e.id} != ${r.definition.id}`);return r}export{Fn as FPS_EDITOR_CONTRIBUTIONS,pl as bindFpsEditorTools,qa as createFpsEditorContributionRegistry,za as createFpsEditorPluginHost,hl as createFpsEditorPluginHostFromEnvironmentModule,cl as getFpsEditorPluginLifecycleScopeHost,ll as registerFpsEditorCommand,bt as registerFpsEditorContribution,dl as registerFpsEditorLifecycleParticipant,ul as registerFpsEditorTool,ml as resolveFpsEditorLifecycleParticipants,fl as resolveFpsEditorTools};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{X as bn,di as H,gm as Y}from"./standardMaterial-CgDYhl-K.js";const ln=4,q=4,sn=1,N=2,vn=8,B=65536,d=B>>3,gn=16,_=14,F=(1<<gn)+1,j=1<<_,nn=j-1,K=59,cn=63,In=2+cn-K;var m;(function(n){n[n.NO_COMPRESSION=0]="NO_COMPRESSION",n[n.RLE_COMPRESSION=1]="RLE_COMPRESSION",n[n.ZIPS_COMPRESSION=2]="ZIPS_COMPRESSION",n[n.ZIP_COMPRESSION=3]="ZIP_COMPRESSION",n[n.PIZ_COMPRESSION=4]="PIZ_COMPRESSION",n[n.PXR24_COMPRESSION=5]="PXR24_COMPRESSION"})(m||(m={}));var $;(function(n){n[n.INCREASING_Y=0]="INCREASING_Y",n[n.DECREASING_Y=1]="DECREASING_Y"})($||($={}));const z=An();function An(){const n=new ArrayBuffer(4),t=new Float32Array(n),e=new Uint32Array(n),r=new Uint32Array(512),a=new Uint32Array(512);for(let l=0;l<256;++l){const s=l-127;s<-27?(r[l]=0,r[l|256]=32768,a[l]=24,a[l|256]=24):s<-14?(r[l]=1024>>-s-14,r[l|256]=1024>>-s-14|32768,a[l]=-s-1,a[l|256]=-s-1):s<=15?(r[l]=s+15<<10,r[l|256]=s+15<<10|32768,a[l]=13,a[l|256]=13):s<128?(r[l]=31744,r[l|256]=64512,a[l]=24,a[l|256]=24):(r[l]=31744,r[l|256]=64512,a[l]=13,a[l|256]=13)}const c=new Uint32Array(2048),i=new Uint32Array(64),o=new Uint32Array(64);for(let l=1;l<1024;++l){let s=l<<13,u=0;for(;!(s&8388608);)s<<=1,u-=8388608;s&=-8388609,u+=947912704,c[l]=s|u}for(let l=1024;l<2048;++l)c[l]=939524096+(l-1024<<13);for(let l=1;l<31;++l)i[l]=l<<23;i[31]=1199570944,i[32]=2147483648;for(let l=33;l<63;++l)i[l]=2147483648+(l-32<<23);i[63]=3347054592;for(let l=1;l<64;++l)l!==32&&(o[l]=1024);return{floatView:t,uint32View:e,baseTable:r,shiftTable:a,mantissaTable:c,exponentTable:i,offsetTable:o}}function J(n,t){const e=new Uint8Array(n);let r=0;for(;e[t.value+r]!=0;)r+=1;const a=new TextDecoder().decode(e.slice(t.value,t.value+r));return t.value=t.value+r+1,a}function U(n,t){const e=n.getInt32(t.value,!0);return t.value+=ln,e}function R(n,t){const e=n.getUint32(t.value,!0);return t.value+=ln,e}function W(n,t){const e=n.getUint8(t.value);return t.value+=sn,e}function Z(n,t){const e=n.getUint16(t.value,!0);return t.value+=N,e}function on(n,t){const e=n[t.value];return t.value+=sn,e}function On(n,t){let e;return"getBigInt64"in DataView.prototype?e=Number(n.getBigInt64(t.value,!0)):e=n.getUint32(t.value+4,!0)+Number(n.getUint32(t.value,!0)<<32),t.value+=vn,e}function v(n,t){const e=n.getFloat32(t.value,!0);return t.value+=q,e}function Pn(n,t){return Un(Z(n,t))}function Un(n){const t=(n&31744)>>10,e=n&1023;return(n>>15?-1:1)*(t?t===31?e?NaN:1/0:Math.pow(2,t-15)*(1+e/1024):6103515625e-14*(e/1024))}function mn(n){if(Math.abs(n)>65504)throw new Error("Value out of range.Consider using float instead of half-float.");n=bn(n,-65504,65504),z.floatView[0]=n;const t=z.uint32View[0],e=t>>23&511;return z.baseTable[e]+((t&8388607)>>z.shiftTable[e])}function Rn(n,t){return mn(v(n,t))}function _n(n,t,e){const r=new TextDecoder().decode(new Uint8Array(n).slice(t.value,t.value+e));return t.value=t.value+e,r}function Tn(n,t){const e=U(n,t),r=R(n,t);return[e,r]}function Cn(n,t){const e=R(n,t),r=R(n,t);return[e,r]}function Nn(n,t){const e=v(n,t),r=v(n,t);return[e,r]}function Mn(n,t){const e=v(n,t),r=v(n,t),a=v(n,t);return[e,r,a]}function Dn(n,t,e){const r=t.value,a=[];for(;t.value<r+e-1;){const c=J(n.buffer,t),i=U(n,t),o=W(n,t);t.value+=3;const l=U(n,t),s=U(n,t);a.push({name:c,pixelType:i,pLinear:o,xSampling:l,ySampling:s})}return t.value+=1,a}function Fn(n,t){const e=v(n,t),r=v(n,t),a=v(n,t),c=v(n,t),i=v(n,t),o=v(n,t),l=v(n,t),s=v(n,t);return{redX:e,redY:r,greenX:a,greenY:c,blueX:i,blueY:o,whiteX:l,whiteY:s}}function kn(n,t){return W(n,t)}function Ln(n,t){const e=U(n,t),r=U(n,t),a=U(n,t),c=U(n,t);return{xMin:e,yMin:r,xMax:a,yMax:c}}function zn(n,t){const e=W(n,t);return $[e]}function Hn(n,t,e,r){switch(e){case"string":case"stringvector":case"iccProfile":return _n(n.buffer,t,r);case"chlist":return Dn(n,t,r);case"chromaticities":return Fn(n,t);case"compression":return kn(n,t);case"box2i":return Ln(n,t);case"lineOrder":return zn(n,t);case"float":return v(n,t);case"v2f":return Nn(n,t);case"v3f":return Mn(n,t);case"int":return U(n,t);case"rational":return Tn(n,t);case"timecode":return Cn(n,t);case"preview":return t.value+=r,"skipped";default:t.value+=r;return}}function un(n){for(let t=1;t<n.length;t++){const e=n[t-1]+n[t]-128;n[t]=e}}function hn(n,t){let e=0,r=Math.floor((n.length+1)/2),a=0;const c=n.length-1;for(;!(a>c||(t[a++]=n[e++],a>c));)t[a++]=n[r++]}const Bn=20000630;function pn(n,t){if(n.getUint32(0,!0)!=Bn)throw new Error("Incorrect OpenEXR format");const e=n.getUint8(4),r=n.getUint8(5),a={singleTile:!!(r&2),longName:!!(r&4),deepFormat:!!(r&8),multiPart:!!(r&16)};t.value=8;const c={};let i=!0;for(;i;){const o=J(n.buffer,t);if(!o)i=!1;else{const l=J(n.buffer,t),s=R(n,t),u=Hn(n,t,l,s);u===void 0?H.Warn(`Unknown header attribute type ${l}'.`):c[o]=u}}if(r&-5)throw new Error("Unsupported file format");return{version:e,spec:a,...c}}const fn=16,Zn=1<<fn-1,tn=(1<<fn)-1;function Wn(n,t){let e=0;for(let a=0;a<B;++a)(a==0||n[a>>3]&1<<(a&7))&&(t[e++]=a);const r=e-1;for(;e<B;)t[e++]=0;return r}function Gn(n){for(let t=0;t<j;t++)n[t]={},n[t].len=0,n[t].lit=0,n[t].p=null}function en(n,t,e,r,a){for(;e<n;)t=t<<8|on(r,a),e+=8;return e-=n,{l:t>>e&(1<<n)-1,c:t,lc:e}}function Q(n,t,e,r){return n=n<<8|on(e,r),t+=8,{c:n,lc:t}}function X(n,t,e,r,a,c,i,o,l){if(n==t){if(r<8){const p=Q(e,r,a,c);e=p.c,r=p.lc}r-=8;let s=e>>r;if(s=new Uint8Array([s])[0],o.value+s>l)return null;const u=i[o.value-1];for(;s-- >0;)i[o.value++]=u}else if(o.value<l)i[o.value++]=n;else return null;return{c:e,lc:r}}const D=new Array(59);function Yn(n){for(let e=0;e<=58;++e)D[e]=0;for(let e=0;e<F;++e)D[n[e]]+=1;let t=0;for(let e=58;e>0;--e){const r=t+D[e]>>1;D[e]=t,t=r}for(let e=0;e<F;++e){const r=n[e];r>0&&(n[e]=r|D[r]++<<6)}}function Xn(n,t,e,r,a,c){const i=t;let o=0,l=0;for(;r<=a;r++){if(i.value-t.value>e)return;let s=en(6,o,l,n,i);const u=s.l;if(o=s.c,l=s.lc,c[r]=u,u==cn){if(i.value-t.value>e)throw new Error("Error in HufUnpackEncTable");s=en(8,o,l,n,i);let p=s.l+In;if(o=s.c,l=s.lc,r+p>a+1)throw new Error("Error in HufUnpackEncTable");for(;p--;)c[r++]=0;r--}else if(u>=K){let p=u-K+2;if(r+p>a+1)throw new Error("Error in HufUnpackEncTable");for(;p--;)c[r++]=0;r--}}Yn(c)}function wn(n){return n&63}function yn(n){return n>>6}function qn(n,t,e,r){for(;t<=e;t++){const a=yn(n[t]),c=wn(n[t]);if(a>>c)throw new Error("Invalid table entry");if(c>_){const i=r[a>>c-_];if(i.len)throw new Error("Invalid table entry");if(i.lit++,i.p){const o=i.p;i.p=new Array(i.lit);for(let l=0;l<i.lit-1;++l)i.p[l]=o[l]}else i.p=new Array(1);i.p[i.lit-1]=t}else if(c){let i=0;for(let o=1<<_-c;o>0;o--){const l=r[(a<<_-c)+i];if(l.len||l.p)throw new Error("Invalid table entry");l.len=c,l.lit=t,i++}}}return!0}function Kn(n,t,e,r,a,c,i,o,l){let s=0,u=0;const p=i,E=Math.trunc(r.value+(a+7)/8);for(;r.value<E;){let h=Q(s,u,e,r);for(s=h.c,u=h.lc;u>=_;){const w=s>>u-_&nn,y=t[w];if(y.len){u-=y.len;const f=X(y.lit,c,s,u,e,r,o,l,p);f&&(s=f.c,u=f.lc)}else{if(!y.p)throw new Error("hufDecode issues");let f;for(f=0;f<y.lit;f++){const b=wn(n[y.p[f]]);for(;u<b&&r.value<E;)h=Q(s,u,e,r),s=h.c,u=h.lc;if(u>=b&&yn(n[y.p[f]])==(s>>u-b&(1<<b)-1)){u-=b;const O=X(y.p[f],c,s,u,e,r,o,l,p);O&&(s=O.c,u=O.lc);break}}if(f==y.lit)throw new Error("HufDecode issues")}}}const I=8-a&7;for(s>>=I,u-=I;u>0;){const h=t[s<<_-u&nn];if(h.len){u-=h.len;const w=X(h.lit,c,s,u,e,r,o,l,p);w&&(s=w.c,u=w.lc)}else throw new Error("HufDecode issues")}return!0}function $n(n,t,e,r,a,c){const i={value:0},o=e.value,l=R(t,e),s=R(t,e);e.value+=4;const u=R(t,e);if(e.value+=4,l<0||l>=F||s<0||s>=F)throw new Error("Wrong HUF_ENCSIZE");const p=new Array(F),E=new Array(j);Gn(E);const I=r-(e.value-o);if(Xn(n,e,I,l,s,p),u>8*(r-(e.value-o)))throw new Error("Wrong hufUncompress");qn(p,l,s,E),Kn(p,E,n,e,u,s,c,a,i)}function V(n){return n&65535}function an(n){const t=V(n);return t>32767?t-65536:t}function T(n,t){const e=an(n),a=an(t),c=e+(a&1)+(a>>1),i=c,o=c-a;return{a:i,b:o}}function C(n,t){const e=V(n),r=V(t),a=e-(r>>1)&tn;return{a:r+a-Zn&tn,b:a}}function Jn(n,t,e,r,a,c,i){const o=i<16384,l=e>a?a:e;let s=1,u,p;for(;s<=l;)s<<=1;for(s>>=1,u=s,s>>=1;s>=1;){p=0;const E=p+c*(a-u),I=c*s,h=c*u,w=r*s,y=r*u;let f,b,O,k;for(;p<=E;p+=h){let x=p;const G=p+r*(e-u);for(;x<=G;x+=y){const A=x+w,g=x+I,L=g+w;if(o){let S=T(n[x+t],n[g+t]);f=S.a,O=S.b,S=T(n[A+t],n[L+t]),b=S.a,k=S.b,S=T(f,b),n[x+t]=S.a,n[A+t]=S.b,S=T(O,k),n[g+t]=S.a,n[L+t]=S.b}else{let S=C(n[x+t],n[g+t]);f=S.a,O=S.b,S=C(n[A+t],n[L+t]),b=S.a,k=S.b,S=C(f,b),n[x+t]=S.a,n[A+t]=S.b,S=C(O,k),n[g+t]=S.a,n[L+t]=S.b}}if(e&s){const A=x+I;let g;o?g=T(n[x+t],n[A+t]):g=C(n[x+t],n[A+t]),f=g.a,n[A+t]=g.b,n[x+t]=f}}if(a&s){let x=p;const G=p+r*(e-u);for(;x<=G;x+=y){const A=x+w;let g;o?g=T(n[x+t],n[A+t]):g=C(n[x+t],n[A+t]),f=g.a,n[A+t]=g.b,n[x+t]=f}}u=s,s>>=1}return p}function Qn(n,t,e){for(let r=0;r<e;++r)t[r]=n[t[r]]}function Vn(n){let t=n.byteLength;const e=[];let r=0;const a=new DataView(n);for(;t>0;){const c=a.getInt8(r++);if(c<0){const i=-c;t-=i+1;for(let o=0;o<i;o++)e.push(a.getUint8(r++))}else{const i=c;t-=2;const o=a.getUint8(r++);for(let l=0;l<i+1;l++)e.push(o)}}return e}function Sn(n){return new DataView(n.array.buffer,n.offset.value,n.size)}function jn(n){const t=n.viewer.buffer.slice(n.offset.value,n.offset.value+n.size),e=new Uint8Array(Vn(t)),r=new Uint8Array(e.length);return un(e),hn(e,r),new DataView(r.buffer)}function rn(n){const t=n.array.slice(n.offset.value,n.offset.value+n.size),e=fflate.unzlibSync(t),r=new Uint8Array(e.length);return un(e),hn(e,r),new DataView(r.buffer)}function dn(n){const t=n.array.slice(n.offset.value,n.offset.value+n.size),e=fflate.unzlibSync(t),r=n.lines*n.channels*n.width,a=n.type==1?new Uint16Array(r):new Uint32Array(r);let c=0,i=0;const o=new Array(4);for(let l=0;l<n.lines;l++)for(let s=0;s<n.channels;s++){let u=0;switch(n.type){case 1:o[0]=c,o[1]=o[0]+n.width,c=o[1]+n.width;for(let p=0;p<n.width;++p){const E=e[o[0]++]<<8|e[o[1]++];u+=E,a[i]=u,i++}break;case 2:o[0]=c,o[1]=o[0]+n.width,o[2]=o[1]+n.width,c=o[2]+n.width;for(let p=0;p<n.width;++p){const E=e[o[0]++]<<24|e[o[1]++]<<16|e[o[2]++]<<8;u+=E,a[i]=u,i++}break}}return new DataView(a.buffer)}function nt(n){const t=n.viewer,e={value:n.offset.value},r=new Uint16Array(n.width*n.scanlineBlockSize*(n.channels*n.type)),a=new Uint8Array(d);let c=0;const i=new Array(n.channels);for(let h=0;h<n.channels;h++)i[h]={},i[h].start=c,i[h].end=i[h].start,i[h].nx=n.width,i[h].ny=n.lines,i[h].size=n.type,c+=i[h].nx*i[h].ny*i[h].size;const o=Z(t,e),l=Z(t,e);if(l>=d)throw new Error("Wrong PIZ_COMPRESSION BITMAP_SIZE");if(o<=l)for(let h=0;h<l-o+1;h++)a[h+o]=W(t,e);const s=new Uint16Array(B),u=Wn(a,s),p=R(t,e);$n(n.array,t,e,p,r,c);for(let h=0;h<n.channels;++h){const w=i[h];for(let y=0;y<i[h].size;++y)Jn(r,w.start+y,w.nx,w.size,w.ny,w.nx*w.size,u)}Qn(s,r,c);let E=0;const I=new Uint8Array(r.buffer.byteLength);for(let h=0;h<n.lines;h++)for(let w=0;w<n.channels;w++){const y=i[w],f=y.nx*y.size,b=new Uint8Array(r.buffer,y.end*N,f*N);I.set(b,E),E+=f*N,y.end+=f}return new DataView(I.buffer)}var P;(function(n){n[n.Float=0]="Float",n[n.HalfFloat=1]="HalfFloat"})(P||(P={}));class M{}M.DefaultOutputType=P.HalfFloat;M.FFLATEUrl="https://unpkg.com/fflate@0.8.2";async function xn(n,t,e,r){const a={size:0,viewer:t,array:new Uint8Array(t.buffer),offset:e,width:n.dataWindow.xMax-n.dataWindow.xMin+1,height:n.dataWindow.yMax-n.dataWindow.yMin+1,channels:n.channels.length,channelLineOffsets:{},scanOrder:()=>0,bytesPerLine:0,outLineWidth:0,lines:0,scanlineBlockSize:0,inputSize:null,type:0,uncompress:null,getter:()=>0,format:5,outputChannels:0,decodeChannels:{},blockCount:null,byteArray:null,linearSpace:!1,textureType:0};switch(n.compression){case m.NO_COMPRESSION:a.lines=1,a.uncompress=Sn;break;case m.RLE_COMPRESSION:a.lines=1,a.uncompress=jn;break;case m.ZIPS_COMPRESSION:a.lines=1,a.uncompress=rn,await Y.LoadScriptAsync(M.FFLATEUrl);break;case m.ZIP_COMPRESSION:a.lines=16,a.uncompress=rn,await Y.LoadScriptAsync(M.FFLATEUrl);break;case m.PIZ_COMPRESSION:a.lines=32,a.uncompress=nt;break;case m.PXR24_COMPRESSION:a.lines=16,a.uncompress=dn,await Y.LoadScriptAsync(M.FFLATEUrl);break;default:throw new Error(m[n.compression]+" is unsupported")}a.scanlineBlockSize=a.lines;const c={};for(const s of n.channels)switch(s.name){case"R":case"G":case"B":case"A":c[s.name]=!0,a.type=s.pixelType;break;case"Y":c[s.name]=!0,a.type=s.pixelType;break}let i=!1;if(c.R&&c.G&&c.B&&c.A)a.outputChannels=4,a.decodeChannels={R:0,G:1,B:2,A:3};else if(c.R&&c.G&&c.B)i=!0,a.outputChannels=4,a.decodeChannels={R:0,G:1,B:2,A:3};else if(c.R&&c.G)a.outputChannels=2,a.decodeChannels={R:0,G:1};else if(c.R)a.outputChannels=1,a.decodeChannels={R:0};else if(c.Y)a.outputChannels=1,a.decodeChannels={Y:0};else throw new Error("EXRLoader.parse: file contains unsupported data channels.");if(a.type===1)switch(r){case P.Float:a.getter=Pn,a.inputSize=N;break;case P.HalfFloat:a.getter=Z,a.inputSize=N;break}else if(a.type===2)switch(r){case P.Float:a.getter=v,a.inputSize=q;break;case P.HalfFloat:a.getter=Rn,a.inputSize=q}else throw new Error("Unsupported pixelType "+a.type+" for "+n.compression);a.blockCount=a.height/a.scanlineBlockSize;for(let s=0;s<a.blockCount;s++)On(t,e);const o=a.width*a.height*a.outputChannels;switch(r){case P.Float:a.byteArray=new Float32Array(o),a.textureType=1,i&&a.byteArray.fill(1,0,o);break;case P.HalfFloat:a.byteArray=new Uint16Array(o),a.textureType=2,i&&a.byteArray.fill(15360,0,o);break;default:throw new Error("Unsupported type: "+r)}let l=0;for(const s of n.channels)a.decodeChannels[s.name]!==void 0&&(a.channelLineOffsets[s.name]=l*a.width),l+=s.pixelType*2;return a.bytesPerLine=a.width*l,a.outLineWidth=a.width*a.outputChannels,n.lineOrder==="INCREASING_Y"?a.scanOrder=s=>s:a.scanOrder=s=>a.height-1-s,a.outputChannels==4?(a.format=5,a.linearSpace=!0):(a.format=6,a.linearSpace=!1),a}function En(n,t,e,r){const a={value:0};for(let c=0;c<n.height/n.scanlineBlockSize;c++){const i=U(e,r)-t.dataWindow.yMin;n.size=R(e,r),n.lines=i+n.scanlineBlockSize>n.height?n.height-i:n.scanlineBlockSize;const l=n.size<n.lines*n.bytesPerLine&&n.uncompress?n.uncompress(n):Sn(n);r.value+=n.size;for(let s=0;s<n.scanlineBlockSize;s++){const u=c*n.scanlineBlockSize,p=s+n.scanOrder(u);if(p>=n.height)continue;const E=s*n.bytesPerLine,I=(n.height-1-p)*n.outLineWidth;for(let h=0;h<n.channels;h++){const w=t.channels[h].name,y=n.channelLineOffsets[w],f=n.decodeChannels[w];if(f!==void 0){a.value=E+y;for(let b=0;b<n.width;b++){const O=I+b*n.outputChannels+f;n.byteArray&&(n.byteArray[O]=n.getter(l,a))}}}}}}class tt{constructor(){this.supportCascades=!1}loadCubeData(t,e,r,a,c){throw".exr not supported in Cube."}loadData(t,e,r){const a=new DataView(t.buffer),c={value:0},i=pn(a,c);xn(i,a,c,M.DefaultOutputType).then(o=>{En(o,i,a,c);const l=i.dataWindow.xMax-i.dataWindow.xMin+1,s=i.dataWindow.yMax-i.dataWindow.yMin+1;r(l,s,e.generateMipMaps,!1,()=>{const u=e.getEngine();e.format=i.format,e.type=o.textureType,e.invertY=!1,e._gammaSpace=!i.linearSpace,o.byteArray&&u._uploadDataToTextureDirectly(e,o.byteArray,0,0,void 0,!0)})}).catch(o=>{H.Error("Failed to load EXR texture: ",o)})}}async function et(n){const t=new DataView(n),e={value:0},r=pn(t,e);try{const a=await xn(r,t,e,P.Float);return En(a,r,t,e),a.byteArray?{width:r.dataWindow.xMax-r.dataWindow.xMin+1,height:r.dataWindow.yMax-r.dataWindow.yMin+1,data:new Float32Array(a.byteArray)}:(H.Error("Failed to decode EXR data: No byte array available."),{width:0,height:0,data:null})}catch(a){H.Error("Failed to load EXR data: ",a)}return{width:0,height:0,data:null}}const rt=Object.freeze(Object.defineProperty({__proto__:null,ReadExrDataAsync:et,_ExrTextureLoader:tt},Symbol.toStringTag,{value:"Module"}));export{Qn as A,m as C,Rn as D,P as E,pn as G,$n as H,hn as I,Pn as P,et as R,En as S,nt as U,Jn as W,tt as _,xn as a,Vn as b,M as c,v as d,U as e,On as f,J as g,Z as h,R as i,W as j,on as k,Hn as l,un as m,Wn as n,dn as o,Sn as p,jn as q,rn as r,rt as s};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as t,aD as s,T as i,br as l}from"./lazy-BcZCe0kL.js";import{e$ as u}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class h extends t{constructor(e){super(e),this.config=e,this.array=this.registerDataInput("array",s),this.index=this.registerDataInput("index",s,new i(-1)),this.value=this.registerDataOutput("value",s)}_updateOutputs(e){const a=this.array.getValue(e),r=l(this.index.getValue(e));a&&r>=0&&r<a.length?this.value.setValue(a[r],e):this.value.setValue(null,e)}serialize(e){super.serialize(e)}getClassName(){return"FlowGraphArrayIndexBlock"}}u("FlowGraphArrayIndexBlock",h);export{h as FlowGraphArrayIndexBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./easing-BkcTAuOI.js";import{K as u,aL as c,aO as r,aD as h}from"./lazy-BcZCe0kL.js";import{e$ as g}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class l extends u{constructor(t){super(t),this.config=t,this._easingFunctions={},this.mode=this.registerDataInput("mode",c,0),this.controlPoint1=this.registerDataInput("controlPoint1",r),this.controlPoint2=this.registerDataInput("controlPoint2",r),this.easingFunction=this.registerDataOutput("easingFunction",h)}_updateOutputs(t){const e=this.mode.getValue(t),i=this.controlPoint1.getValue(t),s=this.controlPoint2.getValue(t);if(e===void 0)return;const o=`${e}-${i.x}-${i.y}-${s.x}-${s.y}`;if(!this._easingFunctions[o]){const n=new a(i.x,i.y,s.x,s.y);n.setEasingMode(e),this._easingFunctions[o]=n}this.easingFunction.setValue(this._easingFunctions[o],t)}getClassName(){return"FlowGraphBezierCurveEasing"}}g("FlowGraphBezierCurveEasing",l);export{l as FlowGraphBezierCurveEasingBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{F as o}from"./flowGraphCachedOperationBlock-CDf6OBvO.js";class p extends o{constructor(t,a,s,e,r,i){super(s,i),this._operation=e,this._className=r,this.a=this.registerDataInput("a",t),this.b=this.registerDataInput("b",a)}_doOperation(t){const a=this.a.getValue(t),s=this.b.getValue(t);return this._operation(a,s)}getClassName(){return this._className}}export{p as F};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{R as e,aE as i}from"./lazy-BcZCe0kL.js";import{e$ as a}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class o extends e{constructor(t){super(t),this.condition=this.registerDataInput("condition",i),this.onTrue=this._registerSignalOutput("onTrue"),this.onFalse=this._registerSignalOutput("onFalse")}_execute(t){this.condition.getValue(t)?this.onTrue._activateSignal(t):this.onFalse._activateSignal(t)}getClassName(){return"FlowGraphBranchBlock"}}a("FlowGraphBranchBlock",o);export{o as FlowGraphBranchBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as u,aE as h}from"./lazy-BcZCe0kL.js";const l="cachedOperationValue",t="cachedExecutionId";class c extends u{constructor(e,i){super(i),this.value=this.registerDataOutput("value",e),this.isValid=this.registerDataOutput("isValid",h)}_updateOutputs(e){const i=e._getExecutionVariable(this,t,-1),s=e._getExecutionVariable(this,l,null);if(s!=null&&i===e.executionId)this.isValid.setValue(!0,e),this.value.setValue(s,e);else try{const a=this._doOperation(e);if(a==null){this.isValid.setValue(!1,e);return}e._setExecutionVariable(this,l,a),e._setExecutionVariable(this,t,e.executionId),this.value.setValue(a,e),this.isValid.setValue(!0,e)}catch{this.isValid.setValue(!1,e)}}}export{c as F};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e$ as t}from"./standardMaterial-CgDYhl-K.js";import{S as i,aH as r,br as s}from"./lazy-BcZCe0kL.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class o extends i{constructor(e){super(e),this.delayIndex=this.registerDataInput("delayIndex",r)}_execute(e,c){const a=s(this.delayIndex.getValue(e));if(a<=0||isNaN(a)||!isFinite(a))return this._reportError(e,"Invalid delay index");const l=e._getGlobalContextVariable("pendingDelays",[])[a];l&&l.dispose(),this.out._activateSignal(e)}getClassName(){return"FlowGraphCancelDelayBlock"}}t("FlowGraphCancelDelayBlock",o);export{o as FlowGraphCancelDelayBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as i,aD as e}from"./lazy-BcZCe0kL.js";import"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class p extends i{constructor(t){super(t),this.config=t,this.executionFunction=this.registerDataInput("function",e),this.value=this.registerDataInput("value",e),this.result=this.registerDataOutput("result",e)}_updateOutputs(t){const s=this.executionFunction.getValue(t),u=this.value.getValue(t);s&&this.result.setValue(s(u,t),t)}getClassName(){return"FlowGraphCodeExecutionBlock"}}export{p as FlowGraphCodeExecutionBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as a,aE as s,aD as o}from"./lazy-BcZCe0kL.js";import{e$ as e}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class r extends a{constructor(t){super(t),this.condition=this.registerDataInput("condition",s),this.onTrue=this.registerDataInput("onTrue",o),this.onFalse=this.registerDataInput("onFalse",o),this.output=this.registerDataOutput("output",o)}_updateOutputs(t){const i=this.condition.getValue(t);this.output.setValue(i?this.onTrue.getValue(t):this.onFalse.getValue(t),t)}getClassName(){return"FlowGraphConditionalBlock"}}e("FlowGraphConditionalBlock",r);export{r as FlowGraphConditionalDataBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as g,aD as o}from"./lazy-BcZCe0kL.js";import{e$ as i,di as l}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class h extends g{constructor(e){if(super(e),this.message=this.registerDataInput("message",o),this.logType=this.registerDataInput("logType",o,"log"),e?.messageTemplate){const t=this._getTemplateMatches(e.messageTemplate);for(const s of t)this.registerDataInput(s,o)}}_execute(e){const t=this.logType.getValue(e),s=this._getMessageValue(e);t==="warn"?l.Warn(s):t==="error"?l.Error(s):l.Log(s),this.out._activateSignal(e)}getClassName(){return"FlowGraphConsoleLogBlock"}_getMessageValue(e){if(this.config?.messageTemplate){let t=this.config.messageTemplate;const s=this._getTemplateMatches(t);for(const a of s){const r=this.getDataInput(a)?.getValue(e);r!==void 0&&(t=t.replace(new RegExp(`\\{${a}\\}`,"g"),r.toString()))}return t}else return this.message.getValue(e)}_getTemplateMatches(e){const t=/\{([^}]+)\}/g,s=[];let a;for(;(a=t.exec(e))!==null;)s.push(a[1]);return s}}i("FlowGraphConsoleLogBlock",h);export{h as FlowGraphConsoleLogBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as e,bu as s,bp as o}from"./lazy-BcZCe0kL.js";import{e$ as u}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class r extends e{constructor(t){super(t),this.config=t,this.output=this.registerDataOutput("output",s(t.value))}_updateOutputs(t){this.output.setValue(this.config.value,t)}getClassName(){return"FlowGraphConstantBlock"}serialize(t={},a=o){super.serialize(t),a("value",this.config.value,t.config)}}u("FlowGraphConstantBlock",r);export{r as FlowGraphConstantBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as s,aD as t,aL as r}from"./lazy-BcZCe0kL.js";import{e$ as a}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class i extends s{constructor(e){super(e),this.userVariables=this.registerDataOutput("userVariables",t),this.executionId=this.registerDataOutput("executionId",r)}_updateOutputs(e){this.userVariables.setValue(e.userVariables,e),this.executionId.setValue(e.executionId,e)}serialize(e){super.serialize(e)}getClassName(){return"FlowGraphContextBlock"}}a("FlowGraphContextBlock",i);export{i as FlowGraphContextBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as r,aL as i}from"./lazy-BcZCe0kL.js";import{e$ as a}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class o extends r{constructor(t){super(t),this.count=this.registerDataOutput("count",i),this.reset=this._registerSignalInput("reset")}_execute(t,s){if(s===this.reset){t._setExecutionVariable(this,"count",0),this.count.setValue(0,t);return}const e=t._getExecutionVariable(this,"count",0)+1;t._setExecutionVariable(this,"count",e),this.count.setValue(e,t),this.out._activateSignal(t)}getClassName(){return"FlowGraphCallCounterBlock"}}a("FlowGraphCallCounterBlock",o);export{o as FlowGraphCallCounterBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as u,aD as a,br as i,bv as r}from"./lazy-BcZCe0kL.js";import{e$ as l}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class h extends u{constructor(e){super(e),this.config=e,this._inputCases=new Map,this.case=this.registerDataInput("case",a,NaN),this.default=this.registerDataInput("default",a),this.value=this.registerDataOutput("value",a);const s=this.config.cases||[];for(let t of s){if(t=i(t),this.config.treatCasesAsIntegers&&(t=t|0,this._inputCases.has(t)))return;this._inputCases.set(t,this.registerDataInput(`in_${t}`,a))}}_updateOutputs(e){const s=this.case.getValue(e);let t;r(s)&&(t=this._getOutputValueForCase(i(s),e)),t||(t=this.default.getValue(e)),this.value.setValue(t,e)}_getOutputValueForCase(e,s){return this._inputCases.get(e)?.getValue(s)}getClassName(){return"FlowGraphDataSwitchBlock"}}l("FlowGraphDataSwitchBlock",h);export{h as FlowGraphDataSwitchBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as s,aL as u}from"./lazy-BcZCe0kL.js";import{e$ as i}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class n extends s{constructor(t){super(t),this.count=this.registerDataInput("count",u),this.reset=this._registerSignalInput("reset"),this.currentCount=this.registerDataOutput("currentCount",u)}_execute(t,r){if(r===this.reset){t._setExecutionVariable(this,"debounceCount",0);return}const o=this.count.getValue(t),e=t._getExecutionVariable(this,"debounceCount",0)+1;this.currentCount.setValue(e,t),t._setExecutionVariable(this,"debounceCount",e),e>=o&&(this.out._activateSignal(t),t._setExecutionVariable(this,"debounceCount",0))}getClassName(){return"FlowGraphDebounceBlock"}}i("FlowGraphDebounceBlock",n);export{n as FlowGraphDebounceBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as o,T as e,aH as i}from"./lazy-BcZCe0kL.js";import{e$ as r}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class u extends o{constructor(t={}){super(t),this.config=t,this.config.startIndex=t.startIndex??new e(0),this.reset=this._registerSignalInput("reset"),this.maxExecutions=this.registerDataInput("maxExecutions",i),this.executionCount=this.registerDataOutput("executionCount",i,new e(0))}_execute(t,a){if(a===this.reset)this.executionCount.setValue(this.config.startIndex,t);else{const s=this.executionCount.getValue(t);s.value<this.maxExecutions.getValue(t).value&&(this.executionCount.setValue(new e(s.value+1),t),this.out._activateSignal(t))}}getClassName(){return"FlowGraphDoNBlock"}}r("FlowGraphDoNBlock",u);export{u as FlowGraphDoNBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as o,d as h,c as E,b as d,B as m,C as w,a as B}from"./easing-BkcTAuOI.js";import{K as n,aD as i,aL as C}from"./lazy-BcZCe0kL.js";import{e$ as f}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";var l;(function(e){e[e.CircleEase=0]="CircleEase",e[e.BackEase=1]="BackEase",e[e.BounceEase=2]="BounceEase",e[e.CubicEase=3]="CubicEase",e[e.ElasticEase=4]="ElasticEase",e[e.ExponentialEase=5]="ExponentialEase",e[e.PowerEase=6]="PowerEase",e[e.QuadraticEase=7]="QuadraticEase",e[e.QuarticEase=8]="QuarticEase",e[e.QuinticEase=9]="QuinticEase",e[e.SineEase=10]="SineEase",e[e.BezierCurveEase=11]="BezierCurveEase"})(l||(l={}));function k(e,...s){switch(e){case 11:return new B(...s);case 0:return new w;case 1:return new m(...s);case 2:return new d(...s);case 3:return new E;case 4:return new h(...s);case 5:return new o(...s);default:throw new Error("Easing type not yet implemented")}}class p extends n{constructor(s){super(s),this.config=s,this._easingFunctions={},this.type=this.registerDataInput("type",i,11),this.mode=this.registerDataInput("mode",C,0),this.parameters=this.registerDataInput("parameters",i,[1,0,0,1]),this.easingFunction=this.registerDataOutput("easingFunction",i)}_updateOutputs(s){const a=this.type.getValue(s),t=this.mode.getValue(s),u=this.parameters.getValue(s);if(a===void 0||t===void 0)return;const r=`${a}-${t}-${u.join("-")}`;if(!this._easingFunctions[r]){const c=k(a,...u);c.setEasingMode(t),this._easingFunctions[r]=c}this.easingFunction.setValue(this._easingFunctions[r],s)}getClassName(){return"FlowGraphEasingBlock"}}f("FlowGraphEasingBlock",p);export{l as EasingFunctionType,p as FlowGraphEasingBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{R as e,aE as i}from"./lazy-BcZCe0kL.js";import{e$ as l}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class s extends e{constructor(t){super(t),this.onOn=this._registerSignalOutput("onOn"),this.onOff=this._registerSignalOutput("onOff"),this.value=this.registerDataOutput("value",i)}_execute(t,r){let a=t._getExecutionVariable(this,"value",typeof this.config?.startValue=="boolean"?!this.config.startValue:!1);a=!a,t._setExecutionVariable(this,"value",a),this.value.setValue(a,t),a?this.onOn._activateSignal(t):this.onOff._activateSignal(t)}getClassName(){return"FlowGraphFlipFlopBlock"}}l("FlowGraphFlipFlopBlock",s);export{s as FlowGraphFlipFlopBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as h,aD as o,aL as p,aH as u,T as r,br as t}from"./lazy-BcZCe0kL.js";import{e$ as d}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class s extends h{constructor(e){super(e),this.startIndex=this.registerDataInput("startIndex",o,0),this.endIndex=this.registerDataInput("endIndex",o),this.step=this.registerDataInput("step",p,1),this.index=this.registerDataOutput("index",u,new r(t(e?.initialIndex??0))),this.executionFlow=this._registerSignalOutput("executionFlow"),this.completed=this._registerSignalOutput("completed"),this._unregisterSignalOutput("out")}_execute(e){const l=t(this.startIndex.getValue(e)),a=this.step.getValue(e);let n=t(this.endIndex.getValue(e));for(let i=l;i<n&&(this.index.setValue(new r(i),e),this.executionFlow._activateSignal(e),n=t(this.endIndex.getValue(e)),!(i>s.MaxLoopIterations*a));i+=a);this.config?.incrementIndexWhenLoopDone&&this.index.setValue(new r(t(this.index.getValue(e))+a),e),this.completed._activateSignal(e)}getClassName(){return"FlowGraphForLoopBlock"}}s.MaxLoopIterations=1e3;d("FlowGraphForLoopBlock",s);export{s as FlowGraphForLoopBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as a,aN as u,aD as o}from"./lazy-BcZCe0kL.js";import{e$ as r}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class c extends a{constructor(t){super(t),this.functionName=this.registerDataInput("functionName",u),this.object=this.registerDataInput("object",o),this.context=this.registerDataInput("context",o,null),this.output=this.registerDataOutput("output",o)}_updateOutputs(t){const s=this.functionName.getValue(t),i=this.object.getValue(t),n=this.context.getValue(t);if(i&&s){const e=i[s];e&&typeof e=="function"&&this.output.setValue(e.bind(n),t)}}getClassName(){return"FlowGraphFunctionReference"}}r("FlowGraphFunctionReference",c);export{c as FlowGraphFunctionReferenceBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as p,aD as t,T as l,br as s,a1 as u}from"./lazy-BcZCe0kL.js";import{e$ as h}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class o extends p{constructor(e){super(e),this.config=e,this.type=this.registerDataInput("type",t,e.type),this.value=this.registerDataOutput("value",t),this.index=this.registerDataInput("index",t,new l(s(e.index??-1)))}_updateOutputs(e){const a=this.type.getValue(e),r=this.index.getValue(e),i=u(e.assetsContext,a,s(r),this.config.useIndexAsUniqueId);this.value.setValue(i,e)}getClassName(){return"FlowGraphGetAssetBlock"}}h("FlowGraphGetAssetBlock",o);export{o as FlowGraphGetAssetBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{aD as a}from"./lazy-BcZCe0kL.js";import{e$ as p}from"./standardMaterial-CgDYhl-K.js";import{F as i}from"./flowGraphCachedOperationBlock-CDf6OBvO.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class u extends i{constructor(t){super(a,t),this.config=t,this.object=this.registerDataInput("object",a,t.object),this.propertyName=this.registerDataInput("propertyName",a,t.propertyName),this.customGetFunction=this.registerDataInput("customGetFunction",a)}_doOperation(t){const o=this.customGetFunction.getValue(t);let r;if(o)r=o(this.object.getValue(t),this.propertyName.getValue(t),t);else{const e=this.object.getValue(t),s=this.propertyName.getValue(t);r=e&&s?this._getPropertyValue(e,s):void 0}return r}_getPropertyValue(t,o){const r=o.split(".");let e=t;for(const s of r)if(e=e[s],e===void 0)return;return e}getClassName(){return"FlowGraphGetPropertyBlock"}}p("FlowGraphGetPropertyBlock",u);export{u as FlowGraphGetPropertyBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as r,aD as i}from"./lazy-BcZCe0kL.js";import{e$ as l}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class s extends r{constructor(a){super(a),this.config=a,this.value=this.registerDataOutput("value",i,a.initialValue)}_updateOutputs(a){const e=this.config.variable;a.hasVariable(e)&&this.value.setValue(a.getVariable(e),a)}serialize(a){super.serialize(a),a.config.variable=this.config.variable}getClassName(){return"FlowGraphGetVariableBlock"}}l("FlowGraphGetVariableBlock",s);export{s as FlowGraphGetVariableBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as i,aD as r,aH as o,T as a}from"./lazy-BcZCe0kL.js";import{e$ as p}from"./standardMaterial-CgDYhl-K.js";import"./animation-DY4Gs-Pw.js";import"./workerPool-H9Ji3mCo.js";class h extends i{constructor(e){super(e),this.config=e,this.object=this.registerDataInput("object",r),this.array=this.registerDataInput("array",r),this.index=this.registerDataOutput("index",o,new a(-1))}_updateOutputs(e){const s=this.object.getValue(e),t=this.array.getValue(e);t&&this.index.setValue(new a(t.indexOf(s)),e)}serialize(e){super.serialize(e)}getClassName(){return"FlowGraphIndexOfBlock"}}p("FlowGraphIndexOfBlock",h);export{h as FlowGraphIndexOfBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as c,bt as d,bs as f,aL as h,aD as p}from"./lazy-BcZCe0kL.js";import{A as y}from"./animation-DY4Gs-Pw.js";import{e$ as g}from"./standardMaterial-CgDYhl-K.js";import"./workerPool-H9Ji3mCo.js";class F extends c{constructor(t={}){super(t),this.keyFrames=[];const e=typeof t?.animationType=="string"?d(t.animationType):f(t?.animationType??0),i=t?.keyFramesCount??1,n=this.registerDataInput("duration_0",h,0),a=this.registerDataInput("value_0",e);this.keyFrames.push({duration:n,value:a});for(let s=1;s<i+1;s++){const u=this.registerDataInput(`duration_${s}`,h,s===i?t.duration:void 0),l=this.registerDataInput(`value_${s}`,e);this.keyFrames.push({duration:u,value:l})}this.initialValue=this.keyFrames[0].value,this.endValue=this.keyFrames[i].value,this.easingFunction=this.registerDataInput("easingFunction",p),this.animation=this.registerDataOutput("animation",p),this.propertyName=this.registerDataInput("propertyName",p,t?.propertyName),this.customBuildAnimation=this.registerDataInput("customBuildAnimation",p)}_updateOutputs(t){const e=t._getGlobalContextVariable("interpolationAnimations",[]),i=this.propertyName.getValue(t),n=this.easingFunction.getValue(t),a=this._createAnimation(t,i,n);if(this.animation.setValue(a,t),Array.isArray(a))for(const s of a)e.push(s.uniqueId);else e.push(a.uniqueId);t._setGlobalContextVariable("interpolationAnimations",e)}_createAnimation(t,e,i){const n=this.initialValue.richType,a=[],s=this.initialValue.getValue(t)||n.defaultValue;a.push({frame:0,value:s});const u=this.config?.numberOfKeyFrames??1;for(let r=1;r<u+1;r++){const m=this.keyFrames[r].duration?.getValue(t);let o=this.keyFrames[r].value?.getValue(t);r===u-1&&(o=o||n.defaultValue),m!==void 0&&o&&a.push({frame:m*60,value:o})}const l=this.customBuildAnimation.getValue(t);if(l)return l(null,null,t)(a,60,n.animationType,i);if(typeof e=="string"){const r=y.CreateAnimation(e,n.animationType,60,i);return r.setKeys(a),[r]}else return e.map(m=>{const o=y.CreateAnimation(m,n.animationType,60,i);return o.setKeys(a),o})}getClassName(){return"FlowGraphInterpolationBlock"}}g("FlowGraphInterpolationBlock",F);export{F as FlowGraphInterpolationBlock};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{aH as A,T as F,aD as c}from"./lazy-BcZCe0kL.js";import{e$ as j,Y as y,Z as w,gC as I,gD as N}from"./standardMaterial-CgDYhl-K.js";import{F as D}from"./flowGraphCachedOperationBlock-CDf6OBvO.js";const g=new RegExp(/\/\{(\w+)\}(?=\/|$)/g);class O{constructor(r,s){this.path=r,this.ownerBlock=s,this.templatedInputs=[];let n=g.exec(r);const o=new Set;for(;n;){const[,e]=n;if(o.has(e))throw new Error("Duplicate template variable detected.");o.add(e),this.templatedInputs.push(s.registerDataInput(e,A,new F(0))),n=g.exec(r)}}getAccessor(r,s){let n=this.path;for(const o of this.templatedInputs){const e=o.getValue(s).value;if(typeof e!="number"||e<0)throw new Error("Invalid value for templated input.");n=n.replace(`{${o.name}}`,e.toString())}return r.convert(n)}}class b extends D{constructor(r){super(c,r),this.config=r,this.object=this.registerDataOutput("object",c),this.propertyName=this.registerDataOutput("propertyName",c),this.setterFunction=this.registerDataOutput("setFunction",c,this._setPropertyValue.bind(this)),this.getterFunction=this.registerDataOutput("getFunction",c,this._getPropertyValue.bind(this)),this.generateAnimationsFunction=this.registerDataOutput("generateAnimationsFunction",c,this._getInterpolationAnimationPropertyInfo.bind(this)),this.templateComponent=new O(r.jsonPointer,this)}_doOperation(r){const s=this.templateComponent.getAccessor(this.config.pathConverter,r),n=s.info.get(s.object),o=s.info.getTarget?.(s.object),e=s.info.getPropertyName?.[0](s.object);if(o)this.object.setValue(o,r),e&&this.propertyName.setValue(e,r);else throw new Error("Object is undefined");return n}_setPropertyValue(r,s,n,o){const e=this.templateComponent.getAccessor(this.config.pathConverter,o),i=e.info.type;i.startsWith("Color")&&(n=C(n,i)),e.info.set?.(n,e.object)}_getPropertyValue(r,s,n){const o=this.templateComponent.getAccessor(this.config.pathConverter,n),e=o.info.type,i=o.info.get(o.object);return e.startsWith("Color")?G(i):i}_getInterpolationAnimationPropertyInfo(r,s,n){const o=this.templateComponent.getAccessor(this.config.pathConverter,n);return(e,i,d,h)=>{const l=[],m=o.info.type;return m.startsWith("Color")&&(e=e.map(p=>({frame:p.frame,value:C(p.value,m)}))),o.info.interpolation?.forEach((p,f)=>{const P=o.info.getPropertyName?.[f](o.object)||"Animation-interpolation-"+f;let u=e;d!==p.type&&(u=e.map(a=>({frame:a.frame,value:p.getValue(void 0,a.value.asArray?a.value.asArray():[a.value],0,1)})));const _=p.buildAnimations(o.object,P,60,u);for(const a of _)h&&a.babylonAnimation.setEasingFunction(h),l.push(a.babylonAnimation)}),l}}getClassName(){return"FlowGraphJsonPointerParserBlock"}}function C(t,r){return t.getClassName().startsWith("Color")?t:r==="Color3"?new y(t.x,t.y,t.z):r==="Color4"?new w(t.x,t.y,t.z,t.w):t}function G(t){if(t instanceof y)return new I(t.r,t.g,t.b);if(t instanceof w)return new N(t.r,t.g,t.b,t.a);throw new Error("Invalid color type")}j("FlowGraphJsonPointerParserBlock",b);const R=Object.freeze(Object.defineProperty({__proto__:null,FlowGraphJsonPointerParserBlock:b},Symbol.toStringTag,{value:"Module"}));export{b as F,O as a,R as f};
|
|
Binary file
|
|
Binary file
|