@weasel-js/core 1.15.0 → 1.15.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/CHANGELOG.md +199 -0
- package/dist/WeaselProvider.js +4 -5
- package/dist/affordances/composeAffordanceLayer.js +1 -2
- package/dist/affordances/cornerResize.js +4 -5
- package/dist/affordances/hitAffordanceRegions.js +1 -2
- package/dist/affordances/pathAnchors.js +1 -2
- package/dist/affordances/rotateCursor.js +1 -2
- package/dist/affordances/rotationHandle.js +2 -3
- package/dist/animation/behaviors/coast.js +1 -2
- package/dist/animation/behaviors/coastByWrite.js +2 -3
- package/dist/animation/behaviors/coastOnTargets.js +2 -3
- package/dist/animation/behaviors/momentum.js +1 -2
- package/dist/animation/clipTargets.js +1 -2
- package/dist/animation/departures.js +2 -3
- package/dist/animation/poseHelpers.js +2 -3
- package/dist/animation/poseTarget.js +5 -6
- package/dist/animation/poseTarget.js.map +1 -1
- package/dist/animation/poseTransition.js +1 -2
- package/dist/animation/reflow.js +9 -10
- package/dist/animation/reflow.js.map +1 -1
- package/dist/animation/rewind.js +1 -2
- package/dist/animation/rig/bindRig.js +2 -3
- package/dist/animation/rig/rigNode.js +3 -4
- package/dist/animation/rig/rigNode.js.map +1 -1
- package/dist/animation/rig/rigSeat.js +1 -2
- package/dist/animation/rig/skinBinding.js +1 -2
- package/dist/animation/rig/useRig.js +2 -3
- package/dist/animation/wrappers/animateLifecycle.js +1 -2
- package/dist/animation/wrappers/animateOnSetPose.js +1 -2
- package/dist/animation/wrappers/instantPose.js +1 -2
- package/dist/animation/writtenPoseTarget.js +1 -2
- package/dist/barrel/input.js +2 -1
- package/dist/barrel/interactions.js +2 -1
- package/dist/barrel/paint.js +2 -2
- package/dist/barrel/routing.js +2 -2
- package/dist/barrel/scene.js +2 -2
- package/dist/barrel/viewport.js +3 -3
- package/dist/canvas/Canvas.js +5 -6
- package/dist/canvas/CanvasView.js +6 -7
- package/dist/canvas/CursorCoordsHud.js +2 -3
- package/dist/canvas/DrawCanvas.js +3 -4
- package/dist/canvas/GestureReason.js +1 -2
- package/dist/canvas/GestureReason.module.js +1 -2
- package/dist/canvas/LeanSceneCanvas.js +2 -3
- package/dist/canvas/ModalityHud.js +2 -3
- package/dist/canvas/NodeShape.js +3 -4
- package/dist/canvas/PickHud.js +2 -3
- package/dist/canvas/SceneCanvas/ActionsProviderIfRoot.js +1 -2
- package/dist/canvas/SceneCanvas/CanvasKitProviders.js +3 -4
- package/dist/canvas/SceneCanvas/DepRegistryProviderIfRoot.js +1 -2
- package/dist/canvas/SceneCanvas/DevHuds.js +1 -2
- package/dist/canvas/SceneCanvas/PointerProviderIfRoot.js +18 -66
- package/dist/canvas/SceneCanvas/PointerProviderIfRoot.js.map +1 -1
- package/dist/canvas/SceneCanvas/SceneCanvasInput.js +4 -5
- package/dist/canvas/SceneCanvas/SurfaceDeclarations.js +1 -2
- package/dist/canvas/SceneCanvas/brushOverlay.js +1 -2
- package/dist/canvas/SceneCanvas/builtinToolSets.js +1 -2
- package/dist/canvas/SceneCanvas/canvasPassThrough.js +1 -2
- package/dist/canvas/SceneCanvas/contributionFrameHooks.js +1 -2
- package/dist/canvas/SceneCanvas/coordTrace.js +1 -2
- package/dist/canvas/SceneCanvas/defaultNodeProperties.js +3 -4
- package/dist/canvas/SceneCanvas/defaultNodeRouting.js +1 -2
- package/dist/canvas/SceneCanvas/defaultTextEditor.js +4 -5
- package/dist/canvas/SceneCanvas/describePresets.js +1 -2
- package/dist/canvas/SceneCanvas/dispatcherGestureBounds.js +1 -2
- package/dist/canvas/SceneCanvas/features.js +1 -2
- package/dist/canvas/SceneCanvas/insertPreviewCommands.js +1 -2
- package/dist/canvas/SceneCanvas/mergeLayers.js +1 -2
- package/dist/canvas/SceneCanvas/namedPresets.js +5 -6
- package/dist/canvas/SceneCanvas/poseGeometry.js +1 -2
- package/dist/canvas/SceneCanvas/poseRegistrars.js +1 -2
- package/dist/canvas/SceneCanvas/presets/arrange.js +2 -3
- package/dist/canvas/SceneCanvas/presets/baseline.js +1 -2
- package/dist/canvas/SceneCanvas/presets/chrome.js +1 -2
- package/dist/canvas/SceneCanvas/presets/composites.js +1 -2
- package/dist/canvas/SceneCanvas/presets/edit.js +4 -5
- package/dist/canvas/SceneCanvas/presets/ingest.js +1 -2
- package/dist/canvas/SceneCanvas/presets/paths.js +3 -4
- package/dist/canvas/SceneCanvas/presets/select.js +1 -2
- package/dist/canvas/SceneCanvas/presets/toolDriven.js +2 -3
- package/dist/canvas/SceneCanvas/presets/tools.js +1 -2
- package/dist/canvas/SceneCanvas/presets/transform.js +2 -3
- package/dist/canvas/SceneCanvas/presets/view.js +2 -3
- package/dist/canvas/SceneCanvas/props.js +1 -2
- package/dist/canvas/SceneCanvas/scenePointQuery.js +2 -3
- package/dist/canvas/SceneCanvas/shapeGeneratorProperties.js +1 -2
- package/dist/canvas/SceneCanvas/toolRegistry.js +2 -3
- package/dist/canvas/SceneCanvas/useActionTunings.js +1 -2
- package/dist/canvas/SceneCanvas/useActionsPropResolver.js +1 -2
- package/dist/canvas/SceneCanvas/useBakedScene.js +2 -3
- package/dist/canvas/SceneCanvas/useBuiltinShapeTools.js +7 -8
- package/dist/canvas/SceneCanvas/useBuiltinTools.js +2 -3
- package/dist/canvas/SceneCanvas/useCanvasCamera.js +2 -3
- package/dist/canvas/SceneCanvas/useCanvasDevtoolsRoot.js +1 -2
- package/dist/canvas/SceneCanvas/useCanvasDispatcher.js +1 -2
- package/dist/canvas/SceneCanvas/useCanvasSelection.js +8 -6
- package/dist/canvas/SceneCanvas/useCanvasSelection.js.map +1 -1
- package/dist/canvas/SceneCanvas/useCanvasTools.js +2 -3
- package/dist/canvas/SceneCanvas/useChromeAffordances.js +2 -3
- package/dist/canvas/SceneCanvas/useContributionRoles.js +1 -2
- package/dist/canvas/SceneCanvas/useDepartureGhostLayer.js +4 -5
- package/dist/canvas/SceneCanvas/useDispatcherOverlayLayer.js +2 -3
- package/dist/canvas/SceneCanvas/useHeldModifiers.js +1 -2
- package/dist/canvas/SceneCanvas/useMagnificationCheck.js +41 -0
- package/dist/canvas/SceneCanvas/useMagnificationCheck.js.map +1 -0
- package/dist/canvas/SceneCanvas/useNodeAtPoint.js +1 -2
- package/dist/canvas/SceneCanvas/useNodeKinds.js +2 -3
- package/dist/canvas/SceneCanvas/usePreviewGhostLayer.js +10 -11
- package/dist/canvas/SceneCanvas/useSceneCanvasHandle.js +1 -2
- package/dist/canvas/SceneCanvas/useSceneCanvasLayers.js +6 -7
- package/dist/canvas/SceneCanvas/useSceneCanvasPathEdit.js +1 -2
- package/dist/canvas/SceneCanvas/useSceneCanvasTools.js +1 -2
- package/dist/canvas/SceneCanvas/useSceneChrome.js +5 -6
- package/dist/canvas/SceneCanvas/useSceneGestureDispatcher.js +6 -7
- package/dist/canvas/SceneCanvas/useScenePicking.js +5 -6
- package/dist/canvas/SceneCanvas/useSceneRedrawSources.js +1 -2
- package/dist/canvas/SceneCanvas/useSceneSelectTool.js +7 -8
- package/dist/canvas/SceneCanvas/useSceneSlotLayers.js +2 -3
- package/dist/canvas/SceneCanvas/useSceneStandardActions.js +26 -18
- package/dist/canvas/SceneCanvas/useSceneStandardActions.js.map +1 -1
- package/dist/canvas/SceneCanvas/useSelectionOverlayLayer.js +2 -3
- package/dist/canvas/SceneCanvas/useSurfaceRouting.js +1 -2
- package/dist/canvas/SceneCanvas/useSurfaceViewInputs.js +1 -2
- package/dist/canvas/SceneCanvas/useToolKeybindings.js +1 -2
- package/dist/canvas/SceneCanvas/useViewportActions.js +3 -4
- package/dist/canvas/SceneCanvas/worldPointAt.js +1 -2
- package/dist/canvas/SceneCanvas.js +18 -17
- package/dist/canvas/SceneCanvas.js.map +1 -1
- package/dist/canvas/SceneViewCanvas.js +2 -3
- package/dist/canvas/SurfaceCanvas.js +1 -2
- package/dist/canvas/ViewMarker.js +1 -2
- package/dist/canvas/accentColor.js +4 -5
- package/dist/canvas/accentColor.js.map +1 -1
- package/dist/canvas/adapterDerivedPath.js +2 -3
- package/dist/canvas/adapterPickSource.js +1 -2
- package/dist/canvas/affordanceAt.js +2 -3
- package/dist/canvas/buildSceneLayer.js +4 -5
- package/dist/canvas/buildSceneTree.js +4 -5
- package/dist/canvas/canvasRenderer.js +1 -2
- package/dist/canvas/colorOverrides.js +1 -2
- package/dist/canvas/contextAttributes.js +1 -2
- package/dist/canvas/copiesAbove.js +1 -2
- package/dist/canvas/defaultDrawOne.js +1 -2
- package/dist/canvas/deps/areaSelect.js +5 -3
- package/dist/canvas/deps/areaSelect.js.map +1 -1
- package/dist/canvas/deps/booleans.js +5 -6
- package/dist/canvas/deps/changes.js +1 -2
- package/dist/canvas/deps/chromeRules.js +1 -2
- package/dist/canvas/deps/debug.js +1 -2
- package/dist/canvas/deps/dispatchSources.js +1 -2
- package/dist/canvas/deps/dispatcher.js +1 -2
- package/dist/canvas/deps/editAnchors.js +3 -4
- package/dist/canvas/deps/enteredGroup.js +6 -6
- package/dist/canvas/deps/enteredGroup.js.map +1 -1
- package/dist/canvas/deps/geometryProjection.js +1 -2
- package/dist/canvas/deps/hitTestArea.js +4 -5
- package/dist/canvas/deps/ingestion.js +1 -2
- package/dist/canvas/deps/insert.js +3 -4
- package/dist/canvas/deps/insertSite.js +3 -4
- package/dist/canvas/deps/kitSettings.js +1 -2
- package/dist/canvas/deps/lassoSelect.js +5 -3
- package/dist/canvas/deps/lassoSelect.js.map +1 -1
- package/dist/canvas/deps/layout.js +1 -2
- package/dist/canvas/deps/modeDefaultTool.js +1 -2
- package/dist/canvas/deps/nodeAtPoint.js +1 -2
- package/dist/canvas/deps/pathEditCommits.js +4 -5
- package/dist/canvas/deps/pathLeaf.js +1 -2
- package/dist/canvas/deps/pathLeafDeps.js +2 -3
- package/dist/canvas/deps/poseDescriptor.js +1 -2
- package/dist/canvas/deps/previewPaths.js +1 -2
- package/dist/canvas/deps/resizePolicy.js +1 -2
- package/dist/canvas/deps/selectionSnapshot.js +8 -4
- package/dist/canvas/deps/selectionSnapshot.js.map +1 -1
- package/dist/canvas/deps/slice.js +5 -6
- package/dist/canvas/deps/snap.js +3 -4
- package/dist/canvas/deps/surface.js +1 -2
- package/dist/canvas/deps/textEdit.js +1 -2
- package/dist/canvas/deps/transformFollowers.js +1 -2
- package/dist/canvas/deps/view.js +1 -2
- package/dist/canvas/derivedPath.js +6 -7
- package/dist/canvas/doubleClickTarget.js +1 -2
- package/dist/canvas/drawEnvelope.js +1 -2
- package/dist/canvas/drawnBounds.js +4 -5
- package/dist/canvas/getNodeAtPoint.js +1 -2
- package/dist/canvas/hostAnchor.js +1 -2
- package/dist/canvas/hud.module.js +1 -2
- package/dist/canvas/inheritedPaints.js +1 -2
- package/dist/canvas/insertPreviewExtent.js +1 -2
- package/dist/canvas/kitRequirements.js +1 -2
- package/dist/canvas/layerHover.js +1 -2
- package/dist/canvas/layerOrder.js +1 -2
- package/dist/canvas/layerSlots.js +1 -2
- package/dist/canvas/mountedCanvases.js +1 -2
- package/dist/canvas/nodeShapes/derivedPainter.js +2 -3
- package/dist/canvas/nodeShapes/imagePainter.js +1 -2
- package/dist/canvas/nodeShapes/measurePainter.js +2 -3
- package/dist/canvas/nodeShapes/memo.js +1 -2
- package/dist/canvas/nodeShapes/nodePaint.js +1 -2
- package/dist/canvas/nodeShapes/pathPainter.js +3 -4
- package/dist/canvas/nodeShapes/poseBox.js +1 -2
- package/dist/canvas/nodeShapes/rectFallbackPainter.js +1 -2
- package/dist/canvas/nodeShapes/shapePainter.js +2 -3
- package/dist/canvas/nodeShapes/strokedBounds.js +1 -2
- package/dist/canvas/nodeShapes/textPainter.js +1 -2
- package/dist/canvas/overChildren.js +1 -2
- package/dist/canvas/overlayRoleStrokes.js +1 -2
- package/dist/canvas/ownClip.js +1 -2
- package/dist/canvas/paintCull.js +1 -2
- package/dist/canvas/paintedCursorLayer.js +1 -2
- package/dist/canvas/pathOverlay.js +1 -2
- package/dist/canvas/pickIndex/nodeBroadBox.js +3 -4
- package/dist/canvas/pickIndex/scenePickIndex.js +3 -4
- package/dist/canvas/pickReach.js +1 -2
- package/dist/canvas/pickWalk.js +2 -3
- package/dist/canvas/planeClips.js +1 -2
- package/dist/canvas/poseRotation.js +1 -2
- package/dist/canvas/publishPreviews.js +1 -2
- package/dist/canvas/rasterReadback.js +1 -2
- package/dist/canvas/rasterToPng.js +1 -2
- package/dist/canvas/renderDebugSnapshot.js +1 -2
- package/dist/canvas/renderNeeds.js +1 -2
- package/dist/canvas/renderSceneToPixels.js +5 -6
- package/dist/canvas/sceneAdapter.js +37 -27
- package/dist/canvas/sceneAdapter.js.map +1 -1
- package/dist/canvas/sceneClipboard.js +19 -7
- package/dist/canvas/sceneClipboard.js.map +1 -1
- package/dist/canvas/sceneLayerPaint.js +1 -2
- package/dist/canvas/scenePickReads.js +1 -2
- package/dist/canvas/scenePickSource.js +5 -6
- package/dist/canvas/sceneSlotWiring.js +2 -3
- package/dist/canvas/sceneViewRender.js +5 -6
- package/dist/canvas/shownNodes.js +1 -2
- package/dist/canvas/slopsDebugLayer.js +9 -4
- package/dist/canvas/slopsDebugLayer.js.map +1 -1
- package/dist/canvas/surfaceContribution.js +1 -2
- package/dist/canvas/useCanvasElements.js +1 -2
- package/dist/canvas/useCanvasHandle.js +1 -2
- package/dist/canvas/useCanvasPaint.js +2 -3
- package/dist/canvas/useCanvasRenderer.js +1 -2
- package/dist/canvas/useCanvasSurface.js +1 -2
- package/dist/canvas/useCanvasView.js +2 -3
- package/dist/canvas/useClientToWorld.js +1 -2
- package/dist/canvas/useExtraLayers.js +1 -2
- package/dist/canvas/useFrameLoop.js +1 -2
- package/dist/canvas/useHitObserver.js +1 -2
- package/dist/canvas/useHostAnchor.js +1 -2
- package/dist/canvas/useInFlightBounds.js +6 -6
- package/dist/canvas/useInFlightBounds.js.map +1 -1
- package/dist/canvas/useLateContentRedraw.js +1 -2
- package/dist/canvas/useLayerStack.js +2 -3
- package/dist/canvas/usePaintedCursor.js +1 -2
- package/dist/canvas/useRedrawOn.js +1 -2
- package/dist/canvas/useSceneAdapter.js +1 -2
- package/dist/canvas/useSceneLayerList.js +1 -2
- package/dist/canvas/useSurfaceInput.js +1 -2
- package/dist/canvas/useSurfaceSize.js +1 -2
- package/dist/canvas/useToolCursor.js +1 -2
- package/dist/canvas/useViewAim.js +2 -3
- package/dist/canvas/useViewHelpers.js +5 -4
- package/dist/canvas/useViewHelpers.js.map +1 -1
- package/dist/canvas/useViewLayerGate.js +1 -2
- package/dist/canvas/useViewNesting.js +1 -2
- package/dist/canvas/useViewRegistrySurface.js +7 -5
- package/dist/canvas/useViewRegistrySurface.js.map +1 -1
- package/dist/canvas/viewInputs.js +1 -2
- package/dist/canvas/viewMarkers.js +1 -2
- package/dist/canvas/viewRegistry.js +6 -7
- package/dist/canvas/viewRegistry.js.map +1 -1
- package/dist/canvas/viewSnap.js +1 -2
- package/dist/canvas/watchElementMove.js +1 -2
- package/dist/canvas/wrapNodeOutput.js +1 -2
- package/dist/core/adapters/testing/rootsTree.js +1 -2
- package/dist/core/applyOps.js +1 -2
- package/dist/core/device/targets.js +1 -2
- package/dist/core/device/useDeviceProfile.js +1 -2
- package/dist/core/device/useTargetBasePx.js +1 -2
- package/dist/core/device/watchDevicePixelRatio.js +1 -2
- package/dist/core/geometry/autoPoseDescriptor.js +2 -3
- package/dist/core/geometry/booleanOfPaths.js +1 -2
- package/dist/core/geometry/inkExtents.js +1 -2
- package/dist/core/geometry/pathPoseDescriptor.js +1 -2
- package/dist/core/geometry/poseDescriptor.js +1 -2
- package/dist/core/geometry/regionHit.js +1 -2
- package/dist/core/geometry/targetFrame.js +1 -2
- package/dist/core/geometry/unionBounds.js +1 -2
- package/dist/core/layers/backgroundFill.js +1 -2
- package/dist/core/layers/children.js +1 -2
- package/dist/core/layers/gateLayer.js +1 -2
- package/dist/core/layers/layerGroup.js +1 -2
- package/dist/core/layers/redrawSource.js +1 -2
- package/dist/core/layers/render.js +1 -2
- package/dist/core/layers/retain.js +1 -2
- package/dist/core/ops/arrange.js +1 -2
- package/dist/core/ops/create.js +2 -3
- package/dist/core/ops/createHistory.js +2 -3
- package/dist/core/ops/delete.js +2 -3
- package/dist/core/ops/nodeFlags.js +1 -2
- package/dist/core/ops/registry.js +1 -2
- package/dist/core/ops/reorder/algorithms.js +1 -2
- package/dist/core/ops/reorder/index.js +3 -8
- package/dist/core/ops/reorder/index.js.map +1 -1
- package/dist/core/ops/reorder/setChildOrder.js +1 -2
- package/dist/core/ops/reparent.js +1 -2
- package/dist/core/ops/select.js +1 -2
- package/dist/core/ops/setData.js +1 -2
- package/dist/core/ops/setDependsOn.js +1 -2
- package/dist/core/ops/setLayer.js +1 -2
- package/dist/core/ops/setLayout.js +1 -2
- package/dist/core/ops/setPath.js +1 -2
- package/dist/core/ops/setText.js +1 -2
- package/dist/core/ops/slot.js +1 -2
- package/dist/core/ops/transform.js +1 -2
- package/dist/core/ops/writtenBy.js +1 -2
- package/dist/core/pages/fitViewToPage.js +3 -9
- package/dist/core/pages/fitViewToPage.js.map +1 -1
- package/dist/core/pages/pageEdits.js +3 -4
- package/dist/core/pages/pages.js +4 -11
- package/dist/core/pages/pages.js.map +1 -1
- package/dist/core/pages/pagesLayer.js +1 -2
- package/dist/core/paint/meshKind.js +1 -2
- package/dist/core/paint/meshKindLazy.js +18 -23
- package/dist/core/paint/meshKindLazy.js.map +1 -1
- package/dist/core/paint/paintKindEntry.js +1 -2
- package/dist/core/paint/paintKinds.js +1 -2
- package/dist/core/paint/registerMesh.js +1 -2
- package/dist/core/scene/NodeProperties.js +1 -2
- package/dist/core/scene/NodeRouting.js +1 -2
- package/dist/core/scene/annotation.js +1 -2
- package/dist/core/scene/appliedLog.js +1 -2
- package/dist/core/scene/arrivalWindow.js +2 -3
- package/dist/core/scene/arrivals.js +1 -2
- package/dist/core/scene/booleanGroup.js +1 -2
- package/dist/core/scene/booleanOfChildren.js +1 -2
- package/dist/core/scene/boundOps.js +1 -2
- package/dist/core/scene/carryDescendants.js +2 -3
- package/dist/core/scene/clipNothing.js +1 -2
- package/dist/core/scene/composeFrame.js +1 -2
- package/dist/core/scene/composePose.js +1 -2
- package/dist/core/scene/declaredFieldSetters.js +1 -2
- package/dist/core/scene/depFrame.js +1 -2
- package/dist/core/scene/depMemo.js +1 -2
- package/dist/core/scene/dependents.js +1 -2
- package/dist/core/scene/derivedParts.js +1 -2
- package/dist/core/scene/derivedPath.js +2 -3
- package/dist/core/scene/docValues.js +1 -2
- package/dist/core/scene/documentOf.js +1 -2
- package/dist/core/scene/editMode.js +1 -2
- package/dist/core/scene/editPass.js +1 -2
- package/dist/core/scene/effectivePose.js +3 -4
- package/dist/core/scene/fieldEdits.js +1 -2
- package/dist/core/scene/fontReads.js +1 -2
- package/dist/core/scene/historyFacade.js +1 -2
- package/dist/core/scene/historyForm.js +1 -2
- package/dist/core/scene/inheritedPaint.js +1 -2
- package/dist/core/scene/kitOps.js +16 -15
- package/dist/core/scene/kitOps.js.map +1 -1
- package/dist/core/scene/kitRegistry.js +2 -3
- package/dist/core/scene/layerOps.js +1 -2
- package/dist/core/scene/layerStack.js +1 -2
- package/dist/core/scene/layoutPass.js +4 -5
- package/dist/core/scene/lockGuard.js +1 -2
- package/dist/core/scene/minSize.js +1 -2
- package/dist/core/scene/nestedHit.js +1 -2
- package/dist/core/scene/nodeAsShown.js +1 -2
- package/dist/core/scene/nodeFlags.js +1 -2
- package/dist/core/scene/nodeFnFields.js +1 -2
- package/dist/core/scene/nodeGates.js +1 -2
- package/dist/core/scene/nodeMemo.js +1 -2
- package/dist/core/scene/nodeStore.js +2 -3
- package/dist/core/scene/notifier.js +1 -2
- package/dist/core/scene/opTable.js +1 -2
- package/dist/core/scene/outerOps.js +1 -2
- package/dist/core/scene/pathEffects/blend.js +3 -4
- package/dist/core/scene/pathEffects/blend.js.map +1 -1
- package/dist/core/scene/pathEffects/derive.js +2 -3
- package/dist/core/scene/pathEffects/effects.js +1 -2
- package/dist/core/scene/pathEffects/foundHidden.js +1 -2
- package/dist/core/scene/pathEffects/textAlong.js +6 -6
- package/dist/core/scene/pathEffects/textAlong.js.map +1 -1
- package/dist/core/scene/pathEffects/textAlongBands.js +1 -2
- package/dist/core/scene/plyStacks.js +1 -2
- package/dist/core/scene/poseFeed.js +1 -2
- package/dist/core/scene/poseHold.js +1 -2
- package/dist/core/scene/poseOverrides.js +1 -2
- package/dist/core/scene/posePlies.js +1 -2
- package/dist/core/scene/poseRemovals.js +1 -2
- package/dist/core/scene/poseSnapshot.js +1 -2
- package/dist/core/scene/poseWrites.js +1 -2
- package/dist/core/scene/reconcileSpecs.js +26 -3
- package/dist/core/scene/reconcileSpecs.js.map +1 -1
- package/dist/core/scene/recorder.js +1 -2
- package/dist/core/scene/renderOrder.js +1 -2
- package/dist/core/scene/sameValue.js +1 -2
- package/dist/core/scene/scene.js +23 -13
- package/dist/core/scene/scene.js.map +1 -1
- package/dist/core/scene/sceneChanges.js +1 -2
- package/dist/core/scene/sceneEdits.js +1 -2
- package/dist/core/scene/sceneJournals.js +1 -2
- package/dist/core/scene/sceneMutators.js +2 -3
- package/dist/core/scene/scenePoseAdapter.js +1 -2
- package/dist/core/scene/sceneRecording.js +1 -2
- package/dist/core/scene/sceneSelection.js +8 -5
- package/dist/core/scene/sceneSelection.js.map +1 -1
- package/dist/core/scene/sceneState.js +3 -4
- package/dist/core/scene/scrollOffsets.js +1 -2
- package/dist/core/scene/serialization.js +2 -3
- package/dist/core/scene/staleReplay.js +1 -2
- package/dist/core/scene/statedFields.js +1 -2
- package/dist/core/scene/strategyView.js +1 -2
- package/dist/core/scene/treeEdits.js +2 -3
- package/dist/core/scene/treeOrder.js +1 -2
- package/dist/core/scene/treeReads.js +1 -2
- package/dist/core/scene/treeShape.js +1 -2
- package/dist/core/scene/types.js +1 -2
- package/dist/core/scene/types.js.map +1 -1
- package/dist/core/scene/unionOfChildren.js +1 -2
- package/dist/core/scene/unitScopes.js +20 -4
- package/dist/core/scene/unitScopes.js.map +1 -1
- package/dist/core/scene/useScene.js +2 -3
- package/dist/core/scene/worldSave.js +2 -3
- package/dist/core/selection/chromeState.js +1 -2
- package/dist/core/selection/outermostSelection.js +56 -0
- package/dist/core/selection/outermostSelection.js.map +1 -0
- package/dist/core/selection/readOnlySelection.js +1 -2
- package/dist/core/selection/selectionTarget.js +1 -2
- package/dist/core/selection/usePublishSceneSelection.js +1 -2
- package/dist/core/selection/useSelection.js +1 -2
- package/dist/core/shapeKinds.js +1 -2
- package/dist/core/stableStringify.js +1 -2
- package/dist/core/stylus/stylus.js +1 -2
- package/dist/core/stylus/usePointerStylus.js +1 -2
- package/dist/core/usePaintKinds.js +1 -2
- package/dist/core/viewport/clampView.js +1 -2
- package/dist/core/viewport/clientToWorld.js +8 -3
- package/dist/core/viewport/clientToWorld.js.map +1 -1
- package/dist/core/viewport/createVelocityTracker.js +1 -2
- package/dist/core/viewport/fitToBounds.js +1 -2
- package/dist/core/viewport/fitViewToBounds.js +1 -2
- package/dist/core/viewport/interpolateView.js +1 -2
- package/dist/core/viewport/parallax.js +1 -2
- package/dist/core/viewport/sceneNodeClientRect.js +1 -2
- package/dist/core/viewport/screenSlop.js +1 -2
- package/dist/core/viewport/useAutoCenter.js +1 -2
- package/dist/core/viewport/useCanvasSize.js +1 -2
- package/dist/core/viewport/useDecayLoop.js +1 -2
- package/dist/core/viewport/useNodeOverlayFrame.js +1 -2
- package/dist/core/viewport/useVelocityTracker.js +1 -2
- package/dist/core/viewport/useViewAnimation.js +3 -4
- package/dist/core/viewport/view.js +1 -2
- package/dist/core/viewport/viewTransform.js +1 -2
- package/dist/core/viewport/viewportWorldRect.js +1 -2
- package/dist/core/viewport/wheelHandler.js +1 -2
- package/dist/core/viewport/zoomAt.js +7 -8
- package/dist/core/viewport/zoomAt.js.map +1 -1
- package/dist/core/viewport/zoomBounds.js +1 -2
- package/dist/debug/createDebugOverlayLayer.js +1 -2
- package/dist/debug/createDebugSink.js +1 -2
- package/dist/debug/defaultTheme.js +1 -2
- package/dist/debug/features.js +1 -2
- package/dist/debug/frameStats.js +1 -2
- package/dist/debug/overlayPanels.js +1 -2
- package/dist/debug/parseDebugFlags.js +1 -2
- package/dist/debug/useDebugSink.js +2 -3
- package/dist/{depSchema-ChQPzEkW.d.ts → depSchema-C7a_OMt-.d.ts} +61 -52
- package/dist/devtools/handlers.js +1 -2
- package/dist/devtools/history.js +1 -2
- package/dist/devtools/hook.js +1 -2
- package/dist/devtools/label.js +1 -2
- package/dist/devtools/notices.js +1 -2
- package/dist/devtools/protocol.js +1 -2
- package/dist/devtools/registry.js +1 -2
- package/dist/devtools/root.js +12 -6
- package/dist/devtools/root.js.map +1 -1
- package/dist/devtools/serialize.js +1 -2
- package/dist/devtools/session.js +2 -3
- package/dist/devtools/transport.js +13 -18
- package/dist/devtools/transport.js.map +1 -1
- package/dist/devtools/useDevtoolsRoot.js +1 -2
- package/dist/devtools-protocol.d.ts +1 -12
- package/dist/devtools-protocol.js +2 -2
- package/dist/devtools.d.ts +1 -1
- package/dist/devtools.js +1 -2
- package/dist/domains/chrome-caps/buildChromeCtx.js +1 -2
- package/dist/domains/chrome-caps/conditions.js +1 -2
- package/dist/domains/chrome-caps/defaults.js +1 -2
- package/dist/domains/chrome-caps/resolve.js +2 -3
- package/dist/domains/chrome-caps/useChromeCaps.js +1 -2
- package/dist/domains/chrome-caps/useHoverTracking.js +1 -2
- package/dist/domains/ingestion/contentHandlers.js +1 -2
- package/dist/domains/ingestion/ghost.js +2 -3
- package/dist/domains/ingestion/imageHandler.js +1 -2
- package/dist/domains/ingestion/kitHandlers.js +2 -3
- package/dist/domains/ingestion/openFilePicker.js +1 -2
- package/dist/domains/ingestion/placement.js +1 -2
- package/dist/domains/ingestion/svgHandler.js +1 -2
- package/dist/domains/ingestion/textHandler.js +1 -2
- package/dist/domains/ingestion/useCanvasIngestion.js +1 -2
- package/dist/domains/ingestion/weaselJsonHandler.js +2 -3
- package/dist/domains/longPress/longPressFeedback.js +1 -2
- package/dist/domains/measure/actionIds.js +1 -2
- package/dist/domains/measure/measureCommands.js +6 -7
- package/dist/domains/measure/measureContribution.js +3 -4
- package/dist/domains/measure/measureEdits.js +3 -4
- package/dist/domains/measure/measureGestures.js +2 -3
- package/dist/domains/measure/measureHit.js +5 -12
- package/dist/domains/measure/measureHit.js.map +1 -1
- package/dist/domains/measure/measureLayer.js +3 -4
- package/dist/domains/measure/measurement.js +1 -2
- package/dist/domains/measure/measurements.js +1 -2
- package/dist/domains/modes/modeLayers.js +1 -2
- package/dist/domains/modes/modeTriggers.js +1 -2
- package/dist/domains/pathEffects/effectSources.js +2 -3
- package/dist/domains/pathEffects/index.js +1 -2
- package/dist/domains/pathEffects/readSource.js +3 -4
- package/dist/domains/pathEffects/textItems.js +1 -2
- package/dist/domains/pathEffects/useEffectSourcesLayer.js +3 -4
- package/dist/domains/paths/anchorData.js +1 -2
- package/dist/domains/paths/anchorMarkers.js +6 -13
- package/dist/domains/paths/anchorMarkers.js.map +1 -1
- package/dist/domains/paths/editablePath.js +3 -4
- package/dist/domains/paths/originProjection.js +1 -2
- package/dist/domains/paths/pathEditExtension.js +1 -2
- package/dist/domains/paths/pathEditState.js +1 -2
- package/dist/domains/paths/pathEditingOverlayLayer.js +7 -12
- package/dist/domains/paths/pathEditingOverlayLayer.js.map +1 -1
- package/dist/domains/paths/pathLayer.js +1 -2
- package/dist/domains/paths/pathRepresentation.js +1 -2
- package/dist/domains/paths/pathSnap/glyphs.js +1 -2
- package/dist/domains/paths/pathSnap/pathSnapSource.js +1 -2
- package/dist/domains/paths/pathSnap/sceneIndex.js +1 -2
- package/dist/domains/paths/pathSnap/snapGeometry.js +2 -3
- package/dist/domains/paths/penPreviewLayer.js +10 -14
- package/dist/domains/paths/penPreviewLayer.js.map +1 -1
- package/dist/domains/paths/shapeGenerator.js +2 -4
- package/dist/domains/paths/shapeGenerator.js.map +1 -1
- package/dist/domains/paths/strokeOutline.js +2 -3
- package/dist/domains/paths/useAnchorFields.js +1 -2
- package/dist/domains/paths/usePathEdit.js +2 -3
- package/dist/domains/poseRun/usePoseRun.js +1 -2
- package/dist/domains/selection/enteredGroupFrame.js +1 -2
- package/dist/domains/selection/enteredGroupScope.js +1 -2
- package/dist/domains/selection/enteredOperands.js +1 -2
- package/dist/domains/selection/handleCommands.js +2 -3
- package/dist/domains/selection/overlay.js +6 -7
- package/dist/domains/selection/selectionPose.js +2 -3
- package/dist/domains/snap/angle2d.js +3 -3
- package/dist/domains/snap/angle2d.js.map +1 -1
- package/dist/domains/snap/debugCandidates.js +1 -2
- package/dist/domains/snap/gather.js +1 -2
- package/dist/domains/snap/inputSubspace.js +2 -3
- package/dist/domains/snap/lazySession.js +1 -2
- package/dist/domains/snap/marks.js +1 -2
- package/dist/domains/snap/outcomeStore.js +6 -10
- package/dist/domains/snap/outcomeStore.js.map +1 -1
- package/dist/domains/snap/pointSnap.js +1 -2
- package/dist/domains/snap/probes2d.js +1 -2
- package/dist/domains/snap/readoutDraw.js +1 -2
- package/dist/domains/snap/readoutLayer.js +1 -2
- package/dist/domains/snap/registry.js +1 -2
- package/dist/domains/snap/resizeBox.js +1 -2
- package/dist/domains/snap/roles.js +1 -2
- package/dist/domains/snap/rotationSource.js +1 -2
- package/dist/domains/snap/sceneReads.js +2 -3
- package/dist/domains/snap/sceneSession2d.js +2 -3
- package/dist/domains/snap/screen.js +2 -3
- package/dist/domains/snap/session2d.js +4 -5
- package/dist/domains/snap/spanSnap.js +1 -2
- package/dist/domains/snap/stepAngles.js +1 -2
- package/dist/domains/text/editingDrawOne.js +1 -2
- package/dist/domains/text/hostTextEditors.js +1 -2
- package/dist/domains/text/sceneTextDrafts.js +1 -2
- package/dist/domains/text/textHitAt.js +4 -5
- package/dist/domains/text/textLayer.js +12 -2
- package/dist/domains/text/textLayer.js.map +1 -1
- package/dist/domains/text/useSceneTextEdit.js +13 -9
- package/dist/domains/text/useSceneTextEdit.js.map +1 -1
- package/dist/domains/viewports/aim.js +6 -12
- package/dist/domains/viewports/aim.js.map +1 -1
- package/dist/domains/viewports/viewMarker.js +1 -2
- package/dist/domains/viewports/viewMarkerDrag.js +1 -2
- package/dist/domains/viewports/viewResolver.js +6 -5
- package/dist/domains/viewports/viewResolver.js.map +1 -1
- package/dist/domains/viewports/viewportLayer.js +1 -2
- package/dist/iconRegistry/IconRegistryProvider.js +1 -2
- package/dist/iconRegistry/useIconGlyph.js +1 -2
- package/dist/iconRegistry/useIconVariant.js +1 -2
- package/dist/icons.table.js +1 -2
- package/dist/icons2.table.js +1 -2
- package/dist/index.d.ts +70 -27
- package/dist/index.js +7 -5
- package/dist/input/keyState.js +1 -2
- package/dist/input/useKeyModifiers.js +1 -2
- package/dist/input/useKeyState.js +1 -2
- package/dist/input/usePublishPointer.js +59 -0
- package/dist/input/usePublishPointer.js.map +1 -0
- package/dist/interactions/actions/admitsChild.js +1 -2
- package/dist/interactions/actions/align/action.js +6 -7
- package/dist/interactions/actions/align/align.js +6 -7
- package/dist/interactions/actions/booleans/action.js +1 -2
- package/dist/interactions/actions/booleans/booleanGroupAction.js +2 -3
- package/dist/interactions/actions/booleans/booleans.js +1 -2
- package/dist/interactions/actions/booleans/commit.js +4 -5
- package/dist/interactions/actions/booleans/custom.js +2 -3
- package/dist/interactions/actions/booleans/keymap.js +1 -2
- package/dist/interactions/actions/booleans/operands.js +1 -2
- package/dist/interactions/actions/booleans/pieces.js +1 -2
- package/dist/interactions/actions/booleans/placement.js +1 -2
- package/dist/interactions/actions/booleans/useBooleans.js +1 -2
- package/dist/interactions/actions/booleans/useBooleansAdapter.js +1 -2
- package/dist/interactions/actions/clipboard/action.js +2 -3
- package/dist/interactions/actions/clipboard/clipboardOps.js +2 -3
- package/dist/interactions/actions/clipboard/materializePaste.js +1 -2
- package/dist/interactions/actions/clipboard/wireFormat.js +1 -2
- package/dist/interactions/actions/clone/action.js +7 -8
- package/dist/interactions/actions/clone/behaviors.js +4 -5
- package/dist/interactions/actions/defaultCommitAdapter.js +2 -3
- package/dist/interactions/actions/defaults/anchorEditing.js +3 -4
- package/dist/interactions/actions/defaults/anchorFields.js +1 -2
- package/dist/interactions/actions/defaults/anchorHandles.js +2 -3
- package/dist/interactions/actions/defaults/anchorJoin.js +2 -3
- package/dist/interactions/actions/defaults/areaSelect.js +6 -6
- package/dist/interactions/actions/defaults/areaSelect.js.map +1 -1
- package/dist/interactions/actions/defaults/bendSegment.js +3 -4
- package/dist/interactions/actions/defaults/cancelGesture.js +1 -2
- package/dist/interactions/actions/defaults/clearSelection.js +1 -2
- package/dist/interactions/actions/defaults/containerScroll.js +13 -8
- package/dist/interactions/actions/defaults/containerScroll.js.map +1 -1
- package/dist/interactions/actions/defaults/contextMenu.js +6 -7
- package/dist/interactions/actions/defaults/copySubtree.js +2 -3
- package/dist/interactions/actions/defaults/createPaintAction.js +3 -4
- package/dist/interactions/actions/defaults/delete.js +2 -3
- package/dist/interactions/actions/defaults/duplicate.js +5 -6
- package/dist/interactions/actions/defaults/enterGroup.js +5 -6
- package/dist/interactions/actions/defaults/enterGroup.js.map +1 -1
- package/dist/interactions/actions/defaults/enterPathEdit.js +1 -2
- package/dist/interactions/actions/defaults/enterTextEdit.js +1 -2
- package/dist/interactions/actions/defaults/escape.js +1 -2
- package/dist/interactions/actions/defaults/exitPathEdit.js +1 -2
- package/dist/interactions/actions/defaults/group.js +6 -7
- package/dist/interactions/actions/defaults/ingest.js +3 -4
- package/dist/interactions/actions/defaults/insertPathAnchor.js +2 -3
- package/dist/interactions/actions/defaults/nudge.js +3 -4
- package/dist/interactions/actions/defaults/nudgeSteps.js +2 -3
- package/dist/interactions/actions/defaults/nudgeSteps.js.map +1 -1
- package/dist/interactions/actions/defaults/pathEditMarks.js +3 -7
- package/dist/interactions/actions/defaults/pathEditMarks.js.map +1 -1
- package/dist/interactions/actions/defaults/pinchZoom.js +3 -4
- package/dist/interactions/actions/defaults/reorder.js +2 -3
- package/dist/interactions/actions/defaults/requiresSelection.js +1 -2
- package/dist/interactions/actions/defaults/segmentUnder.js +1 -2
- package/dist/interactions/actions/defaults/selectAll.js +1 -2
- package/dist/interactions/actions/defaults/selectDeep.js +1 -2
- package/dist/interactions/actions/defaults/setFill.js +1 -2
- package/dist/interactions/actions/defaults/setFillOpacity.js +1 -2
- package/dist/interactions/actions/defaults/setStroke.js +1 -2
- package/dist/interactions/actions/defaults/setStrokeOpacity.js +1 -2
- package/dist/interactions/actions/defaults/slice.js +1 -2
- package/dist/interactions/actions/defaults/sliceOps.js +1 -2
- package/dist/interactions/actions/defaults/toolActivate.js +1 -2
- package/dist/interactions/actions/defaults/toolResetToDefault.js +1 -2
- package/dist/interactions/actions/defaults/undoRedo.js +1 -2
- package/dist/interactions/actions/defaults/viewportDragPan.js +1 -2
- package/dist/interactions/actions/defaults/viewportWheelPan.js +1 -2
- package/dist/interactions/actions/defaults/viewportZoom.js +3 -4
- package/dist/interactions/actions/distribute/action.js +4 -5
- package/dist/interactions/actions/distribute/distribute.js +5 -6
- package/dist/interactions/actions/distribute/plan.js +1 -2
- package/dist/interactions/actions/drawnBoxes.js +4 -5
- package/dist/interactions/actions/dropVerdict.js +1 -2
- package/dist/interactions/actions/edit-anchors/action.js +4 -5
- package/dist/interactions/actions/edit-anchors/extensionDrags.js +1 -2
- package/dist/interactions/actions/edit-anchors/geometry.js +1 -2
- package/dist/interactions/actions/edit-anchors/handleDrag.js +5 -9
- package/dist/interactions/actions/edit-anchors/handleDrag.js.map +1 -1
- package/dist/interactions/actions/edit-anchors/handles.js +1 -2
- package/dist/interactions/actions/edit-anchors/params.js +1 -2
- package/dist/interactions/actions/edit-anchors/preview.js +1 -2
- package/dist/interactions/actions/edit-anchors/symmetry.js +1 -2
- package/dist/interactions/actions/flip/action.js +8 -9
- package/dist/interactions/actions/flip/helpers.js +1 -2
- package/dist/interactions/actions/geometryProjection.js +1 -2
- package/dist/interactions/actions/gestureFrames.js +3 -4
- package/dist/interactions/actions/gestureLifecycle.js +1 -2
- package/dist/interactions/actions/hitSelection.js +7 -3
- package/dist/interactions/actions/hitSelection.js.map +1 -1
- package/dist/interactions/actions/insert/action.js +6 -7
- package/dist/interactions/actions/insert/commit.js +2 -3
- package/dist/interactions/actions/insert/extras.js +1 -2
- package/dist/interactions/actions/insert/frame.js +1 -2
- package/dist/interactions/actions/insert/geometry.js +1 -2
- package/dist/interactions/actions/insert/params.js +2 -3
- package/dist/interactions/actions/insert/parent.js +1 -2
- package/dist/interactions/actions/insert/placeAction.js +5 -6
- package/dist/interactions/actions/insert/repositionAction.js +1 -2
- package/dist/interactions/actions/insert/rotateAction.js +1 -2
- package/dist/interactions/actions/insert/session.js +5 -6
- package/dist/interactions/actions/insert/shape.js +2 -3
- package/dist/interactions/actions/lasso-select/action.js +9 -9
- package/dist/interactions/actions/lasso-select/action.js.map +1 -1
- package/dist/interactions/actions/lasso-select/behaviors/selectFromLasso.js +2 -3
- package/dist/interactions/actions/magnification.js +37 -0
- package/dist/interactions/actions/magnification.js.map +1 -0
- package/dist/interactions/actions/move/action.js +2 -3
- package/dist/interactions/actions/move/behaviors/clampMove.js +42 -0
- package/dist/interactions/actions/move/behaviors/clampMove.js.map +1 -0
- package/dist/interactions/actions/move/behaviors/layoutDrop.js +2 -3
- package/dist/interactions/actions/move/behaviors/reparentOnDrop.js +2 -3
- package/dist/interactions/actions/move/behaviors/snapBackOrDelete.js +1 -2
- package/dist/interactions/actions/move/behaviors/snapToContainer.js +2 -3
- package/dist/interactions/actions/move/capture.js +6 -7
- package/dist/interactions/actions/move/commit/index.js +2 -3
- package/dist/interactions/actions/move/commit/layoutDrop.js +4 -5
- package/dist/interactions/actions/move/commit/layoutRelease.js +7 -8
- package/dist/interactions/actions/move/commit/rebase.js +2 -3
- package/dist/interactions/actions/move/commit/reparent.js +5 -6
- package/dist/interactions/actions/move/delta.js +2 -3
- package/dist/interactions/actions/move/frame.js +2 -3
- package/dist/interactions/actions/move/gestureAdapter.js +1 -2
- package/dist/interactions/actions/move/landedDescendants.js +2 -3
- package/dist/interactions/actions/move/layout/container.js +6 -10
- package/dist/interactions/actions/move/layout/container.js.map +1 -1
- package/dist/interactions/actions/move/layout/dragged.js +2 -3
- package/dist/interactions/actions/move/layout/dropPass.js +5 -6
- package/dist/interactions/actions/move/layout/exits.js +4 -5
- package/dist/interactions/actions/move/layout/exits.js.map +1 -1
- package/dist/interactions/actions/move/layout/glide.js +2 -3
- package/dist/interactions/actions/move/layout/view.js +1 -2
- package/dist/interactions/actions/move/refusal.js +2 -3
- package/dist/interactions/actions/move/session.js +4 -5
- package/dist/interactions/actions/move/translate.js +2 -3
- package/dist/interactions/actions/moveNodes.js +5 -6
- package/dist/interactions/actions/notices.js +1 -2
- package/dist/interactions/actions/outlines/createOutlines.js +1 -2
- package/dist/interactions/actions/outlines/createOutlinesAction.js +2 -3
- package/dist/interactions/actions/outlines/outlineStroke.js +2 -3
- package/dist/interactions/actions/outlines/outlineStrokeAction.js +2 -3
- package/dist/interactions/actions/outlines/replaceWithPaths.js +5 -6
- package/dist/interactions/actions/outlines/strokeRegion.js +1 -2
- package/dist/interactions/actions/outlines/useCreateOutlinesAdapter.js +1 -2
- package/dist/interactions/actions/pathCommands/cutJoin.js +3 -4
- package/dist/interactions/actions/pathCommands/livePathEdit.js +3 -4
- package/dist/interactions/actions/pathCommands/pathNodes.js +3 -4
- package/dist/interactions/actions/pathCommands/simplifyOffset.js +2 -3
- package/dist/interactions/actions/pathGestureTags.js +1 -2
- package/dist/interactions/actions/planeInput.js +2 -3
- package/dist/interactions/actions/pointerState.js +1 -2
- package/dist/interactions/actions/poseDescriptorDep.js +1 -2
- package/dist/interactions/actions/poseFrame.js +3 -4
- package/dist/interactions/actions/resize/action.js +3 -4
- package/dist/interactions/actions/resize/aspect.js +1 -2
- package/dist/interactions/actions/resize/behaviors/clampMinSize.js +1 -2
- package/dist/interactions/actions/resize/boxFrame.js +1 -2
- package/dist/interactions/actions/resize/capture.js +7 -8
- package/dist/interactions/actions/resize/commit.js +3 -4
- package/dist/interactions/actions/resize/cornerHandles.js +1 -2
- package/dist/interactions/actions/resize/frame.js +7 -8
- package/dist/interactions/actions/resize/held.js +2 -3
- package/dist/interactions/actions/resize/minimum.js +1 -2
- package/dist/interactions/actions/resize/replay.js +1 -2
- package/dist/interactions/actions/resize/ruleBounds.js +1 -2
- package/dist/interactions/actions/resize/session.js +9 -10
- package/dist/interactions/actions/resolveOverlays.js +1 -2
- package/dist/interactions/actions/resolvePreviews.js +3 -4
- package/dist/interactions/actions/rotate/action.js +5 -6
- package/dist/interactions/actions/rotate/commit.js +2 -3
- package/dist/interactions/actions/rotate/frame.js +3 -4
- package/dist/interactions/actions/rotate/geometry.js +1 -2
- package/dist/interactions/actions/rotate/handle.js +2 -3
- package/dist/interactions/actions/rotate/replay.js +2 -3
- package/dist/interactions/actions/rotate/session.js +10 -11
- package/dist/interactions/actions/selectionSubtree.js +7 -22
- package/dist/interactions/actions/selectionSubtree.js.map +1 -1
- package/dist/interactions/actions/spatialReference.js +1 -2
- package/dist/interactions/actions/testUtils.js +1 -2
- package/dist/interactions/actions/transform-again/action.js +5 -6
- package/dist/interactions/actions/transform-again/memory.js +3 -4
- package/dist/interactions/actions/transform-again/memory.js.map +1 -1
- package/dist/interactions/actions/transformFinish.js +1 -2
- package/dist/interactions/actions/useActionSet.js +1 -2
- package/dist/interactions/actions/useNotices.js +1 -2
- package/dist/interactions/actions/useStandardActions.js +1 -2
- package/dist/interactions/gestures/dragGesture/dragGesture.js +1 -2
- package/dist/interactions/gestures/dragGesture/dragPointOf.js +1 -2
- package/dist/interactions/gestures/dragRadial/dragRadial.js +2 -3
- package/dist/interactions/gestures/dragRect/dragRect.js +2 -3
- package/dist/interactions/gestures/handleDrag/handleDrag.js +1 -2
- package/dist/interactions/gestures/pointerDrag/pointerDrag.js +1 -2
- package/dist/interactions/gestures/shared/originProjection.js +1 -2
- package/dist/interactions/gestures/shared/screenTolerance.js +1 -2
- package/dist/interactions/gestures/thresholdDrag/thresholdDrag.js +1 -2
- package/dist/kitSettingsSchema.js +4 -5
- package/dist/move.d.ts +18 -3
- package/dist/move.js +2 -1
- package/dist/test-hook/createTestHook.js +1 -2
- package/dist/test-hook/install.js +1 -2
- package/dist/test-hook/useTestHook.js +1 -2
- package/dist/test-seams.d.ts +4 -4
- package/dist/test-seams.js +2 -2
- package/dist/tools/builtin/anchors/anchorsTool.js +1 -2
- package/dist/tools/builtin/ellipse/useEllipseTool.js +2 -3
- package/dist/tools/builtin/eyedropper/useEyedropperTool.js +1 -2
- package/dist/tools/builtin/hand/dragPanContribution.js +1 -2
- package/dist/tools/builtin/hand/useHandTool.js +1 -2
- package/dist/tools/builtin/image/useImageTool.js +1 -2
- package/dist/tools/builtin/lasso/useLassoTool.js +1 -2
- package/dist/tools/builtin/line/useLineTool.js +2 -3
- package/dist/tools/builtin/measure/useMeasureTool.js +2 -3
- package/dist/tools/builtin/pen/penHandle.js +1 -2
- package/dist/tools/builtin/pen/usePenTool.js +6 -7
- package/dist/tools/builtin/pencil/usePencilTool.js +1 -2
- package/dist/tools/builtin/pickTopMostHit.js +1 -2
- package/dist/tools/builtin/polygon/usePolygonTool.js +3 -4
- package/dist/tools/builtin/pressTarget.js +1 -2
- package/dist/tools/builtin/rect/useRectTool.js +2 -3
- package/dist/tools/builtin/select/adapterPointQuery.js +3 -4
- package/dist/tools/builtin/select/collapseDeferred.js +1 -2
- package/dist/tools/builtin/select/groupEntry.js +2 -3
- package/dist/tools/builtin/select/pressDecision.js +3 -4
- package/dist/tools/builtin/select/pressDecision.js.map +1 -1
- package/dist/tools/builtin/select/selectionContributions.js +1 -2
- package/dist/tools/builtin/select/useSelectTool.js +5 -6
- package/dist/tools/builtin/shared/insertToolOptions.js +1 -2
- package/dist/tools/builtin/shared/pointerFollower.js +1 -2
- package/dist/tools/builtin/slice/useSliceTool.js +5 -6
- package/dist/tools/builtin/star/useStarTool.js +3 -4
- package/dist/tools/builtin/sticky/stickyNode.js +1 -2
- package/dist/tools/builtin/sticky/useStickyTool.js +2 -3
- package/dist/tools/builtin/text/useTextTool.js +1 -2
- package/dist/tools/index.js +2 -2
- package/dist/tools/overlayBinding.js +1 -2
- package/dist/tools/toolOptions.js +17 -4
- package/dist/tools/toolOptions.js.map +1 -1
- package/dist/tools/useKeybindings.js +1 -2
- package/dist/{types-DW14eu9B.d.ts → types-BUvUXZe5.d.ts} +3 -3
- package/dist/util/color.js +1 -2
- package/dist/util/paint.js +1 -2
- package/dist/version.js +2 -3
- package/package.json +27 -27
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { commitGestureOps, reduceBehaviorEnd } from "../../gestureLifecycle.js";
|
|
2
2
|
import { draggedStoredPose } from "../delta.js";
|
|
3
|
-
import { rootTranslateOps, translateOps } from "../translate.js";
|
|
4
3
|
import { landedDescendantOps } from "../landedDescendants.js";
|
|
4
|
+
import { rootTranslateOps, translateOps } from "../translate.js";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/interactions/actions/move/commit/index.ts
|
|
7
7
|
/** What the behaviors answer for the commit: ops, `null` to abort, or
|
|
8
8
|
* `undefined` when every one of them leaves it to the default translate. */
|
|
9
9
|
function endBehaviors(session, delta, at) {
|
|
@@ -43,6 +43,5 @@ function commitMove(input) {
|
|
|
43
43
|
return ops.length > 0 && commitOps(ops);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
//#endregion
|
|
47
46
|
export { commitMove };
|
|
48
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
+
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
2
|
+
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
3
|
+
import { asNodeId } from "../../../../core/scene/types.js";
|
|
1
4
|
import { rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
2
5
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
3
|
-
import { asNodeId } from "../../../../core/scene/types.js";
|
|
4
|
-
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
5
|
-
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
6
6
|
import { rebaseTransformOp } from "./rebase.js";
|
|
7
7
|
import { opInWorld } from "../layout/view.js";
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
// src/interactions/actions/move/commit/layoutDrop.ts
|
|
10
10
|
/** The ops of a drop a layout container accepted: reparents, then each
|
|
11
11
|
* placement's `commitDrop`, then the source containers' reflow. */
|
|
12
12
|
function layoutDropOps(session, pass) {
|
|
@@ -51,6 +51,5 @@ function layoutDropOps(session, pass) {
|
|
|
51
51
|
];
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
//#endregion
|
|
55
54
|
export { layoutDropOps };
|
|
56
55
|
//# sourceMappingURL=layoutDrop.js.map
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
2
|
+
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
3
|
+
import { asNodeId } from "../../../../core/scene/types.js";
|
|
1
4
|
import { composeChildFrame, composeWorldPose, rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
2
|
-
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
3
5
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
4
|
-
import { asNodeId } from "../../../../core/scene/types.js";
|
|
5
|
-
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
6
|
-
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
7
|
-
import { rebaseTransformOp } from "./rebase.js";
|
|
8
|
-
import { boxOf, containerView, draggedInView, opInWorld } from "../layout/view.js";
|
|
9
6
|
import { draggedWorldPose, grabbedPoseAdapter } from "../delta.js";
|
|
10
7
|
import { groupBySourceContainer } from "../layout/dropPass.js";
|
|
11
8
|
import { resolveLayoutExits } from "../layout/exits.js";
|
|
12
9
|
import { translateOps, unreleasedIds } from "../translate.js";
|
|
10
|
+
import { rebaseTransformOp } from "./rebase.js";
|
|
11
|
+
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
12
|
+
import { boxOf, containerView, draggedInView, opInWorld } from "../layout/view.js";
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
// src/interactions/actions/move/commit/layoutRelease.ts
|
|
15
15
|
function releaseFrom(session, delta, srcId, leaving, commitAdapter) {
|
|
16
16
|
const { dx, dy } = delta;
|
|
17
17
|
const pc = session.pc;
|
|
@@ -121,6 +121,5 @@ function layoutReleaseOps(session, delta, dropCenter) {
|
|
|
121
121
|
];
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
//#endregion
|
|
125
124
|
export { layoutReleaseOps };
|
|
126
125
|
//# sourceMappingURL=layoutRelease.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
2
1
|
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
2
|
+
import { rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/interactions/actions/move/commit/rebase.ts
|
|
5
5
|
/** A world-posed transform op as one in its node's stored frame: `from` under
|
|
6
6
|
* `fromParent`, `to` under `toParent`. Any other op is returned as it is. */
|
|
7
7
|
function rebaseTransformOp(op, adapter, pc, fromParent, toParent) {
|
|
@@ -16,6 +16,5 @@ function rebaseTransformOp(op, adapter, pc, fromParent, toParent) {
|
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
//#endregion
|
|
20
19
|
export { rebaseTransformOp };
|
|
21
20
|
//# sourceMappingURL=rebase.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
2
|
+
import { createSetLayerOp } from "../../../../core/ops/setLayer.js";
|
|
3
|
+
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
1
4
|
import { planeToPlane } from "../../../../core/viewport/parallax.js";
|
|
2
5
|
import { rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
3
6
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
4
7
|
import { carryPose, planeOf } from "../../planeInput.js";
|
|
5
|
-
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
6
|
-
import { createReparentOp } from "../../../../core/ops/reparent.js";
|
|
7
8
|
import { draggedWorldPose, grabbedPoseAdapter } from "../delta.js";
|
|
8
|
-
import { refusalOf } from "../../dropVerdict.js";
|
|
9
9
|
import { translateOps } from "../translate.js";
|
|
10
|
+
import { refusalOf } from "../../dropVerdict.js";
|
|
10
11
|
import { worldBoundsOf } from "../refusal.js";
|
|
11
|
-
import { createSetLayerOp } from "../../../../core/ops/setLayer.js";
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
// src/interactions/actions/move/commit/reparent.ts
|
|
14
14
|
/** Walk the hit chain to find the appropriate drop target. Returns
|
|
15
15
|
* `null` when no reparent should happen (drop on empty canvas, or the
|
|
16
16
|
* only hits are the moved subtree itself), and a refusal when the first
|
|
@@ -98,6 +98,5 @@ function reparentOps(session, target, mode, delta) {
|
|
|
98
98
|
return [...ops, ...translateOps(session, session.cascadeIds, delta)];
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
//#endregion
|
|
102
101
|
export { reparentOps, resolveDrop };
|
|
103
102
|
//# sourceMappingURL=reparent.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { leadUnder, translatePoseViaDescriptor } from "../../../core/geometry/poseDescriptor.js";
|
|
1
2
|
import { toPlane } from "../../../core/viewport/parallax.js";
|
|
2
3
|
import { composeWorldPose } from "../../../core/scene/composeFrame.js";
|
|
3
|
-
import { leadUnder, translatePoseViaDescriptor } from "../../../core/geometry/poseDescriptor.js";
|
|
4
4
|
import { planeOf } from "../planeInput.js";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/interactions/actions/move/delta.ts
|
|
7
7
|
/**
|
|
8
8
|
* The world drag `(dx, dy)` as a translation of `id`'s stored pose. A pose is
|
|
9
9
|
* stored in its frame, so under a turned frame the two point different ways.
|
|
@@ -114,6 +114,5 @@ function draggedWorldPose(session, adapter, id, delta) {
|
|
|
114
114
|
return translatePoseViaDescriptor(start, own.dx, own.dy, session.descriptorOf(id), leadFor(session, id, delta.dx, delta.dy));
|
|
115
115
|
}
|
|
116
116
|
|
|
117
|
-
//#endregion
|
|
118
117
|
export { draggedStoredPose, draggedWorldPose, grabbedPoseAdapter, localDelta, planeDelta, storedLeadFor };
|
|
119
118
|
//# sourceMappingURL=delta.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { draggedStoredPose } from "./delta.js";
|
|
2
1
|
import { pointerStateOf } from "../pointerState.js";
|
|
2
|
+
import { draggedStoredPose } from "./delta.js";
|
|
3
3
|
import { snapMods } from "../../../domains/snap/roles.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/frame.ts
|
|
6
6
|
function foldBehaviors(session, readers, moveCtx, dx, dy) {
|
|
7
7
|
const posed = /* @__PURE__ */ new Map();
|
|
8
8
|
const opaque = /* @__PURE__ */ new Set();
|
|
@@ -77,6 +77,5 @@ function nextFrame(session, readers, moveCtx) {
|
|
|
77
77
|
};
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
//#endregion
|
|
81
80
|
export { nextFrame };
|
|
82
81
|
//# sourceMappingURL=frame.js.map
|
|
@@ -2,7 +2,7 @@ import { asNodeId } from "../../../core/scene/types.js";
|
|
|
2
2
|
import { scenePoseTarget } from "../../../animation/poseTarget.js";
|
|
3
3
|
import { defaultCommitAdapter } from "../defaultCommitAdapter.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/gestureAdapter.ts
|
|
6
6
|
/** `commit` is how a behavior's own `applyOps` batch lands; the returned
|
|
7
7
|
* adapter is passed back so the ops apply through it. Left out, the adapter
|
|
8
8
|
* has no `applyOps`. `selection` is as `defaultCommitAdapter` takes it. */
|
|
@@ -33,6 +33,5 @@ function moveGestureAdapter(scene, commit, selection) {
|
|
|
33
33
|
return adapter;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
//#endregion
|
|
37
36
|
export { moveGestureAdapter };
|
|
38
37
|
//# sourceMappingURL=gestureAdapter.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { createTransformOp } from "../../../core/ops/transform.js";
|
|
1
2
|
import { translatePoseViaDescriptor } from "../../../core/geometry/poseDescriptor.js";
|
|
2
3
|
import { carriedDescendants, sceneCarrySource } from "../../../core/scene/carryDescendants.js";
|
|
3
|
-
import { createTransformOp } from "../../../core/ops/transform.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/landedDescendants.ts
|
|
6
6
|
/**
|
|
7
7
|
* Ops that bring along the descendants of every node `ops` transforms. A
|
|
8
8
|
* layout drop or a behavior places a dragged root somewhere the drag delta
|
|
@@ -46,6 +46,5 @@ function landedDescendantOps(input, ops) {
|
|
|
46
46
|
return out;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
//#endregion
|
|
50
49
|
export { landedDescendantOps };
|
|
51
50
|
//# sourceMappingURL=landedDescendants.js.map
|
|
@@ -1,17 +1,14 @@
|
|
|
1
|
+
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
1
2
|
import { toPlane } from "../../../../core/viewport/parallax.js";
|
|
2
3
|
import { childFrameAt, composeWorldPose } from "../../../../core/scene/composeFrame.js";
|
|
3
|
-
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
4
4
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
5
5
|
import { planeOf } from "../../planeInput.js";
|
|
6
|
-
import { boxOf, containerView, draggedInView } from "./view.js";
|
|
7
6
|
import { carryDragged } from "./dragged.js";
|
|
8
7
|
import { refusalOf } from "../../dropVerdict.js";
|
|
9
|
-
import {
|
|
8
|
+
import { boxOf, containerView, draggedInView } from "./view.js";
|
|
9
|
+
import { pointInPath, rectContainsPointHalfOpen } from "@weasel-js/geom";
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
function pointInBounds(b, at) {
|
|
13
|
-
return at.x >= b.x && at.x < b.x + b.width && at.y >= b.y && at.y < b.y + b.height;
|
|
14
|
-
}
|
|
11
|
+
// src/interactions/actions/move/layout/container.ts
|
|
15
12
|
/** Whether a world point falls in a drop region, which is authored relative to
|
|
16
13
|
* the top-left of the container's world bounds. */
|
|
17
14
|
function regionContains(region, bounds, point) {
|
|
@@ -70,7 +67,7 @@ function pickContainer(session, dragged, center) {
|
|
|
70
67
|
if (region) return regionContains(region, aabb, at);
|
|
71
68
|
if (mode === "region") return false;
|
|
72
69
|
if (layout.contains) return layout.contains(cPose, at);
|
|
73
|
-
return
|
|
70
|
+
return rectContainsPointHalfOpen(aabb, at.x, at.y);
|
|
74
71
|
};
|
|
75
72
|
const consider = (id, zPath) => {
|
|
76
73
|
const layout = layoutDep.getLayout(id);
|
|
@@ -120,6 +117,5 @@ function pickContainer(session, dragged, center) {
|
|
|
120
117
|
return chooseContainer(scene, mode, candidates);
|
|
121
118
|
}
|
|
122
119
|
|
|
123
|
-
|
|
124
|
-
export { pickContainer, pointInBounds };
|
|
120
|
+
export { pickContainer };
|
|
125
121
|
//# sourceMappingURL=container.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","names":[],"sources":["../../../../../src/interactions/actions/move/layout/container.ts"],"sourcesContent":["import { pointInPath } from '@weasel-js/geom';\nimport type { NodeId, Scene } from 'core/scene/types';\nimport { poseDescriptorForNode } from 'core/geometry/poseDescriptor';\nimport { toPlane, type PlaneMap } from 'core/viewport/parallax';\nimport { childFrameAt, composeWorldPose } from 'core/scene/composePose';\nimport { sceneViewPoseAdapter } from 'core/scene/scenePoseAdapter';\nimport type { DropRegion, LayoutContainer, LayoutStrategy } from '../../../../layout/types';\nimport type { LayoutDep } from '../../depSchema';\nimport { planeOf } from '../../planeInput';\nimport type { MoveSession } from '../session';\nimport { carryDragged, type DraggedChild } from './dragged';\nimport { refusalOf } from '../../dropVerdict';\nimport type { StrategyView } from 'core/scene/strategyView';\nimport { boxOf, containerView, draggedInView } from './view';\n\nexport interface Bounds4 { x: number; y: number; width: number; height: number }\
|
|
1
|
+
{"version":3,"file":"container.js","names":[],"sources":["../../../../../src/interactions/actions/move/layout/container.ts"],"sourcesContent":["import { pointInPath, rectContainsPointHalfOpen } from '@weasel-js/geom';\nimport type { NodeId, Scene } from 'core/scene/types';\nimport { poseDescriptorForNode } from 'core/geometry/poseDescriptor';\nimport { toPlane, type PlaneMap } from 'core/viewport/parallax';\nimport { childFrameAt, composeWorldPose } from 'core/scene/composePose';\nimport { sceneViewPoseAdapter } from 'core/scene/scenePoseAdapter';\nimport type { DropRegion, LayoutContainer, LayoutStrategy } from '../../../../layout/types';\nimport type { LayoutDep } from '../../depSchema';\nimport { planeOf } from '../../planeInput';\nimport type { MoveSession } from '../session';\nimport { carryDragged, type DraggedChild } from './dragged';\nimport { refusalOf } from '../../dropVerdict';\nimport type { StrategyView } from 'core/scene/strategyView';\nimport { boxOf, containerView, draggedInView } from './view';\n\nexport interface Bounds4 { x: number; y: number; width: number; height: number }\n\ntype Layout = LayoutStrategy<unknown>;\nexport interface Candidate {\n id: NodeId;\n /** The container's body in world: what the pointer is tested against. */\n bounds: Bounds4;\n /** Its content's frame, `bounds` moved by its scroll offset, in `view`'s\n * space: the `LayoutContainer.bounds` its strategy is handed, so the slots\n * it places agree with its children as they are shown. */\n content: Bounds4;\n /** The container as its strategy sees it: upright, in its own frame. */\n view: StrategyView<unknown>;\n layout: LayoutStrategy<unknown>;\n zPath: number[];\n depth: number;\n /** The edited plane into this container's. */\n plane: PlaneMap | null;\n /** The reason it refuses the drop, when it does: it still blocks the containers around it. */\n refused?: string;\n}\n\n/** Whether a world point falls in a drop region, which is authored relative to\n * the top-left of the container's world bounds. */\nfunction regionContains(\n region: DropRegion,\n bounds: { x: number; y: number },\n point: { x: number; y: number },\n): boolean {\n const local = { x: point.x - bounds.x, y: point.y - bounds.y };\n return typeof region === 'function'\n ? region(local)\n : pointInPath(region, local.x, local.y);\n}\n\nfunction chooseContainer(\n scene: Scene<unknown, string, unknown>,\n mode: NonNullable<LayoutDep['dropTarget']>,\n candidates: readonly Candidate[],\n): Candidate | null {\n let dest: Candidate | null = null;\n if (mode === 'topmost') {\n // Painted last wins, in the scene's own render order — which crosses\n // subtrees and layers, where a sibling-index path cannot.\n const byId = new Map<NodeId, Candidate>(candidates.map((c) => [c.id, c]));\n for (const id of scene.renderOrder()) dest = byId.get(id) ?? dest;\n } else {\n // Deepest wins; sibling-index path breaks ties (higher z = later index).\n for (const c of candidates) {\n if (dest === null) { dest = c; continue; }\n if (c.depth > dest.depth) { dest = c; continue; }\n if (c.depth < dest.depth) continue;\n let cAfter = false;\n for (let i = 0; i < c.zPath.length; i++) {\n if (c.zPath[i] > dest.zPath[i]) { cAfter = true; break; }\n if (c.zPath[i] < dest.zPath[i]) { cAfter = false; break; }\n }\n if (cAfter) dest = c;\n }\n }\n return dest;\n}\n\n/** The layout container that takes the drop at `center`, or null. */\nexport function pickContainer(\n session: MoveSession,\n dragged: readonly DraggedChild[],\n center: { x: number; y: number },\n): Candidate | null {\n const layoutDep = session.layout;\n if (!layoutDep) return null;\n const scene = session.scene;\n const pc = session.pc;\n const poseAdapter = sceneViewPoseAdapter(scene);\n const d = session.projection;\n const draggedIds = new Set<NodeId>(dragged.map((c) => c.id));\n const candidates: Candidate[] = [];\n const mode = layoutDep.dropTarget ?? 'innermost';\n const testInside = (\n id: NodeId, cPose: unknown, aabb: Bounds4, layout: Layout, at: { x: number; y: number },\n ): boolean => {\n const region = layout.dropRegion?.({ id: id as string, bounds: aabb }) ?? null;\n if (region) return regionContains(region, aabb, at);\n if (mode === 'region') return false;\n if (layout.contains) return layout.contains(cPose, at);\n return rectContainsPointHalfOpen(aabb, at.x, at.y);\n };\n const consider = (id: NodeId, zPath: number[]): void => {\n const layout = layoutDep.getLayout(id as string);\n if (!layout) return;\n const node = scene.get(id);\n if (!node) return;\n const worldPose = composeWorldPose(poseAdapter, id as string, pc.compose);\n const g = poseDescriptorForNode(d, node);\n const worldAABB = g.getBounds(worldPose);\n const plane = planeOf(session.view, node.layer);\n const at = plane ? toPlane(plane, center) : center;\n if (!testInside(id, worldPose, worldAABB, layout, at)) return;\n const verdict = session.verdict(id);\n if (verdict === false) return;\n const refused = refusalOf(verdict);\n const view = containerView(pc, g, worldPose);\n const content = boxOf(g, view.toStrategy(childFrameAt(poseAdapter, id as string, worldPose)));\n if (refused === null && layout.acceptsDrop) {\n const arg: LayoutContainer = { id: id as string, bounds: content };\n for (const c of dragged) {\n if (!layout.acceptsDrop(arg, draggedInView(view, carryDragged(session, c, plane).arg))) return;\n }\n }\n candidates.push({\n id,\n bounds: worldAABB,\n content,\n view,\n layout,\n zPath,\n depth: zPath.length,\n plane,\n ...(refused !== null ? { refused } : {}),\n });\n };\n const walk = (parentId: NodeId | null, parentPath: number[]): void => {\n const childIds = parentId === null ? scene.roots : scene.childrenOf(parentId);\n for (let i = 0; i < childIds.length; i++) {\n // A dragged root's subtree goes with it: dropping into one of its own\n // descendants would reparent it under itself.\n if (draggedIds.has(childIds[i])) continue;\n const childPath = [...parentPath, i];\n consider(childIds[i], childPath);\n walk(childIds[i], childPath);\n }\n };\n walk(null, []);\n\n return chooseContainer(scene, mode, candidates);\n}\n"],"mappings":";;;;;;;;;;;;;AAuCA,SAAS,eACP,QACA,QACA,OACS;CACT,MAAM,QAAQ;EAAE,GAAG,MAAM,IAAI,OAAO;EAAG,GAAG,MAAM,IAAI,OAAO;CAAE;CAC7D,OAAO,OAAO,WAAW,aACrB,OAAO,KAAK,IACZ,YAAY,QAAQ,MAAM,GAAG,MAAM,CAAC;AAC1C;AAEA,SAAS,gBACP,OACA,MACA,YACkB;CAClB,IAAI,OAAyB;CAC7B,IAAI,SAAS,WAAW;EAGtB,MAAM,OAAO,IAAI,IAAuB,WAAW,KAAK,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;EACxE,KAAK,MAAM,MAAM,MAAM,YAAY,GAAG,OAAO,KAAK,IAAI,EAAE,KAAK;CAC/D,OAEE,KAAK,MAAM,KAAK,YAAY;EAC1B,IAAI,SAAS,MAAM;GAAE,OAAO;GAAG;EAAU;EACzC,IAAI,EAAE,QAAQ,KAAK,OAAO;GAAE,OAAO;GAAG;EAAU;EAChD,IAAI,EAAE,QAAQ,KAAK,OAAO;EAC1B,IAAI,SAAS;EACb,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,MAAM,QAAQ,KAAK;GACvC,IAAI,EAAE,MAAM,KAAK,KAAK,MAAM,IAAI;IAAE,SAAS;IAAM;GAAO;GACxD,IAAI,EAAE,MAAM,KAAK,KAAK,MAAM,IAAI;IAAE,SAAS;IAAO;GAAO;EAC3D;EACA,IAAI,QAAQ,OAAO;CACrB;CAEF,OAAO;AACT;;AAGA,SAAgB,cACd,SACA,SACA,QACkB;CAClB,MAAM,YAAY,QAAQ;CAC1B,IAAI,CAAC,WAAW,OAAO;CACvB,MAAM,QAAQ,QAAQ;CACtB,MAAM,KAAK,QAAQ;CACnB,MAAM,cAAc,qBAAqB,KAAK;CAC9C,MAAM,IAAI,QAAQ;CAClB,MAAM,aAAa,IAAI,IAAY,QAAQ,KAAK,MAAM,EAAE,EAAE,CAAC;CAC3D,MAAM,aAA0B,CAAC;CACjC,MAAM,OAAO,UAAU,cAAc;CACrC,MAAM,cACJ,IAAY,OAAgB,MAAe,QAAgB,OAC/C;EACZ,MAAM,SAAS,OAAO,aAAa;GAAM;GAAc,QAAQ;EAAK,CAAC,KAAK;EAC1E,IAAI,QAAQ,OAAO,eAAe,QAAQ,MAAM,EAAE;EAClD,IAAI,SAAS,UAAU,OAAO;EAC9B,IAAI,OAAO,UAAU,OAAO,OAAO,SAAS,OAAO,EAAE;EACrD,OAAO,0BAA0B,MAAM,GAAG,GAAG,GAAG,CAAC;CACnD;CACA,MAAM,YAAY,IAAY,UAA0B;EACtD,MAAM,SAAS,UAAU,UAAU,EAAY;EAC/C,IAAI,CAAC,QAAQ;EACb,MAAM,OAAO,MAAM,IAAI,EAAE;EACzB,IAAI,CAAC,MAAM;EACX,MAAM,YAAY,iBAAiB,aAAa,IAAc,GAAG,OAAO;EACxE,MAAM,IAAI,sBAAsB,GAAG,IAAI;EACvC,MAAM,YAAY,EAAE,UAAU,SAAS;EACvC,MAAM,QAAQ,QAAQ,QAAQ,MAAM,KAAK,KAAK;EAC9C,MAAM,KAAK,QAAQ,QAAQ,OAAO,MAAM,IAAI;EAC5C,IAAI,CAAC,WAAW,IAAI,WAAW,WAAW,QAAQ,EAAE,GAAG;EACvD,MAAM,UAAU,QAAQ,QAAQ,EAAE;EAClC,IAAI,YAAY,OAAO;EACvB,MAAM,UAAU,UAAU,OAAO;EACjC,MAAM,OAAO,cAAc,IAAI,GAAG,SAAS;EAC3C,MAAM,UAAU,MAAM,GAAG,KAAK,WAAW,aAAa,aAAa,IAAc,SAAS,CAAC,CAAC;EAC5F,IAAI,YAAY,QAAQ,OAAO,aAAa;GAC1C,MAAM,MAAuB;IAAM;IAAc,QAAQ;GAAQ;GACjE,KAAK,MAAM,KAAK,SACd,IAAI,CAAC,OAAO,YAAY,KAAK,cAAc,MAAM,aAAa,SAAS,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG;EAE5F;EACA,WAAW,KAAK;GACd;GACA,QAAQ;GACR;GACA;GACA;GACA;GACA,OAAO,MAAM;GACb;GACA,GAAI,YAAY,OAAO,EAAE,QAAQ,IAAI,CAAC;EACxC,CAAC;CACH;CACA,MAAM,QAAQ,UAAyB,eAA+B;EACpE,MAAM,WAAW,aAAa,OAAO,MAAM,QAAQ,MAAM,WAAW,QAAQ;EAC5E,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;GAGxC,IAAI,WAAW,IAAI,SAAS,EAAE,GAAG;GACjC,MAAM,YAAY,CAAC,GAAG,YAAY,CAAC;GACnC,SAAS,SAAS,IAAI,SAAS;GAC/B,KAAK,SAAS,IAAI,SAAS;EAC7B;CACF;CACA,KAAK,MAAM,CAAC,CAAC;CAEb,OAAO,gBAAgB,OAAO,MAAM,UAAU;AAChD"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import { poseDescriptorForNode, translatePoseViaDescriptor } from "../../../../core/geometry/poseDescriptor.js";
|
|
1
2
|
import { toPlane } from "../../../../core/viewport/parallax.js";
|
|
2
3
|
import { composeWorldPose } from "../../../../core/scene/composeFrame.js";
|
|
3
|
-
import { poseDescriptorForNode, translatePoseViaDescriptor } from "../../../../core/geometry/poseDescriptor.js";
|
|
4
4
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
5
5
|
import { carryPose, invertPlane, planeOf } from "../../planeInput.js";
|
|
6
6
|
import { grabbedPoseAdapter, planeDelta } from "../delta.js";
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
// src/interactions/actions/move/layout/dragged.ts
|
|
9
9
|
/** Each dragged root in world, in the edited plane. */
|
|
10
10
|
function gatherDragged(session, delta) {
|
|
11
11
|
const scene = session.scene;
|
|
@@ -75,6 +75,5 @@ function selectionCenter(session, dragged) {
|
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
//#endregion
|
|
79
78
|
export { carryDragged, gatherDragged, selectionCenter };
|
|
80
79
|
//# sourceMappingURL=dragged.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
import { asNodeId } from "../../../../core/scene/types.js";
|
|
1
2
|
import { toPlane } from "../../../../core/viewport/parallax.js";
|
|
2
3
|
import { composeWorldPose, rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
3
|
-
import { poseDescriptorForNode, translatePoseViaDescriptor } from "../../../../core/geometry/poseDescriptor.js";
|
|
4
4
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
5
5
|
import { carriedDescendants, sceneCarrySource } from "../../../../core/scene/carryDescendants.js";
|
|
6
|
-
import {
|
|
7
|
-
import { boxOf, containerView, draggedInView, pointInView } from "./view.js";
|
|
8
|
-
import { carryDragged, gatherDragged, selectionCenter } from "./dragged.js";
|
|
6
|
+
import { poseDescriptorForNode, translatePoseViaDescriptor } from "../../../../core/geometry/poseDescriptor.js";
|
|
9
7
|
import { pickContainer } from "./container.js";
|
|
8
|
+
import { carryDragged, gatherDragged, selectionCenter } from "./dragged.js";
|
|
9
|
+
import { boxOf, containerView, draggedInView, pointInView } from "./view.js";
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
// src/interactions/actions/move/layout/dropPass.ts
|
|
12
12
|
/** Dragged ids grouped by the container they are leaving, skipping any that
|
|
13
13
|
* stay put (`exclude` is the destination) or that had no container. */
|
|
14
14
|
function groupBySourceContainer(dragged, exclude) {
|
|
@@ -194,6 +194,5 @@ function runDropPass(session, delta, pointer) {
|
|
|
194
194
|
};
|
|
195
195
|
}
|
|
196
196
|
|
|
197
|
-
//#endregion
|
|
198
197
|
export { groupBySourceContainer, runDropPass };
|
|
199
198
|
//# sourceMappingURL=dropPass.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
1
2
|
import { toPlane } from "../../../../core/viewport/parallax.js";
|
|
2
3
|
import { composeWorldPose } from "../../../../core/scene/composeFrame.js";
|
|
3
|
-
import { poseDescriptorForNode } from "../../../../core/geometry/poseDescriptor.js";
|
|
4
4
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
5
5
|
import { planeOf } from "../../planeInput.js";
|
|
6
|
-
import {
|
|
6
|
+
import { rectContainsPointHalfOpen } from "@weasel-js/geom";
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
// src/interactions/actions/move/layout/exits.ts
|
|
9
9
|
/** Where each dragged root that leaves its layout container on release lands.
|
|
10
10
|
* A root leaves when the drop center falls outside the body of the layout
|
|
11
11
|
* container holding it, and lands under the innermost plain container beneath
|
|
@@ -27,7 +27,7 @@ function resolveLayoutExits(session, dropCenter, ids) {
|
|
|
27
27
|
const pose = composeWorldPose(poseAdapter, id, pc.compose);
|
|
28
28
|
if (layout?.contains) return layout.contains(pose, at);
|
|
29
29
|
const b = poseDescriptorForNode(d, node).getBounds(pose);
|
|
30
|
-
return
|
|
30
|
+
return rectContainsPointHalfOpen(b, at.x, at.y);
|
|
31
31
|
};
|
|
32
32
|
const landings = /* @__PURE__ */ new Map();
|
|
33
33
|
const landingOn = (layer) => {
|
|
@@ -61,6 +61,5 @@ function resolveLayoutExits(session, dropCenter, ids) {
|
|
|
61
61
|
return out;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
//#endregion
|
|
65
64
|
export { resolveLayoutExits };
|
|
66
65
|
//# sourceMappingURL=exits.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exits.js","names":[],"sources":["../../../../../src/interactions/actions/move/layout/exits.ts"],"sourcesContent":["import type { NodeId } from 'core/scene/types';\nimport { poseDescriptorForNode } from 'core/geometry/poseDescriptor';\nimport { toPlane } from 'core/viewport/parallax';\nimport { composeWorldPose } from 'core/scene/composePose';\nimport { sceneViewPoseAdapter } from 'core/scene/scenePoseAdapter';\nimport type { LayoutStrategy } from '../../../../layout/types';\nimport { planeOf } from '../../planeInput';\nimport type { MoveSession } from '../session';\nimport {
|
|
1
|
+
{"version":3,"file":"exits.js","names":[],"sources":["../../../../../src/interactions/actions/move/layout/exits.ts"],"sourcesContent":["import type { NodeId } from 'core/scene/types';\nimport { poseDescriptorForNode } from 'core/geometry/poseDescriptor';\nimport { toPlane } from 'core/viewport/parallax';\nimport { composeWorldPose } from 'core/scene/composePose';\nimport { sceneViewPoseAdapter } from 'core/scene/scenePoseAdapter';\nimport type { LayoutStrategy } from '../../../../layout/types';\nimport { planeOf } from '../../planeInput';\nimport type { MoveSession } from '../session';\nimport { rectContainsPointHalfOpen } from '@weasel-js/geom';\n\n/** Where each dragged root that leaves its layout container on release lands.\n * A root leaves when the drop center falls outside the body of the layout\n * container holding it, and lands under the innermost plain container beneath\n * the drop that admits it (`canDropInto`) — a layout container there has\n * already declined it — or at the top level of its layer. A root whose parent\n * has no layout is not this pass's to move; `reparentOnDrop` decides for those. */\nexport function resolveLayoutExits(\n session: MoveSession, dropCenter: { x: number; y: number } | null, ids: Iterable<NodeId>,\n): Map<NodeId, NodeId | null> {\n const out = new Map<NodeId, NodeId | null>();\n const layoutDep = session.layout;\n const center = dropCenter;\n if (!layoutDep || !center) return out;\n const { scene, pc, projection: d } = session;\n const poseAdapter = sceneViewPoseAdapter(scene);\n const excluded = new Set<NodeId>([...session.ids, ...session.cascadeIds]);\n const holds = (id: NodeId, layout: LayoutStrategy<unknown> | null): boolean => {\n const node = scene.get(id)!;\n const plane = planeOf(session.view, node.layer);\n const at = plane ? toPlane(plane, center) : center;\n const pose = composeWorldPose(poseAdapter, id as string, pc.compose);\n if (layout?.contains) return layout.contains(pose, at);\n const b = poseDescriptorForNode(d, node).getBounds(pose);\n return rectContainsPointHalfOpen(b, at.x, at.y);\n };\n const landings = new Map<string, NodeId | null>();\n const landingOn = (layer: string): NodeId | null => {\n if (landings.has(layer)) return landings.get(layer)!;\n // Deepest wins; among equals, the later sibling (painted over the other).\n let best: NodeId | null = null;\n let bestDepth = -1;\n const walk = (parentId: NodeId | null, depth: number): void => {\n for (const id of parentId === null ? scene.roots : scene.childrenOf(parentId)) {\n if (excluded.has(id)) continue;\n const node = scene.get(id);\n if (!node) continue;\n if (node.layer === layer && depth >= bestDepth\n && layoutDep.getLayout(id as string) === null && holds(id, null) && session.admits(id)) {\n best = id;\n bestDepth = depth;\n }\n walk(id, depth + 1);\n }\n };\n walk(null, 0);\n landings.set(layer, best);\n return best;\n };\n for (const id of ids) {\n const node = scene.get(id);\n const parent = node?.parent ?? null;\n if (!node || parent === null) continue;\n const layout = layoutDep.getLayout(parent as string);\n if (!layout || holds(parent, layout)) continue;\n out.set(id, landingOn(node.layer));\n }\n return out;\n}\n"],"mappings":";;;;;;;;;;;;;;AAgBA,SAAgB,mBACd,SAAsB,YAA6C,KACvC;CAC5B,MAAM,sBAAM,IAAI,IAA2B;CAC3C,MAAM,YAAY,QAAQ;CAC1B,MAAM,SAAS;CACf,IAAI,CAAC,aAAa,CAAC,QAAQ,OAAO;CAClC,MAAM,EAAE,OAAO,IAAI,YAAY,MAAM;CACrC,MAAM,cAAc,qBAAqB,KAAK;CAC9C,MAAM,2BAAW,IAAI,IAAY,CAAC,GAAG,QAAQ,KAAK,GAAG,QAAQ,UAAU,CAAC;CACxE,MAAM,SAAS,IAAY,WAAoD;EAC7E,MAAM,OAAO,MAAM,IAAI,EAAE;EACzB,MAAM,QAAQ,QAAQ,QAAQ,MAAM,KAAK,KAAK;EAC9C,MAAM,KAAK,QAAQ,QAAQ,OAAO,MAAM,IAAI;EAC5C,MAAM,OAAO,iBAAiB,aAAa,IAAc,GAAG,OAAO;EACnE,IAAI,QAAQ,UAAU,OAAO,OAAO,SAAS,MAAM,EAAE;EACrD,MAAM,IAAI,sBAAsB,GAAG,IAAI,CAAC,CAAC,UAAU,IAAI;EACvD,OAAO,0BAA0B,GAAG,GAAG,GAAG,GAAG,CAAC;CAChD;CACA,MAAM,2BAAW,IAAI,IAA2B;CAChD,MAAM,aAAa,UAAiC;EAClD,IAAI,SAAS,IAAI,KAAK,GAAG,OAAO,SAAS,IAAI,KAAK;EAElD,IAAI,OAAsB;EAC1B,IAAI,YAAY;EAChB,MAAM,QAAQ,UAAyB,UAAwB;GAC7D,KAAK,MAAM,MAAM,aAAa,OAAO,MAAM,QAAQ,MAAM,WAAW,QAAQ,GAAG;IAC7E,IAAI,SAAS,IAAI,EAAE,GAAG;IACtB,MAAM,OAAO,MAAM,IAAI,EAAE;IACzB,IAAI,CAAC,MAAM;IACX,IAAI,KAAK,UAAU,SAAS,SAAS,aAChC,UAAU,UAAU,EAAY,MAAM,QAAQ,MAAM,IAAI,IAAI,KAAK,QAAQ,OAAO,EAAE,GAAG;KACxF,OAAO;KACP,YAAY;IACd;IACA,KAAK,IAAI,QAAQ,CAAC;GACpB;EACF;EACA,KAAK,MAAM,CAAC;EACZ,SAAS,IAAI,OAAO,IAAI;EACxB,OAAO;CACT;CACA,KAAK,MAAM,MAAM,KAAK;EACpB,MAAM,OAAO,MAAM,IAAI,EAAE;EACzB,MAAM,SAAS,MAAM,UAAU;EAC/B,IAAI,CAAC,QAAQ,WAAW,MAAM;EAC9B,MAAM,SAAS,UAAU,UAAU,MAAgB;EACnD,IAAI,CAAC,UAAU,MAAM,QAAQ,MAAM,GAAG;EACtC,IAAI,IAAI,IAAI,UAAU,KAAK,KAAK,CAAC;CACnC;CACA,OAAO;AACT"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { composeChildFrame, frameAtOrAbove, rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
2
1
|
import { documentPose } from "../../../../core/scene/effectivePose.js";
|
|
2
|
+
import { composeChildFrame, frameAtOrAbove, rebaseLocalPose } from "../../../../core/scene/composeFrame.js";
|
|
3
3
|
import { sceneViewPoseAdapter } from "../../../../core/scene/scenePoseAdapter.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/layout/glide.ts
|
|
6
6
|
/** Hold a node still gliding from an earlier reflow where it is shown. Returns
|
|
7
7
|
* how far that stands from its document pose, or null when it is not gliding. */
|
|
8
8
|
function catchGliding(scene, reflow, projection, id) {
|
|
@@ -64,6 +64,5 @@ function landReleased(session, reflow, released) {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
//#endregion
|
|
68
67
|
export { catchGliding, landReleased, releasedPoses, stepGlide };
|
|
69
68
|
//# sourceMappingURL=glide.js.map
|
|
@@ -2,7 +2,7 @@ import { translatePoseViaDescriptor } from "../../../../core/geometry/poseDescri
|
|
|
2
2
|
import { createTransformOp } from "../../../../core/ops/transform.js";
|
|
3
3
|
import { strategyView } from "../../../../core/scene/strategyView.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/layout/view.ts
|
|
6
6
|
/** `pose`'s box as `g` measures it, and nothing else of it. */
|
|
7
7
|
function boxOf(g, pose) {
|
|
8
8
|
const b = g.getBounds(pose);
|
|
@@ -50,6 +50,5 @@ function opInWorld(view, op) {
|
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
//#endregion
|
|
54
53
|
export { boxOf, containerView, draggedInView, opInWorld, pointInView };
|
|
55
54
|
//# sourceMappingURL=view.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { composeWorldPose } from "../../../core/scene/composeFrame.js";
|
|
2
1
|
import { poseDescriptorForNode } from "../../../core/geometry/poseDescriptor.js";
|
|
2
|
+
import { composeWorldPose } from "../../../core/scene/composeFrame.js";
|
|
3
3
|
import { sceneViewPoseAdapter } from "../../../core/scene/scenePoseAdapter.js";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/move/refusal.ts
|
|
6
6
|
/** What a move draws over a refusal: the container's outline, refused, and the reason at the pointer. */
|
|
7
7
|
function refusalOverlays(refusal, pointer) {
|
|
8
8
|
const { x, y, width, height } = refusal.bounds;
|
|
@@ -47,6 +47,5 @@ function worldBoundsOf(session, id) {
|
|
|
47
47
|
return poseDescriptorForNode(session.projection, node).getBounds(pose);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
//#endregion
|
|
51
50
|
export { refusalOverlays, worldBoundsOf };
|
|
52
51
|
//# sourceMappingURL=refusal.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { gestureReaders } from "../../gestures/shared/screenTolerance.js";
|
|
1
2
|
import { childVerdict } from "../admitsChild.js";
|
|
2
|
-
import { nodeDescriptors, poseDescriptorOf } from "../poseDescriptorDep.js";
|
|
3
|
-
import { transformFinisher } from "../transformFinish.js";
|
|
4
3
|
import { commitGestureOps, readGestureLifecycle } from "../gestureLifecycle.js";
|
|
5
|
-
import {
|
|
4
|
+
import { transformFinisher } from "../transformFinish.js";
|
|
5
|
+
import { nodeDescriptors, poseDescriptorOf } from "../poseDescriptorDep.js";
|
|
6
6
|
import { moveSources } from "../selectionSubtree.js";
|
|
7
7
|
import { layoutDrop } from "./behaviors/layoutDrop.js";
|
|
8
8
|
import { reparentOnDrop } from "./behaviors/reparentOnDrop.js";
|
|
@@ -11,7 +11,7 @@ import { moveGestureAdapter } from "./gestureAdapter.js";
|
|
|
11
11
|
import { lazySnapSession } from "../../../domains/snap/lazySession.js";
|
|
12
12
|
import { isPathEditPart, resolveParams } from "@weasel-js/routing";
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
// src/interactions/actions/move/session.ts
|
|
15
15
|
function verdictOf(canDropInto, ids, scene) {
|
|
16
16
|
const roots = ids;
|
|
17
17
|
return (parent) => childVerdict(scene, parent, roots, canDropInto);
|
|
@@ -99,6 +99,5 @@ function beginMove(ctx, opts, frame) {
|
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
//#endregion
|
|
103
102
|
export { beginMove };
|
|
104
103
|
//# sourceMappingURL=session.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { localDelta, storedLeadFor } from "./delta.js";
|
|
2
1
|
import { translateNodeOps } from "../moveNodes.js";
|
|
2
|
+
import { localDelta, storedLeadFor } from "./delta.js";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/interactions/actions/move/translate.ts
|
|
5
5
|
/** The default translate commit: one transform op per id, plus the data-held
|
|
6
6
|
* geometry op when the `geometryProjection` seam is wired. */
|
|
7
7
|
function translateOps(session, ids, delta) {
|
|
@@ -48,6 +48,5 @@ function unreleasedIds(session, released) {
|
|
|
48
48
|
return out;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
//#endregion
|
|
52
51
|
export { rootTranslateOps, translateOps, unreleasedIds };
|
|
53
52
|
//# sourceMappingURL=translate.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { leadUnder, translatePoseViaDescriptor } from "../../core/geometry/poseDescriptor.js";
|
|
2
|
-
import { scenePoseFrame } from "./poseFrame.js";
|
|
3
|
-
import { nodeDescriptors, poseDescriptorOf } from "./poseDescriptorDep.js";
|
|
4
|
-
import { commitTransformOps } from "./transformFinish.js";
|
|
5
2
|
import { createTransformOp } from "../../core/ops/transform.js";
|
|
6
|
-
import { moveSources, storedDelta, translateTargets } from "./selectionSubtree.js";
|
|
7
3
|
import { geometryDataOp } from "./geometryProjection.js";
|
|
4
|
+
import { nodeDescriptors, poseDescriptorOf } from "./poseDescriptorDep.js";
|
|
5
|
+
import { scenePoseFrame } from "./poseFrame.js";
|
|
6
|
+
import { moveSources, storedDelta, translateTargets } from "./selectionSubtree.js";
|
|
7
|
+
import { commitTransformOps } from "./transformFinish.js";
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
// src/interactions/actions/moveNodes.ts
|
|
10
10
|
/** The deps {@link moveNodes} reads; an action calling it declares these. */
|
|
11
11
|
var MOVE_NODES_REQUIRES = [
|
|
12
12
|
"scene",
|
|
@@ -98,6 +98,5 @@ function moveNodes(deps, ids, delta, label = "Move") {
|
|
|
98
98
|
return ops.length > 0 && commitTransformOps(deps, ops, label);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
//#endregion
|
|
102
101
|
export { MOVE_NODES_REQUIRES, moveNodes, moveNodesOps, translateNodeOps };
|
|
103
102
|
//# sourceMappingURL=moveNodes.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/interactions/actions/notices.ts
|
|
2
2
|
/** Warn the user through `notices`, or under `tag` on the console without one. */
|
|
3
3
|
function warnUser(notices, tag, title, opts = {}) {
|
|
4
4
|
if (notices) notices.warn(title, opts);
|
|
@@ -12,6 +12,5 @@ function warnTextOutlines(notices, tag, error) {
|
|
|
12
12
|
});
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
//#endregion
|
|
16
15
|
export { warnTextOutlines, warnUser };
|
|
17
16
|
//# sourceMappingURL=notices.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { replaceWithPaths } from "./replaceWithPaths.js";
|
|
2
2
|
import { TextOutlinesError, textToPathsByPaint } from "@weasel-js/text";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/interactions/actions/outlines/createOutlines.ts
|
|
5
5
|
/**
|
|
6
6
|
* Convert every text node among `ids` — the selection, when not given — to
|
|
7
7
|
* outlines, as one batch labeled "Create Outlines". Other nodes are left
|
|
@@ -42,6 +42,5 @@ function applyCreateOutlines(adapter, ids) {
|
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
//#endregion
|
|
46
45
|
export { applyCreateOutlines };
|
|
47
46
|
//# sourceMappingURL=createOutlines.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { warnTextOutlines } from "../notices.js";
|
|
2
1
|
import { applyCreateOutlines } from "./createOutlines.js";
|
|
2
|
+
import { warnTextOutlines } from "../notices.js";
|
|
3
3
|
import { ActionDisabledReason } from "@weasel-js/routing";
|
|
4
4
|
import { loadTextOutlines } from "@weasel-js/text";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/interactions/actions/outlines/createOutlinesAction.tsx
|
|
7
7
|
/**
|
|
8
8
|
* Run `apply`, an outline conversion of `adapter`'s selection, waiting first
|
|
9
9
|
* for any face whose outlines are registered but not yet loaded — a face is
|
|
@@ -66,6 +66,5 @@ var createOutlinesAction = {
|
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
|
|
69
|
-
//#endregion
|
|
70
69
|
export { createOutlinesAction, runCreateOutlines, withTextOutlines };
|
|
71
70
|
//# sourceMappingURL=createOutlinesAction.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { strokeRegion } from "./strokeRegion.js";
|
|
2
1
|
import { replaceWithPaths } from "./replaceWithPaths.js";
|
|
2
|
+
import { strokeRegion } from "./strokeRegion.js";
|
|
3
3
|
import { resolveFill, resolveStroke } from "@weasel-js/paint";
|
|
4
4
|
import { TextOutlinesError, textToPathsByPaint } from "@weasel-js/text";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/interactions/actions/outlines/outlineStroke.ts
|
|
7
7
|
/**
|
|
8
8
|
* Outline Stroke: replace each selected stroked path, or stroked text, with
|
|
9
9
|
* the region its stroke covers, as a path filled in the stroke's paint. A node
|
|
@@ -92,6 +92,5 @@ function applyOutlineStroke(adapter, opts = {}) {
|
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
//#endregion
|
|
96
95
|
export { applyOutlineStroke, textIsStroked };
|
|
97
96
|
//# sourceMappingURL=outlineStroke.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { withTextOutlines } from "./createOutlinesAction.js";
|
|
2
1
|
import { applyOutlineStroke, textIsStroked } from "./outlineStroke.js";
|
|
2
|
+
import { withTextOutlines } from "./createOutlinesAction.js";
|
|
3
3
|
import { ActionDisabledReason } from "@weasel-js/routing";
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// src/interactions/actions/outlines/outlineStrokeAction.tsx
|
|
6
6
|
/**
|
|
7
7
|
* Static descriptor for Outline Stroke: replace each selected
|
|
8
8
|
* stroked path, or stroked text, with the region its stroke covers, filled in
|
|
@@ -38,6 +38,5 @@ var outlineStrokeAction = {
|
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
-
//#endregion
|
|
42
41
|
export { outlineStrokeAction };
|
|
43
42
|
//# sourceMappingURL=outlineStrokeAction.js.map
|