@yuzhouu/canvas-kit 0.1.12 → 0.1.14
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 +52 -238
- package/_vendor/canvas-core/bindings/bindingManager.d.ts +33 -0
- package/_vendor/canvas-core/bindings/bindingUtil.d.ts +7 -6
- package/_vendor/canvas-core/bindings/terminalBinding.d.ts +1 -1
- package/_vendor/canvas-core/editor/clipboard.d.ts +1 -1
- package/_vendor/canvas-core/editor/clipboardAssets.d.ts +6 -0
- package/_vendor/canvas-core/editor/commands/assetCommands.d.ts +7 -0
- package/_vendor/canvas-core/editor/commands/bindingCommands.d.ts +12 -0
- package/_vendor/canvas-core/editor/{commands.d.ts → commands/commandTypes.d.ts} +4 -8
- package/_vendor/canvas-core/editor/commands/commands.d.ts +5 -0
- package/_vendor/canvas-core/editor/commands/documentCommands.d.ts +9 -0
- package/_vendor/canvas-core/editor/commands/sessionCommands.d.ts +13 -0
- package/_vendor/canvas-core/editor/commands/shapeCommands.d.ts +9 -0
- package/_vendor/canvas-core/editor/commands/shapeFlags.d.ts +10 -0
- package/_vendor/canvas-core/editor/commands/shapeRemoval.d.ts +10 -0
- package/_vendor/canvas-core/editor/commands/shapeRepair.d.ts +11 -0
- package/_vendor/canvas-core/editor/createEditor.d.ts +6 -0
- package/_vendor/canvas-core/editor/editor.d.ts +310 -538
- package/_vendor/canvas-core/editor/events/canvasNavigationInteraction.d.ts +2 -0
- package/_vendor/canvas-core/editor/events/eventRouter.d.ts +16 -0
- package/_vendor/canvas-core/editor/{events.d.ts → events/events.d.ts} +18 -8
- package/_vendor/canvas-core/editor/{managers → events}/inputsManager.d.ts +6 -4
- package/_vendor/canvas-core/editor/{interactions.d.ts → events/interactions.d.ts} +12 -12
- package/_vendor/canvas-core/editor/events/keyboardShortcuts.d.ts +23 -0
- package/_vendor/canvas-core/editor/events/pointerClickRecognizer.d.ts +11 -0
- package/_vendor/canvas-core/editor/history/historyManager.d.ts +40 -0
- package/_vendor/canvas-core/editor/{operationManager.d.ts → history/operationManager.d.ts} +21 -18
- package/_vendor/canvas-core/editor/queries/bindingQueryCache.d.ts +28 -0
- package/_vendor/canvas-core/editor/queries/bindingQueryState.d.ts +11 -0
- package/_vendor/canvas-core/editor/queries/draftBindingIndex.d.ts +19 -0
- package/_vendor/canvas-core/editor/queries/shapeGeometryQueryCache.d.ts +34 -0
- package/_vendor/canvas-core/editor/queries/shapeTransforms.d.ts +15 -19
- package/_vendor/canvas-core/editor/queries/shapeTreeIndex.d.ts +27 -0
- package/_vendor/canvas-core/editor/queries/shapeTreeIndexState.d.ts +11 -0
- package/_vendor/canvas-core/editor/{managers → queries}/spatialIndexManager.d.ts +5 -3
- package/_vendor/canvas-core/editor/records/documentSnapshots.d.ts +14 -0
- package/_vendor/canvas-core/editor/records/editorRecordFactory.d.ts +19 -0
- package/_vendor/canvas-core/editor/records/recordQueries.d.ts +3 -0
- package/_vendor/canvas-core/editor/{resizeGeometry.d.ts → selection/resizeGeometry.d.ts} +22 -2
- package/_vendor/canvas-core/editor/{selection.d.ts → selection/selection.d.ts} +4 -30
- package/_vendor/canvas-core/editor/{managers → selection}/selectionGeometry.d.ts +2 -2
- package/_vendor/canvas-core/editor/selection/selectionHandleHitTest.d.ts +8 -0
- package/_vendor/canvas-core/editor/selection/selectionLayout.d.ts +20 -0
- package/_vendor/canvas-core/editor/selection/selectionOverlay.d.ts +25 -0
- package/_vendor/canvas-core/editor/selection/selectionOverlayEquality.d.ts +8 -0
- package/_vendor/canvas-core/editor/selection/selectionOverlayManager.d.ts +34 -0
- package/_vendor/canvas-core/editor/{selectionResizeCapabilities.d.ts → selection/selectionResizeCapabilities.d.ts} +4 -2
- package/_vendor/canvas-core/editor/selection/selectionSet.d.ts +9 -0
- package/_vendor/canvas-core/editor/selection/selectionTargets.d.ts +10 -0
- package/_vendor/canvas-core/editor/selection/selectionTransforms.d.ts +6 -0
- package/_vendor/canvas-core/editor/shapes/shapeContainment.d.ts +14 -0
- package/_vendor/canvas-core/editor/{managers → shapes}/shapeEditingManager.d.ts +2 -2
- package/_vendor/canvas-core/editor/shapes/shapeExportTraversal.d.ts +3 -0
- package/_vendor/canvas-core/editor/shapes/shapeGeometry.d.ts +21 -0
- package/_vendor/canvas-core/editor/shapes/shapeGrouping.d.ts +22 -0
- package/_vendor/canvas-core/editor/{managers → shapes}/shapeOrder.d.ts +20 -2
- package/_vendor/canvas-core/editor/shapes/shapeReparenting.d.ts +21 -0
- package/_vendor/canvas-core/editor/shapes/shapeSignalManager.d.ts +35 -0
- package/_vendor/canvas-core/editor/{shapeTransformSpace.d.ts → shapes/shapeTransformSpace.d.ts} +3 -3
- package/_vendor/canvas-core/editor/shapes/shapeTreeQueries.d.ts +12 -0
- package/_vendor/canvas-core/editor/snapping/gapSnap.d.ts +6 -0
- package/_vendor/canvas-core/editor/snapping/pointSnap.d.ts +5 -0
- package/_vendor/canvas-core/editor/snapping/resizeSnap.d.ts +11 -0
- package/_vendor/canvas-core/editor/snapping/snapDecision.d.ts +2 -0
- package/_vendor/canvas-core/editor/{managers → snapping}/snapGeometry.d.ts +0 -1
- package/_vendor/canvas-core/editor/{managers → snapping}/snapIndicators.d.ts +2 -2
- package/_vendor/canvas-core/editor/{managers → snapping}/snapManager.d.ts +23 -5
- package/_vendor/canvas-core/editor/{managers/snapCalculations.d.ts → snapping/snapResults.d.ts} +2 -17
- package/_vendor/canvas-core/editor/{managers → snapping}/snapTypes.d.ts +1 -1
- package/_vendor/canvas-core/editor/state/editorReadModels.d.ts +34 -0
- package/_vendor/canvas-core/editor/state/editorSignals.d.ts +82 -0
- package/_vendor/canvas-core/editor/state/editorStateUtils.d.ts +9 -0
- package/_vendor/canvas-core/editor/{managers → state}/interactionTransientManager.d.ts +4 -4
- package/_vendor/canvas-core/editor/{managers → viewport}/cameraManager.d.ts +21 -4
- package/_vendor/canvas-core/editor/{cameraPanSession.d.ts → viewport/cameraPanSession.d.ts} +3 -3
- package/_vendor/canvas-core/editor/{edgeScroll.d.ts → viewport/edgeScroll.d.ts} +1 -1
- package/_vendor/canvas-core/editor/{renderWindow.d.ts → viewport/renderWindow.d.ts} +8 -8
- package/_vendor/canvas-core/editor/{managers → viewport}/renderWindowManager.d.ts +14 -6
- package/_vendor/canvas-core/geometry/box.d.ts +1 -0
- package/_vendor/canvas-core/geometry/mat.d.ts +2 -3
- package/_vendor/canvas-core/index.d.ts +33 -26
- package/_vendor/canvas-core/plugins/editorRuntimePlugin.d.ts +2 -5
- package/_vendor/canvas-core/plugins/editorRuntimeRegistry.d.ts +0 -4
- package/_vendor/canvas-core/plugins/index.d.ts +1 -1
- package/_vendor/canvas-core/reactivity.d.ts +2 -0
- package/_vendor/canvas-core/schema/records.d.ts +1 -2
- package/_vendor/canvas-core/schema/snapshots.d.ts +2 -2
- package/_vendor/canvas-core/shapes/childTransformPolicy.d.ts +16 -0
- package/_vendor/canvas-core/shapes/shapeUtil.d.ts +9 -8
- package/_vendor/canvas-core/shapes/shapeUtilGeometry.d.ts +6 -0
- package/_vendor/canvas-core/tools/hand/handTool.d.ts +1 -1
- package/_vendor/canvas-core/tools/select/selectTool.d.ts +1 -1
- package/_vendor/canvas-core/tools/select/selectToolHelpers.d.ts +11 -12
- package/_vendor/canvas-core/tools/select/states/brushingState.d.ts +2 -2
- package/_vendor/canvas-core/tools/select/states/draggingPluginInteractionState.d.ts +2 -3
- package/_vendor/canvas-core/tools/select/states/idleState.d.ts +2 -2
- package/_vendor/canvas-core/tools/select/states/pointingCanvasState.d.ts +2 -2
- package/_vendor/canvas-core/tools/select/states/pointingResizeHandleState.d.ts +1 -1
- package/_vendor/canvas-core/tools/select/states/pointingRotateHandleState.d.ts +1 -1
- package/_vendor/canvas-core/tools/select/states/pointingSelectionHandleInteractionState.d.ts +3 -3
- package/_vendor/canvas-core/tools/select/states/pointingShapeState.d.ts +3 -3
- package/_vendor/canvas-core/tools/select/states/resizingState.d.ts +3 -3
- package/_vendor/canvas-core/tools/select/states/rotatingState.d.ts +3 -3
- package/_vendor/canvas-core/tools/select/states/selectStateNode.d.ts +8 -12
- package/_vendor/canvas-core/tools/select/states/translatingState.d.ts +2 -3
- package/_vendor/canvas-core/tools/stateNode.d.ts +30 -0
- package/_vendor/canvas-core/tools/toolManager.d.ts +24 -0
- package/_vendor/canvas-core/utils/equality.d.ts +9 -0
- package/_vendor/canvas-extension-contracts/contributions.d.ts +92 -0
- package/_vendor/canvas-extension-contracts/index.d.ts +6 -0
- package/_vendor/canvas-extension-contracts/operations.d.ts +131 -0
- package/_vendor/canvas-extension-contracts/persistence.d.ts +16 -0
- package/_vendor/canvas-extension-contracts/plugin.d.ts +37 -0
- package/_vendor/canvas-extension-contracts/shape.d.ts +5 -0
- package/_vendor/canvas-extension-contracts/tokens.d.ts +12 -0
- package/_vendor/canvas-react/components/CanvasView.d.ts +3 -10
- package/_vendor/canvas-react/components/DefaultGrid.d.ts +1 -0
- package/_vendor/canvas-react/components/canvasKeyboardEvents.d.ts +2 -2
- package/_vendor/canvas-react/components/index.d.ts +1 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeClipStack.d.ts +11 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeDecorations.d.ts +2 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeForegroundItem.d.ts +5 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeItem.d.ts +5 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeRenderList.d.ts +1 -0
- package/_vendor/canvas-react/components/shape-layer/ShapeRenderer.d.ts +12 -0
- package/_vendor/canvas-react/components/shape-layer/shapeFrame.d.ts +11 -0
- package/_vendor/canvas-react/components/useCanvasDomEvents.d.ts +2 -2
- package/_vendor/canvas-react/dom.d.ts +1 -1
- package/_vendor/canvas-react/host/canvasRenderBindings.d.ts +21 -0
- package/_vendor/canvas-react/host/canvasRenderBindingsContext.d.ts +5 -0
- package/_vendor/canvas-react/host/canvasRenderPlugin.d.ts +3 -12
- package/_vendor/canvas-react/host/index.d.ts +4 -7
- package/_vendor/canvas-react/index.d.ts +1 -1
- package/_vendor/signals/atom.d.ts +7 -5
- package/_vendor/signals/computed.d.ts +10 -8
- package/_vendor/signals/core.d.ts +32 -15
- package/_vendor/signals/effect.d.ts +2 -22
- package/_vendor/signals/index.d.ts +6 -7
- package/_vendor/signals/types.d.ts +14 -7
- package/_vendor/store/diff.d.ts +1 -1
- package/_vendor/store/history.d.ts +6 -21
- package/_vendor/store/index.d.ts +4 -4
- package/_vendor/store/store.d.ts +19 -17
- package/browser/indexedDb.d.ts +0 -4
- package/browser/persistence.d.ts +3 -3
- package/browser/persistenceFlushEvents.d.ts +2 -0
- package/chrome/floating/CanvasKitFloatingContent.d.ts +10 -0
- package/chrome/floating/CanvasKitFloatingPortal.d.ts +1 -0
- package/chrome/floating/useCanvasKitFloatingPosition.d.ts +5 -3
- package/chrome/toolbar/FloatingSelectionToolbarPageSpace.d.ts +7 -3
- package/index.css +1 -1
- package/index.d.ts +16 -45
- package/index.mjs +46 -88
- package/package.json +3 -15
- package/react/CanvasKitContext.d.ts +8 -0
- package/react/CanvasKitRoot.d.ts +2 -10
- package/react/canvasActions.d.ts +3 -0
- package/react/canvasKitRootContracts.d.ts +19 -0
- package/react/host/CanvasKitCanvasHost.d.ts +7 -0
- package/react/host/import/CanvasImportHost.d.ts +13 -0
- package/react/host/keyboard/useCanvasKeyboardShortcuts.d.ts +8 -0
- package/react/reportCanvasHostError.d.ts +1 -0
- package/react/useCanvasKitRootRuntime.d.ts +12 -0
- package/runtime/activateCanvasPlugins.d.ts +16 -0
- package/runtime/canvasExportController.d.ts +11 -0
- package/runtime/canvasKit.d.ts +3 -0
- package/runtime/canvasKitContracts.d.ts +192 -0
- package/runtime/canvasKitRootRuntime.d.ts +17 -0
- package/runtime/canvasPluginGraph.d.ts +5 -11
- package/runtime/canvasRuntimeInitialization.d.ts +12 -0
- package/runtime/canvasRuntimeOwner.d.ts +16 -0
- package/runtime/createCanvasKitEditor.d.ts +8 -0
- package/runtime/facade/canvasProductData.d.ts +14 -0
- package/runtime/facade/canvasReadable.d.ts +13 -0
- package/runtime/facade/createCanvasKitFacade.d.ts +17 -0
- package/runtime/facade/layerTree.d.ts +12 -0
- package/runtime/persistenceCoordinator.d.ts +22 -5
- package/runtime/registries/productApiRegistry.d.ts +12 -3
- package/_vendor/canvas-core/editor/bindingReactionScope.d.ts +0 -7
- package/_vendor/canvas-core/editor/canvasPanInteraction.d.ts +0 -2
- package/_vendor/canvas-core/editor/createEditorWithPlugins.d.ts +0 -6
- package/_vendor/canvas-core/editor/editorComputedHelpers.d.ts +0 -24
- package/_vendor/canvas-core/editor/editorSelectionTransforms.d.ts +0 -6
- package/_vendor/canvas-core/editor/historyManager.d.ts +0 -36
- package/_vendor/canvas-core/editor/index.d.ts +0 -11
- package/_vendor/canvas-core/editor/managers/bindingManager.d.ts +0 -23
- package/_vendor/canvas-core/editor/managers/clipboardManager.d.ts +0 -14
- package/_vendor/canvas-core/editor/managers/documentSnapshotManager.d.ts +0 -28
- package/_vendor/canvas-core/editor/managers/queryManager.d.ts +0 -102
- package/_vendor/canvas-core/editor/managers/queryState.d.ts +0 -18
- package/_vendor/canvas-core/editor/managers/selectionLayoutManager.d.ts +0 -34
- package/_vendor/canvas-core/editor/managers/selectionManager.d.ts +0 -21
- package/_vendor/canvas-core/editor/managers/selectionOverlayManager.d.ts +0 -25
- package/_vendor/canvas-core/editor/managers/shapeGeometryManager.d.ts +0 -43
- package/_vendor/canvas-core/editor/managers/shapeHierarchyManager.d.ts +0 -63
- package/_vendor/canvas-core/editor/managers/shapeReparenting.d.ts +0 -7
- package/_vendor/canvas-core/editor/managers/shortcutManager.d.ts +0 -56
- package/_vendor/canvas-core/editor/managers/sideEffectManager.d.ts +0 -23
- package/_vendor/canvas-core/editor/managers/toolManager.d.ts +0 -24
- package/_vendor/canvas-core/editor/selectionHandleInteractions.d.ts +0 -11
- package/_vendor/canvas-core/editor/selectionOverlay.d.ts +0 -35
- package/_vendor/canvas-core/editor/stateNode.d.ts +0 -31
- package/_vendor/canvas-core/shapes/capabilities.d.ts +0 -25
- package/_vendor/canvas-core/tools/index.d.ts +0 -2
- package/_vendor/canvas-plugin-sdk/capability.d.ts +0 -10
- package/_vendor/canvas-plugin-sdk/index.d.ts +0 -3
- package/_vendor/canvas-plugin-sdk/plugin.d.ts +0 -29
- package/_vendor/canvas-plugin-sdk/setupExtension.d.ts +0 -5
- package/_vendor/canvas-product-contracts/actionRegistry.d.ts +0 -4
- package/_vendor/canvas-product-contracts/actions.d.ts +0 -44
- package/_vendor/canvas-product-contracts/capability.d.ts +0 -8
- package/_vendor/canvas-product-contracts/chrome.d.ts +0 -53
- package/_vendor/canvas-product-contracts/chromeRegistry.d.ts +0 -9
- package/_vendor/canvas-product-contracts/contextMenu.d.ts +0 -63
- package/_vendor/canvas-product-contracts/contextMenuRegistry.d.ts +0 -4
- package/_vendor/canvas-product-contracts/exportRegistry.d.ts +0 -6
- package/_vendor/canvas-product-contracts/exports.d.ts +0 -27
- package/_vendor/canvas-product-contracts/importRegistry.d.ts +0 -7
- package/_vendor/canvas-product-contracts/imports.d.ts +0 -39
- package/_vendor/canvas-product-contracts/index.d.ts +0 -15
- package/_vendor/canvas-product-contracts/productApi.d.ts +0 -29
- package/_vendor/canvas-product-contracts/services.d.ts +0 -21
- package/_vendor/canvas-product-contracts/toolbar.d.ts +0 -146
- package/_vendor/canvas-product-contracts/toolbarRegistry.d.ts +0 -9
- package/_vendor/canvas-react/host/canvasOverlayRegistryContext.d.ts +0 -3
- package/_vendor/canvas-react/host/canvasRenderRuntime.d.ts +0 -13
- package/_vendor/canvas-react/host/canvasRendererRegistryContext.d.ts +0 -3
- package/_vendor/canvas-react/host/domEventGuards.d.ts +0 -11
- package/_vendor/canvas-react/host/overlayRegistry.d.ts +0 -18
- package/_vendor/canvas-react/host/rendererRegistry.d.ts +0 -15
- package/_vendor/plugin-arrow/api.d.ts +0 -33
- package/_vendor/plugin-arrow/arrowBindingAnchors.d.ts +0 -5
- package/_vendor/plugin-arrow/arrowBindingGeometry.d.ts +0 -28
- package/_vendor/plugin-arrow/arrowBindingTargets.d.ts +0 -3
- package/_vendor/plugin-arrow/arrowBindingUtil.d.ts +0 -27
- package/_vendor/plugin-arrow/arrowGeometry.d.ts +0 -77
- package/_vendor/plugin-arrow/arrowHeadGeometry.d.ts +0 -8
- package/_vendor/plugin-arrow/arrowShapeUtil.d.ts +0 -25
- package/_vendor/plugin-arrow/arrowTerminalBindingResolver.d.ts +0 -20
- package/_vendor/plugin-arrow/arrowTerminalCommands.d.ts +0 -13
- package/_vendor/plugin-arrow/arrowTool.d.ts +0 -4
- package/_vendor/plugin-arrow/canvasRender.d.ts +0 -2
- package/_vendor/plugin-arrow/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-arrow/feature.d.ts +0 -2
- package/_vendor/plugin-arrow/index.d.ts +0 -15
- package/_vendor/plugin-arrow/productRuntime.d.ts +0 -2
- package/_vendor/plugin-arrow/selectionHandleInteractions.d.ts +0 -3
- package/_vendor/plugin-arrow/types.d.ts +0 -31
- package/_vendor/plugin-draw/DrawShapeRenderer.d.ts +0 -13
- package/_vendor/plugin-draw/canvasRender.d.ts +0 -2
- package/_vendor/plugin-draw/drawGeometry.d.ts +0 -42
- package/_vendor/plugin-draw/drawHitTest.d.ts +0 -11
- package/_vendor/plugin-draw/drawInterpolation.d.ts +0 -5
- package/_vendor/plugin-draw/drawPath.d.ts +0 -43
- package/_vendor/plugin-draw/drawSegments.d.ts +0 -11
- package/_vendor/plugin-draw/drawSelectionTransform.d.ts +0 -18
- package/_vendor/plugin-draw/drawShapeGeometry.d.ts +0 -33
- package/_vendor/plugin-draw/drawShapeUtil.d.ts +0 -22
- package/_vendor/plugin-draw/drawStrokeGeometry.d.ts +0 -17
- package/_vendor/plugin-draw/drawTool.d.ts +0 -6
- package/_vendor/plugin-draw/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-draw/feature.d.ts +0 -2
- package/_vendor/plugin-draw/index.d.ts +0 -14
- package/_vendor/plugin-draw/productRuntime.d.ts +0 -2
- package/_vendor/plugin-draw/types.d.ts +0 -23
- package/_vendor/plugin-eraser/canvasRender.d.ts +0 -2
- package/_vendor/plugin-eraser/editorRuntime.d.ts +0 -2
- package/_vendor/plugin-eraser/eraserRuntime.d.ts +0 -12
- package/_vendor/plugin-eraser/eraserTool.d.ts +0 -5
- package/_vendor/plugin-eraser/feature.d.ts +0 -2
- package/_vendor/plugin-eraser/index.d.ts +0 -6
- package/_vendor/plugin-eraser/productRuntime.d.ts +0 -2
- package/_vendor/plugin-frame/api.d.ts +0 -19
- package/_vendor/plugin-frame/canvasRender.d.ts +0 -9
- package/_vendor/plugin-frame/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-frame/feature.d.ts +0 -2
- package/_vendor/plugin-frame/frameShapeUtil.d.ts +0 -35
- package/_vendor/plugin-frame/frameTool.d.ts +0 -6
- package/_vendor/plugin-frame/index.d.ts +0 -9
- package/_vendor/plugin-frame/productRuntime.d.ts +0 -2
- package/_vendor/plugin-geo/api.d.ts +0 -27
- package/_vendor/plugin-geo/canvasRender.d.ts +0 -13
- package/_vendor/plugin-geo/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-geo/feature.d.ts +0 -2
- package/_vendor/plugin-geo/geoGeometry.d.ts +0 -24
- package/_vendor/plugin-geo/geoShapeUtil.d.ts +0 -14
- package/_vendor/plugin-geo/geoStrokeStyle.d.ts +0 -2
- package/_vendor/plugin-geo/geoTools.d.ts +0 -27
- package/_vendor/plugin-geo/index.d.ts +0 -10
- package/_vendor/plugin-geo/productRuntime.d.ts +0 -2
- package/_vendor/plugin-geo/types.d.ts +0 -22
- package/_vendor/plugin-group/canvasRender.d.ts +0 -9
- package/_vendor/plugin-group/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-group/feature.d.ts +0 -2
- package/_vendor/plugin-group/groupContributions.d.ts +0 -7
- package/_vendor/plugin-group/groupShapeUtil.d.ts +0 -35
- package/_vendor/plugin-group/index.d.ts +0 -7
- package/_vendor/plugin-group/productRuntime.d.ts +0 -2
- package/_vendor/plugin-image/actionIds.d.ts +0 -9
- package/_vendor/plugin-image/canvasRender.d.ts +0 -2
- package/_vendor/plugin-image/cornerRadius.d.ts +0 -6
- package/_vendor/plugin-image/crop.d.ts +0 -112
- package/_vendor/plugin-image/cropInteractions.d.ts +0 -3
- package/_vendor/plugin-image/cropRuntime.d.ts +0 -2
- package/_vendor/plugin-image/cropSession.d.ts +0 -6
- package/_vendor/plugin-image/editorRuntime.d.ts +0 -3
- package/_vendor/plugin-image/feature.d.ts +0 -2
- package/_vendor/plugin-image/imageHostActionContract.d.ts +0 -2
- package/_vendor/plugin-image/imageShapeUtil.d.ts +0 -13
- package/_vendor/plugin-image/imageSvgExporter.d.ts +0 -6
- package/_vendor/plugin-image/index.d.ts +0 -13
- package/_vendor/plugin-image/productRuntime.d.ts +0 -4
- package/_vendor/plugin-image/runtimeShared.d.ts +0 -5
- package/_vendor/plugin-image/smudge.d.ts +0 -67
- package/_vendor/plugin-image/smudgeInteractions.d.ts +0 -2
- package/_vendor/plugin-image/smudgeRuntime.d.ts +0 -2
- package/_vendor/plugin-image/styleRuntime.d.ts +0 -22
- package/_vendor/plugin-image/toolbarRuntime.d.ts +0 -3
- package/_vendor/plugin-image/types.d.ts +0 -53
- package/_vendor/plugin-laser/canvasRender.d.ts +0 -2
- package/_vendor/plugin-laser/editorRuntime.d.ts +0 -2
- package/_vendor/plugin-laser/feature.d.ts +0 -2
- package/_vendor/plugin-laser/index.d.ts +0 -6
- package/_vendor/plugin-laser/laserRuntime.d.ts +0 -18
- package/_vendor/plugin-laser/laserTool.d.ts +0 -4
- package/_vendor/plugin-laser/productRuntime.d.ts +0 -2
- package/_vendor/plugin-path/PathDraftOverlay.d.ts +0 -1
- package/_vendor/plugin-path/PathEditInsertPreviewOverlay.d.ts +0 -1
- package/_vendor/plugin-path/PathShapeRenderer.d.ts +0 -15
- package/_vendor/plugin-path/canvasRender.d.ts +0 -2
- package/_vendor/plugin-path/editorRuntime.d.ts +0 -7
- package/_vendor/plugin-path/feature.d.ts +0 -2
- package/_vendor/plugin-path/index.d.ts +0 -8
- package/_vendor/plugin-path/pathBoolean.d.ts +0 -13
- package/_vendor/plugin-path/pathDraft.d.ts +0 -10
- package/_vendor/plugin-path/pathEditPreview.d.ts +0 -11
- package/_vendor/plugin-path/pathEditSelection.d.ts +0 -24
- package/_vendor/plugin-path/pathEditSnap.d.ts +0 -6
- package/_vendor/plugin-path/pathGeometry.d.ts +0 -74
- package/_vendor/plugin-path/pathHandles.d.ts +0 -18
- package/_vendor/plugin-path/pathHistory.d.ts +0 -13
- package/_vendor/plugin-path/pathInteractions.d.ts +0 -7
- package/_vendor/plugin-path/pathShapeUtil.d.ts +0 -30
- package/_vendor/plugin-path/pathSvg.d.ts +0 -3
- package/_vendor/plugin-path/pathTool.d.ts +0 -42
- package/_vendor/plugin-path/productRuntime.d.ts +0 -15
- package/_vendor/plugin-path/types.d.ts +0 -36
- package/_vendor/plugin-runtime-clipboard/capability.d.ts +0 -1
- package/_vendor/plugin-runtime-clipboard/clipboardActions.d.ts +0 -6
- package/_vendor/plugin-runtime-clipboard/clipboardService.d.ts +0 -10
- package/_vendor/plugin-runtime-clipboard/index.d.ts +0 -4
- package/_vendor/plugin-runtime-clipboard/plugin.d.ts +0 -1
- package/_vendor/plugin-runtime-export/blobDataUrl.d.ts +0 -1
- package/_vendor/plugin-runtime-export/canvasExportApi.d.ts +0 -43
- package/_vendor/plugin-runtime-export/index.d.ts +0 -8
- package/_vendor/plugin-runtime-export/plugin.d.ts +0 -5
- package/_vendor/plugin-runtime-export/pngExport.d.ts +0 -15
- package/_vendor/plugin-runtime-export/svgExport.d.ts +0 -40
- package/_vendor/plugin-text/api.d.ts +0 -20
- package/_vendor/plugin-text/canvasRender.d.ts +0 -8
- package/_vendor/plugin-text/capabilities.d.ts +0 -2
- package/_vendor/plugin-text/editorRuntime.d.ts +0 -5
- package/_vendor/plugin-text/feature.d.ts +0 -4
- package/_vendor/plugin-text/geoLabelBindingUtil.d.ts +0 -48
- package/_vendor/plugin-text/host/RichTextEditingBox.d.ts +0 -10
- package/_vendor/plugin-text/host/TiptapTextEditor.d.ts +0 -29
- package/_vendor/plugin-text/host/initialTextBackground.d.ts +0 -2
- package/_vendor/plugin-text/host/richTextRendering.d.ts +0 -10
- package/_vendor/plugin-text/host/textDomSelection.d.ts +0 -7
- package/_vendor/plugin-text/host/textEditingBoxStyle.d.ts +0 -4
- package/_vendor/plugin-text/host/textEntryFocus.d.ts +0 -23
- package/_vendor/plugin-text/host/textFontLoader.d.ts +0 -3
- package/_vendor/plugin-text/host/textFormattingApi.d.ts +0 -16
- package/_vendor/plugin-text/host/textMeasurement.d.ts +0 -21
- package/_vendor/plugin-text/host/textMeasurementSync.d.ts +0 -11
- package/_vendor/plugin-text/host/textRangeSelection.d.ts +0 -14
- package/_vendor/plugin-text/host/textShapeRendererRuntime.d.ts +0 -11
- package/_vendor/plugin-text/host/textShapeSync.d.ts +0 -19
- package/_vendor/plugin-text/host/tiptapTextEditorController.d.ts +0 -38
- package/_vendor/plugin-text/index.d.ts +0 -15
- package/_vendor/plugin-text/pathLabelBindingUtil.d.ts +0 -55
- package/_vendor/plugin-text/productRuntime.d.ts +0 -6
- package/_vendor/plugin-text/richTextLinks.d.ts +0 -3
- package/_vendor/plugin-text/richTextUtils.d.ts +0 -26
- package/_vendor/plugin-text/shapeWideTextFormatting.d.ts +0 -12
- package/_vendor/plugin-text/textFonts.d.ts +0 -49
- package/_vendor/plugin-text/textFormatting.d.ts +0 -47
- package/_vendor/plugin-text/textFormattingSession.d.ts +0 -6
- package/_vendor/plugin-text/textInteractions.d.ts +0 -2
- package/_vendor/plugin-text/textLabelHelpers.d.ts +0 -70
- package/_vendor/plugin-text/textLinkPopoverPresentation.d.ts +0 -18
- package/_vendor/plugin-text/textShapeHelpers.d.ts +0 -22
- package/_vendor/plugin-text/textShapeSvgExporter.d.ts +0 -9
- package/_vendor/plugin-text/textShapeUtil.d.ts +0 -24
- package/_vendor/plugin-text/textStyle.d.ts +0 -18
- package/_vendor/plugin-text/textTool.d.ts +0 -4
- package/_vendor/plugin-text/textTypes.d.ts +0 -29
- package/chrome/toolbar/mergeToolbarGroups.d.ts +0 -8
- package/chrome/toolbar/toolbarLabels.d.ts +0 -8
- package/chrome/toolbar/useToolbarSurfaces.d.ts +0 -21
- package/chrome/types.d.ts +0 -72
- package/chrome/useCanvasKitChromeContext.d.ts +0 -18
- package/chrome/useCanvasKitLayerTree.d.ts +0 -5
- package/chrome/useChromeSurfaces.d.ts +0 -12
- package/chrome/useContextMenuSurface.d.ts +0 -12
- package/chrome/useHistoryControls.d.ts +0 -12
- package/chrome/usePageControls.d.ts +0 -16
- package/chrome/useZoomControls.d.ts +0 -9
- package/controller/canvasKitController.d.ts +0 -28
- package/core/index.d.ts +0 -7
- package/core/product-controller/canvasProductController.d.ts +0 -202
- package/core/product-controller/index.d.ts +0 -2
- package/core/product-controller/productLayerTree.d.ts +0 -10
- package/core/runtime/productAssets.d.ts +0 -20
- package/core/runtime/productEditor.d.ts +0 -3
- package/core/runtime/productServices.d.ts +0 -20
- package/core/runtime/runtimeContracts.d.ts +0 -17
- package/features/context-menu/contextMenuRuntime.d.ts +0 -13
- package/features/image/asset/imageAssetService.d.ts +0 -10
- package/features/image/asset/imageBlobStore.d.ts +0 -31
- package/features/image/asset/imageFileHelpers.d.ts +0 -43
- package/features/image/asset/svgImageAssetInliner.d.ts +0 -3
- package/features/image/controller/imageProductController.d.ts +0 -27
- package/features/image/imageHostPlugin.d.ts +0 -1
- package/features/image/import/ImageImportController.d.ts +0 -11
- package/features/image/index.d.ts +0 -15
- package/features/image/smudge/imageSmudgeHostActions.d.ts +0 -10
- package/features/image/smudge/imageSmudgeTypes.d.ts +0 -25
- package/features/image/toolbar/imageHostActions.d.ts +0 -79
- package/features/image/toolbar/imageToolbarHostBridge.d.ts +0 -14
- package/features/text/link/TextLinkHoverPopover.d.ts +0 -6
- package/features/text/textHostPlugin.d.ts +0 -5
- package/features/text/textSvgAssetInliner.d.ts +0 -3
- package/features/text/textSvgAssetPlugin.d.ts +0 -2
- package/plugins/runtime/import-host/CanvasImportHost.d.ts +0 -4
- package/plugins/runtime/import-host/capability.d.ts +0 -1
- package/plugins/runtime/import-host/index.d.ts +0 -2
- package/plugins/runtime/import-host/plugin.d.ts +0 -1
- package/plugins/runtime/keyboard-shortcuts/index.d.ts +0 -1
- package/plugins/runtime/keyboard-shortcuts/plugin.d.ts +0 -1
- package/plugins/runtime/keyboard-shortcuts/useCanvasKeyboardShortcuts.d.ts +0 -8
- package/plugins/runtime/tool-actions/capability.d.ts +0 -1
- package/plugins/runtime/tool-actions/index.d.ts +0 -2
- package/plugins/runtime/tool-actions/plugin.d.ts +0 -1
- package/plugins/runtime/tool-actions/toolActions.d.ts +0 -2
- package/plugins/standard/clipboard/chrome.d.ts +0 -2
- package/plugins/standard/clipboard/contextMenu.d.ts +0 -2
- package/plugins/standard/clipboard/plugin.d.ts +0 -1
- package/plugins/standard/clipboard/shortcuts.d.ts +0 -5
- package/plugins/standard/createStandardCanvasKitPlugins.d.ts +0 -15
- package/plugins/standard/selection/actions.d.ts +0 -21
- package/plugins/standard/selection/chrome.d.ts +0 -2
- package/plugins/standard/selection/contextMenu.d.ts +0 -2
- package/plugins/standard/selection/plugin.d.ts +0 -1
- package/plugins/standard/selection/toolbar.d.ts +0 -2
- package/plugins/standard/tool-ui/contextMenu.d.ts +0 -2
- package/plugins/standard/tool-ui/plugin.d.ts +0 -1
- package/plugins/standard/tool-ui/toolbar.d.ts +0 -2
- package/plugins/standard/view/actions.d.ts +0 -5
- package/plugins/standard/view/chrome.d.ts +0 -2
- package/plugins/standard/view/contextMenu.d.ts +0 -2
- package/plugins/standard/view/plugin.d.ts +0 -1
- package/react/useCanvasKitControllerLifecycle.d.ts +0 -8
- package/react/useCanvasKitRuntime.d.ts +0 -2
- package/runtime/canvasKitActionContext.d.ts +0 -17
- package/runtime/canvasKitCommandExecutor.d.ts +0 -13
- package/runtime/canvasKitPluginContracts.d.ts +0 -32
- package/runtime/canvasKitPluginLifecycle.d.ts +0 -32
- package/runtime/canvasKitPluginSetup.d.ts +0 -34
- package/runtime/canvasKitPluginUi.d.ts +0 -35
- package/runtime/canvasKitResourceScope.d.ts +0 -5
- package/runtime/canvasKitRuntime.d.ts +0 -50
- package/runtime/canvasKitRuntimeContracts.d.ts +0 -34
- package/runtime/registries/actionRegistry.d.ts +0 -5
- package/runtime/registries/chromeRegistry.d.ts +0 -2
- package/runtime/registries/contextMenuRegistry.d.ts +0 -5
- package/runtime/registries/exportRegistry.d.ts +0 -2
- package/runtime/registries/importRegistry.d.ts +0 -2
- package/runtime/registries/index.d.ts +0 -7
- package/runtime/registries/toolbarRegistry.d.ts +0 -5
- /package/_vendor/canvas-core/editor/{selectionBindingSegments.d.ts → selection/selectionBindingSegments.d.ts} +0 -0
- /package/_vendor/canvas-core/editor/{managers → snapping}/snapSnapshotBuilder.d.ts +0 -0
- /package/_vendor/canvas-core/editor/{camera.d.ts → viewport/camera.d.ts} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { Editor } from "../../../editor/editor";
|
|
2
|
-
import { StateNode } from "
|
|
3
|
-
import type { PointerEditorEvent } from "../../../editor/events";
|
|
2
|
+
import { StateNode } from "../../stateNode";
|
|
3
|
+
import type { EditorEventContext, EditorEventRoutingEffect, PointerEditorEvent } from "../../../editor/events/events";
|
|
4
4
|
import { type PointingShapeInfo } from "../selectToolHelpers";
|
|
5
5
|
import { PointingStateNode } from "./selectStateNode";
|
|
6
6
|
export declare class PointingShapeState extends PointingStateNode<PointingShapeInfo> {
|
|
7
7
|
constructor(editor: Editor, parent: StateNode);
|
|
8
8
|
protected onInfoEnter(): void;
|
|
9
9
|
protected onDragThresholdExceeded(event: PointerEditorEvent): void;
|
|
10
|
-
protected onPointerUp(event: PointerEditorEvent): void;
|
|
10
|
+
protected onPointerUp(event: PointerEditorEvent, context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
11
11
|
protected onCancel(): void;
|
|
12
12
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { Editor } from "../../../editor/editor";
|
|
2
|
-
import {
|
|
2
|
+
import type { PointerEditorEvent } from "../../../editor/events/events";
|
|
3
|
+
import { StateNode } from "../../stateNode";
|
|
3
4
|
import { type ResizingInfo } from "../selectToolHelpers";
|
|
4
5
|
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
5
6
|
export declare class ResizingState extends DraggingStateNode<ResizingInfo> {
|
|
6
|
-
protected readonly tickMode: "apply_after_scroll_or_without_screen_point";
|
|
7
7
|
constructor(editor: Editor, parent: StateNode);
|
|
8
8
|
protected getOperationKind(): string;
|
|
9
9
|
protected onDragStart(): void;
|
|
10
|
-
protected onPointerUp(): void;
|
|
10
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
11
11
|
protected onCancel(): void;
|
|
12
12
|
protected onInfoExit(): void;
|
|
13
13
|
protected apply({ pagePoint, shiftKey, altKey, accelKey, }: DragApplyInput): void;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { Editor } from "../../../editor/editor";
|
|
2
|
-
import {
|
|
2
|
+
import type { PointerEditorEvent } from "../../../editor/events/events";
|
|
3
|
+
import { StateNode } from "../../stateNode";
|
|
3
4
|
import { type RotatingInfo } from "../selectToolHelpers";
|
|
4
5
|
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
5
6
|
export declare class RotatingState extends DraggingStateNode<RotatingInfo> {
|
|
6
|
-
protected readonly tickMode: "apply_after_scroll";
|
|
7
7
|
constructor(editor: Editor, parent: StateNode);
|
|
8
8
|
protected getOperationKind(): string;
|
|
9
|
-
protected onPointerUp(): void;
|
|
9
|
+
protected onPointerUp(event: PointerEditorEvent): void;
|
|
10
10
|
protected onCancel(): void;
|
|
11
11
|
protected apply({ pagePoint, shiftKey, accelKey }: DragApplyInput): void;
|
|
12
12
|
private complete;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { Vec } from "../../../geometry/vec";
|
|
2
|
-
import { StateNode } from "
|
|
3
|
-
import type { PointerEditorEvent, TickEditorEvent } from "../../../editor/events";
|
|
4
|
-
import {
|
|
5
|
-
import type { EditorOperation } from "../../../editor/operationManager";
|
|
2
|
+
import { StateNode } from "../../stateNode";
|
|
3
|
+
import type { PointerEditorEvent, TickEditorEvent } from "../../../editor/events/events";
|
|
4
|
+
import type { EditorOperation } from "../../../editor/history/operationManager";
|
|
6
5
|
/**
|
|
7
6
|
* Base for every select-tool state that carries a transient `info` payload.
|
|
8
7
|
* Centralises the identical `info` lifecycle (assign on enter, clear on exit)
|
|
@@ -38,23 +37,20 @@ export interface DragApplyInput {
|
|
|
38
37
|
}
|
|
39
38
|
/**
|
|
40
39
|
* Base for the active drag states (translate / resize / rotate / handle
|
|
41
|
-
* interaction). Centralises the identical event wiring:
|
|
42
|
-
*
|
|
43
|
-
* current input on key changes. Subclasses implement {@link apply} plus their
|
|
44
|
-
* completion/cancellation and any extra cleanup.
|
|
40
|
+
* interaction). Centralises the identical event wiring: open an operation on
|
|
41
|
+
* enter, apply the latest input once per animation tick, and re-apply the
|
|
42
|
+
* current input on key changes. Subclasses implement {@link apply} plus their
|
|
43
|
+
* own completion / cancellation and any extra cleanup.
|
|
45
44
|
*/
|
|
46
45
|
export declare abstract class DraggingStateNode<T> extends InfoStateNode<T> {
|
|
47
46
|
protected operation: EditorOperation | null;
|
|
48
|
-
/** Edge-scroll behaviour for this gesture's tick handling. */
|
|
49
|
-
protected abstract readonly tickMode: EdgeScrollTickMode;
|
|
50
47
|
/** Stable operation kind for this gesture. */
|
|
51
48
|
protected abstract getOperationKind(info: T): string;
|
|
52
49
|
/** Apply one drag sample. Implementations must guard on `this.info`. */
|
|
53
50
|
protected abstract apply(input: DragApplyInput): void;
|
|
54
51
|
protected onInfoEnter(): void;
|
|
55
|
-
/** Extra setup after the
|
|
52
|
+
/** Extra setup after the operation is opened (e.g. clearing indicators). */
|
|
56
53
|
protected onDragStart(): void;
|
|
57
|
-
protected onPointerMove(event: PointerEditorEvent): void;
|
|
58
54
|
protected onTick(event: TickEditorEvent): void;
|
|
59
55
|
protected onKeyDown(): void;
|
|
60
56
|
protected onKeyUp(): void;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import type { Editor } from "../../../editor/editor";
|
|
2
|
-
import type { PointerEditorEvent } from "../../../editor/events";
|
|
3
|
-
import { StateNode } from "
|
|
2
|
+
import type { PointerEditorEvent } from "../../../editor/events/events";
|
|
3
|
+
import { StateNode } from "../../stateNode";
|
|
4
4
|
import { type TranslatingInfo } from "../selectToolHelpers";
|
|
5
5
|
import { DraggingStateNode, type DragApplyInput } from "./selectStateNode";
|
|
6
6
|
export declare class TranslatingState extends DraggingStateNode<TranslatingInfo> {
|
|
7
|
-
protected readonly tickMode: "always_apply";
|
|
8
7
|
constructor(editor: Editor, parent: StateNode);
|
|
9
8
|
protected getOperationKind(): string;
|
|
10
9
|
protected onDragStart(): void;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Editor } from "../editor/editor";
|
|
2
|
+
import type { CancelEditorEvent, EditorEventContext, EditorEventRoutingEffect, KeyboardEditorEvent, PointerEditorEvent, TickEditorEvent, WheelEditorEvent } from "../editor/events/events";
|
|
3
|
+
export type StateNodeEvent = PointerEditorEvent | KeyboardEditorEvent | WheelEditorEvent | TickEditorEvent | CancelEditorEvent;
|
|
4
|
+
export declare abstract class StateNode {
|
|
5
|
+
readonly editor: Editor;
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly parent?: StateNode | undefined;
|
|
8
|
+
protected readonly children: Map<string, StateNode>;
|
|
9
|
+
protected currentChild: StateNode | null;
|
|
10
|
+
protected initial: string | null;
|
|
11
|
+
constructor(editor: Editor, id: string, parent?: StateNode | undefined);
|
|
12
|
+
protected addChild(child: StateNode): void;
|
|
13
|
+
enter(info?: unknown): void;
|
|
14
|
+
exit(info?: unknown): void;
|
|
15
|
+
transition(id: string, info?: unknown): void;
|
|
16
|
+
isInInitialState(): boolean;
|
|
17
|
+
dispatch(event: StateNodeEvent, context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
18
|
+
protected onEnter(_info?: unknown): void;
|
|
19
|
+
protected onExit(_info?: unknown): void;
|
|
20
|
+
protected onPointerDown(_event: PointerEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
21
|
+
protected onPointerMove(_event: PointerEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
22
|
+
protected onPointerUp(_event: PointerEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
23
|
+
protected onCancel(_event: CancelEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
24
|
+
protected onKeyDown(_event: KeyboardEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
25
|
+
protected onKeyUp(_event: KeyboardEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
26
|
+
protected onWheel(_event: WheelEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
27
|
+
protected onTick(_event: TickEditorEvent, _context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
28
|
+
private handlePointerEvent;
|
|
29
|
+
private handleKeyboardEvent;
|
|
30
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Atom } from "../../signals/index";
|
|
2
|
+
import type { ChangeSource } from "../../store/index";
|
|
3
|
+
import type { Editor } from "../editor/editor";
|
|
4
|
+
import type { CancelEditorEvent, EditorEventContext, EditorEventRoutingEffect } from "../editor/events/events";
|
|
5
|
+
import type { StateNode, StateNodeEvent } from "./stateNode";
|
|
6
|
+
type ToolFactory = (editor: Editor) => StateNode;
|
|
7
|
+
export declare class ToolManager {
|
|
8
|
+
private readonly editor;
|
|
9
|
+
readonly activeToolId: Atom<string>;
|
|
10
|
+
readonly isToolLocked: Atom<boolean>;
|
|
11
|
+
private readonly registry;
|
|
12
|
+
private activeTool;
|
|
13
|
+
constructor(editor: Editor);
|
|
14
|
+
register(id: string, factory: ToolFactory): void;
|
|
15
|
+
hasTool(id: string): boolean;
|
|
16
|
+
select(id: string, source?: ChangeSource): void;
|
|
17
|
+
setLocked(locked: boolean, source?: ChangeSource): void;
|
|
18
|
+
toggleLocked(source?: ChangeSource): void;
|
|
19
|
+
syncActiveTool(id: string, reason?: CancelEditorEvent["reason"]): void;
|
|
20
|
+
dispatch(event: StateNodeEvent, context: EditorEventContext): EditorEventRoutingEffect | void;
|
|
21
|
+
syncLockedState(locked: boolean): void;
|
|
22
|
+
isInInitialState(): boolean;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Box } from "../geometry/box";
|
|
2
|
+
import type { Vec } from "../geometry/vec";
|
|
3
|
+
export declare function areArraysEqual<T>(left: readonly T[], right: readonly T[], isEqual?: (left: T, right: T) => boolean): boolean;
|
|
4
|
+
export declare function areSetsEqual<T>(left: ReadonlySet<T>, right: ReadonlySet<T>): boolean;
|
|
5
|
+
export declare function areVecsEqual(left: Vec | null | undefined, right: Vec | null | undefined): boolean;
|
|
6
|
+
export declare function areVecArraysEqual(left: readonly Vec[], right: readonly Vec[]): boolean;
|
|
7
|
+
export declare function areVecPolygonArraysEqual(left: readonly (readonly Vec[])[], right: readonly (readonly Vec[])[]): boolean;
|
|
8
|
+
export declare function areBoxesEqual(left: Box | null | undefined, right: Box | null | undefined): boolean;
|
|
9
|
+
export declare function areSerializableValuesEqual(left: unknown, right: unknown): boolean;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { Editor, ShapeId, ShapeRecord, Vec } from "../canvas-core/index";
|
|
2
|
+
import type { CanvasContextMenuRequest } from "../canvas-react/index";
|
|
3
|
+
export type CanvasImportSource = "clipboard" | "drop" | "file-picker";
|
|
4
|
+
export interface CanvasImportRequest {
|
|
5
|
+
readonly source: CanvasImportSource;
|
|
6
|
+
readonly files: readonly File[];
|
|
7
|
+
readonly text?: string;
|
|
8
|
+
readonly html?: string;
|
|
9
|
+
readonly urls?: readonly string[];
|
|
10
|
+
readonly pagePoint?: Vec;
|
|
11
|
+
}
|
|
12
|
+
export interface CanvasImportPreview {
|
|
13
|
+
readonly source: "drop";
|
|
14
|
+
readonly dataTypes: readonly string[];
|
|
15
|
+
readonly fileTypes: readonly string[];
|
|
16
|
+
}
|
|
17
|
+
export type CanvasImportResult = "handled" | "ignored";
|
|
18
|
+
export interface CanvasImportContribution {
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly order?: number;
|
|
21
|
+
acceptsPreview?(preview: CanvasImportPreview): boolean;
|
|
22
|
+
accepts(request: CanvasImportRequest): boolean;
|
|
23
|
+
import(request: CanvasImportRequest): CanvasImportResult | Promise<CanvasImportResult>;
|
|
24
|
+
}
|
|
25
|
+
export interface CanvasExportFormat {
|
|
26
|
+
readonly format: string;
|
|
27
|
+
readonly label: string;
|
|
28
|
+
readonly mimeType: string;
|
|
29
|
+
readonly fileExtension: string;
|
|
30
|
+
}
|
|
31
|
+
export interface CanvasExportProviderInput {
|
|
32
|
+
readonly editor: Editor;
|
|
33
|
+
readonly shapeIds: readonly ShapeId[];
|
|
34
|
+
readonly options?: unknown;
|
|
35
|
+
}
|
|
36
|
+
export interface CanvasExportPayload {
|
|
37
|
+
readonly data: Blob | string | Uint8Array | null;
|
|
38
|
+
readonly result?: unknown;
|
|
39
|
+
readonly status?: unknown;
|
|
40
|
+
}
|
|
41
|
+
export interface CanvasExportArtifact extends CanvasExportFormat, CanvasExportPayload {
|
|
42
|
+
}
|
|
43
|
+
export interface CanvasExportFormatProvider extends CanvasExportFormat {
|
|
44
|
+
readonly kind: "provider";
|
|
45
|
+
readonly id: string;
|
|
46
|
+
export(input: CanvasExportProviderInput, context: {
|
|
47
|
+
readonly signal: AbortSignal;
|
|
48
|
+
inlineSvg(input: CanvasSvgInlineInput): Promise<string>;
|
|
49
|
+
}): CanvasExportPayload | Promise<CanvasExportPayload>;
|
|
50
|
+
}
|
|
51
|
+
export interface SvgResourceInliner {
|
|
52
|
+
readonly kind: "svg-inliner";
|
|
53
|
+
readonly id: string;
|
|
54
|
+
prepare?(input: {
|
|
55
|
+
readonly editor: Editor;
|
|
56
|
+
readonly requestedShapeIds: readonly ShapeId[];
|
|
57
|
+
readonly signal: AbortSignal;
|
|
58
|
+
}): void | Promise<void>;
|
|
59
|
+
inline(input: {
|
|
60
|
+
readonly editor: Editor;
|
|
61
|
+
readonly exportedShapes: readonly ShapeRecord[];
|
|
62
|
+
readonly exportedShapeIds: readonly ShapeId[];
|
|
63
|
+
readonly svg: string;
|
|
64
|
+
readonly signal: AbortSignal;
|
|
65
|
+
}): string | Promise<string>;
|
|
66
|
+
}
|
|
67
|
+
export type CanvasExportContribution = CanvasExportFormatProvider | SvgResourceInliner;
|
|
68
|
+
export interface CanvasSvgInlineInput {
|
|
69
|
+
readonly editor: Editor;
|
|
70
|
+
readonly exportedShapes: readonly ShapeRecord[];
|
|
71
|
+
readonly exportedShapeIds: readonly ShapeId[];
|
|
72
|
+
readonly requestedShapeIds: readonly ShapeId[];
|
|
73
|
+
readonly svg: string;
|
|
74
|
+
}
|
|
75
|
+
export interface CanvasAssetResolverContribution {
|
|
76
|
+
readonly id: string;
|
|
77
|
+
resolve(assetId: string): string | null;
|
|
78
|
+
preload?(input: {
|
|
79
|
+
readonly editor: Editor;
|
|
80
|
+
readonly signal: AbortSignal;
|
|
81
|
+
}): void | Promise<void>;
|
|
82
|
+
cleanupAfterRestore?(input: {
|
|
83
|
+
readonly editor: Editor;
|
|
84
|
+
readonly signal: AbortSignal;
|
|
85
|
+
}): void | Promise<void>;
|
|
86
|
+
}
|
|
87
|
+
export interface CanvasStartupResult {
|
|
88
|
+
readonly documentSource: "restored" | "initial" | "empty";
|
|
89
|
+
readonly sessionRestored: boolean;
|
|
90
|
+
readonly warnings: readonly unknown[];
|
|
91
|
+
}
|
|
92
|
+
export type ActiveCanvasContextMenu = CanvasContextMenuRequest;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type { AssetId, Camera, ShapeId } from "../canvas-core/index";
|
|
2
|
+
import type { CanvasExportArtifact, CanvasExportFormat } from "./contributions";
|
|
3
|
+
export type CanvasProductExportTarget = {
|
|
4
|
+
readonly scope: "page" | "selection";
|
|
5
|
+
readonly shapeIds?: never;
|
|
6
|
+
} | {
|
|
7
|
+
readonly scope?: never;
|
|
8
|
+
readonly shapeIds: readonly ShapeId[];
|
|
9
|
+
};
|
|
10
|
+
export type CanvasProductExportInput = CanvasProductExportTarget & {
|
|
11
|
+
readonly options?: unknown;
|
|
12
|
+
};
|
|
13
|
+
export type CanvasProductExportStatus = {
|
|
14
|
+
readonly state: "idle";
|
|
15
|
+
} | {
|
|
16
|
+
readonly state: "exporting";
|
|
17
|
+
readonly format: string;
|
|
18
|
+
};
|
|
19
|
+
export interface CanvasProductExportController {
|
|
20
|
+
getFormats(): readonly CanvasExportFormat[];
|
|
21
|
+
getStatus(): CanvasProductExportStatus;
|
|
22
|
+
export(format: string, input: CanvasProductExportInput): Promise<CanvasExportArtifact>;
|
|
23
|
+
}
|
|
24
|
+
export interface CanvasProductShapeData {
|
|
25
|
+
readonly id: ShapeId;
|
|
26
|
+
readonly type: string;
|
|
27
|
+
readonly parentId: string;
|
|
28
|
+
readonly pageId: string | null;
|
|
29
|
+
readonly index: string;
|
|
30
|
+
readonly x: number;
|
|
31
|
+
readonly y: number;
|
|
32
|
+
readonly rotation: number;
|
|
33
|
+
readonly scaleX: number;
|
|
34
|
+
readonly scaleY: number;
|
|
35
|
+
readonly opacity: number;
|
|
36
|
+
readonly isHidden: boolean;
|
|
37
|
+
readonly isLocked: boolean;
|
|
38
|
+
readonly props: Readonly<Record<string, unknown>>;
|
|
39
|
+
readonly meta: Readonly<Record<string, unknown>>;
|
|
40
|
+
}
|
|
41
|
+
export interface CanvasProductAssetData {
|
|
42
|
+
readonly id: AssetId;
|
|
43
|
+
readonly type: string;
|
|
44
|
+
readonly props: Readonly<Record<string, unknown>>;
|
|
45
|
+
readonly meta: Readonly<Record<string, unknown>>;
|
|
46
|
+
}
|
|
47
|
+
export interface CanvasProductDocumentRef {
|
|
48
|
+
readonly id: string;
|
|
49
|
+
readonly meta: Readonly<Record<string, unknown>>;
|
|
50
|
+
}
|
|
51
|
+
export interface CanvasProductPageRef {
|
|
52
|
+
readonly id: string;
|
|
53
|
+
readonly name: string;
|
|
54
|
+
readonly index: string;
|
|
55
|
+
readonly meta: Readonly<Record<string, unknown>>;
|
|
56
|
+
}
|
|
57
|
+
export interface CanvasProductSessionPageState {
|
|
58
|
+
readonly pageId: string;
|
|
59
|
+
readonly selectedShapeIds: readonly ShapeId[];
|
|
60
|
+
readonly camera: Readonly<Camera>;
|
|
61
|
+
}
|
|
62
|
+
export interface CanvasProductSessionSnapshot<TToolId extends string = string> {
|
|
63
|
+
readonly currentPageId: string;
|
|
64
|
+
readonly activeToolId: TToolId;
|
|
65
|
+
readonly isToolLocked: boolean;
|
|
66
|
+
readonly meta: Readonly<Record<string, unknown>>;
|
|
67
|
+
readonly pages: readonly CanvasProductSessionPageState[];
|
|
68
|
+
}
|
|
69
|
+
export interface CanvasProductSnapshot<TToolId extends string = string> {
|
|
70
|
+
readonly productId: string;
|
|
71
|
+
readonly document: CanvasProductDocumentRef;
|
|
72
|
+
readonly pageId: string;
|
|
73
|
+
readonly activeToolId: TToolId;
|
|
74
|
+
readonly selectedShapeIds: readonly ShapeId[];
|
|
75
|
+
readonly shapeCount: number;
|
|
76
|
+
readonly session: CanvasProductSessionSnapshot<TToolId>;
|
|
77
|
+
}
|
|
78
|
+
export interface CanvasProductShapeUpdate {
|
|
79
|
+
readonly id: ShapeId;
|
|
80
|
+
readonly x?: number;
|
|
81
|
+
readonly y?: number;
|
|
82
|
+
readonly rotation?: number;
|
|
83
|
+
readonly scaleX?: number;
|
|
84
|
+
readonly scaleY?: number;
|
|
85
|
+
readonly opacity?: number;
|
|
86
|
+
readonly isHidden?: boolean;
|
|
87
|
+
readonly isLocked?: boolean;
|
|
88
|
+
readonly parentId?: string;
|
|
89
|
+
readonly index?: string;
|
|
90
|
+
readonly props?: Readonly<Record<string, unknown>>;
|
|
91
|
+
readonly meta?: Readonly<Record<string, unknown>>;
|
|
92
|
+
}
|
|
93
|
+
export interface CanvasProductCreatePageInput {
|
|
94
|
+
readonly name?: string;
|
|
95
|
+
readonly meta?: Readonly<Record<string, unknown>>;
|
|
96
|
+
}
|
|
97
|
+
export interface CanvasProductLayerPlacement {
|
|
98
|
+
readonly parentId: string;
|
|
99
|
+
readonly beforeId?: ShapeId | null;
|
|
100
|
+
}
|
|
101
|
+
export type CanvasProductLayerPlacementFailureReason = "empty-selection" | "invalid-parent" | "invalid-before" | "locked" | "cycle" | "mixed-parent";
|
|
102
|
+
export type CanvasProductLayerPlacementResult = {
|
|
103
|
+
readonly ok: true;
|
|
104
|
+
readonly ids: readonly ShapeId[];
|
|
105
|
+
} | {
|
|
106
|
+
readonly ok: false;
|
|
107
|
+
readonly reason: CanvasProductLayerPlacementFailureReason;
|
|
108
|
+
};
|
|
109
|
+
export interface CanvasProductLayerNode {
|
|
110
|
+
readonly id: ShapeId;
|
|
111
|
+
readonly parentId: string;
|
|
112
|
+
readonly pageId: string;
|
|
113
|
+
readonly type: string;
|
|
114
|
+
readonly companionIds: readonly ShapeId[];
|
|
115
|
+
readonly childIds: readonly ShapeId[];
|
|
116
|
+
readonly siblingIndex: number;
|
|
117
|
+
readonly depth: number;
|
|
118
|
+
readonly canReceiveChildren: boolean;
|
|
119
|
+
readonly isHidden: boolean;
|
|
120
|
+
readonly isLocked: boolean;
|
|
121
|
+
readonly isEffectivelyHidden: boolean;
|
|
122
|
+
readonly isEffectivelyLocked: boolean;
|
|
123
|
+
}
|
|
124
|
+
export interface CanvasProductLayerActionState {
|
|
125
|
+
readonly canGroup: boolean;
|
|
126
|
+
readonly canUngroup: boolean;
|
|
127
|
+
readonly canMoveBackward: boolean;
|
|
128
|
+
readonly canMoveForward: boolean;
|
|
129
|
+
}
|
|
130
|
+
export type CanvasSelectionAlignMode = "left" | "horizontal-center" | "right" | "top" | "vertical-center" | "bottom";
|
|
131
|
+
export type CanvasSelectionDistributeAxis = "horizontal" | "vertical";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface ProductPersistenceLoadResult {
|
|
2
|
+
/** `null` means that persistence has no stored document. */
|
|
3
|
+
readonly documentSnapshot: unknown | null;
|
|
4
|
+
/** Ignored when `documentSnapshot` is `null`. */
|
|
5
|
+
readonly sessionSnapshot: unknown | null;
|
|
6
|
+
}
|
|
7
|
+
export interface ProductPersistenceAdapter {
|
|
8
|
+
/** Load and validation failures must reject; they are not missing documents. */
|
|
9
|
+
load?(input: {
|
|
10
|
+
readonly signal: AbortSignal;
|
|
11
|
+
}): ProductPersistenceLoadResult | Promise<ProductPersistenceLoadResult>;
|
|
12
|
+
saveDocument?(snapshot: unknown): void | Promise<void>;
|
|
13
|
+
saveSession?(snapshot: unknown): void | Promise<void>;
|
|
14
|
+
flush?(): void | Promise<void>;
|
|
15
|
+
dispose?(): void | Promise<void>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Editor, EditorPlugin } from "../canvas-core/index";
|
|
2
|
+
import type { CanvasRenderPlugin } from "../canvas-react/host/index";
|
|
3
|
+
import type { CanvasAssetResolverContribution, CanvasExportContribution, CanvasImportContribution } from "./contributions";
|
|
4
|
+
import type { CanvasApiToken, ScopedProductApiRegistryView } from "./tokens";
|
|
5
|
+
export interface CanvasPluginReference {
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly __canvasPluginReferenceBrand: "CanvasPluginReference";
|
|
8
|
+
}
|
|
9
|
+
export type CanvasPluginRequirement = CanvasPluginReference;
|
|
10
|
+
export interface CanvasTaskRunner {
|
|
11
|
+
run<TResult>(operation: (signal: AbortSignal) => Promise<TResult>): Promise<TResult>;
|
|
12
|
+
}
|
|
13
|
+
export interface CanvasPluginSetupContext {
|
|
14
|
+
readonly editor: Editor;
|
|
15
|
+
readonly productId: string;
|
|
16
|
+
readonly apis: ScopedProductApiRegistryView;
|
|
17
|
+
readonly tasks: CanvasTaskRunner;
|
|
18
|
+
}
|
|
19
|
+
export interface CanvasPluginInstance<TApi = never> {
|
|
20
|
+
readonly api?: TApi;
|
|
21
|
+
readonly imports?: readonly CanvasImportContribution[];
|
|
22
|
+
readonly exports?: readonly CanvasExportContribution[];
|
|
23
|
+
readonly assetResolvers?: readonly CanvasAssetResolverContribution[];
|
|
24
|
+
dispose?(): void | Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
export interface CanvasPluginDefinition<TApi = never> {
|
|
27
|
+
readonly id: string;
|
|
28
|
+
readonly requires?: readonly CanvasPluginReference[];
|
|
29
|
+
readonly editor?: EditorPlugin;
|
|
30
|
+
readonly render?: CanvasRenderPlugin;
|
|
31
|
+
readonly api?: CanvasApiToken<TApi>;
|
|
32
|
+
setup?(context: CanvasPluginSetupContext): CanvasPluginInstance<TApi> | void;
|
|
33
|
+
}
|
|
34
|
+
export interface CanvasPlugin<TApi = never> extends CanvasPluginDefinition<TApi>, CanvasPluginReference {
|
|
35
|
+
}
|
|
36
|
+
export type CanvasPluginInput = CanvasPlugin<unknown> | readonly CanvasPluginInput[];
|
|
37
|
+
export declare function defineCanvasPlugin<TApi = never>(plugin: CanvasPluginDefinition<TApi>): CanvasPlugin<TApi>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface CanvasApiToken<TApi> {
|
|
2
|
+
readonly id: string;
|
|
3
|
+
readonly kind: "api";
|
|
4
|
+
readonly __api?: TApi;
|
|
5
|
+
}
|
|
6
|
+
export declare function createCanvasApiToken<TApi>(id: string): CanvasApiToken<TApi>;
|
|
7
|
+
export declare function isCanvasApiToken(value: unknown): value is CanvasApiToken<unknown>;
|
|
8
|
+
export interface ScopedProductApiRegistryView {
|
|
9
|
+
get<TApi>(token: CanvasApiToken<TApi>): TApi | null;
|
|
10
|
+
require<TApi>(token: CanvasApiToken<TApi>): TApi;
|
|
11
|
+
}
|
|
12
|
+
export declare function requireApi<TApi>(apis: ScopedProductApiRegistryView, token: CanvasApiToken<TApi>): TApi;
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
import type { CanvasContextMenuRequest } from "../contextMenuRequest";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
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 CanvasRenderPluginComponent[];
|
|
8
|
-
canvasProviders?: readonly CanvasRenderPluginProvider[];
|
|
9
|
-
domEventGuardRegistry?: CanvasDomEventGuardRegistry;
|
|
2
|
+
import type { CanvasRenderBindings } from "../host/canvasRenderBindings";
|
|
3
|
+
export declare function Canvas({ onContextMenuRequest, renderBindings, showGrid, }: {
|
|
10
4
|
onContextMenuRequest?: (request: CanvasContextMenuRequest) => void;
|
|
11
|
-
|
|
12
|
-
rendererRegistry?: CanvasRendererRegistry;
|
|
5
|
+
renderBindings: CanvasRenderBindings;
|
|
13
6
|
showGrid?: boolean;
|
|
14
7
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function DefaultGrid(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Editor, KeyboardEditorEvent } from "../../canvas-core/index";
|
|
1
|
+
import type { Editor, EditorEventResult, KeyboardEditorEvent } from "../../canvas-core/index";
|
|
2
2
|
export declare function createKeyboardEvent(name: KeyboardEditorEvent["name"], event: KeyboardEvent): KeyboardEditorEvent;
|
|
3
|
-
export declare function routeCanvasKeyUp(editor: Editor, event: KeyboardEvent, isEditableTarget: boolean):
|
|
3
|
+
export declare function routeCanvasKeyUp(editor: Editor, event: KeyboardEvent, isEditableTarget: boolean): EditorEventResult | null;
|
|
4
4
|
export declare function getKeyboardShortcutEvent(event: KeyboardEvent): {
|
|
5
5
|
key: string;
|
|
6
6
|
shiftKey: boolean;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import { type Mat, type ShapeId } from "../../../canvas-core/index";
|
|
3
|
+
/**
|
|
4
|
+
* Shape DOM 节点在页面空间中平铺渲染,并未嵌套在父级 Shape 节点内,
|
|
5
|
+
* 因此需要在这里重建逻辑上的祖先裁剪层级。
|
|
6
|
+
*/
|
|
7
|
+
export declare function ShapeClipStack({ children, clipAncestorIds, shapeElementToPage, }: {
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
clipAncestorIds: readonly ShapeId[];
|
|
10
|
+
shapeElementToPage: Mat;
|
|
11
|
+
}): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const ShapeRenderList: import("react").NamedExoticComponent<object>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Editor, ShapeRecord } from "../../../canvas-core/index";
|
|
2
|
+
import { type AnyRegisteredShapeRenderer, type ShapeRendererProps } from "../../host/canvasRenderPlugin";
|
|
3
|
+
interface MemoizedShapeRendererProps extends ShapeRendererProps {
|
|
4
|
+
Component: AnyRegisteredShapeRenderer["component"];
|
|
5
|
+
}
|
|
6
|
+
export declare const MemoizedShapeRenderer: import("react").NamedExoticComponent<MemoizedShapeRendererProps>;
|
|
7
|
+
export declare function ShapeHoverDecoration({ Component, editor, shape, }: {
|
|
8
|
+
Component: NonNullable<AnyRegisteredShapeRenderer["hoverComponent"]>;
|
|
9
|
+
editor: Editor;
|
|
10
|
+
shape: ShapeRecord;
|
|
11
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Mat, type Editor, type ShapeRecord } from "../../../canvas-core/index";
|
|
2
|
+
export interface ShapeFrame {
|
|
3
|
+
left: number;
|
|
4
|
+
top: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
transform: string;
|
|
8
|
+
transformOrigin: string;
|
|
9
|
+
elementToPage: Mat;
|
|
10
|
+
}
|
|
11
|
+
export declare function getShapeFrame(editor: Editor, shape: ShapeRecord, renderToPage: Mat): ShapeFrame;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type MouseEvent as ReactMouseEvent, type PointerEvent as ReactPointerEvent, type RefObject } from "react";
|
|
2
2
|
import { type Editor, type ShapeEditingSession } from "../../canvas-core/index";
|
|
3
3
|
import type { CanvasContextMenuRequest } from "../contextMenuRequest";
|
|
4
|
-
import type {
|
|
4
|
+
import type { CanvasDomEventGuards } from "../host/canvasRenderBindings";
|
|
5
5
|
export interface CanvasDomEventHandlers {
|
|
6
6
|
onPointerDown: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
7
7
|
onAuxClick: (event: ReactMouseEvent<HTMLDivElement>) => void;
|
|
@@ -15,7 +15,7 @@ export interface CanvasDomEventState {
|
|
|
15
15
|
surfaceCursor: string | undefined;
|
|
16
16
|
}
|
|
17
17
|
export declare function useCanvasDomEvents({ activeDomEventGuards, activeToolId, editor, onContextMenuRequest, shapeEditingSession, }: {
|
|
18
|
-
activeDomEventGuards:
|
|
18
|
+
activeDomEventGuards: CanvasDomEventGuards;
|
|
19
19
|
activeToolId: string;
|
|
20
20
|
editor: Editor;
|
|
21
21
|
onContextMenuRequest?: (request: CanvasContextMenuRequest) => void;
|
|
@@ -5,6 +5,6 @@ export declare function getEditableEventTarget(target: EventTarget | null): HTML
|
|
|
5
5
|
export declare function isEditableEventTarget(target: EventTarget | null): boolean;
|
|
6
6
|
export declare function getCanvasSurfaceElement(root?: ParentNode): HTMLElement | null;
|
|
7
7
|
export declare function getCanvasSurfaceElementForNode(node: Node | null | undefined): HTMLElement | null;
|
|
8
|
-
export declare function forwardWheelEventToCanvasSurface(event: WheelEvent, source: Node): boolean;
|
|
8
|
+
export declare function forwardWheelEventToCanvasSurface(event: WheelEvent, source: Node, root?: ParentNode): boolean;
|
|
9
9
|
export declare function getCanvasSurfaceScreenPoint(point: Pick<MouseEvent, "clientX" | "clientY">, surface?: HTMLElement | null): Vec;
|
|
10
10
|
export declare function getCanvasSurfacePagePoint(editor: Editor, point: Pick<MouseEvent, "clientX" | "clientY">, surface?: HTMLElement | null): Vec;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Editor, ReadonlyValue, SelectionCustomHandle, ShapeId, ShapeRecordBase } from "../../canvas-core/index";
|
|
2
|
+
import type { AnyRegisteredSelectionCustomHandleRenderer, AnyRegisteredShapeRenderer, CanvasDomEventGuardCursorInput, CanvasDomEventGuardInput, CanvasOverlayContribution, CanvasRenderPlugin, CanvasRenderPluginComponent } from "./canvasRenderPlugin";
|
|
3
|
+
export interface CanvasRendererLookup {
|
|
4
|
+
getShapeRenderer(type: ShapeRecordBase["type"]): AnyRegisteredShapeRenderer | null;
|
|
5
|
+
getShapeOpacityValue(editor: Editor, shapeId: ShapeId): ReadonlyValue<number>;
|
|
6
|
+
}
|
|
7
|
+
export interface CanvasOverlayLookup {
|
|
8
|
+
getCanvasOverlays(): readonly CanvasOverlayContribution[];
|
|
9
|
+
getSelectionCustomHandleRenderer(type: SelectionCustomHandle["type"]): AnyRegisteredSelectionCustomHandleRenderer | null;
|
|
10
|
+
}
|
|
11
|
+
export interface CanvasDomEventGuards {
|
|
12
|
+
handle(input: CanvasDomEventGuardInput): "continue" | "handled";
|
|
13
|
+
getCursor(input: CanvasDomEventGuardCursorInput): string | undefined;
|
|
14
|
+
}
|
|
15
|
+
export interface CanvasRenderBindings {
|
|
16
|
+
readonly canvasComponents: readonly CanvasRenderPluginComponent[];
|
|
17
|
+
readonly renderers: CanvasRendererLookup;
|
|
18
|
+
readonly overlays: CanvasOverlayLookup;
|
|
19
|
+
readonly domEventGuards: CanvasDomEventGuards;
|
|
20
|
+
}
|
|
21
|
+
export declare function createCanvasRenderBindings(plugins: readonly CanvasRenderPlugin[]): CanvasRenderBindings;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type CanvasOverlayLookup, type CanvasRenderBindings, type CanvasRendererLookup } from "./canvasRenderBindings";
|
|
2
|
+
export declare const CanvasRenderBindingsContext: import("react").Context<CanvasRenderBindings>;
|
|
3
|
+
export declare function useCanvasRenderBindings(): CanvasRenderBindings;
|
|
4
|
+
export declare function useCanvasRenderers(): CanvasRendererLookup;
|
|
5
|
+
export declare function useCanvasOverlays(): CanvasOverlayLookup;
|