@yuzhouu/canvas-kit 0.1.2 → 0.1.4
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/README.md +80 -78
- package/_vendor/canvas-core/bindings/bindingUtil.d.ts +45 -0
- package/_vendor/canvas-core/bindings/bindingUtilRegistry.d.ts +8 -0
- package/_vendor/canvas-core/bindings/terminalBinding.d.ts +28 -0
- package/_vendor/canvas-core/editor/camera.d.ts +3 -0
- package/_vendor/canvas-core/editor/clipboard.d.ts +43 -0
- package/_vendor/canvas-core/editor/commands.d.ts +131 -0
- package/_vendor/canvas-core/editor/createEditorWithPlugins.d.ts +6 -0
- package/_vendor/canvas-core/editor/edgeScroll.d.ts +5 -0
- package/_vendor/canvas-core/editor/editor.d.ts +559 -0
- package/_vendor/canvas-core/editor/editorComputedHelpers.d.ts +21 -0
- package/_vendor/canvas-core/editor/editorSelectionTransforms.d.ts +6 -0
- package/_vendor/canvas-core/editor/events.d.ts +71 -0
- package/_vendor/canvas-core/editor/historyManager.d.ts +18 -0
- package/_vendor/canvas-core/editor/index.d.ts +11 -0
- package/_vendor/canvas-core/editor/interactions.d.ts +51 -0
- package/_vendor/canvas-core/editor/internal.d.ts +7 -0
- package/_vendor/canvas-core/editor/managers/bindingManager.d.ts +27 -0
- package/_vendor/canvas-core/editor/managers/cameraManager.d.ts +39 -0
- package/_vendor/canvas-core/editor/managers/clipboardManager.d.ts +14 -0
- package/_vendor/canvas-core/editor/managers/documentSnapshotManager.d.ts +28 -0
- package/_vendor/canvas-core/editor/managers/inputsManager.d.ts +44 -0
- package/_vendor/canvas-core/editor/managers/interactionTransientManager.d.ts +55 -0
- package/_vendor/canvas-core/editor/managers/queryManager.d.ts +77 -0
- package/_vendor/canvas-core/editor/managers/queryState.d.ts +18 -0
- package/_vendor/canvas-core/editor/managers/renderWindowManager.d.ts +25 -0
- package/_vendor/canvas-core/editor/managers/selectionGeometry.d.ts +28 -0
- package/_vendor/canvas-core/editor/managers/selectionLayoutManager.d.ts +29 -0
- package/_vendor/canvas-core/editor/managers/selectionManager.d.ts +21 -0
- package/_vendor/canvas-core/editor/managers/selectionOverlayManager.d.ts +24 -0
- package/_vendor/canvas-core/editor/managers/shapeEditingManager.d.ts +29 -0
- package/_vendor/canvas-core/editor/managers/shapeGeometryManager.d.ts +42 -0
- package/_vendor/canvas-core/editor/managers/shapeHierarchyManager.d.ts +55 -0
- package/_vendor/canvas-core/editor/managers/shapeOrder.d.ts +14 -0
- package/_vendor/canvas-core/editor/managers/shapeReparenting.d.ts +6 -0
- package/_vendor/canvas-core/editor/managers/shortcutManager.d.ts +56 -0
- package/_vendor/canvas-core/editor/managers/sideEffectManager.d.ts +23 -0
- package/_vendor/canvas-core/editor/managers/snapCalculations.d.ts +40 -0
- package/_vendor/canvas-core/editor/managers/snapGeometry.d.ts +26 -0
- package/_vendor/canvas-core/editor/managers/snapIndicators.d.ts +22 -0
- package/_vendor/canvas-core/editor/managers/snapManager.d.ts +29 -0
- package/_vendor/canvas-core/editor/managers/snapSnapshotBuilder.d.ts +22 -0
- package/_vendor/canvas-core/editor/managers/snapTypes.d.ts +98 -0
- package/_vendor/canvas-core/editor/managers/spatialIndexManager.d.ts +30 -0
- package/_vendor/canvas-core/editor/managers/toolManager.d.ts +24 -0
- package/_vendor/canvas-core/editor/queries/shapeTransforms.d.ts +27 -0
- package/_vendor/canvas-core/editor/renderWindow.d.ts +30 -0
- package/_vendor/canvas-core/editor/resizeGeometry.d.ts +97 -0
- package/_vendor/canvas-core/editor/selection.d.ts +231 -0
- package/_vendor/canvas-core/editor/selectionHandleInteractions.d.ts +11 -0
- package/_vendor/canvas-core/editor/selectionOverlay.d.ts +33 -0
- package/_vendor/canvas-core/editor/stateNode.d.ts +31 -0
- package/_vendor/canvas-core/exports/integrity.d.ts +32 -0
- package/_vendor/canvas-core/exports/svg.d.ts +52 -0
- package/_vendor/canvas-core/geometry/box.d.ts +19 -0
- package/_vendor/canvas-core/geometry/ellipse2d.d.ts +16 -0
- package/_vendor/canvas-core/geometry/geometry2d.d.ts +15 -0
- package/_vendor/canvas-core/geometry/index.d.ts +8 -0
- package/_vendor/canvas-core/geometry/mat.d.ts +28 -0
- package/_vendor/canvas-core/geometry/polyline2d.d.ts +14 -0
- package/_vendor/canvas-core/geometry/rectangle2d.d.ts +16 -0
- package/_vendor/canvas-core/geometry/segments.d.ts +5 -0
- package/_vendor/canvas-core/geometry/vec.d.ts +37 -0
- package/_vendor/canvas-core/index.d.ts +59 -0
- package/_vendor/canvas-core/plugins/editorPlugin.d.ts +28 -0
- package/_vendor/canvas-core/plugins/index.d.ts +1 -0
- package/_vendor/canvas-core/reactivity.d.ts +4 -0
- package/_vendor/canvas-core/schema/records.d.ts +112 -0
- package/_vendor/canvas-core/schema/snapshotSupport.d.ts +43 -0
- package/_vendor/canvas-core/schema/snapshots.d.ts +31 -0
- package/_vendor/canvas-core/shapes/capabilities.d.ts +25 -0
- package/_vendor/canvas-core/shapes/colors.d.ts +26 -0
- package/_vendor/canvas-core/shapes/shapeUtil.d.ts +146 -0
- package/_vendor/canvas-core/shapes/shapeUtilRegistry.d.ts +9 -0
- package/_vendor/canvas-core/shapes/types.d.ts +2 -0
- package/_vendor/canvas-core/surfaces/actions.d.ts +35 -0
- package/_vendor/canvas-core/surfaces/contextMenu.d.ts +64 -0
- package/_vendor/canvas-core/surfaces/toolbar.d.ts +96 -0
- package/_vendor/canvas-core/tools/hand/handTool.d.ts +5 -0
- package/_vendor/canvas-core/tools/index.d.ts +2 -0
- package/_vendor/canvas-core/tools/select/selectContainment.d.ts +12 -0
- package/_vendor/canvas-core/tools/select/selectTool.d.ts +5 -0
- package/_vendor/canvas-core/tools/select/selectToolHelpers.d.ts +161 -0
- package/_vendor/canvas-core/tools/select/states/brushingState.d.ts +19 -0
- package/_vendor/canvas-core/tools/select/states/draggingSelectionHandleInteractionState.d.ts +15 -0
- package/_vendor/canvas-core/tools/select/states/idleState.d.ts +8 -0
- package/_vendor/canvas-core/tools/select/states/index.d.ts +11 -0
- package/_vendor/canvas-core/tools/select/states/pointingCanvasState.d.ts +11 -0
- package/_vendor/canvas-core/tools/select/states/pointingResizeHandleState.d.ts +10 -0
- package/_vendor/canvas-core/tools/select/states/pointingRotateHandleState.d.ts +10 -0
- package/_vendor/canvas-core/tools/select/states/pointingSelectionHandleInteractionState.d.ts +10 -0
- package/_vendor/canvas-core/tools/select/states/pointingShapeState.d.ts +12 -0
- package/_vendor/canvas-core/tools/select/states/resizingState.d.ts +16 -0
- package/_vendor/canvas-core/tools/select/states/rotatingState.d.ts +14 -0
- package/_vendor/canvas-core/tools/select/states/selectStateNode.d.ts +60 -0
- package/_vendor/canvas-core/tools/select/states/translatingState.d.ts +17 -0
- package/_vendor/canvas-react/components/CanvasView.d.ts +14 -0
- package/_vendor/canvas-react/components/OverlayLayer.d.ts +1 -0
- package/_vendor/canvas-react/components/PageSpace.d.ts +6 -0
- package/_vendor/canvas-react/components/ShapeLayer.d.ts +4 -0
- package/_vendor/canvas-react/components/index.d.ts +2 -0
- package/_vendor/canvas-react/components/overlays/BindingGuide.d.ts +24 -0
- package/_vendor/canvas-react/components/overlays/BindingPreviewOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/BrushBoxOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/OverlaySvgRoot.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/SelectionFrameOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/SelectionHandlesOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/SelectionOverlaySvg.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/SelectionPathOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/overlays/ShapeOutlineOverlay.d.ts +8 -0
- package/_vendor/canvas-react/components/overlays/SnapIndicatorsOverlay.d.ts +1 -0
- package/_vendor/canvas-react/components/useCanvasDomEvents.d.ts +21 -0
- package/_vendor/canvas-react/dom.d.ts +10 -0
- package/_vendor/canvas-react/hooks/useEditor.d.ts +3 -0
- package/_vendor/canvas-react/hooks/useValue.d.ts +2 -0
- package/_vendor/canvas-react/host/canvasOverlayRegistryContext.d.ts +3 -0
- package/_vendor/canvas-react/host/canvasPlugin.d.ts +73 -0
- package/_vendor/canvas-react/host/canvasRendererRegistryContext.d.ts +3 -0
- package/_vendor/canvas-react/host/contextMenuRegistry.d.ts +12 -0
- package/_vendor/canvas-react/host/domEventGuards.d.ts +11 -0
- package/_vendor/canvas-react/host/extension.d.ts +37 -0
- package/_vendor/canvas-react/host/index.d.ts +13 -0
- package/_vendor/canvas-react/host/overlayRegistry.d.ts +18 -0
- package/_vendor/canvas-react/host/pluginHost.d.ts +2 -0
- package/_vendor/canvas-react/host/pluginHostManifest.d.ts +2 -0
- package/_vendor/canvas-react/host/pluginHostRuntime.d.ts +3 -0
- package/_vendor/canvas-react/host/pluginHostTypes.d.ts +102 -0
- package/_vendor/canvas-react/host/pluginHostValidation.d.ts +11 -0
- package/_vendor/canvas-react/host/rendererRegistry.d.ts +12 -0
- package/_vendor/canvas-react/host/toolbarRegistry.d.ts +24 -0
- package/_vendor/canvas-react/index.d.ts +4 -0
- package/_vendor/plugin-arrow/arrowBindingAnchors.d.ts +5 -0
- package/_vendor/plugin-arrow/arrowBindingGeometry.d.ts +28 -0
- package/_vendor/plugin-arrow/arrowBindingUtil.d.ts +27 -0
- package/_vendor/plugin-arrow/arrowGeometry.d.ts +74 -0
- package/_vendor/plugin-arrow/arrowShapeUtil.d.ts +21 -0
- package/_vendor/plugin-arrow/arrowTerminalBindingResolver.d.ts +20 -0
- package/_vendor/plugin-arrow/arrowTerminalCommands.d.ts +12 -0
- package/_vendor/plugin-arrow/arrowTool.d.ts +4 -0
- package/_vendor/plugin-arrow/canvas.d.ts +2 -0
- package/_vendor/plugin-arrow/editor.d.ts +7 -0
- package/_vendor/plugin-arrow/feature.d.ts +3 -0
- package/_vendor/plugin-arrow/index.d.ts +12 -0
- package/_vendor/plugin-arrow/selectionHandleInteractions.d.ts +3 -0
- package/_vendor/plugin-arrow/types.d.ts +31 -0
- package/_vendor/plugin-draw/DrawShapeRenderer.d.ts +10 -0
- package/_vendor/plugin-draw/canvas.d.ts +2 -0
- package/_vendor/plugin-draw/drawGeometry.d.ts +45 -0
- package/_vendor/plugin-draw/drawHitTest.d.ts +11 -0
- package/_vendor/plugin-draw/drawInterpolation.d.ts +5 -0
- package/_vendor/plugin-draw/drawPath.d.ts +37 -0
- package/_vendor/plugin-draw/drawSegments.d.ts +11 -0
- package/_vendor/plugin-draw/drawSelectionTransform.d.ts +18 -0
- package/_vendor/plugin-draw/drawShapeGeometry.d.ts +33 -0
- package/_vendor/plugin-draw/drawShapeUtil.d.ts +21 -0
- package/_vendor/plugin-draw/drawStrokeGeometry.d.ts +17 -0
- package/_vendor/plugin-draw/drawTool.d.ts +6 -0
- package/_vendor/plugin-draw/editor.d.ts +7 -0
- package/_vendor/plugin-draw/feature.d.ts +3 -0
- package/_vendor/plugin-draw/index.d.ts +13 -0
- package/_vendor/plugin-draw/types.d.ts +23 -0
- package/_vendor/plugin-eraser/canvas.d.ts +2 -0
- package/_vendor/plugin-eraser/editor.d.ts +2 -0
- package/_vendor/plugin-eraser/eraserTool.d.ts +5 -0
- package/_vendor/plugin-eraser/feature.d.ts +3 -0
- package/_vendor/plugin-eraser/{index.ts → index.d.ts} +2 -2
- package/_vendor/plugin-frame/canvas.d.ts +9 -0
- package/_vendor/plugin-frame/editor.d.ts +7 -0
- package/_vendor/plugin-frame/feature.d.ts +3 -0
- package/_vendor/plugin-frame/frameShapeUtil.d.ts +23 -0
- package/_vendor/plugin-frame/frameTool.d.ts +6 -0
- package/_vendor/plugin-frame/index.d.ts +6 -0
- package/_vendor/plugin-geo/canvas.d.ts +13 -0
- package/_vendor/plugin-geo/editor.d.ts +7 -0
- package/_vendor/plugin-geo/feature.d.ts +3 -0
- package/_vendor/plugin-geo/geoGeometry.d.ts +8 -0
- package/_vendor/plugin-geo/geoShapeUtil.d.ts +13 -0
- package/_vendor/plugin-geo/geoTools.d.ts +26 -0
- package/_vendor/plugin-geo/index.d.ts +7 -0
- package/_vendor/plugin-geo/types.d.ts +17 -0
- package/_vendor/plugin-group/canvas.d.ts +10 -0
- package/_vendor/plugin-group/editor.d.ts +7 -0
- package/_vendor/plugin-group/feature.d.ts +3 -0
- package/_vendor/plugin-group/groupShapeUtil.d.ts +15 -0
- package/_vendor/plugin-group/index.d.ts +5 -0
- package/_vendor/plugin-image/canvas.d.ts +2 -0
- package/_vendor/plugin-image/crop.d.ts +112 -0
- package/_vendor/plugin-image/cropInteractions.d.ts +3 -0
- package/_vendor/plugin-image/cropSession.d.ts +4 -0
- package/_vendor/plugin-image/editor.d.ts +16 -0
- package/_vendor/plugin-image/feature.d.ts +3 -0
- package/_vendor/plugin-image/imageShapeUtil.d.ts +11 -0
- package/_vendor/plugin-image/index.d.ts +8 -0
- package/_vendor/plugin-image/types.d.ts +37 -0
- package/_vendor/plugin-laser/canvas.d.ts +2 -0
- package/_vendor/plugin-laser/editor.d.ts +2 -0
- package/_vendor/plugin-laser/feature.d.ts +3 -0
- package/_vendor/plugin-laser/{index.ts → index.d.ts} +2 -2
- package/_vendor/plugin-laser/laserTool.d.ts +4 -0
- package/_vendor/plugin-text/arrowLabelBindingUtil.d.ts +42 -0
- package/_vendor/plugin-text/canvas.d.ts +2 -0
- package/_vendor/plugin-text/editor.d.ts +2 -0
- package/_vendor/plugin-text/feature.d.ts +3 -0
- package/_vendor/plugin-text/geoLabelBindingUtil.d.ts +45 -0
- package/_vendor/plugin-text/host/RichTextEditingBox.d.ts +5 -0
- package/_vendor/plugin-text/host/RichTextToolbar.d.ts +8 -0
- package/_vendor/plugin-text/host/TiptapTextEditor.d.ts +24 -0
- package/_vendor/plugin-text/host/richTextBubbleMenuPositionSync.d.ts +7 -0
- package/_vendor/plugin-text/host/richTextRendering.d.ts +3 -0
- package/_vendor/plugin-text/host/textDomSelection.d.ts +7 -0
- package/_vendor/plugin-text/host/textEditingBoxStyle.d.ts +3 -0
- package/_vendor/plugin-text/host/textEntryFocus.d.ts +22 -0
- package/_vendor/plugin-text/host/textFontLoader.d.ts +2 -0
- package/_vendor/plugin-text/host/textMeasurement.d.ts +12 -0
- package/_vendor/plugin-text/host/textMeasurementSync.d.ts +10 -0
- package/_vendor/plugin-text/host/textRangeSelection.d.ts +14 -0
- package/_vendor/plugin-text/host/textShapeRendererRuntime.d.ts +8 -0
- package/_vendor/plugin-text/host/textShapeSync.d.ts +17 -0
- package/_vendor/plugin-text/host/tiptapTextEditorController.d.ts +33 -0
- package/_vendor/plugin-text/index.d.ts +4 -0
- package/_vendor/plugin-text/richTextUtils.d.ts +18 -0
- package/_vendor/plugin-text/textInteractions.d.ts +2 -0
- package/_vendor/plugin-text/textLabelHelpers.d.ts +44 -0
- package/_vendor/plugin-text/textShapeHelpers.d.ts +21 -0
- package/_vendor/plugin-text/textShapeSvgExporter.d.ts +6 -0
- package/_vendor/plugin-text/textShapeUtil.d.ts +19 -0
- package/_vendor/plugin-text/textStyle.d.ts +9 -0
- package/_vendor/plugin-text/textTool.d.ts +4 -0
- package/_vendor/plugin-text/textTypes.d.ts +28 -0
- package/_vendor/signals/atom.d.ts +9 -0
- package/_vendor/signals/computed.d.ts +11 -0
- package/_vendor/signals/core.d.ts +17 -0
- package/_vendor/signals/effect.d.ts +29 -0
- package/_vendor/signals/types.d.ts +15 -0
- package/_vendor/store/diff.d.ts +9 -0
- package/_vendor/store/history.d.ts +37 -0
- package/_vendor/store/index.d.ts +5 -0
- package/_vendor/store/store.d.ts +32 -0
- package/_vendor/store/types.d.ts +27 -0
- package/browser/localSnapshotRestore.d.ts +13 -0
- package/browser/persistence.d.ts +46 -0
- package/builtins/controller/createBuiltInCanvasController.d.ts +16 -0
- package/builtins/controller/layerController.d.ts +9 -0
- package/builtins/controller/shapeCreationController.d.ts +74 -0
- package/builtins/extensions.d.ts +15 -0
- package/builtins/index.d.ts +5 -0
- package/chrome/CanvasKitFloatingToolbarLayer.d.ts +6 -0
- package/chrome/FloatingSelectionToolbarPageSpace.d.ts +9 -0
- package/chrome/bindings/useCanvasKitChromeControls.d.ts +27 -0
- package/chrome/bindings/useContextMenuSurface.d.ts +12 -0
- package/chrome/bindings/useSvgExport.d.ts +15 -0
- package/chrome/bindings/useToolbarSurfaces.d.ts +26 -0
- package/chrome/types.d.ts +66 -0
- package/chrome/useCanvasKitChromeContext.d.ts +19 -0
- package/controller/canvasKitController.d.ts +36 -0
- package/core/controller/canvasProductController.d.ts +114 -0
- package/core/controller/featureControllerRegistry.d.ts +12 -0
- package/core/controller/index.d.ts +4 -0
- package/core/controller/productLayerTree.d.ts +10 -0
- package/core/features/actions/canvasActionContext.d.ts +15 -0
- package/core/features/actions/canvasActions.d.ts +26 -0
- package/core/features/clipboard/clipboardContextMenuContributions.d.ts +2 -0
- package/core/features/clipboard/clipboardContribution.d.ts +19 -0
- package/core/features/clipboard/clipboardService.d.ts +10 -0
- package/core/features/context-menu/contextMenuActions.d.ts +12 -0
- package/core/features/context-menu/contextMenuContext.d.ts +6 -0
- package/core/features/context-menu/contextMenuContribution.d.ts +4 -0
- package/core/features/context-menu/viewContextMenuContributions.d.ts +2 -0
- package/core/features/export/svgExport.d.ts +33 -0
- package/core/features/hostActionIds.d.ts +1 -0
- package/core/features/toolbar/selectionContextMenuContributions.d.ts +2 -0
- package/core/features/toolbar/toolContextMenuContributions.d.ts +2 -0
- package/core/features/toolbar/toolbarContribution.d.ts +4 -0
- package/core/features/toolbar/toolbarLabels.d.ts +8 -0
- package/core/index.d.ts +23 -0
- package/core/runtime/productAssets.d.ts +18 -0
- package/core/runtime/productContributions.d.ts +9 -0
- package/core/runtime/productDefinition.d.ts +32 -0
- package/core/runtime/productEditor.d.ts +3 -0
- package/core/runtime/productHost.d.ts +17 -0
- package/core/runtime/productServices.d.ts +30 -0
- package/features/image/ImageImportController.d.ts +9 -0
- package/features/image/imageAssetService.d.ts +7 -0
- package/features/image/imageBlobStore.d.ts +25 -0
- package/features/image/imageFileHelpers.d.ts +35 -0
- package/features/image/imageHostActions.d.ts +36 -0
- package/features/image/imageHostExtension.d.ts +5 -0
- package/features/image/imageProductController.d.ts +22 -0
- package/features/image/imageProductToolbarActions.d.ts +2 -0
- package/features/image/imageToolbarHostBridge.d.ts +14 -0
- package/features/image/index.d.ts +15 -0
- package/features/image/svgImageAssetInliner.d.ts +3 -0
- package/features/image/useImageImport.d.ts +17 -0
- package/index.css +1 -2
- package/index.d.ts +12 -15
- package/index.mjs +66 -1
- package/package.json +1 -11
- package/product/canvasKitProduct.d.ts +59 -0
- package/react/CanvasKitPersistenceNotice.d.ts +4 -0
- package/react/CanvasKitRoot.d.ts +5 -0
- package/react/useCanvasKitController.d.ts +5 -0
- package/react/useCanvasKitKeyboardShortcuts.d.ts +6 -0
- package/react/useCanvasKitRuntime.d.ts +4 -0
- package/react/useCanvasKitStartup.d.ts +9 -0
- package/runtime/canvasKitHostExtensions.d.ts +19 -0
- package/runtime/canvasKitRuntime.d.ts +19 -0
- package/runtime/canvasKitRuntimeInitializer.d.ts +11 -0
- package/_vendor/canvas-core/bindings/BindingUtil.ts +0 -92
- package/_vendor/canvas-core/bindings/BindingUtilRegistry.ts +0 -22
- package/_vendor/canvas-core/bindings/arrow/arrowBindingHelpers.ts +0 -52
- package/_vendor/canvas-core/contextMenu.ts +0 -85
- package/_vendor/canvas-core/editor/Editor.ts +0 -2614
- package/_vendor/canvas-core/editor/HistoryManager.ts +0 -83
- package/_vendor/canvas-core/editor/StateNode.ts +0 -162
- package/_vendor/canvas-core/editor/camera.ts +0 -6
- package/_vendor/canvas-core/editor/clipboard.ts +0 -478
- package/_vendor/canvas-core/editor/commands.ts +0 -833
- package/_vendor/canvas-core/editor/edgeScroll.ts +0 -37
- package/_vendor/canvas-core/editor/editorComputedHelpers.ts +0 -257
- package/_vendor/canvas-core/editor/editorSelectionTransforms.ts +0 -116
- package/_vendor/canvas-core/editor/events.ts +0 -93
- package/_vendor/canvas-core/editor/index.ts +0 -12
- package/_vendor/canvas-core/editor/interactions.ts +0 -101
- package/_vendor/canvas-core/editor/internal.ts +0 -22
- package/_vendor/canvas-core/editor/managers/BindingManager.ts +0 -262
- package/_vendor/canvas-core/editor/managers/CameraManager.ts +0 -147
- package/_vendor/canvas-core/editor/managers/ClipboardManager.ts +0 -32
- package/_vendor/canvas-core/editor/managers/DocumentSnapshotManager.ts +0 -256
- package/_vendor/canvas-core/editor/managers/InputsManager.ts +0 -319
- package/_vendor/canvas-core/editor/managers/InteractionTransientManager.ts +0 -218
- package/_vendor/canvas-core/editor/managers/QueryManager.ts +0 -837
- package/_vendor/canvas-core/editor/managers/RenderWindowManager.ts +0 -347
- package/_vendor/canvas-core/editor/managers/SelectionLayoutManager.ts +0 -196
- package/_vendor/canvas-core/editor/managers/SelectionManager.ts +0 -98
- package/_vendor/canvas-core/editor/managers/SelectionOverlayManager.ts +0 -308
- package/_vendor/canvas-core/editor/managers/ShapeEditingManager.ts +0 -226
- package/_vendor/canvas-core/editor/managers/ShapeGeometryManager.ts +0 -162
- package/_vendor/canvas-core/editor/managers/ShapeHierarchyManager.ts +0 -797
- package/_vendor/canvas-core/editor/managers/SideEffectManager.ts +0 -83
- package/_vendor/canvas-core/editor/managers/SnapManager.ts +0 -433
- package/_vendor/canvas-core/editor/managers/SnapSnapshotBuilder.ts +0 -430
- package/_vendor/canvas-core/editor/managers/SpatialIndexManager.ts +0 -354
- package/_vendor/canvas-core/editor/managers/ToolManager.ts +0 -81
- package/_vendor/canvas-core/editor/managers/queryState.ts +0 -583
- package/_vendor/canvas-core/editor/managers/selectionGeometry.ts +0 -287
- package/_vendor/canvas-core/editor/managers/shapeOrder.ts +0 -350
- package/_vendor/canvas-core/editor/managers/shapeReparenting.ts +0 -160
- package/_vendor/canvas-core/editor/managers/snapCalculations.ts +0 -412
- package/_vendor/canvas-core/editor/managers/snapGeometry.ts +0 -202
- package/_vendor/canvas-core/editor/managers/snapIndicators.ts +0 -403
- package/_vendor/canvas-core/editor/managers/snapTypes.ts +0 -122
- package/_vendor/canvas-core/editor/queries/shapeTransforms.ts +0 -171
- package/_vendor/canvas-core/editor/renderWindow.ts +0 -439
- package/_vendor/canvas-core/editor/resizeGeometry.ts +0 -654
- package/_vendor/canvas-core/editor/selection.ts +0 -489
- package/_vendor/canvas-core/editor/selectionHandleInteractions.ts +0 -43
- package/_vendor/canvas-core/editor/selectionOverlay.ts +0 -567
- package/_vendor/canvas-core/exports/integrity.ts +0 -174
- package/_vendor/canvas-core/exports/svg.ts +0 -494
- package/_vendor/canvas-core/geometry/Box.ts +0 -80
- package/_vendor/canvas-core/geometry/Ellipse2d.ts +0 -67
- package/_vendor/canvas-core/geometry/Geometry2d.ts +0 -52
- package/_vendor/canvas-core/geometry/Mat.ts +0 -92
- package/_vendor/canvas-core/geometry/Polyline2d.ts +0 -63
- package/_vendor/canvas-core/geometry/Rectangle2d.ts +0 -64
- package/_vendor/canvas-core/geometry/Vec.ts +0 -123
- package/_vendor/canvas-core/geometry/index.ts +0 -13
- package/_vendor/canvas-core/geometry/segments.ts +0 -65
- package/_vendor/canvas-core/index.ts +0 -391
- package/_vendor/canvas-core/plugins/index.ts +0 -5
- package/_vendor/canvas-core/plugins/types.ts +0 -53
- package/_vendor/canvas-core/reactivity.ts +0 -16
- package/_vendor/canvas-core/schema/records.ts +0 -221
- package/_vendor/canvas-core/schema/snapshots.ts +0 -527
- package/_vendor/canvas-core/shapes/ShapeUtil.ts +0 -516
- package/_vendor/canvas-core/shapes/ShapeUtilRegistry.ts +0 -26
- package/_vendor/canvas-core/shapes/capabilities.ts +0 -67
- package/_vendor/canvas-core/shapes/types.ts +0 -20
- package/_vendor/canvas-core/toolbar.ts +0 -148
- package/_vendor/canvas-core/tools/hand/HandTool.ts +0 -75
- package/_vendor/canvas-core/tools/index.ts +0 -2
- package/_vendor/canvas-core/tools/select/SelectTool.ts +0 -33
- package/_vendor/canvas-core/tools/select/selectContainment.ts +0 -104
- package/_vendor/canvas-core/tools/select/selectToolHelpers.ts +0 -801
- package/_vendor/canvas-core/tools/select/states/BrushingState.ts +0 -145
- package/_vendor/canvas-core/tools/select/states/DraggingSelectionHandleInteractionState.ts +0 -116
- package/_vendor/canvas-core/tools/select/states/IdleState.ts +0 -159
- package/_vendor/canvas-core/tools/select/states/PointingCanvasState.ts +0 -41
- package/_vendor/canvas-core/tools/select/states/PointingResizeHandleState.ts +0 -78
- package/_vendor/canvas-core/tools/select/states/PointingRotateHandleState.ts +0 -64
- package/_vendor/canvas-core/tools/select/states/PointingSelectionHandleInteractionState.ts +0 -34
- package/_vendor/canvas-core/tools/select/states/PointingShapeState.ts +0 -140
- package/_vendor/canvas-core/tools/select/states/ResizingState.ts +0 -171
- package/_vendor/canvas-core/tools/select/states/RotatingState.ts +0 -124
- package/_vendor/canvas-core/tools/select/states/SelectStateNode.ts +0 -128
- package/_vendor/canvas-core/tools/select/states/TranslatingState.ts +0 -139
- package/_vendor/canvas-core/tools/select/states/index.ts +0 -11
- package/_vendor/canvas-plugin-api/feature.ts +0 -204
- package/_vendor/canvas-plugin-api/index.ts +0 -142
- package/_vendor/canvas-product-react/api/apiRegistry.ts +0 -35
- package/_vendor/canvas-product-react/api/canvasProductApi.ts +0 -422
- package/_vendor/canvas-product-react/api/index.ts +0 -31
- package/_vendor/canvas-product-react/capabilities/clipboard/clipboardService.ts +0 -36
- package/_vendor/canvas-product-react/capabilities/clipboard/systemClipboard.ts +0 -245
- package/_vendor/canvas-product-react/capabilities/context-menu/systemContextMenu.ts +0 -396
- package/_vendor/canvas-product-react/capabilities/context-menu/useContextMenuSurface.ts +0 -59
- package/_vendor/canvas-product-react/capabilities/export/useSvgExport.ts +0 -156
- package/_vendor/canvas-product-react/capabilities/history/useHistoryControls.ts +0 -23
- package/_vendor/canvas-product-react/capabilities/pages/usePageControls.ts +0 -41
- package/_vendor/canvas-product-react/capabilities/toolbar/systemToolbar.ts +0 -490
- package/_vendor/canvas-product-react/capabilities/toolbar/useToolbarSurfaces.ts +0 -92
- package/_vendor/canvas-product-react/capabilities/zoom/useZoomControls.ts +0 -27
- package/_vendor/canvas-product-react/index.ts +0 -84
- package/_vendor/canvas-product-react/persistence/index.ts +0 -18
- package/_vendor/canvas-product-react/persistence/localSnapshotPersistence.ts +0 -294
- package/_vendor/canvas-product-react/runtime/CanvasProductRoot.tsx +0 -250
- package/_vendor/canvas-product-react/runtime/productDefinition.ts +0 -72
- package/_vendor/canvas-product-react/runtime/productServices.ts +0 -96
- package/_vendor/canvas-react/components/CanvasView.tsx +0 -796
- package/_vendor/canvas-react/components/OverlayLayer.tsx +0 -879
- package/_vendor/canvas-react/components/PageSpace.tsx +0 -34
- package/_vendor/canvas-react/components/ShapeLayer.tsx +0 -428
- package/_vendor/canvas-react/components/index.ts +0 -4
- package/_vendor/canvas-react/hooks/useEditor.ts +0 -11
- package/_vendor/canvas-react/hooks/useValue.ts +0 -14
- package/_vendor/canvas-react/host/CanvasRendererRegistryContext.tsx +0 -14
- package/_vendor/canvas-react/host/contextMenuRegistry.ts +0 -61
- package/_vendor/canvas-react/host/domEventGuards.ts +0 -61
- package/_vendor/canvas-react/host/index.ts +0 -38
- package/_vendor/canvas-react/host/pluginHost.ts +0 -635
- package/_vendor/canvas-react/host/rendererRegistry.tsx +0 -58
- package/_vendor/canvas-react/host/toolbarRegistry.ts +0 -100
- package/_vendor/canvas-react/index.ts +0 -3
- package/_vendor/plugin-arrow/ArrowBindingUtil.ts +0 -239
- package/_vendor/plugin-arrow/ArrowShapeUtil.ts +0 -311
- package/_vendor/plugin-arrow/ArrowTool.ts +0 -208
- package/_vendor/plugin-arrow/arrowGeometry.ts +0 -441
- package/_vendor/plugin-arrow/arrowTerminalBindingResolver.ts +0 -253
- package/_vendor/plugin-arrow/arrowTerminalCommands.ts +0 -230
- package/_vendor/plugin-arrow/canvas.tsx +0 -92
- package/_vendor/plugin-arrow/core.ts +0 -409
- package/_vendor/plugin-arrow/feature.ts +0 -20
- package/_vendor/plugin-arrow/index.ts +0 -28
- package/_vendor/plugin-arrow/selectionHandleInteractions.ts +0 -154
- package/_vendor/plugin-arrow/types.ts +0 -63
- package/_vendor/plugin-draw/DrawShapeRenderer.tsx +0 -60
- package/_vendor/plugin-draw/DrawShapeUtil.ts +0 -372
- package/_vendor/plugin-draw/DrawTool.ts +0 -444
- package/_vendor/plugin-draw/canvas.tsx +0 -24
- package/_vendor/plugin-draw/core.ts +0 -515
- package/_vendor/plugin-draw/drawGeometry.ts +0 -491
- package/_vendor/plugin-draw/drawHitTest.ts +0 -271
- package/_vendor/plugin-draw/drawInterpolation.ts +0 -250
- package/_vendor/plugin-draw/drawPath.ts +0 -550
- package/_vendor/plugin-draw/drawSegments.ts +0 -106
- package/_vendor/plugin-draw/drawSelectionTransform.ts +0 -67
- package/_vendor/plugin-draw/drawShapeGeometry.ts +0 -307
- package/_vendor/plugin-draw/drawStrokeGeometry.ts +0 -454
- package/_vendor/plugin-draw/feature.ts +0 -20
- package/_vendor/plugin-draw/index.ts +0 -31
- package/_vendor/plugin-draw/types.ts +0 -36
- package/_vendor/plugin-eraser/EraserTool.ts +0 -297
- package/_vendor/plugin-eraser/canvas.tsx +0 -616
- package/_vendor/plugin-eraser/core.ts +0 -49
- package/_vendor/plugin-eraser/feature.ts +0 -20
- package/_vendor/plugin-frame/FrameShapeUtil.ts +0 -173
- package/_vendor/plugin-frame/FrameTool.ts +0 -225
- package/_vendor/plugin-frame/canvas.tsx +0 -75
- package/_vendor/plugin-frame/core.ts +0 -534
- package/_vendor/plugin-frame/feature.ts +0 -20
- package/_vendor/plugin-frame/index.ts +0 -6
- package/_vendor/plugin-geo/GeoShapeUtil.ts +0 -463
- package/_vendor/plugin-geo/GeoTools.ts +0 -247
- package/_vendor/plugin-geo/canvas.tsx +0 -90
- package/_vendor/plugin-geo/core.ts +0 -495
- package/_vendor/plugin-geo/feature.ts +0 -20
- package/_vendor/plugin-geo/index.ts +0 -7
- package/_vendor/plugin-geo/types.ts +0 -27
- package/_vendor/plugin-group/GroupShapeUtil.ts +0 -59
- package/_vendor/plugin-group/canvas.tsx +0 -59
- package/_vendor/plugin-group/core.ts +0 -40
- package/_vendor/plugin-group/feature.ts +0 -20
- package/_vendor/plugin-group/index.ts +0 -5
- package/_vendor/plugin-image/ImageShapeUtil.ts +0 -95
- package/_vendor/plugin-image/canvas.tsx +0 -212
- package/_vendor/plugin-image/core.ts +0 -542
- package/_vendor/plugin-image/crop.ts +0 -770
- package/_vendor/plugin-image/cropInteractions.ts +0 -350
- package/_vendor/plugin-image/cropSession.ts +0 -38
- package/_vendor/plugin-image/feature.ts +0 -20
- package/_vendor/plugin-image/index.ts +0 -29
- package/_vendor/plugin-image/types.ts +0 -55
- package/_vendor/plugin-image-product-react/ImageImportController.tsx +0 -143
- package/_vendor/plugin-image-product-react/imageAssetService.ts +0 -52
- package/_vendor/plugin-image-product-react/imageBlobStore.ts +0 -315
- package/_vendor/plugin-image-product-react/imageHostActions.ts +0 -438
- package/_vendor/plugin-image-product-react/imageProductApi.ts +0 -88
- package/_vendor/plugin-image-product-react/imageToolbarHostBridge.ts +0 -48
- package/_vendor/plugin-image-product-react/imageToolbarRuntime.ts +0 -21
- package/_vendor/plugin-image-product-react/index.ts +0 -60
- package/_vendor/plugin-image-product-react/snapshotGuards.ts +0 -33
- package/_vendor/plugin-image-product-react/svgImageAssetInliner.ts +0 -54
- package/_vendor/plugin-image-product-react/useImageImport.ts +0 -64
- package/_vendor/plugin-laser/LaserTool.ts +0 -154
- package/_vendor/plugin-laser/canvas.tsx +0 -645
- package/_vendor/plugin-laser/core.ts +0 -49
- package/_vendor/plugin-laser/feature.ts +0 -20
- package/_vendor/plugin-text/ArrowLabelBindingUtil.ts +0 -336
- package/_vendor/plugin-text/GeoLabelBindingUtil.ts +0 -391
- package/_vendor/plugin-text/TextShapeSvgExporter.ts +0 -101
- package/_vendor/plugin-text/TextShapeUtil.ts +0 -284
- package/_vendor/plugin-text/TextTool.ts +0 -228
- package/_vendor/plugin-text/canvas.tsx +0 -115
- package/_vendor/plugin-text/core.ts +0 -422
- package/_vendor/plugin-text/feature.ts +0 -20
- package/_vendor/plugin-text/host/RichTextEditingBox.tsx +0 -144
- package/_vendor/plugin-text/host/RichTextToolbar.tsx +0 -266
- package/_vendor/plugin-text/host/TiptapTextEditor.tsx +0 -191
- package/_vendor/plugin-text/host/richTextRendering.tsx +0 -49
- package/_vendor/plugin-text/host/textDomSelection.ts +0 -93
- package/_vendor/plugin-text/host/textEditingBoxStyle.ts +0 -36
- package/_vendor/plugin-text/host/textEntryFocus.ts +0 -307
- package/_vendor/plugin-text/host/textFontLoader.ts +0 -149
- package/_vendor/plugin-text/host/textMeasurement.ts +0 -258
- package/_vendor/plugin-text/host/textMeasurementSync.ts +0 -77
- package/_vendor/plugin-text/host/textRangeSelection.ts +0 -134
- package/_vendor/plugin-text/host/textShapeRendererRuntime.tsx +0 -89
- package/_vendor/plugin-text/host/textShapeSync.ts +0 -173
- package/_vendor/plugin-text/host/tiptapTextEditorController.ts +0 -148
- package/_vendor/plugin-text/index.ts +0 -18
- package/_vendor/plugin-text/richTextUtils.ts +0 -259
- package/_vendor/plugin-text/textInteractions.ts +0 -366
- package/_vendor/plugin-text/textLabelHelpers.ts +0 -235
- package/_vendor/plugin-text/textShapeHelpers.ts +0 -123
- package/_vendor/plugin-text/textStyle.ts +0 -96
- package/_vendor/plugin-text/textTypes.ts +0 -48
- package/_vendor/signals/atom.ts +0 -74
- package/_vendor/signals/computed.ts +0 -132
- package/_vendor/signals/core.ts +0 -130
- package/_vendor/signals/effect.ts +0 -117
- package/_vendor/signals/types.ts +0 -17
- package/_vendor/store/Store.ts +0 -171
- package/_vendor/store/diff.ts +0 -229
- package/_vendor/store/history.ts +0 -177
- package/_vendor/store/index.ts +0 -32
- package/_vendor/store/types.ts +0 -37
- package/api/canvasKitApi.d.ts +0 -29
- package/internal-modules.d.ts +0 -187
- package/product/Shell.d.ts +0 -19
- package/product/chromeContext.d.ts +0 -70
- package/product/createCanvasKitEditor.d.ts +0 -6
- package/product/index.d.ts +0 -7
- package/product/persistence.d.ts +0 -3
- package/product/product.d.ts +0 -22
- package/product/useCanvasClipboardShortcuts.d.ts +0 -6
- package/product-iyBbEPIs.mjs +0 -4
- package/product.mjs +0 -1
- package/standard/extensions.d.ts +0 -1
- package/standard/index.d.ts +0 -3
- package/standard/standardApi.d.ts +0 -91
- package/standard-BmrxwqpJ.mjs +0 -44
- package/standard.mjs +0 -1
- /package/_vendor/signals/{index.ts → index.d.ts} +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { Box } from "../../geometry/box";
|
|
2
|
+
import { Vec } from "../../geometry/vec";
|
|
3
|
+
import type { ShapeUpdate } from "../../editor/commands";
|
|
4
|
+
import type { Editor } from "../../editor/editor";
|
|
5
|
+
import type { PointerEditorEvent, TickEditorEvent } from "../../editor/events";
|
|
6
|
+
import type { SelectionResizeHandleId, SelectionResizePointShapeSnapshot, SelectionResizeShapeSnapshot, SelectionRotationTransform, SelectionRotatePointShapeSnapshot, SelectionRotateShapeSnapshot } from "../../editor/selection";
|
|
7
|
+
import type { HandleSnapSnapshot, ResizeSnapSnapshot, TranslateSnapSnapshot } from "../../editor/managers/snapTypes";
|
|
8
|
+
import type { SelectionHandleInteractionSession } from "../../editor/selectionHandleInteractions";
|
|
9
|
+
import type { ShapeId, ShapeRecord } from "../../schema/records";
|
|
10
|
+
export declare const DRAG_START_DISTANCE = 3;
|
|
11
|
+
export declare const DRAG_START_DISTANCE_SQUARED: number;
|
|
12
|
+
export declare const ROTATION_SNAP_STEP: number;
|
|
13
|
+
export declare const ROTATION_SOFT_SNAP_STEP: number;
|
|
14
|
+
export declare const ROTATION_SOFT_SNAP_THRESHOLD: number;
|
|
15
|
+
export declare const ROTATION_SOFT_SNAP_MAX_SCREEN_VELOCITY = 0.5;
|
|
16
|
+
export declare const GROUP_CHILD_QUICK_SELECT_DURATION_MS = 250;
|
|
17
|
+
export declare const TRANSLATE_SNAP_DISTANCE_SCREEN = 8;
|
|
18
|
+
export declare const TRANSLATE_SNAP_MAX_SCREEN_VELOCITY = 0.5;
|
|
19
|
+
export declare const RESIZE_SNAP_DISTANCE_SCREEN = 8;
|
|
20
|
+
export declare const HANDLE_SNAP_DISTANCE_SCREEN = 8;
|
|
21
|
+
export declare const TRANSLATE_HISTORY_MARK = "select.translate";
|
|
22
|
+
export declare const RESIZE_HISTORY_MARK = "select.resize";
|
|
23
|
+
export declare const ROTATE_HISTORY_MARK = "select.rotate";
|
|
24
|
+
export type TranslateAxis = "x" | "y";
|
|
25
|
+
export interface PointingCanvasInfo {
|
|
26
|
+
originPagePoint: Vec;
|
|
27
|
+
previousSelection: ShapeId[];
|
|
28
|
+
additiveSelection: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface PointingShapeInfo {
|
|
31
|
+
shapeId: ShapeId;
|
|
32
|
+
translateTargetId: ShapeId;
|
|
33
|
+
originPagePoint: Vec;
|
|
34
|
+
originTimestamp: number;
|
|
35
|
+
previousSelection: ShapeId[];
|
|
36
|
+
additiveSelection: boolean;
|
|
37
|
+
wasSelected: boolean;
|
|
38
|
+
fromSelectionBounds: boolean;
|
|
39
|
+
quickClickSelectionTargetId: ShapeId | null;
|
|
40
|
+
}
|
|
41
|
+
export interface TranslatingShapeSnapshot {
|
|
42
|
+
id: ShapeId;
|
|
43
|
+
x: number;
|
|
44
|
+
y: number;
|
|
45
|
+
}
|
|
46
|
+
export interface TranslatingInfo {
|
|
47
|
+
originPagePoint: Vec;
|
|
48
|
+
previousSelection: ShapeId[];
|
|
49
|
+
selectedShapeIds: ShapeId[];
|
|
50
|
+
startBounds: Box | null;
|
|
51
|
+
snapSnapshot: TranslateSnapSnapshot;
|
|
52
|
+
snapRotation: number;
|
|
53
|
+
selectedShapes: TranslatingShapeSnapshot[];
|
|
54
|
+
updates: ShapeUpdate[];
|
|
55
|
+
lockedAxis: TranslateAxis | null;
|
|
56
|
+
lastDeltaX: number;
|
|
57
|
+
lastDeltaY: number;
|
|
58
|
+
}
|
|
59
|
+
export interface BrushInfo {
|
|
60
|
+
originPagePoint: Vec;
|
|
61
|
+
previousSelection: ShapeId[];
|
|
62
|
+
additiveSelection: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface PointingResizeHandleInfo {
|
|
65
|
+
handleId: SelectionResizeHandleId;
|
|
66
|
+
originPagePoint: Vec;
|
|
67
|
+
cursorHandleOffset: Vec;
|
|
68
|
+
previousSelection: ShapeId[];
|
|
69
|
+
}
|
|
70
|
+
export interface ResizingInfo extends PointingResizeHandleInfo {
|
|
71
|
+
startBounds: Box;
|
|
72
|
+
rotation: number;
|
|
73
|
+
rotationCenter: Vec;
|
|
74
|
+
aspectRatio: number;
|
|
75
|
+
snapSnapshot: ResizeSnapSnapshot;
|
|
76
|
+
shapes: SelectionResizeShapeSnapshot[];
|
|
77
|
+
pointShapes: SelectionResizePointShapeSnapshot[];
|
|
78
|
+
updates: ShapeUpdate[];
|
|
79
|
+
aspectRatioLockOverride: boolean | null;
|
|
80
|
+
lastPagePointX: number;
|
|
81
|
+
lastPagePointY: number;
|
|
82
|
+
lastShiftKey: boolean;
|
|
83
|
+
lastAltKey: boolean;
|
|
84
|
+
lastAccelKey: boolean;
|
|
85
|
+
}
|
|
86
|
+
export interface PointingRotateHandleInfo {
|
|
87
|
+
originPagePoint: Vec;
|
|
88
|
+
previousSelection: ShapeId[];
|
|
89
|
+
}
|
|
90
|
+
export interface RotatingInfo extends PointingRotateHandleInfo {
|
|
91
|
+
center: Vec;
|
|
92
|
+
startAngle: number;
|
|
93
|
+
initialSelectionRotation: number;
|
|
94
|
+
shapes: SelectionRotateShapeSnapshot[];
|
|
95
|
+
pointShapes: SelectionRotatePointShapeSnapshot[];
|
|
96
|
+
updates: ShapeUpdate[];
|
|
97
|
+
lastPointerX: number;
|
|
98
|
+
lastPointerY: number;
|
|
99
|
+
lastShiftKey: boolean;
|
|
100
|
+
lastAccelKey: boolean;
|
|
101
|
+
}
|
|
102
|
+
export interface PointingSelectionHandleInteractionInfo {
|
|
103
|
+
originPagePoint: Vec;
|
|
104
|
+
previousSelection: ShapeId[];
|
|
105
|
+
session: SelectionHandleInteractionSession;
|
|
106
|
+
snapSnapshot: HandleSnapSnapshot | null;
|
|
107
|
+
}
|
|
108
|
+
export interface DraggingSelectionHandleInteractionInfo extends PointingSelectionHandleInteractionInfo {
|
|
109
|
+
lastPagePointX: number;
|
|
110
|
+
lastPagePointY: number;
|
|
111
|
+
lastAccelKey: boolean;
|
|
112
|
+
}
|
|
113
|
+
export interface SelectionDragInput {
|
|
114
|
+
pagePoint: Vec;
|
|
115
|
+
shiftKey: boolean;
|
|
116
|
+
altKey: boolean;
|
|
117
|
+
accelKey: boolean;
|
|
118
|
+
ctrlKey: boolean;
|
|
119
|
+
}
|
|
120
|
+
export type EdgeScrollTickMode = "always_apply" | "apply_after_scroll_or_without_screen_point" | "apply_after_scroll";
|
|
121
|
+
export declare function getSelectionDragInputFromCurrentInputs(editor: Editor): SelectionDragInput | null;
|
|
122
|
+
export declare function getSelectionDragInputForTick(editor: Editor, event: TickEditorEvent, mode: EdgeScrollTickMode): SelectionDragInput | null;
|
|
123
|
+
export declare function applySelectionDragFromCurrentInputs(editor: Editor, apply: (input: SelectionDragInput) => void): void;
|
|
124
|
+
export declare function createBrushBounds(origin: Vec, current: Vec): Box;
|
|
125
|
+
export declare function hasExceededDragThreshold(origin: Vec, point: Vec): boolean;
|
|
126
|
+
export declare function arePagePointsApproximatelyEqual(left: Vec, right: Vec): boolean;
|
|
127
|
+
export declare function toggleIds(base: ShapeId[], toggled: ShapeId[]): ShapeId[];
|
|
128
|
+
export declare function getOutermostSelectableShapeIds(editor: Editor, shapeIds: Iterable<ShapeId>): ShapeId[];
|
|
129
|
+
export declare function getSelectableShapeIdForHit(editor: Editor, shapeId: ShapeId, selectedShapeIds: readonly ShapeId[]): ShapeId;
|
|
130
|
+
export declare function getSelectedTransformAncestorIdForHit(editor: Editor, shapeId: ShapeId, selectedShapeIds: readonly ShapeId[]): ShapeId | null;
|
|
131
|
+
export interface TransformDescendantAncestorPathEntry {
|
|
132
|
+
ancestorId: ShapeId;
|
|
133
|
+
childId: ShapeId;
|
|
134
|
+
}
|
|
135
|
+
export declare function getNearestTransformDescendantAncestorId(editor: Editor, shapeId: ShapeId): ShapeId | null;
|
|
136
|
+
export declare function getTransformDescendantAncestorPath(editor: Editor, shapeId: ShapeId): TransformDescendantAncestorPathEntry[];
|
|
137
|
+
export declare function isAdditiveSelectionActive({ shiftKey, accelKey, }: {
|
|
138
|
+
shiftKey: boolean;
|
|
139
|
+
accelKey: boolean;
|
|
140
|
+
}): boolean;
|
|
141
|
+
export declare function isBrushWrappingSelection({ ctrlKey }: {
|
|
142
|
+
ctrlKey: boolean;
|
|
143
|
+
}): boolean;
|
|
144
|
+
export declare function isQuickClick(info: PointingShapeInfo, event: PointerEditorEvent): boolean;
|
|
145
|
+
export declare function normalizeAngle(angle: number): number;
|
|
146
|
+
export declare function snapAngle(angle: number, step: number): number;
|
|
147
|
+
export declare function getBoxCorners(bounds: Box): Vec[];
|
|
148
|
+
export declare function getShapeSelectionResizePageOutlineVertices(editor: Editor, shape: ShapeRecord): Vec[];
|
|
149
|
+
export declare function getResizedShapeUpdate(editor: Editor, shape: SelectionResizeShapeSnapshot, startBounds: Box, nextBounds: Box, scaleX: number, scaleY: number, handleId: SelectionResizeHandleId, isResizingFromCenter: boolean, rotationCenter: Vec, selectionRotation: number, update: ShapeUpdate): void;
|
|
150
|
+
export declare function getSelectionTransform(rotationCenter: Vec, selectionRotation: number): SelectionRotationTransform;
|
|
151
|
+
export declare function getResizedPagePointsUpdate(editor: Editor, shape: SelectionResizePointShapeSnapshot, startBounds: Box, nextBounds: Box, scaleX: number, scaleY: number, handleId: SelectionResizeHandleId, isResizingFromCenter: boolean, rotationCenter: Vec, selectionRotation: number, update: ShapeUpdate): void;
|
|
152
|
+
export declare function getSelectionResizeAspectRatioLockOverride(editor: Editor, shapes: readonly ShapeRecord[], handleId: SelectionResizeHandleId): boolean | null;
|
|
153
|
+
export declare function getRotatedShapeUpdate(shape: SelectionRotateShapeSnapshot, center: Vec, delta: number, update: ShapeUpdate): void;
|
|
154
|
+
export declare function getRotatedPagePointsUpdate(editor: Editor, shape: SelectionRotatePointShapeSnapshot, center: Vec, delta: number, update: ShapeUpdate): void;
|
|
155
|
+
export declare function createTranslatingUpdates(shapes: TranslatingShapeSnapshot[]): ShapeUpdate[];
|
|
156
|
+
export declare function getTranslateShapeSnapshots(editor: Editor, selectedShapeIds: ShapeId[]): TranslatingShapeSnapshot[];
|
|
157
|
+
export declare function isShapeWrappedByBrush(editor: Editor, brushBounds: Box, shapeId: ShapeId): boolean;
|
|
158
|
+
export declare function shouldSelectShapeWithBrush(editor: Editor, brushBounds: Box, shapeId: ShapeId, isWrapping: boolean): boolean;
|
|
159
|
+
export declare function isBrushSelectableShapeId(editor: Editor, shapeId: ShapeId): boolean;
|
|
160
|
+
export declare function createResizingUpdates(shapes: SelectionResizeShapeSnapshot[], pointShapes: SelectionResizePointShapeSnapshot[]): ShapeUpdate[];
|
|
161
|
+
export declare function createRotatingUpdates(shapes: SelectionRotateShapeSnapshot[], pointShapes: SelectionRotatePointShapeSnapshot[]): ShapeUpdate[];
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent, TickEditorEvent } from "../../../editor/events";
|
|
4
|
+
import { type BrushInfo } from "../selectToolHelpers";
|
|
5
|
+
import { InfoStateNode } from "./selectStateNode";
|
|
6
|
+
export declare class BrushingState extends InfoStateNode<BrushInfo> {
|
|
7
|
+
constructor(editor: Editor, parent: StateNode);
|
|
8
|
+
protected onInfoEnter(): void;
|
|
9
|
+
protected onPointerMove(event: PointerEditorEvent): void;
|
|
10
|
+
protected onTick(event: TickEditorEvent): void;
|
|
11
|
+
protected onKeyDown(): void;
|
|
12
|
+
protected onKeyUp(): void;
|
|
13
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
14
|
+
protected onCancel(): void;
|
|
15
|
+
private updateBrush;
|
|
16
|
+
private updateBrushFromInputs;
|
|
17
|
+
private complete;
|
|
18
|
+
private cancel;
|
|
19
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent } from "../../../editor/events";
|
|
4
|
+
import { type DraggingSelectionHandleInteractionInfo } from "../selectToolHelpers";
|
|
5
|
+
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
6
|
+
export declare class DraggingSelectionHandleInteractionState extends DraggingStateNode<DraggingSelectionHandleInteractionInfo> {
|
|
7
|
+
protected readonly tickMode: "apply_after_scroll";
|
|
8
|
+
constructor(editor: Editor, parent: StateNode);
|
|
9
|
+
protected getHistoryMark(info: DraggingSelectionHandleInteractionInfo): string;
|
|
10
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
11
|
+
protected onCancel(): void;
|
|
12
|
+
protected onInfoExit(): void;
|
|
13
|
+
protected apply({ pagePoint, accelKey }: DragApplyInput): void;
|
|
14
|
+
private complete;
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent } from "../../../editor/events";
|
|
4
|
+
export declare class IdleState extends StateNode {
|
|
5
|
+
constructor(editor: Editor, parent: StateNode);
|
|
6
|
+
protected onEnter(): void;
|
|
7
|
+
protected onPointerDown(event: PointerEditorEvent): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { BrushingState } from "./brushingState";
|
|
2
|
+
export { DraggingSelectionHandleInteractionState } from "./draggingSelectionHandleInteractionState";
|
|
3
|
+
export { IdleState } from "./idleState";
|
|
4
|
+
export { PointingCanvasState } from "./pointingCanvasState";
|
|
5
|
+
export { PointingResizeHandleState } from "./pointingResizeHandleState";
|
|
6
|
+
export { PointingRotateHandleState } from "./pointingRotateHandleState";
|
|
7
|
+
export { PointingSelectionHandleInteractionState } from "./pointingSelectionHandleInteractionState";
|
|
8
|
+
export { PointingShapeState } from "./pointingShapeState";
|
|
9
|
+
export { ResizingState } from "./resizingState";
|
|
10
|
+
export { RotatingState } from "./rotatingState";
|
|
11
|
+
export { TranslatingState } from "./translatingState";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent } from "../../../editor/events";
|
|
4
|
+
import { type PointingCanvasInfo } from "../selectToolHelpers";
|
|
5
|
+
import { PointingStateNode } from "./selectStateNode";
|
|
6
|
+
export declare class PointingCanvasState extends PointingStateNode<PointingCanvasInfo> {
|
|
7
|
+
constructor(editor: Editor, parent: StateNode);
|
|
8
|
+
protected onDragThresholdExceeded(event: PointerEditorEvent): void;
|
|
9
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
10
|
+
protected onCancel(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import { type PointingResizeHandleInfo } from "../selectToolHelpers";
|
|
4
|
+
import { PointingStateNode } from "./selectStateNode";
|
|
5
|
+
export declare class PointingResizeHandleState extends PointingStateNode<PointingResizeHandleInfo> {
|
|
6
|
+
constructor(editor: Editor, parent: StateNode);
|
|
7
|
+
protected onDragThresholdExceeded(): void;
|
|
8
|
+
protected onPointerUp(): void;
|
|
9
|
+
protected onCancel(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import { type PointingRotateHandleInfo } from "../selectToolHelpers";
|
|
4
|
+
import { PointingStateNode } from "./selectStateNode";
|
|
5
|
+
export declare class PointingRotateHandleState extends PointingStateNode<PointingRotateHandleInfo> {
|
|
6
|
+
constructor(editor: Editor, parent: StateNode);
|
|
7
|
+
protected onDragThresholdExceeded(): void;
|
|
8
|
+
protected onPointerUp(): void;
|
|
9
|
+
protected onCancel(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import { type PointingSelectionHandleInteractionInfo } from "../selectToolHelpers";
|
|
4
|
+
import { PointingStateNode } from "./selectStateNode";
|
|
5
|
+
export declare class PointingSelectionHandleInteractionState extends PointingStateNode<PointingSelectionHandleInteractionInfo> {
|
|
6
|
+
constructor(editor: Editor, parent: StateNode);
|
|
7
|
+
protected onDragThresholdExceeded(): void;
|
|
8
|
+
protected onPointerUp(): void;
|
|
9
|
+
protected onCancel(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent } from "../../../editor/events";
|
|
4
|
+
import { type PointingShapeInfo } from "../selectToolHelpers";
|
|
5
|
+
import { PointingStateNode } from "./selectStateNode";
|
|
6
|
+
export declare class PointingShapeState extends PointingStateNode<PointingShapeInfo> {
|
|
7
|
+
constructor(editor: Editor, parent: StateNode);
|
|
8
|
+
protected onInfoEnter(): void;
|
|
9
|
+
protected onDragThresholdExceeded(): void;
|
|
10
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
11
|
+
protected onCancel(): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import { type ResizingInfo } from "../selectToolHelpers";
|
|
4
|
+
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
5
|
+
export declare class ResizingState extends DraggingStateNode<ResizingInfo> {
|
|
6
|
+
protected readonly tickMode: "apply_after_scroll_or_without_screen_point";
|
|
7
|
+
constructor(editor: Editor, parent: StateNode);
|
|
8
|
+
protected getHistoryMark(): string;
|
|
9
|
+
protected onDragStart(): void;
|
|
10
|
+
protected onPointerUp(): void;
|
|
11
|
+
protected onCancel(): void;
|
|
12
|
+
protected onInfoExit(): void;
|
|
13
|
+
protected apply({ pagePoint, shiftKey, altKey, accelKey, }: DragApplyInput): void;
|
|
14
|
+
private complete;
|
|
15
|
+
private cancel;
|
|
16
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import { type RotatingInfo } from "../selectToolHelpers";
|
|
4
|
+
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
5
|
+
export declare class RotatingState extends DraggingStateNode<RotatingInfo> {
|
|
6
|
+
protected readonly tickMode: "apply_after_scroll";
|
|
7
|
+
constructor(editor: Editor, parent: StateNode);
|
|
8
|
+
protected getHistoryMark(): string;
|
|
9
|
+
protected onPointerUp(): void;
|
|
10
|
+
protected onCancel(): void;
|
|
11
|
+
protected apply({ pagePoint, shiftKey, accelKey }: DragApplyInput): void;
|
|
12
|
+
private complete;
|
|
13
|
+
private cancel;
|
|
14
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { Vec } from "../../../geometry/vec";
|
|
2
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
3
|
+
import type { PointerEditorEvent, TickEditorEvent } from "../../../editor/events";
|
|
4
|
+
import { type EdgeScrollTickMode } from "../selectToolHelpers";
|
|
5
|
+
/**
|
|
6
|
+
* Base for every select-tool state that carries a transient `info` payload.
|
|
7
|
+
* Centralises the identical `info` lifecycle (assign on enter, clear on exit)
|
|
8
|
+
* so concrete states only express their behaviour. Cleanup that must run while
|
|
9
|
+
* `info` is still readable belongs in {@link onInfoExit}.
|
|
10
|
+
*/
|
|
11
|
+
export declare abstract class InfoStateNode<T> extends StateNode {
|
|
12
|
+
protected info: T | null;
|
|
13
|
+
protected onEnter(info?: unknown): void;
|
|
14
|
+
protected onExit(): void;
|
|
15
|
+
/** Runs after `info` is assigned. */
|
|
16
|
+
protected onInfoEnter(): void;
|
|
17
|
+
/** Runs before `info` is cleared. */
|
|
18
|
+
protected onInfoExit(): void;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Base for the "pointing_*" states. They all wait for the pointer to exceed the
|
|
22
|
+
* drag threshold before committing to a gesture; subclasses only implement what
|
|
23
|
+
* happens once that threshold is crossed.
|
|
24
|
+
*/
|
|
25
|
+
export declare abstract class PointingStateNode<T extends {
|
|
26
|
+
originPagePoint: Vec;
|
|
27
|
+
}> extends InfoStateNode<T> {
|
|
28
|
+
protected onPointerMove(event: PointerEditorEvent): void;
|
|
29
|
+
protected abstract onDragThresholdExceeded(event: PointerEditorEvent): void;
|
|
30
|
+
}
|
|
31
|
+
/** Pointer/keyboard fields shared by pointer events and synthesized drag inputs. */
|
|
32
|
+
export interface DragApplyInput {
|
|
33
|
+
pagePoint: Vec;
|
|
34
|
+
shiftKey: boolean;
|
|
35
|
+
altKey: boolean;
|
|
36
|
+
accelKey: boolean;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Base for the active drag states (translate / resize / rotate / handle
|
|
40
|
+
* interaction). Centralises the identical event wiring: mark history on enter,
|
|
41
|
+
* apply on pointer-move, apply edge-scroll-aware input on tick, and re-apply the
|
|
42
|
+
* current input on key changes. Subclasses implement {@link apply} plus their own
|
|
43
|
+
* completion/cancellation and any extra cleanup.
|
|
44
|
+
*/
|
|
45
|
+
export declare abstract class DraggingStateNode<T> extends InfoStateNode<T> {
|
|
46
|
+
/** Edge-scroll behaviour for this gesture's tick handling. */
|
|
47
|
+
protected abstract readonly tickMode: EdgeScrollTickMode;
|
|
48
|
+
/** History mark to open on enter (constant or derived from `info`). */
|
|
49
|
+
protected abstract getHistoryMark(info: T): string;
|
|
50
|
+
/** Apply one drag sample. Implementations must guard on `this.info`. */
|
|
51
|
+
protected abstract apply(input: DragApplyInput): void;
|
|
52
|
+
protected onInfoEnter(): void;
|
|
53
|
+
/** Extra setup after the history mark is opened (e.g. clearing indicators). */
|
|
54
|
+
protected onDragStart(): void;
|
|
55
|
+
protected onPointerMove(event: PointerEditorEvent): void;
|
|
56
|
+
protected onTick(event: TickEditorEvent): void;
|
|
57
|
+
protected onKeyDown(): void;
|
|
58
|
+
protected onKeyUp(): void;
|
|
59
|
+
protected applyFromInputs(): void;
|
|
60
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Editor } from "../../../editor/editor";
|
|
2
|
+
import type { PointerEditorEvent } from "../../../editor/events";
|
|
3
|
+
import { StateNode } from "../../../editor/stateNode";
|
|
4
|
+
import { type TranslatingInfo } from "../selectToolHelpers";
|
|
5
|
+
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
6
|
+
export declare class TranslatingState extends DraggingStateNode<TranslatingInfo> {
|
|
7
|
+
protected readonly tickMode: "always_apply";
|
|
8
|
+
constructor(editor: Editor, parent: StateNode);
|
|
9
|
+
protected getHistoryMark(): string;
|
|
10
|
+
protected onDragStart(): void;
|
|
11
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
12
|
+
protected onCancel(): void;
|
|
13
|
+
protected onInfoExit(): void;
|
|
14
|
+
protected apply({ pagePoint, shiftKey, accelKey }: DragApplyInput): void;
|
|
15
|
+
private complete;
|
|
16
|
+
private cancel;
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type ActiveContextMenu } from "../../canvas-core/index";
|
|
2
|
+
import type { CanvasPluginComponent, CanvasPluginProvider } from "../host/canvasPlugin";
|
|
3
|
+
import { type CanvasRendererRegistry } from "../host/rendererRegistry";
|
|
4
|
+
import { type CanvasOverlayRegistry } from "../host/overlayRegistry";
|
|
5
|
+
import { type CanvasDomEventGuardRegistry } from "../host/domEventGuards";
|
|
6
|
+
export declare function Canvas({ canvasComponents, canvasProviders, domEventGuardRegistry, onContextMenuRequest, overlayRegistry, rendererRegistry, showGrid, }?: {
|
|
7
|
+
canvasComponents?: readonly CanvasPluginComponent[];
|
|
8
|
+
canvasProviders?: readonly CanvasPluginProvider[];
|
|
9
|
+
domEventGuardRegistry?: CanvasDomEventGuardRegistry;
|
|
10
|
+
onContextMenuRequest?: (activeContextMenu: ActiveContextMenu) => void;
|
|
11
|
+
overlayRegistry?: CanvasOverlayRegistry;
|
|
12
|
+
rendererRegistry?: CanvasRendererRegistry;
|
|
13
|
+
showGrid?: boolean;
|
|
14
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function OverlayLayer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface PagePointLike {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
export type DashedGuideSegmentKind = "binding-preview" | "selection-binding";
|
|
6
|
+
export declare function DashedGuideSegment({ start, end, startInset, endInset, strokeWidth, dashSize, gapSize, kind, terminal, }: {
|
|
7
|
+
start: PagePointLike;
|
|
8
|
+
end: PagePointLike;
|
|
9
|
+
startInset: number;
|
|
10
|
+
endInset: number;
|
|
11
|
+
strokeWidth: number;
|
|
12
|
+
dashSize: number;
|
|
13
|
+
gapSize: number;
|
|
14
|
+
kind: DashedGuideSegmentKind;
|
|
15
|
+
terminal: string;
|
|
16
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
17
|
+
export declare function DashedGuidePath({ path, strokeWidth, dashSize, gapSize, kind, terminal, }: {
|
|
18
|
+
path: string;
|
|
19
|
+
strokeWidth: number;
|
|
20
|
+
dashSize: number;
|
|
21
|
+
gapSize: number;
|
|
22
|
+
kind: DashedGuideSegmentKind;
|
|
23
|
+
terminal: string;
|
|
24
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const BindingPreviewOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const BrushBoxOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const OverlaySvgRoot: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SelectionFrameOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SelectionHandlesOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SelectionOverlaySvg: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SelectionPathOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type Editor, type ShapeRecord } from "../../../canvas-core/index";
|
|
2
|
+
export declare function ShapeOutlineOverlay({ editor, shape, stroke, fill, strokeWidth, }: {
|
|
3
|
+
editor: Editor;
|
|
4
|
+
shape: ShapeRecord;
|
|
5
|
+
stroke: string;
|
|
6
|
+
fill: string;
|
|
7
|
+
strokeWidth: number;
|
|
8
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SnapIndicatorsOverlay: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type MouseEvent as ReactMouseEvent, type PointerEvent as ReactPointerEvent, type RefObject } from "react";
|
|
2
|
+
import { type ActiveContextMenu, type Editor, type ShapeEditingSession, type ShapeId } from "../../canvas-core/index";
|
|
3
|
+
import type { CanvasDomEventGuardRegistry } from "../host/domEventGuards";
|
|
4
|
+
export interface CanvasDomEventHandlers {
|
|
5
|
+
onPointerDown: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
6
|
+
onContextMenu: (event: ReactMouseEvent<HTMLDivElement>) => void;
|
|
7
|
+
}
|
|
8
|
+
export interface CanvasDomEventState {
|
|
9
|
+
containerRef: RefObject<HTMLDivElement | null>;
|
|
10
|
+
handlers: CanvasDomEventHandlers;
|
|
11
|
+
hoveredShapeId: ShapeId | null;
|
|
12
|
+
isPointerActive: boolean;
|
|
13
|
+
surfaceCursor: string | undefined;
|
|
14
|
+
}
|
|
15
|
+
export declare function useCanvasDomEvents({ activeDomEventGuards, activeToolId, editor, onContextMenuRequest, shapeEditingSession, }: {
|
|
16
|
+
activeDomEventGuards: CanvasDomEventGuardRegistry;
|
|
17
|
+
activeToolId: string;
|
|
18
|
+
editor: Editor;
|
|
19
|
+
onContextMenuRequest?: (activeContextMenu: ActiveContextMenu) => void;
|
|
20
|
+
shapeEditingSession: ShapeEditingSession | null;
|
|
21
|
+
}): CanvasDomEventState;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Vec, type Editor } from "../canvas-core/index";
|
|
2
|
+
export declare const CANVAS_SURFACE_DATA_UI = "canvas-surface";
|
|
3
|
+
export declare const CANVAS_SURFACE_SELECTOR = "[data-ui=\"canvas-surface\"]";
|
|
4
|
+
export declare function getEditableEventTarget(target: EventTarget | null): HTMLElement | null;
|
|
5
|
+
export declare function isEditableEventTarget(target: EventTarget | null): boolean;
|
|
6
|
+
export declare function getCanvasSurfaceElement(root?: ParentNode): HTMLElement | null;
|
|
7
|
+
export declare function getCanvasSurfaceElementForNode(node: Node | null | undefined): HTMLElement | null;
|
|
8
|
+
export declare function forwardWheelEventToCanvasSurface(event: WheelEvent, source: Node): boolean;
|
|
9
|
+
export declare function getCanvasSurfaceScreenPoint(point: Pick<MouseEvent, "clientX" | "clientY">, surface?: HTMLElement | null): Vec;
|
|
10
|
+
export declare function getCanvasSurfacePagePoint(editor: Editor, point: Pick<MouseEvent, "clientX" | "clientY">, surface?: HTMLElement | null): Vec;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { ComponentType, ReactNode } from "react";
|
|
2
|
+
import type { Editor, SelectionCustomHandle, ShapeColor, ShapeEditingSession, ShapeRecordBase } from "../../canvas-core/index";
|
|
3
|
+
export interface ShapeRendererProps<S extends ShapeRecordBase = ShapeRecordBase> {
|
|
4
|
+
shape: S;
|
|
5
|
+
editor: Editor;
|
|
6
|
+
isSelected: boolean;
|
|
7
|
+
isHovered: boolean;
|
|
8
|
+
shapeEditingSession: ShapeEditingSession | null;
|
|
9
|
+
}
|
|
10
|
+
export declare const SHAPE_HOVER_STROKE = "var(--land-selection, #2563eb)";
|
|
11
|
+
export declare function getShapeStrokeForHover(stroke: ShapeColor, isHovered: boolean): string;
|
|
12
|
+
export interface RegisteredShapeRenderer<S extends ShapeRecordBase = ShapeRecordBase> {
|
|
13
|
+
type: S["type"];
|
|
14
|
+
component: ComponentType<ShapeRendererProps<S>>;
|
|
15
|
+
}
|
|
16
|
+
export type AnyRegisteredShapeRenderer = RegisteredShapeRenderer<any>;
|
|
17
|
+
export interface SelectionCustomHandleRendererProps<H extends SelectionCustomHandle = SelectionCustomHandle> {
|
|
18
|
+
handle: H;
|
|
19
|
+
strokeWidth: number;
|
|
20
|
+
}
|
|
21
|
+
export interface RegisteredSelectionCustomHandleRenderer<H extends SelectionCustomHandle = SelectionCustomHandle> {
|
|
22
|
+
type: H["type"];
|
|
23
|
+
component: ComponentType<SelectionCustomHandleRendererProps<H>>;
|
|
24
|
+
}
|
|
25
|
+
export type AnyRegisteredSelectionCustomHandleRenderer = RegisteredSelectionCustomHandleRenderer<any>;
|
|
26
|
+
export type CanvasOverlayLayer = "below-host" | "above-host";
|
|
27
|
+
export interface CanvasOverlayContribution {
|
|
28
|
+
id: string;
|
|
29
|
+
component: ComponentType;
|
|
30
|
+
layer?: CanvasOverlayLayer;
|
|
31
|
+
order?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface CanvasPluginComponent {
|
|
34
|
+
id: string;
|
|
35
|
+
component: ComponentType;
|
|
36
|
+
}
|
|
37
|
+
export interface CanvasPluginProvider {
|
|
38
|
+
id: string;
|
|
39
|
+
component: ComponentType<{
|
|
40
|
+
children: ReactNode;
|
|
41
|
+
}>;
|
|
42
|
+
}
|
|
43
|
+
export type CanvasDomEventGuardName = "pointer_down" | "pointer_move" | "pointer_up" | "pointer_cancel" | "wheel" | "key_down" | "key_up";
|
|
44
|
+
export type CanvasDomEventGuardDecision = "continue" | "handled";
|
|
45
|
+
export interface CanvasDomEventGuardInput {
|
|
46
|
+
name: CanvasDomEventGuardName;
|
|
47
|
+
event: Event;
|
|
48
|
+
editor: Editor;
|
|
49
|
+
container: HTMLElement;
|
|
50
|
+
}
|
|
51
|
+
export interface CanvasDomEventGuardCursorInput {
|
|
52
|
+
element: Element | null;
|
|
53
|
+
editor: Editor;
|
|
54
|
+
container: HTMLElement;
|
|
55
|
+
clientPoint: {
|
|
56
|
+
x: number;
|
|
57
|
+
y: number;
|
|
58
|
+
} | null;
|
|
59
|
+
}
|
|
60
|
+
export interface CanvasDomEventGuard {
|
|
61
|
+
id: string;
|
|
62
|
+
handle(input: CanvasDomEventGuardInput): CanvasDomEventGuardDecision;
|
|
63
|
+
getCursor?(input: CanvasDomEventGuardCursorInput): string | undefined;
|
|
64
|
+
}
|
|
65
|
+
export interface LandCanvasPlugin {
|
|
66
|
+
id: string;
|
|
67
|
+
shapeRenderers?: readonly AnyRegisteredShapeRenderer[];
|
|
68
|
+
canvasOverlays?: readonly CanvasOverlayContribution[];
|
|
69
|
+
selectionCustomHandleRenderers?: readonly AnyRegisteredSelectionCustomHandleRenderer[];
|
|
70
|
+
domEventGuards?: readonly CanvasDomEventGuard[];
|
|
71
|
+
canvasProviders?: readonly CanvasPluginProvider[];
|
|
72
|
+
canvasComponents?: readonly CanvasPluginComponent[];
|
|
73
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ContextMenuContext, ContextMenuContribution, ContextMenuContributionTarget, ContextMenuSection, LandEditorPlugin } from "../../canvas-core/index";
|
|
2
|
+
export declare class CanvasContextMenuRegistry {
|
|
3
|
+
private readonly contributions;
|
|
4
|
+
private readonly duplicateContributionIds;
|
|
5
|
+
registerContribution(contribution: ContextMenuContribution, options?: {
|
|
6
|
+
replace?: boolean;
|
|
7
|
+
}): void;
|
|
8
|
+
registerEditorPlugins(plugins: readonly LandEditorPlugin[]): void;
|
|
9
|
+
getDuplicateContributionIds(): string[];
|
|
10
|
+
getSections(target: ContextMenuContributionTarget, context: ContextMenuContext): ContextMenuSection[];
|
|
11
|
+
}
|
|
12
|
+
export declare function createCanvasContextMenuRegistry(plugins?: readonly LandEditorPlugin[]): CanvasContextMenuRegistry;
|