@volter/game-editor 0.5.115 → 0.5.117
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 +22 -22
- package/catalog/entries/blender.json +2 -2
- package/catalog/entries/music.json +2 -2
- package/dist/.vite/manifest.json +2182 -2182
- package/dist/assets/{AssetBudgetPanel-B1D3FSip.js → AssetBudgetPanel-C3ktrntz.js} +3 -3
- package/dist/assets/{AudioViewer-B9UV_yI6.js → AudioViewer-DZdZAy4A.js} +1 -1
- package/dist/assets/{CanvasBoardDocument-CITYZW5X.js → CanvasBoardDocument-DsCSciSC.js} +1 -1
- package/dist/assets/{CanvasSceneViewport-DlPDejYi.js → CanvasSceneViewport-DP0dTNXv.js} +1 -1
- package/dist/assets/{ColorInput-Dm2qIpBf.js → ColorInput-BN6Sksjk.js} +1 -1
- package/dist/assets/{ColorPicker-B2pwoKdl.js → ColorPicker-B76LmE6h.js} +1 -1
- package/dist/assets/{EntityModelDocument-BeJlMgH9.js → EntityModelDocument-hrUqEuvd.js} +1 -1
- package/dist/assets/{EnvironmentAssetDocument-DsQk7rsJ.js → EnvironmentAssetDocument-BhAbBL9x.js} +1 -1
- package/dist/assets/{GameplaySessionTimeline-CiFteySa.js → GameplaySessionTimeline-O0K6MuzG.js} +1 -1
- package/dist/assets/{ImageViewer-Bc7mJQsD.js → ImageViewer-BBx46cOu.js} +1 -1
- package/dist/assets/InspectorObjectPreview-cEL6iskI.js +1 -0
- package/dist/assets/{JsonAssetDocument-1Wzq61nI.js → JsonAssetDocument-ZUCXmUBz.js} +1 -1
- package/dist/assets/{LiveModuleDocument-LG1GPVVk.js → LiveModuleDocument-DuY9SmFp.js} +1 -1
- package/dist/assets/{LutAssetDocument-BUxQZNdF.js → LutAssetDocument-DjxOl21m.js} +1 -1
- package/dist/assets/{ModelAssetDocument-c3FPG6mL.js → ModelAssetDocument-DwbuSNGD.js} +1 -1
- package/dist/assets/{NonThreeAuthoringBootstrap-3rKjb-KV.js → NonThreeAuthoringBootstrap-CYHVR-Hz.js} +1 -1
- package/dist/assets/{Object3DDocumentToolbar-DS9cX8iy.js → Object3DDocumentToolbar-BDHutCDl.js} +1 -1
- package/dist/assets/Object3DDocumentViewport-Dy6oCsqf.js +2 -0
- package/dist/assets/{Object3DPreview-CWatzqki.js → Object3DPreview-Dr9nj_z2.js} +1 -1
- package/dist/assets/{OnlineAssetDetail-C6CRSxnt.js → OnlineAssetDetail-BG5XJ3Un.js} +1 -1
- package/dist/assets/{PlayBar-C18rsyw9.js → PlayBar-DUI9-ZXC.js} +1 -1
- package/dist/assets/{QuarksAssetDocument-BZDOHzG0.js → QuarksAssetDocument-DTiRvQPL.js} +1 -1
- package/dist/assets/{ReactCanvasControls--KQb_SK3.js → ReactCanvasControls-XnnzrwCo.js} +1 -1
- package/dist/assets/{RootSelectionOverlay-BCU5GgQQ.js → RootSelectionOverlay-FMiu-poB.js} +1 -1
- package/dist/assets/{ShaderAssetDocument-oDIkdK7s.js → ShaderAssetDocument-4tRvE91q.js} +1 -1
- package/dist/assets/{ShadowEditor-WGB0tHPa.js → ShadowEditor-BpVAEirI.js} +1 -1
- package/dist/assets/{SourceAssetViewer-D_GE0rCS.js → SourceAssetViewer-3P0858z5.js} +1 -1
- package/dist/assets/{StageHost-NFV3WCDE.js → StageHost-7UErMg6u.js} +2 -2
- package/dist/assets/{StoryPreviewMount-DnMKMBSe.js → StoryPreviewMount-BBlVAlRY.js} +1 -1
- package/dist/assets/{ThreeBoardDocument-CuXapmaZ.js → ThreeBoardDocument-DK53_YAX.js} +2 -2
- package/dist/assets/{ThreeIsolationSceneContent-98z9Ag8g.js → ThreeIsolationSceneContent-qdUEzAND.js} +1 -1
- package/dist/assets/{ToolObject3DPreview-DT8_iWYn.js → ToolObject3DPreview-DsWlZd8B.js} +1 -1
- package/dist/assets/{Toolbar-Bv21kwZW.js → Toolbar-whqYcmiS.js} +1 -1
- package/dist/assets/{TransientHint-CcZwHxss.js → TransientHint-BKaDeHXM.js} +1 -1
- package/dist/assets/{VideoViewer-DXWnZmX7.js → VideoViewer-CTEVUoaa.js} +1 -1
- package/dist/assets/{ViewportShadingMenu-B4jqMabt.js → ViewportShadingMenu-DtRQHmb8.js} +1 -1
- package/dist/assets/{active-ingest-DQnefOtw.js → active-ingest-DutfA1v2.js} +2 -2
- package/dist/assets/{animation-clock-DGRe_EBy.js → animation-clock-DdjDOr9_.js} +1 -1
- package/dist/assets/{animation-mixers.service-4_x2MyMy.js → animation-mixers.service-BowFSgLp.js} +1 -1
- package/dist/assets/{animation-timeline.utility-CzttcSld.js → animation-timeline.utility-CgUv6Sm7.js} +1 -1
- package/dist/assets/{asset-budget-asset.menu-B3svGVJy.js → asset-budget-asset.menu-BpfhGqPG.js} +1 -1
- package/dist/assets/{asset-budget.action-CIPp1Kbs.js → asset-budget.action-DhpViDZH.js} +1 -1
- package/dist/assets/{asset-budget.document-C0u6VPAs.js → asset-budget.document-d83SOYMm.js} +1 -1
- package/dist/assets/{asset-budget.menu-D5S1NFu_.js → asset-budget.menu-XBWaxw1e.js} +1 -1
- package/dist/assets/{asset-editor-persistence-1DuP68UZ.js → asset-editor-persistence-C57Ygr55.js} +1 -1
- package/dist/assets/{asset-loaders-BpBQ4S5E.js → asset-loaders-C84nx9Q-.js} +1 -1
- package/dist/assets/{asset-preview-DAM7CurX.js → asset-preview-CfITAp9I.js} +1 -1
- package/dist/assets/{audio-unlock.service-CYMbHTwY.js → audio-unlock.service-DnnTTLZ7.js} +1 -1
- package/dist/assets/{audio.utility-htR2ypYm.js → audio.utility-kVrU3d_Z.js} +1 -1
- package/dist/assets/autoplay.service-S6u51gjV.js +1 -0
- package/dist/assets/{babylon-authoring-adapter-BqOw9TQM.js → babylon-authoring-adapter-CKIK8_RI.js} +1 -1
- package/dist/assets/{binding-resolver-BHrecg84.js → binding-resolver-Bw9NHH6D.js} +2 -2
- package/dist/assets/{blender-emscripten-engine-CRz1C2s0.js → blender-emscripten-engine-BYbXicWU.js} +1 -1
- package/dist/assets/{blender-node-editor.document-CuN522gu.js → blender-node-editor.document-CpmEWYqS.js} +1 -1
- package/dist/assets/{blender-properties-tab-BdAjZYR5.js → blender-properties-tab-BqzNQYYj.js} +1 -1
- package/dist/assets/blender-runtime-host-Ce-6lPKR.js +7 -0
- package/dist/assets/{blender-runtime-skin-Drd6uuSx.js → blender-runtime-skin-Bmj6NwqI.js} +47 -47
- package/dist/assets/{blender-runtime.document-Dewj97-q.js → blender-runtime.document-fQm8jfOR.js} +1 -1
- package/dist/assets/{blender-screenshot.menu-B8ta-oox.js → blender-screenshot.menu-D6z6gPx2.js} +1 -1
- package/dist/assets/{blender-timeline.document-CdEQhWMj.js → blender-timeline.document-COcMnV4P.js} +1 -1
- package/dist/assets/{blender-uv-editor.document-B1INC-GV.js → blender-uv-editor.document-CCldDOrb.js} +1 -1
- package/dist/assets/{blender-version.status-BMADjyt_.js → blender-version.status-CQcek3bs.js} +1 -1
- package/dist/assets/{blender-wali-engine-BmVwcYs-.js → blender-wali-engine-DfoYluoA.js} +1 -1
- package/dist/assets/{blender.command-DnmqW8Bu.js → blender.command-nx7fbZaN.js} +1 -1
- package/dist/assets/{board-guides-kYCRVwEV.js → board-guides-CJhpaM4Y.js} +1 -1
- package/dist/assets/{bridge.command-D1r5-kar.js → bridge.command-CM2oB0DL.js} +3 -3
- package/dist/assets/{browserAll-CvWuiZn2.js → browserAll-YVE01_g6.js} +1 -1
- package/dist/assets/{build-player.document-OKnKqTGS.js → build-player.document-ZuyCnu8R.js} +1 -1
- package/dist/assets/{build-profiles.document-OXa0FsfK.js → build-profiles.document-DFsJ688E.js} +1 -1
- package/dist/assets/{build-progress.status-DAJq9ryc.js → build-progress.status-B5tu0uSU.js} +1 -1
- package/dist/assets/{build-session-DzAEpdAA.js → build-session-HBNiEqfG.js} +1 -1
- package/dist/assets/{build.action-bhovwspp.js → build.action-B1HcItm2.js} +1 -1
- package/dist/assets/{build.command-XnA4Bggv.js → build.command-JnzmVI1I.js} +1 -1
- package/dist/assets/{build.header-DpZysa4P.js → build.header-Scr4Om6R.js} +1 -1
- package/dist/assets/{build.menu-CTgYkbnj.js → build.menu-B27qwD29.js} +1 -1
- package/dist/assets/{build.service-BEQ9iSZl.js → build.service-j05ziYI4.js} +1 -1
- package/dist/assets/{camera-dXNbJ9es.js → camera-D7hXuRtx.js} +1 -1
- package/dist/assets/{camera-runtime.inspector-XtZAlogF.js → camera-runtime.inspector-DaCMA860.js} +1 -1
- package/dist/assets/{canvas-design-mount-C_F7MPLN.js → canvas-design-mount-Bk-EnFSI.js} +3 -3
- package/dist/assets/{canvas-entry-runtime-CJ3DEkVJ.js → canvas-entry-runtime-BvUkzblV.js} +2 -2
- package/dist/assets/{canvas-preview-frames-CRuPvOnE.js → canvas-preview-frames-DxAJx35P.js} +1 -1
- package/dist/assets/{canvas-story-capture.service-BUGiTZws.js → canvas-story-capture.service-Dcv8Ibb8.js} +2 -2
- package/dist/assets/{capability-coverage-Q2P1rSMp.js → capability-coverage-K_0BAIJU.js} +1 -1
- package/dist/assets/{collaboration-presence-BHBJ5oc2.js → collaboration-presence-CneIKoPa.js} +1 -1
- package/dist/assets/{collider-Bxv5_8oO.js → collider-BccZNdIw.js} +1 -1
- package/dist/assets/{component-board.service-DB9Yo5EQ.js → component-board.service-Cs4o_Pmv.js} +2 -2
- package/dist/assets/{component-board.service-BMdb3NdK.js → component-board.service-CvzV2CKA.js} +2 -2
- package/dist/assets/{component-board.service-CsbFO2-S.js → component-board.service-D1jNfabq.js} +2 -2
- package/dist/assets/{component-contracts.service-BNgAOg8r.js → component-contracts.service-V1W-u2S9.js} +1 -1
- package/dist/assets/{component-instance-root-mlam7I49.js → component-instance-root-h1Rflrqv.js} +1 -1
- package/dist/assets/{component-verbs.command-YfOFMYsC.js → component-verbs.command-xKxDnGqP.js} +1 -1
- package/dist/assets/{component-verbs.service-BVO2Cyzv.js → component-verbs.service-CWbkFEcM.js} +1 -1
- package/dist/assets/{config-C1oxBoOl.js → config-DX3-CpHt.js} +2 -2
- package/dist/assets/{configurations-B5NMntJY.js → configurations-Cs8SnMrq.js} +1 -1
- package/dist/assets/{connection.status-BiRm-ePl.js → connection.status-Dn0RTNEw.js} +1 -1
- package/dist/assets/{constraints.inspector-uI2zEX4p.js → constraints.inspector-Cpy5rhJS.js} +1 -1
- package/dist/assets/{content-bounds-BRxD4jMU.js → content-bounds-DVWAzm9f.js} +1 -1
- package/dist/assets/{contract-system-adapters-D0uU7TTW.js → contract-system-adapters-qNph3R6b.js} +1 -1
- package/dist/assets/{coverage.service-qJjMTH_v.js → coverage.service-ByfW9X4H.js} +1 -1
- package/dist/assets/{create-runtime-DlahVBnC.js → create-runtime-CWPvbU_l.js} +1 -1
- package/dist/assets/{curve-D26QfziO.js → curve-C3wndxn2.js} +1 -1
- package/dist/assets/{data-asset-D0VD9Tya.js → data-asset-C2Z6itFZ.js} +1 -1
- package/dist/assets/{data-ref-BCvMvvUH.js → data-ref-Ce8LtHGi.js} +1 -1
- package/dist/assets/{debug-bridge-BTc8Wu8X.js → debug-bridge-Bmj0Li8p.js} +1 -1
- package/dist/assets/{debug-registry-BVNyR7Oo.js → debug-registry-D-FgdH_H.js} +1 -1
- package/dist/assets/{deferred-ingest-play-Dsicru08.js → deferred-ingest-play-B2wgrovp.js} +2 -2
- package/dist/assets/{design-time-canvas-mount-BsqTyvp-.js → design-time-canvas-mount-DOkVlNVk.js} +2 -2
- package/dist/assets/{design-time-layers-EyMYc5cn.js → design-time-layers-M6o2CVXg.js} +1 -1
- package/dist/assets/{design-time-mount.service-CJZsf2x6.js → design-time-mount.service-CVFa4k-2.js} +2 -2
- package/dist/assets/{design-time-mount.service-BDPpLDWt.js → design-time-mount.service-DFHRGai1.js} +2 -2
- package/dist/assets/{design-time-react-mount-DuK9Qwiu.js → design-time-react-mount-BuIgYRLs.js} +1 -1
- package/dist/assets/{document-preview-three-BqVCMO2t.js → document-preview-three-CSJT6-30.js} +1 -1
- package/dist/assets/{dom-authoring-adapter-DpekPTht.js → dom-authoring-adapter-BijfMbzl.js} +1 -1
- package/dist/assets/{draco3d-BYQB-3RT.js → draco3d-B69Ry2Se.js} +1 -1
- package/dist/assets/{edit-mode-audio.service-CKwwpS_A.js → edit-mode-audio.service-DR6XWs99.js} +1 -1
- package/dist/assets/{edit-mode-authoring-C8rX2VgE.js → edit-mode-authoring-1VsqGvER.js} +1 -1
- package/dist/assets/{edit-mode-networking.service-BtnjAu0f.js → edit-mode-networking.service-Cc2mfOwp.js} +1 -1
- package/dist/assets/{editor-api-LYwgjP9l.js → editor-api-CcAdYERA.js} +1 -1
- package/dist/assets/{editor-layers-DZM820Rd.js → editor-layers-Bwn6K1Ky.js} +1 -1
- package/dist/assets/{editor-shell-store-CFlfnY8x.js → editor-shell-store-Bw3pK03h.js} +1 -1
- package/dist/assets/{entity-object-DfdMnbKr.js → entity-object-gqyR3fgx.js} +1 -1
- package/dist/assets/{extend-BfsWf5Gi.js → extend-CjPoJR18.js} +1 -1
- package/dist/assets/{fork-menu-apq3DLsr.js → fork-menu-YR2i30zs.js} +1 -1
- package/dist/assets/{frame-debugger-store-kdkRLYr1.js → frame-debugger-store-4_X7-Ujc.js} +1 -1
- package/dist/assets/{game-contract-seams-J9cSYLjV.js → game-contract-seams-Bx5G1BLD.js} +1 -1
- package/dist/assets/{game-css-scope-transform-B8bLFPEm.js → game-css-scope-transform-Drjn-mgv.js} +1 -1
- package/dist/assets/{game-document.service-D22hADmj.js → game-document.service-DBdUvKzX.js} +1 -1
- package/dist/assets/{game-eval.command-CG4H54H-.js → game-eval.command-D-na3sdH.js} +1 -1
- package/dist/assets/{game-module-access-CGRUl9Li.js → game-module-access-CSPO6YZ9.js} +1 -1
- package/dist/assets/{game-network-sY7WtOsz.js → game-network-CLJ7qTbE.js} +3 -3
- package/dist/assets/{gameplay-export-rmlLyzEe.js → gameplay-export-sJ3B_j4Z.js} +1 -1
- package/dist/assets/{gameplay-replay-cNxRDe_X.js → gameplay-replay-DZdbHEST.js} +1 -1
- package/dist/assets/{gameplay.command-CJ-GLH-C.js → gameplay.command-D9nckU6s.js} +1 -1
- package/dist/assets/{generation-jobs-BNJJLa5c.js → generation-jobs-DupRqWi-.js} +1 -1
- package/dist/assets/{generation.service-C0dZUNkB.js → generation.service-CQNhtOYa.js} +1 -1
- package/dist/assets/{generations-BjkkBJKH.js → generations-nBks8sue.js} +1 -1
- package/dist/assets/{generations.status-DUHCv39g.js → generations.status-DUTDEbmm.js} +1 -1
- package/dist/assets/{hierarchy-marks-DNv34RDe.js → hierarchy-marks-CO_ecrau.js} +1 -1
- package/dist/assets/{hosted-asset-materialization-_Q31okW0.js → hosted-asset-materialization-u30qTmDc.js} +1 -1
- package/dist/assets/{index-DJnAruk-.js → index-6bVz1BMz.js} +1 -1
- package/dist/assets/{index-DU1_x4Fy.js → index-B20JTxwn.js} +1 -1
- package/dist/assets/{index-Cz2M0Ewz.js → index-Bs-JJBoj.js} +2 -2
- package/dist/assets/{index-DIZt6p_N.js → index-D1uSj66l.js} +1 -1
- package/dist/assets/{index-Ca1csBI5.js → index-DhhhiiLJ.js} +1 -1
- package/dist/assets/{index-BBJS-iXi.js → index-Dt5jm3bx.js} +7 -7
- package/dist/assets/{index-C6M4Z2h1.js → index-cdOfmiK4.js} +1 -1
- package/dist/assets/{index-BLWywZyw.js → index-p2Kb3X1e.js} +1 -1
- package/dist/assets/{index-treuNUTo.js → index-ywphVnYA.js} +1 -1
- package/dist/assets/{inference-diagnostics-DTcvxJSE.js → inference-diagnostics-B32cN1KY.js} +1 -1
- package/dist/assets/{ingest-boot-viewport-BjhjFoz2.js → ingest-boot-viewport-Bs2ZgRaJ.js} +1 -1
- package/dist/assets/{ingest-siblings-Dq8aepYm.js → ingest-siblings-DwzuubQ3.js} +1 -1
- package/dist/assets/{ingest-source-persistence-BU1UHwYR.js → ingest-source-persistence-CMpSUZnL.js} +1 -1
- package/dist/assets/{ingest.service-Cw84Vrna.js → ingest.service-BjmjdEXH.js} +1 -1
- package/dist/assets/{inspect-kgW5_-pM.js → inspect-Br6bvKYF.js} +1 -1
- package/dist/assets/instances.command-CS1LShqz.js +1 -0
- package/dist/assets/{json-history-resource-WyAPanbc.js → json-history-resource-_clmB965.js} +1 -1
- package/dist/assets/{layered-pick-c_oHJY1l.js → layered-pick-C_WeiIoE.js} +1 -1
- package/dist/assets/{light-COJ1PT9Z.js → light-WOrPHDb-.js} +1 -1
- package/dist/assets/{live-project-verbs-B5iguji-.js → live-project-verbs-C2jF4YJL.js} +1 -1
- package/dist/assets/{machine.document-CWkbBpzv.js → machine.document-DTbenFr7.js} +1 -1
- package/dist/assets/{machines.finder-hRfg-uyo.js → machines.finder-BS0dBMs1.js} +1 -1
- package/dist/assets/{material-vchFYCwN.js → material-CD2DR79m.js} +1 -1
- package/dist/assets/{material-factory-HnrpVpfS.js → material-factory-B4aM15jS.js} +1 -1
- package/dist/assets/{mesh-W1kJYjPu.js → mesh-DTofF_go.js} +1 -1
- package/dist/assets/{model-asset-sections.service-DFJBgYBp.js → model-asset-sections.service-BxEhl0ko.js} +1 -1
- package/dist/assets/{model-inspection-XlLvg6_6.js → model-inspection-BEPkYxZm.js} +1 -1
- package/dist/assets/{model-thumbnail-CjJiBCyG.js → model-thumbnail-BT7oIq1o.js} +1 -1
- package/dist/assets/{models.finder-y6pi3bxI.js → models.finder-DaMe1qYN.js} +1 -1
- package/dist/assets/{module-mode-BqGKFlLf.js → module-mode-BddTykwB.js} +2 -2
- package/dist/assets/{mount-canvas-ingest-root-C1oaJkxQ.js → mount-canvas-ingest-root-DXvGskTU.js} +2 -2
- package/dist/assets/{mount-dom-ingest-root-DJm-Lyg2.js → mount-dom-ingest-root-CKhZMS30.js} +2 -2
- package/dist/assets/{mount-ingest-root-gFsTFIZ-.js → mount-ingest-root-99LbxpVS.js} +2 -2
- package/dist/assets/{mount-manifest-B-PH3Uw1.js → mount-manifest-BSjGZJtM.js} +1 -1
- package/dist/assets/{mount-three-ingest-root-DdWqJcWA.js → mount-three-ingest-root-7ndKUA_v.js} +1 -1
- package/dist/assets/{mounted-authoring-CR7KlQE8.js → mounted-authoring-B7_F5jnJ.js} +1 -1
- package/dist/assets/{mounted-story-viewport-source-onztVjWx.js → mounted-story-viewport-source-DK5VrFqH.js} +1 -1
- package/dist/assets/{native-debug-module-cH9M-ECp.js → native-debug-module-739ES-Zm.js} +1 -1
- package/dist/assets/{navigation-DDM8Bkks.js → navigation-C6ZlGnSt.js} +1 -1
- package/dist/assets/{navmesh.menu-C07cxn0S.js → navmesh.menu-x5By6bBe.js} +1 -1
- package/dist/assets/{navmesh.service-C27DJ2t-.js → navmesh.service-Btopj44G.js} +1 -1
- package/dist/assets/network-observer.service-B_aXblWh.js +1 -0
- package/dist/assets/{network.utility-D2zA7FlT.js → network.utility-5MBcxgB_.js} +1 -1
- package/dist/assets/{object3d-document-session-registry-Dr6nlucg.js → object3d-document-session-registry-j6Y5JrzG.js} +2 -2
- package/dist/assets/{oid-transform-CSiJy6Ov.js → oid-transform-B7bZOfh0.js} +1 -1
- package/dist/assets/{particles-Csb1pIqs.js → particles-BcTfNklT.js} +1 -1
- package/dist/assets/{pixi-authoring-adapter-vYRQFYbe.js → pixi-authoring-adapter-CnYwoVLZ.js} +1 -1
- package/dist/assets/{pixi-live-write-target--ZVBuEoz.js → pixi-live-write-target-3Q4ukIef.js} +1 -1
- package/dist/assets/{play.command-Bph3FArD.js → play.command-CsXpcIJO.js} +2 -2
- package/dist/assets/{presentation-BUp3osX6.js → presentation-Dyo74fnC.js} +1 -1
- package/dist/assets/{product-BnPP5G1z.js → product-D_CEDap_.js} +1 -1
- package/dist/assets/{profiler.action-0bPKZV-4.js → profiler.action-4pakkT-I.js} +1 -1
- package/dist/assets/{profiler.menu-CgSqyR_f.js → profiler.menu-C3qMbQDL.js} +1 -1
- package/dist/assets/{profiler.utility-xn_B648c.js → profiler.utility-DopaGlcK.js} +1 -1
- package/dist/assets/{project-authoring-session-DzEQPxcT.js → project-authoring-session-BErT1Vxt.js} +2 -2
- package/dist/assets/{properties-bone-constraints.inspector-XN1Fn6kb.js → properties-bone-constraints.inspector-DrwOv8lP.js} +1 -1
- package/dist/assets/{properties-bone.inspector-B9ZwrAmz.js → properties-bone.inspector-Cgm5HNYg.js} +1 -1
- package/dist/assets/{properties-collection.inspector-CXYbOmqQ.js → properties-collection.inspector-BpRHp08N.js} +1 -1
- package/dist/assets/{properties-constraints.inspector-g8rDgf9A.js → properties-constraints.inspector-Bcps7O7L.js} +1 -1
- package/dist/assets/{properties-data.inspector-B4pLwbfn.js → properties-data.inspector-Cbm0WQCb.js} +1 -1
- package/dist/assets/{properties-material.inspector-Zadm6uE2.js → properties-material.inspector-b2HVBeRi.js} +1 -1
- package/dist/assets/{properties-modifiers.inspector-4RygMJjp.js → properties-modifiers.inspector-bJ2xlb_E.js} +1 -1
- package/dist/assets/{properties-object.inspector-CLiXvIq9.js → properties-object.inspector-E1TqDSQi.js} +1 -1
- package/dist/assets/{properties-output.inspector-3kLv-Z9w.js → properties-output.inspector-DvWo2xp8.js} +1 -1
- package/dist/assets/{properties-particles.inspector-BmCwF7dC.js → properties-particles.inspector-D_QiAw0d.js} +1 -1
- package/dist/assets/{properties-physics.inspector-Ovy6voDB.js → properties-physics.inspector-BIh1EfkD.js} +1 -1
- package/dist/assets/{properties-render.inspector-BfdTv-xn.js → properties-render.inspector-CQ_T14za.js} +1 -1
- package/dist/assets/{properties-scene.inspector-8Cnb5z6J.js → properties-scene.inspector-d3xZpohF.js} +1 -1
- package/dist/assets/{properties-texture.inspector-CphKD4Ad.js → properties-texture.inspector-CiodVE2E.js} +1 -1
- package/dist/assets/{properties-view-layer.inspector-Cd4iGv8r.js → properties-view-layer.inspector-BTvjGbST.js} +1 -1
- package/dist/assets/{properties-world.inspector-CmwN0diq.js → properties-world.inspector-HjQ_XQWr.js} +1 -1
- package/dist/assets/{r3f-design-session-DNMj8nru.js → r3f-design-session-CgJHKbHk.js} +2 -2
- package/dist/assets/{r3f-physics-binding-CjH-3Qtw.js → r3f-physics-binding-Bs90cL2H.js} +1 -1
- package/dist/assets/{r3f-source-authoring-adapter-DQCcmFUP.js → r3f-source-authoring-adapter-Dz-2gR6C.js} +1 -1
- package/dist/assets/{react-canvas-navigation-CaS-tX17.js → react-canvas-navigation-BuUlk_hY.js} +1 -1
- package/dist/assets/{react-inspector.service-CdgzFlR8.js → react-inspector.service-he9nhYSF.js} +1 -1
- package/dist/assets/{react-story-board-DCQowhwH.js → react-story-board-DFX_3Eor.js} +1 -1
- package/dist/assets/{react-three-rapier.esm-DVgTDGqE.js → react-three-rapier.esm-Cqb1QJsp.js} +1 -1
- package/dist/assets/{react-world-authoring-adapter-o8MIisir.js → react-world-authoring-adapter-4OOk2v75.js} +1 -1
- package/dist/assets/{realm-services-CpK0EhW0.js → realm-services-B51BueDW.js} +1 -1
- package/dist/assets/{reflection-probe-capture.inspector-CCr24-WH.js → reflection-probe-capture.inspector-Cibd2Skj.js} +1 -1
- package/dist/assets/{registry-DxPlKt7g.js → registry-BJ0P13Qw.js} +1 -1
- package/dist/assets/{relative-import-specifier-BNIBX4vp.js → relative-import-specifier-Bg1UDyTq.js} +1 -1
- package/dist/assets/{render-env-Ck6RGnXC.js → render-env-DClqJsug.js} +1 -1
- package/dist/assets/{render-features-1Oh23ztU.js → render-features-BgLAARMw.js} +1 -1
- package/dist/assets/{render-settings-CxVtqFoK.js → render-settings-TkRnwGvq.js} +1 -1
- package/dist/assets/{resolve-three-D0RrLzjb.js → resolve-three-DNMNH9g9.js} +3 -3
- package/dist/assets/{root-seam-contract-mzvZWeCg.js → root-seam-contract-BAI8C8KI.js} +1 -1
- package/dist/assets/{run-selection-BiHQvp3p.js → run-selection-C62JWX8Y.js} +1 -1
- package/dist/assets/{scene-capture-Kp6OXGCU.js → scene-capture-Csu-9Z3v.js} +1 -1
- package/dist/assets/{scene-document.service-QIYXj5ik.js → scene-document.service-CXu3hwi9.js} +2 -2
- package/dist/assets/{scene-framing-BEyDXv-l.js → scene-framing-DgQMZG99.js} +1 -1
- package/dist/assets/{seeded-random-C4aOVk3P.js → seeded-random-xhwosly5.js} +1 -1
- package/dist/assets/{setup-renderer-DVXJnNwP.js → setup-renderer-sNRGFHD3.js} +1 -1
- package/dist/assets/{source-object3d-authoring-adapter-DmAjSKBp.js → source-object3d-authoring-adapter-DiUz2ONX.js} +1 -1
- package/dist/assets/{source-persistence-backend-CLtPG9D6.js → source-persistence-backend-DKdo7qA1.js} +1 -1
- package/dist/assets/{stage-keyboard-XtIU2jBa.js → stage-keyboard-CCAEPBds.js} +1 -1
- package/dist/assets/{stage-overlay-set-BJpFrp2n.js → stage-overlay-set-BIT1H7YG.js} +1 -1
- package/dist/assets/{stage-presence-markers-C8GxAVsm.js → stage-presence-markers-Dde0uo4f.js} +1 -1
- package/dist/assets/{stage-transform-tools-B4kyKwI5.js → stage-transform-tools-C5xuzlvB.js} +1 -1
- package/dist/assets/{standard-viewport-dressing-DUATYft9.js → standard-viewport-dressing-4mM0Zr-0.js} +1 -1
- package/dist/assets/{state-watch.action-BYoFB5Hd.js → state-watch.action-BocmVXfv.js} +1 -1
- package/dist/assets/{state-watch.menu-BC8a3kkl.js → state-watch.menu-VacWy0Ty.js} +1 -1
- package/dist/assets/{state-watch.utility-Cc5OFQhK.js → state-watch.utility-f6mj3xS-.js} +1 -1
- package/dist/assets/{story-capture-D8vKBdSI.js → story-capture-D3oUwSdi.js} +1 -1
- package/dist/assets/{story-documents-D3PVr-dz.js → story-documents-BvxE0Jgp.js} +1 -1
- package/dist/assets/{story-documents.service-DBsH2KcO.js → story-documents.service-BPkgxZFz.js} +1 -1
- package/dist/assets/{story-documents.service-F1WmAMpx.js → story-documents.service-Ci9hEaEi.js} +1 -1
- package/dist/assets/{story-media-presence-CRKXCcnC.js → story-media-presence-nuojiKa3.js} +1 -1
- package/dist/assets/{story-pixi-preview-CroE6Aei.js → story-pixi-preview-MPFqGD8z.js} +1 -1
- package/dist/assets/{story-presentation-Cq9r4LSf.js → story-presentation-Bi6tUUJT.js} +1 -1
- package/dist/assets/{story-three-preview-CFHHDdG9.js → story-three-preview-CquJrBi1.js} +2 -2
- package/dist/assets/{studio-environment-C_N35mBk.js → studio-environment-PbtbyxPv.js} +1 -1
- package/dist/assets/{surface-state-ZUz1JXO3.js → surface-state-vm1S5q1D.js} +1 -1
- package/dist/assets/{syntactic-prop-specs-CXRjRQ6e.js → syntactic-prop-specs-CRrIsekh.js} +1 -1
- package/dist/assets/{team-playtest.service-1zHUody2.js → team-playtest.service-gQVOEk6C.js} +1 -1
- package/dist/assets/{three-DhYM4vlJ.js → three-C_mp4XTZ.js} +1 -1
- package/dist/assets/{three-authoring-adapter-BH3GIXjI.js → three-authoring-adapter-D4_90yFr.js} +1 -1
- package/dist/assets/three-authoring.service-0XLcjtfj.js +2 -0
- package/dist/assets/{three-ingest-runtime-CWGzfEzB.js → three-ingest-runtime-BPcTsDxh.js} +1 -1
- package/dist/assets/{three-integration-Bk3H7QpJ.js → three-integration-CD3ATFnX.js} +2 -2
- package/dist/assets/three-integration.service-DjQ3BgqY.js +1 -0
- package/dist/assets/{three-projection-core-BcSX6zt9.js → three-projection-core-DbYmRPci.js} +1 -1
- package/dist/assets/{three-state-C415Xr4Q.js → three-state-BPIytwjV.js} +1 -1
- package/dist/assets/{three-story-capture.service-Cb7vMHU0.js → three-story-capture.service-CFKkQGtX.js} +2 -2
- package/dist/assets/{three-story-model-DskOuR3f.js → three-story-model-DJE_sYaC.js} +1 -1
- package/dist/assets/{three-viewport-presentation-CCm3SnCW.js → three-viewport-presentation-CNXPLHEX.js} +1 -1
- package/dist/assets/{transform-mode-request-D6ZvVMwT.js → transform-mode-request-B-gJ5g51.js} +1 -1
- package/dist/assets/{transport-strip-lWU2FY9B.js → transport-strip-B36KBNDz.js} +1 -1
- package/dist/assets/transport.header-CAIoNhnT.js +1 -0
- package/dist/assets/{tuples-rxhpQwdW.js → tuples-D_IQElzZ.js} +1 -1
- package/dist/assets/{ui-board-document-BoZP3w_3.js → ui-board-document-BL31txjD.js} +2 -2
- package/dist/assets/{user-data-C0atC9Sj.js → user-data-DZ8WeiSK.js} +1 -1
- package/dist/assets/{utility-view-state-DSMFJ6ir.js → utility-view-state-CJp6vkri.js} +1 -1
- package/dist/assets/{viewport-door-BIJ29zym.js → viewport-door-Bdlxiiu3.js} +1 -1
- package/dist/assets/{viewport-root-presentation-B0pGGdFv.js → viewport-root-presentation-lfnmV2dZ.js} +1 -1
- package/dist/assets/{viewport-surface-status-CiC20oF9.js → viewport-surface-status-BkWCfY-g.js} +1 -1
- package/dist/assets/{webworkerAll-2AtJzMEi.js → webworkerAll-DrO32SxK.js} +1 -1
- package/dist/assets/worker-D3-3vOkS.js +2 -0
- package/dist/assets/{workspace-arrangement-VoQDucQX.js → workspace-arrangement-9RRX0-sM.js} +1 -1
- package/dist/assets/{world-documents-BSL1t6Ik.js → world-documents-BjqjhIv6.js} +1 -1
- package/dist/assets/{world-root-stage-binding-D-eJASGQ.js → world-root-stage-binding-BGWAd6qi.js} +1 -1
- package/dist/assets/{xstate-animation-binding-C13KsQZp.js → xstate-animation-binding-qDvqsOQe.js} +1 -1
- package/dist/assets/{xstate-animation-meta-C9S-GXYo.js → xstate-animation-meta-DG39Stxz.js} +1 -1
- package/dist-node/cli.js +22 -21
- package/package.json +16 -16
- package/dist/assets/InspectorObjectPreview-phfzfTiM.js +0 -1
- package/dist/assets/Object3DDocumentViewport-DdbuaiNm.js +0 -2
- package/dist/assets/autoplay.service-MhRsT-mq.js +0 -1
- package/dist/assets/blender-runtime-host-DpW6tAzm.js +0 -7
- package/dist/assets/instances.command-C7MxJBiO.js +0 -1
- package/dist/assets/network-observer.service-WaQWp1_N.js +0 -1
- package/dist/assets/three-authoring.service-wAdk24pq.js +0 -2
- package/dist/assets/three-integration.service-B35FeZXR.js +0 -1
- package/dist/assets/transport.header-B1Uuh-zI.js +0 -1
- package/dist/assets/worker-BXLmYZTK.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as i}from"./jsx-runtime-DPjLkJKQ.js";import{go as Ce}from"./index-BBJS-iXi.js";import{r as T}from"./index-nmcBqr7Y.js";import{s as Te,b as Q,a as Ee,n as ee,c as B,d as U,r as we,e as Oe,f as Ie,N as Ne}from"./blender-runtime-host-DpW6tAzm.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"./preview-renderer-BrYNFV1p.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./environment-Dg-YaLsA.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./renderer-ownership-BovSEcLv.js";import"./output-pass-HurwNl0G.js";import"./Pass-D1MRT672.js";import"./clip-planes-CnAI6DZn.js";import"./content-bounds-BRxD4jMU.js";import"./hierarchy-marks-DNv34RDe.js";import"./workspace-arrangement-VoQDucQX.js";const Re={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Factor",identifier:"Fac"},{kind:"input",name:"Type"},{kind:"input",name:"Lift",identifier:"Base Lift"},{kind:"input",name:"Lift",identifier:"Color Lift"},{kind:"input",name:"Gamma",identifier:"Base Gamma"},{kind:"input",name:"Gamma",identifier:"Color Gamma"},{kind:"input",name:"Gain",identifier:"Base Gain"},{kind:"input",name:"Gain",identifier:"Color Gain"},{kind:"input",name:"Offset",identifier:"Base Offset"},{kind:"input",name:"Offset",identifier:"Color Offset"},{kind:"input",name:"Power",identifier:"Base Power"},{kind:"input",name:"Power",identifier:"Color Power"},{kind:"input",name:"Slope",identifier:"Base Slope"},{kind:"input",name:"Slope",identifier:"Color Slope"},{kind:"panel",name:"Input",items:[{kind:"input",name:"Temperature",identifier:"Input Temperature"},{kind:"input",name:"Tint",identifier:"Input Tint"},{kind:"layout"}]},{kind:"panel",name:"Output",items:[{kind:"input",name:"Temperature",identifier:"Output Temperature"},{kind:"input",name:"Tint",identifier:"Output Tint"},{kind:"layout"}]}]},Pe={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Mask"},{kind:"panel",name:"Master",items:[{kind:"input",name:"Saturation",identifier:"Master Saturation"},{kind:"input",name:"Contrast",identifier:"Master Contrast"},{kind:"input",name:"Gamma",identifier:"Master Gamma"},{kind:"input",name:"Gain",identifier:"Master Gain"},{kind:"input",name:"Offset",identifier:"Master Offset"}],defaultClosed:!0},{kind:"panel",name:"Highlights",items:[{kind:"input",name:"Saturation",identifier:"Highlights Saturation"},{kind:"input",name:"Contrast",identifier:"Highlights Contrast"},{kind:"input",name:"Gamma",identifier:"Highlights Gamma"},{kind:"input",name:"Gain",identifier:"Highlights Gain"},{kind:"input",name:"Offset",identifier:"Highlights Offset"}],defaultClosed:!0},{kind:"panel",name:"Midtones",items:[{kind:"input",name:"Saturation",identifier:"Midtones Saturation"},{kind:"input",name:"Contrast",identifier:"Midtones Contrast"},{kind:"input",name:"Gamma",identifier:"Midtones Gamma"},{kind:"input",name:"Gain",identifier:"Midtones Gain"},{kind:"input",name:"Offset",identifier:"Midtones Offset"}],defaultClosed:!0},{kind:"panel",name:"Shadows",items:[{kind:"input",name:"Saturation",identifier:"Shadows Saturation"},{kind:"input",name:"Contrast",identifier:"Shadows Contrast"},{kind:"input",name:"Gamma",identifier:"Shadows Gamma"},{kind:"input",name:"Gain",identifier:"Shadows Gain"},{kind:"input",name:"Offset",identifier:"Shadows Offset"}],defaultClosed:!0},{kind:"panel",name:"Tonal Range",items:[{kind:"input",name:"Midtones Start"},{kind:"input",name:"Midtones End"}],defaultClosed:!0},{kind:"panel",name:"Channels",items:[{kind:"input",name:"Red",identifier:"Apply On Red"},{kind:"input",name:"Green",identifier:"Apply On Green"},{kind:"input",name:"Blue",identifier:"Apply On Blue"}],defaultClosed:!0}]},_e={customSocketOrder:!0,items:[{kind:"output",name:"Image"},{kind:"input",name:"Image"},{kind:"input",name:"Factor",identifier:"Fac"},{kind:"input",name:"Spill Channel"},{kind:"input",name:"Limit Method"},{kind:"input",name:"Limit Channel"},{kind:"input",name:"Limit Strength"},{kind:"panel",name:"Spill Strength",items:[{kind:"input",name:"Use Spill Strength",panelToggle:!0},{kind:"input",name:"Strength",identifier:"Spill Strength"}],defaultClosed:!0}]},Me={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Plane"},{kind:"input",name:"Upper Left"},{kind:"input",name:"Upper Right"},{kind:"input",name:"Lower Left"},{kind:"input",name:"Lower Right"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},ve={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Samples"},{kind:"input",name:"Center"},{kind:"input",name:"Rotation"},{kind:"input",name:"Scale"},{kind:"panel",name:"Translation",items:[{kind:"input",name:"Amount",identifier:"Translation Amount"},{kind:"input",name:"Direction",identifier:"Translation Direction"}]}]},Ae={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Displacement"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},be={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Glare"},{kind:"output",name:"Highlights"},{kind:"input",name:"Type"},{kind:"input",name:"Quality"},{kind:"panel",name:"Highlights",items:[{kind:"input",name:"Threshold",identifier:"Highlights Threshold"},{kind:"input",name:"Smoothness",identifier:"Highlights Smoothness"},{kind:"panel",name:"Clamp",items:[{kind:"input",name:"Clamp",identifier:"Clamp Highlights",panelToggle:!0},{kind:"input",name:"Maximum",identifier:"Maximum Highlights"}],defaultClosed:!0}],defaultClosed:!0},{kind:"panel",name:"Adjust",items:[{kind:"input",name:"Strength"},{kind:"input",name:"Saturation"},{kind:"input",name:"Tint"}]},{kind:"panel",name:"Glare",items:[{kind:"input",name:"Size"},{kind:"input",name:"Streaks"},{kind:"input",name:"Streaks Angle"},{kind:"input",name:"Iterations"},{kind:"input",name:"Fade"},{kind:"input",name:"Color Modulation"},{kind:"input",name:"Diagonal",identifier:"Diagonal Star"},{kind:"input",name:"Sun Position"},{kind:"input",name:"Jitter"},{kind:"input",name:"Kernel Data Type"},{kind:"input",name:"Kernel",identifier:"Float Kernel"},{kind:"input",name:"Kernel",identifier:"Color Kernel"}]}]},De={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Matte"},{kind:"output",name:"Edges"},{kind:"input",name:"Key Color"},{kind:"panel",name:"Preprocess",items:[{kind:"input",name:"Blur Size",identifier:"Preprocess Blur Size"}],defaultClosed:!0},{kind:"panel",name:"Key",items:[{kind:"input",name:"Balance",identifier:"Key Balance"}],defaultClosed:!0},{kind:"panel",name:"Tweak",items:[{kind:"input",name:"Black Level"},{kind:"input",name:"White Level"},{kind:"panel",name:"Edges",items:[{kind:"input",name:"Size",identifier:"Edge Search Size"},{kind:"input",name:"Tolerance",identifier:"Edge Tolerance"}],defaultClosed:!0}],defaultClosed:!0},{kind:"panel",name:"Mask",items:[{kind:"input",name:"Garbage Matte"},{kind:"input",name:"Core Matte"}],defaultClosed:!0},{kind:"panel",name:"Postprocess",items:[{kind:"input",name:"Blur Size",identifier:"Postprocess Blur Size"},{kind:"input",name:"Dilate Size",identifier:"Postprocess Dilate Size"},{kind:"input",name:"Feather Size",identifier:"Postprocess Feather Size"},{kind:"input",name:"Feather Falloff"}],defaultClosed:!0},{kind:"panel",name:"Despill",items:[{kind:"input",name:"Strength",identifier:"Despill Strength"},{kind:"input",name:"Balance",identifier:"Despill Balance"}],defaultClosed:!0}]},Be={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"UV"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Le={customSocketOrder:!0,items:[{kind:"output",name:"Mask"},{kind:"layout"},{kind:"input",name:"Size Source"},{kind:"input",name:"Size X"},{kind:"input",name:"Size Y"},{kind:"input",name:"Feather"},{kind:"panel",name:"Motion Blur",items:[{kind:"input",name:"Motion Blur",panelToggle:!0},{kind:"input",name:"Samples",identifier:"Motion Blur Samples"},{kind:"input",name:"Shutter",identifier:"Motion Blur Shutter"}],defaultClosed:!0}]},$e={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Plane"},{kind:"layout"},{kind:"panel",name:"Motion Blur",items:[{kind:"input",name:"Motion Blur",panelToggle:!0},{kind:"input",name:"Samples",identifier:"Motion Blur Samples"},{kind:"input",name:"Shutter",identifier:"Motion Blur Shutter"}],defaultClosed:!0}]},je={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Angle"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Fe={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Type"},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"input",name:"Frame Type"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ge={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"layout"},{kind:"input",name:"Frame"},{kind:"input",name:"Invert"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},We={customSocketOrder:!0,items:[{kind:"output",name:"Image"},{kind:"input",name:"String"},{kind:"input",name:"Font"},{kind:"input",name:"Size"},{kind:"panel",name:"Alignment",items:[{kind:"input",name:"Horizontal Alignment"},{kind:"input",name:"Vertical Alignment"}],defaultClosed:!0},{kind:"panel",name:"Wrap",items:[{kind:"input",name:"Wrap",panelToggle:!0},{kind:"input",name:"Width",identifier:"Wrap Width"}],defaultClosed:!0}]},He={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"input",name:"Angle"},{kind:"input",name:"Scale"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ue={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ye={customSocketOrder:!0,items:[{kind:"output",name:"Matrix"},{kind:"panel",name:"Column 1",items:[{kind:"input",name:"Column 1 Row 1"},{kind:"input",name:"Column 1 Row 2"},{kind:"input",name:"Column 1 Row 3"},{kind:"input",name:"Column 1 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 2",items:[{kind:"input",name:"Column 2 Row 1"},{kind:"input",name:"Column 2 Row 2"},{kind:"input",name:"Column 2 Row 3"},{kind:"input",name:"Column 2 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 3",items:[{kind:"input",name:"Column 3 Row 1"},{kind:"input",name:"Column 3 Row 2"},{kind:"input",name:"Column 3 Row 3"},{kind:"input",name:"Column 3 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 4",items:[{kind:"input",name:"Column 4 Row 1"},{kind:"input",name:"Column 4 Row 2"},{kind:"input",name:"Column 4 Row 3"},{kind:"input",name:"Column 4 Row 4"}],defaultClosed:!0}]},ze={customSocketOrder:!0,items:[{kind:"panel",name:"Column 1",items:[{kind:"output",name:"Column 1 Row 1"},{kind:"output",name:"Column 1 Row 2"},{kind:"output",name:"Column 1 Row 3"},{kind:"output",name:"Column 1 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 2",items:[{kind:"output",name:"Column 2 Row 1"},{kind:"output",name:"Column 2 Row 2"},{kind:"output",name:"Column 2 Row 3"},{kind:"output",name:"Column 2 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 3",items:[{kind:"output",name:"Column 3 Row 1"},{kind:"output",name:"Column 3 Row 2"},{kind:"output",name:"Column 3 Row 3"},{kind:"output",name:"Column 3 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 4",items:[{kind:"output",name:"Column 4 Row 1"},{kind:"output",name:"Column 4 Row 2"},{kind:"output",name:"Column 4 Row 3"},{kind:"output",name:"Column 4 Row 4"}],defaultClosed:!0},{kind:"input",name:"Matrix"}]},Ve={customSocketOrder:!0,items:[{kind:"input",name:"String"},{kind:"output",name:"String",alignWithPrevious:!0},{kind:"input",name:"Characters"},{kind:"input",name:"Whitespace"},{kind:"panel",name:"Limit",items:[{kind:"input",name:"Start"},{kind:"input",name:"End"}],defaultClosed:!0}]},Xe={customSocketOrder:!0,items:[{kind:"output",name:"Topology"},{kind:"input",name:"Bounds Min"},{kind:"input",name:"Bounds Max"},{kind:"input",name:"Resolution X"},{kind:"input",name:"Resolution Y"},{kind:"input",name:"Resolution Z"},{kind:"panel",name:"Min",items:[{kind:"input",name:"Min X"},{kind:"input",name:"Min Y"},{kind:"input",name:"Min Z"}],defaultClosed:!0}]},Ke={customSocketOrder:!0,conditional:!0,items:[{kind:"output",name:"Geometry"},{kind:"input",name:"",identifier:"__extend__main"},{kind:"output",name:"",identifier:"__extend__main",alignWithPrevious:!0},{kind:"panel",name:"Generated",items:[{kind:"separator"},{kind:"input",name:"",identifier:"__extend__generation"},{kind:"output",name:"",identifier:"__extend__generation",alignWithPrevious:!0}]}]},Ze={customSocketOrder:!0,items:[{kind:"output",name:"Names"},{kind:"input",name:"Geometry"},{kind:"panel",name:"Filter Data Type",items:[{kind:"input",name:"Filter Data Type",panelToggle:!0},{kind:"input",name:"Data Type"}]},{kind:"panel",name:"Filter Domain",items:[{kind:"input",name:"Filter Domain",panelToggle:!0},{kind:"input",name:"Domain"}]}]},qe={customSocketOrder:!0,conditional:!0,items:[{kind:"layout"},{kind:"output",name:"Points"},{kind:"output",name:"Value"},{kind:"panel",name:"Voxel Index",items:[{kind:"output",name:"X"},{kind:"output",name:"Y"},{kind:"output",name:"Z"},{kind:"output",name:"Is Tile"},{kind:"output",name:"Extent"}],defaultClosed:!0},{kind:"input",name:"Grid"}]},Je={customSocketOrder:!0,items:[{kind:"output",name:"X"},{kind:"output",name:"Y"},{kind:"output",name:"Z"},{kind:"panel",name:"Tile",items:[{kind:"output",name:"Is Tile"},{kind:"output",name:"Extent X"},{kind:"output",name:"Extent Y"},{kind:"output",name:"Extent Z"}],defaultClosed:!0}]},Qe={customSocketOrder:!0,items:[{kind:"input",name:"Mesh"},{kind:"output",name:"Mesh",alignWithPrevious:!0},{kind:"input",name:"Selection"},{kind:"input",name:"Affect Kind"},{kind:"input",name:"Start Left Offset"},{kind:"input",name:"Start Right Offset"},{kind:"input",name:"End Left Offset"},{kind:"input",name:"End Right Offset"},{kind:"input",name:"Offset"},{kind:"input",name:"Miter"},{kind:"input",name:"Spread"},{kind:"input",name:"Segments"},{kind:"input",name:"Shape"},{kind:"input",name:"Profile"},{kind:"panel",name:"Selections",items:[{kind:"output",name:"Vertex Face"},{kind:"output",name:"Edge Face"},{kind:"output",name:"Outer Edge"},{kind:"output",name:"Mid Edge"}]}]},en={customSocketOrder:!0,items:[{kind:"output",name:"Amplitude"},{kind:"input",name:"Sound"},{kind:"input",name:"Time"},{kind:"input",name:"All Channels"},{kind:"input",name:"Channel"},{kind:"input",name:"Low"},{kind:"input",name:"High"},{kind:"panel",name:"FFT",items:[{kind:"input",name:"FFT Size"},{kind:"input",name:"Window Function"}],defaultClosed:!0}]},nn={customSocketOrder:!0,items:[{kind:"output",name:"Curve Instances"},{kind:"output",name:"Remainder"},{kind:"output",name:"Line"},{kind:"output",name:"Word"},{kind:"output",name:"Pivot Point"},{kind:"input",name:"String"},{kind:"input",name:"Size"},{kind:"input",name:"Font"},{kind:"panel",name:"Alignment",items:[{kind:"input",name:"Align X"},{kind:"input",name:"Align Y"},{kind:"input",name:"Pivot Point"}],defaultClosed:!0},{kind:"panel",name:"Spacing",items:[{kind:"input",name:"Character Spacing"},{kind:"input",name:"Word Spacing"},{kind:"input",name:"Line Spacing"}],defaultClosed:!0},{kind:"panel",name:"Text Box",items:[{kind:"input",name:"Overflow"},{kind:"input",name:"Text Box Width"},{kind:"input",name:"Text Box Height"}],defaultClosed:!0}]},tn={customSocketOrder:!0,conditional:!0,items:[{kind:"input",name:"Target"},{kind:"output",name:"Target",alignWithPrevious:!0},{kind:"output",name:"Transferred Names"},{kind:"panel",name:"Target IDs",items:[],defaultClosed:!0},{kind:"input",name:"Source"},{kind:"panel",name:"Source IDs",items:[],defaultClosed:!0},{kind:"input",name:"Pattern Mode"},{kind:"input",name:"Attribute Names"},{kind:"input",name:"Exclude Names"}]},an={customSocketOrder:!0,items:[{kind:"input",name:"World"},{kind:"output",name:"World",alignWithPrevious:!0},{kind:"input",name:"Delta Time"},{kind:"input",name:"Filter"},{kind:"input",name:"Simulation to World"},{kind:"panel",name:"Solver",items:[{kind:"input",name:"Substeps"},{kind:"input",name:"Constraint Iterations"},{kind:"input",name:"Solver Path"}],defaultClosed:!0},{kind:"panel",name:"Interpolation Range",items:[{kind:"input",name:"Begin"},{kind:"input",name:"End"}],defaultClosed:!0}]},on={customSocketOrder:!0,conditional:!0,items:[{kind:"input",name:"Closure"},{kind:"panel",name:"Interface",items:[{kind:"output",name:"",identifier:"__extend__"},{kind:"input",name:"",identifier:"__extend__"}]}]},rn={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"layout"},{kind:"input",name:"Color"},{kind:"input",name:"Roughness"},{kind:"input",name:"IOR"},{kind:"input",name:"Normal"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},un={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"layout"},{kind:"input",name:"Base Color"},{kind:"input",name:"Edge Tint"},{kind:"input",name:"IOR"},{kind:"input",name:"Extinction"},{kind:"input",name:"Roughness"},{kind:"input",name:"Anisotropy"},{kind:"input",name:"Rotation"},{kind:"input",name:"Normal"},{kind:"input",name:"Tangent"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},sn={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"input",name:"Base Color"},{kind:"input",name:"Metallic"},{kind:"input",name:"Roughness"},{kind:"input",name:"IOR"},{kind:"input",name:"Alpha"},{kind:"input",name:"Thin Wall"},{kind:"input",name:"Normal"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Diffuse",items:[{kind:"input",name:"Diffuse Roughness"}],defaultClosed:!0},{kind:"panel",name:"Subsurface",items:[{kind:"layout"},{kind:"input",name:"Subsurface Weight"},{kind:"input",name:"Subsurface Radius"},{kind:"input",name:"Subsurface Scale"},{kind:"input",name:"Subsurface IOR"},{kind:"input",name:"Subsurface Anisotropy"}],defaultClosed:!0},{kind:"panel",name:"Specular",items:[{kind:"layout"},{kind:"input",name:"Specular IOR Level"},{kind:"input",name:"Specular Tint"},{kind:"input",name:"Anisotropic"},{kind:"input",name:"Anisotropic Rotation"},{kind:"input",name:"Tangent"}],defaultClosed:!0},{kind:"panel",name:"Transmission",items:[{kind:"input",name:"Transmission Weight"}],defaultClosed:!0},{kind:"panel",name:"Coat",items:[{kind:"input",name:"Coat Weight"},{kind:"input",name:"Coat Roughness"},{kind:"input",name:"Coat IOR"},{kind:"input",name:"Coat Tint"},{kind:"input",name:"Coat Normal"}],defaultClosed:!0},{kind:"panel",name:"Sheen",items:[{kind:"input",name:"Sheen Weight"},{kind:"input",name:"Sheen Roughness"},{kind:"input",name:"Sheen Tint"}],defaultClosed:!0},{kind:"panel",name:"Emission",items:[{kind:"input",name:"Emission Color"},{kind:"input",name:"Emission Strength"}],defaultClosed:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},dn={customSocketOrder:!0,conditional:!0,items:[{kind:"layout"},{kind:"output",name:"Is Hit"},{kind:"output",name:"Self Hit"},{kind:"output",name:"Hit Distance"},{kind:"output",name:"Hit Position"},{kind:"output",name:"Hit Normal"},{kind:"input",name:"Position"},{kind:"input",name:"Direction"},{kind:"input",name:"Length"},{kind:"panel",name:"Attributes",items:[{kind:"input",name:"",identifier:"__extend__"},{kind:"output",name:"",identifier:"__extend__",alignWithPrevious:!0}],defaultClosed:!0}]},ln={customSocketOrder:!0,items:[{kind:"output",name:"Volume"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Absorption",items:[{kind:"input",name:"Absorption Coefficients"}]},{kind:"panel",name:"Scatter",items:[{kind:"layout"},{kind:"input",name:"Scatter Coefficients"},{kind:"input",name:"Anisotropy"},{kind:"input",name:"IOR"},{kind:"input",name:"Backscatter"},{kind:"input",name:"Alpha"},{kind:"input",name:"Diameter"}]},{kind:"panel",name:"Emission",items:[{kind:"input",name:"Emission Coefficients"}]}]},mn={CompositorNodeColorBalance:Re,CompositorNodeColorCorrection:Pe,CompositorNodeColorSpill:_e,CompositorNodeCornerPin:Me,CompositorNodeDBlur:ve,CompositorNodeDisplace:Ae,CompositorNodeGlare:be,CompositorNodeKeying:De,CompositorNodeMapUV:Be,CompositorNodeMask:Le,CompositorNodePlaneTrackDeform:$e,CompositorNodeRotate:je,CompositorNodeScale:Fe,CompositorNodeStabilize:Ge,CompositorNodeStringToImage:We,CompositorNodeTransform:He,CompositorNodeTranslate:Ue,FunctionNodeCombineMatrix:Ye,FunctionNodeSeparateMatrix:ze,FunctionNodeTrimString:Ve,GeometryNodeCubeGridTopology:Xe,GeometryNodeForeachGeometryElementOutput:Ke,GeometryNodeGetAttributeNames:Ze,GeometryNodeGridToPoints:qe,GeometryNodeInputVoxelIndex:Je,GeometryNodeMeshBevel:Qe,GeometryNodeSampleSoundFrequencies:en,GeometryNodeStringToCurves:nn,GeometryNodeTransferAttributes:tn,GeometryNodeXPBDSolver:an,NodeEvaluateClosure:on,ShaderNodeBsdfGlass:rn,ShaderNodeBsdfMetallic:un,ShaderNodeBsdfPrincipled:sn,ShaderNodeRaycast:dn,ShaderNodeVolumeCoefficients:ln},I=20,N=1,S=I,O=I/2,D=.2*I,me=.25*I,Z=1.2*I,_=.1*I,pn=.8*I,w=.5,Y=D+w,cn=D+N,ne=2.5,kn=.2,fn=S*.5,z=S*-.5,hn=me,gn=1.5*I,R=11,h={sliderFill:"#4671b2",background:"#1a1a1a",body:"#303030",outline:"#ffffff",outlineAlpha:38/255,select:"#ed5700",active:"#ffffff",wireInner:"#8d8d8d",wire:"#1a1a1a",noodleCurving:4,dashAlpha:.5,text:"#e6e6e6",frame:"#0f0f0f",frameAlpha:204/255},Sn={INPUT:"#82354c",OUTPUT:"#3e232a",CONVERTER:"#246283",COLOR:"#6e6e23",VECTOR:"#3c3c83",FILTER:"#412b51",GROUP:"#374725",INTERFACE:"#1d1d1d",MATTE:"#5a3838",DISTORT:"#3e5a5b",TEXTURE:"#79461d",SHADER:"#2b652b",SCRIPT:"#203c3c",GEOMETRY:"#1d725e",ATTRIBUTE:"#1d2546",NONE:h.body,PATTERN:h.body},xn={VALUE:"#a1a1a1",VECTOR:"#6363c7",RGBA:"#c7c729",SHADER:"#63c763",BOOLEAN:"#cca6d6",INT:"#598c5c",STRING:"#70b3ff",OBJECT:"#ed9e5c",IMAGE:"#633863",GEOMETRY:"#00d6a3",COLLECTION:"#f5f5f5",TEXTURE:"#9e4fa3",MATERIAL:"#eb7582",ROTATION:"#a663c7",MENU:"#666666",MATRIX:"#b83385",BUNDLE:"#4d8080",CLOSURE:"#7d7d3b",FONT:"#635742",SOUND:"#635742",INT_VECTOR:"#5c789c",CUSTOM:"#333333"},yn="#ff00ff",pe=h.wire,Cn="#808080",F=N;function A(e){return e.enabled&&!e.hide}function V(e){const n=e.location[0]??0,a=e.location[1]??0,r=e.width,t=e.outputs.filter(A),o=e.inputs.filter(A);if(e.collapsed){const p=fn,m=p*Math.max(o.length,t.length,2)+D*2,x=a+m/2+z,c=a-m/2+z,k=(g,C)=>{let y=a+p*(g.length-1)*.5+z;return g.map(E=>{const P=M(E,C,C?n+r:n,y,y);return y-=p,P})};return{name:e.name,x:n,yTop:x,yBottom:c,width:r,collapsed:!0,sockets:[...k(t,!0),...k(o,!1)]}}let d=a-S;const u=[],l=(p,m)=>{const x=d;u.push(M(p,m,m?n+r:n,x-O,x)),d=x-S};return(t.length>0||o.length>0)&&(d-=2*_),t.forEach((p,m)=>{m>0&&(d-=_),l(p,!0)}),t.length>0&&o.length>0&&(d-=_),o.forEach((p,m)=>{(m>0||t.length>0)&&m>0&&(d-=_),l(p,!1)}),t.length>0||o.length>0?d-=2*_:d-=O,{name:e.name,x:n,yTop:a,yBottom:Math.min(d,a-2*S),width:r,collapsed:!1,sockets:u}}function M(e,n,a,r,t,o=!1){return{identifier:e.identifier,name:e.label??e.name,type:e.type,shape:e.shape,output:n,linked:e.linked,multiInput:e.multiInput,hideValue:e.hideValue,value:e.value,...e.softMin===void 0?{}:{softMin:e.softMin},...e.softMax===void 0?{}:{softMax:e.softMax},x:a,y:r,rowTop:t,panelCollapsed:o}}function Tn(e,n,a=h.noodleCurving){if(a===0)return[[e[0]+(n[0]-e[0])/3,e[1]+(n[1]-e[1])/3],[e[0]+(n[0]-e[0])*2/3,e[1]+(n[1]-e[1])*2/3]];const r=Math.abs(n[0]-e[0]),t=Math.abs(n[1]-e[1]),o=r===0?Number.POSITIVE_INFINITY:t/r,d=Math.min(1,o*(4.5-.25*a)),u=a*.1*r*d;return[[e[0]+u,e[1]],[n[0]-u,n[1]]]}function K(e){return e.idname==="NodeFrame"?h.frame:e.colorTag==="OUTPUT"&&!e.activeOutput?h.body:Sn[e.colorTag]??h.body}function te(e){return e.useCustomColor?b(e.color):h.body}function b(e){const n=a=>Math.round(Math.min(1,Math.max(0,a))*255).toString(16).padStart(2,"0");return`#${n(e[0]??0)}${n(e[1]??0)}${n(e[2]??0)}`}function ie(e,n){const a=ae(h.background),r=ae(e);return b([r[0]*(1-n)+a[0]*n,r[1]*(1-n)+a[1]*n,r[2]*(1-n)+a[2]*n])}const En=.6,wn=.8,On=.2;function ae(e){const n=Number.parseInt(e.slice(1),16);return[(n>>16&255)/255,(n>>8&255)/255,(n&255)/255]}function G(e){return xn[e]??yn}const oe=O,X=Z/3,re=Z/4,In=I,j={cell:8,reach:4,spread:3.64648,stroke:1},Nn="#000000",Rn=31/255*1.5,$=e=>e.identifier??e.name;function Pn(e,n,a){if(!e.customSocketOrder)return{ok:!1,why:"its declaration does not set use_custom_socket_order, so Blender lays it out the legacy way"};const r=[],t=[],o=l=>{for(const p of l)p.kind==="input"?r.push($(p)):p.kind==="output"?t.push($(p)):p.kind==="panel"&&o(p.items)};o(e.items);const d=(l,p,m)=>{if(l.length!==p.length)return`the declaration names ${l.length} ${m}${l.length===1?"":"s"} and the engine reports ${p.length}`;for(let x=0;x<l.length;x++)if(l[x]!==p[x]?.identifier)return`${m} ${x} is "${p[x]?.identifier}" in the engine and "${l[x]}" in the declaration`;return null},u=d(t,a,"output")??d(r,n,"input");return u===null?{ok:!0}:{ok:!1,why:u}}const _n={Socket:2,Separator:.5,Layout:3,PanelHeader:4},Mn={Socket:2,Separator:1,Layout:5,PanelHeader:4,PanelContentEnd:1},vn={Socket:{Socket:1,Separator:0,Layout:2,PanelHeader:3,PanelContentEnd:2},Layout:{Socket:2,Separator:0,Layout:1,PanelHeader:3,PanelContentEnd:2},Separator:{Socket:2,Separator:1,Layout:1,PanelHeader:1,PanelContentEnd:1},PanelHeader:{Socket:4,Separator:3,Layout:3,PanelHeader:5,PanelContentBegin:3,PanelContentEnd:3},PanelContentBegin:{Socket:2,Separator:1,Layout:2,PanelHeader:3,PanelContentEnd:1},PanelContentEnd:{Socket:1,Separator:1,Layout:1,PanelHeader:3,PanelContentEnd:0}};function ce(e,n,a,r,t,o,d){let u=!1;for(const l of e){if(l.kind==="input"||l.kind==="output"){const y=n.get(`${l.kind}:${$(l)}`);if(!y||!A(y)){u=!1;continue}const E=o[o.length-1];if(l.alignWithPrevious===!0&&u&&E&&E.type==="Socket"){o[o.length-1]={type:"Socket",input:l.kind==="input"?y:E.input,output:l.kind==="output"?y:E.output},u=!0;continue}o.push({type:"Socket",input:l.kind==="input"?y:void 0,output:l.kind==="output"?y:void 0}),u=!0;continue}if(u=!1,l.kind==="separator"){o.push({type:"Separator"});continue}if(l.kind==="layout"){r&&o.push({type:"Layout"});continue}if(l.kind!=="panel")continue;const p=l.items[0],m=p&&p.kind==="input"&&p.panelToggle===!0?p:null,x=m?n.get(`input:${$(m)}`)??null:null,c=[],k=y=>{for(const E of y)if(E.kind==="input"||E.kind==="output"){const P=n.get(`${E.kind}:${$(E)}`);P&&c.push(P)}else E.kind==="panel"&&k(E.items)};if(k(l.items),!c.some(A))continue;const g=a(l.defaultClosed===!0),C={name:l.name,depth:t,collapsed:g,toggle:x,owned:c,centerY:0,contentTop:null,contentBottom:null,fillsNodeEnd:!1};d.push(C),o.push({type:"PanelHeader",panel:C}),!g&&(o.push({type:"PanelContentBegin",panel:C}),ce(l.items.filter(y=>y!==m),n,a,r,t+1,o,d),o.push({type:"PanelContentEnd",panel:C}))}}function An(e){const n=e.location[0]??0,a=e.location[1]??0,r=e.width,t=new Map;for(const c of e.inputs)t.set(`input:${c.identifier}`,c);for(const c of e.outputs)t.set(`output:${c.identifier}`,c);let o=0;const d=e.panelStates,u=[],l=[];ce(e.declaration.items,t,c=>d[o++]?.collapsed??c,e.showOptions,0,u,l);const p=[];let m=a-S;u.length===0&&(m-=O);for(let c=0;c<u.length;c++){const k=u[c];if(!k)continue;const g=u[c-1],C=c===0?_n[k.type]??0:vn[g?.type??"Socket"]?.[k.type]??0;if(m-=C*_,k.type==="Socket"){const y=m;k.output&&p.push(M(k.output,!0,n+r,y-O,y)),k.input&&p.push(M(k.input,!1,n,y-O,y)),m=y-S;continue}if(k.type==="Layout"||k.type==="Separator"){m-=S;continue}if(k.type==="PanelHeader"&&k.panel){m-=oe/2,k.panel.centerY=m,m-=oe/2,k.panel.toggle&&p.push(M(k.panel.toggle,!1,n,k.panel.centerY,k.panel.centerY));continue}k.type==="PanelContentBegin"&&k.panel&&(k.panel.contentTop=m),k.type==="PanelContentEnd"&&k.panel&&(k.panel.contentBottom=m)}const x=u[u.length-1];x&&(m-=(Mn[x.type]??0)*_);for(const c of l)if(c.collapsed)for(const k of c.owned){if(!A(k))continue;const g=e.outputs.includes(k);p.push(M(k,g,g?n+r:n,c.centerY,c.centerY,!0))}for(let c=u.length-1;c>=0;c--){const k=u[c];if(!k||k.type!=="PanelContentEnd")break;k.panel&&(k.panel.fillsNodeEnd=!0)}return{name:e.name,x:n,yTop:a,yBottom:Math.min(m,a-2*S),width:r,collapsed:!1,sockets:p,panels:l.map(c=>({name:c.name,depth:c.depth,collapsed:c.collapsed,centerY:c.centerY,contentTop:c.contentTop,contentBottom:c.contentBottom,fillsNodeEnd:c.fillsNodeEnd,toggle:c.toggle?M(c.toggle,!1,n,c.centerY,c.centerY):null}))}}function bn(e){const n=a=>a.some(r=>r.kind==="layout"?!0:r.kind==="panel"?n(r.items):!1);return n(e.items)}const Ct="workspace.document",Tt="Shader Editor";Ce(Ne);const Dn=320,ue=.1,se=4;function Et(){const e=T.useSyncExternalStore(Te,Q,Q),[n,a]=T.useState(null),[r,t]=T.useState(null),o=T.useRef(null),d=T.useRef(!1);T.useSyncExternalStore(Ee,ee,ee);const{transform:u,looked:l,refusal:p,size:m}=U(),x=T.useCallback(s=>{const f=U().transform;B({transform:typeof s=="function"?s(f):s})},[]),c=T.useCallback(s=>{B({looked:s,refusal:null})},[]),k=T.useCallback(s=>{const f=U().size;f.w===s.w&&f.h===s.h||B({size:s})},[]),g=T.useCallback(s=>{we(s)},[]);T.useEffect(()=>{let s=!0;return(async()=>{try{const f=await Oe();if(!s)return;a(f),t(null)}catch(f){if(!s)return;t(f instanceof Error?f.message:String(f))}})(),()=>{s=!1}},[e]),T.useEffect(()=>{const s=o.current;if(!s)return;const f=new ResizeObserver(()=>{k({w:s.clientWidth,h:s.clientHeight})});return f.observe(s),k({w:s.clientWidth,h:s.clientHeight}),()=>f.disconnect()},[]);const C=T.useMemo(()=>jn(n),[n]);T.useEffect(()=>{B({drawn:[...C.frames,...C.nodes].map(({node:s,laid:f,panels:v,fallback:ye})=>{const J=f.sockets.find(H=>!H.panelCollapsed)??f.sockets[0];return{panels:v.length,collapsedPanels:v.filter(H=>H.collapsed).length,panelFallback:ye,name:s.name,x:f.x,yTop:f.yTop,yBottom:f.yBottom,width:f.width,height:f.yTop-f.yBottom,sockets:f.sockets.length,firstSocketBelowTop:J?f.yTop-J.y:null,header:K(s)}})})},[C]);const y=T.useCallback(()=>{const s=Fn(C.nodes);if(!s)return;const f=de(Math.min(m.w/(s.w+2*S),m.h/(s.h+2*S)),ue,se);B({transform:{cx:s.x+s.w/2,cy:s.y-s.h/2,zoom:f},framedAt:Date.now()})},[C.nodes,m.h,m.w]),E=Ie(),P=T.useRef(0);T.useEffect(()=>{E!==P.current&&(P.current=E,y())},[E,y]),T.useEffect(()=>{d.current||C.nodes.length===0||m.w<=1||(d.current=!0,y())},[C.nodes.length,m.w,y]);const W=T.useRef(null),fe=s=>{s.button===1&&(s.preventDefault(),s.target.setPointerCapture?.(s.pointerId),W.current={x:s.clientX,y:s.clientY,cx:u.cx,cy:u.cy})},he=s=>{const f=W.current;f&&x(v=>({...v,cx:f.cx-(s.clientX-f.x)/v.zoom,cy:f.cy+(s.clientY-f.y)/v.zoom}))},q=()=>{W.current=null},ge=s=>{s.preventDefault(),x(f=>({...f,zoom:de(f.zoom*(s.deltaY<0?1.1:1/1.1),ue,se)}))},Se=n?.nodes.find(s=>s.name===l)??null,xe=u.zoom>kn;return i.jsxs("div",{"data-testid":"blender-node-editor",style:{display:"flex",position:"absolute",inset:0,overflow:"hidden"},children:[i.jsxs("div",{style:{display:"flex",flexDirection:"column",flex:1,minWidth:0,minHeight:0},children:[i.jsx(Xn,{tree:n,zoom:u.zoom,onViewAll:y,onRefuse:g}),i.jsx("div",{ref:o,style:{position:"relative",flex:1,minHeight:0},children:i.jsx("svg",{role:"presentation",width:"100%",height:"100%",onPointerDown:fe,onPointerMove:he,onPointerUp:q,onPointerCancel:q,onWheel:ge,onContextMenu:s=>{s.preventDefault(),g("The node context menu adds, deletes and reconnects nodes — editing.")},style:{display:"block",background:h.background,cursor:"default"},children:i.jsxs("g",{transform:`translate(${m.w/2} ${m.h/2}) scale(${u.zoom} ${-u.zoom}) translate(${-u.cx} ${-u.cy})`,children:[C.frames.map(s=>i.jsx(Vn,{node:s.node,laid:s.laid},s.node.name)),C.links.map(s=>i.jsx(zn,{link:s},s.key)),C.nodes.map(s=>i.jsx(Gn,{node:s.node,laid:s.laid,panels:s.panels,looked:s.node.name===l,details:xe,onLook:()=>c(s.node.name),onRefuse:g},s.node.name))]})})}),i.jsx(Kn,{entries:C.nodes,error:r,refusal:p})]}),i.jsx(Zn,{node:Se,onRefuse:g})]})}const Bn=26,Ln=22,$n=mn;function jn(e){if(!e)return{nodes:[],frames:[],links:[]};const n=new Map,a=e.nodes.map(t=>{const o={name:t.name,location:t.location,width:t.width,collapsed:t.collapsed,inputs:t.inputs,outputs:t.outputs},d=t.collapsed?void 0:$n[t.idname];if(t.panelCount>0&&!d){const l=V(o);return n.set(t.name,l),{node:t,laid:l,panels:[],fallback:t.collapsed?null:"no traced declaration — the trace covers the 36 node types that declare a panel in Blender 5.2.0, and a node group’s panels are runtime data",approximate:!1}}if(d){const l=Pn(d,t.inputs,t.outputs);if(l.ok){const m=An({...o,declaration:d,panelStates:t.panels,showOptions:t.showOptions});return n.set(t.name,m),{node:t,laid:m,panels:m.panels,fallback:null,approximate:bn(d)}}const p=V(o);return n.set(t.name,p),{node:t,laid:p,panels:[],fallback:l.why,approximate:!1}}const u=V(o);return n.set(t.name,u),{node:t,laid:u,panels:[],fallback:null,approximate:!1}}),r=e.links.flatMap((t,o)=>{const d=n.get(t.fromNode),u=n.get(t.toNode);if(!d||!u)return[];const l=d.sockets.find(m=>m.output&&m.identifier===t.fromSocket),p=u.sockets.find(m=>!m.output&&m.identifier===t.toSocket);return!l||!p?[]:[{key:`${t.fromNode}.${t.fromSocket}→${t.toNode}.${t.toSocket}#${o}`,from:[l.x,l.y],to:[p.x,p.y],fromColor:G(l.type),toColor:G(p.type),muted:t.muted,valid:t.valid}]});return{nodes:a.filter(t=>t.node.idname!=="NodeFrame"),frames:a.filter(t=>t.node.idname==="NodeFrame"),links:r}}function Fn(e){if(e.length===0)return null;let n=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,r=Number.POSITIVE_INFINITY,t=Number.NEGATIVE_INFINITY;for(const{laid:o}of e)n=Math.min(n,o.x),a=Math.max(a,o.x+o.width),r=Math.min(r,o.yBottom),t=Math.max(t,o.yTop);return{x:n,y:t,w:a-n,h:t-r}}const de=(e,n,a)=>Math.min(a,Math.max(n,e));function Gn({node:e,laid:n,panels:a,looked:r,details:t,onLook:o,onRefuse:d}){if(e.type==="REROUTE"){const g=n.sockets[0];return i.jsx("circle",{cx:n.x,cy:n.yTop,r:hn,fill:g?G(g.type):h.wireInner,stroke:pe,strokeWidth:F,onPointerDown:C=>{C.button===0&&o()}})}const u=e.muted?ie(K(e),En):K(e),l=e.muted?ie(te(e),wn):te(e),p=e.muted?1-On:1,m=e.selected?e.activeOutput||r?h.active:h.select:h.outline,x=e.selected?1:h.outlineAlpha,c=n.yTop-n.yBottom,k=e.label??e.typeLabel;return i.jsxs("g",{opacity:p,onPointerDown:g=>{g.button===0&&o()},onDoubleClick:()=>d(`Renaming "${e.name}" writes Node.name — editing parity is not the program.`),style:{cursor:"default"},children:[n.collapsed?i.jsx("rect",{x:n.x-w,y:-n.yTop-w,width:n.width+2*w,height:c+2*w,rx:Y,fill:u,transform:"scale(1 -1)"}):i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:n.x-w,y:-(n.yTop-S)-w,width:n.width+2*w,height:c-S+2*w,rx:Y,fill:l,transform:"scale(1 -1)"}),i.jsx("rect",{x:n.x-w,y:-n.yTop-w,width:n.width+2*w,height:S+2*w,rx:Y,fill:u,transform:"scale(1 -1)"}),i.jsx("rect",{x:n.x-w,y:-(n.yTop-S)-w,width:n.width+2*w,height:D,fill:u,transform:"scale(1 -1)"}),a.map(g=>i.jsx(Wn,{panel:g,laid:n},`bg:${g.name}`))]}),i.jsx("rect",{x:n.x-N,y:-n.yTop-N,width:n.width+2*N,height:c+2*N,rx:cn,fill:"none",stroke:m,strokeOpacity:x,strokeWidth:N,transform:"scale(1 -1)"}),i.jsx("text",{x:n.x+Z,y:-(n.yTop-S/2),transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:k}),t&&n.sockets.map(g=>i.jsx(Un,{socket:g,node:n,onRefuse:d},`${g.output?"o":"i"}:${g.identifier}`)),t&&a.map(g=>i.jsx(Hn,{panel:g,laid:n,onRefuse:d},`hd:${g.name}`))]})}function Wn({panel:e,laid:n}){if(e.contentTop===null||e.contentBottom===null)return null;const a=[{y:e.contentTop,height:e.contentTop-e.contentBottom,radius:0,times:1}];return e.fillsNodeEnd&&a.push({y:e.contentBottom,height:e.contentBottom-n.yBottom,radius:D,times:e.depth+1}),i.jsx("g",{style:{pointerEvents:"none"},children:a.flatMap((r,t)=>Array.from({length:r.times},(o,d)=>i.jsx("rect",{x:n.x,y:-r.y,width:n.width,height:Math.max(r.height,0),rx:r.radius,fill:Nn,fillOpacity:Rn,transform:"scale(1 -1)"},`${t}:${d}`)))})}function Hn({panel:e,laid:n,onRefuse:a}){const r=pn,t=r/j.cell,o=n.x+X+r/2,d=e.centerY,u=j.reach*t,l=j.spread*t,p=e.collapsed?`M ${o-u/2} ${-(d+l)} L ${o+u/2} ${-d} L ${o-u/2} ${-(d-l)}`:`M ${o-l} ${-(d+u/2)} L ${o} ${-(d-u/2)} L ${o+l} ${-(d+u/2)}`,m=n.x+X+r+re+(e.toggle&&!e.toggle.linked?In:0);return i.jsxs("g",{onPointerDown:x=>{x.button===0&&(x.stopPropagation(),a(`${e.collapsed?"Opening":"Collapsing"} "${e.name}" writes the panel's is_collapsed — editing parity is not the program.`))},style:{cursor:"default"},children:[i.jsx("rect",{x:n.x,y:-(d+O),width:n.width,height:2*O,fill:"transparent",transform:"scale(1 -1)"}),i.jsx("path",{d:p,fill:"none",stroke:h.text,strokeWidth:j.stroke*t,strokeLinecap:"round",strokeLinejoin:"round",transform:"scale(1 -1)",style:{pointerEvents:"none"}}),e.toggle&&!e.toggle.linked&&i.jsx("rect",{x:n.x+X+r+re,y:-(d+O/2),width:O,height:O,rx:.2*O,fill:e.toggle.value===!0?"#4772b3":"#545454",transform:"scale(1 -1)",style:{pointerEvents:"none"}}),i.jsx("text",{x:m,y:-d,transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name})]})}function Un({socket:e,node:n,onRefuse:a}){const r=G(e.type),t=e.type==="CUSTOM"?Cn:pe,o=me,d=e.shape.replace("_DOT",""),u=e.shape.endsWith("_DOT"),l=d==="SQUARE"?i.jsx("rect",{x:e.x-o,y:-e.y-o,width:2*o,height:2*o,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"}):d==="DIAMOND"?i.jsx("polygon",{points:`${e.x},${-e.y-o} ${e.x+o},${-e.y} ${e.x},${-e.y+o} ${e.x-o},${-e.y}`,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"}):i.jsx("circle",{cx:e.x,cy:-e.y,r:o,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"});return i.jsxs("g",{onPointerDown:p=>{p.button===0&&(p.stopPropagation(),a(`Dragging from "${e.name}" would make a link — editing parity is not the program.`))},children:[l,u&&i.jsx("circle",{cx:e.x,cy:-e.y,r:o*.35,fill:t,transform:"scale(1 -1)"}),!n.collapsed&&!e.panelCollapsed&&i.jsx(Yn,{socket:e,node:n,onRefuse:a})]})}function Yn({socket:e,node:n,onRefuse:a}){const r=O,t=n.x+r,o=n.x+n.width-r,d=-(e.rowTop-S/2);if(!(!e.output&&!e.linked&&!e.hideValue&&e.value!==null))return i.jsx("text",{x:e.output?o:t,y:d,transform:"scale(1 -1)",textAnchor:e.output?"end":"start",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name});const l=Array.isArray(e.value)&&e.value.length>=3;return i.jsxs("g",{onPointerDown:p=>{p.button===0&&(p.stopPropagation(),a(`Changing "${e.name}" writes the socket's default_value — editing parity is not the program.`))},style:{cursor:"default"},children:[i.jsx("rect",{x:t,y:d-S/2+1,width:o-t,height:S-2,rx:.2*S,fill:"#545454",transform:"scale(1 -1)"}),le(e)!==null&&i.jsxs(i.Fragment,{children:[i.jsx("clipPath",{id:`sl-${e.identifier}`,children:i.jsx("rect",{x:t,y:d-S/2+1,width:o-t,height:S-2,rx:.2*S})}),i.jsx("rect",{x:t,y:d-S/2+1,width:(o-t)*(le(e)??0),height:S-2,fill:h.sliderFill,clipPath:`url(#sl-${e.identifier})`,transform:"scale(1 -1)"})]}),i.jsx("text",{x:t+6,y:d,transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name}),l?i.jsx("rect",{x:o-34,y:d-S/2+3,width:30,height:S-6,rx:2,fill:b(e.value),transform:"scale(1 -1)"}):i.jsx("text",{x:o-6,y:d,transform:"scale(1 -1)",textAnchor:"end",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:ke(e.value)})]})}function le(e){const{softMin:n,softMax:a,value:r}=e;return n===void 0||a===void 0||typeof r!="number"||a<=n?null:Math.min(1,Math.max(0,(r-n)/(a-n)))}function ke(e){return e===null?"":typeof e=="boolean"?e?"On":"Off":typeof e=="number"?e.toFixed(3):typeof e=="string"?e:e.map(n=>n.toFixed(2)).join(", ")}function zn({link:e}){const[n,a]=Tn(e.from,e.to),r=`M ${e.from[0]} ${e.from[1]} C ${n[0]} ${n[1]}, ${a[0]} ${a[1]}, ${e.to[0]} ${e.to[1]}`,t=e.valid?h.wireInner:"#ff2020";return i.jsxs("g",{style:{pointerEvents:"none"},children:[i.jsx("path",{d:r,fill:"none",stroke:h.wire,strokeWidth:ne+2*N}),i.jsx("path",{d:r,fill:"none",stroke:t,strokeWidth:ne,strokeDasharray:e.muted?"10 10":void 0,strokeOpacity:e.muted?h.dashAlpha:1})]})}function Vn({node:e,laid:n}){const a=Math.max(n.yTop-n.yBottom,gn*2);return i.jsxs("g",{style:{pointerEvents:"none"},children:[i.jsx("rect",{x:n.x,y:-n.yTop,width:n.width,height:a,rx:D,fill:e.useCustomColor?b(e.color):h.frame,fillOpacity:h.frameAlpha,transform:"scale(1 -1)"}),e.label&&i.jsx("text",{x:n.x+n.width/2,y:-(n.yTop-25),transform:"scale(1 -1)",textAnchor:"middle",fill:h.text,fontSize:20,children:e.label})]})}function Xn({tree:e,zoom:n,onViewAll:a,onRefuse:r}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--volter-space-2)",height:Bn,padding:"0 var(--volter-space-2)",background:h.background,color:h.text,font:`${R}px inherit`,borderBottom:"1px solid #161616"},children:[i.jsx("span",{"data-testid":"node-editor-tree-type",style:{opacity:.85},children:e?.typeLabel??"Shader Editor"}),i.jsx("span",{style:{opacity:.4},children:"·"}),i.jsx("span",{"data-testid":"node-editor-material",children:e?.material??"No material"}),i.jsx("span",{style:{flex:1}}),i.jsxs("span",{style:{opacity:.6},children:[Math.round(n*100),"%"]}),i.jsx("button",{type:"button",className:"volter-btn","data-variant":"ghost","data-size":"sm",onClick:a,"data-testid":"node-editor-view-all",children:"View All"}),i.jsx("button",{type:"button",className:"volter-btn","data-variant":"ghost","data-size":"sm","data-testid":"node-editor-use-nodes",onClick:()=>r("Use Nodes writes Material.use_nodes — editing parity is not the program."),children:"Use Nodes"})]})}function Kn({entries:e,error:n,refusal:a}){const r=e.filter(u=>u.fallback!==null),t=e.filter(u=>u.approximate),o=e.reduce((u,l)=>u+l.panels.length,0),d=n||a||(r.length>0?`${r.map(u=>`"${u.node.name}" draws its sockets flat: ${u.fallback}`).join("; ")}.`:t.length>0?`${t.map(u=>`"${u.node.name}"`).join(", ")} ${t.length===1?"carries a":"carry"} declaration LAYOUT row, whose drawn height RNA cannot answer; one UI unit is reserved for it.`:o>0?`${o} socket panel${o===1?"":"s"} drawn from Blender's own declarations. Read-only: this view inspects the node tree and never writes it.`:"Read-only: this view inspects the node tree and never writes it.");return i.jsx("div",{"data-testid":"node-editor-status",style:{flex:"0 0 auto",height:Ln,display:"flex",alignItems:"center",padding:"0 var(--volter-space-2)",background:h.background,color:n||a?"#ffa028":"#888888",font:`${R}px inherit`,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:d})}function Zn({node:e,onRefuse:n}){return i.jsxs("aside",{"data-testid":"node-editor-sidebar",style:{width:Dn,flex:"0 0 auto",overflow:"auto",background:h.background,color:h.text,font:`${R}px inherit`,borderLeft:"1px solid #161616",padding:"var(--volter-space-2)"},children:[i.jsx("div",{style:{opacity:.6,marginBottom:"var(--volter-space-2)"},children:"Node"}),e?i.jsxs(i.Fragment,{children:[i.jsx(L,{label:"Name",value:e.name,onRefuse:n}),i.jsx(L,{label:"Label",value:e.label??"",onRefuse:n}),i.jsx(L,{label:"Color",value:e.useCustomColor?b(e.color):"Off",onRefuse:n,swatch:e.useCustomColor?b(e.color):void 0}),i.jsx(L,{label:"Mute",value:e.muted?"On":"Off",onRefuse:n}),i.jsx("div",{style:{opacity:.6,margin:"var(--volter-space-3) 0 var(--volter-space-1)"},children:"Properties"}),e.inputs.filter(A).map(a=>i.jsx(L,{label:a.label??a.name,value:a.linked?"Linked":ke(a.value),onRefuse:n},a.identifier))]}):i.jsx("div",{style:{opacity:.5},children:"No node looked at."})]})}function L({label:e,value:n,swatch:a,onRefuse:r}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--volter-space-2)",height:20},onPointerDown:()=>r(`"${e}" is read here and written nowhere — inspection parity.`),children:[i.jsx("span",{style:{flex:"0 0 45%",opacity:.75,textAlign:"right"},children:e}),a&&i.jsx("span",{style:{width:14,height:14,borderRadius:2,background:a,flex:"0 0 auto"}}),i.jsx("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},title:n,children:n})]})}export{Et as default,Ct as point,Tt as title};
|
|
1
|
+
import{a as i}from"./jsx-runtime-DPjLkJKQ.js";import{go as Ce}from"./index-Dt5jm3bx.js";import{r as T}from"./index-nmcBqr7Y.js";import{s as Te,b as Q,a as Ee,n as ee,c as B,d as U,r as we,e as Oe,f as Ie,N as Ne}from"./blender-runtime-host-Ce-6lPKR.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"./preview-renderer-BrYNFV1p.js";import"./three.module-BLhyNg0e.js";import"./three.core-3arARmh6.js";import"./environment-Dg-YaLsA.js";import"./RoomEnvironment-BkknvS_I.js";import"./EXRLoader-CITMBvGd.js";import"./HDRLoader-BTGuGhVo.js";import"./renderer-ownership-BovSEcLv.js";import"./output-pass-HurwNl0G.js";import"./Pass-D1MRT672.js";import"./clip-planes-CnAI6DZn.js";import"./content-bounds-DVWAzm9f.js";import"./hierarchy-marks-CO_ecrau.js";import"./workspace-arrangement-9RRX0-sM.js";const Re={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Factor",identifier:"Fac"},{kind:"input",name:"Type"},{kind:"input",name:"Lift",identifier:"Base Lift"},{kind:"input",name:"Lift",identifier:"Color Lift"},{kind:"input",name:"Gamma",identifier:"Base Gamma"},{kind:"input",name:"Gamma",identifier:"Color Gamma"},{kind:"input",name:"Gain",identifier:"Base Gain"},{kind:"input",name:"Gain",identifier:"Color Gain"},{kind:"input",name:"Offset",identifier:"Base Offset"},{kind:"input",name:"Offset",identifier:"Color Offset"},{kind:"input",name:"Power",identifier:"Base Power"},{kind:"input",name:"Power",identifier:"Color Power"},{kind:"input",name:"Slope",identifier:"Base Slope"},{kind:"input",name:"Slope",identifier:"Color Slope"},{kind:"panel",name:"Input",items:[{kind:"input",name:"Temperature",identifier:"Input Temperature"},{kind:"input",name:"Tint",identifier:"Input Tint"},{kind:"layout"}]},{kind:"panel",name:"Output",items:[{kind:"input",name:"Temperature",identifier:"Output Temperature"},{kind:"input",name:"Tint",identifier:"Output Tint"},{kind:"layout"}]}]},Pe={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Mask"},{kind:"panel",name:"Master",items:[{kind:"input",name:"Saturation",identifier:"Master Saturation"},{kind:"input",name:"Contrast",identifier:"Master Contrast"},{kind:"input",name:"Gamma",identifier:"Master Gamma"},{kind:"input",name:"Gain",identifier:"Master Gain"},{kind:"input",name:"Offset",identifier:"Master Offset"}],defaultClosed:!0},{kind:"panel",name:"Highlights",items:[{kind:"input",name:"Saturation",identifier:"Highlights Saturation"},{kind:"input",name:"Contrast",identifier:"Highlights Contrast"},{kind:"input",name:"Gamma",identifier:"Highlights Gamma"},{kind:"input",name:"Gain",identifier:"Highlights Gain"},{kind:"input",name:"Offset",identifier:"Highlights Offset"}],defaultClosed:!0},{kind:"panel",name:"Midtones",items:[{kind:"input",name:"Saturation",identifier:"Midtones Saturation"},{kind:"input",name:"Contrast",identifier:"Midtones Contrast"},{kind:"input",name:"Gamma",identifier:"Midtones Gamma"},{kind:"input",name:"Gain",identifier:"Midtones Gain"},{kind:"input",name:"Offset",identifier:"Midtones Offset"}],defaultClosed:!0},{kind:"panel",name:"Shadows",items:[{kind:"input",name:"Saturation",identifier:"Shadows Saturation"},{kind:"input",name:"Contrast",identifier:"Shadows Contrast"},{kind:"input",name:"Gamma",identifier:"Shadows Gamma"},{kind:"input",name:"Gain",identifier:"Shadows Gain"},{kind:"input",name:"Offset",identifier:"Shadows Offset"}],defaultClosed:!0},{kind:"panel",name:"Tonal Range",items:[{kind:"input",name:"Midtones Start"},{kind:"input",name:"Midtones End"}],defaultClosed:!0},{kind:"panel",name:"Channels",items:[{kind:"input",name:"Red",identifier:"Apply On Red"},{kind:"input",name:"Green",identifier:"Apply On Green"},{kind:"input",name:"Blue",identifier:"Apply On Blue"}],defaultClosed:!0}]},_e={customSocketOrder:!0,items:[{kind:"output",name:"Image"},{kind:"input",name:"Image"},{kind:"input",name:"Factor",identifier:"Fac"},{kind:"input",name:"Spill Channel"},{kind:"input",name:"Limit Method"},{kind:"input",name:"Limit Channel"},{kind:"input",name:"Limit Strength"},{kind:"panel",name:"Spill Strength",items:[{kind:"input",name:"Use Spill Strength",panelToggle:!0},{kind:"input",name:"Strength",identifier:"Spill Strength"}],defaultClosed:!0}]},Me={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Plane"},{kind:"input",name:"Upper Left"},{kind:"input",name:"Upper Right"},{kind:"input",name:"Lower Left"},{kind:"input",name:"Lower Right"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},ve={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Samples"},{kind:"input",name:"Center"},{kind:"input",name:"Rotation"},{kind:"input",name:"Scale"},{kind:"panel",name:"Translation",items:[{kind:"input",name:"Amount",identifier:"Translation Amount"},{kind:"input",name:"Direction",identifier:"Translation Direction"}]}]},Ae={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Displacement"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},be={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Glare"},{kind:"output",name:"Highlights"},{kind:"input",name:"Type"},{kind:"input",name:"Quality"},{kind:"panel",name:"Highlights",items:[{kind:"input",name:"Threshold",identifier:"Highlights Threshold"},{kind:"input",name:"Smoothness",identifier:"Highlights Smoothness"},{kind:"panel",name:"Clamp",items:[{kind:"input",name:"Clamp",identifier:"Clamp Highlights",panelToggle:!0},{kind:"input",name:"Maximum",identifier:"Maximum Highlights"}],defaultClosed:!0}],defaultClosed:!0},{kind:"panel",name:"Adjust",items:[{kind:"input",name:"Strength"},{kind:"input",name:"Saturation"},{kind:"input",name:"Tint"}]},{kind:"panel",name:"Glare",items:[{kind:"input",name:"Size"},{kind:"input",name:"Streaks"},{kind:"input",name:"Streaks Angle"},{kind:"input",name:"Iterations"},{kind:"input",name:"Fade"},{kind:"input",name:"Color Modulation"},{kind:"input",name:"Diagonal",identifier:"Diagonal Star"},{kind:"input",name:"Sun Position"},{kind:"input",name:"Jitter"},{kind:"input",name:"Kernel Data Type"},{kind:"input",name:"Kernel",identifier:"Float Kernel"},{kind:"input",name:"Kernel",identifier:"Color Kernel"}]}]},De={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Matte"},{kind:"output",name:"Edges"},{kind:"input",name:"Key Color"},{kind:"panel",name:"Preprocess",items:[{kind:"input",name:"Blur Size",identifier:"Preprocess Blur Size"}],defaultClosed:!0},{kind:"panel",name:"Key",items:[{kind:"input",name:"Balance",identifier:"Key Balance"}],defaultClosed:!0},{kind:"panel",name:"Tweak",items:[{kind:"input",name:"Black Level"},{kind:"input",name:"White Level"},{kind:"panel",name:"Edges",items:[{kind:"input",name:"Size",identifier:"Edge Search Size"},{kind:"input",name:"Tolerance",identifier:"Edge Tolerance"}],defaultClosed:!0}],defaultClosed:!0},{kind:"panel",name:"Mask",items:[{kind:"input",name:"Garbage Matte"},{kind:"input",name:"Core Matte"}],defaultClosed:!0},{kind:"panel",name:"Postprocess",items:[{kind:"input",name:"Blur Size",identifier:"Postprocess Blur Size"},{kind:"input",name:"Dilate Size",identifier:"Postprocess Dilate Size"},{kind:"input",name:"Feather Size",identifier:"Postprocess Feather Size"},{kind:"input",name:"Feather Falloff"}],defaultClosed:!0},{kind:"panel",name:"Despill",items:[{kind:"input",name:"Strength",identifier:"Despill Strength"},{kind:"input",name:"Balance",identifier:"Despill Balance"}],defaultClosed:!0}]},Be={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"UV"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Le={customSocketOrder:!0,items:[{kind:"output",name:"Mask"},{kind:"layout"},{kind:"input",name:"Size Source"},{kind:"input",name:"Size X"},{kind:"input",name:"Size Y"},{kind:"input",name:"Feather"},{kind:"panel",name:"Motion Blur",items:[{kind:"input",name:"Motion Blur",panelToggle:!0},{kind:"input",name:"Samples",identifier:"Motion Blur Samples"},{kind:"input",name:"Shutter",identifier:"Motion Blur Shutter"}],defaultClosed:!0}]},$e={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"output",name:"Plane"},{kind:"layout"},{kind:"panel",name:"Motion Blur",items:[{kind:"input",name:"Motion Blur",panelToggle:!0},{kind:"input",name:"Samples",identifier:"Motion Blur Samples"},{kind:"input",name:"Shutter",identifier:"Motion Blur Shutter"}],defaultClosed:!0}]},je={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Angle"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Fe={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"Type"},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"input",name:"Frame Type"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ge={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"layout"},{kind:"input",name:"Frame"},{kind:"input",name:"Invert"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},We={customSocketOrder:!0,items:[{kind:"output",name:"Image"},{kind:"input",name:"String"},{kind:"input",name:"Font"},{kind:"input",name:"Size"},{kind:"panel",name:"Alignment",items:[{kind:"input",name:"Horizontal Alignment"},{kind:"input",name:"Vertical Alignment"}],defaultClosed:!0},{kind:"panel",name:"Wrap",items:[{kind:"input",name:"Wrap",panelToggle:!0},{kind:"input",name:"Width",identifier:"Wrap Width"}],defaultClosed:!0}]},He={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"input",name:"Angle"},{kind:"input",name:"Scale"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ue={customSocketOrder:!0,items:[{kind:"input",name:"Image"},{kind:"output",name:"Image",alignWithPrevious:!0},{kind:"input",name:"X"},{kind:"input",name:"Y"},{kind:"panel",name:"Sampling",items:[{kind:"input",name:"Interpolation"},{kind:"input",name:"Extension X"},{kind:"input",name:"Extension Y"}],defaultClosed:!0}]},Ye={customSocketOrder:!0,items:[{kind:"output",name:"Matrix"},{kind:"panel",name:"Column 1",items:[{kind:"input",name:"Column 1 Row 1"},{kind:"input",name:"Column 1 Row 2"},{kind:"input",name:"Column 1 Row 3"},{kind:"input",name:"Column 1 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 2",items:[{kind:"input",name:"Column 2 Row 1"},{kind:"input",name:"Column 2 Row 2"},{kind:"input",name:"Column 2 Row 3"},{kind:"input",name:"Column 2 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 3",items:[{kind:"input",name:"Column 3 Row 1"},{kind:"input",name:"Column 3 Row 2"},{kind:"input",name:"Column 3 Row 3"},{kind:"input",name:"Column 3 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 4",items:[{kind:"input",name:"Column 4 Row 1"},{kind:"input",name:"Column 4 Row 2"},{kind:"input",name:"Column 4 Row 3"},{kind:"input",name:"Column 4 Row 4"}],defaultClosed:!0}]},ze={customSocketOrder:!0,items:[{kind:"panel",name:"Column 1",items:[{kind:"output",name:"Column 1 Row 1"},{kind:"output",name:"Column 1 Row 2"},{kind:"output",name:"Column 1 Row 3"},{kind:"output",name:"Column 1 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 2",items:[{kind:"output",name:"Column 2 Row 1"},{kind:"output",name:"Column 2 Row 2"},{kind:"output",name:"Column 2 Row 3"},{kind:"output",name:"Column 2 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 3",items:[{kind:"output",name:"Column 3 Row 1"},{kind:"output",name:"Column 3 Row 2"},{kind:"output",name:"Column 3 Row 3"},{kind:"output",name:"Column 3 Row 4"}],defaultClosed:!0},{kind:"panel",name:"Column 4",items:[{kind:"output",name:"Column 4 Row 1"},{kind:"output",name:"Column 4 Row 2"},{kind:"output",name:"Column 4 Row 3"},{kind:"output",name:"Column 4 Row 4"}],defaultClosed:!0},{kind:"input",name:"Matrix"}]},Ve={customSocketOrder:!0,items:[{kind:"input",name:"String"},{kind:"output",name:"String",alignWithPrevious:!0},{kind:"input",name:"Characters"},{kind:"input",name:"Whitespace"},{kind:"panel",name:"Limit",items:[{kind:"input",name:"Start"},{kind:"input",name:"End"}],defaultClosed:!0}]},Xe={customSocketOrder:!0,items:[{kind:"output",name:"Topology"},{kind:"input",name:"Bounds Min"},{kind:"input",name:"Bounds Max"},{kind:"input",name:"Resolution X"},{kind:"input",name:"Resolution Y"},{kind:"input",name:"Resolution Z"},{kind:"panel",name:"Min",items:[{kind:"input",name:"Min X"},{kind:"input",name:"Min Y"},{kind:"input",name:"Min Z"}],defaultClosed:!0}]},Ke={customSocketOrder:!0,conditional:!0,items:[{kind:"output",name:"Geometry"},{kind:"input",name:"",identifier:"__extend__main"},{kind:"output",name:"",identifier:"__extend__main",alignWithPrevious:!0},{kind:"panel",name:"Generated",items:[{kind:"separator"},{kind:"input",name:"",identifier:"__extend__generation"},{kind:"output",name:"",identifier:"__extend__generation",alignWithPrevious:!0}]}]},Ze={customSocketOrder:!0,items:[{kind:"output",name:"Names"},{kind:"input",name:"Geometry"},{kind:"panel",name:"Filter Data Type",items:[{kind:"input",name:"Filter Data Type",panelToggle:!0},{kind:"input",name:"Data Type"}]},{kind:"panel",name:"Filter Domain",items:[{kind:"input",name:"Filter Domain",panelToggle:!0},{kind:"input",name:"Domain"}]}]},qe={customSocketOrder:!0,conditional:!0,items:[{kind:"layout"},{kind:"output",name:"Points"},{kind:"output",name:"Value"},{kind:"panel",name:"Voxel Index",items:[{kind:"output",name:"X"},{kind:"output",name:"Y"},{kind:"output",name:"Z"},{kind:"output",name:"Is Tile"},{kind:"output",name:"Extent"}],defaultClosed:!0},{kind:"input",name:"Grid"}]},Je={customSocketOrder:!0,items:[{kind:"output",name:"X"},{kind:"output",name:"Y"},{kind:"output",name:"Z"},{kind:"panel",name:"Tile",items:[{kind:"output",name:"Is Tile"},{kind:"output",name:"Extent X"},{kind:"output",name:"Extent Y"},{kind:"output",name:"Extent Z"}],defaultClosed:!0}]},Qe={customSocketOrder:!0,items:[{kind:"input",name:"Mesh"},{kind:"output",name:"Mesh",alignWithPrevious:!0},{kind:"input",name:"Selection"},{kind:"input",name:"Affect Kind"},{kind:"input",name:"Start Left Offset"},{kind:"input",name:"Start Right Offset"},{kind:"input",name:"End Left Offset"},{kind:"input",name:"End Right Offset"},{kind:"input",name:"Offset"},{kind:"input",name:"Miter"},{kind:"input",name:"Spread"},{kind:"input",name:"Segments"},{kind:"input",name:"Shape"},{kind:"input",name:"Profile"},{kind:"panel",name:"Selections",items:[{kind:"output",name:"Vertex Face"},{kind:"output",name:"Edge Face"},{kind:"output",name:"Outer Edge"},{kind:"output",name:"Mid Edge"}]}]},en={customSocketOrder:!0,items:[{kind:"output",name:"Amplitude"},{kind:"input",name:"Sound"},{kind:"input",name:"Time"},{kind:"input",name:"All Channels"},{kind:"input",name:"Channel"},{kind:"input",name:"Low"},{kind:"input",name:"High"},{kind:"panel",name:"FFT",items:[{kind:"input",name:"FFT Size"},{kind:"input",name:"Window Function"}],defaultClosed:!0}]},nn={customSocketOrder:!0,items:[{kind:"output",name:"Curve Instances"},{kind:"output",name:"Remainder"},{kind:"output",name:"Line"},{kind:"output",name:"Word"},{kind:"output",name:"Pivot Point"},{kind:"input",name:"String"},{kind:"input",name:"Size"},{kind:"input",name:"Font"},{kind:"panel",name:"Alignment",items:[{kind:"input",name:"Align X"},{kind:"input",name:"Align Y"},{kind:"input",name:"Pivot Point"}],defaultClosed:!0},{kind:"panel",name:"Spacing",items:[{kind:"input",name:"Character Spacing"},{kind:"input",name:"Word Spacing"},{kind:"input",name:"Line Spacing"}],defaultClosed:!0},{kind:"panel",name:"Text Box",items:[{kind:"input",name:"Overflow"},{kind:"input",name:"Text Box Width"},{kind:"input",name:"Text Box Height"}],defaultClosed:!0}]},tn={customSocketOrder:!0,conditional:!0,items:[{kind:"input",name:"Target"},{kind:"output",name:"Target",alignWithPrevious:!0},{kind:"output",name:"Transferred Names"},{kind:"panel",name:"Target IDs",items:[],defaultClosed:!0},{kind:"input",name:"Source"},{kind:"panel",name:"Source IDs",items:[],defaultClosed:!0},{kind:"input",name:"Pattern Mode"},{kind:"input",name:"Attribute Names"},{kind:"input",name:"Exclude Names"}]},an={customSocketOrder:!0,items:[{kind:"input",name:"World"},{kind:"output",name:"World",alignWithPrevious:!0},{kind:"input",name:"Delta Time"},{kind:"input",name:"Filter"},{kind:"input",name:"Simulation to World"},{kind:"panel",name:"Solver",items:[{kind:"input",name:"Substeps"},{kind:"input",name:"Constraint Iterations"},{kind:"input",name:"Solver Path"}],defaultClosed:!0},{kind:"panel",name:"Interpolation Range",items:[{kind:"input",name:"Begin"},{kind:"input",name:"End"}],defaultClosed:!0}]},on={customSocketOrder:!0,conditional:!0,items:[{kind:"input",name:"Closure"},{kind:"panel",name:"Interface",items:[{kind:"output",name:"",identifier:"__extend__"},{kind:"input",name:"",identifier:"__extend__"}]}]},rn={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"layout"},{kind:"input",name:"Color"},{kind:"input",name:"Roughness"},{kind:"input",name:"IOR"},{kind:"input",name:"Normal"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},un={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"layout"},{kind:"input",name:"Base Color"},{kind:"input",name:"Edge Tint"},{kind:"input",name:"IOR"},{kind:"input",name:"Extinction"},{kind:"input",name:"Roughness"},{kind:"input",name:"Anisotropy"},{kind:"input",name:"Rotation"},{kind:"input",name:"Normal"},{kind:"input",name:"Tangent"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},sn={customSocketOrder:!0,items:[{kind:"output",name:"BSDF"},{kind:"input",name:"Base Color"},{kind:"input",name:"Metallic"},{kind:"input",name:"Roughness"},{kind:"input",name:"IOR"},{kind:"input",name:"Alpha"},{kind:"input",name:"Thin Wall"},{kind:"input",name:"Normal"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Diffuse",items:[{kind:"input",name:"Diffuse Roughness"}],defaultClosed:!0},{kind:"panel",name:"Subsurface",items:[{kind:"layout"},{kind:"input",name:"Subsurface Weight"},{kind:"input",name:"Subsurface Radius"},{kind:"input",name:"Subsurface Scale"},{kind:"input",name:"Subsurface IOR"},{kind:"input",name:"Subsurface Anisotropy"}],defaultClosed:!0},{kind:"panel",name:"Specular",items:[{kind:"layout"},{kind:"input",name:"Specular IOR Level"},{kind:"input",name:"Specular Tint"},{kind:"input",name:"Anisotropic"},{kind:"input",name:"Anisotropic Rotation"},{kind:"input",name:"Tangent"}],defaultClosed:!0},{kind:"panel",name:"Transmission",items:[{kind:"input",name:"Transmission Weight"}],defaultClosed:!0},{kind:"panel",name:"Coat",items:[{kind:"input",name:"Coat Weight"},{kind:"input",name:"Coat Roughness"},{kind:"input",name:"Coat IOR"},{kind:"input",name:"Coat Tint"},{kind:"input",name:"Coat Normal"}],defaultClosed:!0},{kind:"panel",name:"Sheen",items:[{kind:"input",name:"Sheen Weight"},{kind:"input",name:"Sheen Roughness"},{kind:"input",name:"Sheen Tint"}],defaultClosed:!0},{kind:"panel",name:"Emission",items:[{kind:"input",name:"Emission Color"},{kind:"input",name:"Emission Strength"}],defaultClosed:!0},{kind:"panel",name:"Thin Film",items:[{kind:"input",name:"Thin Film Thickness"},{kind:"input",name:"Thin Film IOR"}],defaultClosed:!0}]},dn={customSocketOrder:!0,conditional:!0,items:[{kind:"layout"},{kind:"output",name:"Is Hit"},{kind:"output",name:"Self Hit"},{kind:"output",name:"Hit Distance"},{kind:"output",name:"Hit Position"},{kind:"output",name:"Hit Normal"},{kind:"input",name:"Position"},{kind:"input",name:"Direction"},{kind:"input",name:"Length"},{kind:"panel",name:"Attributes",items:[{kind:"input",name:"",identifier:"__extend__"},{kind:"output",name:"",identifier:"__extend__",alignWithPrevious:!0}],defaultClosed:!0}]},ln={customSocketOrder:!0,items:[{kind:"output",name:"Volume"},{kind:"input",name:"Weight",conditional:!0},{kind:"panel",name:"Absorption",items:[{kind:"input",name:"Absorption Coefficients"}]},{kind:"panel",name:"Scatter",items:[{kind:"layout"},{kind:"input",name:"Scatter Coefficients"},{kind:"input",name:"Anisotropy"},{kind:"input",name:"IOR"},{kind:"input",name:"Backscatter"},{kind:"input",name:"Alpha"},{kind:"input",name:"Diameter"}]},{kind:"panel",name:"Emission",items:[{kind:"input",name:"Emission Coefficients"}]}]},mn={CompositorNodeColorBalance:Re,CompositorNodeColorCorrection:Pe,CompositorNodeColorSpill:_e,CompositorNodeCornerPin:Me,CompositorNodeDBlur:ve,CompositorNodeDisplace:Ae,CompositorNodeGlare:be,CompositorNodeKeying:De,CompositorNodeMapUV:Be,CompositorNodeMask:Le,CompositorNodePlaneTrackDeform:$e,CompositorNodeRotate:je,CompositorNodeScale:Fe,CompositorNodeStabilize:Ge,CompositorNodeStringToImage:We,CompositorNodeTransform:He,CompositorNodeTranslate:Ue,FunctionNodeCombineMatrix:Ye,FunctionNodeSeparateMatrix:ze,FunctionNodeTrimString:Ve,GeometryNodeCubeGridTopology:Xe,GeometryNodeForeachGeometryElementOutput:Ke,GeometryNodeGetAttributeNames:Ze,GeometryNodeGridToPoints:qe,GeometryNodeInputVoxelIndex:Je,GeometryNodeMeshBevel:Qe,GeometryNodeSampleSoundFrequencies:en,GeometryNodeStringToCurves:nn,GeometryNodeTransferAttributes:tn,GeometryNodeXPBDSolver:an,NodeEvaluateClosure:on,ShaderNodeBsdfGlass:rn,ShaderNodeBsdfMetallic:un,ShaderNodeBsdfPrincipled:sn,ShaderNodeRaycast:dn,ShaderNodeVolumeCoefficients:ln},I=20,N=1,S=I,O=I/2,D=.2*I,me=.25*I,Z=1.2*I,_=.1*I,pn=.8*I,w=.5,Y=D+w,cn=D+N,ne=2.5,kn=.2,fn=S*.5,z=S*-.5,hn=me,gn=1.5*I,R=11,h={sliderFill:"#4671b2",background:"#1a1a1a",body:"#303030",outline:"#ffffff",outlineAlpha:38/255,select:"#ed5700",active:"#ffffff",wireInner:"#8d8d8d",wire:"#1a1a1a",noodleCurving:4,dashAlpha:.5,text:"#e6e6e6",frame:"#0f0f0f",frameAlpha:204/255},Sn={INPUT:"#82354c",OUTPUT:"#3e232a",CONVERTER:"#246283",COLOR:"#6e6e23",VECTOR:"#3c3c83",FILTER:"#412b51",GROUP:"#374725",INTERFACE:"#1d1d1d",MATTE:"#5a3838",DISTORT:"#3e5a5b",TEXTURE:"#79461d",SHADER:"#2b652b",SCRIPT:"#203c3c",GEOMETRY:"#1d725e",ATTRIBUTE:"#1d2546",NONE:h.body,PATTERN:h.body},xn={VALUE:"#a1a1a1",VECTOR:"#6363c7",RGBA:"#c7c729",SHADER:"#63c763",BOOLEAN:"#cca6d6",INT:"#598c5c",STRING:"#70b3ff",OBJECT:"#ed9e5c",IMAGE:"#633863",GEOMETRY:"#00d6a3",COLLECTION:"#f5f5f5",TEXTURE:"#9e4fa3",MATERIAL:"#eb7582",ROTATION:"#a663c7",MENU:"#666666",MATRIX:"#b83385",BUNDLE:"#4d8080",CLOSURE:"#7d7d3b",FONT:"#635742",SOUND:"#635742",INT_VECTOR:"#5c789c",CUSTOM:"#333333"},yn="#ff00ff",pe=h.wire,Cn="#808080",F=N;function A(e){return e.enabled&&!e.hide}function V(e){const n=e.location[0]??0,a=e.location[1]??0,r=e.width,t=e.outputs.filter(A),o=e.inputs.filter(A);if(e.collapsed){const p=fn,m=p*Math.max(o.length,t.length,2)+D*2,x=a+m/2+z,c=a-m/2+z,k=(g,C)=>{let y=a+p*(g.length-1)*.5+z;return g.map(E=>{const P=M(E,C,C?n+r:n,y,y);return y-=p,P})};return{name:e.name,x:n,yTop:x,yBottom:c,width:r,collapsed:!0,sockets:[...k(t,!0),...k(o,!1)]}}let d=a-S;const u=[],l=(p,m)=>{const x=d;u.push(M(p,m,m?n+r:n,x-O,x)),d=x-S};return(t.length>0||o.length>0)&&(d-=2*_),t.forEach((p,m)=>{m>0&&(d-=_),l(p,!0)}),t.length>0&&o.length>0&&(d-=_),o.forEach((p,m)=>{(m>0||t.length>0)&&m>0&&(d-=_),l(p,!1)}),t.length>0||o.length>0?d-=2*_:d-=O,{name:e.name,x:n,yTop:a,yBottom:Math.min(d,a-2*S),width:r,collapsed:!1,sockets:u}}function M(e,n,a,r,t,o=!1){return{identifier:e.identifier,name:e.label??e.name,type:e.type,shape:e.shape,output:n,linked:e.linked,multiInput:e.multiInput,hideValue:e.hideValue,value:e.value,...e.softMin===void 0?{}:{softMin:e.softMin},...e.softMax===void 0?{}:{softMax:e.softMax},x:a,y:r,rowTop:t,panelCollapsed:o}}function Tn(e,n,a=h.noodleCurving){if(a===0)return[[e[0]+(n[0]-e[0])/3,e[1]+(n[1]-e[1])/3],[e[0]+(n[0]-e[0])*2/3,e[1]+(n[1]-e[1])*2/3]];const r=Math.abs(n[0]-e[0]),t=Math.abs(n[1]-e[1]),o=r===0?Number.POSITIVE_INFINITY:t/r,d=Math.min(1,o*(4.5-.25*a)),u=a*.1*r*d;return[[e[0]+u,e[1]],[n[0]-u,n[1]]]}function K(e){return e.idname==="NodeFrame"?h.frame:e.colorTag==="OUTPUT"&&!e.activeOutput?h.body:Sn[e.colorTag]??h.body}function te(e){return e.useCustomColor?b(e.color):h.body}function b(e){const n=a=>Math.round(Math.min(1,Math.max(0,a))*255).toString(16).padStart(2,"0");return`#${n(e[0]??0)}${n(e[1]??0)}${n(e[2]??0)}`}function ie(e,n){const a=ae(h.background),r=ae(e);return b([r[0]*(1-n)+a[0]*n,r[1]*(1-n)+a[1]*n,r[2]*(1-n)+a[2]*n])}const En=.6,wn=.8,On=.2;function ae(e){const n=Number.parseInt(e.slice(1),16);return[(n>>16&255)/255,(n>>8&255)/255,(n&255)/255]}function G(e){return xn[e]??yn}const oe=O,X=Z/3,re=Z/4,In=I,j={cell:8,reach:4,spread:3.64648,stroke:1},Nn="#000000",Rn=31/255*1.5,$=e=>e.identifier??e.name;function Pn(e,n,a){if(!e.customSocketOrder)return{ok:!1,why:"its declaration does not set use_custom_socket_order, so Blender lays it out the legacy way"};const r=[],t=[],o=l=>{for(const p of l)p.kind==="input"?r.push($(p)):p.kind==="output"?t.push($(p)):p.kind==="panel"&&o(p.items)};o(e.items);const d=(l,p,m)=>{if(l.length!==p.length)return`the declaration names ${l.length} ${m}${l.length===1?"":"s"} and the engine reports ${p.length}`;for(let x=0;x<l.length;x++)if(l[x]!==p[x]?.identifier)return`${m} ${x} is "${p[x]?.identifier}" in the engine and "${l[x]}" in the declaration`;return null},u=d(t,a,"output")??d(r,n,"input");return u===null?{ok:!0}:{ok:!1,why:u}}const _n={Socket:2,Separator:.5,Layout:3,PanelHeader:4},Mn={Socket:2,Separator:1,Layout:5,PanelHeader:4,PanelContentEnd:1},vn={Socket:{Socket:1,Separator:0,Layout:2,PanelHeader:3,PanelContentEnd:2},Layout:{Socket:2,Separator:0,Layout:1,PanelHeader:3,PanelContentEnd:2},Separator:{Socket:2,Separator:1,Layout:1,PanelHeader:1,PanelContentEnd:1},PanelHeader:{Socket:4,Separator:3,Layout:3,PanelHeader:5,PanelContentBegin:3,PanelContentEnd:3},PanelContentBegin:{Socket:2,Separator:1,Layout:2,PanelHeader:3,PanelContentEnd:1},PanelContentEnd:{Socket:1,Separator:1,Layout:1,PanelHeader:3,PanelContentEnd:0}};function ce(e,n,a,r,t,o,d){let u=!1;for(const l of e){if(l.kind==="input"||l.kind==="output"){const y=n.get(`${l.kind}:${$(l)}`);if(!y||!A(y)){u=!1;continue}const E=o[o.length-1];if(l.alignWithPrevious===!0&&u&&E&&E.type==="Socket"){o[o.length-1]={type:"Socket",input:l.kind==="input"?y:E.input,output:l.kind==="output"?y:E.output},u=!0;continue}o.push({type:"Socket",input:l.kind==="input"?y:void 0,output:l.kind==="output"?y:void 0}),u=!0;continue}if(u=!1,l.kind==="separator"){o.push({type:"Separator"});continue}if(l.kind==="layout"){r&&o.push({type:"Layout"});continue}if(l.kind!=="panel")continue;const p=l.items[0],m=p&&p.kind==="input"&&p.panelToggle===!0?p:null,x=m?n.get(`input:${$(m)}`)??null:null,c=[],k=y=>{for(const E of y)if(E.kind==="input"||E.kind==="output"){const P=n.get(`${E.kind}:${$(E)}`);P&&c.push(P)}else E.kind==="panel"&&k(E.items)};if(k(l.items),!c.some(A))continue;const g=a(l.defaultClosed===!0),C={name:l.name,depth:t,collapsed:g,toggle:x,owned:c,centerY:0,contentTop:null,contentBottom:null,fillsNodeEnd:!1};d.push(C),o.push({type:"PanelHeader",panel:C}),!g&&(o.push({type:"PanelContentBegin",panel:C}),ce(l.items.filter(y=>y!==m),n,a,r,t+1,o,d),o.push({type:"PanelContentEnd",panel:C}))}}function An(e){const n=e.location[0]??0,a=e.location[1]??0,r=e.width,t=new Map;for(const c of e.inputs)t.set(`input:${c.identifier}`,c);for(const c of e.outputs)t.set(`output:${c.identifier}`,c);let o=0;const d=e.panelStates,u=[],l=[];ce(e.declaration.items,t,c=>d[o++]?.collapsed??c,e.showOptions,0,u,l);const p=[];let m=a-S;u.length===0&&(m-=O);for(let c=0;c<u.length;c++){const k=u[c];if(!k)continue;const g=u[c-1],C=c===0?_n[k.type]??0:vn[g?.type??"Socket"]?.[k.type]??0;if(m-=C*_,k.type==="Socket"){const y=m;k.output&&p.push(M(k.output,!0,n+r,y-O,y)),k.input&&p.push(M(k.input,!1,n,y-O,y)),m=y-S;continue}if(k.type==="Layout"||k.type==="Separator"){m-=S;continue}if(k.type==="PanelHeader"&&k.panel){m-=oe/2,k.panel.centerY=m,m-=oe/2,k.panel.toggle&&p.push(M(k.panel.toggle,!1,n,k.panel.centerY,k.panel.centerY));continue}k.type==="PanelContentBegin"&&k.panel&&(k.panel.contentTop=m),k.type==="PanelContentEnd"&&k.panel&&(k.panel.contentBottom=m)}const x=u[u.length-1];x&&(m-=(Mn[x.type]??0)*_);for(const c of l)if(c.collapsed)for(const k of c.owned){if(!A(k))continue;const g=e.outputs.includes(k);p.push(M(k,g,g?n+r:n,c.centerY,c.centerY,!0))}for(let c=u.length-1;c>=0;c--){const k=u[c];if(!k||k.type!=="PanelContentEnd")break;k.panel&&(k.panel.fillsNodeEnd=!0)}return{name:e.name,x:n,yTop:a,yBottom:Math.min(m,a-2*S),width:r,collapsed:!1,sockets:p,panels:l.map(c=>({name:c.name,depth:c.depth,collapsed:c.collapsed,centerY:c.centerY,contentTop:c.contentTop,contentBottom:c.contentBottom,fillsNodeEnd:c.fillsNodeEnd,toggle:c.toggle?M(c.toggle,!1,n,c.centerY,c.centerY):null}))}}function bn(e){const n=a=>a.some(r=>r.kind==="layout"?!0:r.kind==="panel"?n(r.items):!1);return n(e.items)}const Ct="workspace.document",Tt="Shader Editor";Ce(Ne);const Dn=320,ue=.1,se=4;function Et(){const e=T.useSyncExternalStore(Te,Q,Q),[n,a]=T.useState(null),[r,t]=T.useState(null),o=T.useRef(null),d=T.useRef(!1);T.useSyncExternalStore(Ee,ee,ee);const{transform:u,looked:l,refusal:p,size:m}=U(),x=T.useCallback(s=>{const f=U().transform;B({transform:typeof s=="function"?s(f):s})},[]),c=T.useCallback(s=>{B({looked:s,refusal:null})},[]),k=T.useCallback(s=>{const f=U().size;f.w===s.w&&f.h===s.h||B({size:s})},[]),g=T.useCallback(s=>{we(s)},[]);T.useEffect(()=>{let s=!0;return(async()=>{try{const f=await Oe();if(!s)return;a(f),t(null)}catch(f){if(!s)return;t(f instanceof Error?f.message:String(f))}})(),()=>{s=!1}},[e]),T.useEffect(()=>{const s=o.current;if(!s)return;const f=new ResizeObserver(()=>{k({w:s.clientWidth,h:s.clientHeight})});return f.observe(s),k({w:s.clientWidth,h:s.clientHeight}),()=>f.disconnect()},[]);const C=T.useMemo(()=>jn(n),[n]);T.useEffect(()=>{B({drawn:[...C.frames,...C.nodes].map(({node:s,laid:f,panels:v,fallback:ye})=>{const J=f.sockets.find(H=>!H.panelCollapsed)??f.sockets[0];return{panels:v.length,collapsedPanels:v.filter(H=>H.collapsed).length,panelFallback:ye,name:s.name,x:f.x,yTop:f.yTop,yBottom:f.yBottom,width:f.width,height:f.yTop-f.yBottom,sockets:f.sockets.length,firstSocketBelowTop:J?f.yTop-J.y:null,header:K(s)}})})},[C]);const y=T.useCallback(()=>{const s=Fn(C.nodes);if(!s)return;const f=de(Math.min(m.w/(s.w+2*S),m.h/(s.h+2*S)),ue,se);B({transform:{cx:s.x+s.w/2,cy:s.y-s.h/2,zoom:f},framedAt:Date.now()})},[C.nodes,m.h,m.w]),E=Ie(),P=T.useRef(0);T.useEffect(()=>{E!==P.current&&(P.current=E,y())},[E,y]),T.useEffect(()=>{d.current||C.nodes.length===0||m.w<=1||(d.current=!0,y())},[C.nodes.length,m.w,y]);const W=T.useRef(null),fe=s=>{s.button===1&&(s.preventDefault(),s.target.setPointerCapture?.(s.pointerId),W.current={x:s.clientX,y:s.clientY,cx:u.cx,cy:u.cy})},he=s=>{const f=W.current;f&&x(v=>({...v,cx:f.cx-(s.clientX-f.x)/v.zoom,cy:f.cy+(s.clientY-f.y)/v.zoom}))},q=()=>{W.current=null},ge=s=>{s.preventDefault(),x(f=>({...f,zoom:de(f.zoom*(s.deltaY<0?1.1:1/1.1),ue,se)}))},Se=n?.nodes.find(s=>s.name===l)??null,xe=u.zoom>kn;return i.jsxs("div",{"data-testid":"blender-node-editor",style:{display:"flex",position:"absolute",inset:0,overflow:"hidden"},children:[i.jsxs("div",{style:{display:"flex",flexDirection:"column",flex:1,minWidth:0,minHeight:0},children:[i.jsx(Xn,{tree:n,zoom:u.zoom,onViewAll:y,onRefuse:g}),i.jsx("div",{ref:o,style:{position:"relative",flex:1,minHeight:0},children:i.jsx("svg",{role:"presentation",width:"100%",height:"100%",onPointerDown:fe,onPointerMove:he,onPointerUp:q,onPointerCancel:q,onWheel:ge,onContextMenu:s=>{s.preventDefault(),g("The node context menu adds, deletes and reconnects nodes — editing.")},style:{display:"block",background:h.background,cursor:"default"},children:i.jsxs("g",{transform:`translate(${m.w/2} ${m.h/2}) scale(${u.zoom} ${-u.zoom}) translate(${-u.cx} ${-u.cy})`,children:[C.frames.map(s=>i.jsx(Vn,{node:s.node,laid:s.laid},s.node.name)),C.links.map(s=>i.jsx(zn,{link:s},s.key)),C.nodes.map(s=>i.jsx(Gn,{node:s.node,laid:s.laid,panels:s.panels,looked:s.node.name===l,details:xe,onLook:()=>c(s.node.name),onRefuse:g},s.node.name))]})})}),i.jsx(Kn,{entries:C.nodes,error:r,refusal:p})]}),i.jsx(Zn,{node:Se,onRefuse:g})]})}const Bn=26,Ln=22,$n=mn;function jn(e){if(!e)return{nodes:[],frames:[],links:[]};const n=new Map,a=e.nodes.map(t=>{const o={name:t.name,location:t.location,width:t.width,collapsed:t.collapsed,inputs:t.inputs,outputs:t.outputs},d=t.collapsed?void 0:$n[t.idname];if(t.panelCount>0&&!d){const l=V(o);return n.set(t.name,l),{node:t,laid:l,panels:[],fallback:t.collapsed?null:"no traced declaration — the trace covers the 36 node types that declare a panel in Blender 5.2.0, and a node group’s panels are runtime data",approximate:!1}}if(d){const l=Pn(d,t.inputs,t.outputs);if(l.ok){const m=An({...o,declaration:d,panelStates:t.panels,showOptions:t.showOptions});return n.set(t.name,m),{node:t,laid:m,panels:m.panels,fallback:null,approximate:bn(d)}}const p=V(o);return n.set(t.name,p),{node:t,laid:p,panels:[],fallback:l.why,approximate:!1}}const u=V(o);return n.set(t.name,u),{node:t,laid:u,panels:[],fallback:null,approximate:!1}}),r=e.links.flatMap((t,o)=>{const d=n.get(t.fromNode),u=n.get(t.toNode);if(!d||!u)return[];const l=d.sockets.find(m=>m.output&&m.identifier===t.fromSocket),p=u.sockets.find(m=>!m.output&&m.identifier===t.toSocket);return!l||!p?[]:[{key:`${t.fromNode}.${t.fromSocket}→${t.toNode}.${t.toSocket}#${o}`,from:[l.x,l.y],to:[p.x,p.y],fromColor:G(l.type),toColor:G(p.type),muted:t.muted,valid:t.valid}]});return{nodes:a.filter(t=>t.node.idname!=="NodeFrame"),frames:a.filter(t=>t.node.idname==="NodeFrame"),links:r}}function Fn(e){if(e.length===0)return null;let n=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,r=Number.POSITIVE_INFINITY,t=Number.NEGATIVE_INFINITY;for(const{laid:o}of e)n=Math.min(n,o.x),a=Math.max(a,o.x+o.width),r=Math.min(r,o.yBottom),t=Math.max(t,o.yTop);return{x:n,y:t,w:a-n,h:t-r}}const de=(e,n,a)=>Math.min(a,Math.max(n,e));function Gn({node:e,laid:n,panels:a,looked:r,details:t,onLook:o,onRefuse:d}){if(e.type==="REROUTE"){const g=n.sockets[0];return i.jsx("circle",{cx:n.x,cy:n.yTop,r:hn,fill:g?G(g.type):h.wireInner,stroke:pe,strokeWidth:F,onPointerDown:C=>{C.button===0&&o()}})}const u=e.muted?ie(K(e),En):K(e),l=e.muted?ie(te(e),wn):te(e),p=e.muted?1-On:1,m=e.selected?e.activeOutput||r?h.active:h.select:h.outline,x=e.selected?1:h.outlineAlpha,c=n.yTop-n.yBottom,k=e.label??e.typeLabel;return i.jsxs("g",{opacity:p,onPointerDown:g=>{g.button===0&&o()},onDoubleClick:()=>d(`Renaming "${e.name}" writes Node.name — editing parity is not the program.`),style:{cursor:"default"},children:[n.collapsed?i.jsx("rect",{x:n.x-w,y:-n.yTop-w,width:n.width+2*w,height:c+2*w,rx:Y,fill:u,transform:"scale(1 -1)"}):i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:n.x-w,y:-(n.yTop-S)-w,width:n.width+2*w,height:c-S+2*w,rx:Y,fill:l,transform:"scale(1 -1)"}),i.jsx("rect",{x:n.x-w,y:-n.yTop-w,width:n.width+2*w,height:S+2*w,rx:Y,fill:u,transform:"scale(1 -1)"}),i.jsx("rect",{x:n.x-w,y:-(n.yTop-S)-w,width:n.width+2*w,height:D,fill:u,transform:"scale(1 -1)"}),a.map(g=>i.jsx(Wn,{panel:g,laid:n},`bg:${g.name}`))]}),i.jsx("rect",{x:n.x-N,y:-n.yTop-N,width:n.width+2*N,height:c+2*N,rx:cn,fill:"none",stroke:m,strokeOpacity:x,strokeWidth:N,transform:"scale(1 -1)"}),i.jsx("text",{x:n.x+Z,y:-(n.yTop-S/2),transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:k}),t&&n.sockets.map(g=>i.jsx(Un,{socket:g,node:n,onRefuse:d},`${g.output?"o":"i"}:${g.identifier}`)),t&&a.map(g=>i.jsx(Hn,{panel:g,laid:n,onRefuse:d},`hd:${g.name}`))]})}function Wn({panel:e,laid:n}){if(e.contentTop===null||e.contentBottom===null)return null;const a=[{y:e.contentTop,height:e.contentTop-e.contentBottom,radius:0,times:1}];return e.fillsNodeEnd&&a.push({y:e.contentBottom,height:e.contentBottom-n.yBottom,radius:D,times:e.depth+1}),i.jsx("g",{style:{pointerEvents:"none"},children:a.flatMap((r,t)=>Array.from({length:r.times},(o,d)=>i.jsx("rect",{x:n.x,y:-r.y,width:n.width,height:Math.max(r.height,0),rx:r.radius,fill:Nn,fillOpacity:Rn,transform:"scale(1 -1)"},`${t}:${d}`)))})}function Hn({panel:e,laid:n,onRefuse:a}){const r=pn,t=r/j.cell,o=n.x+X+r/2,d=e.centerY,u=j.reach*t,l=j.spread*t,p=e.collapsed?`M ${o-u/2} ${-(d+l)} L ${o+u/2} ${-d} L ${o-u/2} ${-(d-l)}`:`M ${o-l} ${-(d+u/2)} L ${o} ${-(d-u/2)} L ${o+l} ${-(d+u/2)}`,m=n.x+X+r+re+(e.toggle&&!e.toggle.linked?In:0);return i.jsxs("g",{onPointerDown:x=>{x.button===0&&(x.stopPropagation(),a(`${e.collapsed?"Opening":"Collapsing"} "${e.name}" writes the panel's is_collapsed — editing parity is not the program.`))},style:{cursor:"default"},children:[i.jsx("rect",{x:n.x,y:-(d+O),width:n.width,height:2*O,fill:"transparent",transform:"scale(1 -1)"}),i.jsx("path",{d:p,fill:"none",stroke:h.text,strokeWidth:j.stroke*t,strokeLinecap:"round",strokeLinejoin:"round",transform:"scale(1 -1)",style:{pointerEvents:"none"}}),e.toggle&&!e.toggle.linked&&i.jsx("rect",{x:n.x+X+r+re,y:-(d+O/2),width:O,height:O,rx:.2*O,fill:e.toggle.value===!0?"#4772b3":"#545454",transform:"scale(1 -1)",style:{pointerEvents:"none"}}),i.jsx("text",{x:m,y:-d,transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name})]})}function Un({socket:e,node:n,onRefuse:a}){const r=G(e.type),t=e.type==="CUSTOM"?Cn:pe,o=me,d=e.shape.replace("_DOT",""),u=e.shape.endsWith("_DOT"),l=d==="SQUARE"?i.jsx("rect",{x:e.x-o,y:-e.y-o,width:2*o,height:2*o,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"}):d==="DIAMOND"?i.jsx("polygon",{points:`${e.x},${-e.y-o} ${e.x+o},${-e.y} ${e.x},${-e.y+o} ${e.x-o},${-e.y}`,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"}):i.jsx("circle",{cx:e.x,cy:-e.y,r:o,fill:r,stroke:t,strokeWidth:F,transform:"scale(1 -1)"});return i.jsxs("g",{onPointerDown:p=>{p.button===0&&(p.stopPropagation(),a(`Dragging from "${e.name}" would make a link — editing parity is not the program.`))},children:[l,u&&i.jsx("circle",{cx:e.x,cy:-e.y,r:o*.35,fill:t,transform:"scale(1 -1)"}),!n.collapsed&&!e.panelCollapsed&&i.jsx(Yn,{socket:e,node:n,onRefuse:a})]})}function Yn({socket:e,node:n,onRefuse:a}){const r=O,t=n.x+r,o=n.x+n.width-r,d=-(e.rowTop-S/2);if(!(!e.output&&!e.linked&&!e.hideValue&&e.value!==null))return i.jsx("text",{x:e.output?o:t,y:d,transform:"scale(1 -1)",textAnchor:e.output?"end":"start",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name});const l=Array.isArray(e.value)&&e.value.length>=3;return i.jsxs("g",{onPointerDown:p=>{p.button===0&&(p.stopPropagation(),a(`Changing "${e.name}" writes the socket's default_value — editing parity is not the program.`))},style:{cursor:"default"},children:[i.jsx("rect",{x:t,y:d-S/2+1,width:o-t,height:S-2,rx:.2*S,fill:"#545454",transform:"scale(1 -1)"}),le(e)!==null&&i.jsxs(i.Fragment,{children:[i.jsx("clipPath",{id:`sl-${e.identifier}`,children:i.jsx("rect",{x:t,y:d-S/2+1,width:o-t,height:S-2,rx:.2*S})}),i.jsx("rect",{x:t,y:d-S/2+1,width:(o-t)*(le(e)??0),height:S-2,fill:h.sliderFill,clipPath:`url(#sl-${e.identifier})`,transform:"scale(1 -1)"})]}),i.jsx("text",{x:t+6,y:d,transform:"scale(1 -1)",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:e.name}),l?i.jsx("rect",{x:o-34,y:d-S/2+3,width:30,height:S-6,rx:2,fill:b(e.value),transform:"scale(1 -1)"}):i.jsx("text",{x:o-6,y:d,transform:"scale(1 -1)",textAnchor:"end",fill:h.text,fontSize:R,dominantBaseline:"central",style:{pointerEvents:"none",userSelect:"none"},children:ke(e.value)})]})}function le(e){const{softMin:n,softMax:a,value:r}=e;return n===void 0||a===void 0||typeof r!="number"||a<=n?null:Math.min(1,Math.max(0,(r-n)/(a-n)))}function ke(e){return e===null?"":typeof e=="boolean"?e?"On":"Off":typeof e=="number"?e.toFixed(3):typeof e=="string"?e:e.map(n=>n.toFixed(2)).join(", ")}function zn({link:e}){const[n,a]=Tn(e.from,e.to),r=`M ${e.from[0]} ${e.from[1]} C ${n[0]} ${n[1]}, ${a[0]} ${a[1]}, ${e.to[0]} ${e.to[1]}`,t=e.valid?h.wireInner:"#ff2020";return i.jsxs("g",{style:{pointerEvents:"none"},children:[i.jsx("path",{d:r,fill:"none",stroke:h.wire,strokeWidth:ne+2*N}),i.jsx("path",{d:r,fill:"none",stroke:t,strokeWidth:ne,strokeDasharray:e.muted?"10 10":void 0,strokeOpacity:e.muted?h.dashAlpha:1})]})}function Vn({node:e,laid:n}){const a=Math.max(n.yTop-n.yBottom,gn*2);return i.jsxs("g",{style:{pointerEvents:"none"},children:[i.jsx("rect",{x:n.x,y:-n.yTop,width:n.width,height:a,rx:D,fill:e.useCustomColor?b(e.color):h.frame,fillOpacity:h.frameAlpha,transform:"scale(1 -1)"}),e.label&&i.jsx("text",{x:n.x+n.width/2,y:-(n.yTop-25),transform:"scale(1 -1)",textAnchor:"middle",fill:h.text,fontSize:20,children:e.label})]})}function Xn({tree:e,zoom:n,onViewAll:a,onRefuse:r}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--volter-space-2)",height:Bn,padding:"0 var(--volter-space-2)",background:h.background,color:h.text,font:`${R}px inherit`,borderBottom:"1px solid #161616"},children:[i.jsx("span",{"data-testid":"node-editor-tree-type",style:{opacity:.85},children:e?.typeLabel??"Shader Editor"}),i.jsx("span",{style:{opacity:.4},children:"·"}),i.jsx("span",{"data-testid":"node-editor-material",children:e?.material??"No material"}),i.jsx("span",{style:{flex:1}}),i.jsxs("span",{style:{opacity:.6},children:[Math.round(n*100),"%"]}),i.jsx("button",{type:"button",className:"volter-btn","data-variant":"ghost","data-size":"sm",onClick:a,"data-testid":"node-editor-view-all",children:"View All"}),i.jsx("button",{type:"button",className:"volter-btn","data-variant":"ghost","data-size":"sm","data-testid":"node-editor-use-nodes",onClick:()=>r("Use Nodes writes Material.use_nodes — editing parity is not the program."),children:"Use Nodes"})]})}function Kn({entries:e,error:n,refusal:a}){const r=e.filter(u=>u.fallback!==null),t=e.filter(u=>u.approximate),o=e.reduce((u,l)=>u+l.panels.length,0),d=n||a||(r.length>0?`${r.map(u=>`"${u.node.name}" draws its sockets flat: ${u.fallback}`).join("; ")}.`:t.length>0?`${t.map(u=>`"${u.node.name}"`).join(", ")} ${t.length===1?"carries a":"carry"} declaration LAYOUT row, whose drawn height RNA cannot answer; one UI unit is reserved for it.`:o>0?`${o} socket panel${o===1?"":"s"} drawn from Blender's own declarations. Read-only: this view inspects the node tree and never writes it.`:"Read-only: this view inspects the node tree and never writes it.");return i.jsx("div",{"data-testid":"node-editor-status",style:{flex:"0 0 auto",height:Ln,display:"flex",alignItems:"center",padding:"0 var(--volter-space-2)",background:h.background,color:n||a?"#ffa028":"#888888",font:`${R}px inherit`,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:d})}function Zn({node:e,onRefuse:n}){return i.jsxs("aside",{"data-testid":"node-editor-sidebar",style:{width:Dn,flex:"0 0 auto",overflow:"auto",background:h.background,color:h.text,font:`${R}px inherit`,borderLeft:"1px solid #161616",padding:"var(--volter-space-2)"},children:[i.jsx("div",{style:{opacity:.6,marginBottom:"var(--volter-space-2)"},children:"Node"}),e?i.jsxs(i.Fragment,{children:[i.jsx(L,{label:"Name",value:e.name,onRefuse:n}),i.jsx(L,{label:"Label",value:e.label??"",onRefuse:n}),i.jsx(L,{label:"Color",value:e.useCustomColor?b(e.color):"Off",onRefuse:n,swatch:e.useCustomColor?b(e.color):void 0}),i.jsx(L,{label:"Mute",value:e.muted?"On":"Off",onRefuse:n}),i.jsx("div",{style:{opacity:.6,margin:"var(--volter-space-3) 0 var(--volter-space-1)"},children:"Properties"}),e.inputs.filter(A).map(a=>i.jsx(L,{label:a.label??a.name,value:a.linked?"Linked":ke(a.value),onRefuse:n},a.identifier))]}):i.jsx("div",{style:{opacity:.5},children:"No node looked at."})]})}function L({label:e,value:n,swatch:a,onRefuse:r}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--volter-space-2)",height:20},onPointerDown:()=>r(`"${e}" is read here and written nowhere — inspection parity.`),children:[i.jsx("span",{style:{flex:"0 0 45%",opacity:.75,textAlign:"right"},children:e}),a&&i.jsx("span",{style:{width:14,height:14,borderRadius:2,background:a,flex:"0 0 auto"}}),i.jsx("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},title:n,children:n})]})}export{Et as default,Ct as point,Tt as title};
|
package/dist/assets/{blender-properties-tab-BdAjZYR5.js → blender-properties-tab-BqzNQYYj.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as r}from"./jsx-runtime-DPjLkJKQ.js";import{r as H}from"./index-
|
|
1
|
+
import{a as r}from"./jsx-runtime-DPjLkJKQ.js";import{r as H}from"./index-Dt5jm3bx.js";import{k as ue,l as Z,m as q,o as de,p as fe,s as pe,q as he,t as xe}from"./blender-runtime-host-Ce-6lPKR.js";import{r as b}from"./index-nmcBqr7Y.js";import"./index-CtzuWnCS.js";import{a as ge,h as ye,t as be,p as je}from"./ColorPicker-B76LmE6h.js";const me=e=>typeof e=="object"&&e!==null&&typeof e.subscribeFrames=="function"&&typeof e.blenderObjectName=="function",ve=e=>typeof e=="object"&&e!==null&&typeof e.documentId=="string"&&typeof e.hierarchy?.object3D=="function";function J(){const e=H().documents.context(Z());return me(e)?e:null}function Q(e,t){if(e===null||!ve(t))return null;const n=J();if(n===null)return null;if(e.id===t.documentId)return t.documentRootObject===n.root?{kind:"scene"}:null;const i=ue().byId.get(e.id);if(i?.type==="TSE_LAYER_COLLECTION")return{kind:"collection",path:i.path};const o=t.hierarchy.object3D(e.id);if(o===null)return null;if(o===n.root)return{kind:"scene"};const l=n.blenderObjectName(o);return l===null?null:{kind:"object",name:l}}let N={object:null,collection:null,context:null,views:new Map,error:null,loading:!1},ee=0;const D=new Set;let U=null;const E=new Set;let I=null,j=0,_=0;const T=new Set;function y(e,t=!1){N={...N,...e},ee+=1;for(const n of[...D])n();t&&H().documents.contextChanged(Z())}function Se(e){return D.add(e),()=>{D.delete(e)}}function V(){return ee}function B(){return N}function Ae(){const e=I;j+=1,E.clear(),T.clear(),e!==null?te(e,!0):y({})}pe(()=>{Ae()});let M=null;function te(e,t=!1){M!==e&&(M=e,setTimeout(()=>{M===e&&(M=null,Ne(e,t))},0))}function Ee(e){return e.kind==="scene"?"":e.kind==="collection"?`collection:${e.path}`:e.name}function Oe(){if(U!==null)return;const e=J();e!==null&&(U=e.subscribeFrames(de))}async function Ne(e,t=!1){const n=e.startsWith("collection:")?e.slice(11):null,i=n===null&&e!==""?e:null,o=t&&I===e;I!==e&&(j+=1,E.clear(),T.clear());const l=j,c=++_;I=e;const a=o?N.context:null;o||y({loading:!0,object:i,collection:n,context:null,error:null,views:new Map});try{const s=await fe(i??void 0,n??void 0);if(l!==j||c!==_)return;if(o&&JSON.stringify(s)===JSON.stringify(a)){y({loading:!1,error:null});return}y({context:s,loading:!1,error:null},!0)}catch(s){if(l!==j||c!==_)return;y({context:null,loading:!1,error:W(s)},!0)}}function ne(e){if(!q())return;Oe();const t=Ee(e);I!==t&&te(t)}function R(e){const t=N.views.get(e);if(t!==void 0&&T.has(e)||E.has(e)||!q())return t;E.add(e);const n=j;return he(e).then(i=>{if(n!==j||(E.delete(e),T.add(e),i===null))return;const o=new Map(N.views);o.set(e,i),y({views:o,error:null})}).catch(i=>{n===j&&(E.delete(e),y({error:W(i)}))}),t}async function Re(e,t,n,i){try{return await xe(e,t,n,i),T.delete(e),y({error:null}),!0}catch(o){return y({error:W(o)}),!1}}function W(e){return e instanceof Error?e.message:String(e)}const C=20,K=2,Ce="40%",$e=25,X=20,v=8,Le=4,G=8,p=11,g=.5,x="#e6e6e6",Ie="#3d3d3d",Te="#ffffff11",ke="rgba(0,0,0,0.12)",Me="#545454",Pe="#3d3d3d",Be="#4772b3",ie="#991616",_e=8,Fe=6,De=e=>Math.round(e*.2),re=e=>e.filter(t=>t.hidden!==!0&&t.undrawn!==!0);function k(){return b.useSyncExternalStore(Se,V,V)}function h({title:e,sub:t=!1,closed:n=!1,note:i,count:o,children:l}){const[c,a]=b.useState(!n);return r.jsxs("div",{style:{marginBottom:v,borderRadius:Le,boxShadow:t?"none":`inset 0 0 0 1px ${Te}`,background:t?ke:"transparent",overflow:"hidden"},children:[r.jsxs("button",{type:"button",onClick:()=>a(!c),style:{display:"flex",alignItems:"center",width:"100%",height:$e,background:t?"transparent":Ie,border:"none",padding:`0 ${G}px 0 ${t?X+14-20:0}px`,color:x,font:`${p}px inherit`,textAlign:"left",cursor:"pointer",gap:Fe},children:[r.jsx("span",{"aria-hidden":"true",style:{width:X-8,textAlign:"center",fontSize:_e,opacity:.85},children:c?"▼":"▶"}),r.jsx("span",{style:{fontWeight:400},title:i,children:e}),o===void 0?null:r.jsx("span",{style:{opacity:g,marginLeft:"auto"},children:o})]}),c?r.jsx("div",{style:{padding:v},children:l}):null]})}function O({label:e,title:t,readonly:n,identifier:i,children:o}){return r.jsxs("div",{"data-rna-field":i??"","data-field-label":e,"data-field-readonly":n?"true":void 0,style:{display:"flex",alignItems:"center",minHeight:C,marginBottom:K,gap:G,opacity:n?g:1},title:t,children:[r.jsx("span",{style:{flex:`0 0 ${Ce}`,textAlign:"right",color:x,fontSize:p,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e}),r.jsx("span",{style:{flex:"1 1 0",minWidth:0,display:"flex",gap:K},children:o})]})}const m={height:C,width:"100%",minWidth:0,boxSizing:"border-box",background:Me,border:`1px solid ${Pe}`,borderRadius:De(C),color:x,fontSize:p,padding:`0 ${G}px`,textAlign:"center"};function S({children:e}){return r.jsx("span",{style:{...m,display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e})}const F=C-2*Math.floor((C-2)/6);function oe({value:e,readonly:t,label:n,onChange:i}){return r.jsx("input",{type:"checkbox",checked:e,readOnly:t,...n===void 0?{}:{"aria-label":n},onChange:o=>!t&&i(o.target.checked),style:{width:F,height:F,margin:`${(C-F)/2}px 0`,accentColor:Be,cursor:t?"default":"pointer"}})}function le({row:e,value:t,index:n,onWrite:i}){const[o,l]=b.useState(null),c=e.type==="FLOAT"?e.precision??3:0,a=o??(e.type==="FLOAT"?t.toFixed(c):String(t));return e.readonly?r.jsx(S,{children:a}):r.jsx("input",{type:"number","aria-label":$(e,n),value:a,...e.softMin===void 0?{}:{min:e.softMin},...e.softMax===void 0?{}:{max:e.softMax},...e.step===void 0?{}:{step:e.type==="FLOAT"?e.step/100:1},onChange:s=>l(s.target.value),onBlur:()=>{const s=Number(o);l(null),o!==null&&Number.isFinite(s)&&s!==t&&i(s,n)},onKeyDown:s=>{s.key==="Enter"&&s.target.blur(),s.key==="Escape"&&l(null)},style:m})}const ze=new Set(["TRANSLATION","DIRECTION","XYZ","XYZ_LENGTH","EULER","VELOCITY","ACCELERATION","COORDS"]);function se(e,t){if(e==="QUATERNION"||e==="AXISANGLE")return"WXYZ"[t];if(!(t>=4)){if(ze.has(e))return"XYZW"[t];if(e==="COLOR"||e==="COLOR_GAMMA")return"RGBA"[t]}}function $(e,t){const n=e.name||e.identifier;return t===void 0?n:`${n} ${se(e.subtype,t)??t}`}function ce(e,t){const n=i=>Math.max(0,Math.min(255,Math.round(Math.max(0,e[i]??0)**(t?1:.45454545454545453)*255)));return[n(0),n(1),n(2)]}function Y(e,t=!1){const[n,i,o]=ce(e,t);return`rgb(${n}, ${i}, ${o})`}function We(e,t,n){const i=u=>n?u/255:(u/255)**2.2,[o,l,c]=ye(be(e)).map(i),a=[o,l,c],s=/^(rgba|hsla)\(/i.test(e)||/^#[0-9a-f]{8}$/i.test(e);return t.length>3&&a.push(s?je(e):t[3]??1),a}function Ge({row:e,onOpen:t}){const n=e.value;if(n===null||n.path===null)return r.jsx(S,{children:n===null?"None":n.name??n.type});const i=n.path;return r.jsx("button",{type:"button","aria-label":$(e),onClick:()=>t(i),style:{...m,cursor:"pointer",textAlign:"left"},title:i,children:n.name??n.type})}function we({row:e,write:t}){const n=e.items??[];if(e.isFlag){const o=e.value??[];return r.jsx(S,{children:o.length===0?"None":o.join(", ")})}const i=String(e.value??"");return e.readonly?r.jsx(S,{children:n.find(o=>o.identifier===i)?.name??i}):r.jsx("select",{"aria-label":$(e),value:i,onChange:o=>t(o.target.value),style:{...m,textAlign:"left"},children:n.map(o=>r.jsx("option",{value:o.identifier,children:o.name},o.identifier))})}function Ue({row:e,write:t}){const n=String(e.value??"");return e.readonly?r.jsx(S,{children:n}):r.jsx(He,{value:n,label:$(e),onWrite:i=>t(i)})}function Ve({row:e,write:t}){const n=e.value??[],i=e.subtype==="COLOR_GAMMA",[o,l]=b.useState(!1),[c,a,s]=ce(n,i),u=n.length>3?n[3]??1:1,f=u<1?`rgba(${c}, ${a}, ${s}, ${u.toFixed(2)})`:Y(n,i);return r.jsxs("span",{style:{position:"relative",display:"block"},children:[r.jsx("button",{type:"button","aria-label":e.name,"aria-expanded":o,disabled:e.readonly,onClick:()=>l(!o),style:{...m,background:Y(n,i),display:"block",width:"100%",cursor:e.readonly?"default":"pointer"},title:n.map(d=>d.toFixed(3)).join(", ")}),o?r.jsx("div",{style:{position:"absolute",zIndex:"var(--volter-z-dropdown)",top:"100%",right:0,marginTop:4},children:r.jsx(ge,{value:f,onChange:()=>{},onChangeEnd:d=>t(We(d,n,i)),onClose:()=>l(!1)})}):null]})}function Ke({row:e,label:t,title:n,write:i}){const o=e.value??[];return r.jsx(r.Fragment,{children:o.map((l,c)=>r.jsx(O,{label:Xe(t,c,e.subtype),title:n,readonly:e.readonly,identifier:`${e.identifier}[${c}]`,children:e.type==="BOOLEAN"?r.jsx(oe,{value:l===!0,readonly:e.readonly,label:$(e,c),onChange:a=>i(a,c)}):r.jsx(le,{row:e,value:Number(l),index:c,onWrite:(a,s)=>i(a,s)})},`${e.identifier}-${c}`))})}function Xe(e,t,n){const i=se(n,t);return i===void 0?t===0?e:`${e} ${t}`:`${t===0?`${e} `:""}${i}`}function Ye(e){const{row:t,write:n}=e;switch(t.type){case"POINTER":return r.jsx(Ge,{...e});case"ENUM":return r.jsx(we,{...e});case"STRING":return r.jsx(Ue,{...e});case"BOOLEAN":return r.jsx(oe,{value:t.value===!0,readonly:t.readonly,label:$(t),onChange:n});default:return r.jsx(le,{row:t,value:Number(t.value??0),onWrite:i=>n(i)})}}function w({row:e,path:t,onOpen:n}){const i=(u,f)=>void Re(t,e.identifier,u,f),o=e.name||e.identifier,l=`${e.identifier} — ${e.type}${e.subtype==="NONE"?"":`/${e.subtype}`}${e.readonly?" (read-only)":""}${e.description?`
|
|
2
2
|
${e.description}`:""}`,c={row:e,path:t,write:i,onOpen:n},a=e.valueOmitted??e.valueError;if(a!==void 0)return r.jsx(O,{label:o,title:l,readonly:!0,identifier:e.identifier,children:r.jsx(S,{children:a})});if(e.type==="COLLECTION")return r.jsx(Ze,{label:o,title:l,value:e.value??{count:0},identifier:e.identifier,onOpen:()=>n(`${t}.${e.identifier}`)});const s=e.type==="INT"||e.type==="FLOAT";return e.arrayLength>0&&(s||e.type==="BOOLEAN")?s&&(e.subtype==="COLOR"||e.subtype==="COLOR_GAMMA")?r.jsx(O,{label:o,title:l,readonly:e.readonly,identifier:e.identifier,children:r.jsx(Ve,{...c})}):r.jsx(Ke,{...c,label:o,title:l}):r.jsx(O,{label:o,title:l,readonly:e.readonly,identifier:e.identifier,children:Ye(c)})}function He({value:e,label:t,onWrite:n}){const[i,o]=b.useState(null);return r.jsx("input",{type:"text",...t===void 0?{}:{"aria-label":t},value:i??e,onChange:l=>o(l.target.value),onBlur:()=>{i!==null&&i!==e&&n(i),o(null)},onKeyDown:l=>{l.key==="Enter"&&l.target.blur(),l.key==="Escape"&&o(null)},style:{...m,textAlign:"left"}})}function Ze({label:e,title:t,value:n,identifier:i,onOpen:o}){const[l,c]=b.useState(!1),a=n.names??[];return r.jsxs(r.Fragment,{children:[r.jsx(O,{label:e,title:t,readonly:!1,identifier:i,children:r.jsxs("button",{type:"button","aria-label":e,onClick:()=>a.length?c(!l):o(),style:{...m,cursor:"pointer",textAlign:"left"},children:[a.length?`${l?"▼":"▶"} `:"",n.count," ",n.count===1?"item":"items"]})}),l?a.map(s=>r.jsx(O,{label:"",readonly:!0,children:r.jsx(S,{children:s})},s)):null]})}const z=e=>typeof e=="string"?e:e.property;function qe(e){if(e.active===void 0)return{path:null,index:null};const t=B().context?.[e.active];if(typeof t!="object"||t===null)return{path:null,index:null};const n=t;return{path:n.path??null,index:typeof n.index=="number"?n.index:null}}function Je({panel:e,path:t,onOpen:n}){k();const i=R(t),o=qe(e);return i===void 0?r.jsx(h,{title:e.title,closed:e.closed===!0,children:r.jsxs("div",{style:{color:x,opacity:g,fontSize:p},children:["Reading ",t,"…"]})}):i.kind!=="collection"?r.jsx(h,{title:e.title,closed:e.closed===!0,note:t,children:r.jsxs("div",{style:{color:ie,fontSize:p},children:[t," is not a collection — this panel is declared `collection: true`."]})}):r.jsxs(h,{title:e.title,closed:e.closed===!0,note:t,count:i.count,children:[i.items.length===0?r.jsx("div",{style:{color:x,opacity:g,fontSize:p},children:"None"}):null,i.items.map((l,c)=>r.jsx(h,{title:`${l.path!==null&&l.path===o.path||c===o.index?"● ":""}${l.name??l.type}`,sub:!0,children:l.path===null?r.jsxs("div",{style:{color:x,opacity:g,fontSize:p},children:[l.type," — RNA gives this member no address."]}):r.jsx(Qe,{path:l.path,properties:e.properties,andDeclared:e.andDeclared===!0,onOpen:n})},l.path??l.name??l.type))]})}function Qe({path:e,properties:t,andDeclared:n=!1,onOpen:i}){k();const o=R(e);if(o===void 0)return r.jsxs("div",{style:{color:x,opacity:g,fontSize:p},children:["Reading ",e,"…"]});const l=o.kind==="struct"?o.groups.flatMap(u=>u.rows):[],c=new Map(l.map(u=>[u.identifier,u])),a=t.map(u=>c.get(z(u))).filter(u=>u!==void 0),s=n&&o.kind==="struct"?re(l).filter(u=>u.group===o.type&&!t.some(f=>z(f)===u.identifier)):[];return r.jsx(r.Fragment,{children:[...a,...s].map(u=>r.jsx(w,{row:u,path:e,onOpen:i},u.identifier))})}function et(e,t){if(e.engine!==void 0){const n=B().context?.engine;if(n===void 0)return null;if(!e.engine.includes(n))return!1}for(const n of e.when??[]){const i=n.from??e.from,o=i?t.find(s=>s.label===i):t[0];if(o===void 0)return!1;const l=R(o.path);if(l===void 0)return null;if(l.kind!=="struct")return!1;const c=l.groups.flatMap(s=>s.rows).find(s=>s.identifier===n.property);if(c===void 0)return!1;const a=c.value;if(typeof a!="string"&&typeof a!="number"&&typeof a!="boolean"||n.is!==void 0&&!n.is.includes(a)||n.isNot!==void 0&&n.isNot.includes(a))return!1}return!0}function ae({panel:e,paths:t,onOpen:n}){if(k(),et(e,t)!==!0)return null;const i=e.from?t.find(s=>s.label===e.from):t[0];if(i!==void 0&&e.collection===!0)return r.jsx(Je,{panel:e,path:i.path,onOpen:n});if(i===void 0)return null;const o=R(i.path),l=e.sub??[],c=[],a=[];for(const s of e.properties){const u=z(s),f=typeof s=="string"?i:t.find(L=>L.label===s.from),d=f===void 0?void 0:R(f.path),A=d?.kind==="struct"?d.groups.flatMap(L=>L.rows).find(L=>L.identifier===u):void 0;A===void 0||f===void 0?a.push(u):c.push({identifier:u,row:A,path:f.path})}return o===void 0?r.jsx(h,{title:e.title,closed:e.closed===!0,children:r.jsxs("div",{style:{color:x,opacity:g,fontSize:p},children:["Reading ",i.path,"…"]})}):c.length===0&&l.length===0?null:r.jsxs(h,{title:e.title,closed:e.closed===!0,note:a.length===0?`${i.path}`:`${i.path}
|
|
3
3
|
Not on this datablock: ${a.join(", ")}`,children:[c.map(s=>r.jsx(w,{row:s.row,path:s.path,onOpen:n},s.identifier)),l.map((s,u)=>r.jsx(ae,{panel:s,paths:t,onOpen:n},`${u}:${s.title}`))]})}function P({path:e,onOpen:t}){k();const n=R(e);return n===void 0?r.jsxs("div",{style:{color:x,opacity:g,fontSize:p,padding:v},children:["Reading ",e,"…"]}):n.kind==="collection"?r.jsxs(r.Fragment,{children:[n.items.length===0?r.jsx("div",{style:{color:x,opacity:g,fontSize:p},children:n.count===0?"None":`${n.count} items`}):null,n.items.map(i=>r.jsx(h,{title:i.name??i.type,sub:!0,children:i.path===null?r.jsxs("div",{style:{color:x,opacity:g,fontSize:p},children:[i.type," — RNA gives this member no address."]}):r.jsx(P,{path:i.path,onOpen:t})},i.path??i.name??i.type))]}):r.jsx(r.Fragment,{children:n.groups.map(i=>{const o=re(i.rows);return o.length===0?null:r.jsx(h,{title:i.label,sub:!0,children:o.map(l=>r.jsx(w,{row:l,path:n.path,onOpen:t},l.identifier))},i.id)})})}function tt({tabId:e,subject:t,curated:n=[]}){k(),b.useEffect(()=>ne(t),[t]);const[i,o]=b.useState([]),l=B(),c=l.context?.tabs.find(d=>d.id===e)??null,a=c?.paths??[],s=a.map(d=>d.path).join("|");if(b.useEffect(()=>o([]),[s]),l.error!==null)return r.jsx("div",{style:{color:ie,fontSize:p,padding:v},children:l.error});if(c===null)return r.jsx("div",{style:{color:x,opacity:g,fontSize:p,padding:v},children:l.loading?"Reading the engine…":"Blender shows no properties here."});const u=d=>o(A=>[...A,d]),f=i[i.length-1];return r.jsxs("div",{style:{padding:`${v}px 0`},children:[i.length>0?r.jsxs("button",{type:"button",onClick:()=>o(d=>d.slice(0,-1)),style:{...m,width:"auto",marginBottom:v,cursor:"pointer",textAlign:"left"},title:f,children:["← ",c.label]}):null,f!==void 0?r.jsx(h,{title:f.slice(f.lastIndexOf(".")+1),children:r.jsx(P,{path:f,onOpen:u})}):r.jsxs(r.Fragment,{children:[n.map((d,A)=>r.jsx(ae,{panel:d,paths:a,onOpen:u},`${A}:${d.title}`)),n.length>0?r.jsx(h,{title:"All properties",closed:!0,children:a.map(d=>r.jsx(h,{title:d.label,sub:!0,children:r.jsx(P,{path:d.path,onOpen:u})},d.path))}):a.map(d=>r.jsx(h,{title:d.label,children:r.jsx(P,{path:d.path,onOpen:u})},d.path))]})]})}function ct(e){return(t,n)=>{const i=Q(t,n);if(i===null)return!1;if(ne(i),e.standing==="any")return!0;if(e.standing==="object")return i.kind==="object";const o=B(),l=i.kind==="object"?i.name:null,c=i.kind==="collection"?i.path:null;return o.object!==l||o.collection!==c?!1:o.context?.tabs.some(a=>a.id===e.id)??!1}}function at(e){return function({node:n,adapter:i}){const o=Q(n,i);return o===null?null:r.jsx(tt,{tabId:e.id,subject:o,curated:e.curated??[]})}}export{ct as a,at as b,B as c,Q as r};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{r as x,ls as yt}from"./index-Dt5jm3bx.js";import{a as bt}from"./preview-renderer-BrYNFV1p.js";import{v as Mt}from"./output-pass-HurwNl0G.js";import{_ as vt,fx as De,bi as Ue,aC as xt,d7 as Et,ej as St,cP as ye,el as kt,cm as Bt,cl as Pe,fo as ce,ex as At,d5 as Ct,d9 as It,cJ as jt,e as Ve}from"./three.core-3arARmh6.js";import{f as Ft}from"./clip-planes-CnAI6DZn.js";import{a as Tt}from"./content-bounds-DVWAzm9f.js";const _t=1024*1024,We={Uint8Array,Int8Array,Uint16Array,Int16Array,Uint32Array,Int32Array,Float32Array,Float64Array},Lt=async t=>Array.from(new Uint8Array(await crypto.subtle.digest("SHA-256",t)),e=>e.toString(16).padStart(2,"0")).join("");class $t{constructor(){this.buffers=null,this.offsets=[]}reset(){this.buffers=null,this.offsets=[]}async accept(e){try{if(e.kind==="begin"){if(this.buffers)throw new Error("A frame value is already arriving");if(!e.lengths.length||e.lengths.length>4096||e.lengths.reduce((s,o)=>s+o,0)>2*1024**3||e.lengths.some(s=>!Number.isSafeInteger(s)||s<0||s>1024**3))throw new Error("Invalid frame buffer lengths");this.buffers=e.lengths.map(s=>new Uint8Array(s)),this.offsets=e.lengths.map(()=>0);return}if(!this.buffers)throw new Error("Frame chunk arrived without its manifest");if(e.kind==="bytes"){const s=this.buffers[e.slot];if(!s||!Number.isSafeInteger(e.offset)||e.offset!==this.offsets[e.slot]||e.bytes.byteLength>_t||!e.bytes.byteLength||e.offset+e.bytes.byteLength>s.byteLength)throw new Error("Frame chunk is out of order or exceeds its bound");if(await Lt(e.bytes)!==e.sha256)throw new Error("Frame chunk digest mismatch");s.set(e.bytes,e.offset),this.offsets[e.slot]=e.offset+e.bytes.byteLength;return}if(e.kind!=="end")throw new Error("Unknown frame chunk");const n=this.buffers;if(n.some((s,o)=>s.length!==this.offsets[o]))throw new Error("Frame value is incomplete");const r=JSON.parse(new TextDecoder("utf-8",{fatal:!0}).decode(n[0]),(s,o)=>{if(!o||typeof o!="object"||!("$frameColumn"in o))return o;const a=n[o.$frameColumn],i=We[o.type];if(!Number.isSafeInteger(o.$frameColumn)||o.$frameColumn<1||!a||!Object.hasOwn(We,o.type)||!i||a.byteLength%i.BYTES_PER_ELEMENT)throw new Error("Invalid frame column descriptor");return new i(a.buffer)});return this.reset(),{value:r}}catch(n){throw this.reset(),n}}}const Ge=4096;class Nt{#r;#o;#a=[];#n=new Map;#C=0;#d=null;#i=null;#h=!1;#v=!1;#x=e=>{!this.#v&&this.#n.size===0||(e.preventDefault(),e.returnValue="")};#f=new Map;#y=new Map;#p=null;#b=0;#E=0;#S=0;#l=null;#k=null;#c=null;constructor(e){this.#o=e,this.#r=new Worker(new URL("/assets/worker-D3-3vOkS.js",import.meta.url),{type:"module",name:"blender"}),globalThis.addEventListener?.("beforeunload",this.#x),this.#r.onmessage=n=>void this.#A(n.data),this.#r.onerror=n=>{const r=n.error,s=n.filename?` at ${n.filename}:${n.lineno}:${n.colno}`:"",o=r?.stack??r?.message??n.message,a=this.#a.length>0?`
|
|
2
|
+
Blender's last output:
|
|
3
|
+
${this.#a.join(`
|
|
4
|
+
`)}`:"",i=this.#c===null?null:Math.round(this.#c/1048576),c=i!==null&&i>=Ge-16?`Blender ran out of memory: its heap reached ${i} MB of the in-tab engine's ${Ge} MB, and this scene needs more. `:"",h=new Error(`${c}Blender worker failed: ${o||"the worker script did not load"}${s}${a}`);console.error(h.message);for(const l of[...this.#n.keys()])this.#w(l);for(const l of this.#n.values())l.reject(h);this.#n.clear()}}#s=null;#u=null;get project(){return this.#s}get document(){return this.#u}get lastOutput(){return[...this.#a]}start(e,n){return this.#s!==null&&this.#s!==e?Promise.reject(new Error(`The Blender session is bound to ${this.#s}, not ${e}`)):n!==void 0&&this.#u!==null&&this.#u!==n?Promise.reject(new Error(`Blender resource conflict: the session holds ${this.#u}; cannot open ${n}`)):(this.#s=e,this.#u??=n??"models/model.blend",this.#d??=this.#e({op:"start",project:e,...n===void 0?{}:{document:n}}),this.#d)}#t(){return this.#s===null?Promise.reject(new Error("The Blender session has not been started with a project (blender-start)")):this.start(this.#s)}async execute(e,n=!0,r="Blender Python"){return await this.#t(),await this.#e({op:"execute",code:e,history:n,label:r})}async historyGesture(e){await this.#t(),await this.#e({op:e})}async historyStep(e,n){return await this.#t(),(await this.#e({op:"history-step",token:e,direction:n})).moved}async sceneInfo(){return await this.#t(),await this.#e({op:"scene-info"})}async objectInfo(e){return await this.#t(),await this.#e({op:"object-info",name:e})}async rna(e,n){return await this.#t(),await this.#e({op:"rna",path:e,...n===void 0?{}:{names:n}})}async rnaContext(e,n){return await this.#t(),await this.#e({op:"rna-context",...e===void 0?{}:{object:e},...n===void 0?{}:{collection:n}})}async rnaSet(e,n,r,s,o=!0){return await this.#t(),await this.#e({op:"rna-set",history:o,path:e,property:n,value:r,...s===void 0?{}:{index:s}})}async viewShading(e){await this.#t(),await this.#e({op:"view-shading",shading:e})}async outliner(e){return await this.#t(),await this.#e({op:"outliner",...e===void 0?{}:{selected:e}})}async nodeTree(e){return await this.#t(),await this.#e({op:"node-tree",...e?.path===void 0?{}:{path:e.path},...e?.material===void 0?{}:{material:e.material}})}async uvLayout(e){return await this.#t(),await this.#e({op:"uv-layout",...e?.object===void 0?{}:{object:e.object},...e?.uvLayer===void 0?{}:{uvLayer:e.uvLayer}})}async rig(e){return await this.#t(),await this.#e({op:"rig",...e?.object===void 0?{}:{object:e.object}})}async actionClip(e){return await this.#t(),await this.#e({op:"action-clip",...e?.object===void 0?{}:{object:e.object},...e?.bake===void 0?{}:{bake:e.bake}})}async outlinerSet(e,n,r){return await this.#t(),await this.#e({op:"outliner-set",path:e,column:n,value:r})}async present(){await this.#t(),await this.#e({op:"present"})}async screenshotView(e){return await this.#t(),await this.#e({op:"screenshot-view",maxSize:e})}async readFile(e){return await this.#t(),await this.#e({op:"read-file",path:e})}async writeFile(e,n){await this.#t(),await this.#e({op:"write-file",path:e,bytes:n})}async listFiles(e){return await this.#t(),await this.#e({op:"list-files",path:e})}get presented(){return this.#k}stop(){return this.#h?Promise.resolve():this.#i?this.#i:(this.#i=(async()=>{(this.#d?await this.#d.then(()=>!0,()=>!1):!1)&&await this.#e({op:"flush-document"},!0),this.terminate()})().catch(e=>{throw this.#i=null,e}),this.#i)}terminate(){if(this.#m(),this.#h)return;this.#h=!0,globalThis.removeEventListener?.("beforeunload",this.#x);const e=this.#M("terminating worker");try{this.#r.terminate()}finally{e()}const n=new Error("The Blender session was terminated");for(const r of[...this.#n.keys()])this.#w(r);for(const r of this.#n.values())r.reject(n);this.#n.clear()}metrics(e=performance.now()){let n=null,r=this.#b,s=this.#E,o=this.#S;for(const a of this.#f.values()){const i=e-a;(n===null||i>n)&&(n=i),i>r&&(r=i),i>=5e3&&(s+=1),i>=3e4&&(o+=1)}return{inFlightMs:n===null?null:Math.round(n),lastCallMs:this.#p===null?null:Math.round(this.#p),maxCallMs:this.#p===null&&n===null?null:Math.round(r),callsOver5s:s,callsOver30s:o,lastCallWindow:this.#l,wasmMemoryMB:this.#c===null?null:Math.round(this.#c/1048576)}}#w(e){this.#y.get(e)?.(),this.#y.delete(e);const n=this.#f.get(e);if(n===void 0)return;this.#f.delete(e);const r=performance.now()-n;this.#p=r,r>this.#b&&(this.#b=r),r>=5e3&&(this.#E+=1),r>=3e4&&(this.#S+=1),this.#l!==null&&this.#l.start===n&&(this.#l={start:n,end:n+r})}#e(e,n=!1){if(this.#h||this.#i&&!n)return Promise.reject(new Error("The Blender session is stopping or terminated"));const r=++this.#C;return new Promise((s,o)=>{this.#n.set(r,{resolve:s,reject:o});const a=performance.now();this.#f.set(r,a),this.#l={start:a,end:null},this.#y.set(r,this.#M(`waiting for worker ${e.op}`));try{this.#r.postMessage({...e,id:r})}catch(i){this.#n.delete(r),this.#w(r),o(i instanceof Error?i:new Error(String(i)))}})}#M(e){try{const n=this.#o.work?.(e);return()=>{try{n?.()}catch{}}}catch{return()=>{}}}#B=new $t;#g=null;#m(){this.#B.reset();const e=this.#g;if(this.#g=null,e)try{Promise.resolve(this.#o.stage?.({...e,abort:!0})).catch(()=>{})}catch{}}async#A(e){if("op"in e){if(e.op==="frame-stream"){try{const o=await this.#B.accept(e.chunk);if(o){const a=o.value;if(a.op==="present"){await this.#A({...a,id:e.id});return}if(a.op!=="stage"||!this.#o.stage)throw new Error("The presenter does not support staged Blender frames");this.#g={session:a.session,revision:a.revision},await this.#o.stage(a)}this.#r.postMessage({op:"present-result",id:e.id})}catch(o){this.#m(),this.#r.postMessage({op:"present-result",id:e.id,error:o instanceof Error?o.message:String(o)})}return}if(e.op==="document-dirty"){this.#v=e.dirty;return}if(e.op==="history"){this.#o.history?.(e.entries);return}if(e.op==="log"){this.#a.push(e.text),this.#a.length>12&&this.#a.shift(),this.#o.log?.(e.level,e.text);return}if(e.op==="memory"){this.#c=e.bytes;return}const r=e.frame;typeof r?.session=="string"&&typeof r.revision=="number"&&(this.#k={session:r.session,revision:r.revision});const s=this.#M("presenting worker frame");try{const o=await this.#o.present(e.frame,e.description,e.capture);this.#g=null,this.#r.postMessage({op:"present-result",id:e.id,...o?.capture===void 0?{}:{capture:o.capture},...o!=null&&"held"in o?{held:o.held}:{}})}catch(o){this.#m(),this.#r.postMessage({op:"present-result",id:e.id,error:o instanceof Error?o.message:String(o)})}finally{s()}return}"error"in e&&this.#m();const n=this.#n.get(e.id);n&&(this.#n.delete(e.id),this.#w(e.id),"error"in e?n.reject(new Error(e.error)):n.resolve(e.result))}}const Ot="/assets/agx-base-srgb-BjWZJgrZ.lut",Rt="/assets/agx-look-medium-high-contrast-D5F_ob1L.lut",Dt="/assets/agx-look-punchy-dxsnycNs.lut",Ut="/assets/filmic-srgb-Ct35FIH6.lut",T=new Float64Array(12),ze=[0,0,0],O=new Float64Array(3),H=new Float64Array(3),_=new Int8Array([1,0,0,1,1,0,0,1,2,1,0,0,1,0,1,0,2,1,0,0,1,1,0,1,2,0,1,0,0,1,0,1,1,2,1,0,0,1,0,0,1,1,1,2,0,0,1,0,1,1,0,1,0,2]);function Pt(t,e,n){return t>e?e>n?0:t>n?1:2:n>e?3:n>t?4:5}function Je(t,e,n,r,s){const o=e*e,a=Math.min(1,Math.max(0,n))*(e-1),i=Math.min(1,Math.max(0,r))*(e-1),c=Math.min(1,Math.max(0,s))*(e-1),h=Math.min(Math.floor(a),e-2),l=Math.min(Math.floor(i),e-2),u=Math.min(Math.floor(c),e-2),E=a-h,m=i-l,S=c-u,y=(d,g,F,I)=>{const w=(h+g+(l+F)*e+(u+I)*o)*3;T[d]=t[w]/65535,T[d+1]=t[w+1]/65535,T[d+2]=t[w+2]/65535};y(0,0,0,0),y(9,1,1,1),O[0]=E,O[1]=m,O[2]=S;const p=Pt(E,m,S)*9;y(3,_[p],_[p+1],_[p+2]),y(6,_[p+3],_[p+4],_[p+5]);const C=O[_[p+6]],v=O[_[p+7]],f=O[_[p+8]];for(let d=0;d<3;d++){const g=T[d];ze[d]=g+C*(T[3+d]-g)+v*(T[6+d]-T[3+d])+f*(T[9+d]-T[6+d])}return ze}function X(t){const e=t&32768?-1:1,n=t>>10&31,r=t&1023;return n===0?e*2**-24*r:n===31?r?Number.NaN:e*Number.POSITIVE_INFINITY:e*2**(n-15)*(1+r/1024)}function Ie(t,e,n,r){const s=new Uint8ClampedArray(e*4);for(let o=0;o<e;o++){const a=o*4,i=X(t[a+3]),c=i===0?n:n/i;H[0]=X(t[a])*c,H[1]=X(t[a+1])*c,H[2]=X(t[a+2])*c;const h=r(H);s[a]=Math.round(h[0]*255),s[a+1]=Math.round(h[1]*255),s[a+2]=Math.round(h[2]*255),s[a+3]=Math.round(Math.min(1,Math.max(0,i))*255)}return s}function Vt(t){return new URL(Object.assign({"./agx-base-srgb.lut":Ot,"./agx-look-medium-high-contrast.lut":Rt,"./agx-look-punchy.lut":Dt,"./filmic-srgb.lut":Ut})[`./${t.replace(/\.lut$/,"")}.lut`],import.meta.url)}const Wt=57,L=-12.47393,Qe=12.5260688117,Gt=[[.4123908,.3575843,.1804808],[.212639,.7151687,.0721923],[.0193308,.1191948,.9505322]],zt=[[1.5250528,-.3159135,-.1226583],[-.5091526,1.3333274,.1382844],[.0957153,.0508974,.7879558]];function qe(t,e,n){const r=e[0],s=e[1],o=e[2];n[0]=t[0][0]*r+t[0][1]*s+t[0][2]*o,n[1]=t[1][0]*r+t[1][1]*s+t[1][2]*o,n[2]=t[2][0]*r+t[2][1]*s+t[2][2]*o}const Y=new Float64Array(3),He=new Float64Array(3),Z=[0,0,0];function ue(t){const e=Math.min(1,Math.max(0,t));return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}function et(t,e,n,r){return Je(t,Wt,e,n,r)}function qt(t,e){qe(Gt,e,He),qe(zt,He,Y);const n=Qe-L,r=et(t,(Math.log2(Math.max(Y[0],1e-10))-L)/n,(Math.log2(Math.max(Y[1],1e-10))-L)/n,(Math.log2(Math.max(Y[2],1e-10))-L)/n);return Z[0]=ue(Math.max(0,r[0])**2.4),Z[1]=ue(Math.max(0,r[1])**2.4),Z[2]=ue(Math.max(0,r[2])**2.4),Z}const Ht={"AgX - Medium High Contrast":"agx-look-medium-high-contrast.lut","AgX - Punchy":"agx-look-punchy.lut"};function Xt(t,e){const n=Qe-L;return et(t,(Math.log2(Math.max(e[0],1e-10))-L)/n,(Math.log2(Math.max(e[1],1e-10))-L)/n,(Math.log2(Math.max(e[2],1e-10))-L)/n)}function Yt(t,e,n,r={}){const s=r.exposure??1,o=r.composedLook===!0?Xt:qt;return Ie(e,n,s,a=>o(t,a))}const tt=33,be=tt**3*3,Me=4096,de=-12.473931188,he=25;function fe(t,e){const n=Math.min(1,Math.max(0,e))*(Me-1),r=Math.min(Math.floor(n),Me-2),s=n-r;return((1-s)*t[be+r]+s*t[be+r+1])/65535}const K=[0,0,0];function Zt(t,e){const n=Je(t,tt,(Math.log2(Math.max(e[0],1e-10))-de)/he,(Math.log2(Math.max(e[1],1e-10))-de)/he,(Math.log2(Math.max(e[2],1e-10))-de)/he);return K[0]=fe(t,n[0]/.66),K[1]=fe(t,n[1]/.66),K[2]=fe(t,n[2]/.66),K}function Kt(t,e,n,r){if(t.length!==be+Me)throw new Error("Invalid Blender Filmic display table");return Ie(e,n,r,s=>Zt(t,s))}const W=2.4,$=.055,nt=$/(W-1),Jt=1/(W/(1+$)*((nt+$)/(1+$))**(W-1)),Qt=((nt+$)/(1+$))**W;function pe(t){return t>0?t<Qt?t*Jt:(1+$)*t**(1/W)-$:0}const J=[0,0,0];function en(t){return J[0]=pe(t[0]),J[1]=pe(t[1]),J[2]=pe(t[2]),J}function tn(t,e,n){return Ie(t,e,n,en)}function rt(t,e,n,r){if(!Number.isFinite(n.width)||!Number.isFinite(n.height)||n.width<1||n.height<1)throw new Error("Scene capture requires finite positive dimensions");const s=Math.min(2048,Math.round(n.width)),o=Math.min(2048,Math.round(n.height)),a=r?1:2,i=s*a,c=o*a,h=bt(),l=h.renderer,u={target:l.getRenderTarget(),toneMapping:l.toneMapping,exposure:l.toneMappingExposure,colorSpace:l.outputColorSpace,shadows:l.shadowMap.enabled,shadowType:l.shadowMap.type,clearColor:l.getClearColor(new vt),clearAlpha:l.getClearAlpha(),background:t.background};let E,m,S=!1;try{E=new De(i,c,{type:Ue}),n.effect&&(E.depthTexture=new xt(i,c)),l.shadowMap.enabled=!0,l.shadowMap.type=Et,l.outputColorSpace=St,l.toneMapping=n.toneMapping??ye,l.toneMappingExposure=n.exposure??1,l.setClearColor(0,n.transparent?0:1),n.transparent&&(t.background=null),l.setRenderTarget(E),l.clear(),l.render(t,e);const y=n.effect?.render(l,E,t,e)??E;if(y.texture.type!==Ue||y.width!==i||y.height!==c)throw new Error("Scene capture effect must return a same-size half-float target");if(r){const w=new Uint16Array(i*c*4);return l.readRenderTargetPixels(y,0,0,i,c,w),S=!0,{pixels:w,width:s,height:o}}m=new De(i,c),Mt(n.transparent===!0).render(l,m,y,0,!1);const p=new Uint8Array(i*c*4);l.readRenderTargetPixels(m,0,0,i,c,p);const C=document.createElement("canvas");C.width=i,C.height=c;const v=C.getContext("2d");if(!v)throw new Error("Scene capture could not create an image canvas");const f=v.createImageData(i,c),d=i*4;for(let w=0;w<c;w++)f.data.set(p.subarray((c-1-w)*d,(c-w)*d),w*d);v.putImageData(f,0,0);const g=document.createElement("canvas");g.width=s,g.height=o;const F=g.getContext("2d");if(!F)throw new Error("Scene capture could not create an output canvas");F.drawImage(C,0,0,s,o);const I=g.toDataURL("image/png");return S=!0,I}finally{t.background=u.background,l.setRenderTarget(u.target),l.toneMapping=u.toneMapping,l.toneMappingExposure=u.exposure,l.outputColorSpace=u.colorSpace,l.shadowMap.enabled=u.shadows,l.shadowMap.type=u.shadowType,l.setClearColor(u.clearColor,u.clearAlpha),m?.dispose(),E?.dispose(),h.release({discard:!S})}}function nn(t,e,n){return rt(t,e,n,!0)}function rn(t,e,n){return rt(t,e,n,!1)}const on=t=>typeof t=="object"&&t!==null&&typeof t.subscribeFrames=="function"&&typeof t.objectForBlenderName=="function"&&typeof t.blenderObjectName=="function"&&typeof t.blenderSelection=="function"&&typeof t.setStageMode=="function";function je(){const t=x().documents.context(ct());return on(t)?t:null}function sn(){return je()?.blenderSelection()??{selected:[],active:null}}const an={tree:null,byId:new Map,parentOf:new Map,error:null,loading:!1};let ve=an,ot=0;const xe=new Set;let U=null,se=null,Fe="",P=null;function ln(t){const e=new Map,n=new Map,r=(s,o)=>{e.set(s.id,s),n.set(s.id,o);for(const a of s.children)r(a,s.id)};for(const s of t?.rows??[])r(s,null);return{byId:e,parentOf:n}}function ee(t){ve={...ve,...t},ot+=1;for(const e of[...xe])e()}function Tn(t){return xe.add(t),()=>{xe.delete(t)}}function _n(){return ot}function Ln(){return ve}function Te(t){P!==t&&(P=t,setTimeout(()=>{P===t&&(P=null,st(t===""?[]:t.split("\0")))},0))}let we=0,Ee=Promise.resolve();function st(t){const e=cn(t);return Ee=e,e}async function cn(t){const e=t.join("\0"),n=++we;se=e,Fe=e,ee({loading:!0});try{const r=await Mn(t);if(n!==we)return;je()?.setStageMode(r?.mode??null),ee({tree:r,...ln(r),loading:!1,error:null})}catch(r){if(n!==we)return;ee({loading:!1,error:at(r)})}}function un(){se=null,Te(Fe);for(const t of[...Se])t()}const Se=new Set;function $n(t){return _e(),Se.add(t),()=>{Se.delete(t)}}let Q=!1,ge=null;function _e(){const t=je();if(U!==null&&ge===t)return;U!==null&&(U(),U=null,ge=null);const e=t;if(e!==null){U=e.subscribeFrames(un),ge=e;return}Q||(Q=!0,x().documents.waitForContext(ct()).then(()=>{Q=!1,_e()}).catch(()=>{Q=!1}))}function Nn(t){if(!A())return;_e();const e=[...t].sort().join("\0");se!==e&&Te(e)}async function dn(t){if(!A())return;P=null;let e=st([...t].sort());for(;;){if(await e,Ee===e)return;e=Ee}}async function On(t,e,n){try{return await dt(t,e,n),se=null,Te(Fe),!0}catch(r){return ee({error:at(r)}),!1}}function at(t){return t instanceof Error?t.message:String(t)}const hn={transform:{cx:0,cy:0,zoom:1},looked:null,refusal:null,size:{w:0,h:0},framedAt:0,drawn:[]};let ke=hn,Le=0;const oe=new Set;let it=0;function me(){return ke}function Rn(){return Le}function Dn(t){return oe.add(t),()=>{oe.delete(t)}}function V(t){ke={...ke,...t},Le+=1;for(const e of[...oe])e()}function fn(){it+=1,Le+=1;for(const t of[...oe])t()}function Un(){return it}function R(t){V({refusal:t})}const Xe=new Map;function pn(t){let e=Xe.get(t);return e||(e=fetch(Vt(t)).then(async n=>{if(!n.ok)throw new Error(`Blender display table ${t}: ${n.status} ${n.statusText}`);return new Uint16Array(await n.arrayBuffer())}),Xe.set(t,e)),e}function wn(t){const e=atob(t),n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r);return new Uint16Array(n.buffer,n.byteOffset,n.byteLength>>1)}async function lt(t,e){const n=e.look??"None",r=e.toneMapping==="filmic",s=e.toneMapping==="none";if(!s&&e.toneMapping!=="agx"&&!r)throw new Error("Blender's Khronos PBR Neutral view transform has no scene-linear implementation in the browser, so it cannot resolve a composited or scene-referred frame (implemented: Standard, AgX, Filmic)");const o=s?null:r?"filmic-srgb.lut":n==="None"?"agx-base-srgb.lut":Ht[n];if(o===void 0)throw new Error(`Blender display transform has no table for look ${n}`);const a=o?await pn(o):null,i=e.linearInput,c=i?{pixels:wn(i.base64),width:i.width,height:i.height}:t;if(!c)throw new Error("Blender display transform requires a linear capture");const{pixels:h,width:l,height:u}=c,E=s?tn(h,l*u,e.exposure):r?Kt(a,h,l*u,e.exposure):Yt(a,h,l*u,{exposure:e.exposure,composedLook:n!=="None"}),m=document.createElement("canvas");m.width=l,m.height=u;const S=m.getContext("2d");if(!S)throw new Error("Blender display transform could not create its image canvas");const y=S.createImageData(l,u),p=l*4;for(let f=0;f<u;f++){const d=(u-1-f)*p;y.data.set(E.subarray(d,d+p),f*p)}S.putImageData(y,0,0);const C=m.toDataURL("image/png"),v={base64:C.slice(C.indexOf(",")+1),mimeType:"image/png"};if(e.linear===!0){const f=new Uint8Array(h.buffer,h.byteOffset,h.byteLength);let d="";for(let g=0;g<f.length;g+=32768)d+=String.fromCharCode(...f.subarray(g,g+32768));v.linearBase64=btoa(d),v.linearWidth=l,v.linearHeight=u}return v}async function gn(t,e,n,r,s=()=>{}){const o={none:ye,agx:Ve,neutral:jt,filmic:ye};await n.prepare(e),s();const a={effect:n.effect,width:r.width,height:r.height,transparent:r.transparent===!0,toneMapping:o[r.toneMapping]??Ve,exposure:r.exposure},i=r.toneMapping==="agx"||r.toneMapping==="filmic"||r.linear===!0?await lt(nn(t,e,a),r):null;if(s(),i)return i;const c=rn(t,e,a);if(!c)throw new Error("Blender render could not capture its image");return{base64:c.slice(c.indexOf(",")+1),mimeType:"image/png"}}const mn="document:blender:runtime";let B=null,Ye=0;function Pn(t){const e=++Ye;return B=t,D(),()=>{Ye===e&&(B=null,D())}}function te(){const t=b?.document,e=x().documents.activeId(),n=e?.startsWith("document:model:")?e.slice(15):B?.blend;return!n||!t||n===t?null:`Blender is editing ${t}; ${n} is not open. Return to ${t} before editing.`}function j(){return B?.documentId??mn}function ct(){return j()}async function Vn(t,e){const n=x();if(!n.session.open())throw new Error("Opening a model requires an open project session.");const r=n.projectLocalState.projectRootPath();if(r===null)throw new Error("Opening a model requires a project path.");if(B!==t||n.documents.activeId()!==t.documentId)return!1;const s=M(),o=s.start(r,t.blend);return e(),await o,B!==t?!1:(await s.present(),B===t)}function A(){return b?.project!=null&&te()===null}let ut=0;const Be=new Set;function Wn(){return ut}function Gn(t){return Be.add(t),()=>{Be.delete(t)}}function D(){ut+=1;for(const t of[...Be])t()}async function zn(t,e){return A()?M().rna(t,e):null}async function qn(t,e){return A()?M().rnaContext(t,e):null}async function yn(t,e,n,r,s=!0){if(!A())return null;const o=await M().rnaSet(t,e,n,r,s);return D(),o}async function Hn(t){A()&&await M().viewShading(t)}async function bn(t,e=!0,n="Blender Python"){const r=await M().execute(t,e,n);D();const s=/^Error executing code:/.exec(r);return{text:r,executed:s===null,result:s===null?r.replace(/^Code executed successfully: ?/,""):"",error:s===null?null:r.replace(/^Error executing code: ?/,"")}}function Xn(){M().historyGesture("history-begin").catch(t=>x().console.error(`Could not begin Blender undo gesture: ${String(t)}`,"blender-history"))}async function Yn(){await M().historyGesture("history-end")}async function Mn(t){return A()?M().outliner(t):null}async function Zn(t){return A()?M().nodeTree(t):null}async function Kn(t){return A()?M().uvLayout(t):null}async function Jn(t){return A()?M().rig(t):null}async function Qn(t){return A()?M().actionClip(t):null}async function dt(t,e,n){if(!A())return null;const r=await M().outlinerSet(t,e,n);return D(),r}const vn={view:"blender-node-view",title:"Node Editor",verbs:[["state",void 0],["look",void 0],["view-all","Node Editor: Frame All"],["zoom",void 0],["pan",void 0],["move",void 0],["link",void 0],["set-value",void 0],["use-nodes",void 0],["collapse-panel",void 0]].map(([t,e])=>({id:t,...e?{title:e}:{},run:n=>ht({...n,action:t})}))};function ht(t){const e=typeof t.action=="string"?t.action:"state";switch(e){case"state":break;case"look":V({looked:typeof t.node=="string"?t.node:null,refusal:null});break;case"view-all":fn(),V({refusal:null});break;case"zoom":{const n=typeof t.zoom=="number"?t.zoom:1;V({transform:{...me().transform,zoom:n},refusal:null});break}case"pan":{const n=me().transform;V({transform:{...n,cx:typeof t.cx=="number"?t.cx:n.cx,cy:typeof t.cy=="number"?t.cy:n.cy},refusal:null});break}case"move":R(`Moving "${String(t.node??"a node")}" writes Node.location — editing parity is not the program.`);break;case"link":R("Dragging between sockets would make a link — editing parity is not the program.");break;case"set-value":R(`Changing "${String(t.socket??"a socket")}" writes the socket's default_value — editing parity is not the program.`);break;case"use-nodes":R("Use Nodes writes Material.use_nodes — editing parity is not the program.");break;case"collapse-panel":R(`Collapsing "${String(t.panel??"a panel")}" writes the panel's is_collapsed — editing parity is not the program.`);break;default:R(`blender-node-view: no action "${e}" — state, look, view-all, zoom, pan, and the refusals move, link, set-value, use-nodes, collapse-panel.`)}return me()}let b=null;const ne=new Set;function ft(){ne.size&&x().history.invalidate([...ne]),ne.clear()}let Ae=null,Ze=!1;function re(t){try{const e=x().session.beginWork(`Blender: ${t}`);return()=>{try{e()}catch{}}}catch{return()=>{}}}function Ce(){const t=re("invalidating history and releasing runtime");try{ft(),Ae?.abort(),Ae=null,b?.terminate(),b=null,pt=null}finally{t()}}function xn(){Ze||(Ze=!0,x().session.onBeforeClose(async()=>{await b?.stop(),Ce()}),x().session.onEnded(Ce))}let pt=null;const En=t=>typeof t=="object"&&t!==null&&typeof t.applyFrame=="function"&&typeof t.stageFrame=="function"&&typeof t.snapshot=="function"&&typeof t.captureSnapshot=="function"&&typeof t.recordPresentation=="function"&&typeof t.recordPhotograph=="function";async function Ke(){const{documents:t}=x(),e=Date.now()+15e3;let n=j();for(;;){n=j();const r=await t.waitForContext(n,Math.max(0,Math.min(250,e-Date.now())));if(En(r))return r;if(Date.now()>=e)break}throw new Error(`The Blender Model document is not open, or the open one is not a Model this engine can present to (it must answer stageFrame, applyFrame, captureSnapshot, recordPresentation and recordPhotograph): nothing published a presentable view as ${n} within 15 s (bound model: ${B?.documentId??"none"}). Open the Model document first (\`volter blender-mcp\` opens it before its first call).`)}function M(){const t=te();if(t)throw new Error(t);if(b!==null)return b;xn();const e=new AbortController;Ae=e;let n=!1,r=null;b=new Nt({work:re,history:o=>{const a=b;if(!a)throw new Error("Blender history arrived before its runtime");for(const i of o){if("reset"in i){ft();continue}if(!i.resource)throw new Error("A Blender edit has no document resource");ne.add(i.resource);const c=async h=>{if(b!==a)throw new Error("This Blender history belongs to a closed worker");const l=await a.historyStep(i.id,h);return D(),await dn(sn().selected),l};x().history.record({id:i.id,label:i.label,resources:[i.resource],document:j(),undo:()=>c("undo"),redo:()=>c("redo")})}},stage:async o=>{if(o.abort){r?.stageFrame(o),r=null;return}const a=te();if(a)throw new Error(a);if(B===null)return;const i=j(),c=await Ke();if(e.signal.throwIfAborted(),j()!==i)throw new Error("Blender document changed during frame transfer");r=c,c.stageFrame(o)},present:async(o,a,i)=>{const c=te();if(c)throw new Error(c);if(B===null){if(i?.render)throw new Error("Rendering a Blender frame needs the Model document open; nothing is presenting.");return{}}const h=j(),l=re("waiting for Model presenter");let u;try{u=await Ke()}finally{l()}if(e.signal.throwIfAborted(),j()!==h)throw new Error("Blender document changed before its frame could be presented");const E=re("applying frame to Model"),m=(()=>{try{return u.applyFrame(o)}finally{E()}})(),S=typeof m=="object"&&m!==null&&"held"in m,y=S?m.held:null,p=w=>({...w===void 0?{}:{capture:w},...S?{held:y}:{}});if(u.recordPresentation(a),!i||(pt=i,!i.render))return p(void 0);const C=u.snapshot(),v=()=>{if(e.signal.throwIfAborted(),j()!==h||u.snapshot()!==C)throw new Error("Blender capture document or source revision changed before completion")};if(i.render.linearInput){const w=await lt(null,i.render);return v(),p(w)}const{render:f,position:d,target:g,up:F}=i;if(!d||!g||!F)throw new Error("A Blender render capture must carry the scene camera position, target and up");if(n)throw new Error("A Blender render capture is already in progress");const I=u.captureSnapshot();n=!0,e.signal.addEventListener("abort",I.dispose,{once:!0});try{v();const w=new kt;w.add(I.root),w.updateMatrixWorld(!0);const G=I.root.matrixWorld,ae=new Bt().copy(G).invert(),wt=new Pe().setFromMatrix4(G),gt=new Pe().setFromMatrix4(ae),ie=new ce(d[0],d[1],d[2]).applyMatrix4(G),$e=new ce(g[0],g[1],g[2]).applyMatrix4(G),Ne=new ce(F[0],F[1],F[2]).applyMatrix3(wt),le=Math.min(2048,Math.round(f.width))/Math.min(2048,Math.round(f.height)),Oe=Tt(I.root).getBoundingSphere(new At),z=Ft(ie.distanceTo(Oe.center),Oe.radius);let N;if(f.orthographic){const q=f.fov/2;N=new Ct(-q*le,q*le,q,-q,z.near,z.far)}else N=new It(f.fov,le,z.near,z.far);N.up.copy(Ne),N.position.copy(ie),N.lookAt($e),N.updateMatrixWorld(!0);const Re={position:ie.clone().applyMatrix4(ae).toArray(),target:$e.clone().applyMatrix4(ae).toArray(),up:Ne.clone().applyMatrix3(gt).toArray()};u.recordPhotograph({sent:{position:d,target:g,up:F},photographed:Re,render:{width:f.width,height:f.height,fov:f.fov,orthographic:f.orthographic}});const mt=await gn(w,N,I,f,v);return p({...mt,camera:Re})}finally{n=!1,e.signal.removeEventListener("abort",I.dispose),I.dispose()}},log:(o,a)=>console[o](`[blender] ${a}`)});const s=b;return x().session.reportWorkerCallMeter("Blender",()=>s.metrics()),b}const Sn="models/model.blend",k=(t,e)=>{const n=t[e];if(typeof n!="string")throw new Error(`${String(t.type)} requires a string "${e}"`);return n};async function kn(t){const e=x().projectLocalState.projectRootPath();if(e===null)return{};let n;try{n=await t.execute(`import bpy
|
|
5
|
+
print(bpy.data.filepath)
|
|
6
|
+
`,!1)}catch{return{}}if(/^Error executing code:/m.test(n))return{};const r=n.replace(/^Code executed successfully:/,"").split(`
|
|
7
|
+
`).map(o=>o.trim()).filter(o=>o.startsWith("/")).pop()??"";if(r==="")return{};const s=e.endsWith("/")?e:`${e}/`;return r.startsWith(s)?{document:r.slice(s.length)}:{}}async function er(t){const e=x();if(t.type==="blender-status")return{ok:!0,data:{started:b?.project!=null,document:e.documents.context(j())!==void 0,lastOutput:b?.lastOutput??[]}};if(!e.session.open())return{ok:!1,error:`${t.type} needs an open project session; this editor page has none.`};try{const n=t.type==="blender-start"?k(t,"project"):null;let r=typeof t.document=="string"?t.document:void 0;if((t.type==="blender-stop"||t.type==="blender-start"&&t.fresh===!0)&&(await b?.stop(),Ce(),t.type==="blender-stop"))return{ok:!0,data:{stopped:!0}};if(t.type==="blender-start"&&!e.documents.context(j())){const o=await e.project.documentTable(),a=o.entries.filter(l=>l.kind==="model"),i=r!==void 0?a.find(l=>l.source?.path===r):a.find(l=>l.id===(B?.entryId??o.default))??(a.length===1?a[0]:void 0);if(!i)return{ok:!1,error:r!==void 0?`No declared Model document names ${r}.`:`Choose a Model document before starting Blender. Available: ${a.map(l=>l.id).join(", ")||"(none)"}.`};const c=i.id;if(r=i.source?.path,!await e.workspace.open({kind:"document",id:c}))return{ok:!1,error:`blender-start could not open the Blender Model document ${c}: nothing in this editor opens that document (the Model document ships with @volter/editor-blender).`}}const s=M();switch(t.type){case"blender-start":{const o=r!==void 0?r:B?.blend??Sn;return{ok:!0,data:{...await s.start(n,o)}}}case"blender-execute":return{ok:!0,data:{result:(await bn(k(t,"code"))).text}};case"blender-scene-info":return{ok:!0,data:{result:await s.sceneInfo()}};case"blender-object-info":return{ok:!0,data:{result:await s.objectInfo(k(t,"name"))}};case"blender-rna":{const o=typeof t.names=="number"?t.names:void 0;return{ok:!0,data:{result:await s.rna(k(t,"path"),o)}}}case"blender-rna-context":{const o=typeof t.object=="string"?t.object:void 0,a=typeof t.collection=="string"?t.collection:void 0;return{ok:!0,data:{result:await s.rnaContext(o,a)}}}case"blender-rna-set":{const o=typeof t.index=="number"?t.index:void 0;return{ok:!0,data:{result:await yn(k(t,"path"),k(t,"property"),t.value,o)}}}case"blender-outliner":{const o=Array.isArray(t.selected)?t.selected.filter(a=>typeof a=="string"):void 0;return{ok:!0,data:{result:await s.outliner(o)}}}case"blender-node-tree":return{ok:!0,data:{result:await s.nodeTree({...typeof t.path=="string"?{path:t.path}:{},...typeof t.material=="string"?{material:t.material}:{}})}};case"blender-uv-layout":return{ok:!0,data:{result:await s.uvLayout({...typeof t.object=="string"?{object:t.object}:{},...typeof t.uvLayer=="string"?{uvLayer:t.uvLayer}:{}})}};case"blender-rig":return{ok:!0,data:{result:await s.rig({...typeof t.object=="string"?{object:t.object}:{}})}};case"blender-action-clip":return{ok:!0,data:{result:await s.actionClip({...typeof t.object=="string"?{object:t.object}:{},...typeof t.bake=="boolean"?{bake:t.bake}:{}})}};case"blender-node-view":{const o=typeof t.action=="string"?t.action:"state";return{ok:!0,data:{result:vn.verbs.some(i=>i.id===o)?yt("blender-node-view",o,t):ht(t)}}}case"blender-outliner-set":return{ok:!0,data:{result:await dt(k(t,"path"),k(t,"column"),t.value!==!1)}};case"blender-screenshot-view":{const o=typeof t.maxSize=="number"?t.maxSize:1e3,a={kind:"document",id:B?.entryId??"blender:runtime"};return{ok:!0,data:{...await s.screenshotView(o),document:a}}}case"blender-read-file":{const o=await s.readFile(k(t,"path")),a=k(t,"transferId"),i=await fetch(`/__editor/blender-file?id=${encodeURIComponent(a)}`,{method:"POST",headers:{"content-type":"application/octet-stream"},body:new Blob([o])});return i.ok?{ok:!0,data:{bytes:o.length}}:{ok:!1,error:`Transfer ${a} was refused: ${i.status}`}}case"blender-write-file":{const o=atob(k(t,"base64")),a=Uint8Array.from(o,i=>i.charCodeAt(0));return await s.writeFile(k(t,"path"),a),{ok:!0,data:{written:a.length}}}case"blender-list-files":{const o=await s.listFiles(k(t,"path")),a=s.presented;return{ok:!0,data:{entries:o,...a?{session:a.session,revision:a.revision}:{},...await kn(s)}}}}return{ok:!1,error:`Unknown Blender command ${t.type}`}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}export{Xn as A,On as B,Nn as C,bn as D,je as E,Pn as F,Vn as G,Hn as H,vn as N,Dn as a,Wn as b,V as c,me as d,Zn as e,Un as f,Qn as g,er as h,Jn as i,Kn as j,Ln as k,ct as l,A as m,Rn as n,D as o,qn as p,zn as q,R as r,Gn as s,yn as t,$n as u,Tn as v,dn as w,sn as x,_n as y,Yn as z};
|