@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.
Files changed (563) hide show
  1. package/README.md +80 -78
  2. package/_vendor/canvas-core/bindings/bindingUtil.d.ts +45 -0
  3. package/_vendor/canvas-core/bindings/bindingUtilRegistry.d.ts +8 -0
  4. package/_vendor/canvas-core/bindings/terminalBinding.d.ts +28 -0
  5. package/_vendor/canvas-core/editor/camera.d.ts +3 -0
  6. package/_vendor/canvas-core/editor/clipboard.d.ts +43 -0
  7. package/_vendor/canvas-core/editor/commands.d.ts +131 -0
  8. package/_vendor/canvas-core/editor/createEditorWithPlugins.d.ts +6 -0
  9. package/_vendor/canvas-core/editor/edgeScroll.d.ts +5 -0
  10. package/_vendor/canvas-core/editor/editor.d.ts +559 -0
  11. package/_vendor/canvas-core/editor/editorComputedHelpers.d.ts +21 -0
  12. package/_vendor/canvas-core/editor/editorSelectionTransforms.d.ts +6 -0
  13. package/_vendor/canvas-core/editor/events.d.ts +71 -0
  14. package/_vendor/canvas-core/editor/historyManager.d.ts +18 -0
  15. package/_vendor/canvas-core/editor/index.d.ts +11 -0
  16. package/_vendor/canvas-core/editor/interactions.d.ts +51 -0
  17. package/_vendor/canvas-core/editor/internal.d.ts +7 -0
  18. package/_vendor/canvas-core/editor/managers/bindingManager.d.ts +27 -0
  19. package/_vendor/canvas-core/editor/managers/cameraManager.d.ts +39 -0
  20. package/_vendor/canvas-core/editor/managers/clipboardManager.d.ts +14 -0
  21. package/_vendor/canvas-core/editor/managers/documentSnapshotManager.d.ts +28 -0
  22. package/_vendor/canvas-core/editor/managers/inputsManager.d.ts +44 -0
  23. package/_vendor/canvas-core/editor/managers/interactionTransientManager.d.ts +55 -0
  24. package/_vendor/canvas-core/editor/managers/queryManager.d.ts +77 -0
  25. package/_vendor/canvas-core/editor/managers/queryState.d.ts +18 -0
  26. package/_vendor/canvas-core/editor/managers/renderWindowManager.d.ts +25 -0
  27. package/_vendor/canvas-core/editor/managers/selectionGeometry.d.ts +28 -0
  28. package/_vendor/canvas-core/editor/managers/selectionLayoutManager.d.ts +29 -0
  29. package/_vendor/canvas-core/editor/managers/selectionManager.d.ts +21 -0
  30. package/_vendor/canvas-core/editor/managers/selectionOverlayManager.d.ts +24 -0
  31. package/_vendor/canvas-core/editor/managers/shapeEditingManager.d.ts +29 -0
  32. package/_vendor/canvas-core/editor/managers/shapeGeometryManager.d.ts +42 -0
  33. package/_vendor/canvas-core/editor/managers/shapeHierarchyManager.d.ts +55 -0
  34. package/_vendor/canvas-core/editor/managers/shapeOrder.d.ts +14 -0
  35. package/_vendor/canvas-core/editor/managers/shapeReparenting.d.ts +6 -0
  36. package/_vendor/canvas-core/editor/managers/shortcutManager.d.ts +56 -0
  37. package/_vendor/canvas-core/editor/managers/sideEffectManager.d.ts +23 -0
  38. package/_vendor/canvas-core/editor/managers/snapCalculations.d.ts +40 -0
  39. package/_vendor/canvas-core/editor/managers/snapGeometry.d.ts +26 -0
  40. package/_vendor/canvas-core/editor/managers/snapIndicators.d.ts +22 -0
  41. package/_vendor/canvas-core/editor/managers/snapManager.d.ts +29 -0
  42. package/_vendor/canvas-core/editor/managers/snapSnapshotBuilder.d.ts +22 -0
  43. package/_vendor/canvas-core/editor/managers/snapTypes.d.ts +98 -0
  44. package/_vendor/canvas-core/editor/managers/spatialIndexManager.d.ts +30 -0
  45. package/_vendor/canvas-core/editor/managers/toolManager.d.ts +24 -0
  46. package/_vendor/canvas-core/editor/queries/shapeTransforms.d.ts +27 -0
  47. package/_vendor/canvas-core/editor/renderWindow.d.ts +30 -0
  48. package/_vendor/canvas-core/editor/resizeGeometry.d.ts +97 -0
  49. package/_vendor/canvas-core/editor/selection.d.ts +231 -0
  50. package/_vendor/canvas-core/editor/selectionHandleInteractions.d.ts +11 -0
  51. package/_vendor/canvas-core/editor/selectionOverlay.d.ts +33 -0
  52. package/_vendor/canvas-core/editor/stateNode.d.ts +31 -0
  53. package/_vendor/canvas-core/exports/integrity.d.ts +32 -0
  54. package/_vendor/canvas-core/exports/svg.d.ts +52 -0
  55. package/_vendor/canvas-core/geometry/box.d.ts +19 -0
  56. package/_vendor/canvas-core/geometry/ellipse2d.d.ts +16 -0
  57. package/_vendor/canvas-core/geometry/geometry2d.d.ts +15 -0
  58. package/_vendor/canvas-core/geometry/index.d.ts +8 -0
  59. package/_vendor/canvas-core/geometry/mat.d.ts +28 -0
  60. package/_vendor/canvas-core/geometry/polyline2d.d.ts +14 -0
  61. package/_vendor/canvas-core/geometry/rectangle2d.d.ts +16 -0
  62. package/_vendor/canvas-core/geometry/segments.d.ts +5 -0
  63. package/_vendor/canvas-core/geometry/vec.d.ts +37 -0
  64. package/_vendor/canvas-core/index.d.ts +59 -0
  65. package/_vendor/canvas-core/plugins/editorPlugin.d.ts +28 -0
  66. package/_vendor/canvas-core/plugins/index.d.ts +1 -0
  67. package/_vendor/canvas-core/reactivity.d.ts +4 -0
  68. package/_vendor/canvas-core/schema/records.d.ts +112 -0
  69. package/_vendor/canvas-core/schema/snapshotSupport.d.ts +43 -0
  70. package/_vendor/canvas-core/schema/snapshots.d.ts +31 -0
  71. package/_vendor/canvas-core/shapes/capabilities.d.ts +25 -0
  72. package/_vendor/canvas-core/shapes/colors.d.ts +26 -0
  73. package/_vendor/canvas-core/shapes/shapeUtil.d.ts +146 -0
  74. package/_vendor/canvas-core/shapes/shapeUtilRegistry.d.ts +9 -0
  75. package/_vendor/canvas-core/shapes/types.d.ts +2 -0
  76. package/_vendor/canvas-core/surfaces/actions.d.ts +35 -0
  77. package/_vendor/canvas-core/surfaces/contextMenu.d.ts +64 -0
  78. package/_vendor/canvas-core/surfaces/toolbar.d.ts +96 -0
  79. package/_vendor/canvas-core/tools/hand/handTool.d.ts +5 -0
  80. package/_vendor/canvas-core/tools/index.d.ts +2 -0
  81. package/_vendor/canvas-core/tools/select/selectContainment.d.ts +12 -0
  82. package/_vendor/canvas-core/tools/select/selectTool.d.ts +5 -0
  83. package/_vendor/canvas-core/tools/select/selectToolHelpers.d.ts +161 -0
  84. package/_vendor/canvas-core/tools/select/states/brushingState.d.ts +19 -0
  85. package/_vendor/canvas-core/tools/select/states/draggingSelectionHandleInteractionState.d.ts +15 -0
  86. package/_vendor/canvas-core/tools/select/states/idleState.d.ts +8 -0
  87. package/_vendor/canvas-core/tools/select/states/index.d.ts +11 -0
  88. package/_vendor/canvas-core/tools/select/states/pointingCanvasState.d.ts +11 -0
  89. package/_vendor/canvas-core/tools/select/states/pointingResizeHandleState.d.ts +10 -0
  90. package/_vendor/canvas-core/tools/select/states/pointingRotateHandleState.d.ts +10 -0
  91. package/_vendor/canvas-core/tools/select/states/pointingSelectionHandleInteractionState.d.ts +10 -0
  92. package/_vendor/canvas-core/tools/select/states/pointingShapeState.d.ts +12 -0
  93. package/_vendor/canvas-core/tools/select/states/resizingState.d.ts +16 -0
  94. package/_vendor/canvas-core/tools/select/states/rotatingState.d.ts +14 -0
  95. package/_vendor/canvas-core/tools/select/states/selectStateNode.d.ts +60 -0
  96. package/_vendor/canvas-core/tools/select/states/translatingState.d.ts +17 -0
  97. package/_vendor/canvas-react/components/CanvasView.d.ts +14 -0
  98. package/_vendor/canvas-react/components/OverlayLayer.d.ts +1 -0
  99. package/_vendor/canvas-react/components/PageSpace.d.ts +6 -0
  100. package/_vendor/canvas-react/components/ShapeLayer.d.ts +4 -0
  101. package/_vendor/canvas-react/components/index.d.ts +2 -0
  102. package/_vendor/canvas-react/components/overlays/BindingGuide.d.ts +24 -0
  103. package/_vendor/canvas-react/components/overlays/BindingPreviewOverlay.d.ts +1 -0
  104. package/_vendor/canvas-react/components/overlays/BrushBoxOverlay.d.ts +1 -0
  105. package/_vendor/canvas-react/components/overlays/OverlaySvgRoot.d.ts +1 -0
  106. package/_vendor/canvas-react/components/overlays/SelectionFrameOverlay.d.ts +1 -0
  107. package/_vendor/canvas-react/components/overlays/SelectionHandlesOverlay.d.ts +1 -0
  108. package/_vendor/canvas-react/components/overlays/SelectionOverlaySvg.d.ts +1 -0
  109. package/_vendor/canvas-react/components/overlays/SelectionPathOverlay.d.ts +1 -0
  110. package/_vendor/canvas-react/components/overlays/ShapeOutlineOverlay.d.ts +8 -0
  111. package/_vendor/canvas-react/components/overlays/SnapIndicatorsOverlay.d.ts +1 -0
  112. package/_vendor/canvas-react/components/useCanvasDomEvents.d.ts +21 -0
  113. package/_vendor/canvas-react/dom.d.ts +10 -0
  114. package/_vendor/canvas-react/hooks/useEditor.d.ts +3 -0
  115. package/_vendor/canvas-react/hooks/useValue.d.ts +2 -0
  116. package/_vendor/canvas-react/host/canvasOverlayRegistryContext.d.ts +3 -0
  117. package/_vendor/canvas-react/host/canvasPlugin.d.ts +73 -0
  118. package/_vendor/canvas-react/host/canvasRendererRegistryContext.d.ts +3 -0
  119. package/_vendor/canvas-react/host/contextMenuRegistry.d.ts +12 -0
  120. package/_vendor/canvas-react/host/domEventGuards.d.ts +11 -0
  121. package/_vendor/canvas-react/host/extension.d.ts +37 -0
  122. package/_vendor/canvas-react/host/index.d.ts +13 -0
  123. package/_vendor/canvas-react/host/overlayRegistry.d.ts +18 -0
  124. package/_vendor/canvas-react/host/pluginHost.d.ts +2 -0
  125. package/_vendor/canvas-react/host/pluginHostManifest.d.ts +2 -0
  126. package/_vendor/canvas-react/host/pluginHostRuntime.d.ts +3 -0
  127. package/_vendor/canvas-react/host/pluginHostTypes.d.ts +102 -0
  128. package/_vendor/canvas-react/host/pluginHostValidation.d.ts +11 -0
  129. package/_vendor/canvas-react/host/rendererRegistry.d.ts +12 -0
  130. package/_vendor/canvas-react/host/toolbarRegistry.d.ts +24 -0
  131. package/_vendor/canvas-react/index.d.ts +4 -0
  132. package/_vendor/plugin-arrow/arrowBindingAnchors.d.ts +5 -0
  133. package/_vendor/plugin-arrow/arrowBindingGeometry.d.ts +28 -0
  134. package/_vendor/plugin-arrow/arrowBindingUtil.d.ts +27 -0
  135. package/_vendor/plugin-arrow/arrowGeometry.d.ts +74 -0
  136. package/_vendor/plugin-arrow/arrowShapeUtil.d.ts +21 -0
  137. package/_vendor/plugin-arrow/arrowTerminalBindingResolver.d.ts +20 -0
  138. package/_vendor/plugin-arrow/arrowTerminalCommands.d.ts +12 -0
  139. package/_vendor/plugin-arrow/arrowTool.d.ts +4 -0
  140. package/_vendor/plugin-arrow/canvas.d.ts +2 -0
  141. package/_vendor/plugin-arrow/editor.d.ts +7 -0
  142. package/_vendor/plugin-arrow/feature.d.ts +3 -0
  143. package/_vendor/plugin-arrow/index.d.ts +12 -0
  144. package/_vendor/plugin-arrow/selectionHandleInteractions.d.ts +3 -0
  145. package/_vendor/plugin-arrow/types.d.ts +31 -0
  146. package/_vendor/plugin-draw/DrawShapeRenderer.d.ts +10 -0
  147. package/_vendor/plugin-draw/canvas.d.ts +2 -0
  148. package/_vendor/plugin-draw/drawGeometry.d.ts +45 -0
  149. package/_vendor/plugin-draw/drawHitTest.d.ts +11 -0
  150. package/_vendor/plugin-draw/drawInterpolation.d.ts +5 -0
  151. package/_vendor/plugin-draw/drawPath.d.ts +37 -0
  152. package/_vendor/plugin-draw/drawSegments.d.ts +11 -0
  153. package/_vendor/plugin-draw/drawSelectionTransform.d.ts +18 -0
  154. package/_vendor/plugin-draw/drawShapeGeometry.d.ts +33 -0
  155. package/_vendor/plugin-draw/drawShapeUtil.d.ts +21 -0
  156. package/_vendor/plugin-draw/drawStrokeGeometry.d.ts +17 -0
  157. package/_vendor/plugin-draw/drawTool.d.ts +6 -0
  158. package/_vendor/plugin-draw/editor.d.ts +7 -0
  159. package/_vendor/plugin-draw/feature.d.ts +3 -0
  160. package/_vendor/plugin-draw/index.d.ts +13 -0
  161. package/_vendor/plugin-draw/types.d.ts +23 -0
  162. package/_vendor/plugin-eraser/canvas.d.ts +2 -0
  163. package/_vendor/plugin-eraser/editor.d.ts +2 -0
  164. package/_vendor/plugin-eraser/eraserTool.d.ts +5 -0
  165. package/_vendor/plugin-eraser/feature.d.ts +3 -0
  166. package/_vendor/plugin-eraser/{index.ts → index.d.ts} +2 -2
  167. package/_vendor/plugin-frame/canvas.d.ts +9 -0
  168. package/_vendor/plugin-frame/editor.d.ts +7 -0
  169. package/_vendor/plugin-frame/feature.d.ts +3 -0
  170. package/_vendor/plugin-frame/frameShapeUtil.d.ts +23 -0
  171. package/_vendor/plugin-frame/frameTool.d.ts +6 -0
  172. package/_vendor/plugin-frame/index.d.ts +6 -0
  173. package/_vendor/plugin-geo/canvas.d.ts +13 -0
  174. package/_vendor/plugin-geo/editor.d.ts +7 -0
  175. package/_vendor/plugin-geo/feature.d.ts +3 -0
  176. package/_vendor/plugin-geo/geoGeometry.d.ts +8 -0
  177. package/_vendor/plugin-geo/geoShapeUtil.d.ts +13 -0
  178. package/_vendor/plugin-geo/geoTools.d.ts +26 -0
  179. package/_vendor/plugin-geo/index.d.ts +7 -0
  180. package/_vendor/plugin-geo/types.d.ts +17 -0
  181. package/_vendor/plugin-group/canvas.d.ts +10 -0
  182. package/_vendor/plugin-group/editor.d.ts +7 -0
  183. package/_vendor/plugin-group/feature.d.ts +3 -0
  184. package/_vendor/plugin-group/groupShapeUtil.d.ts +15 -0
  185. package/_vendor/plugin-group/index.d.ts +5 -0
  186. package/_vendor/plugin-image/canvas.d.ts +2 -0
  187. package/_vendor/plugin-image/crop.d.ts +112 -0
  188. package/_vendor/plugin-image/cropInteractions.d.ts +3 -0
  189. package/_vendor/plugin-image/cropSession.d.ts +4 -0
  190. package/_vendor/plugin-image/editor.d.ts +16 -0
  191. package/_vendor/plugin-image/feature.d.ts +3 -0
  192. package/_vendor/plugin-image/imageShapeUtil.d.ts +11 -0
  193. package/_vendor/plugin-image/index.d.ts +8 -0
  194. package/_vendor/plugin-image/types.d.ts +37 -0
  195. package/_vendor/plugin-laser/canvas.d.ts +2 -0
  196. package/_vendor/plugin-laser/editor.d.ts +2 -0
  197. package/_vendor/plugin-laser/feature.d.ts +3 -0
  198. package/_vendor/plugin-laser/{index.ts → index.d.ts} +2 -2
  199. package/_vendor/plugin-laser/laserTool.d.ts +4 -0
  200. package/_vendor/plugin-text/arrowLabelBindingUtil.d.ts +42 -0
  201. package/_vendor/plugin-text/canvas.d.ts +2 -0
  202. package/_vendor/plugin-text/editor.d.ts +2 -0
  203. package/_vendor/plugin-text/feature.d.ts +3 -0
  204. package/_vendor/plugin-text/geoLabelBindingUtil.d.ts +45 -0
  205. package/_vendor/plugin-text/host/RichTextEditingBox.d.ts +5 -0
  206. package/_vendor/plugin-text/host/RichTextToolbar.d.ts +8 -0
  207. package/_vendor/plugin-text/host/TiptapTextEditor.d.ts +24 -0
  208. package/_vendor/plugin-text/host/richTextBubbleMenuPositionSync.d.ts +7 -0
  209. package/_vendor/plugin-text/host/richTextRendering.d.ts +3 -0
  210. package/_vendor/plugin-text/host/textDomSelection.d.ts +7 -0
  211. package/_vendor/plugin-text/host/textEditingBoxStyle.d.ts +3 -0
  212. package/_vendor/plugin-text/host/textEntryFocus.d.ts +22 -0
  213. package/_vendor/plugin-text/host/textFontLoader.d.ts +2 -0
  214. package/_vendor/plugin-text/host/textMeasurement.d.ts +12 -0
  215. package/_vendor/plugin-text/host/textMeasurementSync.d.ts +10 -0
  216. package/_vendor/plugin-text/host/textRangeSelection.d.ts +14 -0
  217. package/_vendor/plugin-text/host/textShapeRendererRuntime.d.ts +8 -0
  218. package/_vendor/plugin-text/host/textShapeSync.d.ts +17 -0
  219. package/_vendor/plugin-text/host/tiptapTextEditorController.d.ts +33 -0
  220. package/_vendor/plugin-text/index.d.ts +4 -0
  221. package/_vendor/plugin-text/richTextUtils.d.ts +18 -0
  222. package/_vendor/plugin-text/textInteractions.d.ts +2 -0
  223. package/_vendor/plugin-text/textLabelHelpers.d.ts +44 -0
  224. package/_vendor/plugin-text/textShapeHelpers.d.ts +21 -0
  225. package/_vendor/plugin-text/textShapeSvgExporter.d.ts +6 -0
  226. package/_vendor/plugin-text/textShapeUtil.d.ts +19 -0
  227. package/_vendor/plugin-text/textStyle.d.ts +9 -0
  228. package/_vendor/plugin-text/textTool.d.ts +4 -0
  229. package/_vendor/plugin-text/textTypes.d.ts +28 -0
  230. package/_vendor/signals/atom.d.ts +9 -0
  231. package/_vendor/signals/computed.d.ts +11 -0
  232. package/_vendor/signals/core.d.ts +17 -0
  233. package/_vendor/signals/effect.d.ts +29 -0
  234. package/_vendor/signals/types.d.ts +15 -0
  235. package/_vendor/store/diff.d.ts +9 -0
  236. package/_vendor/store/history.d.ts +37 -0
  237. package/_vendor/store/index.d.ts +5 -0
  238. package/_vendor/store/store.d.ts +32 -0
  239. package/_vendor/store/types.d.ts +27 -0
  240. package/browser/localSnapshotRestore.d.ts +13 -0
  241. package/browser/persistence.d.ts +46 -0
  242. package/builtins/controller/createBuiltInCanvasController.d.ts +16 -0
  243. package/builtins/controller/layerController.d.ts +9 -0
  244. package/builtins/controller/shapeCreationController.d.ts +74 -0
  245. package/builtins/extensions.d.ts +15 -0
  246. package/builtins/index.d.ts +5 -0
  247. package/chrome/CanvasKitFloatingToolbarLayer.d.ts +6 -0
  248. package/chrome/FloatingSelectionToolbarPageSpace.d.ts +9 -0
  249. package/chrome/bindings/useCanvasKitChromeControls.d.ts +27 -0
  250. package/chrome/bindings/useContextMenuSurface.d.ts +12 -0
  251. package/chrome/bindings/useSvgExport.d.ts +15 -0
  252. package/chrome/bindings/useToolbarSurfaces.d.ts +26 -0
  253. package/chrome/types.d.ts +66 -0
  254. package/chrome/useCanvasKitChromeContext.d.ts +19 -0
  255. package/controller/canvasKitController.d.ts +36 -0
  256. package/core/controller/canvasProductController.d.ts +114 -0
  257. package/core/controller/featureControllerRegistry.d.ts +12 -0
  258. package/core/controller/index.d.ts +4 -0
  259. package/core/controller/productLayerTree.d.ts +10 -0
  260. package/core/features/actions/canvasActionContext.d.ts +15 -0
  261. package/core/features/actions/canvasActions.d.ts +26 -0
  262. package/core/features/clipboard/clipboardContextMenuContributions.d.ts +2 -0
  263. package/core/features/clipboard/clipboardContribution.d.ts +19 -0
  264. package/core/features/clipboard/clipboardService.d.ts +10 -0
  265. package/core/features/context-menu/contextMenuActions.d.ts +12 -0
  266. package/core/features/context-menu/contextMenuContext.d.ts +6 -0
  267. package/core/features/context-menu/contextMenuContribution.d.ts +4 -0
  268. package/core/features/context-menu/viewContextMenuContributions.d.ts +2 -0
  269. package/core/features/export/svgExport.d.ts +33 -0
  270. package/core/features/hostActionIds.d.ts +1 -0
  271. package/core/features/toolbar/selectionContextMenuContributions.d.ts +2 -0
  272. package/core/features/toolbar/toolContextMenuContributions.d.ts +2 -0
  273. package/core/features/toolbar/toolbarContribution.d.ts +4 -0
  274. package/core/features/toolbar/toolbarLabels.d.ts +8 -0
  275. package/core/index.d.ts +23 -0
  276. package/core/runtime/productAssets.d.ts +18 -0
  277. package/core/runtime/productContributions.d.ts +9 -0
  278. package/core/runtime/productDefinition.d.ts +32 -0
  279. package/core/runtime/productEditor.d.ts +3 -0
  280. package/core/runtime/productHost.d.ts +17 -0
  281. package/core/runtime/productServices.d.ts +30 -0
  282. package/features/image/ImageImportController.d.ts +9 -0
  283. package/features/image/imageAssetService.d.ts +7 -0
  284. package/features/image/imageBlobStore.d.ts +25 -0
  285. package/features/image/imageFileHelpers.d.ts +35 -0
  286. package/features/image/imageHostActions.d.ts +36 -0
  287. package/features/image/imageHostExtension.d.ts +5 -0
  288. package/features/image/imageProductController.d.ts +22 -0
  289. package/features/image/imageProductToolbarActions.d.ts +2 -0
  290. package/features/image/imageToolbarHostBridge.d.ts +14 -0
  291. package/features/image/index.d.ts +15 -0
  292. package/features/image/svgImageAssetInliner.d.ts +3 -0
  293. package/features/image/useImageImport.d.ts +17 -0
  294. package/index.css +1 -2
  295. package/index.d.ts +12 -15
  296. package/index.mjs +66 -1
  297. package/package.json +1 -11
  298. package/product/canvasKitProduct.d.ts +59 -0
  299. package/react/CanvasKitPersistenceNotice.d.ts +4 -0
  300. package/react/CanvasKitRoot.d.ts +5 -0
  301. package/react/useCanvasKitController.d.ts +5 -0
  302. package/react/useCanvasKitKeyboardShortcuts.d.ts +6 -0
  303. package/react/useCanvasKitRuntime.d.ts +4 -0
  304. package/react/useCanvasKitStartup.d.ts +9 -0
  305. package/runtime/canvasKitHostExtensions.d.ts +19 -0
  306. package/runtime/canvasKitRuntime.d.ts +19 -0
  307. package/runtime/canvasKitRuntimeInitializer.d.ts +11 -0
  308. package/_vendor/canvas-core/bindings/BindingUtil.ts +0 -92
  309. package/_vendor/canvas-core/bindings/BindingUtilRegistry.ts +0 -22
  310. package/_vendor/canvas-core/bindings/arrow/arrowBindingHelpers.ts +0 -52
  311. package/_vendor/canvas-core/contextMenu.ts +0 -85
  312. package/_vendor/canvas-core/editor/Editor.ts +0 -2614
  313. package/_vendor/canvas-core/editor/HistoryManager.ts +0 -83
  314. package/_vendor/canvas-core/editor/StateNode.ts +0 -162
  315. package/_vendor/canvas-core/editor/camera.ts +0 -6
  316. package/_vendor/canvas-core/editor/clipboard.ts +0 -478
  317. package/_vendor/canvas-core/editor/commands.ts +0 -833
  318. package/_vendor/canvas-core/editor/edgeScroll.ts +0 -37
  319. package/_vendor/canvas-core/editor/editorComputedHelpers.ts +0 -257
  320. package/_vendor/canvas-core/editor/editorSelectionTransforms.ts +0 -116
  321. package/_vendor/canvas-core/editor/events.ts +0 -93
  322. package/_vendor/canvas-core/editor/index.ts +0 -12
  323. package/_vendor/canvas-core/editor/interactions.ts +0 -101
  324. package/_vendor/canvas-core/editor/internal.ts +0 -22
  325. package/_vendor/canvas-core/editor/managers/BindingManager.ts +0 -262
  326. package/_vendor/canvas-core/editor/managers/CameraManager.ts +0 -147
  327. package/_vendor/canvas-core/editor/managers/ClipboardManager.ts +0 -32
  328. package/_vendor/canvas-core/editor/managers/DocumentSnapshotManager.ts +0 -256
  329. package/_vendor/canvas-core/editor/managers/InputsManager.ts +0 -319
  330. package/_vendor/canvas-core/editor/managers/InteractionTransientManager.ts +0 -218
  331. package/_vendor/canvas-core/editor/managers/QueryManager.ts +0 -837
  332. package/_vendor/canvas-core/editor/managers/RenderWindowManager.ts +0 -347
  333. package/_vendor/canvas-core/editor/managers/SelectionLayoutManager.ts +0 -196
  334. package/_vendor/canvas-core/editor/managers/SelectionManager.ts +0 -98
  335. package/_vendor/canvas-core/editor/managers/SelectionOverlayManager.ts +0 -308
  336. package/_vendor/canvas-core/editor/managers/ShapeEditingManager.ts +0 -226
  337. package/_vendor/canvas-core/editor/managers/ShapeGeometryManager.ts +0 -162
  338. package/_vendor/canvas-core/editor/managers/ShapeHierarchyManager.ts +0 -797
  339. package/_vendor/canvas-core/editor/managers/SideEffectManager.ts +0 -83
  340. package/_vendor/canvas-core/editor/managers/SnapManager.ts +0 -433
  341. package/_vendor/canvas-core/editor/managers/SnapSnapshotBuilder.ts +0 -430
  342. package/_vendor/canvas-core/editor/managers/SpatialIndexManager.ts +0 -354
  343. package/_vendor/canvas-core/editor/managers/ToolManager.ts +0 -81
  344. package/_vendor/canvas-core/editor/managers/queryState.ts +0 -583
  345. package/_vendor/canvas-core/editor/managers/selectionGeometry.ts +0 -287
  346. package/_vendor/canvas-core/editor/managers/shapeOrder.ts +0 -350
  347. package/_vendor/canvas-core/editor/managers/shapeReparenting.ts +0 -160
  348. package/_vendor/canvas-core/editor/managers/snapCalculations.ts +0 -412
  349. package/_vendor/canvas-core/editor/managers/snapGeometry.ts +0 -202
  350. package/_vendor/canvas-core/editor/managers/snapIndicators.ts +0 -403
  351. package/_vendor/canvas-core/editor/managers/snapTypes.ts +0 -122
  352. package/_vendor/canvas-core/editor/queries/shapeTransforms.ts +0 -171
  353. package/_vendor/canvas-core/editor/renderWindow.ts +0 -439
  354. package/_vendor/canvas-core/editor/resizeGeometry.ts +0 -654
  355. package/_vendor/canvas-core/editor/selection.ts +0 -489
  356. package/_vendor/canvas-core/editor/selectionHandleInteractions.ts +0 -43
  357. package/_vendor/canvas-core/editor/selectionOverlay.ts +0 -567
  358. package/_vendor/canvas-core/exports/integrity.ts +0 -174
  359. package/_vendor/canvas-core/exports/svg.ts +0 -494
  360. package/_vendor/canvas-core/geometry/Box.ts +0 -80
  361. package/_vendor/canvas-core/geometry/Ellipse2d.ts +0 -67
  362. package/_vendor/canvas-core/geometry/Geometry2d.ts +0 -52
  363. package/_vendor/canvas-core/geometry/Mat.ts +0 -92
  364. package/_vendor/canvas-core/geometry/Polyline2d.ts +0 -63
  365. package/_vendor/canvas-core/geometry/Rectangle2d.ts +0 -64
  366. package/_vendor/canvas-core/geometry/Vec.ts +0 -123
  367. package/_vendor/canvas-core/geometry/index.ts +0 -13
  368. package/_vendor/canvas-core/geometry/segments.ts +0 -65
  369. package/_vendor/canvas-core/index.ts +0 -391
  370. package/_vendor/canvas-core/plugins/index.ts +0 -5
  371. package/_vendor/canvas-core/plugins/types.ts +0 -53
  372. package/_vendor/canvas-core/reactivity.ts +0 -16
  373. package/_vendor/canvas-core/schema/records.ts +0 -221
  374. package/_vendor/canvas-core/schema/snapshots.ts +0 -527
  375. package/_vendor/canvas-core/shapes/ShapeUtil.ts +0 -516
  376. package/_vendor/canvas-core/shapes/ShapeUtilRegistry.ts +0 -26
  377. package/_vendor/canvas-core/shapes/capabilities.ts +0 -67
  378. package/_vendor/canvas-core/shapes/types.ts +0 -20
  379. package/_vendor/canvas-core/toolbar.ts +0 -148
  380. package/_vendor/canvas-core/tools/hand/HandTool.ts +0 -75
  381. package/_vendor/canvas-core/tools/index.ts +0 -2
  382. package/_vendor/canvas-core/tools/select/SelectTool.ts +0 -33
  383. package/_vendor/canvas-core/tools/select/selectContainment.ts +0 -104
  384. package/_vendor/canvas-core/tools/select/selectToolHelpers.ts +0 -801
  385. package/_vendor/canvas-core/tools/select/states/BrushingState.ts +0 -145
  386. package/_vendor/canvas-core/tools/select/states/DraggingSelectionHandleInteractionState.ts +0 -116
  387. package/_vendor/canvas-core/tools/select/states/IdleState.ts +0 -159
  388. package/_vendor/canvas-core/tools/select/states/PointingCanvasState.ts +0 -41
  389. package/_vendor/canvas-core/tools/select/states/PointingResizeHandleState.ts +0 -78
  390. package/_vendor/canvas-core/tools/select/states/PointingRotateHandleState.ts +0 -64
  391. package/_vendor/canvas-core/tools/select/states/PointingSelectionHandleInteractionState.ts +0 -34
  392. package/_vendor/canvas-core/tools/select/states/PointingShapeState.ts +0 -140
  393. package/_vendor/canvas-core/tools/select/states/ResizingState.ts +0 -171
  394. package/_vendor/canvas-core/tools/select/states/RotatingState.ts +0 -124
  395. package/_vendor/canvas-core/tools/select/states/SelectStateNode.ts +0 -128
  396. package/_vendor/canvas-core/tools/select/states/TranslatingState.ts +0 -139
  397. package/_vendor/canvas-core/tools/select/states/index.ts +0 -11
  398. package/_vendor/canvas-plugin-api/feature.ts +0 -204
  399. package/_vendor/canvas-plugin-api/index.ts +0 -142
  400. package/_vendor/canvas-product-react/api/apiRegistry.ts +0 -35
  401. package/_vendor/canvas-product-react/api/canvasProductApi.ts +0 -422
  402. package/_vendor/canvas-product-react/api/index.ts +0 -31
  403. package/_vendor/canvas-product-react/capabilities/clipboard/clipboardService.ts +0 -36
  404. package/_vendor/canvas-product-react/capabilities/clipboard/systemClipboard.ts +0 -245
  405. package/_vendor/canvas-product-react/capabilities/context-menu/systemContextMenu.ts +0 -396
  406. package/_vendor/canvas-product-react/capabilities/context-menu/useContextMenuSurface.ts +0 -59
  407. package/_vendor/canvas-product-react/capabilities/export/useSvgExport.ts +0 -156
  408. package/_vendor/canvas-product-react/capabilities/history/useHistoryControls.ts +0 -23
  409. package/_vendor/canvas-product-react/capabilities/pages/usePageControls.ts +0 -41
  410. package/_vendor/canvas-product-react/capabilities/toolbar/systemToolbar.ts +0 -490
  411. package/_vendor/canvas-product-react/capabilities/toolbar/useToolbarSurfaces.ts +0 -92
  412. package/_vendor/canvas-product-react/capabilities/zoom/useZoomControls.ts +0 -27
  413. package/_vendor/canvas-product-react/index.ts +0 -84
  414. package/_vendor/canvas-product-react/persistence/index.ts +0 -18
  415. package/_vendor/canvas-product-react/persistence/localSnapshotPersistence.ts +0 -294
  416. package/_vendor/canvas-product-react/runtime/CanvasProductRoot.tsx +0 -250
  417. package/_vendor/canvas-product-react/runtime/productDefinition.ts +0 -72
  418. package/_vendor/canvas-product-react/runtime/productServices.ts +0 -96
  419. package/_vendor/canvas-react/components/CanvasView.tsx +0 -796
  420. package/_vendor/canvas-react/components/OverlayLayer.tsx +0 -879
  421. package/_vendor/canvas-react/components/PageSpace.tsx +0 -34
  422. package/_vendor/canvas-react/components/ShapeLayer.tsx +0 -428
  423. package/_vendor/canvas-react/components/index.ts +0 -4
  424. package/_vendor/canvas-react/hooks/useEditor.ts +0 -11
  425. package/_vendor/canvas-react/hooks/useValue.ts +0 -14
  426. package/_vendor/canvas-react/host/CanvasRendererRegistryContext.tsx +0 -14
  427. package/_vendor/canvas-react/host/contextMenuRegistry.ts +0 -61
  428. package/_vendor/canvas-react/host/domEventGuards.ts +0 -61
  429. package/_vendor/canvas-react/host/index.ts +0 -38
  430. package/_vendor/canvas-react/host/pluginHost.ts +0 -635
  431. package/_vendor/canvas-react/host/rendererRegistry.tsx +0 -58
  432. package/_vendor/canvas-react/host/toolbarRegistry.ts +0 -100
  433. package/_vendor/canvas-react/index.ts +0 -3
  434. package/_vendor/plugin-arrow/ArrowBindingUtil.ts +0 -239
  435. package/_vendor/plugin-arrow/ArrowShapeUtil.ts +0 -311
  436. package/_vendor/plugin-arrow/ArrowTool.ts +0 -208
  437. package/_vendor/plugin-arrow/arrowGeometry.ts +0 -441
  438. package/_vendor/plugin-arrow/arrowTerminalBindingResolver.ts +0 -253
  439. package/_vendor/plugin-arrow/arrowTerminalCommands.ts +0 -230
  440. package/_vendor/plugin-arrow/canvas.tsx +0 -92
  441. package/_vendor/plugin-arrow/core.ts +0 -409
  442. package/_vendor/plugin-arrow/feature.ts +0 -20
  443. package/_vendor/plugin-arrow/index.ts +0 -28
  444. package/_vendor/plugin-arrow/selectionHandleInteractions.ts +0 -154
  445. package/_vendor/plugin-arrow/types.ts +0 -63
  446. package/_vendor/plugin-draw/DrawShapeRenderer.tsx +0 -60
  447. package/_vendor/plugin-draw/DrawShapeUtil.ts +0 -372
  448. package/_vendor/plugin-draw/DrawTool.ts +0 -444
  449. package/_vendor/plugin-draw/canvas.tsx +0 -24
  450. package/_vendor/plugin-draw/core.ts +0 -515
  451. package/_vendor/plugin-draw/drawGeometry.ts +0 -491
  452. package/_vendor/plugin-draw/drawHitTest.ts +0 -271
  453. package/_vendor/plugin-draw/drawInterpolation.ts +0 -250
  454. package/_vendor/plugin-draw/drawPath.ts +0 -550
  455. package/_vendor/plugin-draw/drawSegments.ts +0 -106
  456. package/_vendor/plugin-draw/drawSelectionTransform.ts +0 -67
  457. package/_vendor/plugin-draw/drawShapeGeometry.ts +0 -307
  458. package/_vendor/plugin-draw/drawStrokeGeometry.ts +0 -454
  459. package/_vendor/plugin-draw/feature.ts +0 -20
  460. package/_vendor/plugin-draw/index.ts +0 -31
  461. package/_vendor/plugin-draw/types.ts +0 -36
  462. package/_vendor/plugin-eraser/EraserTool.ts +0 -297
  463. package/_vendor/plugin-eraser/canvas.tsx +0 -616
  464. package/_vendor/plugin-eraser/core.ts +0 -49
  465. package/_vendor/plugin-eraser/feature.ts +0 -20
  466. package/_vendor/plugin-frame/FrameShapeUtil.ts +0 -173
  467. package/_vendor/plugin-frame/FrameTool.ts +0 -225
  468. package/_vendor/plugin-frame/canvas.tsx +0 -75
  469. package/_vendor/plugin-frame/core.ts +0 -534
  470. package/_vendor/plugin-frame/feature.ts +0 -20
  471. package/_vendor/plugin-frame/index.ts +0 -6
  472. package/_vendor/plugin-geo/GeoShapeUtil.ts +0 -463
  473. package/_vendor/plugin-geo/GeoTools.ts +0 -247
  474. package/_vendor/plugin-geo/canvas.tsx +0 -90
  475. package/_vendor/plugin-geo/core.ts +0 -495
  476. package/_vendor/plugin-geo/feature.ts +0 -20
  477. package/_vendor/plugin-geo/index.ts +0 -7
  478. package/_vendor/plugin-geo/types.ts +0 -27
  479. package/_vendor/plugin-group/GroupShapeUtil.ts +0 -59
  480. package/_vendor/plugin-group/canvas.tsx +0 -59
  481. package/_vendor/plugin-group/core.ts +0 -40
  482. package/_vendor/plugin-group/feature.ts +0 -20
  483. package/_vendor/plugin-group/index.ts +0 -5
  484. package/_vendor/plugin-image/ImageShapeUtil.ts +0 -95
  485. package/_vendor/plugin-image/canvas.tsx +0 -212
  486. package/_vendor/plugin-image/core.ts +0 -542
  487. package/_vendor/plugin-image/crop.ts +0 -770
  488. package/_vendor/plugin-image/cropInteractions.ts +0 -350
  489. package/_vendor/plugin-image/cropSession.ts +0 -38
  490. package/_vendor/plugin-image/feature.ts +0 -20
  491. package/_vendor/plugin-image/index.ts +0 -29
  492. package/_vendor/plugin-image/types.ts +0 -55
  493. package/_vendor/plugin-image-product-react/ImageImportController.tsx +0 -143
  494. package/_vendor/plugin-image-product-react/imageAssetService.ts +0 -52
  495. package/_vendor/plugin-image-product-react/imageBlobStore.ts +0 -315
  496. package/_vendor/plugin-image-product-react/imageHostActions.ts +0 -438
  497. package/_vendor/plugin-image-product-react/imageProductApi.ts +0 -88
  498. package/_vendor/plugin-image-product-react/imageToolbarHostBridge.ts +0 -48
  499. package/_vendor/plugin-image-product-react/imageToolbarRuntime.ts +0 -21
  500. package/_vendor/plugin-image-product-react/index.ts +0 -60
  501. package/_vendor/plugin-image-product-react/snapshotGuards.ts +0 -33
  502. package/_vendor/plugin-image-product-react/svgImageAssetInliner.ts +0 -54
  503. package/_vendor/plugin-image-product-react/useImageImport.ts +0 -64
  504. package/_vendor/plugin-laser/LaserTool.ts +0 -154
  505. package/_vendor/plugin-laser/canvas.tsx +0 -645
  506. package/_vendor/plugin-laser/core.ts +0 -49
  507. package/_vendor/plugin-laser/feature.ts +0 -20
  508. package/_vendor/plugin-text/ArrowLabelBindingUtil.ts +0 -336
  509. package/_vendor/plugin-text/GeoLabelBindingUtil.ts +0 -391
  510. package/_vendor/plugin-text/TextShapeSvgExporter.ts +0 -101
  511. package/_vendor/plugin-text/TextShapeUtil.ts +0 -284
  512. package/_vendor/plugin-text/TextTool.ts +0 -228
  513. package/_vendor/plugin-text/canvas.tsx +0 -115
  514. package/_vendor/plugin-text/core.ts +0 -422
  515. package/_vendor/plugin-text/feature.ts +0 -20
  516. package/_vendor/plugin-text/host/RichTextEditingBox.tsx +0 -144
  517. package/_vendor/plugin-text/host/RichTextToolbar.tsx +0 -266
  518. package/_vendor/plugin-text/host/TiptapTextEditor.tsx +0 -191
  519. package/_vendor/plugin-text/host/richTextRendering.tsx +0 -49
  520. package/_vendor/plugin-text/host/textDomSelection.ts +0 -93
  521. package/_vendor/plugin-text/host/textEditingBoxStyle.ts +0 -36
  522. package/_vendor/plugin-text/host/textEntryFocus.ts +0 -307
  523. package/_vendor/plugin-text/host/textFontLoader.ts +0 -149
  524. package/_vendor/plugin-text/host/textMeasurement.ts +0 -258
  525. package/_vendor/plugin-text/host/textMeasurementSync.ts +0 -77
  526. package/_vendor/plugin-text/host/textRangeSelection.ts +0 -134
  527. package/_vendor/plugin-text/host/textShapeRendererRuntime.tsx +0 -89
  528. package/_vendor/plugin-text/host/textShapeSync.ts +0 -173
  529. package/_vendor/plugin-text/host/tiptapTextEditorController.ts +0 -148
  530. package/_vendor/plugin-text/index.ts +0 -18
  531. package/_vendor/plugin-text/richTextUtils.ts +0 -259
  532. package/_vendor/plugin-text/textInteractions.ts +0 -366
  533. package/_vendor/plugin-text/textLabelHelpers.ts +0 -235
  534. package/_vendor/plugin-text/textShapeHelpers.ts +0 -123
  535. package/_vendor/plugin-text/textStyle.ts +0 -96
  536. package/_vendor/plugin-text/textTypes.ts +0 -48
  537. package/_vendor/signals/atom.ts +0 -74
  538. package/_vendor/signals/computed.ts +0 -132
  539. package/_vendor/signals/core.ts +0 -130
  540. package/_vendor/signals/effect.ts +0 -117
  541. package/_vendor/signals/types.ts +0 -17
  542. package/_vendor/store/Store.ts +0 -171
  543. package/_vendor/store/diff.ts +0 -229
  544. package/_vendor/store/history.ts +0 -177
  545. package/_vendor/store/index.ts +0 -32
  546. package/_vendor/store/types.ts +0 -37
  547. package/api/canvasKitApi.d.ts +0 -29
  548. package/internal-modules.d.ts +0 -187
  549. package/product/Shell.d.ts +0 -19
  550. package/product/chromeContext.d.ts +0 -70
  551. package/product/createCanvasKitEditor.d.ts +0 -6
  552. package/product/index.d.ts +0 -7
  553. package/product/persistence.d.ts +0 -3
  554. package/product/product.d.ts +0 -22
  555. package/product/useCanvasClipboardShortcuts.d.ts +0 -6
  556. package/product-iyBbEPIs.mjs +0 -4
  557. package/product.mjs +0 -1
  558. package/standard/extensions.d.ts +0 -1
  559. package/standard/index.d.ts +0 -3
  560. package/standard/standardApi.d.ts +0 -91
  561. package/standard-BmrxwqpJ.mjs +0 -44
  562. package/standard.mjs +0 -1
  563. /package/_vendor/signals/{index.ts → index.d.ts} +0 -0
@@ -1,801 +0,0 @@
1
- import { Box } from "../../geometry/Box";
2
- import { Vec } from "../../geometry/Vec";
3
- import type { ShapeUpdate } from "../../editor/commands";
4
- import type { Editor } from "../../editor/Editor";
5
- import { getEdgeScrollDelta } from "../../editor/edgeScroll";
6
- import type { PointerEditorEvent, TickEditorEvent } from "../../editor/events";
7
- import {
8
- mapSelectionLocalBoundsBetweenBounds,
9
- rotateSelectionPagePoint,
10
- selectionLocalPointToPagePoint,
11
- } from "../../editor/selection";
12
- import {
13
- selectionResizeHandleMovesBottomEdge,
14
- selectionResizeHandleMovesLeftEdge,
15
- selectionResizeHandleMovesRightEdge,
16
- selectionResizeHandleMovesTopEdge,
17
- } from "../../editor/resizeGeometry";
18
- import type {
19
- SelectionResizeHandleId,
20
- SelectionResizePointShapeSnapshot,
21
- SelectionResizeShapeSnapshot,
22
- SelectionRotationTransform,
23
- SelectionRotatePointShapeSnapshot,
24
- SelectionRotateShapeSnapshot,
25
- } from "../../editor/selection";
26
- import type {
27
- HandleSnapSnapshot,
28
- ResizeSnapSnapshot,
29
- TranslateSnapSnapshot,
30
- } from "../../editor/managers/snapTypes";
31
- import type { SelectionHandleInteractionSession } from "../../editor/selectionHandleInteractions";
32
- import type { ShapeId, ShapeParentId, ShapeRecord } from "../../schema/records";
33
-
34
- export const DRAG_START_DISTANCE = 3;
35
- export const DRAG_START_DISTANCE_SQUARED = DRAG_START_DISTANCE * DRAG_START_DISTANCE;
36
- export const ROTATION_SNAP_STEP = (Math.PI / 180) * 15;
37
- export const ROTATION_SOFT_SNAP_STEP = Math.PI / 2;
38
- export const ROTATION_SOFT_SNAP_THRESHOLD = (Math.PI / 180) * 5;
39
- export const ROTATION_SOFT_SNAP_MAX_SCREEN_VELOCITY = 0.5;
40
- export const GROUP_CHILD_QUICK_SELECT_DURATION_MS = 250;
41
- export const TRANSLATE_SNAP_DISTANCE_SCREEN = 8;
42
- export const TRANSLATE_SNAP_MAX_SCREEN_VELOCITY = 0.5;
43
- export const RESIZE_SNAP_DISTANCE_SCREEN = 8;
44
- export const HANDLE_SNAP_DISTANCE_SCREEN = 8;
45
- export const TRANSLATE_HISTORY_MARK = "select.translate";
46
- export const RESIZE_HISTORY_MARK = "select.resize";
47
- export const ROTATE_HISTORY_MARK = "select.rotate";
48
-
49
- export type TranslateAxis = "x" | "y";
50
-
51
- export interface PointingCanvasInfo {
52
- originPagePoint: Vec;
53
- previousSelection: ShapeId[];
54
- additiveSelection: boolean;
55
- }
56
-
57
- export interface PointingShapeInfo {
58
- shapeId: ShapeId;
59
- translateTargetId: ShapeId;
60
- originPagePoint: Vec;
61
- originTimestamp: number;
62
- previousSelection: ShapeId[];
63
- additiveSelection: boolean;
64
- wasSelected: boolean;
65
- fromSelectionBounds: boolean;
66
- quickClickSelectionTargetId: ShapeId | null;
67
- }
68
-
69
- export interface TranslatingShapeSnapshot {
70
- id: ShapeId;
71
- x: number;
72
- y: number;
73
- }
74
-
75
- export interface TranslatingInfo {
76
- originPagePoint: Vec;
77
- previousSelection: ShapeId[];
78
- selectedShapeIds: ShapeId[];
79
- startBounds: Box | null;
80
- snapSnapshot: TranslateSnapSnapshot;
81
- snapRotation: number;
82
- selectedShapes: TranslatingShapeSnapshot[];
83
- updates: ShapeUpdate[];
84
- lockedAxis: TranslateAxis | null;
85
- lastDeltaX: number;
86
- lastDeltaY: number;
87
- }
88
-
89
- export interface BrushInfo {
90
- originPagePoint: Vec;
91
- previousSelection: ShapeId[];
92
- additiveSelection: boolean;
93
- }
94
-
95
- export interface PointingResizeHandleInfo {
96
- handleId: SelectionResizeHandleId;
97
- originPagePoint: Vec;
98
- cursorHandleOffset: Vec;
99
- previousSelection: ShapeId[];
100
- }
101
-
102
- export interface ResizingInfo extends PointingResizeHandleInfo {
103
- startBounds: Box;
104
- rotation: number;
105
- rotationCenter: Vec;
106
- aspectRatio: number;
107
- snapSnapshot: ResizeSnapSnapshot;
108
- shapes: SelectionResizeShapeSnapshot[];
109
- pointShapes: SelectionResizePointShapeSnapshot[];
110
- updates: ShapeUpdate[];
111
- aspectRatioLockOverride: boolean | null;
112
- lastPagePointX: number;
113
- lastPagePointY: number;
114
- lastShiftKey: boolean;
115
- lastAltKey: boolean;
116
- lastAccelKey: boolean;
117
- }
118
-
119
- export interface PointingRotateHandleInfo {
120
- originPagePoint: Vec;
121
- previousSelection: ShapeId[];
122
- }
123
-
124
- export interface RotatingInfo extends PointingRotateHandleInfo {
125
- center: Vec;
126
- startAngle: number;
127
- initialSelectionRotation: number;
128
- shapes: SelectionRotateShapeSnapshot[];
129
- pointShapes: SelectionRotatePointShapeSnapshot[];
130
- updates: ShapeUpdate[];
131
- lastPointerX: number;
132
- lastPointerY: number;
133
- lastShiftKey: boolean;
134
- lastAccelKey: boolean;
135
- }
136
-
137
- export interface PointingSelectionHandleInteractionInfo {
138
- originPagePoint: Vec;
139
- previousSelection: ShapeId[];
140
- session: SelectionHandleInteractionSession;
141
- snapSnapshot: HandleSnapSnapshot | null;
142
- }
143
-
144
- export interface DraggingSelectionHandleInteractionInfo
145
- extends PointingSelectionHandleInteractionInfo {
146
- lastPagePointX: number;
147
- lastPagePointY: number;
148
- lastAccelKey: boolean;
149
- }
150
-
151
- export interface SelectionDragInput {
152
- pagePoint: Vec;
153
- shiftKey: boolean;
154
- altKey: boolean;
155
- accelKey: boolean;
156
- ctrlKey: boolean;
157
- }
158
-
159
- export type EdgeScrollTickMode =
160
- | "always_apply"
161
- | "apply_after_scroll_or_without_screen_point"
162
- | "apply_after_scroll";
163
-
164
- export function getSelectionDragInputFromCurrentInputs(
165
- editor: Editor,
166
- ): SelectionDragInput | null {
167
- const inputs = editor.inputs.state.get();
168
- if (inputs.dragPhase !== "dragging" || !inputs.currentPagePoint) {
169
- return null;
170
- }
171
-
172
- return {
173
- pagePoint: inputs.currentPagePoint,
174
- shiftKey: inputs.shiftKey,
175
- altKey: inputs.altKey,
176
- accelKey: inputs.accelKey,
177
- ctrlKey: inputs.ctrlKey,
178
- };
179
- }
180
-
181
- export function getSelectionDragInputForTick(
182
- editor: Editor,
183
- event: TickEditorEvent,
184
- mode: EdgeScrollTickMode,
185
- ): SelectionDragInput | null {
186
- const inputs = editor.inputs.state.get();
187
- if (inputs.dragPhase !== "dragging" || !inputs.currentPagePoint) {
188
- return null;
189
- }
190
-
191
- let pagePoint = inputs.currentPagePoint;
192
-
193
- if (!inputs.currentScreenPoint) {
194
- return mode === "apply_after_scroll"
195
- ? null
196
- : {
197
- pagePoint,
198
- shiftKey: inputs.shiftKey,
199
- altKey: inputs.altKey,
200
- accelKey: inputs.accelKey,
201
- ctrlKey: inputs.ctrlKey,
202
- };
203
- }
204
-
205
- const edgeScrollDelta = getEdgeScrollDelta(
206
- inputs.currentScreenPoint,
207
- editor.viewportScreenSizeSignal.get(),
208
- event.elapsed,
209
- );
210
- const didScroll = edgeScrollDelta.x !== 0 || edgeScrollDelta.y !== 0;
211
- if (!didScroll && mode !== "always_apply") {
212
- return null;
213
- }
214
-
215
- if (didScroll) {
216
- editor.panCamera(edgeScrollDelta);
217
- pagePoint = editor.screenToPage(inputs.currentScreenPoint);
218
- }
219
-
220
- return {
221
- pagePoint,
222
- shiftKey: inputs.shiftKey,
223
- altKey: inputs.altKey,
224
- accelKey: inputs.accelKey,
225
- ctrlKey: inputs.ctrlKey,
226
- };
227
- }
228
-
229
- export function applySelectionDragFromCurrentInputs(
230
- editor: Editor,
231
- apply: (input: SelectionDragInput) => void,
232
- ): void {
233
- const input = getSelectionDragInputFromCurrentInputs(editor);
234
- if (input) {
235
- apply(input);
236
- }
237
- }
238
-
239
- export function createBrushBounds(origin: Vec, current: Vec): Box {
240
- const minX = Math.min(origin.x, current.x);
241
- const minY = Math.min(origin.y, current.y);
242
- const maxX = Math.max(origin.x, current.x);
243
- const maxY = Math.max(origin.y, current.y);
244
- return new Box(minX, minY, maxX - minX, maxY - minY);
245
- }
246
-
247
- export function hasExceededDragThreshold(origin: Vec, point: Vec): boolean {
248
- return origin.dist2(point) >= DRAG_START_DISTANCE_SQUARED;
249
- }
250
-
251
- export function arePagePointsApproximatelyEqual(
252
- left: Vec,
253
- right: Vec,
254
- ): boolean {
255
- return left.dist2(right) <= 1e-6;
256
- }
257
-
258
- export function toggleIds(base: ShapeId[], toggled: ShapeId[]): ShapeId[] {
259
- const next = new Set(base);
260
- for (const id of toggled) {
261
- if (next.has(id)) {
262
- next.delete(id);
263
- } else {
264
- next.add(id);
265
- }
266
- }
267
- return Array.from(next);
268
- }
269
-
270
- export function getOutermostSelectableShapeIds(
271
- editor: Editor,
272
- shapeIds: Iterable<ShapeId>,
273
- ): ShapeId[] {
274
- const ids: ShapeId[] = [];
275
- const seen = new Set<ShapeId>();
276
-
277
- for (const shapeId of shapeIds) {
278
- const selectableId = editor.getOutermostSelectableShapeId(shapeId);
279
- if (seen.has(selectableId)) {
280
- continue;
281
- }
282
- seen.add(selectableId);
283
- ids.push(selectableId);
284
- }
285
-
286
- return ids;
287
- }
288
-
289
- export function getSelectableShapeIdForHit(
290
- editor: Editor,
291
- shapeId: ShapeId,
292
- selectedShapeIds: readonly ShapeId[],
293
- ): ShapeId {
294
- const selectedShapeIdSet = new Set(selectedShapeIds);
295
- if (selectedShapeIdSet.has(shapeId)) {
296
- return shapeId;
297
- }
298
-
299
- const transformAncestorPath = getTransformDescendantAncestorPath(
300
- editor,
301
- shapeId,
302
- );
303
- for (const entry of transformAncestorPath) {
304
- if (selectedShapeIdSet.has(entry.ancestorId)) {
305
- return entry.childId;
306
- }
307
- }
308
-
309
- const nearestTransformAncestorId = transformAncestorPath[0]?.ancestorId;
310
- if (nearestTransformAncestorId) {
311
- if (
312
- selectedShapeIds.some(
313
- (selectedShapeId) =>
314
- getNearestTransformDescendantAncestorId(editor, selectedShapeId) ===
315
- nearestTransformAncestorId,
316
- )
317
- ) {
318
- return shapeId;
319
- }
320
- }
321
-
322
- return (
323
- transformAncestorPath[transformAncestorPath.length - 1]?.ancestorId ??
324
- shapeId
325
- );
326
- }
327
-
328
- export function getSelectedTransformAncestorIdForHit(
329
- editor: Editor,
330
- shapeId: ShapeId,
331
- selectedShapeIds: readonly ShapeId[],
332
- ): ShapeId | null {
333
- const selectedShapeIdSet = new Set(selectedShapeIds);
334
- for (const entry of getTransformDescendantAncestorPath(editor, shapeId)) {
335
- if (selectedShapeIdSet.has(entry.ancestorId)) {
336
- return entry.ancestorId;
337
- }
338
- }
339
- return null;
340
- }
341
-
342
- export interface TransformDescendantAncestorPathEntry {
343
- ancestorId: ShapeId;
344
- childId: ShapeId;
345
- }
346
-
347
- export function getNearestTransformDescendantAncestorId(
348
- editor: Editor,
349
- shapeId: ShapeId,
350
- ): ShapeId | null {
351
- return (
352
- getTransformDescendantAncestorPath(editor, shapeId)[0]?.ancestorId ?? null
353
- );
354
- }
355
-
356
- export function getTransformDescendantAncestorPath(
357
- editor: Editor,
358
- shapeId: ShapeId,
359
- ): TransformDescendantAncestorPathEntry[] {
360
- const path: TransformDescendantAncestorPathEntry[] = [];
361
- let shape = editor.getShape(shapeId);
362
- let childId = shapeId;
363
- const seen = new Set<ShapeId>([shapeId]);
364
-
365
- while (shape?.parentId.startsWith("shape:")) {
366
- const parentId = shape.parentId as ShapeId;
367
- if (seen.has(parentId)) {
368
- return path;
369
- }
370
- seen.add(parentId);
371
-
372
- const parent = editor.getShape(parentId);
373
- if (!parent) {
374
- return path;
375
- }
376
- if (editor.getShapeUtil(parent).shouldTransformDescendants(parent)) {
377
- path.push({ ancestorId: parent.id, childId });
378
- }
379
- childId = parent.id;
380
- shape = parent;
381
- }
382
-
383
- return path;
384
- }
385
-
386
- export function isAdditiveSelectionActive({
387
- shiftKey,
388
- accelKey,
389
- }: {
390
- shiftKey: boolean;
391
- accelKey: boolean;
392
- }): boolean {
393
- return shiftKey || accelKey;
394
- }
395
-
396
- export function isBrushWrappingSelection({ ctrlKey }: { ctrlKey: boolean }): boolean {
397
- return ctrlKey;
398
- }
399
-
400
- export function isQuickClick(info: PointingShapeInfo, event: PointerEditorEvent): boolean {
401
- return (
402
- event.timestamp - info.originTimestamp <=
403
- GROUP_CHILD_QUICK_SELECT_DURATION_MS
404
- );
405
- }
406
-
407
- export function normalizeAngle(angle: number): number {
408
- let next = angle;
409
- while (next <= -Math.PI) next += Math.PI * 2;
410
- while (next > Math.PI) next -= Math.PI * 2;
411
- return next;
412
- }
413
-
414
- export function snapAngle(angle: number, step: number): number {
415
- return Math.round(angle / step) * step;
416
- }
417
-
418
- export function getBoxCorners(bounds: Box): Vec[] {
419
- return [
420
- new Vec(bounds.minX, bounds.minY),
421
- new Vec(bounds.maxX, bounds.minY),
422
- new Vec(bounds.maxX, bounds.maxY),
423
- new Vec(bounds.minX, bounds.maxY),
424
- ];
425
- }
426
-
427
- export function getShapeSelectionResizePageOutlineVertices(
428
- editor: Editor,
429
- shape: ShapeRecord,
430
- ): Vec[] {
431
- const util = editor.getShapeUtil(shape);
432
- const bounds = util.getSelectionResizeLocalBounds(shape);
433
- const transform = editor.computeShapeLocalToPageTransform(shape);
434
- return getBoxCorners(bounds).map((point) => transform.applyToPoint(point));
435
- }
436
-
437
- export function getResizedShapeUpdate(
438
- editor: Editor,
439
- shape: SelectionResizeShapeSnapshot,
440
- startBounds: Box,
441
- nextBounds: Box,
442
- scaleX: number,
443
- scaleY: number,
444
- handleId: SelectionResizeHandleId,
445
- isResizingFromCenter: boolean,
446
- rotationCenter: Vec,
447
- selectionRotation: number,
448
- update: ShapeUpdate,
449
- ): void {
450
- const selectionTransform = getSelectionTransform(
451
- rotationCenter,
452
- selectionRotation,
453
- );
454
- const nextLocalBounds = mapSelectionLocalBoundsBetweenBounds({
455
- bounds: shape.localBounds,
456
- fromBounds: startBounds,
457
- toBounds: nextBounds,
458
- });
459
- const nextCenter = selectionLocalPointToPagePoint(
460
- nextLocalBounds.center,
461
- selectionTransform,
462
- );
463
-
464
- const util = editor.getShapeUtil(shape.shape);
465
- const nextShapeUpdate = util.resizeSelectionBounds(shape.shape, {
466
- handleId,
467
- pageCenter: nextCenter,
468
- selectionLocalBounds: nextLocalBounds,
469
- scaleX,
470
- scaleY,
471
- isResizingFromCenter,
472
- selectionRotation,
473
- selectionRotationCenter: rotationCenter,
474
- });
475
-
476
- update.id = shape.shape.id;
477
- update.x = nextShapeUpdate.x;
478
- update.y = nextShapeUpdate.y;
479
- update.rotation = nextShapeUpdate.rotation ?? shape.rotation;
480
- update.scaleX = nextShapeUpdate.scaleX;
481
- update.scaleY = nextShapeUpdate.scaleY;
482
- update.props = nextShapeUpdate.props;
483
- }
484
-
485
- export function getSelectionTransform(
486
- rotationCenter: Vec,
487
- selectionRotation: number,
488
- ): SelectionRotationTransform {
489
- return {
490
- rotation: selectionRotation,
491
- rotationCenter,
492
- };
493
- }
494
-
495
- export function getResizedPagePointsUpdate(
496
- editor: Editor,
497
- shape: SelectionResizePointShapeSnapshot,
498
- startBounds: Box,
499
- nextBounds: Box,
500
- scaleX: number,
501
- scaleY: number,
502
- handleId: SelectionResizeHandleId,
503
- isResizingFromCenter: boolean,
504
- rotationCenter: Vec,
505
- selectionRotation: number,
506
- update: ShapeUpdate,
507
- ): void {
508
- const selectionTransform = getSelectionTransform(
509
- rotationCenter,
510
- selectionRotation,
511
- );
512
- const nextStartPagePoint = selectionLocalPointToPagePoint(
513
- mapSelectionLocalPointForResize({
514
- point: shape.startLocalPagePoint,
515
- startBounds,
516
- scaleX,
517
- scaleY,
518
- handleId,
519
- isResizingFromCenter,
520
- }),
521
- selectionTransform,
522
- );
523
- const nextEndPagePoint = selectionLocalPointToPagePoint(
524
- mapSelectionLocalPointForResize({
525
- point: shape.endLocalPagePoint,
526
- startBounds,
527
- scaleX,
528
- scaleY,
529
- handleId,
530
- isResizingFromCenter,
531
- }),
532
- selectionTransform,
533
- );
534
- const nextShapeUpdate = editor
535
- .getShapeUtil(shape.shape)
536
- .updateSelectionPagePoints(shape.shape, {
537
- pagePoints: [nextStartPagePoint, nextEndPagePoint],
538
- });
539
-
540
- update.id = shape.shape.id;
541
- update.x = nextShapeUpdate.x;
542
- update.y = nextShapeUpdate.y;
543
- update.rotation = nextShapeUpdate.rotation;
544
- update.scaleX = nextShapeUpdate.scaleX;
545
- update.scaleY = nextShapeUpdate.scaleY;
546
- update.props = nextShapeUpdate.props;
547
- }
548
-
549
- function mapSelectionLocalPointForResize({
550
- point,
551
- startBounds,
552
- scaleX,
553
- scaleY,
554
- handleId,
555
- isResizingFromCenter,
556
- }: {
557
- point: Vec;
558
- startBounds: Box;
559
- scaleX: number;
560
- scaleY: number;
561
- handleId: SelectionResizeHandleId;
562
- isResizingFromCenter: boolean;
563
- }): Vec {
564
- const anchorX = getSelectionResizeAnchorX({
565
- startBounds,
566
- handleId,
567
- isResizingFromCenter,
568
- });
569
- const anchorY = getSelectionResizeAnchorY({
570
- startBounds,
571
- handleId,
572
- isResizingFromCenter,
573
- });
574
-
575
- return new Vec(
576
- anchorX + (point.x - anchorX) * scaleX,
577
- anchorY + (point.y - anchorY) * scaleY,
578
- );
579
- }
580
-
581
- function getSelectionResizeAnchorX({
582
- startBounds,
583
- handleId,
584
- isResizingFromCenter,
585
- }: {
586
- startBounds: Box;
587
- handleId: SelectionResizeHandleId;
588
- isResizingFromCenter: boolean;
589
- }): number {
590
- if (isResizingFromCenter) {
591
- return startBounds.center.x;
592
- }
593
- if (selectionResizeHandleMovesLeftEdge(handleId)) {
594
- return startBounds.maxX;
595
- }
596
- if (selectionResizeHandleMovesRightEdge(handleId)) {
597
- return startBounds.minX;
598
- }
599
- return startBounds.center.x;
600
- }
601
-
602
- function getSelectionResizeAnchorY({
603
- startBounds,
604
- handleId,
605
- isResizingFromCenter,
606
- }: {
607
- startBounds: Box;
608
- handleId: SelectionResizeHandleId;
609
- isResizingFromCenter: boolean;
610
- }): number {
611
- if (isResizingFromCenter) {
612
- return startBounds.center.y;
613
- }
614
- if (selectionResizeHandleMovesTopEdge(handleId)) {
615
- return startBounds.maxY;
616
- }
617
- if (selectionResizeHandleMovesBottomEdge(handleId)) {
618
- return startBounds.minY;
619
- }
620
- return startBounds.center.y;
621
- }
622
-
623
- export function getSelectionResizeAspectRatioLockOverride(
624
- editor: Editor,
625
- shapes: readonly ShapeRecord[],
626
- handleId: SelectionResizeHandleId,
627
- ): boolean | null {
628
- const isOnlySelected = shapes.length === 1;
629
- let override: boolean | null = null;
630
-
631
- for (const shape of shapes) {
632
- const nextOverride = editor
633
- .getShapeUtil(shape)
634
- .getSelectionResizeAspectRatioLock(shape, {
635
- editor,
636
- handleId,
637
- isOnlySelected,
638
- });
639
- if (nextOverride === null) {
640
- continue;
641
- }
642
- if (override !== null && override !== nextOverride) {
643
- return null;
644
- }
645
- override = nextOverride;
646
- }
647
-
648
- return override;
649
- }
650
-
651
- export function getRotatedShapeUpdate(
652
- shape: SelectionRotateShapeSnapshot,
653
- center: Vec,
654
- delta: number,
655
- update: ShapeUpdate,
656
- ): void {
657
- const localCenter = shape.localBounds.center;
658
- const shapeCenter = new Vec(shape.x + localCenter.x, shape.y + localCenter.y);
659
- const nextCenter = rotateSelectionPagePoint(shapeCenter, {
660
- rotation: delta,
661
- rotationCenter: center,
662
- });
663
- update.id = shape.id;
664
- update.x = nextCenter.x - localCenter.x;
665
- update.y = nextCenter.y - localCenter.y;
666
- update.rotation = shape.rotation + delta;
667
- }
668
-
669
- export function getRotatedPagePointsUpdate(
670
- editor: Editor,
671
- shape: SelectionRotatePointShapeSnapshot,
672
- center: Vec,
673
- delta: number,
674
- update: ShapeUpdate,
675
- ): void {
676
- const nextShapeUpdate = editor
677
- .getShapeUtil(shape.shape)
678
- .updateSelectionPagePoints(shape.shape, {
679
- pagePoints: [
680
- rotateSelectionPagePoint(shape.startPagePoint, {
681
- rotation: delta,
682
- rotationCenter: center,
683
- }),
684
- rotateSelectionPagePoint(shape.endPagePoint, {
685
- rotation: delta,
686
- rotationCenter: center,
687
- }),
688
- ],
689
- });
690
-
691
- update.id = shape.shape.id;
692
- update.x = nextShapeUpdate.x;
693
- update.y = nextShapeUpdate.y;
694
- update.rotation = nextShapeUpdate.rotation;
695
- update.scaleX = nextShapeUpdate.scaleX;
696
- update.scaleY = nextShapeUpdate.scaleY;
697
- update.props = nextShapeUpdate.props;
698
- }
699
-
700
- export function createTranslatingUpdates(
701
- shapes: TranslatingShapeSnapshot[],
702
- ): ShapeUpdate[] {
703
- return shapes.map((shape) => ({
704
- id: shape.id,
705
- x: shape.x,
706
- y: shape.y,
707
- }));
708
- }
709
-
710
- export function getTranslateShapeSnapshots(
711
- editor: Editor,
712
- selectedShapeIds: ShapeId[],
713
- ): TranslatingShapeSnapshot[] {
714
- const movableRootIds = selectedShapeIds.filter((shapeId) => {
715
- const shape = editor.getShape(shapeId);
716
- return !!shape && !shape.isLocked && !editor.hasLockedDescendant(shape.id);
717
- });
718
-
719
- return editor
720
- .getShapeIdsIncludingDescendants(movableRootIds)
721
- .map((shapeId) => editor.getShape(shapeId))
722
- .filter((shape): shape is ShapeRecord => !!shape && !shape.isLocked)
723
- .map((shape) => ({
724
- id: shape.id,
725
- x: shape.x,
726
- y: shape.y,
727
- }));
728
- }
729
-
730
- export function isShapeWrappedByBrush(
731
- editor: Editor,
732
- brushBounds: Box,
733
- shapeId: ShapeId,
734
- ): boolean {
735
- const shape = editor.getShape(shapeId);
736
- if (!shape) {
737
- return false;
738
- }
739
-
740
- return editor.getShapeUtil(shape).isWrappedByBrush(shape, {
741
- brushBounds,
742
- pageOutlineVertices: editor.getShapePageOutlineVertices(shapeId),
743
- pageBounds: editor.getShapePageBounds(shapeId),
744
- });
745
- }
746
-
747
- export function shouldSelectShapeWithBrush(
748
- editor: Editor,
749
- brushBounds: Box,
750
- shapeId: ShapeId,
751
- isWrapping: boolean,
752
- ): boolean {
753
- const shape = editor.getShape(shapeId);
754
- if (!shape || !isBrushSelectableShapeId(editor, shape.id)) {
755
- return false;
756
- }
757
-
758
- return editor.getShapeUtil(shape).canSelectByBrush(shape, {
759
- brushBounds,
760
- isWrapping,
761
- pageOutlineVertices: editor.getShapePageOutlineVertices(shape.id),
762
- pageBounds: editor.getShapePageBounds(shape.id),
763
- });
764
- }
765
-
766
- export function isBrushSelectableShapeId(editor: Editor, shapeId: ShapeId): boolean {
767
- const shape = editor.getShape(shapeId);
768
- if (!shape) {
769
- return false;
770
- }
771
-
772
- return !editor.getShapeUtil(shape).shouldTransformDescendants(shape);
773
- }
774
-
775
- export function createResizingUpdates(
776
- shapes: SelectionResizeShapeSnapshot[],
777
- pointShapes: SelectionResizePointShapeSnapshot[],
778
- ): ShapeUpdate[] {
779
- return [
780
- ...shapes.map((shape) => ({
781
- id: shape.shape.id,
782
- rotation: shape.rotation,
783
- })),
784
- ...pointShapes.map((shape) => ({ id: shape.shape.id })),
785
- ];
786
- }
787
-
788
- export function createRotatingUpdates(
789
- shapes: SelectionRotateShapeSnapshot[],
790
- pointShapes: SelectionRotatePointShapeSnapshot[],
791
- ): ShapeUpdate[] {
792
- return [
793
- ...shapes.map((shape) => ({
794
- id: shape.id,
795
- x: shape.x,
796
- y: shape.y,
797
- rotation: shape.rotation,
798
- })),
799
- ...pointShapes.map((shape) => ({ id: shape.shape.id })),
800
- ];
801
- }