@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,18 @@
|
|
|
1
|
+
import { type StoreHistoryEntry, type StoreHistoryState } from "../../store/index";
|
|
2
|
+
import { type DocumentRecord } from "../schema/records";
|
|
3
|
+
import type { Editor } from "./editor";
|
|
4
|
+
export type HistoryState = StoreHistoryState;
|
|
5
|
+
export declare class HistoryManager {
|
|
6
|
+
private readonly editor;
|
|
7
|
+
private readonly buffer;
|
|
8
|
+
readonly state: import("../../signals/index").Signal<StoreHistoryState>;
|
|
9
|
+
constructor(editor: Editor);
|
|
10
|
+
clear(): void;
|
|
11
|
+
mark(id: string): void;
|
|
12
|
+
bailToMark(id: string): void;
|
|
13
|
+
squashToMark(id: string, label?: string): void;
|
|
14
|
+
undo(): boolean;
|
|
15
|
+
redo(): boolean;
|
|
16
|
+
getEntries(): readonly StoreHistoryEntry<DocumentRecord>[];
|
|
17
|
+
private handleStoreChange;
|
|
18
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { Editor } from "./editor";
|
|
2
|
+
export { createEditorWithPlugins, type CreateEditorWithPluginsOptions, } from "./createEditorWithPlugins";
|
|
3
|
+
export { StateNode } from "./stateNode";
|
|
4
|
+
export { HistoryManager } from "./historyManager";
|
|
5
|
+
export { InputsManager } from "./managers/inputsManager";
|
|
6
|
+
export { QueryManager } from "./managers/queryManager";
|
|
7
|
+
export { ShortcutManager, formatKeyboardShortcut, normalizeKeyboardShortcut, } from "./managers/shortcutManager";
|
|
8
|
+
export type { EditorKeyboardShortcutCommand, KeyboardShortcutBinding, KeyboardShortcutChord, KeyboardShortcutEventLike, KeyboardShortcutInput, KeyboardShortcutTarget, } from "./managers/shortcutManager";
|
|
9
|
+
export { SpatialIndexManager, type ShapeAtPointOptions, type SpatialQueryOptions, } from "./managers/spatialIndexManager";
|
|
10
|
+
export { ToolManager } from "./managers/toolManager";
|
|
11
|
+
export type { EditorEvent } from "./events";
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ChangeSource } from "../../store/index";
|
|
2
|
+
import type { Vec } from "../geometry/vec";
|
|
3
|
+
import type { ShapeId, ShapeRecord } from "../schema/records";
|
|
4
|
+
import type { Editor } from "./editor";
|
|
5
|
+
import type { EditorEvent } from "./events";
|
|
6
|
+
import type { SelectionHandle } from "./selection";
|
|
7
|
+
import type { HandleSnapContext, HandleSnapMode } from "./managers/snapTypes";
|
|
8
|
+
export interface SelectionHandleInteractionInput {
|
|
9
|
+
handle: SelectionHandle;
|
|
10
|
+
shape: ShapeRecord;
|
|
11
|
+
originPagePoint: Vec;
|
|
12
|
+
}
|
|
13
|
+
export interface SelectionHandleInteractionSession {
|
|
14
|
+
readonly shapeId: ShapeId;
|
|
15
|
+
readonly historyMark: string;
|
|
16
|
+
readonly handleSnapMode?: HandleSnapMode;
|
|
17
|
+
readonly handleSnapContext?: HandleSnapContext;
|
|
18
|
+
readonly allowSelfSnap?: boolean;
|
|
19
|
+
readonly excludedSnapShapeIds?: readonly ShapeId[];
|
|
20
|
+
readonly shouldClearBindingPreviewOnExit?: boolean;
|
|
21
|
+
update(input: {
|
|
22
|
+
editor: Editor;
|
|
23
|
+
pagePoint: Vec;
|
|
24
|
+
accelKey: boolean;
|
|
25
|
+
source: ChangeSource;
|
|
26
|
+
}): "continue" | "stop" | SelectionHandleInteractionUpdateResult;
|
|
27
|
+
}
|
|
28
|
+
export interface SelectionHandleInteractionUpdateResult {
|
|
29
|
+
status: "continue" | "stop";
|
|
30
|
+
finalPagePoint?: Vec | null;
|
|
31
|
+
}
|
|
32
|
+
export interface SelectionHandleInteractionHandler {
|
|
33
|
+
createSession(editor: Editor, input: SelectionHandleInteractionInput): SelectionHandleInteractionSession | null;
|
|
34
|
+
}
|
|
35
|
+
export type EditorEventInteractionDecision = "continue" | "handled";
|
|
36
|
+
export interface EditorEventInteractionHandler {
|
|
37
|
+
handleEvent(editor: Editor, event: EditorEvent): EditorEventInteractionDecision;
|
|
38
|
+
}
|
|
39
|
+
export interface LandInteractionHandler {
|
|
40
|
+
id: string;
|
|
41
|
+
editorEvent?: EditorEventInteractionHandler;
|
|
42
|
+
selectionHandle?: SelectionHandleInteractionHandler;
|
|
43
|
+
}
|
|
44
|
+
export declare class InteractionHandlerRegistry {
|
|
45
|
+
private readonly handlers;
|
|
46
|
+
private readonly registeredIds;
|
|
47
|
+
register(handler: LandInteractionHandler): void;
|
|
48
|
+
getHandlers(): readonly LandInteractionHandler[];
|
|
49
|
+
handleEvent(editor: Editor, event: EditorEvent): EditorEventInteractionDecision;
|
|
50
|
+
createSelectionHandleSession(editor: Editor, input: SelectionHandleInteractionInput): SelectionHandleInteractionSession | null;
|
|
51
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Editor } from "./editor";
|
|
2
|
+
import type { Store } from "../../store/index";
|
|
3
|
+
import type { EditorRecord } from "../schema/records";
|
|
4
|
+
declare const editorStoreSymbol: unique symbol;
|
|
5
|
+
export declare function setEditorStore(editor: Editor, store: Store<EditorRecord>): void;
|
|
6
|
+
export declare function getEditorStore(editor: Editor): Store<EditorRecord>;
|
|
7
|
+
export { editorStoreSymbol };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ChangeSource } from "../../../store/index";
|
|
2
|
+
import { type BindingId, type BindingRecord, type ShapeId, type ShapeRecord } from "../../schema/records";
|
|
3
|
+
import type { Editor } from "../editor";
|
|
4
|
+
export interface ShapeChangeEntry {
|
|
5
|
+
before: ShapeRecord;
|
|
6
|
+
after: ShapeRecord;
|
|
7
|
+
}
|
|
8
|
+
export declare class BindingManager {
|
|
9
|
+
private readonly editor;
|
|
10
|
+
constructor(editor: Editor);
|
|
11
|
+
getBindingsFromShape(shapeId: ShapeId): BindingRecord[];
|
|
12
|
+
getBindingsToShape(shapeId: ShapeId): BindingRecord[];
|
|
13
|
+
getBindingsForShape(shapeId: ShapeId): BindingRecord[];
|
|
14
|
+
getConflictingBindings(binding: BindingRecord): BindingRecord[];
|
|
15
|
+
canBind(binding: BindingRecord): boolean;
|
|
16
|
+
syncCreatedBinding(binding: BindingRecord, source: ChangeSource): void;
|
|
17
|
+
syncUpdatedBinding(before: BindingRecord, after: BindingRecord, source: ChangeSource): void;
|
|
18
|
+
repairLoadedBindings(source: ChangeSource): void;
|
|
19
|
+
handleShapeChanges(changes: ShapeChangeEntry[], source: ChangeSource, options?: {
|
|
20
|
+
skipBindingIds?: ReadonlySet<BindingId>;
|
|
21
|
+
}): void;
|
|
22
|
+
cleanupBindingsForDeletedShapes(ids: ShapeId[], source: ChangeSource): void;
|
|
23
|
+
cleanupBindings(ids: BindingId[], source: ChangeSource): void;
|
|
24
|
+
private applyEffect;
|
|
25
|
+
private getAllBindings;
|
|
26
|
+
private getExclusiveBindingKey;
|
|
27
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import type { ChangeSource } from "../../../store/index";
|
|
3
|
+
import { Vec } from "../../geometry/vec";
|
|
4
|
+
import { type Camera } from "../../schema/records";
|
|
5
|
+
import type { PageId } from "../../schema/records";
|
|
6
|
+
import type { Editor } from "../editor";
|
|
7
|
+
/**
|
|
8
|
+
* Camera and viewport-screen-size state for the editor. Owns the viewport size
|
|
9
|
+
* atom (viewport + camera together define the page<->screen transform) and the
|
|
10
|
+
* camera read/write/transform operations carved out of the Editor facade so the
|
|
11
|
+
* editor can stay a thinner delegating surface. The Editor exposes thin wrappers
|
|
12
|
+
* that forward here and re-publishes {@link viewportScreenSizeSignal}.
|
|
13
|
+
*/
|
|
14
|
+
export declare class CameraManager {
|
|
15
|
+
private readonly editor;
|
|
16
|
+
private readonly _viewportScreenSizeSignal;
|
|
17
|
+
readonly viewportScreenSizeSignal: Signal<{
|
|
18
|
+
w: number;
|
|
19
|
+
h: number;
|
|
20
|
+
}>;
|
|
21
|
+
constructor(editor: Editor);
|
|
22
|
+
getCurrentCamera(): Camera;
|
|
23
|
+
getCamera(pageId?: PageId): Camera;
|
|
24
|
+
pageToScreen(point: Vec, pageId?: PageId): Vec;
|
|
25
|
+
screenToPage(point: Vec, pageId?: PageId): Vec;
|
|
26
|
+
setCamera(partial: Partial<Camera>, options?: {
|
|
27
|
+
pageId?: PageId;
|
|
28
|
+
source?: ChangeSource;
|
|
29
|
+
}): void;
|
|
30
|
+
panCamera(delta: Vec, source?: ChangeSource): void;
|
|
31
|
+
zoomCameraAtScreenPoint(screenPoint: Vec, deltaY: number, source?: ChangeSource): void;
|
|
32
|
+
zoomCameraToScreenPoint(screenPoint: Vec, zoom: number, source?: ChangeSource): void;
|
|
33
|
+
zoomAtViewportCenter(deltaY: number, source?: ChangeSource): void;
|
|
34
|
+
resetZoom(source?: ChangeSource): void;
|
|
35
|
+
setViewportScreenSize(size: {
|
|
36
|
+
w: number;
|
|
37
|
+
h: number;
|
|
38
|
+
}): void;
|
|
39
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ShapeId } from "../../schema/records";
|
|
2
|
+
import { type DuplicateSelectionInput, type EditorClipboardPayload, type PasteClipboardPayloadInput } from "../clipboard";
|
|
3
|
+
import type { Editor } from "../editor";
|
|
4
|
+
/**
|
|
5
|
+
* Clipboard operations over editor selections. The Editor exposes thin wrappers
|
|
6
|
+
* that forward here.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ClipboardManager {
|
|
9
|
+
private readonly editor;
|
|
10
|
+
constructor(editor: Editor);
|
|
11
|
+
createPayloadFromSelection(): EditorClipboardPayload | null;
|
|
12
|
+
pastePayload(input: PasteClipboardPayloadInput): ShapeId[];
|
|
13
|
+
duplicateSelection(input?: DuplicateSelectionInput): ShapeId[];
|
|
14
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ChangeSource } from "../../../store/index";
|
|
2
|
+
import { type EditorRecord } from "../../schema/records";
|
|
3
|
+
import { type DocumentSnapshot, type SessionSnapshot } from "../../schema/snapshots";
|
|
4
|
+
import type { Editor } from "../editor";
|
|
5
|
+
/**
|
|
6
|
+
* Document/session snapshot serialization, restore, and post-restore repair.
|
|
7
|
+
* The Editor exposes thin wrappers that forward here.
|
|
8
|
+
*/
|
|
9
|
+
export declare class DocumentSnapshotManager {
|
|
10
|
+
private readonly editor;
|
|
11
|
+
constructor(editor: Editor);
|
|
12
|
+
buildInitialRecords(documentSnapshot: unknown, sessionSnapshot: unknown): EditorRecord[];
|
|
13
|
+
getDocumentSnapshot(): DocumentSnapshot;
|
|
14
|
+
getSessionSnapshot(): SessionSnapshot;
|
|
15
|
+
loadDocumentSnapshot(snapshot: unknown, options?: {
|
|
16
|
+
source?: ChangeSource;
|
|
17
|
+
}): void;
|
|
18
|
+
loadSessionSnapshot(snapshot: unknown, options?: {
|
|
19
|
+
source?: ChangeSource;
|
|
20
|
+
}): void;
|
|
21
|
+
syncAfterDocumentRestore(): void;
|
|
22
|
+
ensureSessionIntegrity(): void;
|
|
23
|
+
private syncAfterDocumentSnapshotLoad;
|
|
24
|
+
private repairCameraByPage;
|
|
25
|
+
private repairSelectionByPage;
|
|
26
|
+
private parseInitialDocumentSnapshot;
|
|
27
|
+
private parseInitialSessionSnapshot;
|
|
28
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { EditorEvent, PointerEditorEvent } from "../events";
|
|
2
|
+
import { Vec } from "../../geometry/vec";
|
|
3
|
+
export type InputDragPhase = "idle" | "pointing" | "dragging";
|
|
4
|
+
export interface InputsState {
|
|
5
|
+
originPagePoint: Vec | null;
|
|
6
|
+
currentPagePoint: Vec | null;
|
|
7
|
+
previousPagePoint: Vec | null;
|
|
8
|
+
originScreenPoint: Vec | null;
|
|
9
|
+
currentScreenPoint: Vec | null;
|
|
10
|
+
previousScreenPoint: Vec | null;
|
|
11
|
+
currentTimestamp: number | null;
|
|
12
|
+
previousTimestamp: number | null;
|
|
13
|
+
pageVelocity: Vec;
|
|
14
|
+
screenVelocity: Vec;
|
|
15
|
+
pointerId: number | null;
|
|
16
|
+
pointerType: PointerEditorEvent["pointerType"] | null;
|
|
17
|
+
buttons: number;
|
|
18
|
+
isPointing: boolean;
|
|
19
|
+
isDragging: boolean;
|
|
20
|
+
dragPhase: InputDragPhase;
|
|
21
|
+
shiftKey: boolean;
|
|
22
|
+
altKey: boolean;
|
|
23
|
+
ctrlKey: boolean;
|
|
24
|
+
metaKey: boolean;
|
|
25
|
+
accelKey: boolean;
|
|
26
|
+
}
|
|
27
|
+
export declare class InputsManager {
|
|
28
|
+
readonly state: import("../../../signals/index").Atom<InputsState>;
|
|
29
|
+
setCurrentPointerPoint(input: {
|
|
30
|
+
timestamp: number;
|
|
31
|
+
pagePoint: Vec;
|
|
32
|
+
screenPoint: Vec;
|
|
33
|
+
shiftKey: boolean;
|
|
34
|
+
altKey: boolean;
|
|
35
|
+
ctrlKey: boolean;
|
|
36
|
+
metaKey: boolean;
|
|
37
|
+
accelKey: boolean;
|
|
38
|
+
}): void;
|
|
39
|
+
handleEvent(event: EditorEvent): void;
|
|
40
|
+
resetPointer(): void;
|
|
41
|
+
private handlePointerEvent;
|
|
42
|
+
private handleKeyboardEvent;
|
|
43
|
+
private handleWheelEvent;
|
|
44
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import { type TerminalBindingResolver, type TerminalBindingResolverInput, type ResolvedTerminalBinding } from "../../bindings/terminalBinding";
|
|
3
|
+
import type { Box } from "../../geometry/box";
|
|
4
|
+
import type { Vec } from "../../geometry/vec";
|
|
5
|
+
import type { ShapeId } from "../../schema/records";
|
|
6
|
+
import type { Editor } from "../editor";
|
|
7
|
+
import type { BindingPreviewState, SnapIndicatorState } from "../selection";
|
|
8
|
+
export interface LaserTrailState {
|
|
9
|
+
sessionId: number;
|
|
10
|
+
phase: "active" | "ending";
|
|
11
|
+
points: Vec[];
|
|
12
|
+
}
|
|
13
|
+
export declare class InteractionTransientManager {
|
|
14
|
+
private readonly editor;
|
|
15
|
+
private readonly _brushBoxSignal;
|
|
16
|
+
readonly brushBoxSignal: Signal<Box | null>;
|
|
17
|
+
readonly brushBoxActiveSignal: import("../../../signals/index").Computed<boolean>;
|
|
18
|
+
private readonly _erasingShapeIdsSignal;
|
|
19
|
+
readonly erasingShapeIdsSignal: Signal<ShapeId[]>;
|
|
20
|
+
readonly erasingShapeIdsActiveSignal: import("../../../signals/index").Computed<boolean>;
|
|
21
|
+
private readonly _eraserTrailSignal;
|
|
22
|
+
readonly eraserTrailSignal: Signal<Vec[]>;
|
|
23
|
+
readonly eraserTrailActiveSignal: import("../../../signals/index").Computed<boolean>;
|
|
24
|
+
private readonly _laserTrailSignal;
|
|
25
|
+
readonly laserTrailSignal: Signal<LaserTrailState | null>;
|
|
26
|
+
readonly laserTrailActiveSignal: import("../../../signals/index").Computed<boolean>;
|
|
27
|
+
private nextLaserSessionId;
|
|
28
|
+
private readonly _bindingPreviewSignal;
|
|
29
|
+
readonly bindingPreviewSignal: Signal<BindingPreviewState | null>;
|
|
30
|
+
readonly bindingPreviewActiveSignal: import("../../../signals/index").Computed<boolean>;
|
|
31
|
+
private readonly _dropTargetShapeIdSignal;
|
|
32
|
+
readonly dropTargetShapeIdSignal: Signal<ShapeId | null>;
|
|
33
|
+
private readonly _selectionTranslationActiveSignal;
|
|
34
|
+
readonly selectionTranslationActiveSignal: Signal<boolean>;
|
|
35
|
+
private terminalBindingResolver;
|
|
36
|
+
constructor(editor: Editor);
|
|
37
|
+
setBrushBox(brushBox: Box | null): void;
|
|
38
|
+
getErasingShapeIds(): ShapeId[];
|
|
39
|
+
setErasingShapeIds(shapeIds: readonly ShapeId[]): void;
|
|
40
|
+
clearErasingShapeIds(): void;
|
|
41
|
+
getEraserTrail(): Vec[];
|
|
42
|
+
setEraserTrail(points: readonly Vec[]): void;
|
|
43
|
+
clearEraserTrail(): void;
|
|
44
|
+
startLaserTrail(): number;
|
|
45
|
+
setLaserTrail(sessionId: number, points: readonly Vec[]): void;
|
|
46
|
+
finishLaserTrail(sessionId: number): void;
|
|
47
|
+
clearLaserTrail(sessionId: number): void;
|
|
48
|
+
setBindingPreview(preview: BindingPreviewState | null): void;
|
|
49
|
+
setDropTargetShapeId(shapeId: ShapeId | null): void;
|
|
50
|
+
setSelectionTranslationActive(active: boolean): void;
|
|
51
|
+
setSnapIndicators(indicators: SnapIndicatorState[] | null): void;
|
|
52
|
+
setTerminalBindingResolver(resolver: TerminalBindingResolver): void;
|
|
53
|
+
resolveTerminalBinding(input: TerminalBindingResolverInput): ResolvedTerminalBinding;
|
|
54
|
+
clearSelectionTransients(): void;
|
|
55
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import { Box } from "../../geometry/box";
|
|
3
|
+
import { Mat } from "../../geometry/mat";
|
|
4
|
+
import { Vec } from "../../geometry/vec";
|
|
5
|
+
import { type BindingId, type BindingRecord, type PageId, type ShapeId, type ShapeParentId, type ShapeRecord } from "../../schema/records";
|
|
6
|
+
import type { Editor } from "../editor";
|
|
7
|
+
import { type ShapeGeometry } from "../queries/shapeTransforms";
|
|
8
|
+
import { type QueryState } from "./queryState";
|
|
9
|
+
import { type SelectionGeometrySnapshot } from "./selectionGeometry";
|
|
10
|
+
export type ShapeContainment = "inside" | "intersecting" | "outside";
|
|
11
|
+
export declare class QueryManager {
|
|
12
|
+
private readonly editor;
|
|
13
|
+
readonly stateSignal: Signal<QueryState>;
|
|
14
|
+
readonly currentPageShapeIdsSignal: Signal<ShapeId[]>;
|
|
15
|
+
readonly currentPageShapesSignal: Signal<ShapeRecord[]>;
|
|
16
|
+
readonly selectionGeometrySignal: Signal<SelectionGeometrySnapshot>;
|
|
17
|
+
readonly selectionPageOutlineVerticesSignal: Signal<Vec[]>;
|
|
18
|
+
readonly selectionPageBoundsSignal: Signal<Box | null>;
|
|
19
|
+
readonly selectionFrameBoundsSignal: Signal<Box | null>;
|
|
20
|
+
readonly selectionHasRotationSignal: Signal<boolean>;
|
|
21
|
+
readonly selectionRotationSignal: Signal<number>;
|
|
22
|
+
readonly selectionRotationCenterSignal: Signal<Vec | null>;
|
|
23
|
+
readonly selectionHasCompatibleRotationSignal: Signal<boolean>;
|
|
24
|
+
readonly selectionAnchorPagePointSignal: Signal<Vec | null>;
|
|
25
|
+
private readonly stateAtom;
|
|
26
|
+
private readonly shapeQuerySignals;
|
|
27
|
+
constructor(editor: Editor);
|
|
28
|
+
getShapeIdsForPage(pageId: PageId): ShapeId[];
|
|
29
|
+
getShapesForPage(pageId: PageId): ShapeRecord[];
|
|
30
|
+
getChildShapeIds(parentId: ShapeParentId): ShapeId[];
|
|
31
|
+
getChildShapes(parentId: ShapeParentId): ShapeRecord[];
|
|
32
|
+
getDescendantShapeIds(parentId: ShapeParentId): ShapeId[];
|
|
33
|
+
getPageIdForShape(shapeId: ShapeId): PageId | null;
|
|
34
|
+
getPageIdForShapeParent(parentId: ShapeParentId): PageId | null;
|
|
35
|
+
getDescendantPageBounds(parentId: ShapeParentId): Box | null;
|
|
36
|
+
getShapeSubtreePageBounds(shapeId: ShapeId): Box | null;
|
|
37
|
+
getShapeContainment(containerId: ShapeId, shapeId: ShapeId): ShapeContainment | null;
|
|
38
|
+
getContainingShapeParentId(shapeIds: Iterable<ShapeId>): ShapeParentId | null;
|
|
39
|
+
getContainingShapeParentIdAtPoint(shapeIds: Iterable<ShapeId>, point: Vec): ShapeParentId | null;
|
|
40
|
+
getContainingParentIdForShapeRecord(shape: ShapeRecord): ShapeParentId | null;
|
|
41
|
+
getShapeClipAncestorIds(shapeId: ShapeId): ShapeId[];
|
|
42
|
+
getShapeClipAncestorIdsSignal(shapeId: ShapeId): Signal<ShapeId[]>;
|
|
43
|
+
isPagePointInShapeClip(shapeId: ShapeId, point: Vec): boolean;
|
|
44
|
+
getShapeClippedPageBounds(shapeId: ShapeId): Box | null;
|
|
45
|
+
private getShapeClipAncestors;
|
|
46
|
+
private getShapeClipAncestorsForShape;
|
|
47
|
+
private getShapeChildClipPageBounds;
|
|
48
|
+
private getShapeIdsForPageSnapshot;
|
|
49
|
+
private getChildShapeIdsSnapshot;
|
|
50
|
+
private handleStoreChange;
|
|
51
|
+
private getShapeQuerySignals;
|
|
52
|
+
private getShapeGeometrySnapshot;
|
|
53
|
+
getShapePageBoundsSignal(shapeId: ShapeId): Signal<Box | undefined>;
|
|
54
|
+
getShapeGeometry(shapeId: ShapeId): ShapeGeometry | undefined;
|
|
55
|
+
getShapePositionedToPageTransform(shapeId: ShapeId): Mat | undefined;
|
|
56
|
+
getShapePageBounds(shapeId: ShapeId): Box | undefined;
|
|
57
|
+
getShapeBounds(shapeId: ShapeId): Box | undefined;
|
|
58
|
+
getShapePageCenter(shapeId: ShapeId): Vec | undefined;
|
|
59
|
+
getShapePageCorners(shapeId: ShapeId): Vec[] | undefined;
|
|
60
|
+
getShapePageOutlineVertices(shapeId: ShapeId): Vec[] | undefined;
|
|
61
|
+
getSelectionPageOutlineVertices(): Vec[];
|
|
62
|
+
getSelectionPageBounds(): Box | null;
|
|
63
|
+
getSelectionFrameBounds(): Box | null;
|
|
64
|
+
getSelectionRotation(): number;
|
|
65
|
+
getSelectionHasRotation(): boolean;
|
|
66
|
+
getSelectionRotationCenter(): Vec | null;
|
|
67
|
+
getSelectionHasCompatibleRotation(): boolean;
|
|
68
|
+
getSelectionAnchorPagePoint(): Vec | null;
|
|
69
|
+
getBinding(id: BindingId): BindingRecord | undefined;
|
|
70
|
+
getBindings(): BindingRecord[];
|
|
71
|
+
getBindingIdsFromShape(shapeId: ShapeId): BindingId[];
|
|
72
|
+
getBindingIdsToShape(shapeId: ShapeId): BindingId[];
|
|
73
|
+
getBindingIdsForShape(shapeId: ShapeId): BindingId[];
|
|
74
|
+
getBindingsFromShape(shapeId: ShapeId): BindingRecord[];
|
|
75
|
+
getBindingsToShape(shapeId: ShapeId): BindingRecord[];
|
|
76
|
+
getBindingsForShape(shapeId: ShapeId): BindingRecord[];
|
|
77
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { StoreChange } from "../../../store/index";
|
|
2
|
+
import { type BindingId, type BindingRecord, type EditorRecord, type PageId, type ShapeId, type ShapeParentId } from "../../schema/records";
|
|
3
|
+
export interface QueryState {
|
|
4
|
+
pageShapeIdsByPage: Map<PageId, ShapeId[]>;
|
|
5
|
+
childShapeIdsByParent: Map<ShapeParentId, ShapeId[]>;
|
|
6
|
+
pageIdByShape: Map<ShapeId, PageId>;
|
|
7
|
+
bindingById: Map<BindingId, BindingRecord>;
|
|
8
|
+
bindingIdsByFromShape: Map<ShapeId, BindingId[]>;
|
|
9
|
+
bindingIdsByToShape: Map<ShapeId, BindingId[]>;
|
|
10
|
+
relatedBindingIdsByShape: Map<ShapeId, BindingId[]>;
|
|
11
|
+
}
|
|
12
|
+
type ReadEditorRecord = (id: string) => EditorRecord | undefined;
|
|
13
|
+
export declare function areShapeIdArraysEqual(a: ShapeId[], b: ShapeId[]): boolean;
|
|
14
|
+
export declare function compareBindings(left: BindingRecord, right: BindingRecord): number;
|
|
15
|
+
export declare function buildQueryState(records: EditorRecord[]): QueryState;
|
|
16
|
+
export declare function getRemovedShapeIdsFromQueryStateChange(change: StoreChange<EditorRecord>): ShapeId[];
|
|
17
|
+
export declare function updateQueryStateFromStoreChange(previous: QueryState, change: StoreChange<EditorRecord>, getRecord: ReadEditorRecord): QueryState;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import type { ShapeId } from "../../schema/records";
|
|
3
|
+
import type { Editor, EditorRenderHostDebugState, RenderItem } from "../editor";
|
|
4
|
+
/**
|
|
5
|
+
* Render culling and retained-window signals for the editor render host. The
|
|
6
|
+
* Editor exposes thin signal aliases that forward here.
|
|
7
|
+
*/
|
|
8
|
+
export declare class RenderWindowManager {
|
|
9
|
+
private readonly editor;
|
|
10
|
+
readonly shapeRenderOrderByIdSignal: Signal<Map<ShapeId, number>>;
|
|
11
|
+
readonly culledShapeIdsSignal: Signal<ShapeId[]>;
|
|
12
|
+
readonly culledShapeIdSetSignal: Signal<Set<ShapeId>>;
|
|
13
|
+
readonly selectedShapeIdsOutsideCulledSignal: Signal<ShapeId[]>;
|
|
14
|
+
readonly selectedShapeIdsOutsideCulledSetSignal: Signal<Set<ShapeId>>;
|
|
15
|
+
readonly renderVisibleShapeIdsSignal: Signal<ShapeId[]>;
|
|
16
|
+
readonly retainedShapeIdsSignal: Signal<ShapeId[]>;
|
|
17
|
+
readonly renderVisibleShapeIdSetSignal: Signal<Set<ShapeId>>;
|
|
18
|
+
readonly renderItemsSignal: Signal<RenderItem[]>;
|
|
19
|
+
readonly renderHostDebugStateSignal: Signal<EditorRenderHostDebugState>;
|
|
20
|
+
private readonly retainedBaseShapeWindowSnapshotSignal;
|
|
21
|
+
private readonly retainedShapeWindowSnapshotSignal;
|
|
22
|
+
private readonly renderHostDebugStateSnapshotSignal;
|
|
23
|
+
constructor(editor: Editor);
|
|
24
|
+
private getPageIndexById;
|
|
25
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import { Box } from "../../geometry/box";
|
|
3
|
+
import { Vec } from "../../geometry/vec";
|
|
4
|
+
import type { ShapeId } from "../../schema/records";
|
|
5
|
+
import type { Editor } from "../editor";
|
|
6
|
+
import type { ShapeGeometry } from "../queries/shapeTransforms";
|
|
7
|
+
export interface SelectionGeometrySnapshot {
|
|
8
|
+
outlineVertices: Vec[];
|
|
9
|
+
pageBounds: Box | null;
|
|
10
|
+
frameBounds: Box | null;
|
|
11
|
+
rotation: number;
|
|
12
|
+
rotationCenter: Vec | null;
|
|
13
|
+
selectionAnchorPagePoint: Vec | null;
|
|
14
|
+
hasRotation: boolean;
|
|
15
|
+
hasCompatibleRotation: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface SelectionGeometrySignals {
|
|
18
|
+
geometry: Signal<SelectionGeometrySnapshot>;
|
|
19
|
+
pageOutlineVertices: Signal<Vec[]>;
|
|
20
|
+
pageBounds: Signal<Box | null>;
|
|
21
|
+
frameBounds: Signal<Box | null>;
|
|
22
|
+
hasRotation: Signal<boolean>;
|
|
23
|
+
rotation: Signal<number>;
|
|
24
|
+
rotationCenter: Signal<Vec | null>;
|
|
25
|
+
hasCompatibleRotation: Signal<boolean>;
|
|
26
|
+
selectionAnchorPagePoint: Signal<Vec | null>;
|
|
27
|
+
}
|
|
28
|
+
export declare function createSelectionGeometrySignals(editor: Editor, getShapeGeometrySnapshot: (shapeId: ShapeId) => ShapeGeometry | undefined): SelectionGeometrySignals;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ChangeSource } from "../../../store/index";
|
|
2
|
+
import { Box } from "../../geometry/box";
|
|
3
|
+
import type { PageId } from "../../schema/records";
|
|
4
|
+
import type { Editor } from "../editor";
|
|
5
|
+
export type AlignMode = "left" | "horizontal-center" | "right" | "top" | "vertical-center" | "bottom";
|
|
6
|
+
export type DistributeAxis = "horizontal" | "vertical";
|
|
7
|
+
export interface ZoomToBoundsOptions {
|
|
8
|
+
padding?: number;
|
|
9
|
+
maxZoom?: number;
|
|
10
|
+
source?: ChangeSource;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Selection alignment / distribution and viewport-fit camera moves. These are
|
|
14
|
+
* cohesive, page-space selection operations carved out of the Editor facade so
|
|
15
|
+
* the editor can stay a thinner delegating surface. The Editor exposes thin
|
|
16
|
+
* wrappers that forward here.
|
|
17
|
+
*/
|
|
18
|
+
export declare class SelectionLayoutManager {
|
|
19
|
+
private readonly editor;
|
|
20
|
+
constructor(editor: Editor);
|
|
21
|
+
align(mode: AlignMode, source?: ChangeSource): boolean;
|
|
22
|
+
distribute(axis: DistributeAxis, source?: ChangeSource): boolean;
|
|
23
|
+
getCurrentPageBounds(pageId?: PageId): Box | null;
|
|
24
|
+
zoomToBounds(bounds: Box, options?: ZoomToBoundsOptions): boolean;
|
|
25
|
+
zoomToFit(options?: ZoomToBoundsOptions): boolean;
|
|
26
|
+
zoomToSelection(options?: ZoomToBoundsOptions): boolean;
|
|
27
|
+
private boundsOfShapeIds;
|
|
28
|
+
private getAlignableEntries;
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ChangeSource } from "../../../store/index";
|
|
2
|
+
import type { PageId, ShapeId } from "../../schema/records";
|
|
3
|
+
import type { Editor } from "../editor";
|
|
4
|
+
/**
|
|
5
|
+
* Selection-set writes for the editor: which shapes are selected per page. These
|
|
6
|
+
* are cohesive session-state mutations carved out of the Editor facade so the
|
|
7
|
+
* editor can stay a thinner delegating surface. Selection geometry and the
|
|
8
|
+
* rotation/flip transforms live elsewhere (selection.ts /
|
|
9
|
+
* editorSelectionTransforms.ts); this manager only owns the selected-id sets.
|
|
10
|
+
* The Editor exposes thin wrappers that forward here.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SelectionManager {
|
|
13
|
+
private readonly editor;
|
|
14
|
+
constructor(editor: Editor);
|
|
15
|
+
setSelectedShapeIds(ids: ShapeId[], options?: {
|
|
16
|
+
pageId?: PageId;
|
|
17
|
+
source?: ChangeSource;
|
|
18
|
+
}): void;
|
|
19
|
+
removeShapeIdsFromSelection(ids: ShapeId[], source?: ChangeSource): void;
|
|
20
|
+
selectAllCurrentPage(source?: ChangeSource): void;
|
|
21
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import type { Editor, EditorOverlayDebugState } from "../editor";
|
|
3
|
+
import type { SelectionBindingSegment, SelectionOverlayFrameState, SelectionOverlayFrameGeometryState, SelectionOverlayFrameStyleState, SelectionOverlayHandleAnchorsState, SelectionOverlayHandleCountsState, SelectionOverlayHandlesState, SelectionOverlayState } from "../selection";
|
|
4
|
+
/**
|
|
5
|
+
* Selection overlay derived state: frame geometry/style, handles, combined
|
|
6
|
+
* overlay state, companion frames, and debug metrics. The Editor exposes thin
|
|
7
|
+
* signal aliases that forward here.
|
|
8
|
+
*/
|
|
9
|
+
export declare class SelectionOverlayManager {
|
|
10
|
+
private readonly editor;
|
|
11
|
+
readonly frameGeometrySignal: Signal<SelectionOverlayFrameGeometryState | null>;
|
|
12
|
+
readonly companionFrameGeometriesSignal: Signal<SelectionOverlayFrameGeometryState[]>;
|
|
13
|
+
readonly pathSignal: Signal<string | null>;
|
|
14
|
+
readonly bindingSegmentsSignal: Signal<SelectionBindingSegment[]>;
|
|
15
|
+
readonly frameStyleSignal: Signal<SelectionOverlayFrameStyleState>;
|
|
16
|
+
readonly frameSignal: Signal<SelectionOverlayFrameState | null>;
|
|
17
|
+
readonly handleAnchorsSignal: Signal<SelectionOverlayHandleAnchorsState | null>;
|
|
18
|
+
readonly handlesSignal: Signal<SelectionOverlayHandlesState | null>;
|
|
19
|
+
readonly handleCountsSignal: Signal<SelectionOverlayHandleCountsState | null>;
|
|
20
|
+
readonly overlaySignal: Signal<SelectionOverlayState | null>;
|
|
21
|
+
readonly debugStateSignal: Signal<EditorOverlayDebugState>;
|
|
22
|
+
private readonly debugStateSnapshotSignal;
|
|
23
|
+
constructor(editor: Editor);
|
|
24
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type Signal } from "../../../signals/index";
|
|
2
|
+
import type { ChangeSource } from "../../../store/index";
|
|
3
|
+
import type { ShapeEditingEntryRequest, ShapeEditingSession, ShapeId, ShapeRecord } from "../../schema/records";
|
|
4
|
+
import type { StartEditingShapeInput } from "../commands";
|
|
5
|
+
import type { Editor } from "../editor";
|
|
6
|
+
/**
|
|
7
|
+
* Shape editing lifecycle for the editor: edit-session entry, completion,
|
|
8
|
+
* cancellation, composition state, and focus-entry requests. The Editor exposes
|
|
9
|
+
* thin wrappers that forward here.
|
|
10
|
+
*/
|
|
11
|
+
export declare class ShapeEditingManager {
|
|
12
|
+
private readonly editor;
|
|
13
|
+
private readonly entryRequestAtom;
|
|
14
|
+
readonly entryRequestSignal: Signal<ShapeEditingEntryRequest | null>;
|
|
15
|
+
private nextEntryRequestId;
|
|
16
|
+
constructor(editor: Editor);
|
|
17
|
+
canEditShape(shapeOrId: ShapeRecord | ShapeId | null | undefined): boolean;
|
|
18
|
+
start(input: StartEditingShapeInput, source?: ChangeSource): ShapeEditingSession | null;
|
|
19
|
+
complete(source?: ChangeSource): boolean;
|
|
20
|
+
cancel(source?: ChangeSource): boolean;
|
|
21
|
+
setComposition(isComposing: boolean, source?: ChangeSource): void;
|
|
22
|
+
consumeEntryRequest(requestId: number): void;
|
|
23
|
+
removeShapeIds(ids: ShapeId[], source?: ChangeSource): void;
|
|
24
|
+
end(options: {
|
|
25
|
+
runEditEnd: boolean;
|
|
26
|
+
source: ChangeSource;
|
|
27
|
+
}): void;
|
|
28
|
+
private publishEntryRequest;
|
|
29
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Box } from "../../geometry/box";
|
|
2
|
+
import { Mat } from "../../geometry/mat";
|
|
3
|
+
import { Vec } from "../../geometry/vec";
|
|
4
|
+
import type { ShapeId, ShapeRecord } from "../../schema/records";
|
|
5
|
+
import type { Editor } from "../editor";
|
|
6
|
+
import { type ShapeGeometry } from "../queries/shapeTransforms";
|
|
7
|
+
import type { SelectionFrame } from "../selection";
|
|
8
|
+
/**
|
|
9
|
+
* Shape and selection geometry facade helpers. Query-backed methods read the
|
|
10
|
+
* current editor state; compute methods operate on the provided shape snapshot.
|
|
11
|
+
*/
|
|
12
|
+
export declare class ShapeGeometryManager {
|
|
13
|
+
private readonly editor;
|
|
14
|
+
constructor(editor: Editor);
|
|
15
|
+
computeShapeBounds(shape: ShapeRecord): Box;
|
|
16
|
+
computeShapeLocalBounds(shape: ShapeRecord): Box;
|
|
17
|
+
computeShapeRenderBounds(shape: ShapeRecord): Box;
|
|
18
|
+
computeShapeExportBounds(shape: ShapeRecord): Box;
|
|
19
|
+
computeShapeLocalToPageTransform(shape: ShapeRecord): Mat;
|
|
20
|
+
computeShapeRenderToPageTransform(shape: ShapeRecord): Mat;
|
|
21
|
+
computeShapeExportToPageTransform(shape: ShapeRecord): Mat;
|
|
22
|
+
computeShapePageBounds(shape: ShapeRecord): Box;
|
|
23
|
+
computeShapeExportPageBounds(shape: ShapeRecord): Box;
|
|
24
|
+
computeShapeGeometry(shape: ShapeRecord): ShapeGeometry;
|
|
25
|
+
computeShapePositionedToPageTransform(shape: ShapeRecord): Mat;
|
|
26
|
+
computeShapePageCenter(shape: ShapeRecord): Vec;
|
|
27
|
+
computeShapePageCorners(shape: ShapeRecord): Vec[];
|
|
28
|
+
computeShapePageOutlineVertices(shape: ShapeRecord): Vec[];
|
|
29
|
+
getShapeBounds(shapeId: ShapeId): Box | null;
|
|
30
|
+
getShapePageBounds(shapeId: ShapeId): Box | null;
|
|
31
|
+
getShapeGeometry(shapeId: ShapeId): ShapeGeometry | null;
|
|
32
|
+
getShapePositionedToPageTransform(shapeId: ShapeId): Mat | null;
|
|
33
|
+
getShapePageCenter(shapeId: ShapeId): Vec | null;
|
|
34
|
+
getShapePageCorners(shapeId: ShapeId): Vec[] | null;
|
|
35
|
+
getShapePageOutlineVertices(shapeId: ShapeId): Vec[];
|
|
36
|
+
getSelectionPageBounds(): Box | null;
|
|
37
|
+
getSelectionFrame(): SelectionFrame | null;
|
|
38
|
+
isPointInSelectionBounds(point: Vec): boolean;
|
|
39
|
+
getSelectionFrameLocalBoundsPoint(point: Vec): Vec | null;
|
|
40
|
+
getSelectionPageOutlineVertices(): Vec[];
|
|
41
|
+
getSelectionAnchorPagePoint(): Vec | null;
|
|
42
|
+
}
|