@multiplatform.one/node-graph 7.7.2
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/LICENSE +201 -0
- package/README.md +80 -0
- package/css/graph.css +171 -0
- package/demo.ts +14 -0
- package/dist/cjs/NodeGraph.cjs +34 -0
- package/dist/cjs/NodeGraph.native.js +37 -0
- package/dist/cjs/NodeGraph.native.js.map +1 -0
- package/dist/cjs/bench/frameSampler.cjs +290 -0
- package/dist/cjs/bench/frameSampler.native.js +409 -0
- package/dist/cjs/bench/frameSampler.native.js.map +1 -0
- package/dist/cjs/bench/generateGraph.cjs +125 -0
- package/dist/cjs/bench/generateGraph.native.js +128 -0
- package/dist/cjs/bench/generateGraph.native.js.map +1 -0
- package/dist/cjs/diagnostics/GraphDiagnostics.cjs +154 -0
- package/dist/cjs/diagnostics/GraphDiagnostics.native.js +166 -0
- package/dist/cjs/diagnostics/GraphDiagnostics.native.js.map +1 -0
- package/dist/cjs/diagnostics/LiveGraphDiagnostics.cjs +101 -0
- package/dist/cjs/diagnostics/LiveGraphDiagnostics.native.js +106 -0
- package/dist/cjs/diagnostics/LiveGraphDiagnostics.native.js.map +1 -0
- package/dist/cjs/diagnostics/fromWire.cjs +48 -0
- package/dist/cjs/diagnostics/fromWire.native.js +51 -0
- package/dist/cjs/diagnostics/fromWire.native.js.map +1 -0
- package/dist/cjs/diagnostics/lastError.cjs +67 -0
- package/dist/cjs/diagnostics/lastError.native.js +75 -0
- package/dist/cjs/diagnostics/lastError.native.js.map +1 -0
- package/dist/cjs/diagnostics/types.cjs +18 -0
- package/dist/cjs/diagnostics/types.native.js +21 -0
- package/dist/cjs/diagnostics/types.native.js.map +1 -0
- package/dist/cjs/diagnostics/useGraphDiagnostics.cjs +69 -0
- package/dist/cjs/diagnostics/useGraphDiagnostics.native.js +75 -0
- package/dist/cjs/diagnostics/useGraphDiagnostics.native.js.map +1 -0
- package/dist/cjs/dom/GraphDomLayout.cjs +37 -0
- package/dist/cjs/dom/GraphDomLayout.native.js +40 -0
- package/dist/cjs/dom/GraphDomLayout.native.js.map +1 -0
- package/dist/cjs/dom/boot.cjs +100 -0
- package/dist/cjs/dom/boot.native.js +111 -0
- package/dist/cjs/dom/boot.native.js.map +1 -0
- package/dist/cjs/dom/wire.cjs +215 -0
- package/dist/cjs/dom/wire.native.js +274 -0
- package/dist/cjs/dom/wire.native.js.map +1 -0
- package/dist/cjs/edges/GraphEdge.cjs +169 -0
- package/dist/cjs/edges/GraphEdge.native.js +178 -0
- package/dist/cjs/edges/GraphEdge.native.js.map +1 -0
- package/dist/cjs/edges/edgeKinds.cjs +51 -0
- package/dist/cjs/edges/edgeKinds.native.js +54 -0
- package/dist/cjs/edges/edgeKinds.native.js.map +1 -0
- package/dist/cjs/edges/edgeStyle.cjs +94 -0
- package/dist/cjs/edges/edgeStyle.native.js +99 -0
- package/dist/cjs/edges/edgeStyle.native.js.map +1 -0
- package/dist/cjs/index.cjs +197 -0
- package/dist/cjs/index.native.js +200 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/interaction/lassoIntercept.cjs +54 -0
- package/dist/cjs/interaction/lassoIntercept.native.js +57 -0
- package/dist/cjs/interaction/lassoIntercept.native.js.map +1 -0
- package/dist/cjs/interaction/legalTargets.cjs +75 -0
- package/dist/cjs/interaction/legalTargets.native.js +118 -0
- package/dist/cjs/interaction/legalTargets.native.js.map +1 -0
- package/dist/cjs/interaction/snapAlignment.cjs +165 -0
- package/dist/cjs/interaction/snapAlignment.native.js +245 -0
- package/dist/cjs/interaction/snapAlignment.native.js.map +1 -0
- package/dist/cjs/interaction/snapChanges.cjs +214 -0
- package/dist/cjs/interaction/snapChanges.native.js +269 -0
- package/dist/cjs/interaction/snapChanges.native.js.map +1 -0
- package/dist/cjs/interaction/spatialHash.cjs +97 -0
- package/dist/cjs/interaction/spatialHash.native.js +165 -0
- package/dist/cjs/interaction/spatialHash.native.js.map +1 -0
- package/dist/cjs/interaction/useLassoSelect.cjs +259 -0
- package/dist/cjs/interaction/useLassoSelect.native.js +287 -0
- package/dist/cjs/interaction/useLassoSelect.native.js.map +1 -0
- package/dist/cjs/knobs/KnobEnvelopeProvider.cjs +77 -0
- package/dist/cjs/knobs/KnobEnvelopeProvider.native.js +85 -0
- package/dist/cjs/knobs/KnobEnvelopeProvider.native.js.map +1 -0
- package/dist/cjs/knobs/envelope.cjs +59 -0
- package/dist/cjs/knobs/envelope.native.js +78 -0
- package/dist/cjs/knobs/envelope.native.js.map +1 -0
- package/dist/cjs/knobs/graphKnobs.cjs +39 -0
- package/dist/cjs/knobs/graphKnobs.native.js +43 -0
- package/dist/cjs/knobs/graphKnobs.native.js.map +1 -0
- package/dist/cjs/knobs/useKnobEnvelope.cjs +108 -0
- package/dist/cjs/knobs/useKnobEnvelope.native.js +140 -0
- package/dist/cjs/knobs/useKnobEnvelope.native.js.map +1 -0
- package/dist/cjs/layout/dagre.cjs +125 -0
- package/dist/cjs/layout/dagre.native.js +259 -0
- package/dist/cjs/layout/dagre.native.js.map +1 -0
- package/dist/cjs/layout/layout.cjs +84 -0
- package/dist/cjs/layout/layout.native.js +112 -0
- package/dist/cjs/layout/layout.native.js.map +1 -0
- package/dist/cjs/layout/runner.cjs +194 -0
- package/dist/cjs/layout/runner.native.js +247 -0
- package/dist/cjs/layout/runner.native.js.map +1 -0
- package/dist/cjs/layout/structuredCloneShim.cjs +80 -0
- package/dist/cjs/layout/structuredCloneShim.native.js +160 -0
- package/dist/cjs/layout/structuredCloneShim.native.js.map +1 -0
- package/dist/cjs/layout/types.cjs +18 -0
- package/dist/cjs/layout/types.native.js +21 -0
- package/dist/cjs/layout/types.native.js.map +1 -0
- package/dist/cjs/layout/worker.entry.cjs +58 -0
- package/dist/cjs/layout/worker.entry.native.js +75 -0
- package/dist/cjs/layout/worker.entry.native.js.map +1 -0
- package/dist/cjs/layout/worker.generated.cjs +32 -0
- package/dist/cjs/layout/worker.generated.native.js +35 -0
- package/dist/cjs/layout/worker.generated.native.js.map +1 -0
- package/dist/cjs/model/commands.cjs +235 -0
- package/dist/cjs/model/commands.native.js +317 -0
- package/dist/cjs/model/commands.native.js.map +1 -0
- package/dist/cjs/model/connect.cjs +159 -0
- package/dist/cjs/model/connect.native.js +239 -0
- package/dist/cjs/model/connect.native.js.map +1 -0
- package/dist/cjs/model/document.cjs +18 -0
- package/dist/cjs/model/document.native.js +21 -0
- package/dist/cjs/model/document.native.js.map +1 -0
- package/dist/cjs/model/history.cjs +121 -0
- package/dist/cjs/model/history.native.js +178 -0
- package/dist/cjs/model/history.native.js.map +1 -0
- package/dist/cjs/model/index.cjs +60 -0
- package/dist/cjs/model/index.native.js +63 -0
- package/dist/cjs/model/index.native.js.map +1 -0
- package/dist/cjs/model/schema.cjs +63 -0
- package/dist/cjs/model/schema.native.js +68 -0
- package/dist/cjs/model/schema.native.js.map +1 -0
- package/dist/cjs/model/select.cjs +78 -0
- package/dist/cjs/model/select.native.js +107 -0
- package/dist/cjs/model/select.native.js.map +1 -0
- package/dist/cjs/model/serialize.cjs +332 -0
- package/dist/cjs/model/serialize.native.js +374 -0
- package/dist/cjs/model/serialize.native.js.map +1 -0
- package/dist/cjs/native/DomOnlyStory.cjs +60 -0
- package/dist/cjs/native/DomOnlyStory.native.js +66 -0
- package/dist/cjs/native/DomOnlyStory.native.js.map +1 -0
- package/dist/cjs/native/GraphToolbar.cjs +101 -0
- package/dist/cjs/native/GraphToolbar.native.js +107 -0
- package/dist/cjs/native/GraphToolbar.native.js.map +1 -0
- package/dist/cjs/native/domEntryRegistry.cjs +39 -0
- package/dist/cjs/native/domEntryRegistry.native.js +42 -0
- package/dist/cjs/native/domEntryRegistry.native.js.map +1 -0
- package/dist/cjs/native/graphChildren.cjs +45 -0
- package/dist/cjs/native/graphChildren.native.js +50 -0
- package/dist/cjs/native/graphChildren.native.js.map +1 -0
- package/dist/cjs/nodes/GraphNode.cjs +161 -0
- package/dist/cjs/nodes/GraphNode.native.js +206 -0
- package/dist/cjs/nodes/GraphNode.native.js.map +1 -0
- package/dist/cjs/nodes/GraphPort.cjs +104 -0
- package/dist/cjs/nodes/GraphPort.native.js +108 -0
- package/dist/cjs/nodes/GraphPort.native.js.map +1 -0
- package/dist/cjs/nodes/handleGeometry.cjs +98 -0
- package/dist/cjs/nodes/handleGeometry.native.js +104 -0
- package/dist/cjs/nodes/handleGeometry.native.js.map +1 -0
- package/dist/cjs/nodes/lod.cjs +41 -0
- package/dist/cjs/nodes/lod.native.js +45 -0
- package/dist/cjs/nodes/lod.native.js.map +1 -0
- package/dist/cjs/nodes/nodeMeasure.cjs +108 -0
- package/dist/cjs/nodes/nodeMeasure.native.js +134 -0
- package/dist/cjs/nodes/nodeMeasure.native.js.map +1 -0
- package/dist/cjs/nodes/overviewNode.cjs +74 -0
- package/dist/cjs/nodes/overviewNode.native.js +81 -0
- package/dist/cjs/nodes/overviewNode.native.js.map +1 -0
- package/dist/cjs/react-flow/ConnectionPuck.cjs +122 -0
- package/dist/cjs/react-flow/ConnectionPuck.native.js +143 -0
- package/dist/cjs/react-flow/ConnectionPuck.native.js.map +1 -0
- package/dist/cjs/react-flow/GraphActions.cjs +47 -0
- package/dist/cjs/react-flow/GraphActions.native.js +51 -0
- package/dist/cjs/react-flow/GraphActions.native.js.map +1 -0
- package/dist/cjs/react-flow/GraphCommandBridge.cjs +238 -0
- package/dist/cjs/react-flow/GraphCommandBridge.native.js +272 -0
- package/dist/cjs/react-flow/GraphCommandBridge.native.js.map +1 -0
- package/dist/cjs/react-flow/GraphNodeHost.cjs +77 -0
- package/dist/cjs/react-flow/GraphNodeHost.native.js +89 -0
- package/dist/cjs/react-flow/GraphNodeHost.native.js.map +1 -0
- package/dist/cjs/react-flow/GraphPaintProbe.cjs +60 -0
- package/dist/cjs/react-flow/GraphPaintProbe.native.js +65 -0
- package/dist/cjs/react-flow/GraphPaintProbe.native.js.map +1 -0
- package/dist/cjs/react-flow/GraphZoomVar.cjs +42 -0
- package/dist/cjs/react-flow/GraphZoomVar.native.js +48 -0
- package/dist/cjs/react-flow/GraphZoomVar.native.js.map +1 -0
- package/dist/cjs/react-flow/LassoOverlay.cjs +47 -0
- package/dist/cjs/react-flow/LassoOverlay.native.js +51 -0
- package/dist/cjs/react-flow/LassoOverlay.native.js.map +1 -0
- package/dist/cjs/react-flow/NodeGraphWeb.cjs +386 -0
- package/dist/cjs/react-flow/NodeGraphWeb.native.js +515 -0
- package/dist/cjs/react-flow/NodeGraphWeb.native.js.map +1 -0
- package/dist/cjs/react-flow/SnapGuides.cjs +89 -0
- package/dist/cjs/react-flow/SnapGuides.native.js +114 -0
- package/dist/cjs/react-flow/SnapGuides.native.js.map +1 -0
- package/dist/cjs/react-flow/demoControlBody.cjs +93 -0
- package/dist/cjs/react-flow/demoControlBody.native.js +104 -0
- package/dist/cjs/react-flow/demoControlBody.native.js.map +1 -0
- package/dist/cjs/react-flow/demoNodeBody.cjs +121 -0
- package/dist/cjs/react-flow/demoNodeBody.native.js +131 -0
- package/dist/cjs/react-flow/demoNodeBody.native.js.map +1 -0
- package/dist/cjs/react-flow/fixtures.cjs +215 -0
- package/dist/cjs/react-flow/fixtures.native.js +225 -0
- package/dist/cjs/react-flow/fixtures.native.js.map +1 -0
- package/dist/cjs/react-flow/flowAdapter.cjs +121 -0
- package/dist/cjs/react-flow/flowAdapter.native.js +133 -0
- package/dist/cjs/react-flow/flowAdapter.native.js.map +1 -0
- package/dist/cjs/react-flow/graphHandle.cjs +28 -0
- package/dist/cjs/react-flow/graphHandle.native.js +31 -0
- package/dist/cjs/react-flow/graphHandle.native.js.map +1 -0
- package/dist/cjs/react-flow/nodeCensus.cjs +56 -0
- package/dist/cjs/react-flow/nodeCensus.native.js +80 -0
- package/dist/cjs/react-flow/nodeCensus.native.js.map +1 -0
- package/dist/cjs/react-flow/useGraphController.cjs +297 -0
- package/dist/cjs/react-flow/useGraphController.native.js +393 -0
- package/dist/cjs/react-flow/useGraphController.native.js.map +1 -0
- package/dist/cjs/react-flow/xy.cjs +60 -0
- package/dist/cjs/react-flow/xy.native.js +63 -0
- package/dist/cjs/react-flow/xy.native.js.map +1 -0
- package/dist/cjs/theme/GraphFaces.cjs +114 -0
- package/dist/cjs/theme/GraphFaces.native.js +181 -0
- package/dist/cjs/theme/GraphFaces.native.js.map +1 -0
- package/dist/cjs/theme/GraphVarsStyle.cjs +88 -0
- package/dist/cjs/theme/GraphVarsStyle.native.js +100 -0
- package/dist/cjs/theme/GraphVarsStyle.native.js.map +1 -0
- package/dist/cjs/theme/faces.cjs +121 -0
- package/dist/cjs/theme/faces.generated.cjs +48 -0
- package/dist/cjs/theme/faces.generated.native.js +51 -0
- package/dist/cjs/theme/faces.generated.native.js.map +1 -0
- package/dist/cjs/theme/faces.native.js +133 -0
- package/dist/cjs/theme/faces.native.js.map +1 -0
- package/dist/cjs/theme/graphVars.cjs +318 -0
- package/dist/cjs/theme/graphVars.native.js +351 -0
- package/dist/cjs/theme/graphVars.native.js.map +1 -0
- package/dist/esm/NodeGraph.mjs +9 -0
- package/dist/esm/NodeGraph.mjs.map +1 -0
- package/dist/esm/NodeGraph.native.js +9 -0
- package/dist/esm/NodeGraph.native.js.map +1 -0
- package/dist/esm/bench/frameSampler.mjs +255 -0
- package/dist/esm/bench/frameSampler.mjs.map +1 -0
- package/dist/esm/bench/frameSampler.native.js +371 -0
- package/dist/esm/bench/frameSampler.native.js.map +1 -0
- package/dist/esm/bench/generateGraph.mjs +99 -0
- package/dist/esm/bench/generateGraph.mjs.map +1 -0
- package/dist/esm/bench/generateGraph.native.js +99 -0
- package/dist/esm/bench/generateGraph.native.js.map +1 -0
- package/dist/esm/diagnostics/GraphDiagnostics.mjs +128 -0
- package/dist/esm/diagnostics/GraphDiagnostics.mjs.map +1 -0
- package/dist/esm/diagnostics/GraphDiagnostics.native.js +137 -0
- package/dist/esm/diagnostics/GraphDiagnostics.native.js.map +1 -0
- package/dist/esm/diagnostics/LiveGraphDiagnostics.mjs +76 -0
- package/dist/esm/diagnostics/LiveGraphDiagnostics.mjs.map +1 -0
- package/dist/esm/diagnostics/LiveGraphDiagnostics.native.js +78 -0
- package/dist/esm/diagnostics/LiveGraphDiagnostics.native.js.map +1 -0
- package/dist/esm/diagnostics/fromWire.mjs +23 -0
- package/dist/esm/diagnostics/fromWire.mjs.map +1 -0
- package/dist/esm/diagnostics/fromWire.native.js +23 -0
- package/dist/esm/diagnostics/fromWire.native.js.map +1 -0
- package/dist/esm/diagnostics/lastError.mjs +39 -0
- package/dist/esm/diagnostics/lastError.mjs.map +1 -0
- package/dist/esm/diagnostics/lastError.native.js +44 -0
- package/dist/esm/diagnostics/lastError.native.js.map +1 -0
- package/dist/esm/diagnostics/types.mjs +2 -0
- package/dist/esm/diagnostics/types.mjs.map +1 -0
- package/dist/esm/diagnostics/types.native.js +2 -0
- package/dist/esm/diagnostics/types.native.js.map +1 -0
- package/dist/esm/diagnostics/useGraphDiagnostics.mjs +44 -0
- package/dist/esm/diagnostics/useGraphDiagnostics.mjs.map +1 -0
- package/dist/esm/diagnostics/useGraphDiagnostics.native.js +47 -0
- package/dist/esm/diagnostics/useGraphDiagnostics.native.js.map +1 -0
- package/dist/esm/dom/GraphDomLayout.mjs +11 -0
- package/dist/esm/dom/GraphDomLayout.mjs.map +1 -0
- package/dist/esm/dom/GraphDomLayout.native.js +11 -0
- package/dist/esm/dom/GraphDomLayout.native.js.map +1 -0
- package/dist/esm/dom/boot.mjs +67 -0
- package/dist/esm/dom/boot.mjs.map +1 -0
- package/dist/esm/dom/boot.native.js +75 -0
- package/dist/esm/dom/boot.native.js.map +1 -0
- package/dist/esm/dom/wire.mjs +183 -0
- package/dist/esm/dom/wire.mjs.map +1 -0
- package/dist/esm/dom/wire.native.js +239 -0
- package/dist/esm/dom/wire.native.js.map +1 -0
- package/dist/esm/edges/GraphEdge.mjs +139 -0
- package/dist/esm/edges/GraphEdge.mjs.map +1 -0
- package/dist/esm/edges/GraphEdge.native.js +145 -0
- package/dist/esm/edges/GraphEdge.native.js.map +1 -0
- package/dist/esm/edges/edgeKinds.mjs +25 -0
- package/dist/esm/edges/edgeKinds.mjs.map +1 -0
- package/dist/esm/edges/edgeKinds.native.js +25 -0
- package/dist/esm/edges/edgeKinds.native.js.map +1 -0
- package/dist/esm/edges/edgeStyle.mjs +63 -0
- package/dist/esm/edges/edgeStyle.mjs.map +1 -0
- package/dist/esm/edges/edgeStyle.native.js +65 -0
- package/dist/esm/edges/edgeStyle.native.js.map +1 -0
- package/dist/esm/index.mjs +50 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +50 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/interaction/lassoIntercept.mjs +29 -0
- package/dist/esm/interaction/lassoIntercept.mjs.map +1 -0
- package/dist/esm/interaction/lassoIntercept.native.js +29 -0
- package/dist/esm/interaction/lassoIntercept.native.js.map +1 -0
- package/dist/esm/interaction/legalTargets.mjs +48 -0
- package/dist/esm/interaction/legalTargets.mjs.map +1 -0
- package/dist/esm/interaction/legalTargets.native.js +88 -0
- package/dist/esm/interaction/legalTargets.native.js.map +1 -0
- package/dist/esm/interaction/snapAlignment.mjs +137 -0
- package/dist/esm/interaction/snapAlignment.mjs.map +1 -0
- package/dist/esm/interaction/snapAlignment.native.js +214 -0
- package/dist/esm/interaction/snapAlignment.native.js.map +1 -0
- package/dist/esm/interaction/snapChanges.mjs +184 -0
- package/dist/esm/interaction/snapChanges.mjs.map +1 -0
- package/dist/esm/interaction/snapChanges.native.js +236 -0
- package/dist/esm/interaction/snapChanges.native.js.map +1 -0
- package/dist/esm/interaction/spatialHash.mjs +71 -0
- package/dist/esm/interaction/spatialHash.mjs.map +1 -0
- package/dist/esm/interaction/spatialHash.native.js +136 -0
- package/dist/esm/interaction/spatialHash.native.js.map +1 -0
- package/dist/esm/interaction/useLassoSelect.mjs +231 -0
- package/dist/esm/interaction/useLassoSelect.mjs.map +1 -0
- package/dist/esm/interaction/useLassoSelect.native.js +256 -0
- package/dist/esm/interaction/useLassoSelect.native.js.map +1 -0
- package/dist/esm/knobs/KnobEnvelopeProvider.mjs +51 -0
- package/dist/esm/knobs/KnobEnvelopeProvider.mjs.map +1 -0
- package/dist/esm/knobs/KnobEnvelopeProvider.native.js +56 -0
- package/dist/esm/knobs/KnobEnvelopeProvider.native.js.map +1 -0
- package/dist/esm/knobs/envelope.mjs +29 -0
- package/dist/esm/knobs/envelope.mjs.map +1 -0
- package/dist/esm/knobs/envelope.native.js +45 -0
- package/dist/esm/knobs/envelope.native.js.map +1 -0
- package/dist/esm/knobs/graphKnobs.mjs +14 -0
- package/dist/esm/knobs/graphKnobs.mjs.map +1 -0
- package/dist/esm/knobs/graphKnobs.native.js +15 -0
- package/dist/esm/knobs/graphKnobs.native.js.map +1 -0
- package/dist/esm/knobs/useKnobEnvelope.mjs +83 -0
- package/dist/esm/knobs/useKnobEnvelope.mjs.map +1 -0
- package/dist/esm/knobs/useKnobEnvelope.native.js +112 -0
- package/dist/esm/knobs/useKnobEnvelope.native.js.map +1 -0
- package/dist/esm/layout/dagre.mjs +99 -0
- package/dist/esm/layout/dagre.mjs.map +1 -0
- package/dist/esm/layout/dagre.native.js +230 -0
- package/dist/esm/layout/dagre.native.js.map +1 -0
- package/dist/esm/layout/layout.mjs +57 -0
- package/dist/esm/layout/layout.mjs.map +1 -0
- package/dist/esm/layout/layout.native.js +82 -0
- package/dist/esm/layout/layout.native.js.map +1 -0
- package/dist/esm/layout/runner.mjs +164 -0
- package/dist/esm/layout/runner.mjs.map +1 -0
- package/dist/esm/layout/runner.native.js +214 -0
- package/dist/esm/layout/runner.native.js.map +1 -0
- package/dist/esm/layout/structuredCloneShim.mjs +54 -0
- package/dist/esm/layout/structuredCloneShim.mjs.map +1 -0
- package/dist/esm/layout/structuredCloneShim.native.js +131 -0
- package/dist/esm/layout/structuredCloneShim.native.js.map +1 -0
- package/dist/esm/layout/types.mjs +2 -0
- package/dist/esm/layout/types.mjs.map +1 -0
- package/dist/esm/layout/types.native.js +2 -0
- package/dist/esm/layout/types.native.js.map +1 -0
- package/dist/esm/layout/worker.entry.mjs +33 -0
- package/dist/esm/layout/worker.entry.mjs.map +1 -0
- package/dist/esm/layout/worker.entry.native.js +47 -0
- package/dist/esm/layout/worker.entry.native.js.map +1 -0
- package/dist/esm/layout/worker.generated.mjs +5 -0
- package/dist/esm/layout/worker.generated.mjs.map +1 -0
- package/dist/esm/layout/worker.generated.native.js +5 -0
- package/dist/esm/layout/worker.generated.native.js.map +1 -0
- package/dist/esm/model/commands.mjs +209 -0
- package/dist/esm/model/commands.mjs.map +1 -0
- package/dist/esm/model/commands.native.js +288 -0
- package/dist/esm/model/commands.native.js.map +1 -0
- package/dist/esm/model/connect.mjs +124 -0
- package/dist/esm/model/connect.mjs.map +1 -0
- package/dist/esm/model/connect.native.js +201 -0
- package/dist/esm/model/connect.native.js.map +1 -0
- package/dist/esm/model/document.mjs +2 -0
- package/dist/esm/model/document.mjs.map +1 -0
- package/dist/esm/model/document.native.js +2 -0
- package/dist/esm/model/document.native.js.map +1 -0
- package/dist/esm/model/history.mjs +96 -0
- package/dist/esm/model/history.mjs.map +1 -0
- package/dist/esm/model/history.native.js +150 -0
- package/dist/esm/model/history.native.js.map +1 -0
- package/dist/esm/model/index.mjs +8 -0
- package/dist/esm/model/index.mjs.map +1 -0
- package/dist/esm/model/index.native.js +8 -0
- package/dist/esm/model/index.native.js.map +1 -0
- package/dist/esm/model/schema.mjs +32 -0
- package/dist/esm/model/schema.mjs.map +1 -0
- package/dist/esm/model/schema.native.js +34 -0
- package/dist/esm/model/schema.native.js.map +1 -0
- package/dist/esm/model/select.mjs +49 -0
- package/dist/esm/model/select.mjs.map +1 -0
- package/dist/esm/model/select.native.js +75 -0
- package/dist/esm/model/select.native.js.map +1 -0
- package/dist/esm/model/serialize.mjs +306 -0
- package/dist/esm/model/serialize.mjs.map +1 -0
- package/dist/esm/model/serialize.native.js +345 -0
- package/dist/esm/model/serialize.native.js.map +1 -0
- package/dist/esm/native/DomOnlyStory.mjs +33 -0
- package/dist/esm/native/DomOnlyStory.mjs.map +1 -0
- package/dist/esm/native/DomOnlyStory.native.js +36 -0
- package/dist/esm/native/DomOnlyStory.native.js.map +1 -0
- package/dist/esm/native/GraphToolbar.mjs +76 -0
- package/dist/esm/native/GraphToolbar.mjs.map +1 -0
- package/dist/esm/native/GraphToolbar.native.js +79 -0
- package/dist/esm/native/GraphToolbar.native.js.map +1 -0
- package/dist/esm/native/domEntryRegistry.mjs +12 -0
- package/dist/esm/native/domEntryRegistry.mjs.map +1 -0
- package/dist/esm/native/domEntryRegistry.native.js +12 -0
- package/dist/esm/native/domEntryRegistry.native.js.map +1 -0
- package/dist/esm/native/graphChildren.mjs +18 -0
- package/dist/esm/native/graphChildren.mjs.map +1 -0
- package/dist/esm/native/graphChildren.native.js +20 -0
- package/dist/esm/native/graphChildren.native.js.map +1 -0
- package/dist/esm/nodes/GraphNode.mjs +136 -0
- package/dist/esm/nodes/GraphNode.mjs.map +1 -0
- package/dist/esm/nodes/GraphNode.native.js +178 -0
- package/dist/esm/nodes/GraphNode.native.js.map +1 -0
- package/dist/esm/nodes/GraphPort.mjs +79 -0
- package/dist/esm/nodes/GraphPort.mjs.map +1 -0
- package/dist/esm/nodes/GraphPort.native.js +80 -0
- package/dist/esm/nodes/GraphPort.native.js.map +1 -0
- package/dist/esm/nodes/handleGeometry.mjs +65 -0
- package/dist/esm/nodes/handleGeometry.mjs.map +1 -0
- package/dist/esm/nodes/handleGeometry.native.js +68 -0
- package/dist/esm/nodes/handleGeometry.native.js.map +1 -0
- package/dist/esm/nodes/lod.mjs +13 -0
- package/dist/esm/nodes/lod.mjs.map +1 -0
- package/dist/esm/nodes/lod.native.js +14 -0
- package/dist/esm/nodes/lod.native.js.map +1 -0
- package/dist/esm/nodes/nodeMeasure.mjs +72 -0
- package/dist/esm/nodes/nodeMeasure.mjs.map +1 -0
- package/dist/esm/nodes/nodeMeasure.native.js +95 -0
- package/dist/esm/nodes/nodeMeasure.native.js.map +1 -0
- package/dist/esm/nodes/overviewNode.mjs +49 -0
- package/dist/esm/nodes/overviewNode.mjs.map +1 -0
- package/dist/esm/nodes/overviewNode.native.js +53 -0
- package/dist/esm/nodes/overviewNode.native.js.map +1 -0
- package/dist/esm/react-flow/ConnectionPuck.mjs +96 -0
- package/dist/esm/react-flow/ConnectionPuck.mjs.map +1 -0
- package/dist/esm/react-flow/ConnectionPuck.native.js +114 -0
- package/dist/esm/react-flow/ConnectionPuck.native.js.map +1 -0
- package/dist/esm/react-flow/GraphActions.mjs +21 -0
- package/dist/esm/react-flow/GraphActions.mjs.map +1 -0
- package/dist/esm/react-flow/GraphActions.native.js +22 -0
- package/dist/esm/react-flow/GraphActions.native.js.map +1 -0
- package/dist/esm/react-flow/GraphCommandBridge.mjs +213 -0
- package/dist/esm/react-flow/GraphCommandBridge.mjs.map +1 -0
- package/dist/esm/react-flow/GraphCommandBridge.native.js +244 -0
- package/dist/esm/react-flow/GraphCommandBridge.native.js.map +1 -0
- package/dist/esm/react-flow/GraphNodeHost.mjs +50 -0
- package/dist/esm/react-flow/GraphNodeHost.mjs.map +1 -0
- package/dist/esm/react-flow/GraphNodeHost.native.js +59 -0
- package/dist/esm/react-flow/GraphNodeHost.native.js.map +1 -0
- package/dist/esm/react-flow/GraphPaintProbe.mjs +35 -0
- package/dist/esm/react-flow/GraphPaintProbe.mjs.map +1 -0
- package/dist/esm/react-flow/GraphPaintProbe.native.js +37 -0
- package/dist/esm/react-flow/GraphPaintProbe.native.js.map +1 -0
- package/dist/esm/react-flow/GraphZoomVar.mjs +16 -0
- package/dist/esm/react-flow/GraphZoomVar.mjs.map +1 -0
- package/dist/esm/react-flow/GraphZoomVar.native.js +19 -0
- package/dist/esm/react-flow/GraphZoomVar.native.js.map +1 -0
- package/dist/esm/react-flow/LassoOverlay.mjs +22 -0
- package/dist/esm/react-flow/LassoOverlay.mjs.map +1 -0
- package/dist/esm/react-flow/LassoOverlay.native.js +23 -0
- package/dist/esm/react-flow/LassoOverlay.native.js.map +1 -0
- package/dist/esm/react-flow/NodeGraphWeb.mjs +359 -0
- package/dist/esm/react-flow/NodeGraphWeb.mjs.map +1 -0
- package/dist/esm/react-flow/NodeGraphWeb.native.js +485 -0
- package/dist/esm/react-flow/NodeGraphWeb.native.js.map +1 -0
- package/dist/esm/react-flow/SnapGuides.mjs +60 -0
- package/dist/esm/react-flow/SnapGuides.mjs.map +1 -0
- package/dist/esm/react-flow/SnapGuides.native.js +82 -0
- package/dist/esm/react-flow/SnapGuides.native.js.map +1 -0
- package/dist/esm/react-flow/demoControlBody.mjs +67 -0
- package/dist/esm/react-flow/demoControlBody.mjs.map +1 -0
- package/dist/esm/react-flow/demoControlBody.native.js +75 -0
- package/dist/esm/react-flow/demoControlBody.native.js.map +1 -0
- package/dist/esm/react-flow/demoNodeBody.mjs +91 -0
- package/dist/esm/react-flow/demoNodeBody.mjs.map +1 -0
- package/dist/esm/react-flow/demoNodeBody.native.js +98 -0
- package/dist/esm/react-flow/demoNodeBody.native.js.map +1 -0
- package/dist/esm/react-flow/fixtures.mjs +185 -0
- package/dist/esm/react-flow/fixtures.mjs.map +1 -0
- package/dist/esm/react-flow/fixtures.native.js +192 -0
- package/dist/esm/react-flow/fixtures.native.js.map +1 -0
- package/dist/esm/react-flow/flowAdapter.mjs +94 -0
- package/dist/esm/react-flow/flowAdapter.mjs.map +1 -0
- package/dist/esm/react-flow/flowAdapter.native.js +103 -0
- package/dist/esm/react-flow/flowAdapter.native.js.map +1 -0
- package/dist/esm/react-flow/graphHandle.mjs +3 -0
- package/dist/esm/react-flow/graphHandle.mjs.map +1 -0
- package/dist/esm/react-flow/graphHandle.native.js +3 -0
- package/dist/esm/react-flow/graphHandle.native.js.map +1 -0
- package/dist/esm/react-flow/nodeCensus.mjs +28 -0
- package/dist/esm/react-flow/nodeCensus.mjs.map +1 -0
- package/dist/esm/react-flow/nodeCensus.native.js +49 -0
- package/dist/esm/react-flow/nodeCensus.native.js.map +1 -0
- package/dist/esm/react-flow/useGraphController.mjs +269 -0
- package/dist/esm/react-flow/useGraphController.mjs.map +1 -0
- package/dist/esm/react-flow/useGraphController.native.js +362 -0
- package/dist/esm/react-flow/useGraphController.native.js.map +1 -0
- package/dist/esm/react-flow/xy.mjs +8 -0
- package/dist/esm/react-flow/xy.mjs.map +1 -0
- package/dist/esm/react-flow/xy.native.js +8 -0
- package/dist/esm/react-flow/xy.native.js.map +1 -0
- package/dist/esm/theme/GraphFaces.mjs +88 -0
- package/dist/esm/theme/GraphFaces.mjs.map +1 -0
- package/dist/esm/theme/GraphFaces.native.js +152 -0
- package/dist/esm/theme/GraphFaces.native.js.map +1 -0
- package/dist/esm/theme/GraphVarsStyle.mjs +59 -0
- package/dist/esm/theme/GraphVarsStyle.mjs.map +1 -0
- package/dist/esm/theme/GraphVarsStyle.native.js +68 -0
- package/dist/esm/theme/GraphVarsStyle.native.js.map +1 -0
- package/dist/esm/theme/faces.generated.mjs +23 -0
- package/dist/esm/theme/faces.generated.mjs.map +1 -0
- package/dist/esm/theme/faces.generated.native.js +23 -0
- package/dist/esm/theme/faces.generated.native.js.map +1 -0
- package/dist/esm/theme/faces.mjs +89 -0
- package/dist/esm/theme/faces.mjs.map +1 -0
- package/dist/esm/theme/faces.native.js +98 -0
- package/dist/esm/theme/faces.native.js.map +1 -0
- package/dist/esm/theme/graphVars.mjs +284 -0
- package/dist/esm/theme/graphVars.mjs.map +1 -0
- package/dist/esm/theme/graphVars.native.js +314 -0
- package/dist/esm/theme/graphVars.native.js.map +1 -0
- package/dist/jsx/NodeGraph.mjs +9 -0
- package/dist/jsx/NodeGraph.mjs.map +1 -0
- package/dist/jsx/NodeGraph.native.js +37 -0
- package/dist/jsx/NodeGraph.native.js.map +1 -0
- package/dist/jsx/bench/frameSampler.mjs +255 -0
- package/dist/jsx/bench/frameSampler.mjs.map +1 -0
- package/dist/jsx/bench/frameSampler.native.js +409 -0
- package/dist/jsx/bench/frameSampler.native.js.map +1 -0
- package/dist/jsx/bench/generateGraph.mjs +99 -0
- package/dist/jsx/bench/generateGraph.mjs.map +1 -0
- package/dist/jsx/bench/generateGraph.native.js +128 -0
- package/dist/jsx/bench/generateGraph.native.js.map +1 -0
- package/dist/jsx/diagnostics/GraphDiagnostics.mjs +128 -0
- package/dist/jsx/diagnostics/GraphDiagnostics.mjs.map +1 -0
- package/dist/jsx/diagnostics/GraphDiagnostics.native.js +166 -0
- package/dist/jsx/diagnostics/GraphDiagnostics.native.js.map +1 -0
- package/dist/jsx/diagnostics/LiveGraphDiagnostics.mjs +76 -0
- package/dist/jsx/diagnostics/LiveGraphDiagnostics.mjs.map +1 -0
- package/dist/jsx/diagnostics/LiveGraphDiagnostics.native.js +106 -0
- package/dist/jsx/diagnostics/LiveGraphDiagnostics.native.js.map +1 -0
- package/dist/jsx/diagnostics/fromWire.mjs +23 -0
- package/dist/jsx/diagnostics/fromWire.mjs.map +1 -0
- package/dist/jsx/diagnostics/fromWire.native.js +51 -0
- package/dist/jsx/diagnostics/fromWire.native.js.map +1 -0
- package/dist/jsx/diagnostics/lastError.mjs +39 -0
- package/dist/jsx/diagnostics/lastError.mjs.map +1 -0
- package/dist/jsx/diagnostics/lastError.native.js +75 -0
- package/dist/jsx/diagnostics/lastError.native.js.map +1 -0
- package/dist/jsx/diagnostics/types.mjs +2 -0
- package/dist/jsx/diagnostics/types.mjs.map +1 -0
- package/dist/jsx/diagnostics/types.native.js +21 -0
- package/dist/jsx/diagnostics/types.native.js.map +1 -0
- package/dist/jsx/diagnostics/useGraphDiagnostics.mjs +44 -0
- package/dist/jsx/diagnostics/useGraphDiagnostics.mjs.map +1 -0
- package/dist/jsx/diagnostics/useGraphDiagnostics.native.js +75 -0
- package/dist/jsx/diagnostics/useGraphDiagnostics.native.js.map +1 -0
- package/dist/jsx/dom/GraphDomLayout.mjs +11 -0
- package/dist/jsx/dom/GraphDomLayout.mjs.map +1 -0
- package/dist/jsx/dom/GraphDomLayout.native.js +40 -0
- package/dist/jsx/dom/GraphDomLayout.native.js.map +1 -0
- package/dist/jsx/dom/boot.mjs +67 -0
- package/dist/jsx/dom/boot.mjs.map +1 -0
- package/dist/jsx/dom/boot.native.js +111 -0
- package/dist/jsx/dom/boot.native.js.map +1 -0
- package/dist/jsx/dom/wire.mjs +183 -0
- package/dist/jsx/dom/wire.mjs.map +1 -0
- package/dist/jsx/dom/wire.native.js +274 -0
- package/dist/jsx/dom/wire.native.js.map +1 -0
- package/dist/jsx/edges/GraphEdge.mjs +139 -0
- package/dist/jsx/edges/GraphEdge.mjs.map +1 -0
- package/dist/jsx/edges/GraphEdge.native.js +178 -0
- package/dist/jsx/edges/GraphEdge.native.js.map +1 -0
- package/dist/jsx/edges/edgeKinds.mjs +25 -0
- package/dist/jsx/edges/edgeKinds.mjs.map +1 -0
- package/dist/jsx/edges/edgeKinds.native.js +54 -0
- package/dist/jsx/edges/edgeKinds.native.js.map +1 -0
- package/dist/jsx/edges/edgeStyle.mjs +63 -0
- package/dist/jsx/edges/edgeStyle.mjs.map +1 -0
- package/dist/jsx/edges/edgeStyle.native.js +99 -0
- package/dist/jsx/edges/edgeStyle.native.js.map +1 -0
- package/dist/jsx/index.js +50 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/index.mjs +50 -0
- package/dist/jsx/index.mjs.map +1 -0
- package/dist/jsx/index.native.js +200 -0
- package/dist/jsx/index.native.js.map +1 -0
- package/dist/jsx/interaction/lassoIntercept.mjs +29 -0
- package/dist/jsx/interaction/lassoIntercept.mjs.map +1 -0
- package/dist/jsx/interaction/lassoIntercept.native.js +57 -0
- package/dist/jsx/interaction/lassoIntercept.native.js.map +1 -0
- package/dist/jsx/interaction/legalTargets.mjs +48 -0
- package/dist/jsx/interaction/legalTargets.mjs.map +1 -0
- package/dist/jsx/interaction/legalTargets.native.js +118 -0
- package/dist/jsx/interaction/legalTargets.native.js.map +1 -0
- package/dist/jsx/interaction/snapAlignment.mjs +137 -0
- package/dist/jsx/interaction/snapAlignment.mjs.map +1 -0
- package/dist/jsx/interaction/snapAlignment.native.js +245 -0
- package/dist/jsx/interaction/snapAlignment.native.js.map +1 -0
- package/dist/jsx/interaction/snapChanges.mjs +184 -0
- package/dist/jsx/interaction/snapChanges.mjs.map +1 -0
- package/dist/jsx/interaction/snapChanges.native.js +269 -0
- package/dist/jsx/interaction/snapChanges.native.js.map +1 -0
- package/dist/jsx/interaction/spatialHash.mjs +71 -0
- package/dist/jsx/interaction/spatialHash.mjs.map +1 -0
- package/dist/jsx/interaction/spatialHash.native.js +165 -0
- package/dist/jsx/interaction/spatialHash.native.js.map +1 -0
- package/dist/jsx/interaction/useLassoSelect.mjs +231 -0
- package/dist/jsx/interaction/useLassoSelect.mjs.map +1 -0
- package/dist/jsx/interaction/useLassoSelect.native.js +287 -0
- package/dist/jsx/interaction/useLassoSelect.native.js.map +1 -0
- package/dist/jsx/knobs/KnobEnvelopeProvider.mjs +51 -0
- package/dist/jsx/knobs/KnobEnvelopeProvider.mjs.map +1 -0
- package/dist/jsx/knobs/KnobEnvelopeProvider.native.js +85 -0
- package/dist/jsx/knobs/KnobEnvelopeProvider.native.js.map +1 -0
- package/dist/jsx/knobs/envelope.mjs +29 -0
- package/dist/jsx/knobs/envelope.mjs.map +1 -0
- package/dist/jsx/knobs/envelope.native.js +78 -0
- package/dist/jsx/knobs/envelope.native.js.map +1 -0
- package/dist/jsx/knobs/graphKnobs.mjs +14 -0
- package/dist/jsx/knobs/graphKnobs.mjs.map +1 -0
- package/dist/jsx/knobs/graphKnobs.native.js +43 -0
- package/dist/jsx/knobs/graphKnobs.native.js.map +1 -0
- package/dist/jsx/knobs/useKnobEnvelope.mjs +83 -0
- package/dist/jsx/knobs/useKnobEnvelope.mjs.map +1 -0
- package/dist/jsx/knobs/useKnobEnvelope.native.js +140 -0
- package/dist/jsx/knobs/useKnobEnvelope.native.js.map +1 -0
- package/dist/jsx/layout/dagre.mjs +99 -0
- package/dist/jsx/layout/dagre.mjs.map +1 -0
- package/dist/jsx/layout/dagre.native.js +259 -0
- package/dist/jsx/layout/dagre.native.js.map +1 -0
- package/dist/jsx/layout/layout.mjs +57 -0
- package/dist/jsx/layout/layout.mjs.map +1 -0
- package/dist/jsx/layout/layout.native.js +112 -0
- package/dist/jsx/layout/layout.native.js.map +1 -0
- package/dist/jsx/layout/runner.mjs +164 -0
- package/dist/jsx/layout/runner.mjs.map +1 -0
- package/dist/jsx/layout/runner.native.js +247 -0
- package/dist/jsx/layout/runner.native.js.map +1 -0
- package/dist/jsx/layout/structuredCloneShim.mjs +54 -0
- package/dist/jsx/layout/structuredCloneShim.mjs.map +1 -0
- package/dist/jsx/layout/structuredCloneShim.native.js +160 -0
- package/dist/jsx/layout/structuredCloneShim.native.js.map +1 -0
- package/dist/jsx/layout/types.mjs +2 -0
- package/dist/jsx/layout/types.mjs.map +1 -0
- package/dist/jsx/layout/types.native.js +21 -0
- package/dist/jsx/layout/types.native.js.map +1 -0
- package/dist/jsx/layout/worker.entry.mjs +33 -0
- package/dist/jsx/layout/worker.entry.mjs.map +1 -0
- package/dist/jsx/layout/worker.entry.native.js +75 -0
- package/dist/jsx/layout/worker.entry.native.js.map +1 -0
- package/dist/jsx/layout/worker.generated.mjs +5 -0
- package/dist/jsx/layout/worker.generated.mjs.map +1 -0
- package/dist/jsx/layout/worker.generated.native.js +35 -0
- package/dist/jsx/layout/worker.generated.native.js.map +1 -0
- package/dist/jsx/model/commands.mjs +209 -0
- package/dist/jsx/model/commands.mjs.map +1 -0
- package/dist/jsx/model/commands.native.js +317 -0
- package/dist/jsx/model/commands.native.js.map +1 -0
- package/dist/jsx/model/connect.mjs +124 -0
- package/dist/jsx/model/connect.mjs.map +1 -0
- package/dist/jsx/model/connect.native.js +239 -0
- package/dist/jsx/model/connect.native.js.map +1 -0
- package/dist/jsx/model/document.mjs +2 -0
- package/dist/jsx/model/document.mjs.map +1 -0
- package/dist/jsx/model/document.native.js +21 -0
- package/dist/jsx/model/document.native.js.map +1 -0
- package/dist/jsx/model/history.mjs +96 -0
- package/dist/jsx/model/history.mjs.map +1 -0
- package/dist/jsx/model/history.native.js +178 -0
- package/dist/jsx/model/history.native.js.map +1 -0
- package/dist/jsx/model/index.mjs +8 -0
- package/dist/jsx/model/index.mjs.map +1 -0
- package/dist/jsx/model/index.native.js +63 -0
- package/dist/jsx/model/index.native.js.map +1 -0
- package/dist/jsx/model/schema.mjs +32 -0
- package/dist/jsx/model/schema.mjs.map +1 -0
- package/dist/jsx/model/schema.native.js +68 -0
- package/dist/jsx/model/schema.native.js.map +1 -0
- package/dist/jsx/model/select.mjs +49 -0
- package/dist/jsx/model/select.mjs.map +1 -0
- package/dist/jsx/model/select.native.js +107 -0
- package/dist/jsx/model/select.native.js.map +1 -0
- package/dist/jsx/model/serialize.mjs +306 -0
- package/dist/jsx/model/serialize.mjs.map +1 -0
- package/dist/jsx/model/serialize.native.js +374 -0
- package/dist/jsx/model/serialize.native.js.map +1 -0
- package/dist/jsx/native/DomOnlyStory.mjs +33 -0
- package/dist/jsx/native/DomOnlyStory.mjs.map +1 -0
- package/dist/jsx/native/DomOnlyStory.native.js +66 -0
- package/dist/jsx/native/DomOnlyStory.native.js.map +1 -0
- package/dist/jsx/native/GraphToolbar.mjs +76 -0
- package/dist/jsx/native/GraphToolbar.mjs.map +1 -0
- package/dist/jsx/native/GraphToolbar.native.js +107 -0
- package/dist/jsx/native/GraphToolbar.native.js.map +1 -0
- package/dist/jsx/native/domEntryRegistry.mjs +12 -0
- package/dist/jsx/native/domEntryRegistry.mjs.map +1 -0
- package/dist/jsx/native/domEntryRegistry.native.js +42 -0
- package/dist/jsx/native/domEntryRegistry.native.js.map +1 -0
- package/dist/jsx/native/graphChildren.mjs +18 -0
- package/dist/jsx/native/graphChildren.mjs.map +1 -0
- package/dist/jsx/native/graphChildren.native.js +50 -0
- package/dist/jsx/native/graphChildren.native.js.map +1 -0
- package/dist/jsx/nodes/GraphNode.mjs +136 -0
- package/dist/jsx/nodes/GraphNode.mjs.map +1 -0
- package/dist/jsx/nodes/GraphNode.native.js +206 -0
- package/dist/jsx/nodes/GraphNode.native.js.map +1 -0
- package/dist/jsx/nodes/GraphPort.mjs +79 -0
- package/dist/jsx/nodes/GraphPort.mjs.map +1 -0
- package/dist/jsx/nodes/GraphPort.native.js +108 -0
- package/dist/jsx/nodes/GraphPort.native.js.map +1 -0
- package/dist/jsx/nodes/handleGeometry.mjs +65 -0
- package/dist/jsx/nodes/handleGeometry.mjs.map +1 -0
- package/dist/jsx/nodes/handleGeometry.native.js +104 -0
- package/dist/jsx/nodes/handleGeometry.native.js.map +1 -0
- package/dist/jsx/nodes/lod.mjs +13 -0
- package/dist/jsx/nodes/lod.mjs.map +1 -0
- package/dist/jsx/nodes/lod.native.js +45 -0
- package/dist/jsx/nodes/lod.native.js.map +1 -0
- package/dist/jsx/nodes/nodeMeasure.mjs +72 -0
- package/dist/jsx/nodes/nodeMeasure.mjs.map +1 -0
- package/dist/jsx/nodes/nodeMeasure.native.js +134 -0
- package/dist/jsx/nodes/nodeMeasure.native.js.map +1 -0
- package/dist/jsx/nodes/overviewNode.mjs +49 -0
- package/dist/jsx/nodes/overviewNode.mjs.map +1 -0
- package/dist/jsx/nodes/overviewNode.native.js +81 -0
- package/dist/jsx/nodes/overviewNode.native.js.map +1 -0
- package/dist/jsx/react-flow/ConnectionPuck.mjs +96 -0
- package/dist/jsx/react-flow/ConnectionPuck.mjs.map +1 -0
- package/dist/jsx/react-flow/ConnectionPuck.native.js +143 -0
- package/dist/jsx/react-flow/ConnectionPuck.native.js.map +1 -0
- package/dist/jsx/react-flow/GraphActions.mjs +21 -0
- package/dist/jsx/react-flow/GraphActions.mjs.map +1 -0
- package/dist/jsx/react-flow/GraphActions.native.js +51 -0
- package/dist/jsx/react-flow/GraphActions.native.js.map +1 -0
- package/dist/jsx/react-flow/GraphCommandBridge.mjs +213 -0
- package/dist/jsx/react-flow/GraphCommandBridge.mjs.map +1 -0
- package/dist/jsx/react-flow/GraphCommandBridge.native.js +272 -0
- package/dist/jsx/react-flow/GraphCommandBridge.native.js.map +1 -0
- package/dist/jsx/react-flow/GraphNodeHost.mjs +50 -0
- package/dist/jsx/react-flow/GraphNodeHost.mjs.map +1 -0
- package/dist/jsx/react-flow/GraphNodeHost.native.js +89 -0
- package/dist/jsx/react-flow/GraphNodeHost.native.js.map +1 -0
- package/dist/jsx/react-flow/GraphPaintProbe.mjs +35 -0
- package/dist/jsx/react-flow/GraphPaintProbe.mjs.map +1 -0
- package/dist/jsx/react-flow/GraphPaintProbe.native.js +65 -0
- package/dist/jsx/react-flow/GraphPaintProbe.native.js.map +1 -0
- package/dist/jsx/react-flow/GraphZoomVar.mjs +16 -0
- package/dist/jsx/react-flow/GraphZoomVar.mjs.map +1 -0
- package/dist/jsx/react-flow/GraphZoomVar.native.js +48 -0
- package/dist/jsx/react-flow/GraphZoomVar.native.js.map +1 -0
- package/dist/jsx/react-flow/LassoOverlay.mjs +22 -0
- package/dist/jsx/react-flow/LassoOverlay.mjs.map +1 -0
- package/dist/jsx/react-flow/LassoOverlay.native.js +51 -0
- package/dist/jsx/react-flow/LassoOverlay.native.js.map +1 -0
- package/dist/jsx/react-flow/NodeGraphWeb.mjs +359 -0
- package/dist/jsx/react-flow/NodeGraphWeb.mjs.map +1 -0
- package/dist/jsx/react-flow/NodeGraphWeb.native.js +515 -0
- package/dist/jsx/react-flow/NodeGraphWeb.native.js.map +1 -0
- package/dist/jsx/react-flow/SnapGuides.mjs +60 -0
- package/dist/jsx/react-flow/SnapGuides.mjs.map +1 -0
- package/dist/jsx/react-flow/SnapGuides.native.js +114 -0
- package/dist/jsx/react-flow/SnapGuides.native.js.map +1 -0
- package/dist/jsx/react-flow/demoControlBody.mjs +67 -0
- package/dist/jsx/react-flow/demoControlBody.mjs.map +1 -0
- package/dist/jsx/react-flow/demoControlBody.native.js +104 -0
- package/dist/jsx/react-flow/demoControlBody.native.js.map +1 -0
- package/dist/jsx/react-flow/demoNodeBody.mjs +91 -0
- package/dist/jsx/react-flow/demoNodeBody.mjs.map +1 -0
- package/dist/jsx/react-flow/demoNodeBody.native.js +131 -0
- package/dist/jsx/react-flow/demoNodeBody.native.js.map +1 -0
- package/dist/jsx/react-flow/fixtures.mjs +185 -0
- package/dist/jsx/react-flow/fixtures.mjs.map +1 -0
- package/dist/jsx/react-flow/fixtures.native.js +225 -0
- package/dist/jsx/react-flow/fixtures.native.js.map +1 -0
- package/dist/jsx/react-flow/flowAdapter.mjs +94 -0
- package/dist/jsx/react-flow/flowAdapter.mjs.map +1 -0
- package/dist/jsx/react-flow/flowAdapter.native.js +133 -0
- package/dist/jsx/react-flow/flowAdapter.native.js.map +1 -0
- package/dist/jsx/react-flow/graphHandle.mjs +3 -0
- package/dist/jsx/react-flow/graphHandle.mjs.map +1 -0
- package/dist/jsx/react-flow/graphHandle.native.js +31 -0
- package/dist/jsx/react-flow/graphHandle.native.js.map +1 -0
- package/dist/jsx/react-flow/nodeCensus.mjs +28 -0
- package/dist/jsx/react-flow/nodeCensus.mjs.map +1 -0
- package/dist/jsx/react-flow/nodeCensus.native.js +80 -0
- package/dist/jsx/react-flow/nodeCensus.native.js.map +1 -0
- package/dist/jsx/react-flow/useGraphController.mjs +269 -0
- package/dist/jsx/react-flow/useGraphController.mjs.map +1 -0
- package/dist/jsx/react-flow/useGraphController.native.js +393 -0
- package/dist/jsx/react-flow/useGraphController.native.js.map +1 -0
- package/dist/jsx/react-flow/xy.mjs +8 -0
- package/dist/jsx/react-flow/xy.mjs.map +1 -0
- package/dist/jsx/react-flow/xy.native.js +63 -0
- package/dist/jsx/react-flow/xy.native.js.map +1 -0
- package/dist/jsx/theme/GraphFaces.mjs +88 -0
- package/dist/jsx/theme/GraphFaces.mjs.map +1 -0
- package/dist/jsx/theme/GraphFaces.native.js +181 -0
- package/dist/jsx/theme/GraphFaces.native.js.map +1 -0
- package/dist/jsx/theme/GraphVarsStyle.mjs +59 -0
- package/dist/jsx/theme/GraphVarsStyle.mjs.map +1 -0
- package/dist/jsx/theme/GraphVarsStyle.native.js +100 -0
- package/dist/jsx/theme/GraphVarsStyle.native.js.map +1 -0
- package/dist/jsx/theme/faces.generated.mjs +23 -0
- package/dist/jsx/theme/faces.generated.mjs.map +1 -0
- package/dist/jsx/theme/faces.generated.native.js +51 -0
- package/dist/jsx/theme/faces.generated.native.js.map +1 -0
- package/dist/jsx/theme/faces.mjs +89 -0
- package/dist/jsx/theme/faces.mjs.map +1 -0
- package/dist/jsx/theme/faces.native.js +133 -0
- package/dist/jsx/theme/faces.native.js.map +1 -0
- package/dist/jsx/theme/graphVars.mjs +284 -0
- package/dist/jsx/theme/graphVars.mjs.map +1 -0
- package/dist/jsx/theme/graphVars.native.js +351 -0
- package/dist/jsx/theme/graphVars.native.js.map +1 -0
- package/dom-inner.ts +21 -0
- package/metro/index.js +174 -0
- package/metro/index.spec.mjs +235 -0
- package/model.ts +9 -0
- package/package.json +137 -0
- package/src/NodeGraph.native.spec.ts +164 -0
- package/src/NodeGraph.native.tsx +278 -0
- package/src/NodeGraph.tsx +27 -0
- package/src/bench/Perf200.stories.tsx +351 -0
- package/src/bench/frameSampler.spec.ts +467 -0
- package/src/bench/frameSampler.ts +516 -0
- package/src/bench/generateGraph.ts +138 -0
- package/src/diagnostics/GraphDiagnostics.spec.tsx +206 -0
- package/src/diagnostics/GraphDiagnostics.stories.tsx +194 -0
- package/src/diagnostics/GraphDiagnostics.tsx +140 -0
- package/src/diagnostics/LiveGraphDiagnostics.native.tsx +61 -0
- package/src/diagnostics/LiveGraphDiagnostics.tsx +121 -0
- package/src/diagnostics/deliberateBreak.ts +35 -0
- package/src/diagnostics/fromWire.spec.ts +74 -0
- package/src/diagnostics/fromWire.ts +48 -0
- package/src/diagnostics/lastError.ts +91 -0
- package/src/diagnostics/types.ts +103 -0
- package/src/diagnostics/useGraphDiagnostics.spec.tsx +199 -0
- package/src/diagnostics/useGraphDiagnostics.ts +85 -0
- package/src/dom/GraphDomLayout.spec.tsx +56 -0
- package/src/dom/GraphDomLayout.tsx +49 -0
- package/src/dom/NodeGraphDom.ts +43 -0
- package/src/dom/NodeGraphDomInner.tsx +524 -0
- package/src/dom/NodeGraphDomShell.ts +402 -0
- package/src/dom/boot.spec.ts +90 -0
- package/src/dom/boot.ts +153 -0
- package/src/dom/domEntry.spec.ts +481 -0
- package/src/dom/importGraph.spec.ts +287 -0
- package/src/dom/schemaRegistry.spec.tsx +182 -0
- package/src/dom/wire.spec.ts +486 -0
- package/src/dom/wire.ts +493 -0
- package/src/edges/Edges.stories.tsx +271 -0
- package/src/edges/GraphEdge.tsx +198 -0
- package/src/edges/edgeKinds.ts +51 -0
- package/src/edges/edgeStyle.spec.ts +295 -0
- package/src/edges/edgeStyle.ts +124 -0
- package/src/index.native.ts +147 -0
- package/src/index.ts +243 -0
- package/src/interaction/Lasso.stories.tsx +198 -0
- package/src/interaction/Snapping.stories.tsx +189 -0
- package/src/interaction/lassoIntercept.spec.ts +166 -0
- package/src/interaction/lassoIntercept.ts +81 -0
- package/src/interaction/legalTargets.spec.ts +304 -0
- package/src/interaction/legalTargets.ts +91 -0
- package/src/interaction/snapAlignment.spec.ts +412 -0
- package/src/interaction/snapAlignment.ts +209 -0
- package/src/interaction/snapChanges.spec.ts +273 -0
- package/src/interaction/snapChanges.ts +292 -0
- package/src/interaction/spatialHash.spec.ts +168 -0
- package/src/interaction/spatialHash.ts +128 -0
- package/src/interaction/useLassoSelect.spec.tsx +487 -0
- package/src/interaction/useLassoSelect.ts +489 -0
- package/src/knobs/KnobEnvelopeProvider.tsx +110 -0
- package/src/knobs/envelope.spec.tsx +371 -0
- package/src/knobs/envelope.ts +130 -0
- package/src/knobs/envelopeTheme.spec.ts +58 -0
- package/src/knobs/graphKnobs.ts +36 -0
- package/src/knobs/useKnobEnvelope.ts +152 -0
- package/src/layout/AutoLayout.stories.tsx +338 -0
- package/src/layout/dagre.ts +149 -0
- package/src/layout/layout.spec.ts +244 -0
- package/src/layout/layout.ts +121 -0
- package/src/layout/runner.spec.ts +365 -0
- package/src/layout/runner.ts +256 -0
- package/src/layout/structuredCloneShim.spec.ts +103 -0
- package/src/layout/structuredCloneShim.ts +106 -0
- package/src/layout/types.ts +112 -0
- package/src/layout/worker.entry.ts +74 -0
- package/src/layout/worker.generated.spec.ts +157 -0
- package/src/layout/worker.generated.ts +32 -0
- package/src/model/commands.spec.ts +214 -0
- package/src/model/commands.ts +209 -0
- package/src/model/connect.spec.ts +444 -0
- package/src/model/connect.ts +281 -0
- package/src/model/document.ts +121 -0
- package/src/model/history.spec.ts +278 -0
- package/src/model/history.ts +153 -0
- package/src/model/index.ts +74 -0
- package/src/model/schema.ts +177 -0
- package/src/model/select.spec.ts +220 -0
- package/src/model/select.ts +88 -0
- package/src/model/serialize.spec.ts +393 -0
- package/src/model/serialize.ts +395 -0
- package/src/native/DomOnlyStory.tsx +72 -0
- package/src/native/GraphFallback.native.tsx +123 -0
- package/src/native/GraphToolbar.tsx +171 -0
- package/src/native/NodeGraph.native.tsx +505 -0
- package/src/native/domEntryRegistry.spec.ts +66 -0
- package/src/native/domEntryRegistry.ts +45 -0
- package/src/native/graphChildren.spec.ts +67 -0
- package/src/native/graphChildren.ts +62 -0
- package/src/native/graphFallback.spec.ts +49 -0
- package/src/native/graphHandleRemount.spec.tsx +189 -0
- package/src/nodes/GraphNode.spec.tsx +270 -0
- package/src/nodes/GraphNode.stories.tsx +451 -0
- package/src/nodes/GraphNode.tsx +240 -0
- package/src/nodes/GraphPort.spec.tsx +442 -0
- package/src/nodes/GraphPort.stories.tsx +407 -0
- package/src/nodes/GraphPort.tsx +117 -0
- package/src/nodes/Overview.stories.tsx +237 -0
- package/src/nodes/handleGeometry.spec.ts +161 -0
- package/src/nodes/handleGeometry.ts +232 -0
- package/src/nodes/lod.spec.tsx +300 -0
- package/src/nodes/lod.ts +69 -0
- package/src/nodes/nodeMeasure.spec.ts +245 -0
- package/src/nodes/nodeMeasure.ts +216 -0
- package/src/nodes/overviewNode.tsx +71 -0
- package/src/packageShape.spec.ts +145 -0
- package/src/react-flow/ConnectionPuck.spec.tsx +242 -0
- package/src/react-flow/ConnectionPuck.tsx +175 -0
- package/src/react-flow/GraphActions.tsx +64 -0
- package/src/react-flow/GraphCommandBridge.spec.tsx +130 -0
- package/src/react-flow/GraphCommandBridge.tsx +288 -0
- package/src/react-flow/GraphNodeHost.tsx +101 -0
- package/src/react-flow/GraphPaintProbe.spec.tsx +116 -0
- package/src/react-flow/GraphPaintProbe.tsx +65 -0
- package/src/react-flow/GraphZoomVar.tsx +48 -0
- package/src/react-flow/LassoOverlay.tsx +59 -0
- package/src/react-flow/NodeGraphWeb.spec.tsx +441 -0
- package/src/react-flow/NodeGraphWeb.stories.tsx +260 -0
- package/src/react-flow/NodeGraphWeb.tsx +645 -0
- package/src/react-flow/SnapGuides.spec.tsx +161 -0
- package/src/react-flow/SnapGuides.tsx +113 -0
- package/src/react-flow/demoControlBody.tsx +96 -0
- package/src/react-flow/demoNodeBody.tsx +121 -0
- package/src/react-flow/fixtures.ts +185 -0
- package/src/react-flow/flowAdapter.ts +170 -0
- package/src/react-flow/graphHandle.ts +112 -0
- package/src/react-flow/nodeCensus.spec.ts +66 -0
- package/src/react-flow/nodeCensus.ts +69 -0
- package/src/react-flow/useGraphController.spec.tsx +849 -0
- package/src/react-flow/useGraphController.ts +473 -0
- package/src/react-flow/xy.spec.ts +182 -0
- package/src/react-flow/xy.ts +131 -0
- package/src/theme/GraphFaces.spec.tsx +101 -0
- package/src/theme/GraphFaces.tsx +218 -0
- package/src/theme/GraphVarsStyle.tsx +113 -0
- package/src/theme/faces.generated.ts +53 -0
- package/src/theme/faces.spec.ts +228 -0
- package/src/theme/faces.ts +275 -0
- package/src/theme/graphCss.spec.ts +111 -0
- package/src/theme/graphVars.spec.ts +322 -0
- package/src/theme/graphVars.ts +441 -0
- package/types/NodeGraph.d.ts +17 -0
- package/types/NodeGraph.d.ts.map +1 -0
- package/types/NodeGraph.native.d.ts +142 -0
- package/types/NodeGraph.native.d.ts.map +1 -0
- package/types/bench/frameSampler.d.ts +235 -0
- package/types/bench/frameSampler.d.ts.map +1 -0
- package/types/bench/generateGraph.d.ts +43 -0
- package/types/bench/generateGraph.d.ts.map +1 -0
- package/types/diagnostics/GraphDiagnostics.d.ts +30 -0
- package/types/diagnostics/GraphDiagnostics.d.ts.map +1 -0
- package/types/diagnostics/LiveGraphDiagnostics.d.ts +27 -0
- package/types/diagnostics/LiveGraphDiagnostics.d.ts.map +1 -0
- package/types/diagnostics/LiveGraphDiagnostics.native.d.ts +25 -0
- package/types/diagnostics/LiveGraphDiagnostics.native.d.ts.map +1 -0
- package/types/diagnostics/deliberateBreak.d.ts +28 -0
- package/types/diagnostics/deliberateBreak.d.ts.map +1 -0
- package/types/diagnostics/fromWire.d.ts +17 -0
- package/types/diagnostics/fromWire.d.ts.map +1 -0
- package/types/diagnostics/lastError.d.ts +50 -0
- package/types/diagnostics/lastError.d.ts.map +1 -0
- package/types/diagnostics/types.d.ts +101 -0
- package/types/diagnostics/types.d.ts.map +1 -0
- package/types/diagnostics/useGraphDiagnostics.d.ts +23 -0
- package/types/diagnostics/useGraphDiagnostics.d.ts.map +1 -0
- package/types/dom/GraphDomLayout.d.ts +40 -0
- package/types/dom/GraphDomLayout.d.ts.map +1 -0
- package/types/dom/NodeGraphDom.d.ts +4 -0
- package/types/dom/NodeGraphDom.d.ts.map +1 -0
- package/types/dom/NodeGraphDomInner.d.ts +26 -0
- package/types/dom/NodeGraphDomInner.d.ts.map +1 -0
- package/types/dom/NodeGraphDomShell.d.ts +221 -0
- package/types/dom/NodeGraphDomShell.d.ts.map +1 -0
- package/types/dom/boot.d.ts +90 -0
- package/types/dom/boot.d.ts.map +1 -0
- package/types/dom/wire.d.ts +355 -0
- package/types/dom/wire.d.ts.map +1 -0
- package/types/edges/GraphEdge.d.ts +59 -0
- package/types/edges/GraphEdge.d.ts.map +1 -0
- package/types/edges/edgeKinds.d.ts +43 -0
- package/types/edges/edgeKinds.d.ts.map +1 -0
- package/types/edges/edgeStyle.d.ts +79 -0
- package/types/edges/edgeStyle.d.ts.map +1 -0
- package/types/index.d.ts +123 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.native.d.ts +86 -0
- package/types/index.native.d.ts.map +1 -0
- package/types/interaction/lassoIntercept.d.ts +58 -0
- package/types/interaction/lassoIntercept.d.ts.map +1 -0
- package/types/interaction/legalTargets.d.ts +59 -0
- package/types/interaction/legalTargets.d.ts.map +1 -0
- package/types/interaction/snapAlignment.d.ts +85 -0
- package/types/interaction/snapAlignment.d.ts.map +1 -0
- package/types/interaction/snapChanges.d.ts +133 -0
- package/types/interaction/snapChanges.d.ts.map +1 -0
- package/types/interaction/spatialHash.d.ts +37 -0
- package/types/interaction/spatialHash.d.ts.map +1 -0
- package/types/interaction/useLassoSelect.d.ts +151 -0
- package/types/interaction/useLassoSelect.d.ts.map +1 -0
- package/types/knobs/KnobEnvelopeProvider.d.ts +45 -0
- package/types/knobs/KnobEnvelopeProvider.d.ts.map +1 -0
- package/types/knobs/envelope.d.ts +99 -0
- package/types/knobs/envelope.d.ts.map +1 -0
- package/types/knobs/graphKnobs.d.ts +26 -0
- package/types/knobs/graphKnobs.d.ts.map +1 -0
- package/types/knobs/useKnobEnvelope.d.ts +43 -0
- package/types/knobs/useKnobEnvelope.d.ts.map +1 -0
- package/types/layout/dagre.d.ts +39 -0
- package/types/layout/dagre.d.ts.map +1 -0
- package/types/layout/layout.d.ts +58 -0
- package/types/layout/layout.d.ts.map +1 -0
- package/types/layout/runner.d.ts +60 -0
- package/types/layout/runner.d.ts.map +1 -0
- package/types/layout/structuredCloneShim.d.ts +44 -0
- package/types/layout/structuredCloneShim.d.ts.map +1 -0
- package/types/layout/types.d.ts +113 -0
- package/types/layout/types.d.ts.map +1 -0
- package/types/layout/worker.entry.d.ts +34 -0
- package/types/layout/worker.entry.d.ts.map +1 -0
- package/types/layout/worker.generated.d.ts +26 -0
- package/types/layout/worker.generated.d.ts.map +1 -0
- package/types/model/commands.d.ts +49 -0
- package/types/model/commands.d.ts.map +1 -0
- package/types/model/connect.d.ts +83 -0
- package/types/model/connect.d.ts.map +1 -0
- package/types/model/document.d.ts +111 -0
- package/types/model/document.d.ts.map +1 -0
- package/types/model/history.d.ts +40 -0
- package/types/model/history.d.ts.map +1 -0
- package/types/model/index.d.ts +20 -0
- package/types/model/index.d.ts.map +1 -0
- package/types/model/schema.d.ts +136 -0
- package/types/model/schema.d.ts.map +1 -0
- package/types/model/select.d.ts +41 -0
- package/types/model/select.d.ts.map +1 -0
- package/types/model/serialize.d.ts +33 -0
- package/types/model/serialize.d.ts.map +1 -0
- package/types/native/DomOnlyStory.d.ts +49 -0
- package/types/native/DomOnlyStory.d.ts.map +1 -0
- package/types/native/GraphFallback.native.d.ts +41 -0
- package/types/native/GraphFallback.native.d.ts.map +1 -0
- package/types/native/GraphToolbar.d.ts +75 -0
- package/types/native/GraphToolbar.d.ts.map +1 -0
- package/types/native/NodeGraph.native.d.ts +128 -0
- package/types/native/NodeGraph.native.d.ts.map +1 -0
- package/types/native/domEntryRegistry.d.ts +33 -0
- package/types/native/domEntryRegistry.d.ts.map +1 -0
- package/types/native/graphChildren.d.ts +36 -0
- package/types/native/graphChildren.d.ts.map +1 -0
- package/types/nodes/GraphNode.d.ts +48 -0
- package/types/nodes/GraphNode.d.ts.map +1 -0
- package/types/nodes/GraphPort.d.ts +41 -0
- package/types/nodes/GraphPort.d.ts.map +1 -0
- package/types/nodes/handleGeometry.d.ts +183 -0
- package/types/nodes/handleGeometry.d.ts.map +1 -0
- package/types/nodes/lod.d.ts +55 -0
- package/types/nodes/lod.d.ts.map +1 -0
- package/types/nodes/nodeMeasure.d.ts +146 -0
- package/types/nodes/nodeMeasure.d.ts.map +1 -0
- package/types/nodes/overviewNode.d.ts +34 -0
- package/types/nodes/overviewNode.d.ts.map +1 -0
- package/types/react-flow/ConnectionPuck.d.ts +62 -0
- package/types/react-flow/ConnectionPuck.d.ts.map +1 -0
- package/types/react-flow/GraphActions.d.ts +45 -0
- package/types/react-flow/GraphActions.d.ts.map +1 -0
- package/types/react-flow/GraphCommandBridge.d.ts +45 -0
- package/types/react-flow/GraphCommandBridge.d.ts.map +1 -0
- package/types/react-flow/GraphNodeHost.d.ts +32 -0
- package/types/react-flow/GraphNodeHost.d.ts.map +1 -0
- package/types/react-flow/GraphPaintProbe.d.ts +26 -0
- package/types/react-flow/GraphPaintProbe.d.ts.map +1 -0
- package/types/react-flow/GraphZoomVar.d.ts +31 -0
- package/types/react-flow/GraphZoomVar.d.ts.map +1 -0
- package/types/react-flow/LassoOverlay.d.ts +39 -0
- package/types/react-flow/LassoOverlay.d.ts.map +1 -0
- package/types/react-flow/NodeGraphWeb.d.ts +195 -0
- package/types/react-flow/NodeGraphWeb.d.ts.map +1 -0
- package/types/react-flow/SnapGuides.d.ts +49 -0
- package/types/react-flow/SnapGuides.d.ts.map +1 -0
- package/types/react-flow/demoControlBody.d.ts +47 -0
- package/types/react-flow/demoControlBody.d.ts.map +1 -0
- package/types/react-flow/demoNodeBody.d.ts +37 -0
- package/types/react-flow/demoNodeBody.d.ts.map +1 -0
- package/types/react-flow/fixtures.d.ts +107 -0
- package/types/react-flow/fixtures.d.ts.map +1 -0
- package/types/react-flow/flowAdapter.d.ts +56 -0
- package/types/react-flow/flowAdapter.d.ts.map +1 -0
- package/types/react-flow/graphHandle.d.ts +90 -0
- package/types/react-flow/graphHandle.d.ts.map +1 -0
- package/types/react-flow/nodeCensus.d.ts +42 -0
- package/types/react-flow/nodeCensus.d.ts.map +1 -0
- package/types/react-flow/useGraphController.d.ts +93 -0
- package/types/react-flow/useGraphController.d.ts.map +1 -0
- package/types/react-flow/xy.d.ts +84 -0
- package/types/react-flow/xy.d.ts.map +1 -0
- package/types/theme/GraphFaces.d.ts +82 -0
- package/types/theme/GraphFaces.d.ts.map +1 -0
- package/types/theme/GraphVarsStyle.d.ts +56 -0
- package/types/theme/GraphVarsStyle.d.ts.map +1 -0
- package/types/theme/faces.d.ts +152 -0
- package/types/theme/faces.d.ts.map +1 -0
- package/types/theme/faces.generated.d.ts +27 -0
- package/types/theme/faces.generated.d.ts.map +1 -0
- package/types/theme/graphVars.d.ts +155 -0
- package/types/theme/graphVars.d.ts.map +1 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One schema and one document, shared by the two task-1.11 specs and the story.
|
|
3
|
+
*
|
|
4
|
+
* A fixture module rather than a copy in each file: the story is the thing a
|
|
5
|
+
* reviewer looks at, and a story that drifts from what the specs assert is a
|
|
6
|
+
* story that proves nothing about the code under test.
|
|
7
|
+
*
|
|
8
|
+
* `.ts`, no JSX, and no component values — `NodeKindSpec.render` is filled in
|
|
9
|
+
* by whoever mounts these, because the model half of the package must stay
|
|
10
|
+
* importable without React (design §3.1).
|
|
11
|
+
*/
|
|
12
|
+
import type { GraphDocument, GraphSchema, PortSpec } from "../model/index";
|
|
13
|
+
import type { BuiltinEdgeData } from "../edges/edgeKinds";
|
|
14
|
+
export type DemoNodeData = {
|
|
15
|
+
readonly source: {
|
|
16
|
+
readonly table: string;
|
|
17
|
+
};
|
|
18
|
+
readonly transform: {
|
|
19
|
+
readonly expression: string;
|
|
20
|
+
};
|
|
21
|
+
readonly sink: {
|
|
22
|
+
readonly target: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* The schema WITHOUT its `render` components.
|
|
27
|
+
*
|
|
28
|
+
* Split out so `demoNodeBody.tsx` can supply real bodies over the same
|
|
29
|
+
* measures, ports and intents the model-only specs use. A second copy of the
|
|
30
|
+
* kind table is a second thing to keep in step.
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* The id the package's OWN demo schema registers under.
|
|
34
|
+
*
|
|
35
|
+
* A named constant rather than a literal in two places, because it is the one
|
|
36
|
+
* string that crosses the bridge: `NodeGraphDomInner` matches on it to register
|
|
37
|
+
* this schema inside the DOM bundle, where a story cannot reach. See the note
|
|
38
|
+
* there — a schema's `render` is a component and cannot be JSON, so the only
|
|
39
|
+
* way a canvas gets one is a module the DOM bundle itself imports.
|
|
40
|
+
*/
|
|
41
|
+
export declare const demoGraphSchemaId = "node-graph-demo";
|
|
42
|
+
/**
|
|
43
|
+
* The id the plain-div CONTROL schema registers under.
|
|
44
|
+
*
|
|
45
|
+
* Design §13.2 asks for a control condition in every measurement session so the
|
|
46
|
+
* Tamagui cost is measured rather than carried over from the web's ~10%. The
|
|
47
|
+
* control lived in `bench/Perf200.stories.tsx` until the m6 device pass, and a
|
|
48
|
+
* story runs on the Hermes side: only `schemaId` crosses the bridge, so on
|
|
49
|
+
* device the canvas looked the id up, missed, and reported
|
|
50
|
+
* `render: no graph schema registered as "node-graph-demo-control"`. The
|
|
51
|
+
* control condition was therefore unmeasurable on every device.
|
|
52
|
+
*
|
|
53
|
+
* It is a constant here, beside the schema it names, for the same reason the
|
|
54
|
+
* demo id is: it is a string two realms have to agree on.
|
|
55
|
+
*/
|
|
56
|
+
export declare const demoControlSchemaId = "node-graph-demo-control";
|
|
57
|
+
export declare function demoSchemaShape(): {
|
|
58
|
+
id: string;
|
|
59
|
+
nodes: {
|
|
60
|
+
source: {
|
|
61
|
+
kind: "source";
|
|
62
|
+
ports: PortSpec[];
|
|
63
|
+
defaultData: {
|
|
64
|
+
table: string;
|
|
65
|
+
};
|
|
66
|
+
measure: {
|
|
67
|
+
width: number;
|
|
68
|
+
minHeight: number;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
transform: {
|
|
72
|
+
kind: "transform";
|
|
73
|
+
ports: PortSpec[];
|
|
74
|
+
defaultData: {
|
|
75
|
+
expression: string;
|
|
76
|
+
};
|
|
77
|
+
measure: {
|
|
78
|
+
width: number;
|
|
79
|
+
minHeight: number;
|
|
80
|
+
};
|
|
81
|
+
intent: string;
|
|
82
|
+
};
|
|
83
|
+
sink: {
|
|
84
|
+
kind: "sink";
|
|
85
|
+
ports: PortSpec[];
|
|
86
|
+
defaultData: {
|
|
87
|
+
target: string;
|
|
88
|
+
};
|
|
89
|
+
measure: {
|
|
90
|
+
width: number;
|
|
91
|
+
minHeight: number;
|
|
92
|
+
};
|
|
93
|
+
intent: string;
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
export declare function demoSchema(): GraphSchema<DemoNodeData, BuiltinEdgeData>;
|
|
98
|
+
type Doc = GraphDocument<DemoNodeData, BuiltinEdgeData>;
|
|
99
|
+
/** Three nodes, one edge. Small enough that a failing assertion names a node. */
|
|
100
|
+
export declare function demoDocument(): Doc;
|
|
101
|
+
/**
|
|
102
|
+
* Twelve nodes and all four edge kinds — the `Main` story's graph, per design
|
|
103
|
+
* §12.1 ("the default editor, 12 nodes, all four edge kinds").
|
|
104
|
+
*/
|
|
105
|
+
export declare function demoDocumentLarge(count?: number): Doc;
|
|
106
|
+
export {};
|
|
107
|
+
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/react-flow/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C,CAAC;AAkBF;;;;;;GAMG;AACH;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AAEnD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,4BAAiC,CAAC;AAElE,wBAAgB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6B9B;AAED,wBAAgB,UAAU,IAAI,WAAW,CAAC,YAAY,EAAE,eAAe,CAAC,CAYvE;AAED,KAAK,GAAG,GAAG,aAAa,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;AAExD,iFAAiF;AACjF,wBAAgB,YAAY,IAAI,GAAG,CAuBlC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,SAAK,GAAG,GAAG,CAkCjD"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Document → React Flow arrays. Pure, so the mapping can be asserted without
|
|
3
|
+
* mounting anything.
|
|
4
|
+
*
|
|
5
|
+
* Two things happen here that cannot happen later:
|
|
6
|
+
*
|
|
7
|
+
* - **Size seeding (design §5).** Every node carries `width` / `height` from
|
|
8
|
+
* `graphNodeMeasure` BEFORE first paint, so React Flow's per-node
|
|
9
|
+
* `ResizeObserver` CORRECTS a measurement rather than discovering one. On a
|
|
10
|
+
* 200-node knob flip that is the difference between 200 observer callbacks
|
|
11
|
+
* resizing the world and 200 confirming it.
|
|
12
|
+
* - **The edge marker.** `markerEnd` on the edge OBJECT, because React Flow
|
|
13
|
+
* builds its `<marker>` defs from the edges array. Choosing it inside the
|
|
14
|
+
* edge component is too late — measured in task 1.10, where the arrowheads
|
|
15
|
+
* painted and the lines did not.
|
|
16
|
+
*/
|
|
17
|
+
import type { EdgeKindDefs, GraphDocument, GraphSchema, NodeKindDefs, PortSpec } from "../model/index";
|
|
18
|
+
import type { GraphNodeSizeKnob } from "../nodes/nodeMeasure";
|
|
19
|
+
import type { Edge, Node } from "./xy";
|
|
20
|
+
/**
|
|
21
|
+
* What the registered node component receives as `props.data`.
|
|
22
|
+
*
|
|
23
|
+
* A type ALIAS, not an interface. React Flow constrains node data to
|
|
24
|
+
* `Record<string, unknown>`, and TypeScript gives an alias an implicit index
|
|
25
|
+
* signature while an interface has none — so `interface GraphFlowNodeData`
|
|
26
|
+
* does not satisfy `Node<T>` and every call site needs a cast. Same rule that
|
|
27
|
+
* governs the kind maps in `edges/edgeKinds.ts`, and it bites the same way.
|
|
28
|
+
*/
|
|
29
|
+
export type GraphFlowNodeData = {
|
|
30
|
+
readonly kind: string;
|
|
31
|
+
/** The consumer's own node payload. */
|
|
32
|
+
readonly data: unknown;
|
|
33
|
+
readonly ports: readonly PortSpec[];
|
|
34
|
+
/** `NodeKindSpec.intent`, so a kind can carry a semantic colour. */
|
|
35
|
+
readonly intent?: string;
|
|
36
|
+
readonly locked?: boolean;
|
|
37
|
+
};
|
|
38
|
+
export interface FlowMappingOptions {
|
|
39
|
+
/** The resolved `size` knob; picks the per-kind measure row. */
|
|
40
|
+
readonly size: GraphNodeSizeKnob;
|
|
41
|
+
/** `portSpacing({ coarsePointer })`, so the height floor matches the paint. */
|
|
42
|
+
readonly portSpacingPx: number;
|
|
43
|
+
/** One React Flow node type name, registered by `NodeGraphWeb`. */
|
|
44
|
+
readonly nodeType: string;
|
|
45
|
+
}
|
|
46
|
+
export declare function toFlowNodes<N extends NodeKindDefs, E extends EdgeKindDefs>(document: GraphDocument<N, E>, schema: GraphSchema<N, E>, options: FlowMappingOptions): Node<GraphFlowNodeData>[];
|
|
47
|
+
export declare function toFlowEdges<N extends NodeKindDefs, E extends EdgeKindDefs>(document: GraphDocument<N, E>, schema: GraphSchema<N, E>): Edge[];
|
|
48
|
+
/**
|
|
49
|
+
* Carry React Flow's own transient node flags across a re-derive.
|
|
50
|
+
*
|
|
51
|
+
* `selected` and `dragging` live in React Flow's array, not in the document —
|
|
52
|
+
* selecting a node is not an edit. Re-deriving from the document would drop
|
|
53
|
+
* them, so a click would deselect itself the moment anything committed.
|
|
54
|
+
*/
|
|
55
|
+
export declare function preserveFlowState(next: Node<GraphFlowNodeData>[], previous: readonly Node<GraphFlowNodeData>[]): Node<GraphFlowNodeData>[];
|
|
56
|
+
//# sourceMappingURL=flowAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flowAdapter.d.ts","sourceRoot":"","sources":["../../src/react-flow/flowAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EAGb,WAAW,EACX,YAAY,EACZ,QAAQ,EACT,MAAM,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,oEAAoE;IACpE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,+EAA+E;IAC/E,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY,EACxE,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7B,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACzB,OAAO,EAAE,kBAAkB,GAC1B,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAE3B;AAgDD,wBAAgB,WAAW,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY,EACxE,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7B,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GACxB,IAAI,EAAE,CAER;AAqBD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAC/B,QAAQ,EAAE,SAAS,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAC3C,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAkB3B"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The imperative command surface, in a module NEITHER realm owns.
|
|
3
|
+
*
|
|
4
|
+
* Milestone 6's rule (design §9.1): a native consumer cannot put React children
|
|
5
|
+
* inside the canvas, so every control is either a native SIBLING driving the
|
|
6
|
+
* canvas through this handle, or it is rendered INSIDE the DOM bundle from
|
|
7
|
+
* serializable options. That makes the handle the load-bearing surface on both
|
|
8
|
+
* platforms, and it therefore may not live in `dom/`: `NodeGraphDomShell.ts`
|
|
9
|
+
* imports `expo/dom` at its top, and `NodeGraphWeb` — which now publishes the
|
|
10
|
+
* same handle through `graphRef` — must not carry that import into a web build
|
|
11
|
+
* even as an erased type edge.
|
|
12
|
+
*
|
|
13
|
+
* Every method returns void and takes JSON. That is not a style choice:
|
|
14
|
+
* `DOMImperativeFactory` is `{ [key: string]: (...args: JSONValue[]) => void }`,
|
|
15
|
+
* so an answer can only come back as an EVENT. `exportViewport`, `perfStop` and
|
|
16
|
+
* `relayout` each answer on the wire rather than by returning.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Design §9.1's six, plus milestone 6's five.
|
|
20
|
+
*
|
|
21
|
+
* The five are here rather than on a second handle because a consumer holds one
|
|
22
|
+
* ref: a `perfStart` that lived somewhere else would be a second bridge, and
|
|
23
|
+
* the whole reason the wire is one channel is that a second one is a change to
|
|
24
|
+
* the bridge rather than to a type.
|
|
25
|
+
*/
|
|
26
|
+
export interface NodeGraphHandle {
|
|
27
|
+
fitView(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Tidy. It emits `{ t: "layoutResult" }` when the engine answers.
|
|
30
|
+
*
|
|
31
|
+
* It was a documented NO-OP until milestone 6 — the comment said auto-layout
|
|
32
|
+
* was milestone 4 and the method was named early so the bridge surface would
|
|
33
|
+
* not have to change later. Milestone 4 then built the layout engine and
|
|
34
|
+
* never came back here, so `layoutRunner` read `none` on every device: not
|
|
35
|
+
* because the runner failed to resolve, but because nothing on a phone could
|
|
36
|
+
* ask it to run.
|
|
37
|
+
*/
|
|
38
|
+
relayout(): void;
|
|
39
|
+
zoomTo(zoom: number): void;
|
|
40
|
+
centerOn(nodeId: string): void;
|
|
41
|
+
setSelection(ids: string[]): void;
|
|
42
|
+
exportViewport(): void;
|
|
43
|
+
undo(): void;
|
|
44
|
+
redo(): void;
|
|
45
|
+
/** Starts the frame sampler in the realm the canvas paints in. */
|
|
46
|
+
perfStart(label: string): void;
|
|
47
|
+
/** Stops it and emits `{ t: "perfReport" }`. */
|
|
48
|
+
perfStop(label: string): void;
|
|
49
|
+
/** Stamps an instant inside the run, so `relayoutGate` has a window to read. */
|
|
50
|
+
perfMark(label: string): void;
|
|
51
|
+
/**
|
|
52
|
+
* Puts the canvas at an exact viewport, with no animation.
|
|
53
|
+
*
|
|
54
|
+
* Five runs have to start from the same place or the median of five is the
|
|
55
|
+
* median of five experiments. `duration` is deliberately absent: an animated
|
|
56
|
+
* move is still moving when the sampler starts, and the first frames of every
|
|
57
|
+
* run would then measure the seek rather than the gesture.
|
|
58
|
+
*/
|
|
59
|
+
setViewport(x: number, y: number, zoom: number): void;
|
|
60
|
+
/**
|
|
61
|
+
* A synthesised two-finger pinch, dispatched on the PANE — which is the
|
|
62
|
+
* element d3-zoom's touch listener is attached to, and which exists only in
|
|
63
|
+
* the realm the canvas paints in.
|
|
64
|
+
*
|
|
65
|
+
* It is here because the `mobile` MCP has no pinch verb at all (design
|
|
66
|
+
* §13.2), so on a device a pinch can only be produced from inside the
|
|
67
|
+
* WebView. That is also the technique that made the native spike's node-drag
|
|
68
|
+
* measurement unprovable, which is why a pinch row taken this way is reported
|
|
69
|
+
* SEPARATELY and flagged synthetic. On web the same row is taken with
|
|
70
|
+
* Chrome's own `Input.synthesizePinchGesture`, which is a browser-level
|
|
71
|
+
* gesture and a different thing.
|
|
72
|
+
*/
|
|
73
|
+
synthPinch(scale: number, steps: number): void;
|
|
74
|
+
}
|
|
75
|
+
/** What the bridge component registers once the canvas is reachable. */
|
|
76
|
+
export type GraphCommands = NodeGraphHandle;
|
|
77
|
+
export interface GraphCommandSlot {
|
|
78
|
+
current: GraphCommands | null;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* The command NAMES, as data.
|
|
82
|
+
*
|
|
83
|
+
* The two conditional types below are the compile-time half — a method added to
|
|
84
|
+
* `NodeGraphHandle` and not to this tuple, or a name here that is not a method,
|
|
85
|
+
* is a build error. It exists for the same reason `graphEventKinds` does: the
|
|
86
|
+
* shell has to forward every command by hand across `useDOMImperativeHandle`,
|
|
87
|
+
* and a forgotten one is a button that silently does nothing on a phone.
|
|
88
|
+
*/
|
|
89
|
+
export declare const graphCommandNames: readonly ["fitView", "relayout", "zoomTo", "centerOn", "setSelection", "exportViewport", "undo", "redo", "perfStart", "perfStop", "perfMark", "setViewport", "synthPinch"];
|
|
90
|
+
//# sourceMappingURL=graphHandle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphHandle.d.ts","sourceRoot":"","sources":["../../src/react-flow/graphHandle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,IAAI,IAAI,CAAC;IAChB;;;;;;;;;OASG;IACH,QAAQ,IAAI,IAAI,CAAC;IACjB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAClC,cAAc,IAAI,IAAI,CAAC;IACvB,IAAI,IAAI,IAAI,CAAC;IACb,IAAI,IAAI,IAAI,CAAC;IACb,kEAAkE;IAClE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gDAAgD;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;;;;OAOG;IACH,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,eAAe,CAAC;AAE5C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,4KAcpB,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How many node bodies React Flow actually has mounted, right now.
|
|
3
|
+
*
|
|
4
|
+
* WHY THIS EXISTS. Design §9.5's record calls the field `nodesMounted`, and
|
|
5
|
+
* until MPO-211 the DOM entry filled it with `document.nodes.length` — the
|
|
6
|
+
* number of nodes in the DOCUMENT, which is a different number whenever
|
|
7
|
+
* culling is on. On the demo document that is 12 against 10, and the gap is
|
|
8
|
+
* the whole reason AC 2.7's "renders 12 nodes" could not be read off a device
|
|
9
|
+
* screenshot: a panel reporting 12 while ten bodies are painted proves nothing
|
|
10
|
+
* about either number.
|
|
11
|
+
*
|
|
12
|
+
* So the two are reported separately now, and this module owns the harder one.
|
|
13
|
+
* `GraphNodeHost` is the ONE registered React Flow node type, so it mounts once
|
|
14
|
+
* per node React Flow decides to render and unmounts when culling drops one.
|
|
15
|
+
* Counting its instances counts exactly what is on screen, whatever body a
|
|
16
|
+
* consumer's schema renders — a DOM query for the package's own
|
|
17
|
+
* `data-graph-node` would miss a custom body, and a `.react-flow__node`
|
|
18
|
+
* selector is banned outside the token bridge (lint-conventions' GRAPH VARS
|
|
19
|
+
* COVERAGE).
|
|
20
|
+
*
|
|
21
|
+
* The register is a module global rather than React state because two
|
|
22
|
+
* different trees read it: the canvas's own diagnostics, and a story rendering
|
|
23
|
+
* `GraphDiagnostics` beside the canvas. It is per JS REALM, which is the right
|
|
24
|
+
* grain here — inside a WebView there is exactly one canvas, and that is the
|
|
25
|
+
* realm whose number crosses the bridge.
|
|
26
|
+
*
|
|
27
|
+
* `useSyncExternalStore` is the intended reader; `subscribeNodeCensus` and
|
|
28
|
+
* `mountedNodeCount` are its two halves.
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Count a mounted node body. Returns the release, so a caller's effect cleanup
|
|
32
|
+
* is the whole of the unregistration.
|
|
33
|
+
*
|
|
34
|
+
* Keyed by node id rather than counted, so React's mount → unmount → mount in
|
|
35
|
+
* StrictMode, and a double-invoked effect, cannot inflate the number.
|
|
36
|
+
*/
|
|
37
|
+
export declare function registerMountedNode(id: string): () => void;
|
|
38
|
+
export declare function mountedNodeCount(): number;
|
|
39
|
+
export declare function subscribeNodeCensus(listener: () => void): () => void;
|
|
40
|
+
/** Test seam. Never called by the canvas — an unmount releases its own id. */
|
|
41
|
+
export declare function resetNodeCensus(): void;
|
|
42
|
+
//# sourceMappingURL=nodeCensus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodeCensus.d.ts","sourceRoot":"","sources":["../../src/react-flow/nodeCensus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AASH;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,IAAI,CAO1D;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAKpE;AAED,8EAA8E;AAC9E,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The controller: one document, one undo journal, and the four React Flow
|
|
3
|
+
* callbacks that keep them honest.
|
|
4
|
+
*
|
|
5
|
+
* The rule that shapes everything here: **mid-drag is not a document state.**
|
|
6
|
+
* React Flow emits a `position` change per animation frame, so a two-second
|
|
7
|
+
* drag is ~120 of them. Committing each one would fire `onDocumentChange` 120
|
|
8
|
+
* times, hand a consumer 120 autosaves, and bury the undo stack. So the live
|
|
9
|
+
* React Flow array moves on every frame (the drag has to look right) while the
|
|
10
|
+
* DOCUMENT moves once, when React Flow marks the last change `dragging: false`.
|
|
11
|
+
* `useGraphController.spec.tsx` pins that at 30 changes → 1 commit → 1 undo.
|
|
12
|
+
*
|
|
13
|
+
* Controlled and uncontrolled are the same code path with a different source of
|
|
14
|
+
* truth: `commit` always computes the next document and always calls
|
|
15
|
+
* `onDocumentChange`; it only WRITES to local state when uncontrolled. A
|
|
16
|
+
* controlled parent that ignores the callback simply sees nothing move, which
|
|
17
|
+
* is the behaviour every controlled React input has.
|
|
18
|
+
*
|
|
19
|
+
* Design: docs/design/node-graph-editor.md §4.5, §5.
|
|
20
|
+
*/
|
|
21
|
+
import type { ConnectionVerdict, EdgeKindDefs, GraphCommand, GraphDocument, GraphSchema, HistoryOptions, NodeKindDefs } from "../model/index";
|
|
22
|
+
import type { NodeId, Size } from "../model/document";
|
|
23
|
+
import type { LayoutRunnerKind } from "../diagnostics/types";
|
|
24
|
+
import type { GraphLayoutOptions } from "../layout/layout";
|
|
25
|
+
import type { LayoutResult } from "../layout/types";
|
|
26
|
+
import type { GraphNodeSizeKnob } from "../nodes/nodeMeasure";
|
|
27
|
+
import type { GraphFlowNodeData } from "./flowAdapter";
|
|
28
|
+
import type { Connection, Edge, EdgeChange, Node, NodeChange } from "./xy";
|
|
29
|
+
/** Test seam. A module-level dedupe set outlives a test file otherwise. */
|
|
30
|
+
export declare function resetControllerWarnings(): void;
|
|
31
|
+
export interface UseGraphControllerOptions<N extends NodeKindDefs, E extends EdgeKindDefs> {
|
|
32
|
+
readonly schema: GraphSchema<N, E>;
|
|
33
|
+
/** Controlled. Wins over `defaultDocument`, with a warning, when both are passed. */
|
|
34
|
+
readonly document?: GraphDocument<N, E>;
|
|
35
|
+
/** Uncontrolled seed. Read once, at mount. */
|
|
36
|
+
readonly defaultDocument?: GraphDocument<N, E>;
|
|
37
|
+
readonly onDocumentChange?: (document: GraphDocument<N, E>, command: GraphCommand<N, E>) => void;
|
|
38
|
+
/** Called when a DROP is refused, with the verdict `validateDrop` returned. */
|
|
39
|
+
readonly onConnectionRefused?: (verdict: ConnectionVerdict) => void;
|
|
40
|
+
/** Selection still works; nothing else commits. */
|
|
41
|
+
readonly readOnly?: boolean;
|
|
42
|
+
readonly history?: HistoryOptions;
|
|
43
|
+
/** The resolved `size` knob, for the node measure seed. */
|
|
44
|
+
readonly size?: GraphNodeSizeKnob;
|
|
45
|
+
/** Touch surface: widens the port pitch, which raises the node height floor. */
|
|
46
|
+
readonly coarsePointer?: boolean;
|
|
47
|
+
/** The React Flow node type name `NodeGraphWeb` registers. */
|
|
48
|
+
readonly nodeType?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Reads the boxes React Flow has MEASURED, at the moment a relayout starts.
|
|
51
|
+
*
|
|
52
|
+
* A getter rather than a prop: measured sizes change on every observer
|
|
53
|
+
* callback, and holding 200 of them in state would re-render the canvas for
|
|
54
|
+
* a value only `relayout()` ever reads.
|
|
55
|
+
*/
|
|
56
|
+
readonly readMeasuredSizes?: () => Readonly<Record<NodeId, Size>> | undefined;
|
|
57
|
+
}
|
|
58
|
+
export interface GraphController<N extends NodeKindDefs, E extends EdgeKindDefs> {
|
|
59
|
+
readonly document: GraphDocument<N, E>;
|
|
60
|
+
readonly nodes: Node<GraphFlowNodeData>[];
|
|
61
|
+
readonly edges: Edge[];
|
|
62
|
+
readonly onNodesChange: (changes: NodeChange[]) => void;
|
|
63
|
+
readonly onEdgesChange: (changes: EdgeChange[]) => void;
|
|
64
|
+
readonly onConnect: (connection: Connection) => void;
|
|
65
|
+
readonly isValidConnection: (connection: Connection | Edge) => boolean;
|
|
66
|
+
readonly commit: (command: GraphCommand<N, E>) => void;
|
|
67
|
+
readonly undo: () => void;
|
|
68
|
+
readonly redo: () => void;
|
|
69
|
+
readonly canUndo: boolean;
|
|
70
|
+
readonly canRedo: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Tidy the graph. ONE `setPositions` command, one undo, design §8.
|
|
73
|
+
*
|
|
74
|
+
* Resolves with the engine's result even when nothing was committed (an
|
|
75
|
+
* empty document, `readOnly`, or a superseded generation), so a caller can
|
|
76
|
+
* report the runner and the ms without inferring them from a side effect.
|
|
77
|
+
* `null` means there was nothing to lay out.
|
|
78
|
+
*/
|
|
79
|
+
readonly relayout: (options?: GraphRelayoutOptions) => Promise<LayoutResult | null>;
|
|
80
|
+
/** `none` until the first relayout has resolved a runner. */
|
|
81
|
+
readonly layoutRunner: LayoutRunnerKind;
|
|
82
|
+
/** Engine milliseconds of the last relayout. `null` before the first. */
|
|
83
|
+
readonly lastLayoutMs: number | null;
|
|
84
|
+
/** True from the call until its result has been applied. */
|
|
85
|
+
readonly layoutPending: boolean;
|
|
86
|
+
}
|
|
87
|
+
/** Everything `layout()` takes except the measure knobs, which the canvas owns. */
|
|
88
|
+
export type GraphRelayoutOptions = Omit<GraphLayoutOptions, "size" | "coarsePointer">;
|
|
89
|
+
export declare const defaultGraphNodeType = "mpGraphNode";
|
|
90
|
+
export declare function useGraphController<N extends NodeKindDefs, E extends EdgeKindDefs>(options: UseGraphControllerOptions<N, E>): GraphController<N, E>;
|
|
91
|
+
/** Applying a command without a controller — the model half, for a consumer. */
|
|
92
|
+
export declare function applyGraphCommand<N extends NodeKindDefs, E extends EdgeKindDefs>(document: GraphDocument<N, E>, command: GraphCommand<N, E>): GraphDocument<N, E>;
|
|
93
|
+
//# sourceMappingURL=useGraphController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGraphController.d.ts","sourceRoot":"","sources":["../../src/react-flow/useGraphController.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EAEb,WAAW,EACX,cAAc,EACd,YAAY,EACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAM,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAe3E,2EAA2E;AAC3E,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY;IACvF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,qFAAqF;IACrF,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,8CAA8C;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;IACjG,+EAA+E;IAC/E,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpE,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC;IAClC,gFAAgF;IAChF,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;CAC/E;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY;IAC7E,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACrD,QAAQ,CAAC,iBAAiB,EAAE,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,KAAK,OAAO,CAAC;IACvE,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACpF,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACxC,yEAAyE;IACzE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,4DAA4D;IAC5D,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,mFAAmF;AACnF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,eAAe,CAAC,CAAC;AAEtF,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AA8BlD,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY,EAC/E,OAAO,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAsSvB;AAgBD,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,YAAY,EAC9E,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC7B,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1B,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAErB"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* THE ONLY `@xyflow` import site in this package.
|
|
3
|
+
*
|
|
4
|
+
* `no-restricted-imports` in the repo's `oxlintrc.json` refuses `@xyflow/*`
|
|
5
|
+
* everywhere else under `public/node-graph/src`, so a React Flow major bump has
|
|
6
|
+
* exactly one reconciliation site instead of thirty. `xy.spec.ts` asserts every
|
|
7
|
+
* name below still resolves and that the installed version is inside the range
|
|
8
|
+
* `package.json` declares, so an upgrade fails CI rather than a user.
|
|
9
|
+
*
|
|
10
|
+
* The list is deliberately narrow. It is what the editor uses, not a mirror of
|
|
11
|
+
* upstream — a name nobody imports is a name nobody reconciles. Add one here
|
|
12
|
+
* (and to the spec's list) when a task actually needs it.
|
|
13
|
+
*
|
|
14
|
+
* Upgrade runbook: README.md.
|
|
15
|
+
*
|
|
16
|
+
* ONE name comes from `@xyflow/system` rather than `@xyflow/react`:
|
|
17
|
+
* `getHandlePosition`. React Flow does not re-export it (its own index re-lists
|
|
18
|
+
* `getBezierPath` and friends and stops there), and it is the function that
|
|
19
|
+
* turns a handle's measured BOX into the point an edge is drawn to — which is
|
|
20
|
+
* the whole reason the 44pt hit region is a pseudo-element and not element
|
|
21
|
+
* growth (design 7.1 H2). Asserting that law against our own reimplementation
|
|
22
|
+
* would prove nothing, so the spec calls the real one. `package.json` pins
|
|
23
|
+
* `@xyflow/system` to the exact version `@xyflow/react` pins, and `xy.spec.ts`
|
|
24
|
+
* fails if the two ever split.
|
|
25
|
+
*/
|
|
26
|
+
export { getHandlePosition } from "@xyflow/system";
|
|
27
|
+
export type { Handle as HandleBounds, InternalNodeBase } from "@xyflow/system";
|
|
28
|
+
export { applyEdgeChanges, applyNodeChanges, Background, BaseEdge, Controls, EdgeLabelRenderer, getBezierPath, getSmoothStepPath, getStraightPath, Handle, MarkerType, MiniMap, Position, ReactFlow, ReactFlowProvider, SelectionMode, useEdgesState, useNodesState, useReactFlow, useStore, useStoreApi, useUpdateNodeInternals,
|
|
29
|
+
/**
|
|
30
|
+
* The guide layer has to live INSIDE `.react-flow__viewport` so the pan and
|
|
31
|
+
* zoom transform applies to it for free (design §7.2 S10). This portal is the
|
|
32
|
+
* only supported way in; rendering a sibling and re-deriving the transform is
|
|
33
|
+
* how a guide ends up one frame behind the node it points at.
|
|
34
|
+
*/
|
|
35
|
+
ViewportPortal, } from "@xyflow/react";
|
|
36
|
+
export type { ColorMode, Connection, Edge, EdgeChange, EdgeMarkerType, EdgeProps, EdgeTypes, HandleType, IsValidConnection, Node, NodeChange, NodeProps, NodeTypes, OnConnect, ReactFlowInstance, Viewport, XYPosition, } from "@xyflow/react";
|
|
37
|
+
/**
|
|
38
|
+
* The installed React Flow version, as a plain string.
|
|
39
|
+
*
|
|
40
|
+
* Diagnostics has to report it (design §9.5) and only THIS file may reach
|
|
41
|
+
* `@xyflow`, so it is declared here rather than read at the use site. A literal
|
|
42
|
+
* rather than an import of `@xyflow/react/package.json`: that path is not in
|
|
43
|
+
* the package's exports map on every condition, and a bundler that cannot
|
|
44
|
+
* resolve it would take the whole canvas down to report a version string.
|
|
45
|
+
*
|
|
46
|
+
* `xy.spec.ts` asserts this equals the installed version, so it cannot drift
|
|
47
|
+
* from reality — an upgrade that forgets it fails CI rather than a user.
|
|
48
|
+
*/
|
|
49
|
+
export declare const xyflowVersion = "12.11.5";
|
|
50
|
+
/**
|
|
51
|
+
* The class React Flow puts on its pane element.
|
|
52
|
+
*
|
|
53
|
+
* A class name is part of @xyflow's DOM contract exactly as its exported
|
|
54
|
+
* symbols are, so it belongs at the same boundary they do. The long press has
|
|
55
|
+
* to FIND the pane to listen on it (`useLassoSelect.ts`) — that is a DOM
|
|
56
|
+
* lookup, not a paint rule, and a paint rule is what `checkGraphVarsCoverage`
|
|
57
|
+
* exists to keep out of `src`. Hardcoding the string at the call site would
|
|
58
|
+
* have been the wrong kind of coupling either way: when an upgrade renames the
|
|
59
|
+
* class, a `querySelector` returns null and the long press dies in silence, so
|
|
60
|
+
* the rename should have exactly one place to land.
|
|
61
|
+
*/
|
|
62
|
+
export declare const reactFlowPaneSelector = ".react-flow__pane";
|
|
63
|
+
/**
|
|
64
|
+
* The class React Flow puts on a node element. Same boundary rule as
|
|
65
|
+
* `reactFlowPaneSelector`, and for the same reason: it is a DOM lookup, not a
|
|
66
|
+
* paint rule, and a rename should have exactly one place to land.
|
|
67
|
+
*
|
|
68
|
+
* The lookup this exists for is `NodeGraph/AutoLayout`'s position stamp, which
|
|
69
|
+
* reads each node's CSS `transform` — React Flow places a node with a
|
|
70
|
+
* transform and never with a layout offset, so `offsetLeft` / `offsetTop` are
|
|
71
|
+
* 0 at every arrangement and a stamp built on them is a constant.
|
|
72
|
+
*/
|
|
73
|
+
export declare const reactFlowNodeSelector = ".react-flow__node";
|
|
74
|
+
/**
|
|
75
|
+
* The class React Flow puts on the pan/zoom viewport — the ONE element whose
|
|
76
|
+
* transform carries the whole canvas.
|
|
77
|
+
*
|
|
78
|
+
* Same boundary rule as the pane and node selectors. The frame sampler's
|
|
79
|
+
* `didMove` probe (design §13.2) reads this transform to tell a real pan from
|
|
80
|
+
* an idle page, and a rename that silently returned `null` there would turn
|
|
81
|
+
* every perf run into a discarded one with no explanation.
|
|
82
|
+
*/
|
|
83
|
+
export declare const reactFlowViewportSelector = ".react-flow__viewport";
|
|
84
|
+
//# sourceMappingURL=xy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xy.d.ts","sourceRoot":"","sources":["../../src/react-flow/xy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,MAAM,IAAI,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE/E,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,MAAM,EACN,UAAU,EACV,OAAO,EACP,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,sBAAsB;AACtB;;;;;GAKG;AACH,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,SAAS,EACT,UAAU,EACV,IAAI,EACJ,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,YAAY,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gets the `$body` face into the WebView, asset URL first, bytes second.
|
|
3
|
+
*
|
|
4
|
+
* Design §6.3's two mechanisms, in the order it names them:
|
|
5
|
+
*
|
|
6
|
+
* 1. **Asset URL.** A consumer hands in the URL Expo produced from a
|
|
7
|
+
* `require()` of the face. Nothing rides in the bundle for that face.
|
|
8
|
+
* 2. **Inline base64.** Whatever the first path did not deliver, this does.
|
|
9
|
+
* Proven, and the reason `faces.generated.ts` exists.
|
|
10
|
+
*
|
|
11
|
+
* The switch between them is not a guess. `document.fonts.load` is awaited and
|
|
12
|
+
* `document.fonts.check` is read back, so a URL that 404s inside the WebView —
|
|
13
|
+
* the exact failure that makes the primary path unverified on device — demotes
|
|
14
|
+
* that face to its bytes instead of leaving the canvas in a fallback family
|
|
15
|
+
* nobody notices.
|
|
16
|
+
*
|
|
17
|
+
* IMPORTING THIS PULLS THE PAYLOAD. `faces.generated.ts` is ~200 KB of base64
|
|
18
|
+
* and this module's default argument references it, so a consumer that already
|
|
19
|
+
* registers Inter (every web app in this repo does, through Tamagui) should not
|
|
20
|
+
* mount `GraphFaces` at all. The DOM bundle is who it is for.
|
|
21
|
+
*
|
|
22
|
+
* Design: docs/design/node-graph-editor.md §6.3.
|
|
23
|
+
*/
|
|
24
|
+
import { type ReactNode } from "react";
|
|
25
|
+
import { type GraphFaceAsset } from "./faces";
|
|
26
|
+
/** Which of the two mechanisms actually delivered a face. */
|
|
27
|
+
export type GraphFaceSource = "asset" | "inline" | "pending" | "failed";
|
|
28
|
+
/** Per-face outcome, for the diagnostics panel and the `FontProof` story. */
|
|
29
|
+
export interface GraphFaceStatus {
|
|
30
|
+
readonly id: string;
|
|
31
|
+
readonly family: string;
|
|
32
|
+
readonly weight: number;
|
|
33
|
+
readonly source: GraphFaceSource;
|
|
34
|
+
}
|
|
35
|
+
export interface GraphFacesProps {
|
|
36
|
+
/** Defaults to the generated payload. */
|
|
37
|
+
readonly faces?: readonly GraphFaceAsset[];
|
|
38
|
+
/**
|
|
39
|
+
* `require()`d asset URLs by face id. A face named here is tried from its URL
|
|
40
|
+
* first; a face absent here goes straight to its bytes.
|
|
41
|
+
*/
|
|
42
|
+
readonly assetUris?: Readonly<Record<string, string>>;
|
|
43
|
+
/**
|
|
44
|
+
* How long to wait for the asset URL before falling back, in ms.
|
|
45
|
+
*
|
|
46
|
+
* 1500, well inside the native watchdog's 4000 ms (design §9.4 layer 4), so a
|
|
47
|
+
* slow face degrades to base64 rather than letting the whole WebView be
|
|
48
|
+
* declared dead.
|
|
49
|
+
*/
|
|
50
|
+
readonly timeoutMs?: number;
|
|
51
|
+
readonly onStatus?: (statuses: readonly GraphFaceStatus[]) => void;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Resolves each face to the mechanism that actually delivered it.
|
|
55
|
+
*
|
|
56
|
+
* Returns the URIs still worth honouring, so the sheet re-renders with base64
|
|
57
|
+
* for the ones that did not answer.
|
|
58
|
+
*/
|
|
59
|
+
export declare function useGraphFaces(faces: readonly GraphFaceAsset[], assetUris: Readonly<Record<string, string>> | undefined, timeoutMs: number): {
|
|
60
|
+
readonly uris: Readonly<Record<string, string>>;
|
|
61
|
+
readonly statuses: readonly GraphFaceStatus[];
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* The `@font-face` sheet, plus the asset-URL-first resolution behind it.
|
|
65
|
+
*
|
|
66
|
+
* Renders NOTHING where there is no DOM, and that is not defensive coding — it
|
|
67
|
+
* is the component being honest about what it is. This is a `<style>` element
|
|
68
|
+
* and nothing else; `<style>` is a browser intrinsic, and React Native answers a
|
|
69
|
+
* lowercase intrinsic it does not know with
|
|
70
|
+
* `View config getter callback for component "style" must be a function`, which
|
|
71
|
+
* takes the whole tree down. Measured on the iPhone 16e at task 2.7: the
|
|
72
|
+
* `NodeGraph/GraphNode` → `FontProof` story mounts this directly and died
|
|
73
|
+
* exactly there, on a device where the story's own error boundary was the only
|
|
74
|
+
* thing between it and a blank screen.
|
|
75
|
+
*
|
|
76
|
+
* The hooks run either way, so the rules of hooks hold and the status callback
|
|
77
|
+
* still fires; only the element is withheld. A caller on native gets `null` and
|
|
78
|
+
* should read `GraphDiagnostics`, where the probe that ran INSIDE the WebView
|
|
79
|
+
* arrives over the `ready` event.
|
|
80
|
+
*/
|
|
81
|
+
export declare function GraphFaces({ faces, assetUris, timeoutMs, onStatus, }: GraphFacesProps): ReactNode;
|
|
82
|
+
//# sourceMappingURL=GraphFaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphFaces.d.ts","sourceRoot":"","sources":["../../src/theme/GraphFaces.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAgC,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,KAAK,cAAc,EAAgB,MAAM,SAAS,CAAC;AAG5D,6DAA6D;AAC7D,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExE,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,KAAK,IAAI,CAAC;CACpE;AAuBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,SAAS,cAAc,EAAE,EAChC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,EACvD,SAAS,EAAE,MAAM,GAChB;IACD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;CAC/C,CAqFA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAA2B,EAC3B,SAAS,EACT,SAAgB,EAChB,QAAQ,GACT,EAAE,eAAe,GAAG,SAAS,CAe7B"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The var layer as one `<style>` tag, plus the adapter that reads a live
|
|
3
|
+
* Tamagui theme into `GraphThemeAccess`.
|
|
4
|
+
*
|
|
5
|
+
* Design 6.2 names this file `GraphVars.tsx`, next to `graphVars.ts`. Those two
|
|
6
|
+
* are the SAME module specifier on a case-insensitive filesystem, and the
|
|
7
|
+
* resolver's extension order (.ts before .tsx) means `import … from
|
|
8
|
+
* "./GraphVars"` silently returns `graphVars.ts` — measured on macOS, where
|
|
9
|
+
* `head ./GraphVars.ts` prints the pure module. The COMPONENT keeps its design
|
|
10
|
+
* name; only the file gains a suffix, so `graphVars.ts` and the lint check's
|
|
11
|
+
* exemption path are unchanged.
|
|
12
|
+
*
|
|
13
|
+
* Design: docs/design/node-graph-editor.md 6.2.
|
|
14
|
+
*/
|
|
15
|
+
import { type ReactNode } from "react";
|
|
16
|
+
import type { ResolvedKnobs } from "@multiplatform.one/theme";
|
|
17
|
+
import { type GraphCssVarsOptions, type GraphThemeAccess } from "./graphVars";
|
|
18
|
+
/**
|
|
19
|
+
* The class the graph root carries; every rule in `css/graph.css` is scoped to it.
|
|
20
|
+
*
|
|
21
|
+
* `mp-graph`, not `mp-graph-root`: design 7.1 and 7.5 write the selectors as
|
|
22
|
+
* `.mp-graph .react-flow__handle` and `.mp-graph .react-flow__pane`, and the
|
|
23
|
+
* port rules landed by task 1.9 use that prefix. One name, and it is the
|
|
24
|
+
* design's. Nothing outside this constant may spell it.
|
|
25
|
+
*/
|
|
26
|
+
export declare const graphRootClassName = "mp-graph";
|
|
27
|
+
export interface GraphVarsProps {
|
|
28
|
+
/** The `--xy-*` / `--mpo-graph-*` layer, from `graphCssVars` or straight off the envelope. */
|
|
29
|
+
readonly vars: Readonly<Record<string, string>>;
|
|
30
|
+
readonly scheme: "light" | "dark";
|
|
31
|
+
/**
|
|
32
|
+
* The envelope's revision. The sheet is rebuilt on THIS and nothing else:
|
|
33
|
+
* `vars` is derived from the envelope, so its revision is the authority on
|
|
34
|
+
* whether anything moved, and a fresh `vars` object identity on every render
|
|
35
|
+
* would otherwise re-serialize the whole sheet at 60 Hz during a drag.
|
|
36
|
+
* `graphCss.spec.ts` pins that behaviour rather than leaving it as a comment.
|
|
37
|
+
*/
|
|
38
|
+
readonly revision: number;
|
|
39
|
+
/** Scope selector. Defaults to the graph root class. */
|
|
40
|
+
readonly selector?: string;
|
|
41
|
+
}
|
|
42
|
+
/** A CSS custom-property block, deterministic in key order so a diff is readable. */
|
|
43
|
+
export declare function graphVarsSheet(vars: Readonly<Record<string, string>>, scheme: "light" | "dark", selector: string): string;
|
|
44
|
+
export declare function GraphVars({ vars, scheme, revision, selector }: GraphVarsProps): ReactNode;
|
|
45
|
+
/**
|
|
46
|
+
* Read a live Tamagui theme into the two forms `graphCssVars` needs.
|
|
47
|
+
*
|
|
48
|
+
* The CSS form comes from the Variable itself (`var(--…)` on web) rather than
|
|
49
|
+
* from a reconstructed prefix, so nothing here has to know how Tamagui names
|
|
50
|
+
* its custom properties. The raw form is the literal value, and is used only by
|
|
51
|
+
* the two blended entries.
|
|
52
|
+
*/
|
|
53
|
+
export declare function useGraphThemeAccess(): GraphThemeAccess;
|
|
54
|
+
/** `graphCssVars` against the live theme. */
|
|
55
|
+
export declare function useGraphCssVars(resolved: ResolvedKnobs, options?: GraphCssVarsOptions): Record<string, string>;
|
|
56
|
+
//# sourceMappingURL=GraphVarsStyle.d.ts.map
|