@yuzhouu/canvas-kit 0.1.2 → 0.1.3

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 (492) hide show
  1. package/_vendor/canvas-core/bindings/BindingUtil.d.ts +45 -0
  2. package/_vendor/canvas-core/bindings/BindingUtilRegistry.d.ts +8 -0
  3. package/_vendor/canvas-core/bindings/arrow/arrowBindingHelpers.d.ts +28 -0
  4. package/_vendor/canvas-core/contextMenu.d.ts +62 -0
  5. package/_vendor/canvas-core/editor/Editor.d.ts +564 -0
  6. package/_vendor/canvas-core/editor/HistoryManager.d.ts +18 -0
  7. package/_vendor/canvas-core/editor/StateNode.d.ts +31 -0
  8. package/_vendor/canvas-core/editor/camera.d.ts +3 -0
  9. package/_vendor/canvas-core/editor/clipboard.d.ts +43 -0
  10. package/_vendor/canvas-core/editor/commands.d.ts +126 -0
  11. package/_vendor/canvas-core/editor/edgeScroll.d.ts +5 -0
  12. package/_vendor/canvas-core/editor/editorComputedHelpers.d.ts +21 -0
  13. package/_vendor/canvas-core/editor/editorSelectionTransforms.d.ts +6 -0
  14. package/_vendor/canvas-core/editor/events.d.ts +71 -0
  15. package/_vendor/canvas-core/editor/{index.ts → index.d.ts} +1 -5
  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 +52 -0
  24. package/_vendor/canvas-core/editor/managers/QueryManager.d.ts +76 -0
  25. package/_vendor/canvas-core/editor/managers/RenderWindowManager.d.ts +25 -0
  26. package/_vendor/canvas-core/editor/managers/SelectionLayoutManager.d.ts +29 -0
  27. package/_vendor/canvas-core/editor/managers/SelectionManager.d.ts +21 -0
  28. package/_vendor/canvas-core/editor/managers/SelectionOverlayManager.d.ts +23 -0
  29. package/_vendor/canvas-core/editor/managers/ShapeEditingManager.d.ts +29 -0
  30. package/_vendor/canvas-core/editor/managers/ShapeGeometryManager.d.ts +42 -0
  31. package/_vendor/canvas-core/editor/managers/ShapeHierarchyManager.d.ts +58 -0
  32. package/_vendor/canvas-core/editor/managers/SideEffectManager.d.ts +23 -0
  33. package/_vendor/canvas-core/editor/managers/SnapManager.d.ts +29 -0
  34. package/_vendor/canvas-core/editor/managers/SnapSnapshotBuilder.d.ts +22 -0
  35. package/_vendor/canvas-core/editor/managers/SpatialIndexManager.d.ts +30 -0
  36. package/_vendor/canvas-core/editor/managers/ToolManager.d.ts +25 -0
  37. package/_vendor/canvas-core/editor/managers/queryState.d.ts +18 -0
  38. package/_vendor/canvas-core/editor/managers/selectionGeometry.d.ts +28 -0
  39. package/_vendor/canvas-core/editor/managers/shapeOrder.d.ts +14 -0
  40. package/_vendor/canvas-core/editor/managers/shapeReparenting.d.ts +6 -0
  41. package/_vendor/canvas-core/editor/managers/snapCalculations.d.ts +40 -0
  42. package/_vendor/canvas-core/editor/managers/snapGeometry.d.ts +26 -0
  43. package/_vendor/canvas-core/editor/managers/snapIndicators.d.ts +22 -0
  44. package/_vendor/canvas-core/editor/managers/snapTypes.d.ts +98 -0
  45. package/_vendor/canvas-core/editor/queries/shapeTransforms.d.ts +27 -0
  46. package/_vendor/canvas-core/editor/renderWindow.d.ts +30 -0
  47. package/_vendor/canvas-core/editor/resizeGeometry.d.ts +97 -0
  48. package/_vendor/canvas-core/editor/selection.d.ts +224 -0
  49. package/_vendor/canvas-core/editor/selectionHandleInteractions.d.ts +11 -0
  50. package/_vendor/canvas-core/editor/selectionOverlay.d.ts +31 -0
  51. package/_vendor/canvas-core/exports/integrity.d.ts +32 -0
  52. package/_vendor/canvas-core/exports/svg.d.ts +48 -0
  53. package/_vendor/canvas-core/geometry/Box.d.ts +19 -0
  54. package/_vendor/canvas-core/geometry/Ellipse2d.d.ts +16 -0
  55. package/_vendor/canvas-core/geometry/Geometry2d.d.ts +15 -0
  56. package/_vendor/canvas-core/geometry/Mat.d.ts +28 -0
  57. package/_vendor/canvas-core/geometry/Polyline2d.d.ts +14 -0
  58. package/_vendor/canvas-core/geometry/Rectangle2d.d.ts +16 -0
  59. package/_vendor/canvas-core/geometry/Vec.d.ts +37 -0
  60. package/_vendor/canvas-core/geometry/{index.ts → index.d.ts} +1 -6
  61. package/_vendor/canvas-core/geometry/segments.d.ts +5 -0
  62. package/_vendor/canvas-core/index.d.ts +57 -0
  63. package/_vendor/canvas-core/plugins/index.d.ts +1 -0
  64. package/_vendor/canvas-core/plugins/types.d.ts +27 -0
  65. package/_vendor/canvas-core/reactivity.d.ts +4 -0
  66. package/_vendor/canvas-core/schema/records.d.ts +112 -0
  67. package/_vendor/canvas-core/schema/snapshots.d.ts +27 -0
  68. package/_vendor/canvas-core/shapes/ShapeUtil.d.ts +133 -0
  69. package/_vendor/canvas-core/shapes/ShapeUtilRegistry.d.ts +9 -0
  70. package/_vendor/canvas-core/shapes/capabilities.d.ts +25 -0
  71. package/_vendor/canvas-core/shapes/types.d.ts +2 -0
  72. package/_vendor/canvas-core/toolbar.d.ts +117 -0
  73. package/_vendor/canvas-core/tools/hand/HandTool.d.ts +5 -0
  74. package/_vendor/canvas-core/tools/select/SelectTool.d.ts +5 -0
  75. package/_vendor/canvas-core/tools/select/selectContainment.d.ts +11 -0
  76. package/_vendor/canvas-core/tools/select/selectToolHelpers.d.ts +161 -0
  77. package/_vendor/canvas-core/tools/select/states/BrushingState.d.ts +19 -0
  78. package/_vendor/canvas-core/tools/select/states/DraggingSelectionHandleInteractionState.d.ts +15 -0
  79. package/_vendor/canvas-core/tools/select/states/IdleState.d.ts +8 -0
  80. package/_vendor/canvas-core/tools/select/states/PointingCanvasState.d.ts +11 -0
  81. package/_vendor/canvas-core/tools/select/states/PointingResizeHandleState.d.ts +10 -0
  82. package/_vendor/canvas-core/tools/select/states/PointingRotateHandleState.d.ts +10 -0
  83. package/_vendor/canvas-core/tools/select/states/PointingSelectionHandleInteractionState.d.ts +10 -0
  84. package/_vendor/canvas-core/tools/select/states/PointingShapeState.d.ts +12 -0
  85. package/_vendor/canvas-core/tools/select/states/ResizingState.d.ts +16 -0
  86. package/_vendor/canvas-core/tools/select/states/RotatingState.d.ts +14 -0
  87. package/_vendor/canvas-core/tools/select/states/SelectStateNode.d.ts +60 -0
  88. package/_vendor/canvas-core/tools/select/states/TranslatingState.d.ts +16 -0
  89. package/_vendor/canvas-plugin-api/feature.d.ts +37 -0
  90. package/_vendor/canvas-plugin-api/index.d.ts +57 -0
  91. package/_vendor/canvas-product-react/api/apiRegistry.d.ts +12 -0
  92. package/_vendor/canvas-product-react/api/canvasProductApi.d.ts +124 -0
  93. package/_vendor/canvas-product-react/api/index.d.ts +4 -0
  94. package/_vendor/canvas-product-react/capabilities/clipboard/clipboardService.d.ts +9 -0
  95. package/_vendor/canvas-product-react/capabilities/clipboard/systemClipboard.d.ts +16 -0
  96. package/_vendor/canvas-product-react/capabilities/context-menu/systemContextMenu.d.ts +17 -0
  97. package/_vendor/canvas-product-react/capabilities/context-menu/useContextMenuSurface.d.ts +12 -0
  98. package/_vendor/canvas-product-react/capabilities/export/useSvgExport.d.ts +29 -0
  99. package/_vendor/canvas-product-react/capabilities/history/useHistoryControls.d.ts +8 -0
  100. package/_vendor/canvas-product-react/capabilities/pages/usePageControls.d.ts +12 -0
  101. package/_vendor/canvas-product-react/capabilities/toolbar/systemToolbar.d.ts +32 -0
  102. package/_vendor/canvas-product-react/capabilities/toolbar/useToolbarSurfaces.d.ts +19 -0
  103. package/_vendor/canvas-product-react/capabilities/zoom/useZoomControls.d.ts +9 -0
  104. package/_vendor/canvas-product-react/index.d.ts +24 -0
  105. package/_vendor/canvas-product-react/persistence/index.d.ts +2 -0
  106. package/_vendor/canvas-product-react/persistence/localSnapshotPersistence.d.ts +40 -0
  107. package/_vendor/canvas-product-react/runtime/CanvasProductRoot.d.ts +4 -0
  108. package/_vendor/canvas-product-react/runtime/productDefinition.d.ts +45 -0
  109. package/_vendor/canvas-product-react/runtime/productServices.d.ts +31 -0
  110. package/_vendor/canvas-react/components/CanvasView.d.ts +11 -0
  111. package/_vendor/canvas-react/components/OverlayLayer.d.ts +1 -0
  112. package/_vendor/canvas-react/components/PageSpace.d.ts +6 -0
  113. package/_vendor/canvas-react/components/ShapeLayer.d.ts +1 -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/CanvasRendererRegistryContext.d.ts +3 -0
  117. package/_vendor/canvas-react/host/contextMenuRegistry.d.ts +12 -0
  118. package/_vendor/canvas-react/host/domEventGuards.d.ts +11 -0
  119. package/_vendor/canvas-react/host/index.d.ts +8 -0
  120. package/_vendor/canvas-react/host/pluginHost.d.ts +93 -0
  121. package/_vendor/canvas-react/host/rendererRegistry.d.ts +12 -0
  122. package/_vendor/canvas-react/host/toolbarRegistry.d.ts +24 -0
  123. package/_vendor/plugin-arrow/ArrowBindingUtil.d.ts +27 -0
  124. package/_vendor/plugin-arrow/ArrowShapeUtil.d.ts +20 -0
  125. package/_vendor/plugin-arrow/ArrowTool.d.ts +4 -0
  126. package/_vendor/plugin-arrow/arrowGeometry.d.ts +50 -0
  127. package/_vendor/plugin-arrow/arrowTerminalBindingResolver.d.ts +21 -0
  128. package/_vendor/plugin-arrow/arrowTerminalCommands.d.ts +12 -0
  129. package/_vendor/plugin-arrow/canvas.d.ts +2 -0
  130. package/_vendor/plugin-arrow/core.d.ts +7 -0
  131. package/_vendor/plugin-arrow/feature.d.ts +3 -0
  132. package/_vendor/plugin-arrow/index.d.ts +11 -0
  133. package/_vendor/plugin-arrow/selectionHandleInteractions.d.ts +3 -0
  134. package/_vendor/plugin-arrow/types.d.ts +31 -0
  135. package/_vendor/plugin-draw/DrawShapeRenderer.d.ts +8 -0
  136. package/_vendor/plugin-draw/DrawShapeUtil.d.ts +21 -0
  137. package/_vendor/plugin-draw/DrawTool.d.ts +6 -0
  138. package/_vendor/plugin-draw/canvas.d.ts +2 -0
  139. package/_vendor/plugin-draw/core.d.ts +7 -0
  140. package/_vendor/plugin-draw/drawGeometry.d.ts +45 -0
  141. package/_vendor/plugin-draw/drawHitTest.d.ts +11 -0
  142. package/_vendor/plugin-draw/drawInterpolation.d.ts +5 -0
  143. package/_vendor/plugin-draw/drawPath.d.ts +37 -0
  144. package/_vendor/plugin-draw/drawSegments.d.ts +11 -0
  145. package/_vendor/plugin-draw/drawSelectionTransform.d.ts +18 -0
  146. package/_vendor/plugin-draw/drawShapeGeometry.d.ts +33 -0
  147. package/_vendor/plugin-draw/drawStrokeGeometry.d.ts +17 -0
  148. package/_vendor/plugin-draw/feature.d.ts +3 -0
  149. package/_vendor/plugin-draw/index.d.ts +13 -0
  150. package/_vendor/plugin-draw/types.d.ts +23 -0
  151. package/_vendor/plugin-eraser/EraserTool.d.ts +5 -0
  152. package/_vendor/plugin-eraser/canvas.d.ts +2 -0
  153. package/_vendor/plugin-eraser/core.d.ts +2 -0
  154. package/_vendor/plugin-eraser/feature.d.ts +3 -0
  155. package/_vendor/plugin-frame/FrameShapeUtil.d.ts +22 -0
  156. package/_vendor/plugin-frame/FrameTool.d.ts +6 -0
  157. package/_vendor/plugin-frame/canvas.d.ts +8 -0
  158. package/_vendor/plugin-frame/core.d.ts +7 -0
  159. package/_vendor/plugin-frame/feature.d.ts +3 -0
  160. package/_vendor/plugin-geo/GeoShapeUtil.d.ts +13 -0
  161. package/_vendor/plugin-geo/GeoTools.d.ts +17 -0
  162. package/_vendor/plugin-geo/canvas.d.ts +11 -0
  163. package/_vendor/plugin-geo/core.d.ts +7 -0
  164. package/_vendor/plugin-geo/feature.d.ts +3 -0
  165. package/_vendor/plugin-geo/types.d.ts +15 -0
  166. package/_vendor/plugin-group/GroupShapeUtil.d.ts +15 -0
  167. package/_vendor/plugin-group/canvas.d.ts +10 -0
  168. package/_vendor/plugin-group/core.d.ts +7 -0
  169. package/_vendor/plugin-group/feature.d.ts +3 -0
  170. package/_vendor/plugin-image/ImageShapeUtil.d.ts +10 -0
  171. package/_vendor/plugin-image/canvas.d.ts +2 -0
  172. package/_vendor/plugin-image/core.d.ts +16 -0
  173. package/_vendor/plugin-image/crop.d.ts +112 -0
  174. package/_vendor/plugin-image/cropInteractions.d.ts +3 -0
  175. package/_vendor/plugin-image/cropSession.d.ts +4 -0
  176. package/_vendor/plugin-image/feature.d.ts +3 -0
  177. package/_vendor/plugin-image/index.d.ts +8 -0
  178. package/_vendor/plugin-image/types.d.ts +37 -0
  179. package/_vendor/plugin-image-product-react/ImageImportController.d.ts +9 -0
  180. package/_vendor/plugin-image-product-react/imageAssetService.d.ts +7 -0
  181. package/_vendor/plugin-image-product-react/imageBlobStore.d.ts +25 -0
  182. package/_vendor/plugin-image-product-react/imageHostActions.d.ts +35 -0
  183. package/_vendor/plugin-image-product-react/imageProductApi.d.ts +21 -0
  184. package/_vendor/plugin-image-product-react/imageToolbarHostBridge.d.ts +14 -0
  185. package/_vendor/plugin-image-product-react/imageToolbarRuntime.d.ts +2 -0
  186. package/_vendor/plugin-image-product-react/index.d.ts +16 -0
  187. package/_vendor/plugin-image-product-react/snapshotGuards.d.ts +1 -0
  188. package/_vendor/plugin-image-product-react/svgImageAssetInliner.d.ts +3 -0
  189. package/_vendor/plugin-image-product-react/useImageImport.d.ts +16 -0
  190. package/_vendor/plugin-laser/LaserTool.d.ts +4 -0
  191. package/_vendor/plugin-laser/canvas.d.ts +2 -0
  192. package/_vendor/plugin-laser/core.d.ts +2 -0
  193. package/_vendor/plugin-laser/feature.d.ts +3 -0
  194. package/_vendor/plugin-text/ArrowLabelBindingUtil.d.ts +42 -0
  195. package/_vendor/plugin-text/GeoLabelBindingUtil.d.ts +45 -0
  196. package/_vendor/plugin-text/TextShapeSvgExporter.d.ts +6 -0
  197. package/_vendor/plugin-text/TextShapeUtil.d.ts +19 -0
  198. package/_vendor/plugin-text/TextTool.d.ts +4 -0
  199. package/_vendor/plugin-text/canvas.d.ts +2 -0
  200. package/_vendor/plugin-text/core.d.ts +2 -0
  201. package/_vendor/plugin-text/feature.d.ts +3 -0
  202. package/_vendor/plugin-text/host/RichTextEditingBox.d.ts +5 -0
  203. package/_vendor/plugin-text/host/RichTextToolbar.d.ts +6 -0
  204. package/_vendor/plugin-text/host/TiptapTextEditor.d.ts +24 -0
  205. package/_vendor/plugin-text/host/richTextRendering.d.ts +3 -0
  206. package/_vendor/plugin-text/host/textDomSelection.d.ts +7 -0
  207. package/_vendor/plugin-text/host/textEditingBoxStyle.d.ts +3 -0
  208. package/_vendor/plugin-text/host/textEntryFocus.d.ts +22 -0
  209. package/_vendor/plugin-text/host/textFontLoader.d.ts +2 -0
  210. package/_vendor/plugin-text/host/textMeasurement.d.ts +12 -0
  211. package/_vendor/plugin-text/host/textMeasurementSync.d.ts +10 -0
  212. package/_vendor/plugin-text/host/textRangeSelection.d.ts +14 -0
  213. package/_vendor/plugin-text/host/textShapeRendererRuntime.d.ts +8 -0
  214. package/_vendor/plugin-text/host/textShapeSync.d.ts +17 -0
  215. package/_vendor/plugin-text/host/tiptapTextEditorController.d.ts +33 -0
  216. package/_vendor/plugin-text/index.d.ts +4 -0
  217. package/_vendor/plugin-text/richTextUtils.d.ts +18 -0
  218. package/_vendor/plugin-text/textInteractions.d.ts +2 -0
  219. package/_vendor/plugin-text/textLabelHelpers.d.ts +44 -0
  220. package/_vendor/plugin-text/textShapeHelpers.d.ts +21 -0
  221. package/_vendor/plugin-text/textStyle.d.ts +9 -0
  222. package/_vendor/plugin-text/textTypes.d.ts +28 -0
  223. package/_vendor/signals/atom.d.ts +9 -0
  224. package/_vendor/signals/computed.d.ts +11 -0
  225. package/_vendor/signals/core.d.ts +17 -0
  226. package/_vendor/signals/effect.d.ts +29 -0
  227. package/_vendor/signals/types.d.ts +15 -0
  228. package/_vendor/store/Store.d.ts +26 -0
  229. package/_vendor/store/diff.d.ts +9 -0
  230. package/_vendor/store/history.d.ts +37 -0
  231. package/_vendor/store/index.d.ts +5 -0
  232. package/_vendor/store/types.d.ts +27 -0
  233. package/api/canvasKitApi.d.ts +2 -2
  234. package/index.css +1 -1
  235. package/index.d.ts +0 -1
  236. package/index.mjs +1 -1
  237. package/package.json +1 -1
  238. package/product/Shell.d.ts +2 -2
  239. package/product/chromeContext.d.ts +8 -8
  240. package/product/createCanvasKitEditor.d.ts +1 -1
  241. package/product/persistence.d.ts +1 -1
  242. package/product/product.d.ts +1 -1
  243. package/product/useCanvasClipboardShortcuts.d.ts +2 -2
  244. package/product-CxN5NN6u.mjs +4 -0
  245. package/product.mjs +1 -1
  246. package/standard/extensions.d.ts +1 -1
  247. package/standard/standardApi.d.ts +5 -5
  248. package/standard-R17_x8HU.mjs +44 -0
  249. package/standard.mjs +1 -1
  250. package/_vendor/canvas-core/bindings/BindingUtil.ts +0 -92
  251. package/_vendor/canvas-core/bindings/BindingUtilRegistry.ts +0 -22
  252. package/_vendor/canvas-core/bindings/arrow/arrowBindingHelpers.ts +0 -52
  253. package/_vendor/canvas-core/contextMenu.ts +0 -85
  254. package/_vendor/canvas-core/editor/Editor.ts +0 -2614
  255. package/_vendor/canvas-core/editor/HistoryManager.ts +0 -83
  256. package/_vendor/canvas-core/editor/StateNode.ts +0 -162
  257. package/_vendor/canvas-core/editor/camera.ts +0 -6
  258. package/_vendor/canvas-core/editor/clipboard.ts +0 -478
  259. package/_vendor/canvas-core/editor/commands.ts +0 -833
  260. package/_vendor/canvas-core/editor/edgeScroll.ts +0 -37
  261. package/_vendor/canvas-core/editor/editorComputedHelpers.ts +0 -257
  262. package/_vendor/canvas-core/editor/editorSelectionTransforms.ts +0 -116
  263. package/_vendor/canvas-core/editor/events.ts +0 -93
  264. package/_vendor/canvas-core/editor/interactions.ts +0 -101
  265. package/_vendor/canvas-core/editor/internal.ts +0 -22
  266. package/_vendor/canvas-core/editor/managers/BindingManager.ts +0 -262
  267. package/_vendor/canvas-core/editor/managers/CameraManager.ts +0 -147
  268. package/_vendor/canvas-core/editor/managers/ClipboardManager.ts +0 -32
  269. package/_vendor/canvas-core/editor/managers/DocumentSnapshotManager.ts +0 -256
  270. package/_vendor/canvas-core/editor/managers/InputsManager.ts +0 -319
  271. package/_vendor/canvas-core/editor/managers/InteractionTransientManager.ts +0 -218
  272. package/_vendor/canvas-core/editor/managers/QueryManager.ts +0 -837
  273. package/_vendor/canvas-core/editor/managers/RenderWindowManager.ts +0 -347
  274. package/_vendor/canvas-core/editor/managers/SelectionLayoutManager.ts +0 -196
  275. package/_vendor/canvas-core/editor/managers/SelectionManager.ts +0 -98
  276. package/_vendor/canvas-core/editor/managers/SelectionOverlayManager.ts +0 -308
  277. package/_vendor/canvas-core/editor/managers/ShapeEditingManager.ts +0 -226
  278. package/_vendor/canvas-core/editor/managers/ShapeGeometryManager.ts +0 -162
  279. package/_vendor/canvas-core/editor/managers/ShapeHierarchyManager.ts +0 -797
  280. package/_vendor/canvas-core/editor/managers/SideEffectManager.ts +0 -83
  281. package/_vendor/canvas-core/editor/managers/SnapManager.ts +0 -433
  282. package/_vendor/canvas-core/editor/managers/SnapSnapshotBuilder.ts +0 -430
  283. package/_vendor/canvas-core/editor/managers/SpatialIndexManager.ts +0 -354
  284. package/_vendor/canvas-core/editor/managers/ToolManager.ts +0 -81
  285. package/_vendor/canvas-core/editor/managers/queryState.ts +0 -583
  286. package/_vendor/canvas-core/editor/managers/selectionGeometry.ts +0 -287
  287. package/_vendor/canvas-core/editor/managers/shapeOrder.ts +0 -350
  288. package/_vendor/canvas-core/editor/managers/shapeReparenting.ts +0 -160
  289. package/_vendor/canvas-core/editor/managers/snapCalculations.ts +0 -412
  290. package/_vendor/canvas-core/editor/managers/snapGeometry.ts +0 -202
  291. package/_vendor/canvas-core/editor/managers/snapIndicators.ts +0 -403
  292. package/_vendor/canvas-core/editor/managers/snapTypes.ts +0 -122
  293. package/_vendor/canvas-core/editor/queries/shapeTransforms.ts +0 -171
  294. package/_vendor/canvas-core/editor/renderWindow.ts +0 -439
  295. package/_vendor/canvas-core/editor/resizeGeometry.ts +0 -654
  296. package/_vendor/canvas-core/editor/selection.ts +0 -489
  297. package/_vendor/canvas-core/editor/selectionHandleInteractions.ts +0 -43
  298. package/_vendor/canvas-core/editor/selectionOverlay.ts +0 -567
  299. package/_vendor/canvas-core/exports/integrity.ts +0 -174
  300. package/_vendor/canvas-core/exports/svg.ts +0 -494
  301. package/_vendor/canvas-core/geometry/Box.ts +0 -80
  302. package/_vendor/canvas-core/geometry/Ellipse2d.ts +0 -67
  303. package/_vendor/canvas-core/geometry/Geometry2d.ts +0 -52
  304. package/_vendor/canvas-core/geometry/Mat.ts +0 -92
  305. package/_vendor/canvas-core/geometry/Polyline2d.ts +0 -63
  306. package/_vendor/canvas-core/geometry/Rectangle2d.ts +0 -64
  307. package/_vendor/canvas-core/geometry/Vec.ts +0 -123
  308. package/_vendor/canvas-core/geometry/segments.ts +0 -65
  309. package/_vendor/canvas-core/index.ts +0 -391
  310. package/_vendor/canvas-core/plugins/index.ts +0 -5
  311. package/_vendor/canvas-core/plugins/types.ts +0 -53
  312. package/_vendor/canvas-core/reactivity.ts +0 -16
  313. package/_vendor/canvas-core/schema/records.ts +0 -221
  314. package/_vendor/canvas-core/schema/snapshots.ts +0 -527
  315. package/_vendor/canvas-core/shapes/ShapeUtil.ts +0 -516
  316. package/_vendor/canvas-core/shapes/ShapeUtilRegistry.ts +0 -26
  317. package/_vendor/canvas-core/shapes/capabilities.ts +0 -67
  318. package/_vendor/canvas-core/shapes/types.ts +0 -20
  319. package/_vendor/canvas-core/toolbar.ts +0 -148
  320. package/_vendor/canvas-core/tools/hand/HandTool.ts +0 -75
  321. package/_vendor/canvas-core/tools/select/SelectTool.ts +0 -33
  322. package/_vendor/canvas-core/tools/select/selectContainment.ts +0 -104
  323. package/_vendor/canvas-core/tools/select/selectToolHelpers.ts +0 -801
  324. package/_vendor/canvas-core/tools/select/states/BrushingState.ts +0 -145
  325. package/_vendor/canvas-core/tools/select/states/DraggingSelectionHandleInteractionState.ts +0 -116
  326. package/_vendor/canvas-core/tools/select/states/IdleState.ts +0 -159
  327. package/_vendor/canvas-core/tools/select/states/PointingCanvasState.ts +0 -41
  328. package/_vendor/canvas-core/tools/select/states/PointingResizeHandleState.ts +0 -78
  329. package/_vendor/canvas-core/tools/select/states/PointingRotateHandleState.ts +0 -64
  330. package/_vendor/canvas-core/tools/select/states/PointingSelectionHandleInteractionState.ts +0 -34
  331. package/_vendor/canvas-core/tools/select/states/PointingShapeState.ts +0 -140
  332. package/_vendor/canvas-core/tools/select/states/ResizingState.ts +0 -171
  333. package/_vendor/canvas-core/tools/select/states/RotatingState.ts +0 -124
  334. package/_vendor/canvas-core/tools/select/states/SelectStateNode.ts +0 -128
  335. package/_vendor/canvas-core/tools/select/states/TranslatingState.ts +0 -139
  336. package/_vendor/canvas-plugin-api/feature.ts +0 -204
  337. package/_vendor/canvas-plugin-api/index.ts +0 -142
  338. package/_vendor/canvas-product-react/api/apiRegistry.ts +0 -35
  339. package/_vendor/canvas-product-react/api/canvasProductApi.ts +0 -422
  340. package/_vendor/canvas-product-react/api/index.ts +0 -31
  341. package/_vendor/canvas-product-react/capabilities/clipboard/clipboardService.ts +0 -36
  342. package/_vendor/canvas-product-react/capabilities/clipboard/systemClipboard.ts +0 -245
  343. package/_vendor/canvas-product-react/capabilities/context-menu/systemContextMenu.ts +0 -396
  344. package/_vendor/canvas-product-react/capabilities/context-menu/useContextMenuSurface.ts +0 -59
  345. package/_vendor/canvas-product-react/capabilities/export/useSvgExport.ts +0 -156
  346. package/_vendor/canvas-product-react/capabilities/history/useHistoryControls.ts +0 -23
  347. package/_vendor/canvas-product-react/capabilities/pages/usePageControls.ts +0 -41
  348. package/_vendor/canvas-product-react/capabilities/toolbar/systemToolbar.ts +0 -490
  349. package/_vendor/canvas-product-react/capabilities/toolbar/useToolbarSurfaces.ts +0 -92
  350. package/_vendor/canvas-product-react/capabilities/zoom/useZoomControls.ts +0 -27
  351. package/_vendor/canvas-product-react/index.ts +0 -84
  352. package/_vendor/canvas-product-react/persistence/index.ts +0 -18
  353. package/_vendor/canvas-product-react/persistence/localSnapshotPersistence.ts +0 -294
  354. package/_vendor/canvas-product-react/runtime/CanvasProductRoot.tsx +0 -250
  355. package/_vendor/canvas-product-react/runtime/productDefinition.ts +0 -72
  356. package/_vendor/canvas-product-react/runtime/productServices.ts +0 -96
  357. package/_vendor/canvas-react/components/CanvasView.tsx +0 -796
  358. package/_vendor/canvas-react/components/OverlayLayer.tsx +0 -879
  359. package/_vendor/canvas-react/components/PageSpace.tsx +0 -34
  360. package/_vendor/canvas-react/components/ShapeLayer.tsx +0 -428
  361. package/_vendor/canvas-react/hooks/useEditor.ts +0 -11
  362. package/_vendor/canvas-react/hooks/useValue.ts +0 -14
  363. package/_vendor/canvas-react/host/CanvasRendererRegistryContext.tsx +0 -14
  364. package/_vendor/canvas-react/host/contextMenuRegistry.ts +0 -61
  365. package/_vendor/canvas-react/host/domEventGuards.ts +0 -61
  366. package/_vendor/canvas-react/host/index.ts +0 -38
  367. package/_vendor/canvas-react/host/pluginHost.ts +0 -635
  368. package/_vendor/canvas-react/host/rendererRegistry.tsx +0 -58
  369. package/_vendor/canvas-react/host/toolbarRegistry.ts +0 -100
  370. package/_vendor/plugin-arrow/ArrowBindingUtil.ts +0 -239
  371. package/_vendor/plugin-arrow/ArrowShapeUtil.ts +0 -311
  372. package/_vendor/plugin-arrow/ArrowTool.ts +0 -208
  373. package/_vendor/plugin-arrow/arrowGeometry.ts +0 -441
  374. package/_vendor/plugin-arrow/arrowTerminalBindingResolver.ts +0 -253
  375. package/_vendor/plugin-arrow/arrowTerminalCommands.ts +0 -230
  376. package/_vendor/plugin-arrow/canvas.tsx +0 -92
  377. package/_vendor/plugin-arrow/core.ts +0 -409
  378. package/_vendor/plugin-arrow/feature.ts +0 -20
  379. package/_vendor/plugin-arrow/index.ts +0 -28
  380. package/_vendor/plugin-arrow/selectionHandleInteractions.ts +0 -154
  381. package/_vendor/plugin-arrow/types.ts +0 -63
  382. package/_vendor/plugin-draw/DrawShapeRenderer.tsx +0 -60
  383. package/_vendor/plugin-draw/DrawShapeUtil.ts +0 -372
  384. package/_vendor/plugin-draw/DrawTool.ts +0 -444
  385. package/_vendor/plugin-draw/canvas.tsx +0 -24
  386. package/_vendor/plugin-draw/core.ts +0 -515
  387. package/_vendor/plugin-draw/drawGeometry.ts +0 -491
  388. package/_vendor/plugin-draw/drawHitTest.ts +0 -271
  389. package/_vendor/plugin-draw/drawInterpolation.ts +0 -250
  390. package/_vendor/plugin-draw/drawPath.ts +0 -550
  391. package/_vendor/plugin-draw/drawSegments.ts +0 -106
  392. package/_vendor/plugin-draw/drawSelectionTransform.ts +0 -67
  393. package/_vendor/plugin-draw/drawShapeGeometry.ts +0 -307
  394. package/_vendor/plugin-draw/drawStrokeGeometry.ts +0 -454
  395. package/_vendor/plugin-draw/feature.ts +0 -20
  396. package/_vendor/plugin-draw/index.ts +0 -31
  397. package/_vendor/plugin-draw/types.ts +0 -36
  398. package/_vendor/plugin-eraser/EraserTool.ts +0 -297
  399. package/_vendor/plugin-eraser/canvas.tsx +0 -616
  400. package/_vendor/plugin-eraser/core.ts +0 -49
  401. package/_vendor/plugin-eraser/feature.ts +0 -20
  402. package/_vendor/plugin-frame/FrameShapeUtil.ts +0 -173
  403. package/_vendor/plugin-frame/FrameTool.ts +0 -225
  404. package/_vendor/plugin-frame/canvas.tsx +0 -75
  405. package/_vendor/plugin-frame/core.ts +0 -534
  406. package/_vendor/plugin-frame/feature.ts +0 -20
  407. package/_vendor/plugin-geo/GeoShapeUtil.ts +0 -463
  408. package/_vendor/plugin-geo/GeoTools.ts +0 -247
  409. package/_vendor/plugin-geo/canvas.tsx +0 -90
  410. package/_vendor/plugin-geo/core.ts +0 -495
  411. package/_vendor/plugin-geo/feature.ts +0 -20
  412. package/_vendor/plugin-geo/types.ts +0 -27
  413. package/_vendor/plugin-group/GroupShapeUtil.ts +0 -59
  414. package/_vendor/plugin-group/canvas.tsx +0 -59
  415. package/_vendor/plugin-group/core.ts +0 -40
  416. package/_vendor/plugin-group/feature.ts +0 -20
  417. package/_vendor/plugin-image/ImageShapeUtil.ts +0 -95
  418. package/_vendor/plugin-image/canvas.tsx +0 -212
  419. package/_vendor/plugin-image/core.ts +0 -542
  420. package/_vendor/plugin-image/crop.ts +0 -770
  421. package/_vendor/plugin-image/cropInteractions.ts +0 -350
  422. package/_vendor/plugin-image/cropSession.ts +0 -38
  423. package/_vendor/plugin-image/feature.ts +0 -20
  424. package/_vendor/plugin-image/index.ts +0 -29
  425. package/_vendor/plugin-image/types.ts +0 -55
  426. package/_vendor/plugin-image-product-react/ImageImportController.tsx +0 -143
  427. package/_vendor/plugin-image-product-react/imageAssetService.ts +0 -52
  428. package/_vendor/plugin-image-product-react/imageBlobStore.ts +0 -315
  429. package/_vendor/plugin-image-product-react/imageHostActions.ts +0 -438
  430. package/_vendor/plugin-image-product-react/imageProductApi.ts +0 -88
  431. package/_vendor/plugin-image-product-react/imageToolbarHostBridge.ts +0 -48
  432. package/_vendor/plugin-image-product-react/imageToolbarRuntime.ts +0 -21
  433. package/_vendor/plugin-image-product-react/index.ts +0 -60
  434. package/_vendor/plugin-image-product-react/snapshotGuards.ts +0 -33
  435. package/_vendor/plugin-image-product-react/svgImageAssetInliner.ts +0 -54
  436. package/_vendor/plugin-image-product-react/useImageImport.ts +0 -64
  437. package/_vendor/plugin-laser/LaserTool.ts +0 -154
  438. package/_vendor/plugin-laser/canvas.tsx +0 -645
  439. package/_vendor/plugin-laser/core.ts +0 -49
  440. package/_vendor/plugin-laser/feature.ts +0 -20
  441. package/_vendor/plugin-text/ArrowLabelBindingUtil.ts +0 -336
  442. package/_vendor/plugin-text/GeoLabelBindingUtil.ts +0 -391
  443. package/_vendor/plugin-text/TextShapeSvgExporter.ts +0 -101
  444. package/_vendor/plugin-text/TextShapeUtil.ts +0 -284
  445. package/_vendor/plugin-text/TextTool.ts +0 -228
  446. package/_vendor/plugin-text/canvas.tsx +0 -115
  447. package/_vendor/plugin-text/core.ts +0 -422
  448. package/_vendor/plugin-text/feature.ts +0 -20
  449. package/_vendor/plugin-text/host/RichTextEditingBox.tsx +0 -144
  450. package/_vendor/plugin-text/host/RichTextToolbar.tsx +0 -266
  451. package/_vendor/plugin-text/host/TiptapTextEditor.tsx +0 -191
  452. package/_vendor/plugin-text/host/richTextRendering.tsx +0 -49
  453. package/_vendor/plugin-text/host/textDomSelection.ts +0 -93
  454. package/_vendor/plugin-text/host/textEditingBoxStyle.ts +0 -36
  455. package/_vendor/plugin-text/host/textEntryFocus.ts +0 -307
  456. package/_vendor/plugin-text/host/textFontLoader.ts +0 -149
  457. package/_vendor/plugin-text/host/textMeasurement.ts +0 -258
  458. package/_vendor/plugin-text/host/textMeasurementSync.ts +0 -77
  459. package/_vendor/plugin-text/host/textRangeSelection.ts +0 -134
  460. package/_vendor/plugin-text/host/textShapeRendererRuntime.tsx +0 -89
  461. package/_vendor/plugin-text/host/textShapeSync.ts +0 -173
  462. package/_vendor/plugin-text/host/tiptapTextEditorController.ts +0 -148
  463. package/_vendor/plugin-text/index.ts +0 -18
  464. package/_vendor/plugin-text/richTextUtils.ts +0 -259
  465. package/_vendor/plugin-text/textInteractions.ts +0 -366
  466. package/_vendor/plugin-text/textLabelHelpers.ts +0 -235
  467. package/_vendor/plugin-text/textShapeHelpers.ts +0 -123
  468. package/_vendor/plugin-text/textStyle.ts +0 -96
  469. package/_vendor/plugin-text/textTypes.ts +0 -48
  470. package/_vendor/signals/atom.ts +0 -74
  471. package/_vendor/signals/computed.ts +0 -132
  472. package/_vendor/signals/core.ts +0 -130
  473. package/_vendor/signals/effect.ts +0 -117
  474. package/_vendor/signals/types.ts +0 -17
  475. package/_vendor/store/Store.ts +0 -171
  476. package/_vendor/store/diff.ts +0 -229
  477. package/_vendor/store/history.ts +0 -177
  478. package/_vendor/store/index.ts +0 -32
  479. package/_vendor/store/types.ts +0 -37
  480. package/internal-modules.d.ts +0 -187
  481. package/product-iyBbEPIs.mjs +0 -4
  482. package/standard-BmrxwqpJ.mjs +0 -44
  483. /package/_vendor/canvas-core/tools/{index.ts → index.d.ts} +0 -0
  484. /package/_vendor/canvas-core/tools/select/states/{index.ts → index.d.ts} +0 -0
  485. /package/_vendor/canvas-react/components/{index.ts → index.d.ts} +0 -0
  486. /package/_vendor/canvas-react/{index.ts → index.d.ts} +0 -0
  487. /package/_vendor/plugin-eraser/{index.ts → index.d.ts} +0 -0
  488. /package/_vendor/plugin-frame/{index.ts → index.d.ts} +0 -0
  489. /package/_vendor/plugin-geo/{index.ts → index.d.ts} +0 -0
  490. /package/_vendor/plugin-group/{index.ts → index.d.ts} +0 -0
  491. /package/_vendor/plugin-laser/{index.ts → index.d.ts} +0 -0
  492. /package/_vendor/signals/{index.ts → index.d.ts} +0 -0
@@ -1,654 +0,0 @@
1
- import { Box } from "../geometry/Box";
2
- import { Vec } from "../geometry/Vec";
3
- import type { SelectionResizeHandleId } from "./selection";
4
-
5
- const MIN_SELECTION_RESIZE_SIZE = 1;
6
-
7
- export interface SelectionResizeBoundsResult {
8
- bounds: Box;
9
- scaleX: number;
10
- scaleY: number;
11
- }
12
-
13
- export interface SelectionResizeScalesResult {
14
- scaleX: number;
15
- scaleY: number;
16
- }
17
-
18
- export function selectionResizeHandleMovesLeftEdge(
19
- handleId: SelectionResizeHandleId,
20
- ): boolean {
21
- return (
22
- handleId === "top_left" ||
23
- handleId === "left" ||
24
- handleId === "bottom_left"
25
- );
26
- }
27
-
28
- export function selectionResizeHandleMovesRightEdge(
29
- handleId: SelectionResizeHandleId,
30
- ): boolean {
31
- return (
32
- handleId === "top_right" ||
33
- handleId === "right" ||
34
- handleId === "bottom_right"
35
- );
36
- }
37
-
38
- export function selectionResizeHandleMovesTopEdge(
39
- handleId: SelectionResizeHandleId,
40
- ): boolean {
41
- return (
42
- handleId === "top_left" ||
43
- handleId === "top" ||
44
- handleId === "top_right"
45
- );
46
- }
47
-
48
- export function selectionResizeHandleMovesBottomEdge(
49
- handleId: SelectionResizeHandleId,
50
- ): boolean {
51
- return (
52
- handleId === "bottom_left" ||
53
- handleId === "bottom" ||
54
- handleId === "bottom_right"
55
- );
56
- }
57
-
58
- export function isSelectionResizeCorner(
59
- handleId: SelectionResizeHandleId,
60
- ): boolean {
61
- return (
62
- selectionResizeHandleMovesLeftEdge(handleId) !==
63
- selectionResizeHandleMovesRightEdge(handleId) &&
64
- selectionResizeHandleMovesTopEdge(handleId) !==
65
- selectionResizeHandleMovesBottomEdge(handleId)
66
- );
67
- }
68
-
69
- export function getSelectionResizeHandleForScale({
70
- handleId,
71
- scaleX,
72
- scaleY,
73
- }: {
74
- handleId: SelectionResizeHandleId;
75
- scaleX: number;
76
- scaleY: number;
77
- }): SelectionResizeHandleId {
78
- const horizontal = selectionResizeHandleMovesLeftEdge(handleId)
79
- ? scaleX < 0
80
- ? "right"
81
- : "left"
82
- : selectionResizeHandleMovesRightEdge(handleId)
83
- ? scaleX < 0
84
- ? "left"
85
- : "right"
86
- : null;
87
- const vertical = selectionResizeHandleMovesTopEdge(handleId)
88
- ? scaleY < 0
89
- ? "bottom"
90
- : "top"
91
- : selectionResizeHandleMovesBottomEdge(handleId)
92
- ? scaleY < 0
93
- ? "top"
94
- : "bottom"
95
- : null;
96
-
97
- if (vertical === "top" && horizontal === "left") return "top_left";
98
- if (vertical === "top" && horizontal === "right") return "top_right";
99
- if (vertical === "bottom" && horizontal === "right") return "bottom_right";
100
- if (vertical === "bottom" && horizontal === "left") return "bottom_left";
101
- if (vertical) return vertical;
102
- if (horizontal) return horizontal;
103
- return handleId;
104
- }
105
-
106
- export function getSelectionResizeScalesFromBounds({
107
- startBounds,
108
- bounds,
109
- handleId,
110
- scaleX,
111
- scaleY,
112
- isResizingFromCenter = false,
113
- }: {
114
- startBounds: Box;
115
- bounds: Box;
116
- handleId: SelectionResizeHandleId;
117
- scaleX?: number;
118
- scaleY?: number;
119
- isResizingFromCenter?: boolean;
120
- }): SelectionResizeScalesResult {
121
- const scaleXSign = getSelectionResizeScaleSign({
122
- axis: "x",
123
- startBounds,
124
- bounds,
125
- handleId,
126
- scale: scaleX,
127
- isResizingFromCenter,
128
- });
129
- const scaleYSign = getSelectionResizeScaleSign({
130
- axis: "y",
131
- startBounds,
132
- bounds,
133
- handleId,
134
- scale: scaleY,
135
- isResizingFromCenter,
136
- });
137
-
138
- return {
139
- scaleX:
140
- selectionResizeHandleMovesLeftEdge(handleId) ||
141
- selectionResizeHandleMovesRightEdge(handleId)
142
- ? scaleXSign *
143
- (bounds.w / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w))
144
- : (scaleX ?? 1),
145
- scaleY:
146
- selectionResizeHandleMovesTopEdge(handleId) ||
147
- selectionResizeHandleMovesBottomEdge(handleId)
148
- ? scaleYSign *
149
- (bounds.h / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h))
150
- : (scaleY ?? 1),
151
- };
152
- }
153
-
154
- function getSelectionResizeScaleSign({
155
- axis,
156
- startBounds,
157
- bounds,
158
- handleId,
159
- scale,
160
- isResizingFromCenter,
161
- }: {
162
- axis: "x" | "y";
163
- startBounds: Box;
164
- bounds: Box;
165
- handleId: SelectionResizeHandleId;
166
- scale?: number;
167
- isResizingFromCenter: boolean;
168
- }): number {
169
- const fallback = Math.sign(scale ?? 1) || 1;
170
- if (isResizingFromCenter) {
171
- return fallback;
172
- }
173
-
174
- if (axis === "x") {
175
- if (selectionResizeHandleMovesLeftEdge(handleId)) {
176
- return bounds.minX >= startBounds.maxX ? -1 : 1;
177
- }
178
- if (selectionResizeHandleMovesRightEdge(handleId)) {
179
- return bounds.maxX <= startBounds.minX ? -1 : 1;
180
- }
181
- return fallback;
182
- }
183
-
184
- if (selectionResizeHandleMovesTopEdge(handleId)) {
185
- return bounds.minY >= startBounds.maxY ? -1 : 1;
186
- }
187
- if (selectionResizeHandleMovesBottomEdge(handleId)) {
188
- return bounds.maxY <= startBounds.minY ? -1 : 1;
189
- }
190
- return fallback;
191
- }
192
-
193
- export function getAnchoredSelectionResizeLocalBounds({
194
- requestedBounds,
195
- handleId,
196
- actualWidth,
197
- actualHeight,
198
- scaleX,
199
- scaleY,
200
- isResizingFromCenter,
201
- }: {
202
- requestedBounds: Box;
203
- handleId: SelectionResizeHandleId;
204
- actualWidth: number;
205
- actualHeight: number;
206
- scaleX: number;
207
- scaleY: number;
208
- isResizingFromCenter: boolean;
209
- }): Box {
210
- const x = isResizingFromCenter
211
- ? requestedBounds.center.x - actualWidth / 2
212
- : selectionResizeHandleMovesLeftEdge(handleId)
213
- ? scaleX < 0
214
- ? requestedBounds.minX
215
- : requestedBounds.maxX - actualWidth
216
- : selectionResizeHandleMovesRightEdge(handleId)
217
- ? scaleX < 0
218
- ? requestedBounds.maxX - actualWidth
219
- : requestedBounds.minX
220
- : requestedBounds.center.x - actualWidth / 2;
221
- const y = isResizingFromCenter
222
- ? requestedBounds.center.y - actualHeight / 2
223
- : selectionResizeHandleMovesTopEdge(handleId)
224
- ? scaleY < 0
225
- ? requestedBounds.minY
226
- : requestedBounds.maxY - actualHeight
227
- : selectionResizeHandleMovesBottomEdge(handleId)
228
- ? scaleY < 0
229
- ? requestedBounds.maxY - actualHeight
230
- : requestedBounds.minY
231
- : requestedBounds.center.y - actualHeight / 2;
232
-
233
- return new Box(x, y, actualWidth, actualHeight);
234
- }
235
-
236
- export function getSelectionResizeBounds({
237
- startBounds,
238
- handleId,
239
- pagePoint,
240
- }: {
241
- startBounds: Box;
242
- handleId: SelectionResizeHandleId;
243
- pagePoint: Vec;
244
- }): Box {
245
- return getSelectionResizeBoundsWithScale({
246
- startBounds,
247
- handleId,
248
- pagePoint,
249
- }).bounds;
250
- }
251
-
252
- export function getSelectionResizeBoundsWithScale({
253
- startBounds,
254
- handleId,
255
- pagePoint,
256
- }: {
257
- startBounds: Box;
258
- handleId: SelectionResizeHandleId;
259
- pagePoint: Vec;
260
- }): SelectionResizeBoundsResult {
261
- const startMinX = startBounds.minX;
262
- const startMaxX = startBounds.maxX;
263
- const startMinY = startBounds.minY;
264
- const startMaxY = startBounds.maxY;
265
- let movingX = selectionResizeHandleMovesLeftEdge(handleId)
266
- ? startMinX
267
- : startMaxX;
268
- let anchoredX = selectionResizeHandleMovesLeftEdge(handleId)
269
- ? startMaxX
270
- : startMinX;
271
- let movingY = selectionResizeHandleMovesTopEdge(handleId)
272
- ? startMinY
273
- : startMaxY;
274
- let anchoredY = selectionResizeHandleMovesTopEdge(handleId)
275
- ? startMaxY
276
- : startMinY;
277
-
278
- if (selectionResizeHandleMovesLeftEdge(handleId)) {
279
- movingX = pagePoint.x;
280
- } else if (selectionResizeHandleMovesRightEdge(handleId)) {
281
- movingX = pagePoint.x;
282
- } else {
283
- movingX = startMaxX;
284
- anchoredX = startMinX;
285
- }
286
-
287
- if (selectionResizeHandleMovesTopEdge(handleId)) {
288
- movingY = pagePoint.y;
289
- } else if (selectionResizeHandleMovesBottomEdge(handleId)) {
290
- movingY = pagePoint.y;
291
- } else {
292
- movingY = startMaxY;
293
- anchoredY = startMinY;
294
- }
295
-
296
- const rawWidth = movingX - anchoredX;
297
- const rawHeight = movingY - anchoredY;
298
- const signedWidth = selectionResizeHandleMovesLeftEdge(handleId)
299
- ? anchoredX - movingX
300
- : rawWidth;
301
- const signedHeight = selectionResizeHandleMovesTopEdge(handleId)
302
- ? anchoredY - movingY
303
- : rawHeight;
304
- const scaleX =
305
- selectionResizeHandleMovesLeftEdge(handleId) ||
306
- selectionResizeHandleMovesRightEdge(handleId)
307
- ? signedWidth / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w)
308
- : 1;
309
- const scaleY =
310
- selectionResizeHandleMovesTopEdge(handleId) ||
311
- selectionResizeHandleMovesBottomEdge(handleId)
312
- ? signedHeight / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h)
313
- : 1;
314
- const width = Math.max(MIN_SELECTION_RESIZE_SIZE, Math.abs(rawWidth));
315
- const height = Math.max(MIN_SELECTION_RESIZE_SIZE, Math.abs(rawHeight));
316
-
317
- return {
318
- bounds: new Box(
319
- Math.min(movingX, anchoredX),
320
- Math.min(movingY, anchoredY),
321
- width,
322
- height,
323
- ),
324
- scaleX,
325
- scaleY,
326
- };
327
- }
328
-
329
- export function getCenteredSelectionResizeBounds({
330
- startBounds,
331
- handleId,
332
- pagePoint,
333
- }: {
334
- startBounds: Box;
335
- handleId: SelectionResizeHandleId;
336
- pagePoint: Vec;
337
- }): Box {
338
- return getCenteredSelectionResizeBoundsWithScale({
339
- startBounds,
340
- handleId,
341
- pagePoint,
342
- }).bounds;
343
- }
344
-
345
- export function getCenteredSelectionResizeBoundsWithScale({
346
- startBounds,
347
- handleId,
348
- pagePoint,
349
- }: {
350
- startBounds: Box;
351
- handleId: SelectionResizeHandleId;
352
- pagePoint: Vec;
353
- }): SelectionResizeBoundsResult {
354
- const center = startBounds.center;
355
- const minHalfSize = MIN_SELECTION_RESIZE_SIZE / 2;
356
- const rawHalfWidth = pagePoint.x - center.x;
357
- const rawHalfHeight = pagePoint.y - center.y;
358
- const halfWidth = Math.max(Math.abs(rawHalfWidth), minHalfSize);
359
- const halfHeight = Math.max(Math.abs(rawHalfHeight), minHalfSize);
360
- const scaleX =
361
- selectionResizeHandleMovesLeftEdge(handleId) ||
362
- selectionResizeHandleMovesRightEdge(handleId)
363
- ? (rawHalfWidth *
364
- (selectionResizeHandleMovesLeftEdge(handleId) ? -2 : 2)) /
365
- Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w)
366
- : 1;
367
- const scaleY =
368
- selectionResizeHandleMovesTopEdge(handleId) ||
369
- selectionResizeHandleMovesBottomEdge(handleId)
370
- ? (rawHalfHeight *
371
- (selectionResizeHandleMovesTopEdge(handleId) ? -2 : 2)) /
372
- Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h)
373
- : 1;
374
-
375
- switch (handleId) {
376
- case "top":
377
- case "bottom":
378
- return {
379
- bounds: new Box(
380
- startBounds.minX,
381
- center.y - halfHeight,
382
- startBounds.w,
383
- halfHeight * 2,
384
- ),
385
- scaleX,
386
- scaleY,
387
- };
388
- case "left":
389
- case "right":
390
- return {
391
- bounds: new Box(
392
- center.x - halfWidth,
393
- startBounds.minY,
394
- halfWidth * 2,
395
- startBounds.h,
396
- ),
397
- scaleX,
398
- scaleY,
399
- };
400
- default:
401
- return {
402
- bounds: new Box(
403
- center.x - halfWidth,
404
- center.y - halfHeight,
405
- halfWidth * 2,
406
- halfHeight * 2,
407
- ),
408
- scaleX,
409
- scaleY,
410
- };
411
- }
412
- }
413
-
414
- export function getAspectRatioLockedSelectionResizeBounds({
415
- bounds,
416
- startBounds,
417
- handleId,
418
- aspectRatio,
419
- isResizingFromCenter,
420
- }: {
421
- bounds: Box;
422
- startBounds: Box;
423
- handleId: SelectionResizeHandleId;
424
- aspectRatio: number;
425
- isResizingFromCenter: boolean;
426
- }): Box {
427
- return getAspectRatioLockedSelectionResizeBoundsWithScale({
428
- bounds,
429
- startBounds,
430
- handleId,
431
- aspectRatio,
432
- isResizingFromCenter,
433
- }).bounds;
434
- }
435
-
436
- export function getAspectRatioLockedSelectionResizeBoundsWithScale({
437
- bounds,
438
- startBounds,
439
- handleId,
440
- aspectRatio,
441
- isResizingFromCenter,
442
- scaleX,
443
- scaleY,
444
- }: {
445
- bounds: Box;
446
- startBounds: Box;
447
- handleId: SelectionResizeHandleId;
448
- aspectRatio: number;
449
- isResizingFromCenter: boolean;
450
- scaleX?: number;
451
- scaleY?: number;
452
- }): SelectionResizeBoundsResult {
453
- if (aspectRatio <= 0) {
454
- return {
455
- bounds,
456
- scaleX: scaleX ?? bounds.w / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w),
457
- scaleY: scaleY ?? bounds.h / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h),
458
- };
459
- }
460
-
461
- let width = bounds.w;
462
- let height = bounds.h;
463
- const scaleXSign = Math.sign(scaleX ?? 1) || 1;
464
- const scaleYSign = Math.sign(scaleY ?? 1) || 1;
465
- switch (handleId) {
466
- case "left":
467
- case "right":
468
- height = width / aspectRatio;
469
- break;
470
- case "top":
471
- case "bottom":
472
- width = height * aspectRatio;
473
- break;
474
- default: {
475
- const widthScale = width / Math.max(1, startBounds.w);
476
- const heightScale = height / Math.max(1, startBounds.h);
477
-
478
- if (Math.abs(widthScale) > Math.abs(heightScale)) {
479
- height = width / aspectRatio;
480
- } else {
481
- width = height * aspectRatio;
482
- }
483
- break;
484
- }
485
- }
486
-
487
- if (isResizingFromCenter) {
488
- const center = startBounds.center;
489
- return {
490
- bounds: new Box(center.x - width / 2, center.y - height / 2, width, height),
491
- scaleX: scaleXSign * (width / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w)),
492
- scaleY: scaleYSign * (height / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h)),
493
- };
494
- }
495
-
496
- let nextBounds: Box;
497
- switch (handleId) {
498
- case "top_left":
499
- nextBounds = new Box(
500
- scaleXSign < 0 ? bounds.minX : bounds.maxX - width,
501
- scaleYSign < 0 ? bounds.minY : bounds.maxY - height,
502
- width,
503
- height,
504
- );
505
- break;
506
- case "top_right":
507
- nextBounds = new Box(
508
- scaleXSign < 0 ? bounds.maxX - width : bounds.minX,
509
- scaleYSign < 0 ? bounds.minY : bounds.maxY - height,
510
- width,
511
- height,
512
- );
513
- break;
514
- case "bottom_right":
515
- nextBounds = new Box(
516
- scaleXSign < 0 ? bounds.maxX - width : bounds.minX,
517
- scaleYSign < 0 ? bounds.maxY - height : bounds.minY,
518
- width,
519
- height,
520
- );
521
- break;
522
- case "bottom_left":
523
- nextBounds = new Box(
524
- scaleXSign < 0 ? bounds.minX : bounds.maxX - width,
525
- scaleYSign < 0 ? bounds.maxY - height : bounds.minY,
526
- width,
527
- height,
528
- );
529
- break;
530
- case "top":
531
- nextBounds = new Box(
532
- startBounds.center.x - width / 2,
533
- scaleYSign < 0 ? startBounds.maxY : startBounds.maxY - height,
534
- width,
535
- height,
536
- );
537
- break;
538
- case "right":
539
- nextBounds = new Box(
540
- scaleXSign < 0 ? startBounds.minX - width : startBounds.minX,
541
- startBounds.center.y - height / 2,
542
- width,
543
- height,
544
- );
545
- break;
546
- case "bottom":
547
- nextBounds = new Box(
548
- startBounds.center.x - width / 2,
549
- scaleYSign < 0 ? startBounds.minY - height : startBounds.minY,
550
- width,
551
- height,
552
- );
553
- break;
554
- case "left":
555
- nextBounds = new Box(
556
- scaleXSign < 0 ? startBounds.maxX : startBounds.maxX - width,
557
- startBounds.center.y - height / 2,
558
- width,
559
- height,
560
- );
561
- break;
562
- }
563
-
564
- return {
565
- bounds: nextBounds,
566
- scaleX: scaleXSign * (width / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.w)),
567
- scaleY: scaleYSign * (height / Math.max(MIN_SELECTION_RESIZE_SIZE, startBounds.h)),
568
- };
569
- }
570
-
571
- export function getConstrainedSelectionResizeBounds({
572
- startBounds,
573
- handleId,
574
- pagePoint,
575
- isAspectRatioLocked,
576
- isResizingFromCenter,
577
- aspectRatio,
578
- }: {
579
- startBounds: Box;
580
- handleId: SelectionResizeHandleId;
581
- pagePoint: Vec;
582
- isAspectRatioLocked: boolean;
583
- isResizingFromCenter: boolean;
584
- aspectRatio: number;
585
- }): Box {
586
- return getConstrainedSelectionResizeBoundsWithScale({
587
- startBounds,
588
- handleId,
589
- pagePoint,
590
- isAspectRatioLocked,
591
- isResizingFromCenter,
592
- aspectRatio,
593
- }).bounds;
594
- }
595
-
596
- export function getConstrainedSelectionResizeBoundsWithScale({
597
- startBounds,
598
- handleId,
599
- pagePoint,
600
- isAspectRatioLocked,
601
- isResizingFromCenter,
602
- aspectRatio,
603
- }: {
604
- startBounds: Box;
605
- handleId: SelectionResizeHandleId;
606
- pagePoint: Vec;
607
- isAspectRatioLocked: boolean;
608
- isResizingFromCenter: boolean;
609
- aspectRatio: number;
610
- }): SelectionResizeBoundsResult {
611
- const result = isResizingFromCenter
612
- ? getCenteredSelectionResizeBoundsWithScale({
613
- startBounds,
614
- handleId,
615
- pagePoint,
616
- })
617
- : getSelectionResizeBoundsWithScale({ startBounds, handleId, pagePoint });
618
- if (!isAspectRatioLocked) {
619
- return result;
620
- }
621
-
622
- return getAspectRatioLockedSelectionResizeBoundsWithScale({
623
- bounds: result.bounds,
624
- startBounds,
625
- handleId,
626
- aspectRatio,
627
- isResizingFromCenter,
628
- scaleX: result.scaleX,
629
- scaleY: result.scaleY,
630
- });
631
- }
632
-
633
- export function normalizeSelectionResizeBoundsFromEdges({
634
- minX,
635
- minY,
636
- maxX,
637
- maxY,
638
- }: {
639
- minX: number;
640
- minY: number;
641
- maxX: number;
642
- maxY: number;
643
- }): Box {
644
- const nextMinX = Math.min(minX, maxX);
645
- const nextMinY = Math.min(minY, maxY);
646
- const nextMaxX = Math.max(minX, maxX);
647
- const nextMaxY = Math.max(minY, maxY);
648
- return new Box(
649
- nextMinX,
650
- nextMinY,
651
- Math.max(1, nextMaxX - nextMinX),
652
- Math.max(1, nextMaxY - nextMinY),
653
- );
654
- }