@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,11 @@
|
|
|
1
|
+
import { type CanvasDomEventGuard, type CanvasDomEventGuardCursorInput, type CanvasDomEventGuardInput, type LandCanvasPlugin } from "./canvasPlugin";
|
|
2
|
+
export declare class CanvasDomEventGuardRegistry {
|
|
3
|
+
private readonly guards;
|
|
4
|
+
private readonly registeredGuardIds;
|
|
5
|
+
register(guard: CanvasDomEventGuard): void;
|
|
6
|
+
registerCanvasPlugins(plugins: readonly LandCanvasPlugin[]): void;
|
|
7
|
+
getGuards(): readonly CanvasDomEventGuard[];
|
|
8
|
+
handle(input: CanvasDomEventGuardInput): "continue" | "handled";
|
|
9
|
+
getCursor(input: CanvasDomEventGuardCursorInput): string | undefined;
|
|
10
|
+
}
|
|
11
|
+
export declare function createCanvasDomEventGuardRegistry(plugins?: readonly LandCanvasPlugin[]): CanvasDomEventGuardRegistry;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { LandEditorPlugin, ShapeRecordBase } from "../../canvas-core/index";
|
|
2
|
+
import type { LandCanvasPlugin } from "./canvasPlugin";
|
|
3
|
+
type LandExtensionOptions = Record<string, unknown>;
|
|
4
|
+
export interface LandFeatureBundle {
|
|
5
|
+
id: string;
|
|
6
|
+
editorPlugins: readonly LandEditorPlugin[];
|
|
7
|
+
canvasPlugins: readonly LandCanvasPlugin[];
|
|
8
|
+
shapeTypes: readonly ShapeRecordBase["type"][];
|
|
9
|
+
}
|
|
10
|
+
export interface LandExtension {
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly options: Readonly<LandExtensionOptions>;
|
|
13
|
+
readonly priority: number;
|
|
14
|
+
createFeature(): LandFeatureBundle | null;
|
|
15
|
+
getExtensions(): readonly LandExtension[];
|
|
16
|
+
}
|
|
17
|
+
export type LandExtensionOptionsInput<T> = T extends readonly unknown[] ? T : T extends LandExtensionOptions ? {
|
|
18
|
+
[K in keyof T]?: LandExtensionOptionsInput<T[K]>;
|
|
19
|
+
} : T;
|
|
20
|
+
export interface ConfigurableLandExtension<Options extends LandExtensionOptions> extends LandExtension {
|
|
21
|
+
readonly options: Readonly<Options>;
|
|
22
|
+
configure(options?: LandExtensionOptionsInput<Options>): ConfigurableLandExtension<Options>;
|
|
23
|
+
}
|
|
24
|
+
export interface LandExtensionConfig<Options extends LandExtensionOptions> {
|
|
25
|
+
name: string;
|
|
26
|
+
priority?: number;
|
|
27
|
+
addOptions?(): Options;
|
|
28
|
+
addExtensions?(options: Readonly<Options>): readonly LandExtension[];
|
|
29
|
+
createFeature?(options: Readonly<Options>): LandFeatureBundle;
|
|
30
|
+
}
|
|
31
|
+
export interface ResolvedLandExtension {
|
|
32
|
+
extension: LandExtension;
|
|
33
|
+
feature: LandFeatureBundle | null;
|
|
34
|
+
}
|
|
35
|
+
export declare function defineLandExtension<Options extends LandExtensionOptions = Record<string, never>>(config: LandExtensionConfig<Options>): ConfigurableLandExtension<Options>;
|
|
36
|
+
export declare function resolveLandExtensions(extensions: readonly LandExtension[]): ResolvedLandExtension[];
|
|
37
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export { CanvasRendererRegistryContext, useCanvasRendererRegistry, } from "./canvasRendererRegistryContext";
|
|
2
|
+
export { CanvasOverlayRegistryContext, useCanvasOverlayRegistry, } from "./canvasOverlayRegistryContext";
|
|
3
|
+
export { CanvasDomEventGuardRegistry, createCanvasDomEventGuardRegistry, } from "./domEventGuards";
|
|
4
|
+
export { CanvasOverlayRegistry, createCanvasOverlayRegistry, } from "./overlayRegistry";
|
|
5
|
+
export { CanvasRendererRegistry, createCanvasRendererRegistry, } from "./rendererRegistry";
|
|
6
|
+
export { CanvasToolbarRegistry, createCanvasToolbarRegistry, } from "./toolbarRegistry";
|
|
7
|
+
export { CanvasContextMenuRegistry, createCanvasContextMenuRegistry, } from "./contextMenuRegistry";
|
|
8
|
+
export type { AnyRegisteredSelectionCustomHandleRenderer, AnyRegisteredShapeRenderer, CanvasOverlayContribution, CanvasOverlayLayer, CanvasDomEventGuard, CanvasDomEventGuardCursorInput, CanvasDomEventGuardDecision, CanvasDomEventGuardInput, CanvasDomEventGuardName, CanvasPluginComponent, CanvasPluginProvider, LandCanvasPlugin, RegisteredSelectionCustomHandleRenderer, RegisteredShapeRenderer, SelectionCustomHandleRendererProps, ShapeRendererProps, } from "./canvasPlugin";
|
|
9
|
+
export { getShapeStrokeForHover, SHAPE_HOVER_STROKE, } from "./canvasPlugin";
|
|
10
|
+
export { defineLandExtension, resolveLandExtensions, } from "./extension";
|
|
11
|
+
export type { ConfigurableLandExtension, LandExtension, LandExtensionConfig, LandExtensionOptionsInput, LandFeatureBundle, ResolvedLandExtension, } from "./extension";
|
|
12
|
+
export { createCanvasPluginHostRuntime } from "./pluginHost";
|
|
13
|
+
export type { CanvasPluginHostManifestContextMenuContributionEntry, CanvasPluginHostManifestEntry, CanvasPluginHostManifestToolbarContributionEntry, CanvasPluginHostRuntime, CanvasPluginHostShapeValidationSummary, CanvasPluginHostSource, CanvasPluginHostValidationIssue, CanvasPluginHostValidationIssueSeverity, CanvasPluginHostValidationSummary, CanvasPluginHostVerdict, CreateCanvasPluginHostRuntimeOptions, } from "./pluginHost";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { SelectionCustomHandle } from "../../canvas-core/index";
|
|
2
|
+
import type { AnyRegisteredSelectionCustomHandleRenderer, CanvasOverlayContribution, CanvasOverlayLayer, LandCanvasPlugin, RegisteredSelectionCustomHandleRenderer } from "./canvasPlugin";
|
|
3
|
+
export declare class CanvasOverlayRegistry {
|
|
4
|
+
private readonly selectionCustomHandleRenderers;
|
|
5
|
+
private readonly canvasOverlays;
|
|
6
|
+
private readonly registeredPluginIds;
|
|
7
|
+
registerCanvasOverlay(overlay: CanvasOverlayContribution): void;
|
|
8
|
+
getCanvasOverlay(id: string): CanvasOverlayContribution | null;
|
|
9
|
+
hasCanvasOverlay(id: string): boolean;
|
|
10
|
+
getCanvasOverlays(layer?: CanvasOverlayLayer): CanvasOverlayContribution[];
|
|
11
|
+
getRegisteredCanvasOverlayIds(): string[];
|
|
12
|
+
registerSelectionCustomHandleRenderer<H extends SelectionCustomHandle>(renderer: RegisteredSelectionCustomHandleRenderer<H>): void;
|
|
13
|
+
getSelectionCustomHandleRenderer(type: SelectionCustomHandle["type"]): AnyRegisteredSelectionCustomHandleRenderer | null;
|
|
14
|
+
hasSelectionCustomHandleRenderer(type: SelectionCustomHandle["type"]): boolean;
|
|
15
|
+
getRegisteredSelectionCustomHandleTypes(): SelectionCustomHandle["type"][];
|
|
16
|
+
registerCanvasPlugins(plugins: readonly LandCanvasPlugin[]): void;
|
|
17
|
+
}
|
|
18
|
+
export declare function createCanvasOverlayRegistry(plugins?: readonly LandCanvasPlugin[]): CanvasOverlayRegistry;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { createCanvasPluginHostRuntime } from "./pluginHostRuntime";
|
|
2
|
+
export type { CanvasPluginHostManifestContextMenuContributionEntry, CanvasPluginHostManifestEntry, CanvasPluginHostManifestToolbarContributionEntry, CanvasPluginHostRuntime, CanvasPluginHostShapeValidationSummary, CanvasPluginHostSource, CanvasPluginHostValidationIssue, CanvasPluginHostValidationIssueSeverity, CanvasPluginHostValidationSummary, CanvasPluginHostVerdict, CreateCanvasPluginHostRuntimeOptions, } from "./pluginHostTypes";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type LandExtension } from "./extension";
|
|
2
|
+
import type { CanvasPluginHostRuntime, CreateCanvasPluginHostRuntimeOptions } from "./pluginHostTypes";
|
|
3
|
+
export declare function createCanvasPluginHostRuntime(extensions: readonly LandExtension[], options?: CreateCanvasPluginHostRuntimeOptions): CanvasPluginHostRuntime;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { LandEditorPlugin, ShapeCapabilitySupport } from "../../canvas-core/index";
|
|
2
|
+
import type { CanvasPluginComponent, CanvasPluginProvider, LandCanvasPlugin } from "./canvasPlugin";
|
|
3
|
+
import type { CanvasContextMenuRegistry } from "./contextMenuRegistry";
|
|
4
|
+
import type { CanvasDomEventGuardRegistry } from "./domEventGuards";
|
|
5
|
+
import type { LandFeatureBundle } from "./extension";
|
|
6
|
+
import type { CanvasOverlayRegistry } from "./overlayRegistry";
|
|
7
|
+
import type { CanvasRendererRegistry } from "./rendererRegistry";
|
|
8
|
+
import type { CanvasToolbarRegistry } from "./toolbarRegistry";
|
|
9
|
+
export type CanvasPluginHostSource = "built-in" | "dev-sample";
|
|
10
|
+
export type CanvasPluginHostVerdict = "pass" | "fail";
|
|
11
|
+
export interface CreateCanvasPluginHostRuntimeOptions {
|
|
12
|
+
knownHostActionIds?: readonly string[];
|
|
13
|
+
source?: CanvasPluginHostSource;
|
|
14
|
+
}
|
|
15
|
+
export interface CanvasPluginHostManifestEntry {
|
|
16
|
+
id: string;
|
|
17
|
+
extensionName: string;
|
|
18
|
+
source: CanvasPluginHostSource;
|
|
19
|
+
editorPluginIds: string[];
|
|
20
|
+
canvasPluginIds: string[];
|
|
21
|
+
interactionHandlerIds: string[];
|
|
22
|
+
canvasActionIds: string[];
|
|
23
|
+
toolbarContributionIds: string[];
|
|
24
|
+
toolbarContributions: CanvasPluginHostManifestToolbarContributionEntry[];
|
|
25
|
+
contextMenuContributionIds: string[];
|
|
26
|
+
contextMenuContributions: CanvasPluginHostManifestContextMenuContributionEntry[];
|
|
27
|
+
domEventGuardIds: string[];
|
|
28
|
+
canvasOverlayIds: string[];
|
|
29
|
+
selectionCustomHandleRendererTypes: string[];
|
|
30
|
+
canvasProviderIds: string[];
|
|
31
|
+
canvasComponentIds: string[];
|
|
32
|
+
shapeTypes: string[];
|
|
33
|
+
}
|
|
34
|
+
export interface CanvasPluginHostManifestToolbarContributionEntry {
|
|
35
|
+
id: string;
|
|
36
|
+
surface: string;
|
|
37
|
+
placement: string;
|
|
38
|
+
actionIds: string[];
|
|
39
|
+
}
|
|
40
|
+
export interface CanvasPluginHostManifestContextMenuContributionEntry {
|
|
41
|
+
id: string;
|
|
42
|
+
target: string;
|
|
43
|
+
actionIds: string[];
|
|
44
|
+
}
|
|
45
|
+
export interface CanvasPluginHostRuntime {
|
|
46
|
+
editorPlugins: LandEditorPlugin[];
|
|
47
|
+
canvasPlugins: LandCanvasPlugin[];
|
|
48
|
+
canvasProviders: CanvasPluginProvider[];
|
|
49
|
+
canvasComponents: CanvasPluginComponent[];
|
|
50
|
+
rendererRegistry: CanvasRendererRegistry;
|
|
51
|
+
overlayRegistry: CanvasOverlayRegistry;
|
|
52
|
+
domEventGuardRegistry: CanvasDomEventGuardRegistry;
|
|
53
|
+
toolbarRegistry: CanvasToolbarRegistry;
|
|
54
|
+
contextMenuRegistry: CanvasContextMenuRegistry;
|
|
55
|
+
manifest: CanvasPluginHostManifestEntry[];
|
|
56
|
+
validation: CanvasPluginHostValidationSummary;
|
|
57
|
+
externalPluginIds: string[];
|
|
58
|
+
}
|
|
59
|
+
export type CanvasPluginHostValidationIssueSeverity = "error" | "warning";
|
|
60
|
+
export interface CanvasPluginHostValidationIssue {
|
|
61
|
+
severity: CanvasPluginHostValidationIssueSeverity;
|
|
62
|
+
code: "duplicate-feature-id" | "duplicate-editor-plugin-id" | "duplicate-canvas-plugin-id" | "duplicate-interaction-handler-id" | "duplicate-canvas-action-id" | "duplicate-toolbar-contribution-id" | "duplicate-context-menu-contribution-id" | "duplicate-dom-event-guard-id" | "duplicate-canvas-overlay-id" | "duplicate-selection-custom-handle-renderer" | "duplicate-canvas-provider-id" | "duplicate-canvas-component-id" | "missing-canvas-action" | "missing-context-menu-action" | "missing-editor-plugin" | "missing-canvas-plugin" | "missing-shape-type" | "missing-shape-capability" | "missing-shape-util" | "missing-svg-exporter" | "missing-canvas-renderer";
|
|
63
|
+
featureId: string | null;
|
|
64
|
+
pluginId: string | null;
|
|
65
|
+
shapeType: string | null;
|
|
66
|
+
message: string;
|
|
67
|
+
}
|
|
68
|
+
export interface CanvasPluginHostShapeValidationSummary {
|
|
69
|
+
featureId: string;
|
|
70
|
+
shapeType: string;
|
|
71
|
+
hasCapability: boolean;
|
|
72
|
+
hasShapeUtil: boolean;
|
|
73
|
+
hasSvgExporter: boolean;
|
|
74
|
+
hasCanvasRenderer: boolean;
|
|
75
|
+
exportSupport: ShapeCapabilitySupport | null;
|
|
76
|
+
}
|
|
77
|
+
export interface CanvasPluginHostValidationSummary {
|
|
78
|
+
verdict: CanvasPluginHostVerdict;
|
|
79
|
+
issueCount: number;
|
|
80
|
+
errorCount: number;
|
|
81
|
+
warningCount: number;
|
|
82
|
+
issues: CanvasPluginHostValidationIssue[];
|
|
83
|
+
featureIds: string[];
|
|
84
|
+
editorPluginIds: string[];
|
|
85
|
+
canvasPluginIds: string[];
|
|
86
|
+
interactionHandlerIds: string[];
|
|
87
|
+
canvasActionIds: string[];
|
|
88
|
+
toolbarContributionIds: string[];
|
|
89
|
+
contextMenuContributionIds: string[];
|
|
90
|
+
domEventGuardIds: string[];
|
|
91
|
+
canvasOverlayIds: string[];
|
|
92
|
+
selectionCustomHandleRendererTypes: string[];
|
|
93
|
+
canvasProviderIds: string[];
|
|
94
|
+
canvasComponentIds: string[];
|
|
95
|
+
registeredRendererTypes: string[];
|
|
96
|
+
shapeSummaries: CanvasPluginHostShapeValidationSummary[];
|
|
97
|
+
}
|
|
98
|
+
export interface ResolvedCanvasFeature {
|
|
99
|
+
extensionName: string;
|
|
100
|
+
feature: LandFeatureBundle;
|
|
101
|
+
source: CanvasPluginHostSource;
|
|
102
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { LandEditorPlugin } from "../../canvas-core/index";
|
|
2
|
+
import type { LandCanvasPlugin } from "./canvasPlugin";
|
|
3
|
+
import type { CanvasRendererRegistry } from "./rendererRegistry";
|
|
4
|
+
import type { CanvasPluginHostValidationSummary, ResolvedCanvasFeature } from "./pluginHostTypes";
|
|
5
|
+
export declare function validateCanvasPluginHost({ editorPlugins, canvasPlugins, knownHostActionIds, rendererRegistry, resolvedFeatures, }: {
|
|
6
|
+
editorPlugins: readonly LandEditorPlugin[];
|
|
7
|
+
canvasPlugins: readonly LandCanvasPlugin[];
|
|
8
|
+
knownHostActionIds: readonly string[];
|
|
9
|
+
rendererRegistry: CanvasRendererRegistry;
|
|
10
|
+
resolvedFeatures: readonly ResolvedCanvasFeature[];
|
|
11
|
+
}): CanvasPluginHostValidationSummary;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ShapeRecordBase } from "../../canvas-core/index";
|
|
2
|
+
import type { AnyRegisteredShapeRenderer, LandCanvasPlugin, RegisteredShapeRenderer } from "./canvasPlugin";
|
|
3
|
+
export declare class CanvasRendererRegistry {
|
|
4
|
+
private readonly registry;
|
|
5
|
+
private readonly registeredPluginIds;
|
|
6
|
+
registerShapeRenderer<S extends ShapeRecordBase>(renderer: RegisteredShapeRenderer<S>): void;
|
|
7
|
+
getShapeRenderer(type: ShapeRecordBase["type"]): AnyRegisteredShapeRenderer | null;
|
|
8
|
+
hasShapeRenderer(type: ShapeRecordBase["type"]): boolean;
|
|
9
|
+
getRegisteredShapeTypes(): ShapeRecordBase["type"][];
|
|
10
|
+
registerCanvasPlugins(plugins: readonly LandCanvasPlugin[]): void;
|
|
11
|
+
}
|
|
12
|
+
export declare function createCanvasRendererRegistry(plugins?: readonly LandCanvasPlugin[]): CanvasRendererRegistry;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { LandEditorPlugin, CanvasAction, CanvasActionContext, ToolbarContribution, ToolbarGroup, ToolbarPlacement, ToolbarSurface } from "../../canvas-core/index";
|
|
2
|
+
export declare class CanvasToolbarRegistry {
|
|
3
|
+
private readonly actions;
|
|
4
|
+
private readonly contributions;
|
|
5
|
+
private readonly hostActionIds;
|
|
6
|
+
private readonly duplicateActionIds;
|
|
7
|
+
private readonly duplicateContributionIds;
|
|
8
|
+
registerAction(action: CanvasAction, options?: {
|
|
9
|
+
replace?: boolean;
|
|
10
|
+
}): void;
|
|
11
|
+
registerHostAction(action: CanvasAction): void;
|
|
12
|
+
registerContribution(contribution: ToolbarContribution, options?: {
|
|
13
|
+
replace?: boolean;
|
|
14
|
+
}): void;
|
|
15
|
+
registerEditorPlugins(plugins: readonly LandEditorPlugin[]): void;
|
|
16
|
+
getAction(actionId: string): CanvasAction | null;
|
|
17
|
+
getHostActionIds(): string[];
|
|
18
|
+
getDuplicateActionIds(): string[];
|
|
19
|
+
getDuplicateContributionIds(): string[];
|
|
20
|
+
getGroups(surface: ToolbarSurface, context: CanvasActionContext, options?: {
|
|
21
|
+
placement?: ToolbarPlacement;
|
|
22
|
+
}): ToolbarGroup[];
|
|
23
|
+
}
|
|
24
|
+
export declare function createCanvasToolbarRegistry(plugins?: readonly LandEditorPlugin[]): CanvasToolbarRegistry;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { Canvas, PageSpace } from "./components";
|
|
2
|
+
export { CANVAS_SURFACE_DATA_UI, CANVAS_SURFACE_SELECTOR, forwardWheelEventToCanvasSurface, getCanvasSurfaceElement, getCanvasSurfaceElementForNode, getCanvasSurfacePagePoint, getCanvasSurfaceScreenPoint, getEditableEventTarget, isEditableEventTarget, } from "./dom";
|
|
3
|
+
export { useEditor, EditorContext } from "./hooks/useEditor";
|
|
4
|
+
export { useValue } from "./hooks/useValue";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Vec, type Editor, type ShapeRecord } from "../canvas-core/index";
|
|
2
|
+
import type { ArrowPoint } from "./types";
|
|
3
|
+
export declare function getArrowBindingAnchorPagePoint(editor: Editor, target: ShapeRecord, normalizedAnchor: ArrowPoint): Vec;
|
|
4
|
+
export declare function getArrowBindingNormalizedAnchor(editor: Editor, target: ShapeRecord, rawPagePoint: Vec): ArrowPoint;
|
|
5
|
+
export declare function resolveArrowBindingPagePoint(editor: Editor, target: ShapeRecord, normalizedAnchor: ArrowPoint, oppositePagePoint: Vec): Vec;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Vec, type Editor, type SelectionBindingSegment, type ShapeRecord } from "../canvas-core/index";
|
|
2
|
+
import { type ArrowInfo } from "./arrowGeometry";
|
|
3
|
+
import { type ArrowShapeRecord, type ArrowTerminal } from "./types";
|
|
4
|
+
export interface ResolvedArrowPageGeometry {
|
|
5
|
+
info: ArrowInfo;
|
|
6
|
+
fullInfo: ArrowInfo;
|
|
7
|
+
bindingSegments: SelectionBindingSegment[];
|
|
8
|
+
}
|
|
9
|
+
export interface ArrowTerminalBindingGuide {
|
|
10
|
+
terminal: ArrowTerminal;
|
|
11
|
+
anchorPagePoint: Vec;
|
|
12
|
+
boundaryPagePoint: Vec;
|
|
13
|
+
guidePath: string | null;
|
|
14
|
+
}
|
|
15
|
+
export declare function getArrowTerminalHandlePagePoint(editor: Editor, arrow: ArrowShapeRecord, terminal: ArrowTerminal): Vec;
|
|
16
|
+
export declare function getArrowBendReferencePagePoints(editor: Editor, shape: ArrowShapeRecord): {
|
|
17
|
+
start: Vec;
|
|
18
|
+
end: Vec;
|
|
19
|
+
};
|
|
20
|
+
export declare function getResolvedArrowPageGeometry(editor: Editor, shape: ArrowShapeRecord): ResolvedArrowPageGeometry;
|
|
21
|
+
export declare function getResolvedArrowLocalInfo(editor: Editor, shape: ArrowShapeRecord): ArrowInfo;
|
|
22
|
+
export declare function getArrowTerminalBindingGuide(editor: Editor, { arrow, terminal, target, anchorPagePoint, fallbackBoundaryPagePoint, }: {
|
|
23
|
+
arrow: ArrowShapeRecord;
|
|
24
|
+
terminal: ArrowTerminal;
|
|
25
|
+
target: ShapeRecord;
|
|
26
|
+
anchorPagePoint: Vec;
|
|
27
|
+
fallbackBoundaryPagePoint: Vec;
|
|
28
|
+
}): ArrowTerminalBindingGuide;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { BindingUtil, type BindingUtilEffect, type Editor, type ShapeRecord } from "../canvas-core/index";
|
|
2
|
+
import { type ArrowBindingRecord } from "./types";
|
|
3
|
+
export declare class ArrowBindingUtil extends BindingUtil<ArrowBindingRecord> {
|
|
4
|
+
readonly type: "arrow";
|
|
5
|
+
getDefaultProps(): ArrowBindingRecord["props"];
|
|
6
|
+
validateProps(props: unknown): ArrowBindingRecord["props"];
|
|
7
|
+
canBind(_editor: Editor, _binding: ArrowBindingRecord, context: {
|
|
8
|
+
fromShape: ShapeRecord;
|
|
9
|
+
toShape: ShapeRecord;
|
|
10
|
+
}): boolean;
|
|
11
|
+
getExclusiveBindingKey(binding: ArrowBindingRecord): string;
|
|
12
|
+
onBindingCreate(editor: Editor, binding: ArrowBindingRecord): BindingUtilEffect | void;
|
|
13
|
+
onBindingUpdate(editor: Editor, _before: ArrowBindingRecord, after: ArrowBindingRecord): BindingUtilEffect | void;
|
|
14
|
+
onBindingLoad(editor: Editor, binding: ArrowBindingRecord): BindingUtilEffect | void;
|
|
15
|
+
getGeometryDependentShapeIds(_editor: Editor, binding: ArrowBindingRecord, context: {
|
|
16
|
+
role: "from" | "to";
|
|
17
|
+
}): ShapeRecord["id"][];
|
|
18
|
+
onAfterShapeChange(editor: Editor, binding: ArrowBindingRecord, _context: {
|
|
19
|
+
role: "from" | "to";
|
|
20
|
+
}): BindingUtilEffect | void;
|
|
21
|
+
onBeforeDeleteShape(editor: Editor, binding: ArrowBindingRecord, context: {
|
|
22
|
+
role: "from" | "to";
|
|
23
|
+
}): BindingUtilEffect | void;
|
|
24
|
+
onBeforeDeleteBinding(editor: Editor, binding: ArrowBindingRecord): BindingUtilEffect | void;
|
|
25
|
+
private syncArrowTerminal;
|
|
26
|
+
private resolveTerminalPagePoint;
|
|
27
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Box, Vec } from "../canvas-core/index";
|
|
2
|
+
import type { ArrowShapeProps, ArrowShapeRecord, ArrowTerminal } from "./types";
|
|
3
|
+
export declare const ARROW_CURVE_EPSILON = 0.000001;
|
|
4
|
+
export interface ArrowInfoTerminal {
|
|
5
|
+
terminal: ArrowTerminal;
|
|
6
|
+
point: Vec;
|
|
7
|
+
handle: Vec;
|
|
8
|
+
}
|
|
9
|
+
export interface StraightArrowInfo {
|
|
10
|
+
type: "straight";
|
|
11
|
+
start: ArrowInfoTerminal;
|
|
12
|
+
end: ArrowInfoTerminal;
|
|
13
|
+
middle: Vec;
|
|
14
|
+
arc: null;
|
|
15
|
+
bend: number;
|
|
16
|
+
points: Vec[];
|
|
17
|
+
bounds: Box;
|
|
18
|
+
path: string;
|
|
19
|
+
}
|
|
20
|
+
export interface CurvedArrowInfo {
|
|
21
|
+
type: "curved";
|
|
22
|
+
start: ArrowInfoTerminal;
|
|
23
|
+
end: ArrowInfoTerminal;
|
|
24
|
+
middle: Vec;
|
|
25
|
+
arc: ArrowArcInfo;
|
|
26
|
+
bend: number;
|
|
27
|
+
points: Vec[];
|
|
28
|
+
bounds: Box;
|
|
29
|
+
path: string;
|
|
30
|
+
}
|
|
31
|
+
export type ArrowInfo = StraightArrowInfo | CurvedArrowInfo;
|
|
32
|
+
export interface ArrowArcInfo {
|
|
33
|
+
center: Vec;
|
|
34
|
+
radius: number;
|
|
35
|
+
largeArcFlag: 0 | 1;
|
|
36
|
+
sweepFlag: 0 | 1;
|
|
37
|
+
size: number;
|
|
38
|
+
length: number;
|
|
39
|
+
}
|
|
40
|
+
export declare function getArrowTerminalPagePoint(shape: ArrowShapeRecord, terminal: ArrowTerminal): Vec;
|
|
41
|
+
export declare function getOppositeArrowTerminal(terminal: ArrowTerminal): ArrowTerminal;
|
|
42
|
+
export declare function withArrowPagePoints(shape: ArrowShapeRecord, start: Vec, end: Vec): ArrowShapeRecord;
|
|
43
|
+
export declare function setArrowTerminalPagePoint(shape: ArrowShapeRecord, terminal: ArrowTerminal, pagePoint: Vec): ArrowShapeRecord;
|
|
44
|
+
export declare function normalizeArrowShapePoints(start: Vec, end: Vec): Pick<ArrowShapeProps, "w" | "h" | "start" | "end"> & {
|
|
45
|
+
x: number;
|
|
46
|
+
y: number;
|
|
47
|
+
};
|
|
48
|
+
export declare function getArrowInfo(shape: ArrowShapeRecord): ArrowInfo;
|
|
49
|
+
export declare function getArrowLocalInfo(shape: ArrowShapeRecord): ArrowInfo;
|
|
50
|
+
export declare function getArrowBendFromMiddlePagePoint(start: Vec, end: Vec, point: Vec): number;
|
|
51
|
+
export declare function getArrowHitDistance(info: ArrowInfo, point: Vec): number;
|
|
52
|
+
export declare function getArrowInfoFromPoints(start: Vec, end: Vec, rawBend: unknown): ArrowInfo;
|
|
53
|
+
export declare function getArrowInfoFromArc({ start, end, middle, bend, arc, startHandle, endHandle, }: {
|
|
54
|
+
start: Vec;
|
|
55
|
+
end: Vec;
|
|
56
|
+
middle: Vec;
|
|
57
|
+
bend: number;
|
|
58
|
+
arc: Pick<ArrowArcInfo, "center" | "radius" | "sweepFlag">;
|
|
59
|
+
startHandle?: Vec;
|
|
60
|
+
endHandle?: Vec;
|
|
61
|
+
}): ArrowInfo;
|
|
62
|
+
export declare function getArrowArcMeasure(start: Vec, end: Vec, arc: Pick<ArrowArcInfo, "center" | "sweepFlag">): number;
|
|
63
|
+
export declare function getArrowArcPointAt(start: Vec, end: Vec, arc: Pick<ArrowArcInfo, "center" | "radius" | "sweepFlag">, t: number): Vec;
|
|
64
|
+
export declare function getArrowTerminalGuidePath({ terminal, handlePagePoint, boundaryPagePoint, fullInfo, }: {
|
|
65
|
+
terminal: ArrowTerminal;
|
|
66
|
+
handlePagePoint: Vec;
|
|
67
|
+
boundaryPagePoint: Vec;
|
|
68
|
+
fullInfo: Extract<ArrowInfo, {
|
|
69
|
+
type: "curved";
|
|
70
|
+
}>;
|
|
71
|
+
}): string | null;
|
|
72
|
+
export declare function getArrowArcBoundaryPointForOutline(outline: readonly Vec[], fullInfo: Extract<ArrowInfo, {
|
|
73
|
+
type: "curved";
|
|
74
|
+
}>, role: ArrowTerminal): Vec | null;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Box, ShapeUtil, Vec, type ShapeBrushWrapInput, type ShapeGeometryInput, type ShapeSelectionHandleAnchorInput, type ShapeSelectionHandleAnchors, type ShapeLineSegmentHitTestInput, type ShapeSelectionOverlayInfo, type ShapeSelectionOverlayInfoInput, type ShapeSelectionPagePointsInput, type ShapeSelectionPagePoints, type ShapePointHitTestInput, type ShapeUpdate } from "../canvas-core/index";
|
|
2
|
+
import { type ArrowShapeProps, type ArrowShapeRecord } from "./types";
|
|
3
|
+
export declare class ArrowShapeUtil extends ShapeUtil<ArrowShapeRecord> {
|
|
4
|
+
readonly type: "arrow";
|
|
5
|
+
getDefaultProps(): ArrowShapeProps;
|
|
6
|
+
validateProps(props: unknown): ArrowShapeProps;
|
|
7
|
+
getBounds(shape: ArrowShapeRecord): Box;
|
|
8
|
+
getPointHitTestBounds(shape: ArrowShapeRecord, input?: ShapeGeometryInput): Box;
|
|
9
|
+
getLocalBounds(shape: ArrowShapeRecord): Box;
|
|
10
|
+
getExportBounds(shape: ArrowShapeRecord): Box;
|
|
11
|
+
repairLoadedShape(shape: ArrowShapeRecord): ArrowShapeRecord | null;
|
|
12
|
+
updateSelectionPagePoints(shape: ArrowShapeRecord, input: ShapeSelectionPagePointsInput): ShapeUpdate;
|
|
13
|
+
isWrappedByBrush(shape: ArrowShapeRecord, input: ShapeBrushWrapInput): boolean;
|
|
14
|
+
getSelectionPagePoints(shape: ArrowShapeRecord): ShapeSelectionPagePoints;
|
|
15
|
+
contributesToSelectionFrame(_shape: ArrowShapeRecord): boolean;
|
|
16
|
+
canStartTranslateFromSelectionBounds(_shape: ArrowShapeRecord): boolean;
|
|
17
|
+
getSelectionHandleAnchors(shape: ArrowShapeRecord, input: ShapeSelectionHandleAnchorInput): ShapeSelectionHandleAnchors;
|
|
18
|
+
getSelectionOverlayInfo(shape: ArrowShapeRecord, input: ShapeSelectionOverlayInfoInput): ShapeSelectionOverlayInfo;
|
|
19
|
+
hitTest(shape: ArrowShapeRecord, point: Vec, input?: ShapePointHitTestInput): boolean;
|
|
20
|
+
hitTestLineSegment(shape: ArrowShapeRecord, input: ShapeLineSegmentHitTestInput): boolean;
|
|
21
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Vec, type Editor, type ResolvedTerminalBinding, type ShapeId } from "../canvas-core/index";
|
|
2
|
+
import { type ArrowShapeRecord } from "./types";
|
|
3
|
+
export declare function resolveArrowTerminalBindingAtPoint(editor: Editor, { terminal, rawPagePoint, oppositePagePoint, excludeShapeId, ignoreTargets, }: {
|
|
4
|
+
terminal: "start" | "end";
|
|
5
|
+
rawPagePoint: Vec;
|
|
6
|
+
oppositePagePoint: Vec;
|
|
7
|
+
excludeShapeId?: ShapeId;
|
|
8
|
+
ignoreTargets?: boolean;
|
|
9
|
+
}): ResolvedTerminalBinding;
|
|
10
|
+
export declare function resolveArrowTerminalBindingAtStartPoint(editor: Editor, { terminal, rawPagePoint, ignoreTargets, }: {
|
|
11
|
+
terminal: "start" | "end";
|
|
12
|
+
rawPagePoint: Vec;
|
|
13
|
+
ignoreTargets?: boolean;
|
|
14
|
+
}): ResolvedTerminalBinding;
|
|
15
|
+
export declare function resolveArrowTerminalBindingForArrow(editor: Editor, { arrow, terminal, rawPagePoint, ignoreTargets, }: {
|
|
16
|
+
arrow: ArrowShapeRecord;
|
|
17
|
+
terminal: "start" | "end";
|
|
18
|
+
rawPagePoint: Vec;
|
|
19
|
+
ignoreTargets?: boolean;
|
|
20
|
+
}): ResolvedTerminalBinding;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Vec, type ChangeSource, type Editor, type PageId, type ResolvedTerminalBinding, type ShapeId, type TerminalBindingTargetInput } from "../canvas-core/index";
|
|
2
|
+
import { type ArrowShapeRecord, type ArrowShapeProps, type ArrowTerminal } from "./types";
|
|
3
|
+
export interface CreateArrowInput {
|
|
4
|
+
startPagePoint: Vec;
|
|
5
|
+
endPagePoint: Vec;
|
|
6
|
+
startBinding?: TerminalBindingTargetInput | null;
|
|
7
|
+
endBinding?: TerminalBindingTargetInput | null;
|
|
8
|
+
props?: Partial<ArrowShapeProps>;
|
|
9
|
+
parentId?: PageId;
|
|
10
|
+
}
|
|
11
|
+
export declare function createArrow(editor: Editor, input: CreateArrowInput, source?: ChangeSource): ArrowShapeRecord;
|
|
12
|
+
export declare function applyResolvedTerminalBinding(editor: Editor, shapeId: ShapeId | null, terminal: ArrowTerminal, resolvedBinding: ResolvedTerminalBinding, source?: ChangeSource): ArrowShapeRecord | null;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type LandEditorPlugin, type ShapeSvgExporter, type SvgExportContext, type SvgNode } from "../canvas-core/index";
|
|
2
|
+
import type { ArrowShapeRecord } from "./types";
|
|
3
|
+
export declare class ArrowShapeSvgExporter implements ShapeSvgExporter<ArrowShapeRecord> {
|
|
4
|
+
readonly type: "arrow";
|
|
5
|
+
toSvg(shape: ArrowShapeRecord, context: SvgExportContext): SvgNode;
|
|
6
|
+
}
|
|
7
|
+
export declare function createArrowEditorPlugin(): LandEditorPlugin;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { ArrowBindingUtil } from "./arrowBindingUtil";
|
|
2
|
+
export { ArrowShapeUtil } from "./arrowShapeUtil";
|
|
3
|
+
export { ArrowTool } from "./arrowTool";
|
|
4
|
+
export { ArrowShapeSvgExporter, createArrowEditorPlugin } from "./editor";
|
|
5
|
+
export { createArrowCanvasPlugin } from "./canvas";
|
|
6
|
+
export { Arrow, createArrowFeatureBundle } from "./feature";
|
|
7
|
+
export { isArrowBindingRecord, isArrowShapeRecord, type ArrowBindingProps, type ArrowBindingRecord, type ArrowPoint, type ArrowShapeProps, type ArrowShapeRecord, type ArrowTerminal, } from "./types";
|
|
8
|
+
export { getArrowBindingAnchorPagePoint, resolveArrowBindingPagePoint, } from "./arrowBindingAnchors";
|
|
9
|
+
export { resolveArrowTerminalBindingAtPoint, resolveArrowTerminalBindingAtStartPoint, resolveArrowTerminalBindingForArrow, } from "./arrowTerminalBindingResolver";
|
|
10
|
+
export { createArrow } from "./arrowTerminalCommands";
|
|
11
|
+
export { getArrowTerminalPagePoint } from "./arrowGeometry";
|
|
12
|
+
export { createArrowInteractionHandler, createArrowSelectionHandleInteractionHandler, } from "./selectionHandleInteractions";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type LandInteractionHandler, type SelectionHandleInteractionHandler } from "../canvas-core/index";
|
|
2
|
+
export declare function createArrowSelectionHandleInteractionHandler(): SelectionHandleInteractionHandler;
|
|
3
|
+
export declare function createArrowInteractionHandler(): LandInteractionHandler;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { BaseRecord, BindingRecordBase, ShapeColor, ShapeRecordBase } from "../canvas-core/index";
|
|
2
|
+
export interface ArrowPoint {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
}
|
|
6
|
+
export type ArrowTerminal = "start" | "end";
|
|
7
|
+
export interface ArrowShapeProps {
|
|
8
|
+
w: number;
|
|
9
|
+
h: number;
|
|
10
|
+
start: ArrowPoint;
|
|
11
|
+
end: ArrowPoint;
|
|
12
|
+
bend: number;
|
|
13
|
+
stroke: ShapeColor;
|
|
14
|
+
strokeWidth: number;
|
|
15
|
+
headStart: "none" | "arrow";
|
|
16
|
+
headEnd: "none" | "arrow";
|
|
17
|
+
}
|
|
18
|
+
export interface ArrowShapeRecord extends ShapeRecordBase<"arrow", ArrowShapeProps> {
|
|
19
|
+
type: "arrow";
|
|
20
|
+
props: ArrowShapeProps;
|
|
21
|
+
}
|
|
22
|
+
export interface ArrowBindingProps {
|
|
23
|
+
terminal: ArrowTerminal;
|
|
24
|
+
normalizedAnchor: ArrowPoint;
|
|
25
|
+
}
|
|
26
|
+
export interface ArrowBindingRecord extends BindingRecordBase<"arrow", ArrowBindingProps> {
|
|
27
|
+
type: "arrow";
|
|
28
|
+
props: ArrowBindingProps;
|
|
29
|
+
}
|
|
30
|
+
export declare function isArrowShapeRecord(record: BaseRecord | null | undefined): record is ArrowShapeRecord;
|
|
31
|
+
export declare function isArrowBindingRecord(record: BaseRecord | null | undefined): record is ArrowBindingRecord;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type ShapeColor } from "../canvas-core/index";
|
|
2
|
+
import type { DrawShapeRecord } from "./types";
|
|
3
|
+
interface DrawShapeSvgProps {
|
|
4
|
+
shape: DrawShapeRecord;
|
|
5
|
+
isHovered?: boolean;
|
|
6
|
+
stroke?: ShapeColor;
|
|
7
|
+
strokeWidth?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function DrawShapeSvg({ shape, isHovered, stroke, strokeWidth, }: DrawShapeSvgProps): import("react/jsx-runtime").JSX.Element | null;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Box, Vec } from "../canvas-core/index";
|
|
2
|
+
import { type DrawSelectionFlipInput, type DrawSelectionResizeInput } from "./drawSelectionTransform";
|
|
3
|
+
import { getDrawPointGeometry, getDrawSegmentGeometry, type DrawShapeGeometry, type DrawShapeSamplingStats } from "./drawShapeGeometry";
|
|
4
|
+
import type { DrawShapePoint, DrawShapeRecord, DrawShapeSegment } from "./types";
|
|
5
|
+
export { getDrawPointGeometry, getDrawSegmentGeometry };
|
|
6
|
+
export type { DrawShapeGeometry, DrawShapeSamplingStats, } from "./drawShapeGeometry";
|
|
7
|
+
type DrawLocalGeometryCacheKey = Pick<DrawShapeRecord, "props">;
|
|
8
|
+
type DrawPositionedGeometryCacheKey = Pick<DrawShapeRecord, "x" | "y" | "props">;
|
|
9
|
+
type DrawPageGeometryCacheKey = Pick<DrawShapeRecord, "x" | "y" | "rotation" | "scaleX" | "scaleY" | "props">;
|
|
10
|
+
export interface DrawShapeDiagnostics extends DrawShapeSamplingStats {
|
|
11
|
+
hasPath: boolean;
|
|
12
|
+
hasSelectionPath: boolean;
|
|
13
|
+
outlineVertexCount: number;
|
|
14
|
+
}
|
|
15
|
+
export interface NormalizedDrawShape {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
segments: DrawShapeSegment[];
|
|
19
|
+
pointBounds: Box;
|
|
20
|
+
localBounds: Box;
|
|
21
|
+
renderBounds: Box;
|
|
22
|
+
path: string | null;
|
|
23
|
+
selectionPath: string | null;
|
|
24
|
+
fillPath: string | null;
|
|
25
|
+
outlineVertices: Vec[];
|
|
26
|
+
outlinePolygons: Vec[][];
|
|
27
|
+
sampling: DrawShapeSamplingStats;
|
|
28
|
+
}
|
|
29
|
+
export declare function getDrawShapeLocalGeometry(shape: DrawLocalGeometryCacheKey): DrawShapeGeometry;
|
|
30
|
+
export declare function normalizeDrawShapeFromSegmentSet(segments: readonly DrawShapeSegment[], strokeWidth: number, isPen?: boolean, isClosed?: boolean): NormalizedDrawShape;
|
|
31
|
+
export declare function normalizeDrawShapeFromPointSet(points: readonly DrawShapePoint[], strokeWidth: number, isPen?: boolean, isClosed?: boolean): NormalizedDrawShape;
|
|
32
|
+
export declare function normalizeDrawShapeFromPagePoints(pagePoints: readonly DrawShapePoint[], strokeWidth: number, isPen?: boolean, isClosed?: boolean): NormalizedDrawShape;
|
|
33
|
+
export declare function normalizeDrawShapeFromPageSegments(pageSegments: readonly DrawShapeSegment[], strokeWidth: number, isPen?: boolean, isClosed?: boolean): NormalizedDrawShape;
|
|
34
|
+
export declare function getDrawShapePositionedSegments(shape: Pick<DrawShapeRecord, "x" | "y" | "props">): DrawShapeSegment[];
|
|
35
|
+
export declare function getDrawShapePositionedPoints(shape: Pick<DrawShapeRecord, "x" | "y" | "props">): DrawShapePoint[];
|
|
36
|
+
export declare function getDrawShapePositionedGeometry(shape: DrawPositionedGeometryCacheKey): DrawShapeGeometry;
|
|
37
|
+
export declare function getDrawShapePagePoints(shape: DrawShapeRecord): DrawShapePoint[];
|
|
38
|
+
export declare function getDrawShapePageSegments(shape: DrawShapeRecord): DrawShapeSegment[];
|
|
39
|
+
export declare function normalizeTransformedDrawShape(shape: DrawShapeRecord): NormalizedDrawShape;
|
|
40
|
+
export declare function getDrawShapePageGeometry(shape: DrawPageGeometryCacheKey): DrawShapeGeometry;
|
|
41
|
+
export declare function resizeDrawShapeToSelectionBounds(shape: DrawShapeRecord, input: DrawSelectionResizeInput): NormalizedDrawShape;
|
|
42
|
+
export declare function flipDrawShapeInSelectionBounds(shape: DrawShapeRecord, input: DrawSelectionFlipInput): NormalizedDrawShape;
|
|
43
|
+
export declare function resizeDrawShapeToPageBounds(shape: Pick<DrawShapeRecord, "x" | "y" | "props">, nextPageBounds: Box): NormalizedDrawShape;
|
|
44
|
+
export declare function cloneDrawShapeSegmentsForUpdate(segments: readonly DrawShapeSegment[]): DrawShapeSegment[];
|
|
45
|
+
export declare function getDrawShapeDiagnostics(shape: DrawLocalGeometryCacheKey): DrawShapeDiagnostics;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Vec, type ShapeColor } from "../canvas-core/index";
|
|
2
|
+
import type { DrawShapeGeometry } from "./drawShapeGeometry";
|
|
3
|
+
interface DrawShapeHitTestOptions {
|
|
4
|
+
fill?: ShapeColor;
|
|
5
|
+
isClosed?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function hitTestDrawShapeGeometry(geometry: Pick<DrawShapeGeometry, "outlinePolygons" | "outlineVertices" | "normalizedPoints">, strokeWidth: number, point: Vec, options?: DrawShapeHitTestOptions): boolean;
|
|
8
|
+
export declare function hitTestDrawShapeLineSegmentGeometry(geometry: Pick<DrawShapeGeometry, "outlinePolygons" | "outlineVertices" | "normalizedPoints">, strokeWidth: number, start: Vec, end: Vec, options?: DrawShapeHitTestOptions & {
|
|
9
|
+
margin?: number;
|
|
10
|
+
}): boolean;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { DrawShapeRecord } from "./types";
|
|
2
|
+
export interface DrawShapeInterpolationOptions {
|
|
3
|
+
pointCount?: number;
|
|
4
|
+
}
|
|
5
|
+
export declare function interpolateDrawShapeRecords(from: DrawShapeRecord, to: DrawShapeRecord, t: number, options?: DrawShapeInterpolationOptions): DrawShapeRecord;
|