@volter/game-editor 0.5.67 → 0.5.68
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/BUNDLED_NOTICES +20 -20
- package/catalog/entries/blender.json +1 -1
- package/catalog/entries/music.json +3 -3
- package/catalog/project-source/src/lib/music/music-player.ts +18 -12
- package/dist/.vite/manifest.json +2307 -2166
- package/dist/assets/{AssetBudgetPanel-x_FNJbfZ.js → AssetBudgetPanel-P2PeL_X5.js} +9 -9
- package/dist/assets/{AudioViewer-BDPqHDfU.js → AudioViewer-xFb5Wv7A.js} +1 -1
- package/dist/assets/CanvasBoardDocument-BFJdTVGp.js +1 -0
- package/dist/assets/CanvasSceneViewport-vqBlOz8P.js +1 -0
- package/dist/assets/{ColorInput-QUPS1pEB.js → ColorInput-CX1UZjYO.js} +1 -1
- package/dist/assets/{EntityModelDocument-CzUHsH9E.js → EntityModelDocument-Du8wIbyK.js} +1 -1
- package/dist/assets/{EnvironmentAssetDocument-ByEB7_4A.js → EnvironmentAssetDocument-_SttfMY_.js} +1 -1
- package/dist/assets/{GameplaySessionTimeline-dhG-oiqd.js → GameplaySessionTimeline-CWudWnfd.js} +1 -1
- package/dist/assets/{ImageViewer-tlVvkdM4.js → ImageViewer-shZzMd91.js} +1 -1
- package/dist/assets/InspectorObjectPreview-BMOvJaOw.js +1 -0
- package/dist/assets/{JsonAssetDocument-CPmcWFPW.js → JsonAssetDocument-D_HXneWE.js} +1 -1
- package/dist/assets/{LiveModuleDocument-DL8QHSlk.js → LiveModuleDocument-BWjOzO_6.js} +1 -1
- package/dist/assets/{LutAssetDocument-BImiug2M.js → LutAssetDocument-DIc6nsht.js} +1 -1
- package/dist/assets/ModelAssetDocument-_CqTsX_A.js +1 -0
- package/dist/assets/{NonThreeAuthoringBootstrap-B40qmGGS.js → NonThreeAuthoringBootstrap-C-V23E1e.js} +1 -1
- package/dist/assets/Object3DDocumentToolbar-BfPH9jz5.js +1 -0
- package/dist/assets/Object3DDocumentViewport-BaXWtATg.js +2 -0
- package/dist/assets/{Object3DPreview-ClYDoH2L.js → Object3DPreview-BPHEr3vI.js} +1 -1
- package/dist/assets/OnlineAssetDetail-BxibUH6K.js +1 -0
- package/dist/assets/PlayBar-DRANyO01.js +1 -0
- package/dist/assets/{QuarksAssetDocument-B-VOj-n4.js → QuarksAssetDocument-4Dne3EHx.js} +1 -1
- package/dist/assets/ReactCanvasControls-K98jOX9b.js +1 -0
- package/dist/assets/RootSelectionOverlay-BQC12Gdd.js +1 -0
- package/dist/assets/{ShaderAssetDocument-Kn8IvRGV.js → ShaderAssetDocument-W3ZjLCkt.js} +4 -4
- package/dist/assets/ShadowEditor-DP1LWynl.js +1 -0
- package/dist/assets/{SourceAssetViewer-CLQ95VSD.js → SourceAssetViewer-BGUeDAEv.js} +1 -1
- package/dist/assets/StageHost-V_0opXFt.js +2 -0
- package/dist/assets/{StoryPreviewMount-D2lg37et.js → StoryPreviewMount-Di8uMovM.js} +1 -1
- package/dist/assets/{ThreeBoardDocument-BAgHrbtu.js → ThreeBoardDocument-tgcaZDqQ.js} +2 -2
- package/dist/assets/{ThreeIsolationSceneContent-DbYIylZQ.js → ThreeIsolationSceneContent-BAKurKW5.js} +1 -1
- package/dist/assets/{ToolObject3DPreview-WEi6C9uU.js → ToolObject3DPreview-CffvGJ1h.js} +1 -1
- package/dist/assets/Toolbar-uLgsrB2z.js +1 -0
- package/dist/assets/{TransientHint-BpDLhRLd.js → TransientHint-CgmkrmKF.js} +1 -1
- package/dist/assets/{VideoViewer-DMV8lf4P.js → VideoViewer-ClUJ6_uy.js} +1 -1
- package/dist/assets/ViewportShadingMenu-Bdkc6jcd.js +1 -0
- package/dist/assets/{active-ingest-DA426a81.js → active-ingest-CnAeQcuQ.js} +3 -3
- package/dist/assets/{animation-clock-Bm80XdqP.js → animation-clock-fLmY_3--.js} +1 -1
- package/dist/assets/{animation-mixers.service-DK64IuYq.js → animation-mixers.service-DiecMX_A.js} +1 -1
- package/dist/assets/{animation-timeline.utility-D-g0zrOl.js → animation-timeline.utility-C71vPJgs.js} +1 -1
- package/dist/assets/{asset-budget-asset.menu-CEgP0Kiw.js → asset-budget-asset.menu-BDRDWrvx.js} +1 -1
- package/dist/assets/{asset-budget.action-D4R1c3wi.js → asset-budget.action-tQmNGQHC.js} +1 -1
- package/dist/assets/{asset-budget.document-Syzjn1U1.js → asset-budget.document-BthgX37Z.js} +1 -1
- package/dist/assets/{asset-budget.menu-BbRiqXeM.js → asset-budget.menu-DfyWVH6p.js} +1 -1
- package/dist/assets/{asset-editor-persistence-BGWIqZdk.js → asset-editor-persistence-BQgjOCrm.js} +1 -1
- package/dist/assets/{asset-loaders-C0KQI5eY.js → asset-loaders-5PIUVvmH.js} +1 -1
- package/dist/assets/{asset-preview-B1tDziF1.js → asset-preview-Cv7tfD98.js} +1 -1
- package/dist/assets/{audio-unlock.service-ucMfCVBw.js → audio-unlock.service-BvHvZjzx.js} +1 -1
- package/dist/assets/{audio.utility-BmE9WMUg.js → audio.utility-D9Vk_WYS.js} +1 -1
- package/dist/assets/autoplay.service-CFJoLPLw.js +1 -0
- package/dist/assets/{babylon-authoring-adapter-C8mFMXSr.js → babylon-authoring-adapter-Cg5ALSpr.js} +1 -1
- package/dist/assets/binding-resolver-C_9MBSMa.js +2 -0
- package/dist/assets/{blender-node-editor.document-C1YmwWls.js → blender-node-editor.document-B92MO51u.js} +1 -1
- package/dist/assets/{blender-properties-tab-B8lyjgj3.js → blender-properties-tab-CDVyDAbf.js} +1 -1
- package/dist/assets/{blender-runtime-host-CyQlImSR.js → blender-runtime-host-CuniE0sy.js} +1 -1
- package/dist/assets/{blender-runtime-skin-BK7ShZ6z.js → blender-runtime-skin-B_tOz5j5.js} +1 -1
- package/dist/assets/{blender-runtime.document-B0nVQs0P.js → blender-runtime.document-DxUwLiEW.js} +1 -1
- package/dist/assets/{blender-timeline.document-CMcdE2CK.js → blender-timeline.document-BdEEoQbK.js} +1 -1
- package/dist/assets/{blender-uv-editor.document-CjqNo4sZ.js → blender-uv-editor.document-EMSUlRh4.js} +1 -1
- package/dist/assets/{blender-version.status-OsFoc9SA.js → blender-version.status-DtfwUahB.js} +1 -1
- package/dist/assets/{blender.command-C6NmRBo5.js → blender.command-BkBML2SY.js} +1 -1
- package/dist/assets/blender.keymap-BmOBRY7p.js +1 -0
- package/dist/assets/{board-guides-BEKPgD9M.js → board-guides-_3R1t_-2.js} +1 -1
- package/dist/assets/bridge.command-VnplZ81v.js +3 -0
- package/dist/assets/{browserAll-lF_dLQVz.js → browserAll-BCmkqg8n.js} +1 -1
- package/dist/assets/build-player.document-DV7YcJQt.js +1 -0
- package/dist/assets/build-profiles.document-CZxDuhzz.js +2 -0
- package/dist/assets/{build-progress.status-Bo1ZgJcb.js → build-progress.status-Dk5u3C67.js} +1 -1
- package/dist/assets/build-session-BGe0eGrQ.js +9 -0
- package/dist/assets/{build.action-DRX2IcYt.js → build.action-Bdj4ZEL_.js} +1 -1
- package/dist/assets/{build.command-BGvLaLG0.js → build.command-DAWiYvPa.js} +1 -1
- package/dist/assets/build.header--xqH6uTP.js +1 -0
- package/dist/assets/{build.menu-UenrjPWS.js → build.menu-BiRNC_xc.js} +1 -1
- package/dist/assets/{build.service-BIUoTY6l.js → build.service-Dw9K6VSF.js} +1 -1
- package/dist/assets/{camera-DrvaM47S.js → camera-C-qXzXFf.js} +1 -1
- package/dist/assets/{camera-runtime.inspector-CjJALNO8.js → camera-runtime.inspector-BDrwWRlU.js} +1 -1
- package/dist/assets/canvas-design-mount-DLn49Zle.js +6 -0
- package/dist/assets/canvas-entry-runtime-DVeh71nC.js +2 -0
- package/dist/assets/{canvas-preview-frames-C0QTagA3.js → canvas-preview-frames-B5xFRjhQ.js} +1 -1
- package/dist/assets/{canvas-story-capture.service-Dgjr-rT1.js → canvas-story-capture.service-DQ_leYyi.js} +2 -2
- package/dist/assets/{capability-coverage-DZ-onC5j.js → capability-coverage-DQgg6UJe.js} +3 -3
- package/dist/assets/{collaboration-presence-BVIQuN1l.js → collaboration-presence-BOS1t8wI.js} +1 -1
- package/dist/assets/{collider-C7SbIYKY.js → collider-Bf4Uk6LW.js} +1 -1
- package/dist/assets/{component-board.service-CWFaGMCO.js → component-board.service-CpVXGhz5.js} +2 -2
- package/dist/assets/{component-board.service-BEsFAw4_.js → component-board.service-DFSSCaCf.js} +2 -2
- package/dist/assets/{component-board.service-q_TM9BCw.js → component-board.service-DgujG90T.js} +2 -2
- package/dist/assets/{component-contracts.service-CPbfXE1h.js → component-contracts.service-Bc_2Xxh_.js} +1 -1
- package/dist/assets/{component-instance-root-B0C5oNEm.js → component-instance-root-df4ofoOR.js} +1 -1
- package/dist/assets/{component-verbs.command-oNtGgzQL.js → component-verbs.command-DGzZAV_Z.js} +1 -1
- package/dist/assets/component-verbs.service-D1rVRogp.js +1 -0
- package/dist/assets/{config-_wCzzlM_.js → config-D-EAAhqP.js} +4 -4
- package/dist/assets/{configurations-BXU4GGbV.js → configurations-_HZOWZPy.js} +1 -1
- package/dist/assets/{connection.status-Yvt0bX0r.js → connection.status-CCX-mgmr.js} +1 -1
- package/dist/assets/{constraints.inspector-4r8jWq5a.js → constraints.inspector-CwEEREsf.js} +1 -1
- package/dist/assets/{content-bounds-BeuIXKYu.js → content-bounds-DKBD7nsv.js} +1 -1
- package/dist/assets/{contract-system-adapters-Bic_7sev.js → contract-system-adapters-h6OUBRYA.js} +1 -1
- package/dist/assets/{coverage.service-DcpEoBuf.js → coverage.service-CV7b5Sqn.js} +2 -2
- package/dist/assets/create-runtime-Bg2uYMfh.js +3 -0
- package/dist/assets/{curve-DVd18iAX.js → curve-BKuiAPpj.js} +1 -1
- package/dist/assets/{data-asset-DfQ2Pjse.js → data-asset-7Nfmx-28.js} +1 -1
- package/dist/assets/{data-ref-CWnkj-HX.js → data-ref-DyFQqqX6.js} +1 -1
- package/dist/assets/debug-bridge-CESAxmlz.js +1 -0
- package/dist/assets/{debug-registry-P0_YQGWd.js → debug-registry-l7k5Hjc8.js} +1 -1
- package/dist/assets/{deferred-ingest-play-BdR4qGk6.js → deferred-ingest-play-Bej67_y9.js} +2 -2
- package/dist/assets/{design-time-canvas-mount-DPQeHSN2.js → design-time-canvas-mount-CFW9ZWuk.js} +2 -2
- package/dist/assets/{design-time-layers-ChswRUJt.js → design-time-layers-CQgnmqc8.js} +1 -1
- package/dist/assets/{design-time-mount.service-Ks-5Wkcs.js → design-time-mount.service-DJeAPUB_.js} +2 -2
- package/dist/assets/{design-time-mount.service-Ca-DZGFV.js → design-time-mount.service-_R1UDCw3.js} +2 -2
- package/dist/assets/{design-time-react-mount-C85KfXOd.js → design-time-react-mount-CFvIk_rV.js} +1 -1
- package/dist/assets/{document-preview-three-DThkjI1S.js → document-preview-three-5cbuuJMH.js} +1 -1
- package/dist/assets/{dom-authoring-adapter-BrLU8IJ_.js → dom-authoring-adapter-CoESNvrM.js} +1 -1
- package/dist/assets/{draco3d-B2cwv46o.js → draco3d-Sk9K4AUT.js} +1 -1
- package/dist/assets/{edit-mode-audio.service-D4ITNbsm.js → edit-mode-audio.service-CH6J-8N7.js} +1 -1
- package/dist/assets/{edit-mode-authoring-DeCxPcHM.js → edit-mode-authoring-DBjaBTxM.js} +1 -1
- package/dist/assets/{edit-mode-networking.service-BNv-FTRh.js → edit-mode-networking.service-C4o2pGHX.js} +1 -1
- package/dist/assets/editor-api-D2azVray.js +1 -0
- package/dist/assets/{editor-layers-BDJnAAzj.js → editor-layers-B4oYfpj8.js} +1 -1
- package/dist/assets/{editor-shell-store-ChLcVeNB.js → editor-shell-store-Bh1S7M54.js} +1 -1
- package/dist/assets/{entity-object-JmYMfLsx.js → entity-object-B_5Gc0Ky.js} +1 -1
- package/dist/assets/{extend-Cc-nEa_A.js → extend-DcEyE5jI.js} +1 -1
- package/dist/assets/fork-menu-CKjNh3MO.js +1 -0
- package/dist/assets/{frame-debugger-store-DaCbAYSW.js → frame-debugger-store-D5YViF_8.js} +1 -1
- package/dist/assets/{game-contract-seams-BnPFGLll.js → game-contract-seams-C0AVYwvO.js} +1 -1
- package/dist/assets/{game-css-scope-transform-D_p7cVgW.js → game-css-scope-transform-8GOvVu1s.js} +1 -1
- package/dist/assets/game-document.service-FdG_gFPU.js +1 -0
- package/dist/assets/game-eval.command-4wa9vqWE.js +2 -0
- package/dist/assets/{game-module-access-o3iXZpCA.js → game-module-access-DulnT3NH.js} +1 -1
- package/dist/assets/game-network-Bo_nlDR5.js +22 -0
- package/dist/assets/{gameplay-export-BzYzLZPi.js → gameplay-export-K5AcStVC.js} +1 -1
- package/dist/assets/{gameplay-replay-BwdxV4oF.js → gameplay-replay-CnWnlogY.js} +1 -1
- package/dist/assets/gameplay.command-DoWqBWhH.js +1 -0
- package/dist/assets/{generation-jobs-BZhOMrp-.js → generation-jobs-CiabIfR0.js} +1 -1
- package/dist/assets/generation.service-D2yeZaJu.js +1 -0
- package/dist/assets/{generations-DVDht_31.js → generations-DU9rCeQR.js} +1 -1
- package/dist/assets/{generations.status-BvzgHlyk.js → generations.status-3CrPw_n5.js} +1 -1
- package/dist/assets/{hierarchy-marks-Cc_3lxw6.js → hierarchy-marks-C25dY2fR.js} +1 -1
- package/dist/assets/{hosted-asset-materialization-BpbnhJac.js → hosted-asset-materialization-DYdcFlDf.js} +1 -1
- package/dist/assets/{index-0Lm0Nf1M.css → index-B5WjeCHm.css} +1 -1
- package/dist/assets/{index-C1c3eOmm.js → index-BcH5GC3b.js} +1 -1
- package/dist/assets/{index-cNc-iFbq.js → index-BsYc2Oyj.js} +1 -1
- package/dist/assets/{index-SS9EugVg.js → index-C20Flc1s.js} +2 -2
- package/dist/assets/{index-Ck3JFh48.js → index-C4AUQbmq.js} +1 -1
- package/dist/assets/{index-DUZeuA7g.js → index-CC1puVjo.js} +1 -1
- package/dist/assets/{index-BRJMIUK0.js → index-CaG87ZF-.js} +321 -321
- package/dist/assets/index-CwCDkEl1.js +1 -0
- package/dist/assets/{index-C3Pw-9So.js → index-Kb9_s5aP.js} +1 -1
- package/dist/assets/{index-BeK4RPgj.js → index-n3QdTv-T.js} +1 -1
- package/dist/assets/{inference-diagnostics-xecGdohW.js → inference-diagnostics-MGcIHEX6.js} +1 -1
- package/dist/assets/{ingest-boot-viewport-DAt8WFSy.js → ingest-boot-viewport-D2okO6JI.js} +1 -1
- package/dist/assets/ingest-siblings-CkxW__go.js +1 -0
- package/dist/assets/{ingest-source-persistence-Dmdo-UBp.js → ingest-source-persistence-6peGfPAS.js} +1 -1
- package/dist/assets/{ingest.service-vbCucMz7.js → ingest.service-Cc73WMIW.js} +1 -1
- package/dist/assets/{inspect-Dr4qvDpJ.js → inspect-C8RP8G5F.js} +1 -1
- package/dist/assets/instances.command-CxKGnrNl.js +1 -0
- package/dist/assets/{json-history-resource-DwS10tqD.js → json-history-resource-CTXRV4GD.js} +1 -1
- package/dist/assets/layered-pick-B_-BRrRD.js +1 -0
- package/dist/assets/{light-DcFqVCmv.js → light-CskDQ8gF.js} +1 -1
- package/dist/assets/{live-project-verbs-C3LzprCe.js → live-project-verbs-BOAQN3ME.js} +1 -1
- package/dist/assets/{machine.document-BzZxubYQ.js → machine.document-BxOoCOo9.js} +1 -1
- package/dist/assets/{machines.finder-BR02bfVG.js → machines.finder-CqEceWzS.js} +1 -1
- package/dist/assets/{material-B_V78pTt.js → material-BwFzKPi0.js} +1 -1
- package/dist/assets/{material-factory-COz7qZhC.js → material-factory-qB9pzcQf.js} +1 -1
- package/dist/assets/{mesh-DcmO-mWI.js → mesh-5--4qA-C.js} +1 -1
- package/dist/assets/model-asset-sections.service-TZ2SaBmH.js +1 -0
- package/dist/assets/{model-inspection-CXHxrafK.js → model-inspection-MrJY0U_-.js} +1 -1
- package/dist/assets/{model-thumbnail-BEKPWg4l.js → model-thumbnail-uk-2sblh.js} +1 -1
- package/dist/assets/{models.finder-c1I0tp2M.js → models.finder-rk8dhgO8.js} +1 -1
- package/dist/assets/module-mode-B79jV5tQ.js +2 -0
- package/dist/assets/mount-canvas-ingest-root-BhaYNuhY.js +2 -0
- package/dist/assets/mount-dom-ingest-root-BQb1u0LX.js +2 -0
- package/dist/assets/mount-ingest-root-BC3-1Cw1.js +2 -0
- package/dist/assets/mount-manifest-QJOB11Kv.js +1 -0
- package/dist/assets/{mount-three-ingest-root-DVbACDUy.js → mount-three-ingest-root-DIDBfvIH.js} +1 -1
- package/dist/assets/{mounted-authoring-Clftxx0x.js → mounted-authoring-B7RL_V28.js} +1 -1
- package/dist/assets/{mounted-story-viewport-source-B4-eAYGI.js → mounted-story-viewport-source-CnYhX3vW.js} +1 -1
- package/dist/assets/{native-debug-module-2_HVupdg.js → native-debug-module-B-rWJfWE.js} +1 -1
- package/dist/assets/{navigation-CH3-zr1n.js → navigation-BVu-aVmF.js} +1 -1
- package/dist/assets/{navmesh.menu-Dfi-Pk-8.js → navmesh.menu-C3M63eR4.js} +1 -1
- package/dist/assets/{navmesh.service-Cz7QFY-M.js → navmesh.service-B0H1fUfn.js} +1 -1
- package/dist/assets/network-observer.service-CiR4Q9Q0.js +1 -0
- package/dist/assets/network.utility-CNG3eJ0E.js +1 -0
- package/dist/assets/{object3d-document-session-registry-DJDEDM0p.js → object3d-document-session-registry-OjqzJ86S.js} +2 -2
- package/dist/assets/{oid-transform-D5Kxt6ij.js → oid-transform-Bzc2ZJSH.js} +1 -1
- package/dist/assets/{particles-vRp0Lf3o.js → particles-Be7AvO4c.js} +1 -1
- package/dist/assets/pixi-authoring-adapter-B42K4md-.js +1 -0
- package/dist/assets/{pixi-live-write-target-BjDsBQbp.js → pixi-live-write-target-D56tQEe_.js} +1 -1
- package/dist/assets/play.command-CIGRq8ow.js +2 -0
- package/dist/assets/presentation-DGBuGP6i.js +1 -0
- package/dist/assets/{product-CxmUIxmr.js → product-BN31wSnB.js} +1 -1
- package/dist/assets/{profiler.action-Dzy9DuAc.js → profiler.action-D57Kj9ym.js} +1 -1
- package/dist/assets/{profiler.menu-jLDO3U6N.js → profiler.menu-Dh9Q5DDx.js} +1 -1
- package/dist/assets/{profiler.utility-Do2Bw7MY.js → profiler.utility-DLNySW3w.js} +1 -1
- package/dist/assets/{project-authoring-session-C3eusefK.js → project-authoring-session-LCJAwGrD.js} +2 -2
- package/dist/assets/{properties-bone-constraints.inspector-B_PbSMV7.js → properties-bone-constraints.inspector-CaIDq5nN.js} +1 -1
- package/dist/assets/{properties-bone.inspector-CMDEQuBd.js → properties-bone.inspector-D2fcQGMF.js} +1 -1
- package/dist/assets/{properties-collection.inspector-D7Ay8yRj.js → properties-collection.inspector-CF5AtTAd.js} +1 -1
- package/dist/assets/{properties-constraints.inspector-DS1fZgXK.js → properties-constraints.inspector-Bj2itDrS.js} +1 -1
- package/dist/assets/{properties-data.inspector-k2pGN2Mp.js → properties-data.inspector-BfRqk0Xo.js} +1 -1
- package/dist/assets/{properties-material.inspector-Bb3yAGUx.js → properties-material.inspector-Bf8H0mvu.js} +1 -1
- package/dist/assets/{properties-modifiers.inspector-BcJfe-Wy.js → properties-modifiers.inspector-BKShc1TH.js} +1 -1
- package/dist/assets/{properties-object.inspector-CUSfXJuq.js → properties-object.inspector-YBh8ABnN.js} +1 -1
- package/dist/assets/{properties-output.inspector-BTVW2kn1.js → properties-output.inspector-CVkzfs-l.js} +1 -1
- package/dist/assets/{properties-particles.inspector-Cw0fxx3B.js → properties-particles.inspector-ChDpAq-2.js} +1 -1
- package/dist/assets/{properties-physics.inspector-C-0bD2bu.js → properties-physics.inspector-BLEM7aMj.js} +1 -1
- package/dist/assets/{properties-render.inspector-C8D5UpjX.js → properties-render.inspector-vU4D9xLL.js} +1 -1
- package/dist/assets/{properties-scene.inspector-HjK6QHGg.js → properties-scene.inspector-C-DoN-kL.js} +1 -1
- package/dist/assets/{properties-texture.inspector-CckZgUaI.js → properties-texture.inspector-DySxy1oU.js} +1 -1
- package/dist/assets/{properties-view-layer.inspector-C1ajtVSk.js → properties-view-layer.inspector-DEKxMahJ.js} +1 -1
- package/dist/assets/{properties-world.inspector-BiT_EdT-.js → properties-world.inspector-m5qL_TQV.js} +1 -1
- package/dist/assets/r3f-design-session-C0DPEChS.js +2 -0
- package/dist/assets/{r3f-physics-binding-DzrbpqjM.js → r3f-physics-binding-Bgzzd4ol.js} +1 -1
- package/dist/assets/{r3f-source-authoring-adapter-DbbeRcvt.js → r3f-source-authoring-adapter-C8oMjdTL.js} +2 -2
- package/dist/assets/{react-canvas-navigation-Cp3cOHJa.js → react-canvas-navigation-Jowa_lJq.js} +1 -1
- package/dist/assets/react-inspector.service-TfTdj_Qk.js +1 -0
- package/dist/assets/{react-story-board-GaXqr03H.js → react-story-board-Bx7qYytV.js} +1 -1
- package/dist/assets/{react-three-rapier.esm-U8J7g6tH.js → react-three-rapier.esm-BR2ttgLS.js} +1 -1
- package/dist/assets/{react-world-authoring-adapter-DOjv2pYm.js → react-world-authoring-adapter-C1jPW_cN.js} +1 -1
- package/dist/assets/{realm-services-CnY105XU.js → realm-services-DefTrXnY.js} +1 -1
- package/dist/assets/{reflection-probe-capture.inspector-DqSW9p1v.js → reflection-probe-capture.inspector-C-6zrzZb.js} +1 -1
- package/dist/assets/{registry-CaCdF63N.js → registry-Z28XSZHF.js} +1 -1
- package/dist/assets/{relative-import-specifier-BFKIWEWs.js → relative-import-specifier-DQzkawgj.js} +1 -1
- package/dist/assets/{render-env-BkKZ4uMA.js → render-env-BZ7LsGfk.js} +1 -1
- package/dist/assets/{render-features-rxbawsRb.js → render-features-C7QwmhCo.js} +1 -1
- package/dist/assets/{render-settings-DS5leCed.js → render-settings-BBvkacR3.js} +1 -1
- package/dist/assets/{resolve-three-CVnMRHxw.js → resolve-three-C7zDbK29.js} +9 -9
- package/dist/assets/{root-seam-contract-CxLZaRio.js → root-seam-contract-rGNbiX6q.js} +1 -1
- package/dist/assets/run-selection-BUeubtHj.js +2 -0
- package/dist/assets/{scene-capture-0a-bTjT8.js → scene-capture-BTWgUzhI.js} +1 -1
- package/dist/assets/{scene-document.service-CeDwVA7t.js → scene-document.service-DJJp-la1.js} +2 -2
- package/dist/assets/{scene-framing-BQt72ZCw.js → scene-framing-PVMqGU8h.js} +1 -1
- package/dist/assets/{seeded-random-BgCwIAAU.js → seeded-random-38To73fI.js} +1 -1
- package/dist/assets/{setup-renderer-Cwkl1Ar6.js → setup-renderer-OOw1SykJ.js} +1 -1
- package/dist/assets/{source-object3d-authoring-adapter-DF679Ncb.js → source-object3d-authoring-adapter-RmutT5Dt.js} +1 -1
- package/dist/assets/{source-persistence-backend-CwLYVPXj.js → source-persistence-backend-HviqjKZ2.js} +1 -1
- package/dist/assets/{stage-keyboard-B8BEW592.js → stage-keyboard-DDi7S27C.js} +1 -1
- package/dist/assets/stage-overlay-set-olkNSZmq.js +1 -0
- package/dist/assets/{stage-presence-markers-DIP7YMcO.js → stage-presence-markers-cznMN_qq.js} +1 -1
- package/dist/assets/stage-transform-tools-BDUZqRIR.js +1 -0
- package/dist/assets/{standard-viewport-dressing-BCA51Tum.js → standard-viewport-dressing-BZyuxyVl.js} +1 -1
- package/dist/assets/{state-watch.action-DnR5Zjr-.js → state-watch.action-DEdb1mNa.js} +1 -1
- package/dist/assets/{state-watch.menu-wYLCLsAw.js → state-watch.menu-jWbUM3kw.js} +1 -1
- package/dist/assets/{state-watch.utility-CFG1Tu1m.js → state-watch.utility-DDmn3G25.js} +1 -1
- package/dist/assets/{story-capture-BmnwHGDV.js → story-capture-Dj1xkeKH.js} +1 -1
- package/dist/assets/{story-documents-BTo90DiA.js → story-documents-8ehMyYHo.js} +2 -2
- package/dist/assets/{story-documents.service-yagl1wGp.js → story-documents.service-BzQCuNBu.js} +1 -1
- package/dist/assets/{story-documents.service-B6v7Z-WE.js → story-documents.service-iNP-ORNr.js} +1 -1
- package/dist/assets/{story-media-presence-BqRMu572.js → story-media-presence-zTPlU9HR.js} +1 -1
- package/dist/assets/{story-pixi-preview-Da6afqLg.js → story-pixi-preview-B7THvSl7.js} +1 -1
- package/dist/assets/{story-presentation-DMSYRWaz.js → story-presentation-BLXYPadR.js} +1 -1
- package/dist/assets/{story-three-preview-R1JvrggS.js → story-three-preview-B1nNiPwP.js} +2 -2
- package/dist/assets/{studio-environment-DRxxq_QX.js → studio-environment-yaKaHPxH.js} +1 -1
- package/dist/assets/{surface-state-1lTOi8FD.js → surface-state-D9j6qNu8.js} +1 -1
- package/dist/assets/{syntactic-prop-specs-eiQXwMIc.js → syntactic-prop-specs-BTnsMOvH.js} +1 -1
- package/dist/assets/team-playtest.service-Ds9tkO4q.js +1 -0
- package/dist/assets/{three-authoring-adapter-htbnVej2.js → three-authoring-adapter-BrkGH4cd.js} +1 -1
- package/dist/assets/three-authoring.service-DoamZDMx.js +2 -0
- package/dist/assets/{three-ingest-runtime-B7rtg3QE.js → three-ingest-runtime-CXKjNysA.js} +1 -1
- package/dist/assets/{three-integration-BdN5Nhsg.js → three-integration-CuAnYaTW.js} +2 -2
- package/dist/assets/three-integration.service-Db-VabIm.js +1 -0
- package/dist/assets/{three-TCuY32m_.js → three-oYrcK5SQ.js} +1 -1
- package/dist/assets/{three-projection-core-CG01r5Ta.js → three-projection-core-jBJVt6O0.js} +1 -1
- package/dist/assets/{three-state-DwFE3ay2.js → three-state-wXRU3rLr.js} +1 -1
- package/dist/assets/{three-story-capture.service-CvpV3v5a.js → three-story-capture.service-DMJRcqjr.js} +2 -2
- package/dist/assets/{three-story-model-C2r2BuiA.js → three-story-model-DgiAP-oQ.js} +1 -1
- package/dist/assets/{three-viewport-presentation-B0z_cECu.js → three-viewport-presentation-CgO3eWJ-.js} +1 -1
- package/dist/assets/transform-mode-request-BnKpgRUW.js +1 -0
- package/dist/assets/transport-strip-a9yLoPsI.js +1 -0
- package/dist/assets/transport.header-CpfoppXc.js +1 -0
- package/dist/assets/{tuples-DfWSY2tr.js → tuples-CKsHOV9T.js} +1 -1
- package/dist/assets/ui-board-document-DtTR_mBr.js +2 -0
- package/dist/assets/{user-data-Bpj7diUS.js → user-data-CqOoAowZ.js} +1 -1
- package/dist/assets/{utility-view-state-CAfbFbKQ.js → utility-view-state-Db97zwDz.js} +1 -1
- package/dist/assets/{viewport-door-Bj_ZIP85.js → viewport-door-DVkMQazS.js} +1 -1
- package/dist/assets/{viewport-root-presentation-vgxsTyj4.js → viewport-root-presentation-B35t51xX.js} +1 -1
- package/dist/assets/{viewport-surface-status-cwCiBGa7.js → viewport-surface-status-D5kZtFW5.js} +1 -1
- package/dist/assets/{webworkerAll-Cm3gTjWi.js → webworkerAll-CfKEb4Ao.js} +1 -1
- package/dist/assets/{workspace-arrangement-BdAlBwvd.js → workspace-arrangement-DIMM7ska.js} +1 -1
- package/dist/assets/world-documents-C4t3iOD-.js +1 -0
- package/dist/assets/world-root-stage-binding-ydl3JN1a.js +1 -0
- package/dist/assets/{xstate-animation-binding-BGLxcZT_.js → xstate-animation-binding-aQEmNSpm.js} +1 -1
- package/dist/assets/{xstate-animation-meta-D_T441Ru.js → xstate-animation-meta-CnMX1Sc1.js} +1 -1
- package/dist-node/cli.js +29 -24
- package/dist-node/create.js +14 -9
- package/package.json +18 -16
- package/template/.agents/skills/vgai-music/SKILL.md +28 -4
- package/template/package.json +13 -11
- package/template/src/input.ts +1 -1
- package/template/src/main.ts +74 -3
- package/dist/assets/CanvasBoardDocument-mxL0oJ3N.js +0 -1
- package/dist/assets/CanvasSceneViewport-C_mapCwC.js +0 -1
- package/dist/assets/InspectorObjectPreview-W-y079DS.js +0 -1
- package/dist/assets/ModelAssetDocument-De1HKuxG.js +0 -1
- package/dist/assets/Object3DDocumentToolbar-Cks81kCS.js +0 -1
- package/dist/assets/Object3DDocumentViewport-DCwiSY3O.js +0 -2
- package/dist/assets/OnlineAssetDetail-CNuwSQRQ.js +0 -1
- package/dist/assets/PlayBar-bT8Xdrap.js +0 -1
- package/dist/assets/ReactCanvasControls-CnJrPj-B.js +0 -1
- package/dist/assets/RootSelectionOverlay-CpaGluQu.js +0 -1
- package/dist/assets/ShadowEditor-CVtMlALn.js +0 -1
- package/dist/assets/StageHost-B89HKcvd.js +0 -2
- package/dist/assets/Toolbar-DkTHnQto.js +0 -1
- package/dist/assets/ViewportShadingMenu-CXPi6fl8.js +0 -1
- package/dist/assets/adapter-runtime-bindings-4cmsRvRh.js +0 -2
- package/dist/assets/autoplay.service-CjPnv3QW.js +0 -1
- package/dist/assets/binding-resolver-dE0GnZT5.js +0 -2
- package/dist/assets/blender.keymap-_rF_vRX8.js +0 -1
- package/dist/assets/bridge.command-BF00Iefm.js +0 -3
- package/dist/assets/build-profiles.document-CqNrDdh9.js +0 -2
- package/dist/assets/build-session-GZcSAfPN.js +0 -9
- package/dist/assets/build.header-Bt1kwHWl.js +0 -1
- package/dist/assets/canvas-design-mount-BbLW_Nci.js +0 -6
- package/dist/assets/canvas-entry-runtime-UNYuSfG0.js +0 -2
- package/dist/assets/component-verbs.service-CnA11bJq.js +0 -1
- package/dist/assets/create-runtime-DBfUy0SO.js +0 -3
- package/dist/assets/debug-bridge-D3_-EgRE.js +0 -1
- package/dist/assets/editor-api-BFTIRlWa.js +0 -1
- package/dist/assets/entry-adjudication-Dc18TIqT.js +0 -1
- package/dist/assets/fork-menu-DpKqRhF5.js +0 -1
- package/dist/assets/game-document.service-Chmt4065.js +0 -1
- package/dist/assets/game-eval.command-DRSvOJ_1.js +0 -2
- package/dist/assets/game-network-Ct2FQYmu.js +0 -1
- package/dist/assets/gameplay.command-Boqv1hnc.js +0 -1
- package/dist/assets/generation.service-o9aXlsx4.js +0 -1
- package/dist/assets/index-BHoAKyAC.js +0 -1
- package/dist/assets/ingest-siblings-BtiEXLnh.js +0 -1
- package/dist/assets/instances.command-BwayrqNm.js +0 -1
- package/dist/assets/layered-pick-kiQf53t5.js +0 -1
- package/dist/assets/model-asset-sections.service-CqSclZGY.js +0 -1
- package/dist/assets/module-mode-BH2R93XP.js +0 -2
- package/dist/assets/mount-canvas-ingest-root-D1z9i5B3.js +0 -2
- package/dist/assets/mount-dom-ingest-root-BAmmNxlm.js +0 -2
- package/dist/assets/mount-ingest-root-DYR0TMIt.js +0 -2
- package/dist/assets/mount-manifest-DdkFYdVA.js +0 -1
- package/dist/assets/network-observer.service-Ce83TdsU.js +0 -1
- package/dist/assets/network.utility-DFDul2Xb.js +0 -1
- package/dist/assets/pixi-authoring-adapter-BChknIdC.js +0 -1
- package/dist/assets/play-mode-DICV4cKP.js +0 -22
- package/dist/assets/play.command-NHyi5rzF.js +0 -2
- package/dist/assets/presentation-BeNFBfKg.js +0 -1
- package/dist/assets/r3f-design-session-B5GsZI5M.js +0 -2
- package/dist/assets/react-inspector.service-Bm0OnanU.js +0 -1
- package/dist/assets/run-selection-DzEkGesJ.js +0 -2
- package/dist/assets/stage-overlay-set-BGE03mqb.js +0 -1
- package/dist/assets/stage-transform-tools-BQB7EY4l.js +0 -1
- package/dist/assets/team-playtest.service-hLfjgScx.js +0 -1
- package/dist/assets/three-authoring.service-BIQAtVdX.js +0 -2
- package/dist/assets/three-integration.service-CS8Nvbd2.js +0 -1
- package/dist/assets/transform-mode-request-DzD9aUNA.js +0 -1
- package/dist/assets/transport-strip-CUjNltnb.js +0 -1
- package/dist/assets/transport.header-Bb4FpQ8J.js +0 -1
- package/dist/assets/ui-board-document-CCiiXjX9.js +0 -2
- package/dist/assets/world-documents-DBybpBq8.js +0 -1
- package/dist/assets/world-root-stage-binding-ZVYIgr74.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as n}from"./jsx-runtime-DPjLkJKQ.js";import{eR as yt,eS as nt,eT as xt,eU as bt,eV as jt,eW as St,dF as vt,eX as Ct,eY as Rt,eZ as kt,e_ as wt,ay as Et,e$ as m,ew as u,ey as j,Z as k,f0 as O,f1 as $t,f2 as H,du as K,J as B,eC as Tt,aK as Y,f3 as st,f4 as It,f5 as Nt,aP as Mt,ap as it,f6 as Ot,f7 as At}from"./index-BRJMIUK0.js";import{r as v}from"./index-nmcBqr7Y.js";import"./index-CtzuWnCS.js";import{p as rt,G as at,c as M,B as Bt,A as Ft,S as A,a as _t,b as Dt,F as Lt,d as J,e as zt,f as Pt,T as Wt,g as X,h as Gt,C as Ht,i as Ut,j as Kt}from"./ShadowEditor-CVtMlALn.js";import{s as ot,a as U,b as Vt}from"./board-guides-BEKPgD9M.js";import{b as Yt}from"./eyedropper-session-bjPXnfeX.js";import{k as Jt,l as Xt}from"./inspect-Dr4qvDpJ.js";import{D as Zt}from"./dom-authoring-adapter-BrLU8IJ_.js";import{R as D,c as qt}from"./react-world-authoring-adapter-DOjv2pYm.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./index-D_NuPfjr.js";import"./index-CinJrH5C.js";import"./inference-diagnostics-xecGdohW.js";import"./json-history-resource-DwS10tqD.js";import"./relative-import-specifier-BFKIWEWs.js";import"./story-arg-descriptors-Ek86ExX7.js";import"./writer-tw6EcuVO.js";function lt(t,e){if(!t)return null;const s=(()=>{if(!(e instanceof Et))return e;const i=e.ownerOf(t.id);return i===null?null:e.childAdapters().find(a=>a.worldId===i)?.adapter??null})();return s instanceof D||s instanceof Zt?s:null}const Qt=(t,e)=>lt(t,e)!==null,te="element",ee=1500,ne="story",se=1600;function T(t){const e=t.indexOf(".");return e===-1?t:t.slice(e+1)}function ie(t){const e=T(t.path);return t.type==="color"?"color":/^fontFamily$/i.test(e)?"font":e==="background"||e==="backgroundImage"?"gradient":e==="boxShadow"?"shadow":e==="textShadow"?"text-shadow":e==="filter"?"filter":e==="backdropFilter"?"backdrop-filter":e==="borderRadius"?"radius":t.type==="string"&&e==="transform"?"transform":t.type==="boolean"?"checkbox":t.type==="enum"?"select":t.type==="json"?"json":t.type==="number"?"scrub":"text"}function re(t,e,s,i){if(!(t.path==="style.borderWidth"||t.path==="style.borderStyle"||t.path==="style.borderColor"))return!1;const o=e.get("style.borderWidth"),c=e.get("style.borderStyle"),r=e.get("style.borderColor");return!o||!c||!r?!1:(i.push({kind:"border",width:o,style:c,color:r}),s.add(o.path),s.add(c.path),s.add(r.path),!0)}function ae(t,e,s,i){if(!(t.path==="style.justifyContent"||t.path==="style.alignItems"))return!1;const o=e.get("style.justifyContent"),c=e.get("style.alignItems");return!o||!c?!1:(i.push({kind:"align",justify:o,align:c}),s.add(o.path),s.add(c.path),!0)}function ct(t){const e=new Map(t.map(a=>[a.path,a])),s=new Set,i=[];for(const a of t)s.has(a.path)||re(a,e,s,i)||ae(a,e,s,i)||i.push({kind:"single",prop:a});return i}function L(t){return typeof t=="number"&&Number.isFinite(t)?t:0}function F(t){return`react-prop-${t.replace(/\./g,"-")}`}const dt={type:"linear",angle:180,stops:[{color:"#ffffff",position:0},{color:"#000000",position:1}]};function w({label:t,testId:e,children:s}){return n.jsxs("div",{"data-testid":e?`${e}-row`:void 0,style:{...Ot,padding:`${u[2]} ${u[4]}`},children:[n.jsx("span",{style:{width:At,flexShrink:0,fontSize:j.base,color:m.textMuted},children:t}),n.jsx("div",{style:{flex:1,minWidth:0},children:s})]})}function oe({prop:t,raw:e,disabled:s,testId:i,commit:a}){return n.jsx(w,{label:t.label,testId:i,children:n.jsx(Ht,{testId:i,value:String(e??"#ffffff"),disabled:s,onChange:o=>a(t.path,o),onChangeEnd:o=>a(t.path,o),eyedropperFallback:()=>Xt([String(e??"")]),onEyedropperPick:o=>Yt(o)})})}function le({prop:t,raw:e,disabled:s,fonts:i,testId:a,commit:o}){return n.jsx(w,{label:t.label,testId:a,children:n.jsx(Gt,{testId:a,value:String(e??""),fonts:i,disabled:s,onChange:c=>o(t.path,c)})})}function ce({prop:t,raw:e,disabled:s,testId:i,commit:a}){const o=rt(String(e??"none"));return o?n.jsx(w,{label:t.label,testId:i,children:n.jsx(at,{testId:i,value:o,disabled:s,onChange:c=>a(t.path,M(c)),onChangeEnd:c=>a(t.path,M(c))})}):n.jsx(w,{label:t.label,testId:i,children:n.jsx(k,{type:"button",variant:"secondary",className:"vgai-field-trigger","data-testid":i,disabled:s,onClick:()=>a(t.path,M(dt)),children:"No gradient — click to add"})})}function Z({prop:t,raw:e,disabled:s,testId:i,commit:a,withSpreadInset:o}){const c=zt(String(e??"none"),o),r=o?Pt:Wt;return n.jsx(w,{label:t.label,testId:i,children:n.jsx(r,{value:c,disabled:s,onChange:l=>a(t.path,X(l,o)),onChangeEnd:l=>a(t.path,X(l,o))})})}function q({prop:t,raw:e,disabled:s,testId:i,commit:a,label:o}){const c=Dt(String(e??"none"));return n.jsx(w,{label:t.label,testId:i,children:n.jsx(Lt,{testId:i,label:o,value:c,disabled:s,onChange:r=>a(t.path,J(r)),onChangeEnd:r=>a(t.path,J(r))})})}const G=[{key:"topLeft",suffix:"TopLeft"},{key:"topRight",suffix:"TopRight"},{key:"bottomLeft",suffix:"BottomLeft"},{key:"bottomRight",suffix:"BottomRight"}];function de({adapter:t,id:e,prop:s,raw:i,disabled:a,testId:o,commit:c,removeStyle:r}){const l=L(i),d=G.reduce((g,{key:f,suffix:S})=>{const x=t.inspector?.get(e,`style.border${S}Radius`);return g[f]=it(x)??l,g},{}),y=g=>{if(Kt(g)){c(s.path,g.topLeft);for(const{suffix:f}of G)r(`style.border${f}Radius`);return}for(const{key:f,suffix:S}of G)c(`style.border${S}Radius`,g[f])};return n.jsx(w,{label:s.label,testId:o,children:n.jsx(_t,{value:d,disabled:a,onChange:y,onChangeEnd:y})})}function ue({prop:t,raw:e,disabled:s,testId:i,commit:a}){const o=st.has(T(t.path))?"":"px";return n.jsx(A,{testId:i,label:t.label,value:L(e),unit:o,disabled:s,onChange:c=>a(t.path,c),onChangeEnd:c=>a(t.path,c),style:{padding:`${u[2]} ${u[4]}`}})}function pe({prop:t,raw:e,disabled:s,testId:i,commit:a}){return n.jsx(w,{label:t.label,testId:i,children:n.jsx(K,{"data-testid":i,value:String(e??""),disabled:s,"data-dynamic":s||void 0,onChange:o=>a(t.path,o.target.value),style:{width:"100%"},children:(t.options??[]).map(o=>n.jsx("option",{value:String(o),children:String(o)},String(o)))})})}function ge({prop:t,raw:e,disabled:s,testId:i,commit:a}){return n.jsxs("label",{style:{display:"flex",gap:u[3],alignItems:"center",padding:`${u[3]} ${u[4]}`,fontSize:j.md},children:[n.jsx(Mt,{className:"vgai-checkbox","data-testid":i,checked:e!==!1,disabled:s,onChange:o=>a(t.path,o.target.checked)}),t.label]})}function he({prop:t,raw:e,disabled:s,testId:i,commit:a}){return n.jsx(w,{label:t.label,testId:i,children:n.jsx(Nt,{"data-testid":i,defaultValue:JSON.stringify(e??null),disabled:s,"data-dynamic":s||void 0,"data-variant":"code",style:{width:"100%",minHeight:40},onBlur:o=>{try{a(t.path,JSON.parse(o.target.value))}catch{}}})})}function ut({prop:t,raw:e,disabled:s,testId:i,commit:a}){return n.jsx(w,{label:t.label,testId:i,children:n.jsx(It,{type:"text","data-testid":i,readOnly:s,"data-dynamic":s||void 0,value:String(e??""),onCommit:o=>a(t.path,o),style:{width:"100%"}})})}const fe=/^rotate\(\s*(-?[\d.]+)deg\s*\)\s*scale\(\s*(-?[\d.]+)\s*\)$/i,me=/^scale\(\s*(-?[\d.]+)\s*\)\s*rotate\(\s*(-?[\d.]+)deg\s*\)$/i,ye=/^rotate\(\s*(-?[\d.]+)deg\s*\)$/i,xe=/^scale\(\s*(-?[\d.]+)\s*\)$/i,be=/^matrix\(\s*(-?[\d.eE+-]+)\s*,\s*(-?[\d.eE+-]+)\s*,\s*(-?[\d.eE+-]+)\s*,\s*(-?[\d.eE+-]+)\s*,\s*(-?[\d.eE+-]+)\s*,\s*(-?[\d.eE+-]+)\s*\)$/,_=1e-4;function je(t){const e=t.trim();if(e===""||e==="none")return{rotateDeg:0,scale:1};const s=fe.exec(e);if(s)return{rotateDeg:Number(s[1]),scale:Number(s[2])};const i=me.exec(e);if(i)return{rotateDeg:Number(i[2]),scale:Number(i[1])};const a=ye.exec(e);if(a)return{rotateDeg:Number(a[1]),scale:1};const o=xe.exec(e);if(o)return{rotateDeg:0,scale:Number(o[1])};const c=be.exec(e);if(!c)return null;const[r,l,d,y,g,f]=c.slice(1,7).map(Number);if(Math.abs(g)>_||Math.abs(f)>_||Math.abs(d+l)>_||Math.abs(y-r)>_)return null;const S=Math.hypot(r,l);if(S<_)return null;const x=Math.atan2(l,r)*180/Math.PI;return{rotateDeg:Math.round(x*100)/100,scale:Math.round(S*1e3)/1e3}}function Se(t){return`rotate(${t.rotateDeg}deg) scale(${t.scale})`}function ve(t){const{prop:e,raw:s,disabled:i,testId:a,commit:o}=t,c=je(String(s??"none"));if(!c)return n.jsx(ut,{...t});const r=l=>o(e.path,Se(l));return n.jsx(w,{label:e.label,testId:a,children:n.jsxs("div",{style:{display:"flex",gap:u[3]},children:[n.jsx(A,{testId:`${a}-rotate`,label:"Rotate",value:c.rotateDeg,unit:"deg",disabled:i,onChange:l=>r({...c,rotateDeg:l}),onChangeEnd:l=>r({...c,rotateDeg:l}),style:{flex:1}}),n.jsx(A,{testId:`${a}-scale`,label:"Scale",value:c.scale,unit:"x",step:.1,disabled:i,onChange:l=>r({...c,scale:l}),onChangeEnd:l=>r({...c,scale:l}),style:{flex:1}})]})})}function $({adapter:t,id:e,prop:s,fonts:i}){const a=B(),o=(l,d)=>{t.inspector?.set(e,l,d),a.notifyIngestEdit()},c=l=>{t.inspector?.remove?.(e,l),a.notifyIngestEdit()},r={prop:s,raw:t.inspector?.get(e,s.path),disabled:s.readonly,testId:F(s.path),commit:o,fonts:i};switch(ie(s)){case"color":return n.jsx(oe,{...r});case"font":return n.jsx(le,{...r});case"gradient":return n.jsx(ce,{...r});case"shadow":return n.jsx(Z,{...r,withSpreadInset:!0});case"text-shadow":return n.jsx(Z,{...r,withSpreadInset:!1});case"filter":return n.jsx(q,{...r,label:"Filter"});case"backdrop-filter":return n.jsx(q,{...r,label:"Backdrop Filter"});case"radius":return n.jsx(de,{...r,adapter:t,id:e,removeStyle:c});case"transform":return n.jsx(ve,{...r});case"scrub":return n.jsx(ue,{...r});case"select":return n.jsx(pe,{...r});case"checkbox":return n.jsx(ge,{...r});case"json":return n.jsx(he,{...r});default:return n.jsx(ut,{...r})}}function pt({adapter:t,id:e,row:s}){const i=B(),a=(r,l)=>{t.inspector?.set(e,r,l),i.notifyIngestEdit()},o=r=>{t.inspector?.remove?.(e,r),i.notifyIngestEdit()};if(s.kind==="border"){const r={width:L(t.inspector?.get(e,s.width.path)),style:String(t.inspector?.get(e,s.style.path)??"solid"),color:String(t.inspector?.get(e,s.color.path)??"#000000")},l=f=>{const S=it(t.inspector?.get(e,`style.border${f}Width`)),x=t.inspector?.get(e,`style.border${f}Style`),C=t.inspector?.get(e,`style.border${f}Color`),p=typeof C=="string"?qt(C):void 0;return{width:S??r.width,style:typeof x=="string"&&x?x:r.style,color:p??r.color}},d={top:l("Top"),right:l("Right"),bottom:l("Bottom"),left:l("Left")},y=["Top","Right","Bottom","Left"],g=f=>{if(Ut(f)){a(s.width.path,f.top.width),a(s.style.path,f.top.style),a(s.color.path,f.top.color);for(const x of y)o(`style.border${x}Width`),o(`style.border${x}Style`),o(`style.border${x}Color`);return}const S=y.map(x=>({suffix:x,side:f[x.toLowerCase()]}));for(const{suffix:x,side:C}of S)a(`style.border${x}Width`,C.width),a(`style.border${x}Style`,C.style),a(`style.border${x}Color`,C.color)};return n.jsx(w,{label:"Border",testId:"react-prop-border",children:n.jsx(Bt,{value:d,onChange:g,onChangeEnd:g})})}const c={justify:t.inspector?.get(e,s.justify.path)??"flex-start",align:t.inspector?.get(e,s.align.path)??"flex-start"};return n.jsx(w,{label:"Align",testId:"react-prop-align",children:n.jsx(Ft,{value:c,onChange:r=>{a(s.justify.path,r.justify),a(s.align.path,r.align)}})})}function z(t){return t.kind==="single"?t.prop.path:t.kind==="border"?`border:${t.width.path}`:`align:${t.justify.path}`}function E(t,e,s,i,a){if(!s)return null;const o=st.has(T(s.path))?"":"px",c=F(s.path);return n.jsx(A,{testId:c,label:i,value:L(t.inspector?.get(e,s.path)),unit:o,disabled:s.readonly,onChange:r=>a(s.path,r),onChangeEnd:r=>a(s.path,r),style:{flex:1,minWidth:0}},s.path)}function Ce({adapter:t,id:e,props:s,fonts:i,showConstraints:a,onToggleConstraints:o}){const c=B(),r=new Map(s.map(p=>[T(p.path),p])),l=(p,P)=>{t.inspector?.set(e,p,P),c.notifyIngestEdit()},d=String(t.inspector?.get(e,r.get("display")?.path??"style.display")??""),y=d==="flex"||d==="inline-flex",g=d==="grid"||d==="inline-grid",f=r.get("display"),S=r.get("gap"),x=ct(s.filter(p=>["justifyContent","alignItems"].includes(T(p.path)))),C=["flexDirection","flexWrap","overflow"].map(p=>r.get(p)).filter(p=>!!p);return n.jsxs("div",{style:{padding:"2px 8px 7px"},children:[n.jsxs("div",{style:{display:"flex",gap:u[3]},children:[E(t,e,r.get("width"),"W",l),E(t,e,r.get("height"),"H",l)]}),a&&n.jsxs("div",{"data-testid":"react-layout-constraints",style:{marginTop:5},children:[n.jsxs("div",{style:{display:"flex",gap:u[3]},children:[E(t,e,r.get("minWidth"),"Min W",l),E(t,e,r.get("minHeight"),"Min H",l)]}),n.jsxs("div",{style:{display:"flex",gap:u[3],marginTop:u[2]},children:[E(t,e,r.get("maxWidth"),"Max W",l),E(t,e,r.get("maxHeight"),"Max H",l)]})]}),n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-layout-toggle-constraints",onClick:o,style:{display:"flex",margin:"2px auto 5px"},children:a?"− constraints":"··· constraints"}),n.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1.35fr) minmax(0, 1fr)",gap:u[3]},children:[f&&n.jsx(K,{"data-testid":F(f.path),value:d,disabled:f.readonly,"data-dynamic":f.readonly||void 0,onChange:p=>l(f.path,p.target.value),style:{width:"100%"},children:(f.options??[]).map(p=>n.jsx("option",{value:String(p),children:String(p)},String(p)))}),E(t,e,S,"Gap",l)]}),y&&n.jsxs("div",{"data-testid":"react-layout-flex-controls",style:{marginTop:5},children:[C.filter(p=>T(p.path)!=="overflow").map(p=>n.jsx($,{adapter:t,id:e,prop:p,fonts:i},p.path)),x.map(p=>p.kind==="single"?n.jsx($,{adapter:t,id:e,prop:p.prop,fonts:i},z(p)):n.jsx(pt,{adapter:t,id:e,row:p},z(p)))]}),g&&n.jsxs("div",{"data-testid":"react-layout-grid-controls",style:{marginTop:5},children:[n.jsxs("div",{style:{display:"flex",gap:u[3]},children:[Q(t,e,r.get("gridTemplateColumns"),"Cols",l),Q(t,e,r.get("gridTemplateRows"),"Rows",l)]}),[r.get("gridTemplateColumns"),r.get("gridTemplateRows")].filter(p=>!!p).map(p=>n.jsx($,{adapter:t,id:e,prop:p,fonts:i},p.path)),n.jsxs("div",{style:{display:"flex",gap:u[3],marginTop:u[1]},children:[E(t,e,r.get("rowGap"),"Row Gap",l),E(t,e,r.get("columnGap"),"Col Gap",l)]}),r.get("gridAutoFlow")&&n.jsx($,{adapter:t,id:e,prop:r.get("gridAutoFlow"),fonts:i})]}),C.filter(p=>T(p.path)==="overflow").map(p=>n.jsx($,{adapter:t,id:e,prop:p,fonts:i},p.path)),n.jsx(Re,{adapter:t,id:e,byName:r,fonts:i})]})}function gt(t){const e=t.trim();if(!e||e==="none")return 0;const s=[];let i=0,a=0;for(let c=0;c<e.length;c++){const r=e[c];r==="("||r==="["?i++:r===")"||r==="]"?i--:r===" "&&i===0&&(c>a&&s.push(e.slice(a,c)),a=c+1)}a<e.length&&s.push(e.slice(a));let o=0;for(const c of s){const r=/^repeat\(\s*(\d+)\s*,([\s\S]*)\)$/.exec(c);o+=r?.[1]&&r[2]!==void 0?Number(r[1])*gt(r[2]):1}return o}function Q(t,e,s,i,a){if(!s)return null;let o=null;const c=r=>{const d=`repeat(${Math.max(1,Math.round(r))}, 1fr)`;d!==o&&(o=d,a(s.path,d))};return n.jsx(A,{testId:`${F(s.path)}-count`,label:i,value:gt(String(t.inspector?.get(e,s.path)??"")),min:1,disabled:s.readonly,onChange:c,onChangeEnd:c,style:{flex:1,minWidth:0}},`${s.path}-count`)}function Re({adapter:t,id:e,byName:s,fonts:i}){const[a,o]=v.useState(!1),c=["gridColumn","gridRow","justifySelf"].map(r=>s.get(r)).filter(r=>!!r);return c.length===0?null:n.jsxs(n.Fragment,{children:[n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-layout-toggle-grid-item",onClick:()=>o(r=>!r),style:{display:"flex",margin:"2px auto 0"},children:a?"− grid item":"··· grid item"}),a&&n.jsx("div",{"data-testid":"react-layout-grid-item",children:c.map(r=>n.jsx($,{adapter:t,id:e,prop:r,fonts:i},r.path))})]})}function ke(t){const e=t.trim();if(!e||e==="none")return[];const s=[];let i=0,a=0;for(let o=0;o<e.length;o++){const c=e[o];c==="("?i++:c===")"?i--:c===","&&i===0&&(s.push(e.slice(a,o).trim()),a=o+1)}return s.push(e.slice(a).trim()),s.filter(Boolean)}function tt(t){return/^url\((['"]?)([\s\S]*)\1\)$/.exec(t.trim())?.[2]??null}function we({adapter:t,id:e,props:s,fonts:i}){const a=B(),o=new Map(s.map(h=>[T(h.path),h])),c=(h,b)=>{t.inspector?.set(e,h,b),a.notifyIngestEdit()},r=o.get("backgroundImage"),l=o.get("backgroundColor"),[d,y]=v.useState(null),[g,f]=v.useState(null),S=String(r?t.inspector?.get(e,r.path)??"":""),x=ke(S),C=h=>{if(r){if(h.length>0){c(r.path,h.join(", "));return}t.inspector?.remove?.(e,r.path),a.notifyIngestEdit()}},p=(h,b)=>C(x.map((R,I)=>I===h?b:R)),P=h=>{y(null),C(x.filter((b,R)=>R!==h))},V=(h,b)=>{const R=[...x],I=R[h+b];I===void 0||R[h]===void 0||(R[h+b]=R[h],R[h]=I,y(null),C(R))},W={background:"none",border:"none",color:m.textMuted,cursor:"pointer",fontSize:j.base,padding:`${u[2]} ${u[3]}`,lineHeight:O.tight};return n.jsxs("div",{"data-testid":"react-fill-list",style:{padding:"2px 8px 7px"},children:[x.map((h,b)=>{const R=rt(h),I=tt(h),mt=R?`${R.type} gradient`:I!==null?I.split("/").pop()??"image":h.slice(0,22);return n.jsxs("div",{style:{marginBottom:3},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:5},children:[n.jsxs("button",{type:"button","data-testid":`react-fill-layer-${b}`,title:h,onClick:()=>y(d===b?null:b),style:{display:"flex",alignItems:"center",gap:u[3],flex:1,minWidth:0,background:"none",border:"none",cursor:"pointer",padding:`${u[1]} 0`,color:m.text,fontSize:j.base,textAlign:"left"},children:[n.jsx("span",{style:{width:16,height:16,flexShrink:0,borderRadius:Tt.sm,border:`1px solid ${m.border}`,background:h,backgroundSize:"cover"}}),n.jsx("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:mt})]}),b>0&&n.jsx("button",{type:"button","data-testid":`react-fill-up-${b}`,title:"Raise this fill",onClick:()=>V(b,-1),style:W,children:"↑"}),b<x.length-1&&n.jsx("button",{type:"button","data-testid":`react-fill-down-${b}`,title:"Lower this fill",onClick:()=>V(b,1),style:W,children:"↓"}),n.jsx("button",{type:"button","data-testid":`react-fill-remove-${b}`,title:"Remove this fill (CSS has no hidden-layer state — removing is Figma's eye)",onClick:()=>P(b),style:W,children:"✕"})]}),d===b&&R&&n.jsx(at,{testId:`react-fill-gradient-${b}`,value:R,onChange:N=>p(b,M(N)),onChangeEnd:N=>p(b,M(N))}),d===b&&I!==null&&n.jsx(Y,{"data-testid":`react-fill-url-${b}`,defaultValue:I,placeholder:"image url",onBlur:N=>p(b,`url("${N.target.value.trim()}")`),onKeyDown:N=>{N.key==="Enter"&&p(b,`url("${N.currentTarget.value.trim()}")`)},style:{width:"100%",marginTop:u[1]}})]},`${b}-${h.slice(0,24)}`)}),g!==null&&n.jsx(Y,{"data-testid":"react-fill-image-draft",value:g,placeholder:"image url — Enter to add",autoFocus:!0,onChange:h=>f(h.target.value),onKeyDown:h=>{h.key==="Enter"&&g.trim()&&(C([`url("${g.trim()}")`,...x]),f(null)),h.key==="Escape"&&f(null)},style:{width:"100%",marginBottom:3}}),n.jsxs("div",{style:{display:"flex",gap:u[2]},children:[n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-fill-add-gradient",onClick:()=>{C([M(dt),...x]),y(0)},children:"+ gradient"}),n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-fill-add-image",onClick:()=>f(""),children:"+ image"})]}),x.some(h=>tt(h)!==null)&&["backgroundSize","backgroundPosition","backgroundRepeat"].map(h=>o.get(h)).filter(h=>!!h).map(h=>n.jsx($,{adapter:t,id:e,prop:h,fonts:i},h.path)),l&&n.jsx($,{adapter:t,id:e,prop:l,fonts:i})]})}function Ee({adapter:t,id:e,props:s,fonts:i}){const a=B(),o=new Map(s.map(g=>[T(g.path),g])),c=o.get("position"),r=String(c?t.inspector?.get(e,c.path)??"static":"static"),l=(g,f)=>{t.inspector?.set(e,g,f),a.notifyIngestEdit()},d=["top","right","bottom","left"],y=["zIndex","flexGrow","flexShrink","flexBasis","alignSelf"].map(g=>o.get(g)).filter(g=>!!g);return n.jsxs("div",{style:{padding:"2px 8px 7px"},children:[c&&n.jsx("div",{"data-testid":F(c.path),style:{display:"grid",gridTemplateColumns:"repeat(5, 1fr)",gap:u[1]},children:(c.options??[]).map(g=>{const f=String(g),S=f===r;return n.jsx(k,{type:"button",variant:S?"primary":"secondary",size:"compact","aria-pressed":S,title:f,disabled:c.readonly,onClick:()=>l(c.path,f),children:f.slice(0,3)},f)})}),r!=="static"&&n.jsx("div",{"data-testid":"react-position-offsets",style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:u[2],marginTop:u[3]},children:d.map(g=>E(t,e,o.get(g),g[0].toUpperCase(),l))}),y.length>0&&n.jsxs("div",{style:{borderTop:`1px solid ${m.border}`,marginTop:7,paddingTop:3},children:[n.jsx("div",{style:{color:m.textMuted,fontSize:j.xs,padding:"2px 0 1px"},children:"STACKING & FLEX ITEM"}),y.map(g=>n.jsx($,{adapter:t,id:e,prop:g,fonts:i},g.path))]})]})}function $e({adapter:t,id:e,props:s}){const i=B(),a=new Map(s.map(d=>[T(d.path),d])),o=(d,y)=>{t.inspector?.set(e,d,y),i.notifyIngestEdit()},c=d=>{const y=a.get(d);return y?n.jsx(A,{testId:F(y.path),label:"",value:L(t.inspector?.get(e,y.path)),unit:"px",disabled:y.readonly,onChange:g=>o(y.path,g),onChangeEnd:g=>o(y.path,g),style:{width:46,minWidth:0,flex:"none"}},y.path):n.jsx("span",{},d)},r=d=>n.jsx("span",{style:{position:"absolute",top:2,left:6,fontSize:8,letterSpacing:".08em",color:m.textMuted,pointerEvents:"none"},children:d}),l={display:"flex",alignItems:"center",justifyContent:"center"};return n.jsx("div",{style:{padding:`${u[1]} ${u[4]} ${u[4]}`},"data-testid":"react-spacing-box",children:n.jsxs("div",{style:{position:"relative",border:`1px solid ${m.border}`,borderRadius:4,padding:"11px 4px 3px"},children:[r("MARGIN"),n.jsx("div",{style:l,children:c("marginTop")}),n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:u[1]},children:[c("marginLeft"),n.jsxs("div",{style:{position:"relative",flex:1,minWidth:0,border:`1px dashed ${m.border}`,borderRadius:4,padding:"11px 4px 3px"},children:[r("PADDING"),n.jsx("div",{style:l,children:c("paddingTop")}),n.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:u[1]},children:[c("paddingLeft"),c("paddingRight")]}),n.jsx("div",{style:l,children:c("paddingBottom")})]}),c("marginRight")]}),n.jsx("div",{style:l,children:c("marginBottom")})]})})}function Te({name:t,groupId:e,props:s,adapter:i,id:a,fonts:o}){const[c,r]=v.useState(!1),l=ct(s);return n.jsxs("div",{"data-testid":`react-inspector-group-${e}`,children:[t==="Layout"&&n.jsx(Ce,{adapter:i,id:a,props:s,fonts:o,showConstraints:c,onToggleConstraints:()=>r(d=>!d)}),t==="Position"&&n.jsx(Ee,{adapter:i,id:a,props:s,fonts:o}),t==="Spacing"&&n.jsx($e,{adapter:i,id:a,props:s}),t==="Fill"&&n.jsx(we,{adapter:i,id:a,props:s,fonts:o}),t!=="Layout"&&t!=="Position"&&t!=="Spacing"&&t!=="Fill"&&l.map(d=>d.kind==="single"?n.jsx($,{adapter:i,id:a,prop:d.prop,fonts:o},z(d)):n.jsx(pt,{adapter:i,id:a,row:d},z(d)))]})}function Ie({adapter:t,node:e}){const s=[];let i=e,a=0;for(;i&&a++<100;)s.unshift(i),i=i.parentId?t.hierarchy.node(i.parentId):null;return n.jsx("nav",{"aria-label":"Selection ancestry","data-testid":"react-inspector-breadcrumbs",style:{display:"flex",alignItems:"center",gap:3,padding:`${u[3]} ${u[4]}`,overflowX:"auto",borderBottom:`1px solid ${m.border}`,whiteSpace:"nowrap"},children:s.map((o,c)=>n.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:3},children:[c>0&&n.jsx("span",{style:{color:m.textMuted},children:"/"}),n.jsx(k,{type:"button",variant:"ghost",size:"compact","aria-current":o.id===e.id?"page":void 0,title:o.secondaryLabel??o.label,onClick:()=>$t(t,[o.id]),children:o.label})]},o.id))})}function Ne({owner:t,node:e}){const s=t.portableArgs(e.id),[i,a]=v.useState("idle"),[o,c]=v.useState(""),[r,l]=v.useState(null),d=async y=>{const g=await t.writeStory(e.id,y);l(g.changed?null:g.error??"refused"),g.changed&&(a("idle"),c(""))};return n.jsxs("div",{"data-testid":"react-story-controls-header",style:{borderBottom:`1px solid ${m.border}`},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:u[4],padding:"7px 8px"},children:[n.jsxs("div",{style:{minWidth:0},children:[n.jsx("div",{style:{color:m.text,fontSize:j.md,fontWeight:600},children:e.label}),n.jsx("div",{style:{color:m.textMuted,fontSize:j.sm},children:s?`${Object.keys(s).length} args · session controls`:"Portable CSF story"})]}),n.jsx(k,{type:"button",variant:"secondary",size:"compact","data-testid":"react-story-reset-args",onClick:()=>t.resetPortableArgs(e.id),children:"Reset"})]}),n.jsxs("div",{style:{display:"flex",gap:u[2],padding:`0 ${u[4]} ${u[3]}`,flexWrap:"wrap"},children:[n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-story-save-as",title:"Write the CURRENT session args as a new story export in this file",onClick:()=>{l(null),c(""),a(i==="save-as"?"idle":"save-as")},children:"Save as…"}),n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-story-rename",onClick:()=>{l(null),c(""),a(i==="rename"?"idle":"rename")},children:"Rename…"}),i==="confirm-delete"?n.jsx(k,{type:"button",variant:"secondary",size:"compact","data-testid":"react-story-delete-confirm",onClick:()=>void d({kind:"delete"}),children:"Delete story?"}):n.jsx(k,{type:"button",variant:"ghost",size:"compact","data-testid":"react-story-delete",onClick:()=>{l(null),a("confirm-delete")},children:"Delete"})]}),(i==="save-as"||i==="rename")&&n.jsxs("div",{style:{display:"flex",gap:u[2],padding:`0 ${u[4]} ${u[4]}`,alignItems:"center"},children:[n.jsx("input",{"data-testid":"react-story-name-input",autoFocus:!0,value:o,placeholder:i==="save-as"?"NewStoryName":`Rename ${e.label}`,onChange:y=>c(y.target.value),onKeyDown:y=>{y.key==="Enter"&&o.trim()&&d(i==="save-as"?{kind:"save-as",name:o.trim()}:{kind:"rename",newName:o.trim()}),y.key==="Escape"&&a("idle")},style:{flex:1,minWidth:0,background:m.neutralHover,border:`1px solid ${m.border}`,borderRadius:4,color:m.text,fontSize:j.base,padding:"3px 6px"}}),n.jsx(k,{type:"button",variant:"secondary",size:"compact","data-testid":"react-story-name-commit",onClick:()=>void d(i==="save-as"?{kind:"save-as",name:o.trim()}:{kind:"rename",newName:o.trim()}),children:i==="save-as"?"Save":"Rename"})]}),r&&n.jsx("div",{"data-testid":"react-story-write-notice",style:{padding:`0 ${u[4]} ${u[4]}`,color:ft(),fontSize:j.sm,lineHeight:O.normal},children:r})]})}function Me({owner:t,nodeId:e}){const s=t.elementClasses(e),[i,a]=v.useState(""),[o,c]=v.useState(null),r=async()=>{const l=i.trim().replace(/^\./,"");if(!l)return;const d=await t.writeNamedStyle(e,{kind:"set",className:l});c(d.changed?null:d.error??"refused"),d.changed&&a("")};return n.jsxs("div",{"data-testid":"react-element-classes",style:{padding:`${u[3]} ${u[4]}`,borderBottom:`1px solid ${m.border}`},children:[n.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:u[2],alignItems:"center"},children:[n.jsx("span",{style:{fontSize:j.sm,color:m.textMuted,marginRight:u[1]},children:"Style class"}),s.map(l=>n.jsxs("span",{"data-testid":`react-class-chip-${l.name}`,title:l.styledIn?`.${l.name} — ${l.count} element${l.count===1?"":"s"} in this game share this style (${l.styledIn.split("/").pop()??l.styledIn})`:`.${l.name} — utility/generated class (no first-party rule to edit)`,style:{display:"inline-flex",alignItems:"center",gap:3,fontFamily:H,fontSize:j.sm,color:l.styledIn?m.text:m.textMuted,background:m.neutralHover,border:`1px solid ${m.border}`,borderRadius:4,padding:"1px 4px"},children:[".",l.name,l.count>1&&n.jsxs("span",{style:{color:m.textMuted,fontSize:j.xs},children:["×",l.count]}),n.jsx("button",{type:"button","data-testid":`react-class-remove-${l.name}`,title:`Remove .${l.name} from this element`,onClick:()=>void t.writeNamedStyle(e,{kind:"remove",className:l.name}).then(d=>c(d.changed?null:d.error??"refused")),style:{background:"none",border:"none",color:m.textMuted,cursor:"pointer",fontSize:j.base,padding:"3px 5px",margin:"-3px -4px -3px -1px",lineHeight:O.tight},children:"✕"})]},l.name)),n.jsx("input",{"data-testid":"react-class-input",value:i,placeholder:s.length===0?"create style…":"add class…",title:"Type a class name — an existing first-party class is applied; a new name creates a style from this element's inline declarations",onChange:l=>{a(l.target.value),o&&c(null)},onKeyDown:l=>{l.key==="Enter"&&r(),l.key==="Escape"&&a("")},style:{flex:1,minWidth:72,background:"transparent",border:`1px dashed ${m.border}`,borderRadius:4,color:m.text,fontSize:j.sm,fontFamily:H,padding:"2px 5px"}})]}),o&&n.jsx("div",{"data-testid":"react-class-notice",style:{paddingTop:u[2],color:ft(),fontSize:j.sm,lineHeight:O.normal},children:o}),n.jsx(Oe,{})]})}function Oe(){const t=v.useSyncExternalStore(Vt,U);return n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:5,paddingTop:5},children:[n.jsx("span",{style:{fontSize:j.sm,color:m.textMuted},children:"Breakpoint"}),n.jsx(K,{"data-testid":"react-breakpoint-select",value:t??"",onChange:e=>ot(e.target.value||null),style:{fontSize:j.sm,flex:1,...t?{color:m.accent,borderColor:m.accent}:{}},children:ht.map(e=>n.jsx("option",{value:e.media??"",children:e.label},e.label))})]}),t&&n.jsxs("div",{"data-testid":"react-breakpoint-note",style:{paddingTop:3,color:m.textMuted,fontSize:j.xs,lineHeight:O.normal},children:["Style edits write @media ",t," — previewed live by frame width."]})]})}const ht=[{label:"Base",media:null},{label:"Tablet ≤991",media:"(max-width: 991px)"},{label:"Phone L ≤767",media:"(max-width: 767px)"},{label:"Phone ≤479",media:"(max-width: 479px)"}];function ft(){return"#e06c75"}function Ae({entry:t}){const[e,s]=v.useState(!1),i=`${t.file}:${t.line}`,a=`${t.file.split("/").pop()??t.file}:${t.line}`,o=async()=>{try{await navigator.clipboard.writeText(i),s(!0),setTimeout(()=>s(!1),1500)}catch{}};return n.jsx("button",{type:"button","data-testid":"react-source-location",title:`${i} — click to copy the path`,onClick:()=>void o(),style:{fontFamily:H,fontSize:"inherit",color:m.textMuted,cursor:"pointer",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,background:"none",border:"none",padding:0,textAlign:"left"},children:e?"Copied":a})}function Be({owner:t,node:e,nodeId:s}){const i=t instanceof D,a=i?t.sourceLocation(s):void 0,o=e?.role==="story"?`Story · ${e.label}`:e?.role==="document"?`CSF · ${e.secondaryLabel??e.label}`:i?"Source":"Session overlay — not written to source",c=e?.role==="story"?`${e.label} is the active portable CSF design state.`:e?.role==="document"?`${e.secondaryLabel??e.label} owns this root's design states.`:i?`Edits change ${e?.label??"this component"}'s source — every rendered instance updates.`:"This is an ingested game: edits persist as a per-project overlay only, never written to source.";return n.jsxs("div",{"data-testid":i?"react-lane-b-disclosure":"react-overlay-disclosure",title:c,style:{display:"flex",alignItems:"center",gap:u[3],padding:`${u[1]} ${u[4]} ${u[3]}`,borderBottom:`1px solid ${m.border}`,color:m.textMuted,fontSize:j.sm,lineHeight:O.normal,minWidth:0},children:[n.jsx("span",{style:{flexShrink:0,...i?{}:{color:m.accent}},children:o}),a&&n.jsx(Ae,{entry:a})]})}function Fe({adapter:t,node:e,nodeId:s,owner:i}){return n.jsxs("div",{"data-testid":"react-inspector-section",children:[n.jsx(Ie,{adapter:t,node:e}),i instanceof D&&n.jsx(Me,{owner:i,nodeId:s}),n.jsx(Be,{owner:i,node:e,nodeId:s})]})}function et({adapter:t,id:e,name:s,groupId:i,props:a}){const o=v.useMemo(()=>Jt(),[]);return n.jsx(Te,{name:s,groupId:i,props:a,adapter:t,id:e,fonts:o})}function _e(t,e){const s=lt(t,e);if(!s||!t)return[];const i=t.id,a=(e.inspector?.properties(i)??[]).filter(l=>l.path!=="name"),{ungrouped:o,groups:c}=bt(a),r=[{id:te,title:"Element",icon:jt,order:ee,body:{kind:"custom",render:()=>v.createElement(Fe,{adapter:e,node:t,nodeId:i,owner:s}),...s instanceof D?{data:{classes:s.elementClasses(i),breakpoint:U()},editable:{fields:[{path:"element.breakpoint",label:"Breakpoint",type:"enum",options:ht.map(l=>l.media??"")}],io:{get:l=>l==="element.breakpoint"?U()??"":void 0,set:(l,d)=>{l==="element.breakpoint"&&ot(typeof d=="string"&&d?d:null)}}}}:{}}}];return t.role==="story"&&s instanceof D&&r.push({id:ne,title:"Story",icon:St,order:se,body:{kind:"custom",render:()=>v.createElement(Ne,{owner:s,node:t})}}),o.length>0&&r.push({id:nt,title:"Style",icon:Ct,order:vt,defaultOpen:!0,body:{kind:"custom",render:()=>v.createElement(et,{adapter:e,id:i,name:"Style",groupId:"style",props:o})}}),c.forEach((l,d)=>{r.push({id:wt(l.groupId),title:l.name,icon:kt(l.name),order:Rt+d,defaultOpen:!0,body:{kind:"custom",render:()=>v.createElement(et,{adapter:e,id:i,name:l.name,groupId:l.groupId,props:l.properties})}})}),r}const De=xt();function Le(){De.ensure(t=>{t(yt({match:Qt,sections:_e,claims:[nt]}))})}const on="workspace.service";function ln(){return Le(),()=>{}}export{on as point,ln as start};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{q as s}from"./index-BRJMIUK0.js";import{s as l,l as d,a as f}from"./configurations-BXU4GGbV.js";import{s as g}from"./play-mode-DICV4cKP.js";const a="play",u="runSelection";function p(){return s().projectLocalState.read(u)??null}function y(n){s().projectLocalState.write(u,n)}function m(n,o=p()){return o??n.find(t=>t.role==="run"&&t.kind==="compound"&&t.run?.includes(a))?.id??a}let r=null;async function h(){const n=await d().catch(()=>[]),o=m(n),t=n.find(i=>i.id===o);if(!t||o===a)return{ok:!0,started:null};let e;try{e=await f(t.id)}catch(i){return{ok:!1,title:`Run "${t.id}"`,detail:i instanceof Error?i.message:String(i)}}return e.ready?(t.kind==="compound"&&t.instances!=null&&g(Math.max(0,t.instances-1)),r=t.id,{ok:!0,started:t.id}):{ok:!1,title:`Run "${t.id}" is not ready`,detail:Object.entries(e.logs).map(([i,c])=>`${i}: ${c.slice(-3).join(" | ")||"no output"}`).join(`
|
|
2
|
-
`)}}async function k(){const n=r;r=null,n&&await l(n).catch(o=>s().notify({tone:"error",title:`Stop "${n}"`,detail:o instanceof Error?o.message:String(o)}))}export{a as P,h as a,m as b,p as c,y as d,k as s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./jsx-runtime-DPjLkJKQ.js";import{r as s}from"./index-nmcBqr7Y.js";import{ju as w,gR as R,d2 as P,aI as v,ad as f,jv as D,gA as E,gB as k,jw as V,jx as T,dg as L,cA as B,cB as b,aH as H,jy as N,jz as I,cE as $,cF as C,aJ as z,$ as F,cG as U,cH as G,jA as W,jB as _,a2 as q,jC as J,jD as K,jE as Z,dR as Q}from"./index-BRJMIUK0.js";import{s as M,o as O,a as X}from"./object3d-document-session-registry-DJDEDM0p.js";import{r as Y}from"./index-CtzuWnCS.js";import{T as ee}from"./TransientHint-BpDLhRLd.js";import{d as te,b as se}from"./ViewportShadingMenu-CXPi6fl8.js";import{V as j,s as oe}from"./StageHost-B89HKcvd.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./index-CinJrH5C.js";import"./three-state-DwFE3ay2.js";import"./editor-shell-store-ChLcVeNB.js";import"./output-pass-HurwNl0G.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./Pass-D1MRT672.js";import"./editor-layers-BDJnAAzj.js";import"./workspace-arrangement-BdAlBwvd.js";import"./user-data-Bpj7diUS.js";import"./entity-object-JmYMfLsx.js";import"./three-contract-Dkt6PmWY.js";import"./standard-viewport-dressing-BCA51Tum.js";import"./content-bounds-BeuIXKYu.js";import"./hierarchy-marks-Cc_3lxw6.js";import"./environment-Dg-YaLsA.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./preview-renderer-BrYNFV1p.js";import"./renderer-ownership-BovSEcLv.js";import"./live-mixers-B-bwLZ7c.js";import"./live-gesture-lock-DJbrjOqf.js";import"./model-inspection-CXHxrafK.js";import"./three-viewport-presentation-B0z_cECu.js";import"./clip-planes-CnAI6DZn.js";import"./three-TCuY32m_.js";import"./component-instance-root-B0C5oNEm.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./model-thumbnail-BEKPWg4l.js";import"./studio-environment-DRxxq_QX.js";import"./KTX2Loader-CaqVE6nY.js";import"./GLTFLoader-KeoruJgS.js";import"./BufferGeometryUtils-B22h7jo4.js";import"./OrbitControls-B13MKuwC.js";import"./LineSegments2-DN9pUfWA.js";import"./three.quarks.esm-C_HmSKXo.js";import"./three-integration-BdN5Nhsg.js";import"./host-hierarchy-objects-BV3WqU2w.js";import"./layered-pick-kiQf53t5.js";import"./root-stacking-BEd9ZvxC.js";import"./viewport-door-Bj_ZIP85.js";import"./asset-preview-B1tDziF1.js";import"./bitmap-label-Ct4k6ehY.js";import"./scene-framing-BQt72ZCw.js";import"./source-object3d-authoring-adapter-DF679Ncb.js";import"./three-projection-core-CG01r5Ta.js";import"./editor-presentation-activity-C7SNSmTd.js";import"./transport-strip-CUjNltnb.js";import"./viewport-surface-status-cwCiBGa7.js";function h(t){return t.toFixed(2)}function re(){const t=w(),[o,r]=s.useState({x:0,y:0,z:0}),[a,n]=s.useState({x:0,y:0,z:0}),i=s.useRef(0);return s.useEffect(()=>{function u(){const m=t.cameraPosition,p=t.cameraTarget;r(l=>l.x!==m.x||l.y!==m.y||l.z!==m.z?{x:m.x,y:m.y,z:m.z}:l),n(l=>l.x!==p.x||l.y!==p.y||l.z!==p.z?{x:p.x,y:p.y,z:p.z}:l),i.current=requestAnimationFrame(u)}return i.current=requestAnimationFrame(u),()=>cancelAnimationFrame(i.current)},[t]),e.jsx(R,{variant:"overlay",border:!0,className:"vgai-camera-info vgai-chrome-island vgai-glass-island","data-island-scale":"compact",children:e.jsxs(P,{gap:8,align:"center",style:{whiteSpace:"nowrap"},children:[e.jsxs(v,{variant:"code",children:["Pos ",h(o.x)," ",h(o.y)," ",h(o.z)]}),e.jsxs(v,{variant:"code",children:["Target ",h(a.x)," ",h(a.y)," ",h(a.z)]})]})})}function ae(){const t=w(),[,o]=s.useState(0),r=D();return s.useEffect(()=>{const a=setInterval(()=>o(n=>n+1),200);return()=>clearInterval(a)},[]),e.jsxs("div",{className:"vgai-hud-overlay vgai-chrome-island vgai-glass-island","data-island-scale":"compact","data-hud-border":"strong",style:{position:"absolute",top:"var(--vgai-viewport-overlay-hud-top, 48px)",right:8,padding:"6px 10px",pointerEvents:"auto",fontSize:"var(--vgai-font-base)",color:f.content.primary,fontFamily:f.typography.mono,lineHeight:"16px"},children:[e.jsxs("div",{children:["FPS: ",t.fps.toFixed(0)]}),e.jsxs("div",{children:["Draw: ",t.drawCalls]}),e.jsxs("div",{children:["Tris: ",t.triangles.toLocaleString()]}),e.jsxs("div",{children:["Frame: ",t.frameTime.toFixed(1),"ms"]}),r!==null&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:["Heap: ",r.heapUsedMB===null?"n/a":`${r.heapUsedMB.toFixed(0)}MB`,r.heapLimitMB===null?"":` / ${r.heapLimitMB.toFixed(0)}MB`]}),e.jsxs("div",{children:["Mount epochs: ",r.mountEpochs]}),e.jsxs("div",{children:["Canvas: ",r.canvasMB.toFixed(1),"MB ×",r.canvases]}),r.textures!==void 0&&e.jsxs("div",{children:["GPU: ",r.textures," tex, ",r.geometries??0," geo",r.programs===void 0?"":`, ${r.programs} prog`]})]})]})}function ie({store:t,documentId:o}){s.useSyncExternalStore(t.shell.subscribe,t.shell.getSnapshot),s.useSyncExternalStore(E,k),s.useSyncExternalStore(V,T),s.useSyncExternalStore(M,O);const{adapter:r}=L(t.shell),a=X(o);s.useSyncExternalStore(a?.subscribe??le,a?.getSnapshot??ce),s.useSyncExternalStore(B,b);const n=H(o),i=N(),u=I(),m=i.viewName==="bar"||i.viewName==="menu",[p,l]=s.useState(null),y=()=>p?.closest(".vgai-dock-document-content")?.querySelector(':scope > .vgai-stage-bar [data-stage-bar-slot="display"]')??null,g=s.useId(),x=y(),d=x&&(x.dataset.owner===void 0||x.dataset.owner===g)?x:null,[,A]=s.useReducer(c=>c+1,0);s.useEffect(()=>{const c=y();c&&c.dataset.owner===void 0&&(c.dataset.owner=g),(c&&c.dataset.owner===g?c:null)!==d&&A()}),s.useEffect(()=>()=>{d?.dataset.owner===g&&delete d.dataset.owner},[d,g]);const S=e.jsxs($,{label:"Viewport display",className:"vgai-viewport-toolbar vgai-viewport-toolbar-right vgai-stage-display",children:[i.viewName==="bar"&&a?e.jsx(j,{shell:t.shell,documentId:o,label:oe(a.viewport,a.projection(),"long")}):null,e.jsx(C,{text:`Grid: ${n?"On":"Off"}`,children:e.jsx(z,{"aria-label":"Toggle grid","aria-pressed":n,size:"comfortable",onClick:()=>G(o,!n),children:e.jsx(F,{icon:U,size:"md"})})}),e.jsx(pe,{store:t,word:u.helpers}),e.jsx(te,{mode:ne(a)??t.shadingMode,onChange:c=>a?a.setMode(c):t.setShadingMode(c),words:u.shading}),m?null:e.jsx(j,{shell:t.shell,documentId:o}),e.jsx(me,{adapter:r,store:t})]});return e.jsxs(e.Fragment,{children:[e.jsx("span",{ref:l,hidden:!0}),d?Y.createPortal(S,d):S]})}function ne(t){return t?.presentation().mode??null}const le=()=>()=>{},ce=()=>0,me=s.memo(function({adapter:o,store:r}){const[,a]=s.useReducer(i=>i+1,0);s.useEffect(()=>o.subscribe?.(a),[o]);const n=s.useMemo(()=>W(o),[o,r.shell.contentVersion]);return n===0?null:e.jsx(C,{text:`Open Light Explorer · ${n} ${n===1?"light":"lights"}`,children:e.jsx(z,{"aria-label":"Open Light Explorer",size:"comfortable",onClick:()=>q(J.lightExplorer.id),children:e.jsx(F,{icon:_,size:"md"})})})});function pe({store:t,word:o}){const r=[{key:"bounds",label:"Bounds"},{key:"lights",label:"Lights"},{key:"cameras",label:"Cameras"},{key:"colliders",label:"Colliders"},{key:"joints",label:"Joints"},{key:"particles",label:"Particle Emitters"},{key:"lod",label:"LOD"},{key:"audio",label:"Audio"},{key:"splines",label:"Splines"},{key:"navmesh",label:"NavMesh"},{key:"constraints",label:"Constraints"},{key:"reflectionProbes",label:"Reflection Probes"},{key:"triggerVolumes",label:"Trigger Volumes"},{key:"skeletons",label:"Skeletons"},{key:"weights",label:"Weights"},{key:"cursor",label:"3D Cursor"},{key:"empties",label:"Empties"}];return e.jsx(se,{label:"Helpers",...o!==void 0?{word:o}:{},master:{enabled:t.shell.showHelpers,onToggle:()=>t.shell.toggleHelpers()},choices:r.map(a=>({id:a.key,label:a.label,enabled:t.shell.helperVisibility[a.key],onToggle:()=>t.shell.toggleHelperType(a.key)}))})}function ft({store:t,documentId:o,stage:r,active:a,chrome:n}){const i=r?.store??t;s.useSyncExternalStore(t.shell.subscribe,t.shell.getShellSnapshot??t.shell.getSnapshot),s.useSyncExternalStore(i.shell.subscribe,i.shell.getShellSnapshot??i.shell.getSnapshot),s.useSyncExternalStore(V,T),s.useSyncExternalStore(M,O),s.useSyncExternalStore(E,k);const u=K(t.shell,o,n),m=Z(u);s.useSyncExternalStore(B,b,b);const p=Q(o).overlays.cameraReadout;return e.jsxs(e.Fragment,{children:[m?e.jsxs(e.Fragment,{children:[e.jsx(ie,{store:i,documentId:o}),p?e.jsx(re,{}):null]}):null,u.surface==="three"&&i.showStats&&e.jsx(ae,{}),a?e.jsx(ee,{}):null]})}export{ft as StageOverlaySet};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a}from"./jsx-runtime-DPjLkJKQ.js";import{dO as n,dP as m,J as l,dQ as f,ea as c,dR as S}from"./index-BRJMIUK0.js";import{r as e}from"./index-nmcBqr7Y.js";import{t as T}from"./StageHost-B89HKcvd.js";import{t as u}from"./editor-shell-store-ChLcVeNB.js";import{a as h,T as g}from"./Toolbar-DkTHnQto.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-D_NuPfjr.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./three-state-DwFE3ay2.js";import"./standard-viewport-dressing-BCA51Tum.js";import"./content-bounds-BeuIXKYu.js";import"./hierarchy-marks-Cc_3lxw6.js";import"./workspace-arrangement-BdAlBwvd.js";import"./three.core-3arARmh6.js";import"./editor-layers-BDJnAAzj.js";import"./environment-Dg-YaLsA.js";import"./three.module-BLhyNg0e.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./user-data-Bpj7diUS.js";import"./preview-renderer-BrYNFV1p.js";import"./renderer-ownership-BovSEcLv.js";import"./live-mixers-B-bwLZ7c.js";import"./live-gesture-lock-DJbrjOqf.js";import"./output-pass-HurwNl0G.js";import"./Pass-D1MRT672.js";import"./three-contract-Dkt6PmWY.js";import"./model-inspection-CXHxrafK.js";import"./three-viewport-presentation-B0z_cECu.js";import"./clip-planes-CnAI6DZn.js";import"./three-TCuY32m_.js";import"./component-instance-root-B0C5oNEm.js";import"./entity-object-JmYMfLsx.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./model-thumbnail-BEKPWg4l.js";import"./studio-environment-DRxxq_QX.js";import"./KTX2Loader-CaqVE6nY.js";import"./GLTFLoader-KeoruJgS.js";import"./BufferGeometryUtils-B22h7jo4.js";import"./OrbitControls-B13MKuwC.js";import"./LineSegments2-DN9pUfWA.js";import"./three.quarks.esm-C_HmSKXo.js";import"./three-integration-BdN5Nhsg.js";import"./host-hierarchy-objects-BV3WqU2w.js";import"./layered-pick-kiQf53t5.js";import"./root-stacking-BEd9ZvxC.js";import"./object3d-document-session-registry-DJDEDM0p.js";import"./viewport-door-Bj_ZIP85.js";import"./asset-preview-B1tDziF1.js";import"./bitmap-label-Ct4k6ehY.js";import"./scene-framing-BQt72ZCw.js";import"./source-object3d-authoring-adapter-DF679Ncb.js";import"./three-projection-core-CG01r5Ta.js";import"./editor-presentation-activity-C7SNSmTd.js";import"./transport-strip-CUjNltnb.js";import"./viewport-surface-status-cwCiBGa7.js";import"./transform-mode-request-DzD9aUNA.js";const s=new WeakMap;function x(r,t){if(r===null)return;const o=s.get(r)??new Set;if(s.set(r,o),o.has(t))return;o.add(t);const i={select:"select",transform:"combined",move:"translate",rotate:"rotate",scale:"scale"};r.shell.setTransformMode(i[S(t).interaction.bootTool])}function Cr({documentId:r}){e.useSyncExternalStore(n,m,m);const t=l(),o=T(r),i=f(r);if(e.useEffect(()=>{o==="gizmo"&&x(i&&u(i),r)},[o,i,r]),o==="none")return null;const p=o==="modal"?c(r):null;return a.jsx(g,{store:i??t,...p?{door:p}:{}})}function Dr({documentId:r}){e.useSyncExternalStore(n,m,m);const t=l();return a.jsx(h,{store:f(r)??t})}export{Dr as ThreeStageTransformControls,Cr as ThreeStageTransformTools};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{af as d,ag as k,ah as b,ai as N}from"./index-BRJMIUK0.js";import{r as m}from"./collaboration-presence-BVIQuN1l.js";import{e as v,h as P,l as I}from"./play-mode-DICV4cKP.js";import"./index-nmcBqr7Y.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./jsx-runtime-DPjLkJKQ.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./adapter-runtime-bindings-4cmsRvRh.js";import"./native-debug-module-2_HVupdg.js";import"./native-entry-surface-BE8LJNdu.js";import"./debug-registry-P0_YQGWd.js";import"./contract-system-adapters-Bic_7sev.js";import"./game-contract-seams-BnPFGLll.js";import"./seeded-random-BgCwIAAU.js";import"./game-audio-CaGKzia4.js";import"./game-network-Ct2FQYmu.js";import"./index-OZVqp6xS.js";import"./index-Da9JhEvW.js";import"./rapier-physics-adapter-CaZqWLu0.js";import"./events-156d8d12.esm-CYeuVCYr.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./index-bQE2NA0D.js";import"./live-project-verbs-C3LzprCe.js";import"./capability-coverage-DZ-onC5j.js";import"./edit-mode-authoring-DeCxPcHM.js";import"./json-history-resource-DwS10tqD.js";import"./binding-resolver-dE0GnZT5.js";import"./adapter-surface-Y37Nzcyw.js";import"./entry-adjudication-Dc18TIqT.js";import"./structural-signature-Dc7skRiy.js";import"./webgl-frame-capture-DdJkM2mi.js";import"./realm-services-CnY105XU.js";import"./canvas-entry-runtime-UNYuSfG0.js";import"./three-ingest-runtime-B7rtg3QE.js";import"./EffectComposer-BEAt0PtQ.js";import"./CopyShader-BzTUYzf6.js";import"./ShaderPass-DTnDQXm0.js";import"./Pass-D1MRT672.js";import"./CSS3DRenderer-BsAqfavI.js";import"./relative-path-guard-GiM7Lsz8.js";import"./react-root-BHA-cdrW.js";import"./editor-presentation-activity-C7SNSmTd.js";import"./active-ingest-DA426a81.js";import"./ingest-source-persistence-Dmdo-UBp.js";import"./pixi-story-model-DNkfnWUV.js";import"./surface-content-Dg9Kkazf.js";import"./viewport-root-presentation-vgxsTyj4.js";import"./mounted-authoring-Clftxx0x.js";import"./entity-object-JmYMfLsx.js";import"./user-data-Bpj7diUS.js";import"./workspace-arrangement-BdAlBwvd.js";import"./three-contract-Dkt6PmWY.js";import"./three-TCuY32m_.js";import"./editor-layers-BDJnAAzj.js";import"./component-instance-root-B0C5oNEm.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./three-authoring-adapter-htbnVej2.js";import"./source-persistence-backend-CwLYVPXj.js";import"./three-projection-core-CG01r5Ta.js";import"./body-marks-RKb_LTwL.js";import"./user-data-dHvLdpwM.js";import"./object-marks-DwvIEBOK.js";import"./structural-ids-Br2zjINh.js";import"./object3d-authoring-subject-BDrxd1GA.js";import"./r3f-physics-binding-DzrbpqjM.js";import"./deferred-ingest-play-BdR4qGk6.js";import"./rrweb-Cd2ifIRP.js";import"./react-world-authoring-adapter-DOjv2pYm.js";import"./board-guides-BEKPgD9M.js";import"./relative-import-specifier-BFKIWEWs.js";import"./story-arg-descriptors-Ek86ExX7.js";import"./inspect-Dr4qvDpJ.js";import"./inference-diagnostics-xecGdohW.js";import"./writer-tw6EcuVO.js";import"./three-state-DwFE3ay2.js";import"./editor-shell-store-ChLcVeNB.js";import"./output-pass-HurwNl0G.js";import"./viewport-door-Bj_ZIP85.js";const $t="workspace.service";function tr(){let i=null;const p=new Set;let e=null,n=null,a=d();const l=()=>{e?.(),e=null,n?.(),n=null,a=null},y=k(u=>{const w=u.participants.find(r=>r.participantId===b)?.capabilities.includes("test")??!1,t=u.activePlaytest,s=I();if(!w||!t){i=null,l(),m({playtest:null}),s?.mode==="team"&&P(),t||p.clear();return}s?.mode==="team"&&s.id===t.id||i!==t.id&&(p.has(t.id)||(i=t.id,m({playtest:{id:t.id,play:"starting",networking:"connecting",roomName:null,problem:null}}),v(t.seed,{mode:"team",id:t.id,roomKey:t.roomKey,revision:t.revision,participantId:b}).then(()=>{if(i!==t.id)return;l();const r=()=>{const o=d(),c=o?.getConnectionState?.(),f=o?.getRoomInfo?.();m({playtest:{id:t.id,play:"ready",networking:o?c==="connected"&&f?"ready":c==="error"?"error":"connecting":"not-declared",roomName:f?.roomName??null,problem:c==="error"?"The game networking adapter reported an error.":null}})},g=()=>{const o=d();o!==a&&(e?.(),a=o,e=o?.subscribe(r)??null),r()};n=N(g),g()}).catch(r=>{i===t.id&&(i=null,p.add(t.id),m({playtest:{id:t.id,play:"error",networking:"error",roomName:null,problem:r instanceof Error?r.message:String(r)}}))})))});return()=>{l(),y()}}export{$t as point,tr as start};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/r3f-design-session-B5GsZI5M.js","assets/index-BRJMIUK0.js","assets/index-nmcBqr7Y.js","assets/_commonjsHelpers-D6-XlEtG.js","assets/index-D_NuPfjr.js","assets/jsx-runtime-DPjLkJKQ.js","assets/index-CtzuWnCS.js","assets/index-CinJrH5C.js","assets/index-FUuS4qwW.js","assets/client-DNXj_opT.js","assets/index-0Lm0Nf1M.css","assets/edit-mode-authoring-DeCxPcHM.js","assets/adapter-runtime-bindings-4cmsRvRh.js","assets/native-debug-module-2_HVupdg.js","assets/native-entry-surface-BE8LJNdu.js","assets/debug-registry-P0_YQGWd.js","assets/contract-system-adapters-Bic_7sev.js","assets/game-contract-seams-BnPFGLll.js","assets/seeded-random-BgCwIAAU.js","assets/game-audio-CaGKzia4.js","assets/game-network-Ct2FQYmu.js","assets/index-OZVqp6xS.js","assets/index-Da9JhEvW.js","assets/rapier-physics-adapter-CaZqWLu0.js","assets/events-156d8d12.esm-CYeuVCYr.js","assets/three.module-BLhyNg0e.js","assets/three.core-3arARmh6.js","assets/index-bQE2NA0D.js","assets/live-project-verbs-C3LzprCe.js","assets/capability-coverage-DZ-onC5j.js","assets/entry-adjudication-Dc18TIqT.js","assets/structural-signature-Dc7skRiy.js","assets/webgl-frame-capture-DdJkM2mi.js","assets/realm-services-CnY105XU.js","assets/canvas-entry-runtime-UNYuSfG0.js","assets/three-ingest-runtime-B7rtg3QE.js","assets/EffectComposer-BEAt0PtQ.js","assets/CopyShader-BzTUYzf6.js","assets/ShaderPass-DTnDQXm0.js","assets/Pass-D1MRT672.js","assets/CSS3DRenderer-BsAqfavI.js","assets/scene-framing-BQt72ZCw.js","assets/editor-layers-BDJnAAzj.js","assets/workspace-arrangement-BdAlBwvd.js","assets/assets-BcrMQHRv.js","assets/loader-BTUKnX5Q.js","assets/KTX2Loader-CaqVE6nY.js","assets/GLTFLoader-KeoruJgS.js","assets/BufferGeometryUtils-B22h7jo4.js","assets/create-runtime-DBfUy0SO.js","assets/adapter-surface-Y37Nzcyw.js","assets/binding-Bmxqznjk.js","assets/root-stacking-BEd9ZvxC.js","assets/setup-renderer-Cwkl1Ar6.js","assets/index-DHhMOs_s.js","assets/defaults-DKiBJCPN.js","assets/render-settings-DS5leCed.js","assets/render-features-rxbawsRb.js","assets/loop-gate-report-N52EWFGD.js","assets/system-slot-E2mEdiih.js","assets/user-data-dHvLdpwM.js","assets/object-marks-DwvIEBOK.js","assets/performance-profiler-OwnXQX0M.js","assets/live-gesture-lock-DJbrjOqf.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{_ as s,ax as n}from"./index-BRJMIUK0.js";import{r as a}from"./design-time-mount-registry-DUpXCg1U.js";import{q as c}from"./edit-mode-authoring-DeCxPcHM.js";import{a as u}from"./json-history-resource-DwS10tqD.js";import{o as h}from"./three-authoring-adapter-htbnVej2.js";import{t as i}from"./editor-shell-store-ChLcVeNB.js";import"./index-nmcBqr7Y.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./jsx-runtime-DPjLkJKQ.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./component-instance-root-B0C5oNEm.js";import"./user-data-Bpj7diUS.js";import"./workspace-arrangement-BdAlBwvd.js";import"./source-persistence-backend-CwLYVPXj.js";import"./ingest-source-persistence-Dmdo-UBp.js";import"./three-projection-core-CG01r5Ta.js";import"./editor-layers-BDJnAAzj.js";import"./three-TCuY32m_.js";import"./entity-object-JmYMfLsx.js";import"./three-contract-Dkt6PmWY.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./three.core-3arARmh6.js";import"./body-marks-RKb_LTwL.js";import"./user-data-dHvLdpwM.js";import"./object-marks-DwvIEBOK.js";import"./structural-ids-Br2zjINh.js";import"./object3d-authoring-subject-BDrxd1GA.js";import"./rapier-physics-adapter-CaZqWLu0.js";import"./r3f-physics-binding-DzrbpqjM.js";import"./output-pass-HurwNl0G.js";import"./three.module-BLhyNg0e.js";import"./Pass-D1MRT672.js";const U="workspace.service";function X(){const r=s(()=>import("./r3f-design-session-B5GsZI5M.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63]));r.catch(()=>{});const m=n("three",(t,o)=>h(i(t),()=>i(t).scene,o,u(o))),e=a({kind:"three",owner:"@volter/editor-game/three/three-authoring",async mountWorldRootSession(t){const o=t,{mountR3FDesignSession:p}=await r;return p(o.store,o.composite,o.renderer)}});return c(),()=>{e(),m()}}export{U as point,X as start};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as r}from"./three-integration-BdN5Nhsg.js";import"./index-BRJMIUK0.js";import"./index-nmcBqr7Y.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./jsx-runtime-DPjLkJKQ.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./host-hierarchy-objects-BV3WqU2w.js";import"./renderer-ownership-BovSEcLv.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./preview-renderer-BrYNFV1p.js";import"./environment-Dg-YaLsA.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./layered-pick-kiQf53t5.js";import"./root-stacking-BEd9ZvxC.js";import"./user-data-Bpj7diUS.js";import"./workspace-arrangement-BdAlBwvd.js";import"./model-thumbnail-BEKPWg4l.js";import"./studio-environment-DRxxq_QX.js";import"./KTX2Loader-CaqVE6nY.js";import"./GLTFLoader-KeoruJgS.js";import"./BufferGeometryUtils-B22h7jo4.js";import"./object3d-document-session-registry-DJDEDM0p.js";import"./three-state-DwFE3ay2.js";import"./editor-shell-store-ChLcVeNB.js";import"./output-pass-HurwNl0G.js";import"./Pass-D1MRT672.js";import"./editor-layers-BDJnAAzj.js";import"./entity-object-JmYMfLsx.js";import"./three-contract-Dkt6PmWY.js";import"./hierarchy-marks-Cc_3lxw6.js";import"./component-instance-root-B0C5oNEm.js";import"./viewport-door-Bj_ZIP85.js";import"./content-bounds-BeuIXKYu.js";import"./asset-preview-B1tDziF1.js";import"./bitmap-label-Ct4k6ehY.js";const Q="workspace.service";function R(){return r()}export{Q as point,R as start};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{de as c,df as f,dg as l,dh as u,di as m}from"./index-BRJMIUK0.js";function g(t,n){if(t.setTransformMode(n),n==="select")return;const r=[...t.selectedEntityIds];if(r.length===0)return;const a=c(t),s=((a===null?null:f(a)?.adapter)??l(t).adapter).transforms?.editability;if(!s)return;let e;for(const i of r){const o=u(d=>s(i,d));if(!o.locked)return;e??=o.reason}e&&m(e)}export{g as r};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./jsx-runtime-DPjLkJKQ.js";import{r as c}from"./index-nmcBqr7Y.js";import"./index-CtzuWnCS.js";import{ad as b,aJ as v,$ as g,a0 as r,aK as j,aI as t}from"./index-BRJMIUK0.js";const S=[.25,.5,1,2];function y(a,i){const l=Math.round(a*i);return`${a.toFixed(2)}s · f${l}`}function I({transport:a}){const i=c.useSyncExternalStore(c.useCallback(e=>a?a.subscribe(e):()=>{},[a]),c.useCallback(()=>a?.snapshot()??null,[a]));if(!a||!i||i.activeSubject===null)return null;const l=i.driver==="world",n=i.playbackState==="playing",{start:x,end:h,fps:o,loop:m}=i.range,d=i.subjects.find(e=>e.id===i.activeSubject),p=i.subjects.length>1?i.subjects:null,u=a.activeClips();return s.jsxs("section",{"aria-label":"Transport","data-testid":"stage-transport-strip",style:{display:"flex",alignItems:"center",gap:"var(--vgai-space-2)",padding:"var(--vgai-space-1) var(--vgai-space-3)",borderTop:`var(--vgai-stroke-resting) solid ${b.boundary.default}`,background:b.surface.raised},children:[s.jsx(v,{size:"compact","aria-label":n?"Pause":"Play",disabled:l,onClick:()=>n?a.pause():a.play(),children:s.jsx(g,{icon:n?r.transport.pause:r.transport.play})}),s.jsx(v,{size:"compact","aria-label":"Stop",disabled:l,onClick:()=>a.stop(),children:s.jsx(g,{icon:r.transport.stop})}),s.jsx(j,{"aria-label":"Playhead",type:"range",min:x,max:h,step:1/o,value:i.time,disabled:l,onChange:e=>a.seek(Number(e.target.value)),style:{flex:1}}),s.jsx(t,{as:"span",variant:"caption",children:y(i.time,o)}),p?s.jsx("select",{"aria-label":"Subject",value:i.activeSubject,disabled:l,onChange:e=>a.setActiveSubject(e.target.value),children:p.map(e=>s.jsx("option",{value:e.id,children:e.label},e.id))}):null,u?s.jsx("select",{"aria-label":"Clip",disabled:l,onChange:e=>a.setActiveClip(e.target.value),children:u.map(e=>s.jsx("option",{value:e.id,children:e.label},e.id))}):null,s.jsxs("label",{style:{display:"flex",alignItems:"center",gap:"var(--vgai-space-1)"},children:[s.jsx("input",{type:"checkbox",checked:m,disabled:l,onChange:e=>a.setLoop(e.target.checked)}),s.jsx(t,{as:"span",variant:"caption",children:"Loop"})]}),s.jsx("select",{"aria-label":"Speed",value:String(i.timeScale),disabled:l,onChange:e=>a.setTimeScale(Number(e.target.value)),children:S.map(e=>s.jsxs("option",{value:String(e),children:[e,"×"]},e))}),l?s.jsx(t,{as:"span",variant:"caption",children:"The world is driving time (Play); pause the game to scrub"}):d?s.jsx(t,{as:"span",variant:"caption",children:d.label}):null]})}export{I as T};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as r}from"./jsx-runtime-DPjLkJKQ.js";import{q as t}from"./index-BRJMIUK0.js";import{r as m}from"./index-nmcBqr7Y.js";import{P as p}from"./PlayBar-bT8Xdrap.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-D_NuPfjr.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./configurations-BXU4GGbV.js";import"./run-selection-DzEkGesJ.js";import"./play-mode-DICV4cKP.js";import"./adapter-runtime-bindings-4cmsRvRh.js";import"./native-debug-module-2_HVupdg.js";import"./native-entry-surface-BE8LJNdu.js";import"./debug-registry-P0_YQGWd.js";import"./contract-system-adapters-Bic_7sev.js";import"./game-contract-seams-BnPFGLll.js";import"./seeded-random-BgCwIAAU.js";import"./game-audio-CaGKzia4.js";import"./game-network-Ct2FQYmu.js";import"./index-OZVqp6xS.js";import"./index-Da9JhEvW.js";import"./rapier-physics-adapter-CaZqWLu0.js";import"./events-156d8d12.esm-CYeuVCYr.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./index-bQE2NA0D.js";import"./live-project-verbs-C3LzprCe.js";import"./capability-coverage-DZ-onC5j.js";import"./edit-mode-authoring-DeCxPcHM.js";import"./json-history-resource-DwS10tqD.js";import"./binding-resolver-dE0GnZT5.js";import"./adapter-surface-Y37Nzcyw.js";import"./entry-adjudication-Dc18TIqT.js";import"./structural-signature-Dc7skRiy.js";import"./webgl-frame-capture-DdJkM2mi.js";import"./realm-services-CnY105XU.js";import"./canvas-entry-runtime-UNYuSfG0.js";import"./three-ingest-runtime-B7rtg3QE.js";import"./EffectComposer-BEAt0PtQ.js";import"./CopyShader-BzTUYzf6.js";import"./ShaderPass-DTnDQXm0.js";import"./Pass-D1MRT672.js";import"./CSS3DRenderer-BsAqfavI.js";import"./relative-path-guard-GiM7Lsz8.js";import"./react-root-BHA-cdrW.js";import"./editor-presentation-activity-C7SNSmTd.js";import"./active-ingest-DA426a81.js";import"./ingest-source-persistence-Dmdo-UBp.js";import"./pixi-story-model-DNkfnWUV.js";import"./surface-content-Dg9Kkazf.js";import"./viewport-root-presentation-vgxsTyj4.js";import"./mounted-authoring-Clftxx0x.js";import"./entity-object-JmYMfLsx.js";import"./user-data-Bpj7diUS.js";import"./workspace-arrangement-BdAlBwvd.js";import"./three-contract-Dkt6PmWY.js";import"./three-TCuY32m_.js";import"./editor-layers-BDJnAAzj.js";import"./component-instance-root-B0C5oNEm.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./three-authoring-adapter-htbnVej2.js";import"./source-persistence-backend-CwLYVPXj.js";import"./three-projection-core-CG01r5Ta.js";import"./body-marks-RKb_LTwL.js";import"./user-data-dHvLdpwM.js";import"./object-marks-DwvIEBOK.js";import"./structural-ids-Br2zjINh.js";import"./object3d-authoring-subject-BDrxd1GA.js";import"./r3f-physics-binding-DzrbpqjM.js";import"./deferred-ingest-play-BdR4qGk6.js";import"./rrweb-Cd2ifIRP.js";import"./react-world-authoring-adapter-DOjv2pYm.js";import"./board-guides-BEKPgD9M.js";import"./relative-import-specifier-BFKIWEWs.js";import"./story-arg-descriptors-Ek86ExX7.js";import"./inspect-Dr4qvDpJ.js";import"./inference-diagnostics-xecGdohW.js";import"./writer-tw6EcuVO.js";import"./three-state-DwFE3ay2.js";import"./editor-shell-store-ChLcVeNB.js";import"./output-pass-HurwNl0G.js";import"./viewport-door-Bj_ZIP85.js";const Io="workspace.header",Jo=0;function Ko(){const{project:o}=t();return m.useSyncExternalStore(o.subscribe,o.mounts,o.mounts)?r.jsx(p,{}):null}export{Ko as default,Jo as order,Io as point};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/story-capture-BmnwHGDV.js","assets/react-story-board-GaXqr03H.js","assets/jsx-runtime-DPjLkJKQ.js","assets/_commonjsHelpers-D6-XlEtG.js","assets/index-nmcBqr7Y.js","assets/index-D_NuPfjr.js","assets/index-CtzuWnCS.js","assets/index-CinJrH5C.js","assets/index-BRJMIUK0.js","assets/index-FUuS4qwW.js","assets/client-DNXj_opT.js","assets/index-0Lm0Nf1M.css","assets/bitmap-label-Ct4k6ehY.js","assets/StoryPreviewMount-D2lg37et.js","assets/story-presentation-DMSYRWaz.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{dy as s,ak as m,dz as p,au as n,_ as c,b7 as d}from"./index-BRJMIUK0.js";import{a as u}from"./jsx-runtime-DPjLkJKQ.js";import{d as l,p as v,r as P}from"./design-time-layers-ChswRUJt.js";import{RootDocumentContent as _}from"./world-documents-DBybpBq8.js";import{U as w}from"./component-board.service-q_TM9BCw.js";import"./index-nmcBqr7Y.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./root-stacking-BEd9ZvxC.js";import"./edit-mode-authoring-DeCxPcHM.js";import"./design-time-mount-registry-DUpXCg1U.js";import"./react-story-board-GaXqr03H.js";import"./react-canvas-navigation-Cp3cOHJa.js";import"./component-board-registry-DrIa2csL.js";import"./surface-state-1lTOi8FD.js";import"./board-guides-BEKPgD9M.js";import"./CanvasSceneViewport-C_mapCwC.js";import"./RootSelectionOverlay-CpaGluQu.js";import"./eyedropper-session-bjPXnfeX.js";import"./layered-pick-kiQf53t5.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./inspect-Dr4qvDpJ.js";import"./inference-diagnostics-xecGdohW.js";import"./Toolbar-DkTHnQto.js";import"./transform-mode-request-DzD9aUNA.js";import"./TransientHint-BpDLhRLd.js";import"./ReactCanvasControls-CnJrPj-B.js";import"./story-media-presence-BqRMu572.js";const y={revision:()=>JSON.stringify(d().map(({id:i,modulePath:t})=>[i,t])),subscribe:m,capture:async({width:i,height:t})=>{const{captureDomStoryBoardPreview:o}=await c(async()=>{const{captureDomStoryBoardPreview:e}=await import("./story-capture-BmnwHGDV.js");return{captureDomStoryBoardPreview:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]));return o(i,t)}};function Y({store:i,composite:t}){const o=l(t).find(r=>r.kind==="dom")??v(),e=r=>u.jsx(_,{...r,composite:t,descriptor:o,store:i});s({id:p,title:w,kind:"world",workspaceRole:"authored-subject",provenance:{rootId:o.worldId,...o.path?{sourcePath:o.path}:{}},Content:e,preview:y,presentation:()=>{const r=n()?.rootPath,a=r?P(r,o.worldId):void 0;return{kind:"workspace",id:p,...a?{story:a}:{}}}},{category:"canvas",default:!t.childAdapters().some(r=>r.kind==="three"||r.kind==="canvas")})}export{Y as installUiBoard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as c}from"./jsx-runtime-DPjLkJKQ.js";import{dp as W,dq as K,e$ as j,fu as q,aC as E,fL as $,fM as H,cv as A,fN as Y,cw as M,eK as N,dy as Q,w as J,fO as Z,aN as ee,fP as te,fQ as oe,fR as ne,fS as re,fT as se,fU as ae,fI as ie,cy as ce,fV as le,av as de,fW as P,fX as ue,dw as pe}from"./index-BRJMIUK0.js";import{r as p}from"./index-nmcBqr7Y.js";import{d as fe,m as me}from"./design-time-layers-ChswRUJt.js";import{I as be,B as xe}from"./edit-mode-authoring-DeCxPcHM.js";import{b as he,i as ve}from"./react-canvas-navigation-Cp3cOHJa.js";import{R as T,i as ge}from"./react-story-board-GaXqr03H.js";import{s as ye,c as we,a as Se,b as Re}from"./component-board-registry-DrIa2csL.js";import{e as ke,S as Ie}from"./surface-state-1lTOi8FD.js";import"./index-CtzuWnCS.js";import{c as Ce,d as Ee,r as F,e as G,f as Ae,m as O,b as De,a as je,s as Be}from"./board-guides-BEKPgD9M.js";import{C as V,a as $e,b as Me}from"./CanvasSceneViewport-C_mapCwC.js";import{R as ze}from"./ReactCanvasControls-CnJrPj-B.js";import{R as Te}from"./RootSelectionOverlay-CpaGluQu.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./index-D_NuPfjr.js";import"./index-CinJrH5C.js";import"./root-stacking-BEd9ZvxC.js";import"./design-time-mount-registry-DUpXCg1U.js";import"./Toolbar-DkTHnQto.js";import"./transform-mode-request-DzD9aUNA.js";import"./TransientHint-BpDLhRLd.js";import"./eyedropper-session-bjPXnfeX.js";import"./layered-pick-kiQf53t5.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./inspect-Dr4qvDpJ.js";import"./inference-diagnostics-xecGdohW.js";const y=16,z="rgba(255, 82, 82, 0.9)",U="rgba(18, 22, 26, 0.92)",D="rgba(255, 255, 255, 0.28)";function _e(s){return[10,25,50,100,250,500,1e3,2500,5e3].find(n=>n*s>=60)??1e4}function L(s){return Math.abs(s)>=1e3?`${s/1e3}k`:String(s)}function Ne({docId:s,containerRef:l}){const n=p.useSyncExternalStore(W,K),x=p.useSyncExternalStore(Ce,()=>Ee(s)),[r,d]=p.useState(null),g=p.useRef(null);p.useEffect(()=>{const t=l.current;if(!t)return;const o=t.getBoundingClientRect();return F(s,{originX:o.left,originY:o.top,panX:n.x,panY:n.y,zoom:n.zoom}),()=>F(s,null)},[s,l,n.x,n.y,n.zoom]);const f=(t,o)=>Math.round((t-(o==="x"?n.x:n.y))/n.zoom),u=(t,o)=>(o==="x"?n.x:n.y)+t*n.zoom,m=t=>{const o=l.current?.getBoundingClientRect();return o?{x:t.clientX-o.left,y:t.clientY-o.top}:{x:0,y:0}},R=t=>o=>{o.preventDefault(),o.currentTarget.setPointerCapture(o.pointerId);const e=m(o);d({kind:"place",axis:t,id:null,at:t==="x"?e.x:e.y})},S=t=>o=>{o.preventDefault(),o.stopPropagation(),o.currentTarget.setPointerCapture(o.pointerId);const e=m(o);d({kind:"move",axis:t.axis,id:t.id,at:t.axis==="x"?e.x:e.y})},k=t=>{if(!r)return;const o=m(t),e=r.axis==="x"?o.x:o.y;d({...r,at:e}),r.kind==="move"&&r.id&&O(s,r.id,f(e,r.axis))},I=t=>{if(!r)return;const o=m(t),e=r.axis==="x"?o.x:o.y,i=e<=y;r.kind==="place"?i||Ae(s,r.axis,f(e,r.axis)):r.id&&(i?G(s,r.id):O(s,r.id,f(e,r.axis))),d(null)},a=t=>{const o=l.current,e=o?t==="x"?o.clientWidth:o.clientHeight:0,i=_e(n.zoom),v=Math.ceil(f(y,t)/i)*i,w=f(e,t),b=[];for(let C=v;C<=w&&b.length<200;C+=i)b.push(C);return b},h={position:"absolute",background:U,zIndex:61,userSelect:"none",touchAction:"none",overflow:"hidden"};return c.jsxs("div",{ref:g,"data-testid":"board-rulers",style:{position:"absolute",inset:0,pointerEvents:"none",zIndex:60},onPointerMove:k,onPointerUp:I,children:[x.map(t=>{const o=u(t.value,t.axis),e=t.axis==="x";return c.jsx("div",{"data-testid":`board-guide-${t.axis}-${t.value}`,title:`${t.axis} = ${t.value} — drag to move, drop on the ruler or double-click to remove`,onPointerDown:S(t),onPointerMove:k,onPointerUp:I,onDoubleClick:()=>G(s,t.id),style:{position:"absolute",pointerEvents:"auto",cursor:e?"col-resize":"row-resize",zIndex:60,...e?{left:o-2,top:0,bottom:0,width:5}:{top:o-2,left:0,right:0,height:5}},children:c.jsx("div",{style:{position:"absolute",background:z,...e?{left:2,top:0,bottom:0,width:1}:{top:2,left:0,right:0,height:1}}})},t.id)}),r&&c.jsx("div",{style:{position:"absolute",background:z,zIndex:62,...r.axis==="x"?{left:r.at,top:0,bottom:0,width:1}:{top:r.at,left:0,right:0,height:1}},children:c.jsx("span",{style:{position:"absolute",...r.axis==="x"?{top:y+4,left:4}:{left:y+4,top:4},fontSize:9,fontFamily:"ui-monospace, monospace",color:z,background:U,padding:"1px 3px",borderRadius:3,whiteSpace:"nowrap"},children:f(r.at,r.axis)})}),c.jsx("div",{"data-testid":"board-ruler-top",onPointerDown:R("y"),style:{...h,top:0,left:y,right:0,height:y,cursor:"row-resize",pointerEvents:"auto"},children:a("x").map(t=>c.jsx("span",{style:{position:"absolute",left:u(t,"x"),bottom:0,borderLeft:`1px solid ${D}`,height:5},children:c.jsx("span",{style:{position:"absolute",left:2,bottom:3,fontSize:8,color:D,fontFamily:"ui-monospace, monospace"},children:L(t)})},t))}),c.jsx("div",{"data-testid":"board-ruler-left",onPointerDown:R("x"),style:{...h,top:y,left:0,bottom:0,width:y,cursor:"col-resize",pointerEvents:"auto"},children:a("y").map(t=>c.jsx("span",{style:{position:"absolute",top:u(t,"y"),right:0,borderTop:`1px solid ${D}`,width:5},children:c.jsx("span",{style:{position:"absolute",top:1,right:3,fontSize:8,color:D,fontFamily:"ui-monospace, monospace",writingMode:"vertical-rl"},children:L(t)})},t))}),c.jsx(Pe,{}),c.jsx("div",{style:{...h,top:0,left:0,width:y,height:y,borderRight:`1px solid ${j.border}`,borderBottom:`1px solid ${j.border}`}})]})}function Pe(){const s=p.useSyncExternalStore(De,je);return s?c.jsxs("button",{type:"button","data-testid":"board-breakpoint-pill",title:"Style edits are scoped to this breakpoint — click to return to Base",onClick:()=>Be(null),style:{position:"absolute",top:y+8,right:12,zIndex:62,pointerEvents:"auto",background:"rgba(18, 22, 26, 0.92)",color:j.accent,border:`1px solid ${j.accent}`,borderRadius:999,fontSize:10,padding:"3px 10px",cursor:"pointer"},children:["@ ",s," · editing this breakpoint — click to clear"]}):null}const Fe="Scene";function Ge({active:s,composite:l,descriptor:n,documentId:x,store:r}){const d=p.useRef(null),g=p.useRef(null),[f]=p.useState(oe),u=n.kind==="canvas",m=u?f:ce;p.useSyncExternalStore(r.subscribe,r.getSnapshot);const R=p.useSyncExternalStore(ne,re),S=p.useSyncExternalStore(se,ae),[k,I]=p.useState(null),a=l.childAdapters().find(b=>b.worldId===n.worldId)?.adapter??k??void 0,h=u&&a?.provenance?.label==="babylon",t=a?.hierarchy.roots()??[],o=new Set(a?.rects?.emptyContainers?.().map(b=>b.id)??[]),e=t.some(b=>!o.has(b.id)),i=ke({surface:u?"Scene":n.kind==="dom"?"UI":"World",rootIds:[n.worldId],playSuspended:r.playState!=="stopped"&&(!a||a.provenance?.source==="boundary"),phase:!a||a.provenance?.source==="boundary"?"loading":"ready",content:!a||a.provenance?.source==="boundary"?"unknown":e?"present":"empty",readiness:R,failures:S,disclosure:a instanceof xe?a.disclosure:null});p.useEffect(()=>{if(a)return ie(x,()=>({adapter:a,nodeId:[...r.selectedEntityIds].find(b=>a.hierarchy.node(b))??null}))},[l,a,x,r]),p.useEffect(()=>{const b=d.current;if(b&&!h)return u?he(b,m):ve(b,m)},[m,h,u]),p.useEffect(()=>{if(!s)return;if(!!!g.current&&d.current){g.current=me(d.current,l,r,[n],(Ve,X)=>I(X),u?{canvasSceneView:f}:void 0,x);return}let C=0,B=0;const _=()=>{if(C+=1,C<2){B=requestAnimationFrame(_);return}pe(x)};return B=requestAnimationFrame(_),()=>cancelAnimationFrame(B)},[s,f,l,n,x,u,r]),p.useEffect(()=>()=>{g.current?.(),g.current=null},[]);const v=le(de(r),r.selectedEntityIds),w=v?.worldId===n.worldId?v:a?.rects?{worldId:n.worldId,kind:"dom",adapter:a}:null;return c.jsxs("div",{ref:d,"data-testid":`world-document:${n.worldId}`,"data-vgai-backdrop-color":s?h?"#111827":u?V:T:void 0,"data-vgai-backdrop-policy":s?"dark-frost":void 0,onPointerDown:()=>ue("viewport"),style:{position:"absolute",inset:0,overflow:"hidden",pointerEvents:"auto",backgroundColor:h?"#111827":u?V:T,touchAction:"none"},children:[h?null:u?c.jsx($e,{view:f,documentId:x}):c.jsx(Oe,{}),c.jsx(Te,{...a?{adapter:a}:{},...u&&!h?{view:f,transformModeAware:!0}:{}},`selection:${P(a)}`),c.jsx(Ie,{explanation:i,testId:`world-surface-status:${n.worldId}`,style:{zIndex:20}}),h?null:u?c.jsx(Me,{active:s,...a?{adapter:a}:{},containerRef:d,view:f,documentId:x},`controls:${P(a)}`):c.jsxs(c.Fragment,{children:[c.jsx(Ne,{docId:n.worldId,containerRef:d}),c.jsx(ze,{containerRef:d,context:w})]})]})}function Oe(){const s=p.useSyncExternalStore(W,K),l=Math.max(8,24*s.zoom),n=Math.max(.7,Math.min(1.4,s.zoom));return c.jsx("div",{"data-testid":"react-design-canvas-backdrop","aria-hidden":"true",style:{position:"absolute",inset:0,pointerEvents:"none",backgroundColor:T,backgroundImage:`radial-gradient(circle, ${ge} ${n}px, transparent ${n}px)`,backgroundPosition:`${s.x}px ${s.y}px`,backgroundSize:`${l}px ${l}px`}})}function vt(s,l){const n=J(),x=l.childAdapters().some(e=>e.role==="world"&&e.kind==="three"),r=l.childAdapters().some(e=>e.kind===be);!x&&!r&&q(E,{discardDirty:!0});const d=new Set,g=[];let f=!1;for(const e of l.childAdapters())e.role==="world"&&e.kind==="three"&&g.push($(e.worldId,E));const u=fe(l),m=u.find(e=>e.kind==="canvas");m&&g.push($(m.worldId,A));const R=new Set([...l.childAdapters().filter(e=>e.role==="world"&&e.kind==="three"),...m?[m]:[]].map(e=>e.worldId)),S=new Map;function k(){for(const e of u){if(R.has(e.worldId)||S.has(e.worldId))continue;const i=Se(e.kind);if(!i)continue;const v=$(e.worldId,i.documentId),w=Z(e.worldId,()=>i.presence()==="absent"?`Root "${e.worldId}" has no document of its own: its design surface is the project's ${i.title} board (${i.documentId}). ${i.absentReason()}`:null);S.set(e.worldId,()=>{w(),v()})}}g.push(H(e=>{const i=ee();if(i.some(w=>w.descriptor.id===e))return null;const v=Re(e);return v?v.presence()==="absent"?v.absentReason():null:`No workspace document is named "${e}". Open in this session: ${i.map(w=>w.descriptor.id).join(", ")||"(none)"}. A component board is present only when the package that owns its medium says this project has one, so a board id can be absent for this project and present for another.`}));function I(e){const i=v=>c.jsx(Ge,{...v,composite:l,descriptor:e,store:s});Q({id:A,title:Fe,kind:"world",workspaceRole:"authored-subject",provenance:{rootId:e.worldId,...e.path?{sourcePath:e.path}:{}},Content:i,presentation:()=>({kind:"world",id:e.worldId})},{category:"scene",default:!x,rootId:e.worldId})}function a(e){d.add(e.documentId);const i=()=>{d.delete(e.documentId)};try{Promise.resolve(e.install({store:s,composite:l})).catch(i)}catch{i()}}function h(){if(!f){k();for(const e of we()){const i=e.presence();if(i===null)continue;const v=d.has(e.documentId);i==="present"!==v&&(i==="present"?a(e):(N(e.documentId),d.delete(e.documentId)))}}}m&&(I(m),d.add(A)),h();const t=ye(h),o=m?A:[...d][0];return te()||(!x&&o!==void 0&&(n===null||n===E||n===Y)?M(o):n?M(n):x&&M(E)),()=>{f=!0,t();for(const e of g)e();for(const e of S.values())e();S.clear();for(const e of d)N(e)}}export{Ge as RootDocumentContent,vt as installRootDocuments};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as o}from"./jsx-runtime-DPjLkJKQ.js";import{EDITOR_LAYER as Ke}from"./editor-layers-BDJnAAzj.js";import{d2 as Oe,$ as V,d$ as Je,aI as te,cF as B,aJ as G,ky as Ye,d_ as Ze,d0 as et,Z as $,gR as tt,ij as rt,hg as at,kz as nt,M as j,B as st,bK as it,kA as Se,bZ as ot,kB as ct,kC as lt,kD as dt,kE as Ce,kF as xe,av as x,ck as ut,kG as mt,bS as pt,bX as ft,kH as Pe,kI as Ee,kJ as je,kK as ht,ad as gt,kL as bt,kM as ke,dw as vt,kN as wt,kO as yt,h4 as St,jw as Ct,jx as xt,gA as Pt,gB as Et,jD as jt,fR as kt,fS as Tt,fT as At,fU as Rt}from"./index-BRJMIUK0.js";import{s as Mt,o as Vt}from"./object3d-document-session-registry-DJDEDM0p.js";import{R as Ot}from"./RootSelectionOverlay-CpaGluQu.js";import{e as Ft,S as Lt}from"./surface-state-1lTOi8FD.js";import{r as f}from"./index-nmcBqr7Y.js";import{t as It}from"./surface-content-Dg9Kkazf.js";import"./index-CtzuWnCS.js";import{s as zt,d as Te,c as Q,t as Wt,p as Fe,v as Ae,b as Dt,e as _t,l as Nt,i as $t}from"./camera-authoring-DYjhU5Zp.js";import{c as Bt}from"./performance-profiler-OwnXQX0M.js";import{m as Gt}from"./renderer-ownership-BovSEcLv.js";import{applyWorldRendererConfig as Qt}from"./renderer-config-CaPR4dB_.js";import{getUserData as Le}from"./user-data-dHvLdpwM.js";import{detectKtx2Support as Ht}from"./loader-BTUKnX5Q.js";import{resolveRenderSettings as Ut}from"./render-settings-DS5leCed.js";import{createSoftParticleDepthPass as Xt}from"./soft-particle-depth-DNGwWJ8c.js";import{ViewportShadingRenderer as qt}from"./viewport-shading-D9BMDb1N.js";import{applyRendererSettings as Kt,applySceneRenderPipeline as Jt}from"./setup-renderer-Cwkl1Ar6.js";import{EffectComposer as Yt,EffectPass as Zt,BlendFunction as er,KernelSize as tr,OutlineEffect as rr}from"./index-DHhMOs_s.js";import{W as ar,T as nr}from"./three.module-BLhyNg0e.js";import{d as sr}from"./design-time-mount-registry-DUpXCg1U.js";import{a as ir}from"./project-authoring-session-C3eusefK.js";import"./three-integration-BdN5Nhsg.js";import{registerPresentedCanvasFrame as or}from"./canvas-preview-frames-C0QTagA3.js";import{i as cr}from"./editor-presentation-activity-C7SNSmTd.js";import{E as lr,s as dr,a as ur,t as mr,b as pr,c as fr,d as hr,r as gr,i as br}from"./three-viewport-presentation-B0z_cECu.js";import{a as Z}from"./entity-object-JmYMfLsx.js";import{w as vr}from"./editor-shell-store-ChLcVeNB.js";import{p as wr}from"./viewport-root-presentation-vgxsTyj4.js";import{d as yr}from"./asset-editor-persistence-BGWIqZdk.js";import{bindStagePresenceMarkers as Sr}from"./stage-presence-markers-DIP7YMcO.js";import{el as Cr,_ as ee,fo as N,d7 as xr,dp as Re}from"./three.core-3arARmh6.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./workspace-arrangement-BdAlBwvd.js";import"./index-D_NuPfjr.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./eyedropper-session-bjPXnfeX.js";import"./layered-pick-kiQf53t5.js";import"./root-stacking-BEd9ZvxC.js";import"./react-story-board-GaXqr03H.js";import"./viewport-editor-controls-BYaAZ_Ku.js";import"./inspect-Dr4qvDpJ.js";import"./inference-diagnostics-xecGdohW.js";import"./object-marks-DwvIEBOK.js";import"./KTX2Loader-CaqVE6nY.js";import"./GLTFLoader-KeoruJgS.js";import"./BufferGeometryUtils-B22h7jo4.js";import"./render-features-rxbawsRb.js";import"./matcap-texture-Dm2c-VQa.js";import"./defaults-DKiBJCPN.js";import"./edit-mode-authoring-DeCxPcHM.js";import"./host-hierarchy-objects-BV3WqU2w.js";import"./preview-renderer-BrYNFV1p.js";import"./environment-Dg-YaLsA.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./user-data-Bpj7diUS.js";import"./model-thumbnail-BEKPWg4l.js";import"./studio-environment-DRxxq_QX.js";import"./three-state-DwFE3ay2.js";import"./hierarchy-marks-Cc_3lxw6.js";import"./component-instance-root-B0C5oNEm.js";import"./three-contract-Dkt6PmWY.js";import"./viewport-door-Bj_ZIP85.js";import"./content-bounds-BeuIXKYu.js";import"./asset-preview-B1tDziF1.js";import"./bitmap-label-Ct4k6ehY.js";import"./index-SS9EugVg.js";import"./standard-viewport-dressing-BCA51Tum.js";import"./clip-planes-CnAI6DZn.js";import"./three-TCuY32m_.js";import"./model-inspection-CXHxrafK.js";import"./OrbitControls-B13MKuwC.js";import"./LineSegments2-DN9pUfWA.js";import"./three.quarks.esm-C_HmSKXo.js";import"./live-gesture-lock-DJbrjOqf.js";import"./scene-framing-BQt72ZCw.js";import"./live-mixers-B-bwLZ7c.js";import"./output-pass-HurwNl0G.js";import"./Pass-D1MRT672.js";import"./mounted-authoring-Clftxx0x.js";import"./collaboration-presence-BVIQuN1l.js";function Pr({previewRef:r}){const{preview:e,previewPinned:s}=Q(),[n,c]=f.useState(!1),i=f.useRef(null);if(f.useEffect(()=>{if(!n)return;const d=E=>{i.current?.contains(E.target)||c(!1)};return document.addEventListener("pointerdown",d),()=>document.removeEventListener("pointerdown",d)},[n]),!e)return null;const m=e.camera.isPerspectiveCamera&&Number.isFinite(e.camera.aspect)?e.camera.aspect:16/9;return o.jsxs("div",{className:"vgai-camera-preview","data-testid":"camera-preview",children:[o.jsxs(Oe,{className:"vgai-camera-preview-header",gap:4,align:"center",children:[o.jsx(V,{icon:Je,size:"sm"}),o.jsx(te,{variant:"label",truncate:!0,className:"vgai-camera-preview-title",title:`${e.name} · ${e.lens}`,children:e.name}),o.jsx(B,{text:s?"Unpin camera preview":"Pin camera preview",children:o.jsx(G,{"aria-label":s?"Unpin camera preview":"Pin camera preview","aria-pressed":s,size:"compact",onClick:Wt,children:o.jsx(V,{icon:Ye,size:"sm"})})}),o.jsxs("div",{ref:i,className:"vgai-camera-preview-menu-anchor",children:[o.jsx(B,{text:"Camera actions",children:o.jsx(G,{"aria-label":"Camera actions","aria-expanded":n,size:"compact",onClick:()=>c(d=>!d),children:o.jsx(V,{icon:Ze,size:"sm"})})}),n?o.jsxs(et,{className:"vgai-camera-preview-menu",children:[o.jsx($,{variant:"ghost",size:"compact",disabled:!e.canAuthorPose,title:e.poseRefusal,onClick:()=>{c(!1),Fe(e)},children:"Pilot Camera"}),o.jsx($,{variant:"ghost",size:"compact",onClick:()=>{c(!1),Ae(e)},children:"View Through Camera"}),o.jsx($,{variant:"ghost",size:"compact",disabled:!e.canAuthorPose,title:e.poseRefusal,onClick:()=>{c(!1),Dt(e)},children:"Align Camera to Current View"})]}):null]})]}),o.jsx("div",{ref:r,className:"vgai-camera-preview-image",style:{aspectRatio:String(Math.max(.5,Math.min(3,m)))},role:"img","aria-label":`Live view through ${e.name}`,onDoubleClick:()=>Ae(e)})]})}function Er(){return o.jsxs("div",{className:"vgai-camera-guides","aria-hidden":"true",children:[o.jsx("div",{className:"vgai-camera-guide vgai-camera-guide-v1"}),o.jsx("div",{className:"vgai-camera-guide vgai-camera-guide-v2"}),o.jsx("div",{className:"vgai-camera-guide vgai-camera-guide-h1"}),o.jsx("div",{className:"vgai-camera-guide vgai-camera-guide-h2"}),o.jsx("div",{className:"vgai-camera-safe-frame"}),o.jsx("div",{className:"vgai-camera-center-mark"})]})}function jr(){const{view:r,guidesVisible:e}=Q();if(!r)return null;const s=r.mode==="pilot";return o.jsxs(o.Fragment,{children:[e?o.jsx(Er,{}):null,o.jsx(tt,{variant:"overlay",border:!0,className:"vgai-camera-view-banner vgai-chrome-island vgai-glass-island","data-testid":"camera-view-banner",children:o.jsxs(Oe,{gap:6,align:"center",children:[o.jsx(rt,{children:s?"PILOTING":"CAMERA VIEW"}),o.jsx(te,{variant:"label",children:r.subject.name}),o.jsx(te,{variant:"caption",tone:"muted",children:"Exact camera view"}),o.jsx(B,{text:e?"Hide composition guides":"Show composition guides",children:o.jsx(G,{"aria-label":e?"Hide composition guides":"Show composition guides","aria-pressed":e,size:"compact",onClick:_t,children:o.jsx(V,{icon:at,size:"sm"})})}),s?null:o.jsx($,{size:"compact",variant:"primary",disabled:!r.subject.canAuthorPose,title:r.subject.poseRefusal,onClick:()=>Fe(r.subject),children:"Pilot"}),o.jsx(B,{text:"Exit camera view",children:o.jsx(G,{"aria-label":"Exit camera view",size:"compact",onClick:Nt,children:o.jsx(V,{icon:nt,size:"sm"})})})]})})]})}function kr({previewRef:r}){return f.useSyncExternalStore(zt,Te,Te),o.jsxs(o.Fragment,{children:[o.jsx(Pr,{previewRef:r}),o.jsx(jr,{})]})}function Tr(r){const e=r,s=e.getExtension("EXT_disjoint_timer_query_webgl2"),n=s!==null&&typeof e.createQuery=="function",c=[];let i=null,m=null;return{begin(){!n||i||(i=e.createQuery(),i&&e.beginQuery(s.TIME_ELAPSED_EXT,i))},end(){!n||!i||(e.endQuery(s.TIME_ELAPSED_EXT),c.push(i),i=null)},poll(){if(!n)return null;if(e.getParameter(s.GPU_DISJOINT_EXT)){for(const d of c.splice(0))e.deleteQuery(d);return null}for(;c.length>0;){const d=c[0];if(!e.getQueryParameter(d,e.QUERY_RESULT_AVAILABLE))break;c.shift(),m=e.getQueryParameter(d,e.QUERY_RESULT)/1e6,e.deleteQuery(d)}return m},dispose(){i&&(e.endQuery(s.TIME_ELAPSED_EXT),e.deleteQuery(i),i=null);for(const d of c.splice(0))e.deleteQuery(d)}}}const Ar=2e4,Rr=250,Mr=5e3;class Vr{#e=0;#t=0;#r=0;#a;constructor(e){this.#a=e}get pending(){return this.#e>0||this.#t>0}begin(e,s){this.#e=e+Ar,this.#t=s?e+Mr:0,this.#r=0,this.tick(e)}tick(e){if(!(!this.pending||e<this.#r)){if(this.#r=e+Rr,this.#t>0&&this.#a.seedFromGameCamera()){this.cancel();return}this.#e>0&&this.#a.frameContent()&&(this.#e=0),e>=this.#e&&(this.#e=0),e>=this.#t&&(this.#t=0)}}cancel(){this.#e=0,this.#t=0}}const Me=new WeakMap;function Or(r,e){if(!r)return e(),!0;if(Me.has(r))return!1;try{return e(),!0}catch(s){const n=s instanceof Error?s.message:String(s);return Me.set(r,n),j.warn(`The Scene view cannot draw this world with the editor's own renderer, and has stopped trying: ${n}. This world was built by a copy of three the editor did not make (a vendored bundle pins its own revision), and the editor draws it with ITS three — across a wide enough revision gap the two disagree about the renderer/material contract. The game itself is unaffected and still drawing: its own canvas is what the Game tab and ${st("screenshot")} show, and hierarchy, selection and inspection all still read the live world. It closes when the game resolves \`three\` to the host's instance — a bare, un-rewritten \`import 'three'\` in its own source.`,"ingest"),!1}}function Fr(){const r=it();r.addEventListener("server-log",s=>{try{Se(JSON.parse(s.data))}catch{}});let e=!1;return(async()=>{try{const s=await ot();if(e)return;for(const n of s)Se(n)}catch{}})(),()=>{e=!0,r.close()}}const Ie="viewportPose";function Lr(){const r=ct(Ie);return r&&Array.isArray(r.position)&&r.position.length===3&&r.position.every(Number.isFinite)&&Array.isArray(r.target)&&r.target.length===3&&r.target.every(Number.isFinite)?r:null}function Ir(r,e){lt(Ie,{position:[r.position.x,r.position.y,r.position.z],target:[e.x,e.y,e.z]})}const Ve={id:"world",title:"World",lights:[{color:"#ffffff",intensity:1,direction:[-10,-20,-10],space:"world"}],ambient:{color:"#ffffff",intensity:.5},environmentIntensity:0};yt(Ve),St("world",{all:{lighting:{source:"studio",studioPreset:Ve.id,auto:{takeover:["light"],overridable:!0}}}});function zr(r,e,s){const n=document.createElement("canvas");n.setAttribute("aria-label",`${s} authoring viewport`),n.setAttribute("data-testid","editor-canvas"),n.setAttribute("aria-hidden","true"),n.tabIndex=-1,n.style.width="100%",n.style.height="100%",n.style.display="block",n.style.pointerEvents="auto",r.appendChild(n);const c=Math.max(1,e.clientWidth),i=Math.max(1,e.clientHeight),m=Math.min(window.devicePixelRatio||1,2);n.width=Math.ceil(c*m),n.height=Math.ceil(i*m);const d=Gt(new ar({canvas:n,antialias:!!Ut(void 0).antialias,powerPreference:"high-performance"}));return Kt(d,void 0,m),d.setSize(c,i),d.shadowMap.type=xr,d.info.autoReset=!1,Ht(d),{canvas:n,renderer:d,lease:null}}async function Wr(r){const e=pt(r.source,r.id);if(e)return e;let s=r.url,n=r.format??"gltf",c=r.includes;if(!s){const d=(await ft(r.source,r.id))[0];if(!d)return j.error(`No downloadable files for ${r.name}.`,"asset"),null;s=d.url,n=d.format,c=d.includes}const i={source:r.source,id:r.id,name:r.name,url:s,format:n};c&&(i.includes=c);const m=await yr(i);return m.ok&&m.path?`/${m.path}`:(j.error(`Could not download ${r.name}.`,"asset"),null)}function Dr(r){if(r.isCamera)return r;const e=Le(r,"_camera");return e?.isCamera?e:null}function _r(r){const e=r;if(e.isPerspectiveCamera)return`${e.fov.toFixed(0)}° perspective`;const s=r;return s.isOrthographicCamera?`Orthographic · ${s.zoom.toFixed(2)}×`:r.type}function Nr(r,e){const s=r.transforms;if(!s)return{canAuthorPose:!1,poseRefusal:"This camera has no transform authoring path."};const n=s.editability?.(e,"position")??{writable:!0},c=s.editability?.(e,"rotation")??{writable:!0};return n.writable&&c.writable?{canAuthorPose:!0}:{canAuthorPose:!1,poseRefusal:n.reason??c.reason??"This camera pose is read-only."}}function $r(r,e,s){const n=e.get(s)??null;if(!n)return null;const c=Dr(n);return c?{id:s,name:n.name||c.name||"Camera",camera:c,lens:_r(c),...Nr(r,s)}:null}function Br(r){const e=new Map;for(const[s,n]of r.objectMap){const c=Le(n,"tags");Array.isArray(c)&&c.length>0&&e.set(s,c)}return e}function Gr(r){const{store:e,documentId:s,container:n,canvas:c,renderer:i,stats:m}=r,d=new Yt(i),E=Xt(),O=new qt,g=Bt(),F=Tr(i.getContext()),ze=t=>{g.enabled&&F.begin();try{t()}finally{F.end()}},We=()=>g.enabled?F.poll():null,De=dt({id:s,label:"Scene viewport",kind:"scene",profiler:g}),b=new Cr,re=11184810;let H=Ce(c).background??re;b.background=new ee(H);const _e=xe(c,()=>{const t=Ce(c).background??re,l=b.background;l instanceof ee&&l.getHex()===H&&(b.background=new ee(t)),H=t});e.bindScene(b,i);const a=new lr(c,b,e,n,{renderer:i,onlineAssetResolver:Wr,onProjectionChange:dr}),Ne=a.bindPresentation(s,"world");e.bindScene(b,i,a.batchedRenderer,a.camera),e.setOrbitTarget(a.orbitControls.target);const U=new N,L=new N,ae=new N,ne=()=>{const t=a.renderCamera;t.getWorldPosition(U),a.cameraViewMode==="pilot"?L.copy(a.orbitControls.target):a.cameraViewMode?(t.getWorldDirection(ae),L.copy(U).add(ae.multiplyScalar(10))):L.copy(a.orbitControls.target);const l=t.fov;return{position:U,target:L,fov:typeof l=="number"?l:0}},k=Sr({scene:b,store:e,documentId:s,container:n,canvas:c,viewport:a,readVisibleCameraPose:ne});let se="",X=null,h=null,S=null,I=null;const ie=()=>{h&&fr(h,ke(i.domElement))},$e=xe(i.domElement,ie),oe=()=>{if(!h)return;const t=x(e.shell),l=[...e.shell.selectedEntityIds].filter(u=>t.hierarchy.node(u)!==null).map(u=>Z(t,e.objectMap,u)).filter(u=>u!==null);hr(h,l);const p=h.selection.size>0;S&&(S.enabled=p,S.renderToScreen=p),I&&(I.renderToScreen=!p)};function T(){bt(e.shell),X?.(),X=null,h&&gr(i,h,S),h=null,S=null,I=null,Jt(d,i,e.scene??b,a.renderCamera,void 0,{basePixelRatio:Math.min(window.devicePixelRatio||1,2),objectMap:e.objectMap,entityTags:Br(e)}),h=pr({BlendFunction:er,KernelSize:tr,OutlineEffect:rr},i,e.scene??b,a.renderCamera,ke(i.domElement)),ie(),I=d.passes.at(-1)??null,S=new Zt(a.renderCamera,h),S.enabled=!1,d.addPass(S),oe();const t=e.adoptedImageConfig;t&&(X=Qt(nr,i,t))}const ce=()=>{a.setProjection(mr().projection),e.setViewportCamera(a.freeCamera),T()},Be=ur(ce);ce();const q=t=>$r(x(e.shell),e.objectMap,t);let v=null;const A=()=>{v&&(je(x(e.shell),v),v=null)},le=()=>{const t=Q().view;t?.mode!=="pilot"||!t.subject.canAuthorPose||(v=t.subject.id,Pe(x(e.shell),v))},de=()=>{if(!v||a.cameraViewMode!=="pilot")return;const t=q(v),l=x(e.shell),p=l.transforms;if(!t||!p)return;let u;try{u=p.get(v)}catch(w){j.error(w instanceof Error?w.message:String(w),"camera-authoring"),A();return}Ee(l,v,{position:t.camera.position.toArray(),rotation:t.camera.quaternion.toArray(),scale:u.scale}),e.shell.notifyIngestEdit()};a.orbitControls.addEventListener("start",le),a.orbitControls.addEventListener("change",de),a.orbitControls.addEventListener("end",A);const Ge=$t({active:()=>e.shell.playState==="stopped"&&e.shell.activeViewportTab==="edit",selected:()=>{const t=e.shell.selectedEntityId;return t?q(t):null},resolve:q,showView:(t,l)=>{A(),a.setCameraView(t.camera,l),T(),k.reportCamera()},leaveView:()=>{A(),a.clearCameraView(),T(),k.reportCamera()},alignToViewport:t=>{const l=x(e.shell),p=l.transforms;if(!p||!t.canAuthorPose)return;const u=e.objectMap.get(t.id)??null;if(!u)return;const w=a.camera.getWorldPosition(new N),C=a.camera.getWorldQuaternion(new Re),y=w.clone(),R=C.clone();if(u.parent){u.parent.updateWorldMatrix(!0,!1),u.parent.worldToLocal(y);const M=u.parent.getWorldQuaternion(new Re);R.premultiply(M.invert())}let ye;try{ye=p.get(t.id)}catch(M){j.error(M instanceof Error?M.message:String(M),"camera-authoring");return}Pe(l,t.id),Ee(l,t.id,{position:y.toArray(),rotation:R.toArray(),scale:ye.scale}),e.shell.notifyIngestEdit(),je(l,t.id)},subscribe:e.shell.subscribe});let ue=null;const me=()=>{const t=ht(e.shell);t!==ue&&(ue=t,c.style.opacity=t?"1":"0",n.style.backgroundColor=t?"":gt.surface.raised,n.style.backgroundImage=t?"":"linear-gradient(45deg, #444649 25%, transparent 25%, transparent 75%, #444649 75%), linear-gradient(45deg, #444649 25%, transparent 25%, transparent 75%, #444649 75%)",n.style.backgroundPosition=t?"":"0 0, 8px 8px",n.style.backgroundSize=t?"":"16px 16px")};me();let pe=e.composerVersion;const Qe=e.shell.subscribe(()=>{me();const t=e.scene;t&&t!==a.currentScene&&a.setScene(t),a.objectMap=e.objectMap,a.syncFromStore(),e.composerVersion!==pe?(pe=e.composerVersion,T()):oe()});let z=null;const K=new Vr({seedFromGameCamera:()=>{const t=z?.()??null;return!!t&&a.seedFromGameCamera(t)},frameContent:()=>a.focusOnScene()}),fe=()=>{K.cancel(),z=null};a.orbitControls.addEventListener("start",fe);const he=()=>Ir(a.camera,a.orbitControls.target);a.orbitControls.addEventListener("end",he);const He=e.shell.onViewportAction(t=>{switch(t.type){case"focus-entity":{const l=Z(x(e.shell),e.objectMap,t.id);l&&a.focusOn(l);break}case"focus-scene":{{const l=Lr();if(l){a.camera.position.set(...l.position),a.orbitControls.target.set(...l.target),a.orbitControls.update();break}}z=e.sceneCameraLookup,K.begin(performance.now(),z!==null);break}case"focus-selection":{const l=x(e.shell),p=[...e.shell.selectedEntityIds].map(u=>Z(l,e.objectMap,u)).filter(u=>u!==null);a.focusOnMultiple(p);break}case"snap-selection-to-floor":a.snapSelectionToFloor();break;case"set-view-preset":a.setViewPreset(t.preset);break;case"step-view":a.stepView(t.step);break;case"frame-all":a.focusOnScene();break;case"zoom-view":a.zoomStep(t.direction);break;case"set-camera-pose":a.setPose(t.position,t.target,t.fov);break}});Fr();const ge=new ResizeObserver(()=>{const t=Math.max(1,n.clientWidth),l=Math.max(1,n.clientHeight);i.setSize(t,l),d.setSize(t,l),a.resize(t,l)});ge.observe(n);let W=performance.now(),D=!0,P=!1,be=!1;function ve(t){return Or(a.currentScene,()=>{E.render(i,a.currentScene,a.renderCamera),a.renderWithInfrastructure(()=>{vr(a.currentScene,()=>O.render(a.currentScene,e.shadingMode,()=>d.render(t),br)),a.renderViewCube(i),a.renderCameraPreview(i,Q().preview?.camera??null,r.cameraPreview())})})}const Ue=or(c,async()=>{if(P||!cr()||!n.checkVisibility({visibilityProperty:!0,checkVisibilityCSS:!0})||!ve(0))return null;const t=document.createElement("canvas");return t.width=c.width,t.height=c.height,t.getContext("2d").drawImage(c,0,0),t}),J=()=>wt(e.shell)===e.shell;function Xe(t,l){if(P)return;if(l&&(W=t),!n.checkVisibility({visibilityProperty:!0,checkVisibilityCSS:!0})){W=t,D=!0;return}g.beginFrame();const p=t-W,u=p/1e3;J()&&(m.frameTime=p,m.fps=1e3/p),W=t,k.syncMarkers(u),K.tick(t),g.beginPhase(),a.update(u),r.runFrame(u),a.batchedRenderer.update(u),g.endPhase("editor"),g.beginPhase(),i.info.reset(),ze(()=>{ve(u)}),g.reportRender({gpuMs:We(),drawCalls:i.info.render.calls,triangles:i.info.render.triangles,geometries:i.info.memory.geometries,textures:i.info.memory.textures}),g.endPhase("render"),J()&&(m.drawCalls=i.info.render.calls,m.triangles=i.info.render.triangles),D&&be&&(D=!1,vt(s)),g.endFrame();const w=ne(),C=w.position,y=w.target;J()&&(m.cameraPosition.x=C.x,m.cameraPosition.y=C.y,m.cameraPosition.z=C.z,m.cameraTarget.x=y.x,m.cameraTarget.y=y.y,m.cameraTarget.z=y.z);const R=`${C.x},${C.y},${C.z},${y.x},${y.y},${y.z},${w.fov}`;R!==se&&(se=R,k.reportCamera())}a.objectMap=e.objectMap,a.syncFromStore(),T();let Y,_;async function qe(t){if(P)return;r.onMountStatus("mounting"),_?.(),_=void 0,Y=t,r.onRootIds(t.childAdapters().filter(u=>u.role==="world"&&u.kind==="three").map(u=>u.worldId));const l=sr("three");if(P||Y!==t)return;const p=l?await l.mountWorldRootSession({store:e,composite:t,renderer:i}):()=>{};if(P||Y!==t){p();return}_=p,P||r.onMountStatus("ready")}const we=ir(e.shell,qe);return we.ready.then(()=>ut(mt(e.shell))).catch(t=>{j.error(`Editor boot failed: ${t instanceof Error?t.message:String(t)}`,"scene"),r.onMountStatus("ready")}).finally(()=>{be=!0,D=!0}),{scene:b,viewport:a,frame:Xe,present:t=>wr(e,t),setHelper:(t,l)=>a.setHelper(t,l),dispose:()=>{P=!0,De(),Ue(),ge.disconnect(),Qe(),He(),Ge(),a.orbitControls.removeEventListener("start",le),a.orbitControls.removeEventListener("change",de),a.orbitControls.removeEventListener("end",A),a.orbitControls.removeEventListener("start",fe),a.orbitControls.removeEventListener("end",he),we.dispose(),_?.(),k.dispose(),O.dispose(),F.dispose(),Be(),$e(),_e(),Ne(),h?.selection.clear(),E.dispose(),d.dispose()}}}function Qr({store:r,rootIds:e,mountStatus:s}){f.useSyncExternalStore(r.shell.subscribe,r.shell.getSnapshot);const n=f.useSyncExternalStore(kt,Tt),c=f.useSyncExternalStore(At,Rt),i=r.scene?.background,m=i!==null&&!(i?.isColor===!0&&i.getHex()===11184810),d=f.useMemo(()=>!!(r.scene&&It(r.scene,{includeBackground:!1,ignoredLayer:Ke})),[r.scene,r.shell.contentVersion]),E=!!(r.scene&&(m||d)),O=Ft({surface:"Scene",rootIds:e,phase:s==="mounting"?"loading":"ready",content:E?"present":s==="mounting"?"unknown":"empty",readiness:n,failures:c});return o.jsx(Lt,{explanation:O,testId:"scene-viewport-status"})}function Hr({store:r,documentId:e,cameraPreviewRef:s,mountStatus:n,rootIds:c}){f.useSyncExternalStore(r.shell.subscribe,r.shell.getShellSnapshot??r.shell.getSnapshot),f.useSyncExternalStore(Ct,xt),f.useSyncExternalStore(Mt,Vt),f.useSyncExternalStore(Pt,Et);const i=jt(r.shell,e,"document");return o.jsxs(o.Fragment,{children:[i.surface!==null?o.jsx(Ot,{}):null,i.surface==="three"?o.jsx(kr,{previewRef:s}):null,o.jsx(Qr,{store:r,rootIds:c,mountStatus:n})]})}const jn={mountWorldRootSurface:zr,installWorldRootStage:Gr,Overlays:Hr};export{jn as worldRootStageBinding};
|