@weasel-js/core 1.9.3 → 1.10.0

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 (1139) hide show
  1. package/CHANGELOG.md +1106 -0
  2. package/README.md +7 -5
  3. package/dist/WeaselProvider.js +5 -7
  4. package/dist/WeaselProvider.js.map +1 -1
  5. package/dist/affordances/composeAffordanceLayer.js +91 -93
  6. package/dist/affordances/composeAffordanceLayer.js.map +1 -1
  7. package/dist/affordances/cornerResize.js +27 -18
  8. package/dist/affordances/cornerResize.js.map +1 -1
  9. package/dist/affordances/hitAffordanceRegions.js +65 -104
  10. package/dist/affordances/hitAffordanceRegions.js.map +1 -1
  11. package/dist/affordances/pathAnchors.js.map +1 -1
  12. package/dist/affordances/rotationHandle.js +22 -21
  13. package/dist/affordances/rotationHandle.js.map +1 -1
  14. package/dist/animation/behaviors/coast.js +21 -0
  15. package/dist/animation/behaviors/coast.js.map +1 -0
  16. package/dist/animation/behaviors/coastByWrite.js +107 -0
  17. package/dist/animation/behaviors/coastByWrite.js.map +1 -0
  18. package/dist/animation/behaviors/coastOnTargets.js +94 -0
  19. package/dist/animation/behaviors/coastOnTargets.js.map +1 -0
  20. package/dist/animation/behaviors/momentum.js +38 -88
  21. package/dist/animation/behaviors/momentum.js.map +1 -1
  22. package/dist/animation/clipTargets.js +12 -0
  23. package/dist/animation/clipTargets.js.map +1 -0
  24. package/dist/animation/index.js +15 -20
  25. package/dist/animation/poseHelpers.js +112 -33
  26. package/dist/animation/poseHelpers.js.map +1 -1
  27. package/dist/animation/poseTarget.js +115 -0
  28. package/dist/animation/poseTarget.js.map +1 -0
  29. package/dist/animation/reflow.js +113 -83
  30. package/dist/animation/reflow.js.map +1 -1
  31. package/dist/animation/rewind.js +66 -0
  32. package/dist/animation/rewind.js.map +1 -0
  33. package/dist/animation/rig/bindRig.js +85 -53
  34. package/dist/animation/rig/bindRig.js.map +1 -1
  35. package/dist/animation/rig/rigNode.js +93 -0
  36. package/dist/animation/rig/rigNode.js.map +1 -0
  37. package/dist/animation/rig/rigSeat.js +26 -0
  38. package/dist/animation/rig/rigSeat.js.map +1 -0
  39. package/dist/animation/rig/skinBinding.js +56 -0
  40. package/dist/animation/rig/skinBinding.js.map +1 -0
  41. package/dist/animation/rig/useRig.js +31 -16
  42. package/dist/animation/rig/useRig.js.map +1 -1
  43. package/dist/animation/wrappers/animateLifecycle.js +32 -24
  44. package/dist/animation/wrappers/animateLifecycle.js.map +1 -1
  45. package/dist/animation/wrappers/animateOnSetPose.js +31 -29
  46. package/dist/animation/wrappers/animateOnSetPose.js.map +1 -1
  47. package/dist/animation/wrappers/instantPose.js +13 -0
  48. package/dist/animation/wrappers/instantPose.js.map +1 -0
  49. package/dist/animation/writtenPoseTarget.js +33 -0
  50. package/dist/animation/writtenPoseTarget.js.map +1 -0
  51. package/dist/{autoPoseDescriptor-vCdt55xm.d.ts → autoPoseDescriptor-DHg5KqaJ.d.ts} +1 -1
  52. package/dist/barrel/canvas.js +31 -0
  53. package/dist/barrel/chrome.js +16 -0
  54. package/dist/barrel/input.js +18 -0
  55. package/dist/barrel/interactions.js +38 -0
  56. package/dist/barrel/paint.js +11 -0
  57. package/dist/barrel/paths.js +12 -0
  58. package/dist/barrel/renderer.js +14 -0
  59. package/dist/barrel/routing.js +57 -0
  60. package/dist/barrel/scene.js +37 -0
  61. package/dist/barrel/text.js +9 -0
  62. package/dist/barrel/viewport.js +42 -0
  63. package/dist/canvas/Canvas.js +280 -559
  64. package/dist/canvas/Canvas.js.map +1 -1
  65. package/dist/canvas/CanvasView.js +147 -167
  66. package/dist/canvas/CanvasView.js.map +1 -1
  67. package/dist/canvas/CursorCoordsHud.js +53 -49
  68. package/dist/canvas/CursorCoordsHud.js.map +1 -1
  69. package/dist/canvas/DrawCanvas.js +40 -51
  70. package/dist/canvas/DrawCanvas.js.map +1 -1
  71. package/dist/canvas/ModalityHud.js.map +1 -1
  72. package/dist/canvas/NodeShape.js +55 -374
  73. package/dist/canvas/NodeShape.js.map +1 -1
  74. package/dist/canvas/PickHud.js +50 -47
  75. package/dist/canvas/PickHud.js.map +1 -1
  76. package/dist/canvas/SceneCanvas/DevHuds.js +40 -0
  77. package/dist/canvas/SceneCanvas/DevHuds.js.map +1 -0
  78. package/dist/canvas/SceneCanvas/GestureDispatcherMounter.js +126 -0
  79. package/dist/canvas/SceneCanvas/GestureDispatcherMounter.js.map +1 -0
  80. package/dist/canvas/SceneCanvas/PointerProviderIfRoot.js +27 -31
  81. package/dist/canvas/SceneCanvas/PointerProviderIfRoot.js.map +1 -1
  82. package/dist/canvas/SceneCanvas/StandardActionsRegistrar.js +64 -0
  83. package/dist/canvas/SceneCanvas/StandardActionsRegistrar.js.map +1 -0
  84. package/dist/canvas/SceneCanvas/ToolKeybindingsMounter.js +16 -0
  85. package/dist/canvas/SceneCanvas/ToolKeybindingsMounter.js.map +1 -0
  86. package/dist/canvas/SceneCanvas/coordTrace.js +46 -0
  87. package/dist/canvas/SceneCanvas/coordTrace.js.map +1 -0
  88. package/dist/canvas/SceneCanvas/defaultNodeProperties.js +138 -85
  89. package/dist/canvas/SceneCanvas/defaultNodeProperties.js.map +1 -1
  90. package/dist/canvas/SceneCanvas/defaultNodeRouting.js +9 -8
  91. package/dist/canvas/SceneCanvas/defaultNodeRouting.js.map +1 -1
  92. package/dist/canvas/SceneCanvas/dispatcherGestureBounds.js.map +1 -1
  93. package/dist/canvas/SceneCanvas/features.js +74 -43
  94. package/dist/canvas/SceneCanvas/features.js.map +1 -1
  95. package/dist/canvas/SceneCanvas/isDev.js +12 -0
  96. package/dist/canvas/SceneCanvas/isDev.js.map +1 -0
  97. package/dist/canvas/SceneCanvas/poseGeometry.js +31 -34
  98. package/dist/canvas/SceneCanvas/poseGeometry.js.map +1 -1
  99. package/dist/canvas/SceneCanvas/poseRegistrars.js +13 -0
  100. package/dist/canvas/SceneCanvas/poseRegistrars.js.map +1 -0
  101. package/dist/canvas/SceneCanvas/props.js +39 -0
  102. package/dist/canvas/SceneCanvas/props.js.map +1 -0
  103. package/dist/canvas/SceneCanvas/toolRegistry.js +23 -0
  104. package/dist/canvas/SceneCanvas/toolRegistry.js.map +1 -0
  105. package/dist/canvas/SceneCanvas/useActionsPropResolver.js +6 -1
  106. package/dist/canvas/SceneCanvas/useActionsPropResolver.js.map +1 -1
  107. package/dist/canvas/SceneCanvas/useBuiltinShapeTools.js +21 -62
  108. package/dist/canvas/SceneCanvas/useBuiltinShapeTools.js.map +1 -1
  109. package/dist/canvas/SceneCanvas/useBuiltinTools.js +21 -0
  110. package/dist/canvas/SceneCanvas/useBuiltinTools.js.map +1 -0
  111. package/dist/canvas/SceneCanvas/useCanvasCamera.js +38 -0
  112. package/dist/canvas/SceneCanvas/useCanvasCamera.js.map +1 -0
  113. package/dist/canvas/SceneCanvas/useCanvasDispatcher.js +20 -0
  114. package/dist/canvas/SceneCanvas/useCanvasDispatcher.js.map +1 -0
  115. package/dist/canvas/SceneCanvas/useCanvasSelection.js +16 -0
  116. package/dist/canvas/SceneCanvas/useCanvasSelection.js.map +1 -0
  117. package/dist/canvas/SceneCanvas/useCanvasTools.js +67 -0
  118. package/dist/canvas/SceneCanvas/useCanvasTools.js.map +1 -0
  119. package/dist/canvas/SceneCanvas/useDispatcherOverlayLayer.js +29 -29
  120. package/dist/canvas/SceneCanvas/useDispatcherOverlayLayer.js.map +1 -1
  121. package/dist/canvas/SceneCanvas/useHeldModifiers.js +20 -0
  122. package/dist/canvas/SceneCanvas/useHeldModifiers.js.map +1 -0
  123. package/dist/canvas/SceneCanvas/useNodeAtPoint.js +26 -0
  124. package/dist/canvas/SceneCanvas/useNodeAtPoint.js.map +1 -0
  125. package/dist/canvas/SceneCanvas/useNodeKinds.js +26 -0
  126. package/dist/canvas/SceneCanvas/useNodeKinds.js.map +1 -0
  127. package/dist/canvas/SceneCanvas/usePreviewGhostLayer.js +48 -48
  128. package/dist/canvas/SceneCanvas/usePreviewGhostLayer.js.map +1 -1
  129. package/dist/canvas/SceneCanvas/useSceneCanvasHandle.js +47 -0
  130. package/dist/canvas/SceneCanvas/useSceneCanvasHandle.js.map +1 -0
  131. package/dist/canvas/SceneCanvas/useSceneCanvasLayers.js +66 -0
  132. package/dist/canvas/SceneCanvas/useSceneCanvasLayers.js.map +1 -0
  133. package/dist/canvas/SceneCanvas/useSceneChrome.js +59 -0
  134. package/dist/canvas/SceneCanvas/useSceneChrome.js.map +1 -0
  135. package/dist/canvas/SceneCanvas/useSceneRedrawSources.js +23 -0
  136. package/dist/canvas/SceneCanvas/useSceneRedrawSources.js.map +1 -0
  137. package/dist/canvas/SceneCanvas/useSceneSelectTool.js +74 -78
  138. package/dist/canvas/SceneCanvas/useSceneSelectTool.js.map +1 -1
  139. package/dist/canvas/SceneCanvas/useSceneSlotLayers.js +37 -0
  140. package/dist/canvas/SceneCanvas/useSceneSlotLayers.js.map +1 -0
  141. package/dist/canvas/SceneCanvas/useSelectionOverlayLayer.js +38 -0
  142. package/dist/canvas/SceneCanvas/useSelectionOverlayLayer.js.map +1 -0
  143. package/dist/canvas/SceneCanvas/useViewLayerGate.js +20 -0
  144. package/dist/canvas/SceneCanvas/useViewLayerGate.js.map +1 -0
  145. package/dist/canvas/SceneCanvas/useViewportActions.js +9 -1
  146. package/dist/canvas/SceneCanvas/useViewportActions.js.map +1 -1
  147. package/dist/canvas/SceneCanvas/worldPointAt.js +9 -0
  148. package/dist/canvas/SceneCanvas/worldPointAt.js.map +1 -0
  149. package/dist/canvas/SceneCanvas.js +311 -969
  150. package/dist/canvas/SceneCanvas.js.map +1 -1
  151. package/dist/canvas/SceneViewCanvas.js +42 -46
  152. package/dist/canvas/SceneViewCanvas.js.map +1 -1
  153. package/dist/canvas/adapterDerivedPath.js +26 -0
  154. package/dist/canvas/adapterDerivedPath.js.map +1 -0
  155. package/dist/canvas/affordanceAt.js +11 -1
  156. package/dist/canvas/affordanceAt.js.map +1 -1
  157. package/dist/canvas/buildSceneLayer.js +111 -0
  158. package/dist/canvas/buildSceneLayer.js.map +1 -0
  159. package/dist/canvas/buildSceneTree.js +16 -19
  160. package/dist/canvas/buildSceneTree.js.map +1 -1
  161. package/dist/canvas/canvasRenderer.js +67 -55
  162. package/dist/canvas/canvasRenderer.js.map +1 -1
  163. package/dist/canvas/colorOverrides.js.map +1 -1
  164. package/dist/canvas/defaultDrawOne.js +12 -12
  165. package/dist/canvas/defaultDrawOne.js.map +1 -1
  166. package/dist/canvas/deps/areaSelect.js +4 -4
  167. package/dist/canvas/deps/areaSelect.js.map +1 -1
  168. package/dist/canvas/deps/changes.js +13 -0
  169. package/dist/canvas/deps/changes.js.map +1 -0
  170. package/dist/canvas/deps/debug.js.map +1 -1
  171. package/dist/canvas/deps/editAnchors.js +38 -57
  172. package/dist/canvas/deps/editAnchors.js.map +1 -1
  173. package/dist/canvas/deps/geometryProjection.js.map +1 -1
  174. package/dist/canvas/deps/hitTestArea.js +31 -26
  175. package/dist/canvas/deps/hitTestArea.js.map +1 -1
  176. package/dist/canvas/deps/insert.js +130 -91
  177. package/dist/canvas/deps/insert.js.map +1 -1
  178. package/dist/canvas/deps/lassoSelect.js +5 -5
  179. package/dist/canvas/deps/lassoSelect.js.map +1 -1
  180. package/dist/canvas/deps/poseDescriptor.js +1 -1
  181. package/dist/canvas/deps/poseDescriptor.js.map +1 -1
  182. package/dist/canvas/deps/resizePolicy.js.map +1 -1
  183. package/dist/canvas/deps/slice.js +26 -26
  184. package/dist/canvas/deps/slice.js.map +1 -1
  185. package/dist/canvas/deps/textEdit.js +6 -5
  186. package/dist/canvas/deps/textEdit.js.map +1 -1
  187. package/dist/canvas/deps/view.js.map +1 -1
  188. package/dist/canvas/derivedPath.js +47 -22
  189. package/dist/canvas/derivedPath.js.map +1 -1
  190. package/dist/canvas/drawEnvelope.js +8 -4
  191. package/dist/canvas/drawEnvelope.js.map +1 -1
  192. package/dist/canvas/getNodeAtPoint.js +4 -8
  193. package/dist/canvas/getNodeAtPoint.js.map +1 -1
  194. package/dist/canvas/hud.module.js +1 -1
  195. package/dist/canvas/hud.module.js.map +1 -1
  196. package/dist/canvas/insertPreviewExtent.js.map +1 -1
  197. package/dist/canvas/kitRequirements.js +2 -2
  198. package/dist/canvas/kitRequirements.js.map +1 -1
  199. package/dist/canvas/layerOrder.js +13 -6
  200. package/dist/canvas/layerOrder.js.map +1 -1
  201. package/dist/canvas/layerSlots.js +6 -1
  202. package/dist/canvas/layerSlots.js.map +1 -1
  203. package/dist/canvas/nodeShapes/derivedPainter.js +34 -0
  204. package/dist/canvas/nodeShapes/derivedPainter.js.map +1 -0
  205. package/dist/canvas/nodeShapes/imagePainter.js +87 -0
  206. package/dist/canvas/nodeShapes/imagePainter.js.map +1 -0
  207. package/dist/canvas/nodeShapes/memo.js +9 -0
  208. package/dist/canvas/nodeShapes/memo.js.map +1 -0
  209. package/dist/canvas/nodeShapes/nodePaint.js +68 -0
  210. package/dist/canvas/nodeShapes/nodePaint.js.map +1 -0
  211. package/dist/canvas/nodeShapes/pathPainter.js +39 -0
  212. package/dist/canvas/nodeShapes/pathPainter.js.map +1 -0
  213. package/dist/canvas/nodeShapes/poseBox.js +20 -0
  214. package/dist/canvas/nodeShapes/poseBox.js.map +1 -0
  215. package/dist/canvas/nodeShapes/rectFallbackPainter.js +38 -0
  216. package/dist/canvas/nodeShapes/rectFallbackPainter.js.map +1 -0
  217. package/dist/canvas/nodeShapes/shapePainter.js +72 -0
  218. package/dist/canvas/nodeShapes/shapePainter.js.map +1 -0
  219. package/dist/canvas/nodeShapes/textPainter.js +55 -0
  220. package/dist/canvas/nodeShapes/textPainter.js.map +1 -0
  221. package/dist/canvas/overlayRoleStrokes.js.map +1 -1
  222. package/dist/canvas/paintCull.js +11 -14
  223. package/dist/canvas/paintCull.js.map +1 -1
  224. package/dist/{features/cursor → canvas}/paintedCursorLayer.js +2 -2
  225. package/dist/canvas/paintedCursorLayer.js.map +1 -0
  226. package/dist/canvas/pickWalk.js +59 -68
  227. package/dist/canvas/pickWalk.js.map +1 -1
  228. package/dist/canvas/planeClips.js +18 -19
  229. package/dist/canvas/planeClips.js.map +1 -1
  230. package/dist/canvas/poseCascade.js +41 -0
  231. package/dist/canvas/poseCascade.js.map +1 -0
  232. package/dist/canvas/poseRotation.js +9 -23
  233. package/dist/canvas/poseRotation.js.map +1 -1
  234. package/dist/canvas/rasterReadback.js +22 -0
  235. package/dist/canvas/rasterReadback.js.map +1 -0
  236. package/dist/canvas/renderDebugSnapshot.js +11 -11
  237. package/dist/canvas/renderDebugSnapshot.js.map +1 -1
  238. package/dist/canvas/renderNeeds.js +3 -3
  239. package/dist/canvas/renderNeeds.js.map +1 -1
  240. package/dist/canvas/renderSceneToPixels.js +64 -81
  241. package/dist/canvas/renderSceneToPixels.js.map +1 -1
  242. package/dist/canvas/sceneAdapter.js +68 -214
  243. package/dist/canvas/sceneAdapter.js.map +1 -1
  244. package/dist/canvas/sceneClipboard.js +112 -0
  245. package/dist/canvas/sceneClipboard.js.map +1 -0
  246. package/dist/canvas/sceneLayerPaint.js +4 -4
  247. package/dist/canvas/sceneLayerPaint.js.map +1 -1
  248. package/dist/canvas/sceneSlotWiring.js.map +1 -1
  249. package/dist/canvas/sceneViewRender.js +39 -39
  250. package/dist/canvas/sceneViewRender.js.map +1 -1
  251. package/dist/canvas/slopsDebugLayer.js +4 -4
  252. package/dist/canvas/slopsDebugLayer.js.map +1 -1
  253. package/dist/canvas/surface.module.js +6 -0
  254. package/dist/canvas/surface.module.js.map +1 -0
  255. package/dist/canvas/surfaceBox.js +16 -0
  256. package/dist/canvas/surfaceBox.js.map +1 -0
  257. package/dist/canvas/useCanvasRenderer.js +26 -6
  258. package/dist/canvas/useCanvasRenderer.js.map +1 -1
  259. package/dist/canvas/useCanvasSurface.js +31 -0
  260. package/dist/canvas/useCanvasSurface.js.map +1 -0
  261. package/dist/canvas/useCanvasView.js +67 -0
  262. package/dist/canvas/useCanvasView.js.map +1 -0
  263. package/dist/canvas/useFrameLoop.js +39 -31
  264. package/dist/canvas/useFrameLoop.js.map +1 -1
  265. package/dist/canvas/useHostAnchor.js +35 -33
  266. package/dist/canvas/useHostAnchor.js.map +1 -1
  267. package/dist/canvas/useLateContentRedraw.js +8 -8
  268. package/dist/canvas/useLateContentRedraw.js.map +1 -1
  269. package/dist/canvas/useSceneLayerList.js +11 -0
  270. package/dist/canvas/useSceneLayerList.js.map +1 -0
  271. package/dist/canvas/useSurfaceInput.js +42 -0
  272. package/dist/canvas/useSurfaceInput.js.map +1 -0
  273. package/dist/canvas/useToolCursor.js +29 -0
  274. package/dist/canvas/useToolCursor.js.map +1 -0
  275. package/dist/canvas/useViewHelpers.js +46 -85
  276. package/dist/canvas/useViewHelpers.js.map +1 -1
  277. package/dist/canvas/viewInputs.js.map +1 -1
  278. package/dist/canvas/viewRegistry.js +25 -27
  279. package/dist/canvas/viewRegistry.js.map +1 -1
  280. package/dist/canvas/watchElementMove.js +43 -0
  281. package/dist/canvas/watchElementMove.js.map +1 -0
  282. package/dist/canvas/wrapNodeOutput.js.map +1 -1
  283. package/dist/clipboard.d.ts +16 -19
  284. package/dist/{types-B_9g6hMM.d.ts → clone-2a5hVbBd.d.ts} +123 -74
  285. package/dist/clone.d.ts +4 -7
  286. package/dist/clone.js +0 -2
  287. package/dist/core/device/index.js +5 -4
  288. package/dist/core/device/targets.js.map +1 -1
  289. package/dist/core/device/useDeviceProfile.js +38 -44
  290. package/dist/core/device/useDeviceProfile.js.map +1 -1
  291. package/dist/core/device/watchDevicePixelRatio.js +17 -0
  292. package/dist/core/device/watchDevicePixelRatio.js.map +1 -0
  293. package/dist/{interactions/actions/resize → core/geometry}/autoPoseDescriptor.js +8 -7
  294. package/dist/core/geometry/autoPoseDescriptor.js.map +1 -0
  295. package/dist/core/geometry/pathPoseDescriptor.js +88 -0
  296. package/dist/core/geometry/pathPoseDescriptor.js.map +1 -0
  297. package/dist/core/geometry/poseDescriptor.js +68 -19
  298. package/dist/core/geometry/poseDescriptor.js.map +1 -1
  299. package/dist/core/geometry/regionHit.js +31 -34
  300. package/dist/core/geometry/regionHit.js.map +1 -1
  301. package/dist/core/geometry/targetFrame.js +94 -0
  302. package/dist/core/geometry/targetFrame.js.map +1 -0
  303. package/dist/core/geometry/unionBounds.js +30 -29
  304. package/dist/core/geometry/unionBounds.js.map +1 -1
  305. package/dist/core/isPlainObject.js +2 -11
  306. package/dist/core/layers/backgroundFill.js +31 -0
  307. package/dist/core/layers/backgroundFill.js.map +1 -0
  308. package/dist/{features/groups → core/layers}/children.js +1 -1
  309. package/dist/core/layers/children.js.map +1 -0
  310. package/dist/core/layers/gateLayer.js +13 -0
  311. package/dist/core/layers/gateLayer.js.map +1 -0
  312. package/dist/core/layers/layerGroup.js +40 -0
  313. package/dist/core/layers/layerGroup.js.map +1 -0
  314. package/dist/core/layers/render.js +50 -76
  315. package/dist/core/layers/render.js.map +1 -1
  316. package/dist/core/ops/arrange.js +1 -0
  317. package/dist/core/ops/arrange.js.map +1 -1
  318. package/dist/core/ops/create.js +10 -5
  319. package/dist/core/ops/create.js.map +1 -1
  320. package/dist/core/ops/createHistory.js +9 -9
  321. package/dist/core/ops/createHistory.js.map +1 -1
  322. package/dist/core/ops/delete.js +12 -24
  323. package/dist/core/ops/delete.js.map +1 -1
  324. package/dist/core/ops/reorder/index.js +43 -40
  325. package/dist/core/ops/reorder/index.js.map +1 -1
  326. package/dist/core/ops/reorder/setChildOrder.js +34 -0
  327. package/dist/core/ops/reorder/setChildOrder.js.map +1 -0
  328. package/dist/core/paint/meshKind.js +16 -0
  329. package/dist/core/paint/meshKind.js.map +1 -0
  330. package/dist/{features/meshPaint/lazyKind.js → core/paint/meshKindLazy.js} +282 -105
  331. package/dist/core/paint/meshKindLazy.js.map +1 -0
  332. package/dist/core/paint/paintKindEntry.js +8 -0
  333. package/dist/core/paint/paintKindEntry.js.map +1 -0
  334. package/dist/core/paint/paintKinds.js +144 -0
  335. package/dist/core/paint/paintKinds.js.map +1 -0
  336. package/dist/core/paint/registerMesh.js +7 -0
  337. package/dist/core/paint/registerMesh.js.map +1 -0
  338. package/dist/core/scene/NodeProperties.js.map +1 -1
  339. package/dist/core/scene/NodeRouting.js.map +1 -1
  340. package/dist/core/scene/appliedLog.js +37 -0
  341. package/dist/core/scene/appliedLog.js.map +1 -0
  342. package/dist/core/scene/arrivalWindow.js +102 -0
  343. package/dist/core/scene/arrivalWindow.js.map +1 -0
  344. package/dist/core/scene/boundOps.js +40 -0
  345. package/dist/core/scene/boundOps.js.map +1 -0
  346. package/dist/core/scene/composeFrame.js +9 -6
  347. package/dist/core/scene/composeFrame.js.map +1 -1
  348. package/dist/{features/groups → core/scene}/composePose.js +18 -18
  349. package/dist/core/scene/composePose.js.map +1 -0
  350. package/dist/core/scene/depMemo.js +31 -6
  351. package/dist/core/scene/depMemo.js.map +1 -1
  352. package/dist/core/scene/derivedPath.js +19 -20
  353. package/dist/core/scene/derivedPath.js.map +1 -1
  354. package/dist/core/scene/editMode.js +26 -0
  355. package/dist/core/scene/editMode.js.map +1 -0
  356. package/dist/core/scene/effectivePose.js +38 -39
  357. package/dist/core/scene/effectivePose.js.map +1 -1
  358. package/dist/core/scene/fieldEdits.js +98 -0
  359. package/dist/core/scene/fieldEdits.js.map +1 -0
  360. package/dist/core/scene/historyFacade.js +130 -0
  361. package/dist/core/scene/historyFacade.js.map +1 -0
  362. package/dist/core/scene/historyForm.js +6 -0
  363. package/dist/core/scene/historyForm.js.map +1 -0
  364. package/dist/core/scene/kitOps.js +185 -0
  365. package/dist/core/scene/kitOps.js.map +1 -0
  366. package/dist/core/scene/kitRegistry.js.map +1 -1
  367. package/dist/core/scene/layerStack.js +131 -0
  368. package/dist/core/scene/layerStack.js.map +1 -0
  369. package/dist/core/scene/layoutPass.js +58 -59
  370. package/dist/core/scene/layoutPass.js.map +1 -1
  371. package/dist/core/scene/lockGuard.js +37 -0
  372. package/dist/core/scene/lockGuard.js.map +1 -0
  373. package/dist/{features/groups → core/scene}/nestedHit.js +3 -3
  374. package/dist/core/scene/nestedHit.js.map +1 -0
  375. package/dist/core/scene/nodeFnFields.js +10 -11
  376. package/dist/core/scene/nodeFnFields.js.map +1 -1
  377. package/dist/core/scene/nodeMemo.js +45 -19
  378. package/dist/core/scene/nodeMemo.js.map +1 -1
  379. package/dist/core/scene/nodeStore.js +127 -0
  380. package/dist/core/scene/nodeStore.js.map +1 -0
  381. package/dist/core/scene/notifier.js +37 -0
  382. package/dist/core/scene/notifier.js.map +1 -0
  383. package/dist/core/scene/opTable.js +50 -0
  384. package/dist/core/scene/opTable.js.map +1 -0
  385. package/dist/core/scene/outerOps.js +66 -0
  386. package/dist/core/scene/outerOps.js.map +1 -0
  387. package/dist/core/scene/poseFeed.js +38 -38
  388. package/dist/core/scene/poseFeed.js.map +1 -1
  389. package/dist/core/scene/poseHold.js +39 -0
  390. package/dist/core/scene/poseHold.js.map +1 -0
  391. package/dist/core/scene/poseOverrides.js +44 -40
  392. package/dist/core/scene/poseOverrides.js.map +1 -1
  393. package/dist/core/scene/poseSnapshot.js.map +1 -1
  394. package/dist/core/scene/reconcileSpecs.js +3 -2
  395. package/dist/core/scene/reconcileSpecs.js.map +1 -1
  396. package/dist/core/scene/recorder.js +86 -0
  397. package/dist/core/scene/recorder.js.map +1 -0
  398. package/dist/core/scene/renderOrder.js +84 -0
  399. package/dist/core/scene/renderOrder.js.map +1 -0
  400. package/dist/core/scene/scene.js +80 -1266
  401. package/dist/core/scene/scene.js.map +1 -1
  402. package/dist/core/scene/sceneEdits.js +58 -0
  403. package/dist/core/scene/sceneEdits.js.map +1 -0
  404. package/dist/core/scene/sceneMutators.js +49 -0
  405. package/dist/core/scene/sceneMutators.js.map +1 -0
  406. package/dist/core/scene/scenePoseAdapter.js +16 -0
  407. package/dist/core/scene/scenePoseAdapter.js.map +1 -0
  408. package/dist/core/scene/sceneRecording.js +90 -0
  409. package/dist/core/scene/sceneRecording.js.map +1 -0
  410. package/dist/core/scene/sceneSelection.js +28 -0
  411. package/dist/core/scene/sceneSelection.js.map +1 -0
  412. package/dist/core/scene/sceneState.js +49 -0
  413. package/dist/core/scene/sceneState.js.map +1 -0
  414. package/dist/core/scene/serialization.js +71 -0
  415. package/dist/core/scene/serialization.js.map +1 -0
  416. package/dist/core/scene/staleReplay.js +51 -0
  417. package/dist/core/scene/staleReplay.js.map +1 -0
  418. package/dist/core/scene/statedFields.js +9 -0
  419. package/dist/core/scene/statedFields.js.map +1 -0
  420. package/dist/core/scene/treeEdits.js +127 -0
  421. package/dist/core/scene/treeEdits.js.map +1 -0
  422. package/dist/core/scene/treeOrder.js +13 -0
  423. package/dist/core/scene/treeOrder.js.map +1 -0
  424. package/dist/core/scene/treeReads.js +26 -0
  425. package/dist/core/scene/treeReads.js.map +1 -0
  426. package/dist/core/scene/types.js.map +1 -1
  427. package/dist/{features/groups → core/scene}/unionOfChildren.js +3 -3
  428. package/dist/core/scene/unionOfChildren.js.map +1 -0
  429. package/dist/core/scene/unitScopes.js +13 -0
  430. package/dist/core/scene/unitScopes.js.map +1 -0
  431. package/dist/core/scene/useScene.js.map +1 -1
  432. package/dist/core/selection/readOnlySelection.js +32 -0
  433. package/dist/core/selection/readOnlySelection.js.map +1 -0
  434. package/dist/core/selection/usePublishSceneSelection.js +26 -0
  435. package/dist/core/selection/usePublishSceneSelection.js.map +1 -0
  436. package/dist/core/selection/useSelection.js +34 -25
  437. package/dist/core/selection/useSelection.js.map +1 -1
  438. package/dist/core/shapeKinds.js.map +1 -1
  439. package/dist/core/stylus/stylus.js.map +1 -1
  440. package/dist/core/stylus/usePointerStylus.js.map +1 -1
  441. package/dist/core/usePaintKinds.js +1 -1
  442. package/dist/core/usePaintKinds.js.map +1 -1
  443. package/dist/core/viewport/clientToWorld.js.map +1 -1
  444. package/dist/core/viewport/fitViewToBounds.js.map +1 -1
  445. package/dist/core/viewport/parallax.js.map +1 -1
  446. package/dist/core/viewport/screenSlop.js +11 -11
  447. package/dist/core/viewport/screenSlop.js.map +1 -1
  448. package/dist/core/viewport/useCanvasSize.js.map +1 -1
  449. package/dist/core/viewport/useDecayLoop.js +8 -8
  450. package/dist/core/viewport/useDecayLoop.js.map +1 -1
  451. package/dist/core/viewport/useNodeOverlayFrame.js +84 -0
  452. package/dist/core/viewport/useNodeOverlayFrame.js.map +1 -0
  453. package/dist/core/viewport/useViewAnimation.js +102 -43
  454. package/dist/core/viewport/useViewAnimation.js.map +1 -1
  455. package/dist/core/viewport/view.js +9 -9
  456. package/dist/core/viewport/view.js.map +1 -1
  457. package/dist/core/viewport/wheelHandler.js.map +1 -1
  458. package/dist/core/viewport/zoomBounds.js +10 -8
  459. package/dist/core/viewport/zoomBounds.js.map +1 -1
  460. package/dist/{cornerHandles-BCrDp_mH.d.ts → cornerHandles-BEshc4z3.d.ts} +11 -24
  461. package/dist/debug/createDebugOverlayLayer.js +97 -97
  462. package/dist/debug/createDebugOverlayLayer.js.map +1 -1
  463. package/dist/debug/createDebugSink.js.map +1 -1
  464. package/dist/debug/flag.js +2 -41
  465. package/dist/debug/frameStats.js.map +1 -1
  466. package/dist/debug/useDebugSink.js +52 -0
  467. package/dist/debug/useDebugSink.js.map +1 -0
  468. package/dist/features/chrome-caps/buildChromeCtx.js.map +1 -1
  469. package/dist/features/chrome-caps/conditions.js.map +1 -1
  470. package/dist/features/chrome-caps/defaults.js.map +1 -1
  471. package/dist/features/chrome-caps/resolve.js.map +1 -1
  472. package/dist/features/chrome-caps/useChromeCaps.js +54 -0
  473. package/dist/features/chrome-caps/useChromeCaps.js.map +1 -0
  474. package/dist/features/chrome-caps/useHoverTracking.js +22 -17
  475. package/dist/features/chrome-caps/useHoverTracking.js.map +1 -1
  476. package/dist/features/ingestion/contentHandlers.js +28 -19
  477. package/dist/features/ingestion/contentHandlers.js.map +1 -1
  478. package/dist/features/ingestion/imageHandler.js +21 -24
  479. package/dist/features/ingestion/imageHandler.js.map +1 -1
  480. package/dist/features/ingestion/openFilePicker.js.map +1 -1
  481. package/dist/features/ingestion/placement.js +16 -0
  482. package/dist/features/ingestion/placement.js.map +1 -0
  483. package/dist/features/ingestion/registerKitHandlers.js +7 -7
  484. package/dist/features/ingestion/svgHandler.js +5 -0
  485. package/dist/features/ingestion/svgHandler.js.map +1 -1
  486. package/dist/features/ingestion/textHandler.js +28 -0
  487. package/dist/features/ingestion/textHandler.js.map +1 -0
  488. package/dist/features/ingestion/useCanvasIngestion.js +48 -0
  489. package/dist/features/ingestion/useCanvasIngestion.js.map +1 -0
  490. package/dist/features/ingestion/weaselJsonHandler.js +22 -14
  491. package/dist/features/ingestion/weaselJsonHandler.js.map +1 -1
  492. package/dist/features/longPress/longPressFeedback.js.map +1 -1
  493. package/dist/features/modes/modeLayers.js +7 -7
  494. package/dist/features/modes/modeLayers.js.map +1 -1
  495. package/dist/features/paths/editablePath.js +47 -0
  496. package/dist/features/paths/editablePath.js.map +1 -0
  497. package/dist/features/paths/index.js +9 -14
  498. package/dist/features/paths/pathEditState.js +41 -0
  499. package/dist/features/paths/pathEditState.js.map +1 -0
  500. package/dist/features/paths/pathEditingOverlayLayer.js +36 -38
  501. package/dist/features/paths/pathEditingOverlayLayer.js.map +1 -1
  502. package/dist/features/paths/pathLayer.js +3 -2
  503. package/dist/features/paths/pathLayer.js.map +1 -1
  504. package/dist/features/paths/penPreviewLayer.js +86 -88
  505. package/dist/features/paths/penPreviewLayer.js.map +1 -1
  506. package/dist/features/paths/usePathEdit.js +34 -0
  507. package/dist/features/paths/usePathEdit.js.map +1 -0
  508. package/dist/features/poseRun/usePoseRun.js +44 -52
  509. package/dist/features/poseRun/usePoseRun.js.map +1 -1
  510. package/dist/features/selection/overlay.js +171 -179
  511. package/dist/features/selection/overlay.js.map +1 -1
  512. package/dist/features/text/index.js +6 -0
  513. package/dist/features/text/textLayer.js +1 -1
  514. package/dist/features/text/textLayer.js.map +1 -1
  515. package/dist/features/text/useSceneTextEdit.js +100 -93
  516. package/dist/features/text/useSceneTextEdit.js.map +1 -1
  517. package/dist/features/viewports/viewportLayer.js +25 -36
  518. package/dist/features/viewports/viewportLayer.js.map +1 -1
  519. package/dist/index.d.ts +8473 -9141
  520. package/dist/index.js +269 -307
  521. package/dist/input/keyState.js +38 -39
  522. package/dist/input/keyState.js.map +1 -1
  523. package/dist/input/useKeyModifiers.js +11 -0
  524. package/dist/input/useKeyModifiers.js.map +1 -0
  525. package/dist/interactions/actions/actionShortcuts.js.map +1 -1
  526. package/dist/interactions/actions/{defaults/align.js → align/action.js} +18 -20
  527. package/dist/interactions/actions/align/action.js.map +1 -0
  528. package/dist/interactions/actions/align/align.js +20 -20
  529. package/dist/interactions/actions/align/align.js.map +1 -1
  530. package/dist/interactions/actions/booleans/action.js +65 -0
  531. package/dist/interactions/actions/booleans/action.js.map +1 -0
  532. package/dist/interactions/actions/booleans/booleans.js +69 -78
  533. package/dist/interactions/actions/booleans/booleans.js.map +1 -1
  534. package/dist/interactions/actions/booleans/operands.js +40 -0
  535. package/dist/interactions/actions/booleans/operands.js.map +1 -0
  536. package/dist/interactions/actions/booleans/pieces.js +45 -0
  537. package/dist/interactions/actions/booleans/pieces.js.map +1 -0
  538. package/dist/interactions/actions/booleans/placement.js +24 -0
  539. package/dist/interactions/actions/booleans/placement.js.map +1 -0
  540. package/dist/interactions/actions/booleans/useBooleans.js +11 -9
  541. package/dist/interactions/actions/booleans/useBooleans.js.map +1 -1
  542. package/dist/interactions/actions/booleans/useBooleansAdapter.js.map +1 -1
  543. package/dist/interactions/actions/{defaults/clipboard.js → clipboard/action.js} +31 -15
  544. package/dist/interactions/actions/clipboard/action.js.map +1 -0
  545. package/dist/interactions/actions/clipboard/clipboardOps.js +44 -42
  546. package/dist/interactions/actions/clipboard/clipboardOps.js.map +1 -1
  547. package/dist/interactions/actions/clipboard/materializePaste.js +10 -7
  548. package/dist/interactions/actions/clipboard/materializePaste.js.map +1 -1
  549. package/dist/interactions/actions/clipboard/wireFormat.js.map +1 -1
  550. package/dist/interactions/actions/clone/action.js +98 -0
  551. package/dist/interactions/actions/clone/action.js.map +1 -0
  552. package/dist/interactions/actions/clone/behaviors.js +52 -0
  553. package/dist/interactions/actions/clone/behaviors.js.map +1 -0
  554. package/dist/interactions/actions/defaultCommitAdapter.js +7 -32
  555. package/dist/interactions/actions/defaultCommitAdapter.js.map +1 -1
  556. package/dist/interactions/actions/defaults/anchorEditing.js +60 -84
  557. package/dist/interactions/actions/defaults/anchorEditing.js.map +1 -1
  558. package/dist/interactions/actions/defaults/areaSelect.js +35 -38
  559. package/dist/interactions/actions/defaults/areaSelect.js.map +1 -1
  560. package/dist/interactions/actions/defaults/cancelGesture.js.map +1 -1
  561. package/dist/interactions/actions/defaults/clearSelection.js.map +1 -1
  562. package/dist/interactions/actions/defaults/copySubtree.js +40 -0
  563. package/dist/interactions/actions/defaults/copySubtree.js.map +1 -0
  564. package/dist/interactions/actions/defaults/createPaintAction.js.map +1 -1
  565. package/dist/interactions/actions/defaults/delete.js.map +1 -1
  566. package/dist/interactions/actions/defaults/duplicate.js +13 -53
  567. package/dist/interactions/actions/defaults/duplicate.js.map +1 -1
  568. package/dist/interactions/actions/defaults/enterTextEdit.js.map +1 -1
  569. package/dist/interactions/actions/defaults/group.js +40 -50
  570. package/dist/interactions/actions/defaults/group.js.map +1 -1
  571. package/dist/interactions/actions/defaults/icons/booleanIcons.js +24 -1
  572. package/dist/interactions/actions/defaults/icons/booleanIcons.js.map +1 -1
  573. package/dist/interactions/actions/defaults/icons/outlineIcons.js +39 -1
  574. package/dist/interactions/actions/defaults/icons/outlineIcons.js.map +1 -1
  575. package/dist/interactions/actions/defaults/ingest.js +44 -38
  576. package/dist/interactions/actions/defaults/ingest.js.map +1 -1
  577. package/dist/interactions/actions/defaults/insertPathAnchor.js +11 -12
  578. package/dist/interactions/actions/defaults/insertPathAnchor.js.map +1 -1
  579. package/dist/interactions/actions/defaults/nudge.js +40 -69
  580. package/dist/interactions/actions/defaults/nudge.js.map +1 -1
  581. package/dist/interactions/actions/defaults/nudgeSteps.js +37 -0
  582. package/dist/interactions/actions/defaults/nudgeSteps.js.map +1 -0
  583. package/dist/interactions/actions/defaults/pinchZoom.js.map +1 -1
  584. package/dist/interactions/actions/defaults/reorder.js +2 -0
  585. package/dist/interactions/actions/defaults/reorder.js.map +1 -1
  586. package/dist/interactions/actions/defaults/requiresSelection.js.map +1 -1
  587. package/dist/interactions/actions/defaults/setFill.js +14 -8
  588. package/dist/interactions/actions/defaults/setFill.js.map +1 -1
  589. package/dist/interactions/actions/defaults/setFillOpacity.js +7 -4
  590. package/dist/interactions/actions/defaults/setFillOpacity.js.map +1 -1
  591. package/dist/interactions/actions/defaults/setStroke.js +12 -12
  592. package/dist/interactions/actions/defaults/setStroke.js.map +1 -1
  593. package/dist/interactions/actions/defaults/setStrokeOpacity.js +6 -6
  594. package/dist/interactions/actions/defaults/sliceOps.js +8 -10
  595. package/dist/interactions/actions/defaults/sliceOps.js.map +1 -1
  596. package/dist/interactions/actions/defaults/toolActivate.js.map +1 -1
  597. package/dist/interactions/actions/defaults/toolResetToDefault.js.map +1 -1
  598. package/dist/interactions/actions/defaults/viewportDragPan.js +37 -26
  599. package/dist/interactions/actions/defaults/viewportDragPan.js.map +1 -1
  600. package/dist/interactions/actions/defaults/viewportWheelPan.js.map +1 -1
  601. package/dist/interactions/actions/defaults/viewportZoom.js.map +1 -1
  602. package/dist/interactions/actions/distribute/action.js +66 -0
  603. package/dist/interactions/actions/distribute/action.js.map +1 -0
  604. package/dist/interactions/actions/distribute/distribute.js +11 -11
  605. package/dist/interactions/actions/distribute/distribute.js.map +1 -1
  606. package/dist/interactions/actions/{defaults/editAnchors.js → edit-anchors/action.js} +7 -9
  607. package/dist/interactions/actions/edit-anchors/action.js.map +1 -0
  608. package/dist/interactions/actions/edit-anchors/geometry.js +30 -27
  609. package/dist/interactions/actions/edit-anchors/geometry.js.map +1 -1
  610. package/dist/interactions/actions/flip/action.js +124 -0
  611. package/dist/interactions/actions/flip/action.js.map +1 -0
  612. package/dist/interactions/actions/flip/helpers.js +30 -17
  613. package/dist/interactions/actions/flip/helpers.js.map +1 -1
  614. package/dist/interactions/actions/gestureFrames.js +18 -0
  615. package/dist/interactions/actions/gestureFrames.js.map +1 -0
  616. package/dist/interactions/actions/gestureLifecycle.js +47 -20
  617. package/dist/interactions/actions/gestureLifecycle.js.map +1 -1
  618. package/dist/interactions/actions/hitSelection.js +8 -0
  619. package/dist/interactions/actions/hitSelection.js.map +1 -0
  620. package/dist/interactions/actions/insert/action.js +72 -0
  621. package/dist/interactions/actions/insert/action.js.map +1 -0
  622. package/dist/interactions/actions/insert/commit.js +28 -0
  623. package/dist/interactions/actions/insert/commit.js.map +1 -0
  624. package/dist/interactions/actions/insert/extras.js +65 -0
  625. package/dist/interactions/actions/insert/extras.js.map +1 -0
  626. package/dist/interactions/actions/insert/frame.js +48 -0
  627. package/dist/interactions/actions/insert/frame.js.map +1 -0
  628. package/dist/interactions/actions/insert/geometry.js +35 -0
  629. package/dist/interactions/actions/insert/geometry.js.map +1 -0
  630. package/dist/interactions/actions/insert/rotateAction.js +21 -0
  631. package/dist/interactions/actions/insert/rotateAction.js.map +1 -0
  632. package/dist/interactions/actions/insert/session.js +59 -0
  633. package/dist/interactions/actions/insert/session.js.map +1 -0
  634. package/dist/interactions/actions/insert/shape.js +34 -0
  635. package/dist/interactions/actions/insert/shape.js.map +1 -0
  636. package/dist/interactions/actions/lasso-select/action.js +143 -0
  637. package/dist/interactions/actions/lasso-select/action.js.map +1 -0
  638. package/dist/interactions/actions/lasso-select/behaviors/selectFromLasso.js +14 -18
  639. package/dist/interactions/actions/lasso-select/behaviors/selectFromLasso.js.map +1 -1
  640. package/dist/interactions/actions/move/action.js +87 -0
  641. package/dist/interactions/actions/move/action.js.map +1 -0
  642. package/dist/interactions/actions/move/behaviors/layoutDrop.js +51 -0
  643. package/dist/interactions/actions/move/behaviors/layoutDrop.js.map +1 -0
  644. package/dist/interactions/actions/move/behaviors/reparentOnDrop.js +15 -0
  645. package/dist/interactions/actions/move/behaviors/reparentOnDrop.js.map +1 -0
  646. package/dist/interactions/actions/move/behaviors/snapBackOrDelete.js +5 -5
  647. package/dist/interactions/actions/move/behaviors/snapBackOrDelete.js.map +1 -1
  648. package/dist/interactions/actions/move/behaviors/snapToContainer.js +39 -27
  649. package/dist/interactions/actions/move/behaviors/snapToContainer.js.map +1 -1
  650. package/dist/interactions/actions/move/capture.js +99 -0
  651. package/dist/interactions/actions/move/capture.js.map +1 -0
  652. package/dist/interactions/actions/move/commit/index.js +41 -0
  653. package/dist/interactions/actions/move/commit/index.js.map +1 -0
  654. package/dist/interactions/actions/move/commit/layoutDrop.js +44 -0
  655. package/dist/interactions/actions/move/commit/layoutDrop.js.map +1 -0
  656. package/dist/interactions/actions/move/commit/layoutRelease.js +100 -0
  657. package/dist/interactions/actions/move/commit/layoutRelease.js.map +1 -0
  658. package/dist/interactions/actions/move/commit/rebase.js +18 -0
  659. package/dist/interactions/actions/move/commit/rebase.js.map +1 -0
  660. package/dist/interactions/actions/move/commit/reparent.js +65 -0
  661. package/dist/interactions/actions/move/commit/reparent.js.map +1 -0
  662. package/dist/interactions/actions/move/delta.js +51 -0
  663. package/dist/interactions/actions/move/delta.js.map +1 -0
  664. package/dist/interactions/actions/move/frame.js +59 -0
  665. package/dist/interactions/actions/move/frame.js.map +1 -0
  666. package/dist/interactions/actions/move/gestureAdapter.js +22 -30
  667. package/dist/interactions/actions/move/gestureAdapter.js.map +1 -1
  668. package/dist/interactions/actions/move/landedDescendants.js +33 -0
  669. package/dist/interactions/actions/move/landedDescendants.js.map +1 -0
  670. package/dist/interactions/actions/move/layout/container.js +94 -0
  671. package/dist/interactions/actions/move/layout/container.js.map +1 -0
  672. package/dist/interactions/actions/move/layout/dragged.js +58 -0
  673. package/dist/interactions/actions/move/layout/dragged.js.map +1 -0
  674. package/dist/interactions/actions/move/layout/dropPass.js +122 -0
  675. package/dist/interactions/actions/move/layout/dropPass.js.map +1 -0
  676. package/dist/interactions/actions/move/layout/exits.js +38 -0
  677. package/dist/interactions/actions/move/layout/exits.js.map +1 -0
  678. package/dist/interactions/actions/move/layout/glide.js +48 -0
  679. package/dist/interactions/actions/move/layout/glide.js.map +1 -0
  680. package/dist/interactions/actions/move/session.js +63 -0
  681. package/dist/interactions/actions/move/session.js.map +1 -0
  682. package/dist/interactions/actions/move/translate.js +61 -0
  683. package/dist/interactions/actions/move/translate.js.map +1 -0
  684. package/dist/interactions/actions/outlines/createOutlines.js +16 -63
  685. package/dist/interactions/actions/outlines/createOutlines.js.map +1 -1
  686. package/dist/interactions/actions/outlines/createOutlinesAction.js +51 -0
  687. package/dist/interactions/actions/outlines/createOutlinesAction.js.map +1 -0
  688. package/dist/interactions/actions/outlines/outlineStroke.js +72 -0
  689. package/dist/interactions/actions/outlines/outlineStroke.js.map +1 -0
  690. package/dist/interactions/actions/outlines/outlineStrokeAction.js +37 -0
  691. package/dist/interactions/actions/outlines/outlineStrokeAction.js.map +1 -0
  692. package/dist/interactions/actions/outlines/replaceWithPaths.js +54 -0
  693. package/dist/interactions/actions/outlines/replaceWithPaths.js.map +1 -0
  694. package/dist/interactions/actions/outlines/strokeRegion.js +27 -0
  695. package/dist/interactions/actions/outlines/strokeRegion.js.map +1 -0
  696. package/dist/interactions/actions/planeInput.js.map +1 -1
  697. package/dist/interactions/actions/pointerState.js +12 -0
  698. package/dist/interactions/actions/pointerState.js.map +1 -0
  699. package/dist/interactions/actions/poseDescriptorDep.js +16 -4
  700. package/dist/interactions/actions/poseDescriptorDep.js.map +1 -1
  701. package/dist/interactions/actions/poseFrame.js +25 -20
  702. package/dist/interactions/actions/poseFrame.js.map +1 -1
  703. package/dist/interactions/actions/resize/action.js +55 -0
  704. package/dist/interactions/actions/resize/action.js.map +1 -0
  705. package/dist/interactions/actions/resize/behaviors/lockAspect.js.map +1 -1
  706. package/dist/interactions/actions/resize/boxFrame.js +16 -0
  707. package/dist/interactions/actions/resize/boxFrame.js.map +1 -0
  708. package/dist/interactions/actions/resize/capture.js +85 -0
  709. package/dist/interactions/actions/resize/capture.js.map +1 -0
  710. package/dist/interactions/actions/resize/commit.js +69 -0
  711. package/dist/interactions/actions/resize/commit.js.map +1 -0
  712. package/dist/interactions/actions/resize/frame.js +74 -0
  713. package/dist/interactions/actions/resize/frame.js.map +1 -0
  714. package/dist/interactions/actions/resize/pointSnap.js +111 -0
  715. package/dist/interactions/actions/resize/pointSnap.js.map +1 -0
  716. package/dist/interactions/actions/resize/ruleBounds.js +9 -0
  717. package/dist/interactions/actions/resize/ruleBounds.js.map +1 -0
  718. package/dist/interactions/actions/resize/session.js +49 -0
  719. package/dist/interactions/actions/resize/session.js.map +1 -0
  720. package/dist/interactions/actions/resolveOverlays.js.map +1 -1
  721. package/dist/interactions/actions/resolvePreviews.js.map +1 -1
  722. package/dist/interactions/actions/rotate/action.js +56 -0
  723. package/dist/interactions/actions/rotate/action.js.map +1 -0
  724. package/dist/interactions/actions/rotate/behaviors/index.js +7 -0
  725. package/dist/interactions/actions/rotate/behaviors/index.js.map +1 -0
  726. package/dist/interactions/actions/rotate/behaviors/snapRotation.js +12 -0
  727. package/dist/interactions/actions/rotate/behaviors/snapRotation.js.map +1 -0
  728. package/dist/interactions/actions/rotate/commit.js +40 -0
  729. package/dist/interactions/actions/rotate/commit.js.map +1 -0
  730. package/dist/interactions/actions/rotate/frame.js +65 -0
  731. package/dist/interactions/actions/rotate/frame.js.map +1 -0
  732. package/dist/interactions/actions/rotate/handle.js +12 -12
  733. package/dist/interactions/actions/rotate/handle.js.map +1 -1
  734. package/dist/interactions/actions/rotate/session.js +92 -0
  735. package/dist/interactions/actions/rotate/session.js.map +1 -0
  736. package/dist/interactions/actions/selectionSubtree.js +69 -0
  737. package/dist/interactions/actions/selectionSubtree.js.map +1 -0
  738. package/dist/interactions/actions/spatialReference.js.map +1 -1
  739. package/dist/interactions/actions/useStandardActions.js +87 -78
  740. package/dist/interactions/actions/useStandardActions.js.map +1 -1
  741. package/dist/interactions/gestures/dragGesture/dragGesture.js +4 -7
  742. package/dist/interactions/gestures/dragGesture/dragGesture.js.map +1 -1
  743. package/dist/interactions/gestures/dragGesture/dragPointOf.js +23 -0
  744. package/dist/interactions/gestures/dragGesture/dragPointOf.js.map +1 -0
  745. package/dist/interactions/gestures/handleDrag/handleDrag.js +21 -26
  746. package/dist/interactions/gestures/handleDrag/handleDrag.js.map +1 -1
  747. package/dist/interactions/gestures/pointerDrag/pointerDrag.js +62 -41
  748. package/dist/interactions/gestures/pointerDrag/pointerDrag.js.map +1 -1
  749. package/dist/interactions/gestures/shared/originProjection.js +1 -1
  750. package/dist/interactions/gestures/shared/originProjection.js.map +1 -1
  751. package/dist/interactions/gestures/shared/screenTolerance.js +8 -2
  752. package/dist/interactions/gestures/shared/screenTolerance.js.map +1 -1
  753. package/dist/interactions/gestures/shared/snap.js.map +1 -1
  754. package/dist/interactions/gestures/thresholdDrag/thresholdDrag.js +8 -4
  755. package/dist/interactions/gestures/thresholdDrag/thresholdDrag.js.map +1 -1
  756. package/dist/layout/arrivals.js +20 -23
  757. package/dist/layout/arrivals.js.map +1 -1
  758. package/dist/math-CYUjoyyU.d.ts +33 -0
  759. package/dist/math.d.ts +5 -3
  760. package/dist/math.js +6 -6
  761. package/dist/mesh.d.ts +4 -268
  762. package/dist/mesh.js +3 -7
  763. package/dist/move.d.ts +14 -11
  764. package/dist/{originProjection-DEklpDc_.d.ts → originProjection-PPT88jZv.d.ts} +1 -1
  765. package/dist/patterns-builtin.d.ts +1 -118
  766. package/dist/patterns-builtin.js +2 -3
  767. package/dist/{poseDescriptor-D-OH-tu5.d.ts → poseDescriptor-Bqk-11Rl.d.ts} +26 -36
  768. package/dist/renderer.d.ts +1 -91
  769. package/dist/renderer.js +2 -18
  770. package/dist/resize.d.ts +10 -22
  771. package/dist/resize.js +6 -6
  772. package/dist/style.css +1 -1
  773. package/dist/test-hook/install.js +12 -6
  774. package/dist/test-hook/install.js.map +1 -1
  775. package/dist/test-hook/useTestHook.js +22 -0
  776. package/dist/test-hook/useTestHook.js.map +1 -0
  777. package/dist/test-seams-D0pyV3pR.d.ts +149 -0
  778. package/dist/test-seams.d.ts +4 -4
  779. package/dist/test-seams.js +2 -2
  780. package/dist/tools/builtin/bone/boneActions.js +130 -0
  781. package/dist/tools/builtin/bone/boneActions.js.map +1 -0
  782. package/dist/tools/builtin/bone/boneOverlay.js +58 -0
  783. package/dist/tools/builtin/bone/boneOverlay.js.map +1 -0
  784. package/dist/tools/builtin/bone/placedRig.js +24 -0
  785. package/dist/tools/builtin/bone/placedRig.js.map +1 -0
  786. package/dist/tools/builtin/bone/rigEditState.js +21 -0
  787. package/dist/tools/builtin/bone/rigEditState.js.map +1 -0
  788. package/dist/tools/builtin/bone/useBoneTool.js +98 -0
  789. package/dist/tools/builtin/bone/useBoneTool.js.map +1 -0
  790. package/dist/tools/builtin/ellipse/useEllipseTool.js +1 -0
  791. package/dist/tools/builtin/ellipse/useEllipseTool.js.map +1 -1
  792. package/dist/tools/builtin/eyedropper/useEyedropperTool.js.map +1 -1
  793. package/dist/tools/builtin/hand/useHandTool.js +1 -0
  794. package/dist/tools/builtin/hand/useHandTool.js.map +1 -1
  795. package/dist/tools/builtin/image/useImageTool.js.map +1 -1
  796. package/dist/tools/builtin/lasso/useLassoTool.js +11 -11
  797. package/dist/tools/builtin/lasso/useLassoTool.js.map +1 -1
  798. package/dist/tools/builtin/line/useLineTool.js +1 -0
  799. package/dist/tools/builtin/line/useLineTool.js.map +1 -1
  800. package/dist/tools/builtin/pen/usePenTool.js +198 -150
  801. package/dist/tools/builtin/pen/usePenTool.js.map +1 -1
  802. package/dist/tools/builtin/pencil/usePencilTool.js +1 -0
  803. package/dist/tools/builtin/pencil/usePencilTool.js.map +1 -1
  804. package/dist/tools/builtin/pickTopMostHit.js.map +1 -1
  805. package/dist/tools/builtin/polygon/usePolygonTool.js +13 -8
  806. package/dist/tools/builtin/polygon/usePolygonTool.js.map +1 -1
  807. package/dist/tools/builtin/rect/useRectTool.js +1 -0
  808. package/dist/tools/builtin/rect/useRectTool.js.map +1 -1
  809. package/dist/tools/builtin/select/adapterPointQuery.js +36 -0
  810. package/dist/tools/builtin/select/adapterPointQuery.js.map +1 -0
  811. package/dist/tools/builtin/select/selectionContributions.js +25 -24
  812. package/dist/tools/builtin/select/selectionContributions.js.map +1 -1
  813. package/dist/tools/builtin/select/useSelectTool.js +42 -67
  814. package/dist/tools/builtin/select/useSelectTool.js.map +1 -1
  815. package/dist/tools/builtin/shared/pointerFollower.js +17 -0
  816. package/dist/tools/builtin/shared/pointerFollower.js.map +1 -0
  817. package/dist/tools/builtin/slice/useSliceTool.js +72 -82
  818. package/dist/tools/builtin/slice/useSliceTool.js.map +1 -1
  819. package/dist/tools/builtin/star/useStarTool.js +22 -16
  820. package/dist/tools/builtin/star/useStarTool.js.map +1 -1
  821. package/dist/tools/builtin/text/useTextTool.js +9 -0
  822. package/dist/tools/builtin/text/useTextTool.js.map +1 -1
  823. package/dist/tools/builtin/weight/useWeightTool.js +77 -0
  824. package/dist/tools/builtin/weight/useWeightTool.js.map +1 -0
  825. package/dist/tools/builtin/weight/weightActions.js +112 -0
  826. package/dist/tools/builtin/weight/weightActions.js.map +1 -0
  827. package/dist/tools/builtin/weight/weightOverlay.js +61 -0
  828. package/dist/tools/builtin/weight/weightOverlay.js.map +1 -0
  829. package/dist/tools/overlayBinding.js.map +1 -1
  830. package/dist/tools/useKeybindings.js +12 -22
  831. package/dist/tools/useKeybindings.js.map +1 -1
  832. package/dist/{types-A37hYkeR.d.ts → types-CIKDwlsP.d.ts} +113 -169
  833. package/dist/util/color.js +3 -3
  834. package/dist/util/color.js.map +1 -1
  835. package/dist/util/paint.js +1 -1
  836. package/dist/util/paint.js.map +1 -1
  837. package/dist/version.js +1 -1
  838. package/package.json +28 -21
  839. package/dist/animation/colorHelpers.js +0 -135
  840. package/dist/animation/colorHelpers.js.map +0 -1
  841. package/dist/animation/colorRegistry.js +0 -37
  842. package/dist/animation/colorRegistry.js.map +0 -1
  843. package/dist/animation/engine/axes.js +0 -36
  844. package/dist/animation/engine/axes.js.map +0 -1
  845. package/dist/animation/engine/codec.js +0 -170
  846. package/dist/animation/engine/codec.js.map +0 -1
  847. package/dist/animation/engine/integrator.js +0 -12
  848. package/dist/animation/engine/integrator.js.map +0 -1
  849. package/dist/animation/loop.js +0 -62
  850. package/dist/animation/loop.js.map +0 -1
  851. package/dist/animation/observe.js +0 -23
  852. package/dist/animation/observe.js.map +0 -1
  853. package/dist/animation/rig/blendPoses.js +0 -43
  854. package/dist/animation/rig/blendPoses.js.map +0 -1
  855. package/dist/animation/rig/mirrorPose.js +0 -19
  856. package/dist/animation/rig/mirrorPose.js.map +0 -1
  857. package/dist/animation/rig/resolveSkeleton.js +0 -33
  858. package/dist/animation/rig/resolveSkeleton.js.map +0 -1
  859. package/dist/animation/rig/solveIk.js +0 -103
  860. package/dist/animation/rig/solveIk.js.map +0 -1
  861. package/dist/animation/rig/types.js +0 -12
  862. package/dist/animation/rig/types.js.map +0 -1
  863. package/dist/animation/slew.js +0 -27
  864. package/dist/animation/slew.js.map +0 -1
  865. package/dist/animation/stagger.js +0 -138
  866. package/dist/animation/stagger.js.map +0 -1
  867. package/dist/animation/timeline/booking.js +0 -106
  868. package/dist/animation/timeline/booking.js.map +0 -1
  869. package/dist/animation/timeline/createTimeline.js +0 -116
  870. package/dist/animation/timeline/createTimeline.js.map +0 -1
  871. package/dist/animation/timeline/sampleTrack.js +0 -71
  872. package/dist/animation/timeline/sampleTrack.js.map +0 -1
  873. package/dist/animation/useAnimator.js +0 -378
  874. package/dist/animation/useAnimator.js.map +0 -1
  875. package/dist/builtins-C-VgUlWI.d.ts +0 -4514
  876. package/dist/canvas/MinimapCanvas.js +0 -139
  877. package/dist/canvas/MinimapCanvas.js.map +0 -1
  878. package/dist/canvas/deps/poseComposition.js +0 -11
  879. package/dist/canvas/deps/poseComposition.js.map +0 -1
  880. package/dist/canvas/minimapMath.js +0 -80
  881. package/dist/canvas/minimapMath.js.map +0 -1
  882. package/dist/canvas/toolPreview.js +0 -39
  883. package/dist/canvas/toolPreview.js.map +0 -1
  884. package/dist/core/adapters/arrayAdapter.js +0 -85
  885. package/dist/core/adapters/arrayAdapter.js.map +0 -1
  886. package/dist/core/adapters/useArrayAdapter.js +0 -13
  887. package/dist/core/adapters/useArrayAdapter.js.map +0 -1
  888. package/dist/core/fillInPoseFrame.js +0 -102
  889. package/dist/core/fillInPoseFrame.js.map +0 -1
  890. package/dist/core/geometry/poseRotation.js +0 -58
  891. package/dist/core/geometry/poseRotation.js.map +0 -1
  892. package/dist/core/gradient.js +0 -136
  893. package/dist/core/gradient.js.map +0 -1
  894. package/dist/core/isPlainObject.js.map +0 -1
  895. package/dist/core/markerInset.js +0 -24
  896. package/dist/core/markerInset.js.map +0 -1
  897. package/dist/core/mixed.js +0 -6
  898. package/dist/core/mixed.js.map +0 -1
  899. package/dist/core/paintKinds.js +0 -156
  900. package/dist/core/paintKinds.js.map +0 -1
  901. package/dist/core/strokeMarkerShapes.js +0 -139
  902. package/dist/core/strokeMarkerShapes.js.map +0 -1
  903. package/dist/core/strokeMarkers.js +0 -28
  904. package/dist/core/strokeMarkers.js.map +0 -1
  905. package/dist/core/viewport/meanScale.js +0 -8
  906. package/dist/core/viewport/meanScale.js.map +0 -1
  907. package/dist/core/viewport/pxExtent.js +0 -42
  908. package/dist/core/viewport/pxExtent.js.map +0 -1
  909. package/dist/debug/flag.js.map +0 -1
  910. package/dist/features/cursor/paintedCursorLayer.js.map +0 -1
  911. package/dist/features/focus/gateLayer.js +0 -14
  912. package/dist/features/focus/gateLayer.js.map +0 -1
  913. package/dist/features/focus/useCanvasFocus.js +0 -29
  914. package/dist/features/focus/useCanvasFocus.js.map +0 -1
  915. package/dist/features/groups/children.js.map +0 -1
  916. package/dist/features/groups/composePose.js.map +0 -1
  917. package/dist/features/groups/nestedHit.js.map +0 -1
  918. package/dist/features/groups/unionOfChildren.js.map +0 -1
  919. package/dist/features/images/imageCache.js +0 -94
  920. package/dist/features/images/imageCache.js.map +0 -1
  921. package/dist/features/ingestion/index.js +0 -8
  922. package/dist/features/meshPaint/bake.js +0 -79
  923. package/dist/features/meshPaint/bake.js.map +0 -1
  924. package/dist/features/meshPaint/bakeCache.js +0 -59
  925. package/dist/features/meshPaint/bakeCache.js.map +0 -1
  926. package/dist/features/meshPaint/handles.js +0 -86
  927. package/dist/features/meshPaint/handles.js.map +0 -1
  928. package/dist/features/meshPaint/lazyKind.js.map +0 -1
  929. package/dist/features/meshPaint/meshPaint.js +0 -236
  930. package/dist/features/meshPaint/meshPaint.js.map +0 -1
  931. package/dist/features/meshPaint/meshShader.js +0 -6
  932. package/dist/features/meshPaint/meshShader.js.map +0 -1
  933. package/dist/features/meshPaint/register.js +0 -7
  934. package/dist/features/meshPaint/register.js.map +0 -1
  935. package/dist/features/meshPaint/surface.js +0 -110
  936. package/dist/features/meshPaint/surface.js.map +0 -1
  937. package/dist/features/minimap/actions.js +0 -53
  938. package/dist/features/minimap/actions.js.map +0 -1
  939. package/dist/features/minimap/createMinimapContribution.js +0 -96
  940. package/dist/features/minimap/createMinimapContribution.js.map +0 -1
  941. package/dist/features/minimap/layers.js +0 -103
  942. package/dist/features/minimap/layers.js.map +0 -1
  943. package/dist/features/overlays/useNodeOverlayFrame.js +0 -103
  944. package/dist/features/overlays/useNodeOverlayFrame.js.map +0 -1
  945. package/dist/features/parallax/createParallaxLayer.js +0 -26
  946. package/dist/features/parallax/createParallaxLayer.js.map +0 -1
  947. package/dist/features/parallax/createParallaxPlane.js +0 -26
  948. package/dist/features/parallax/createParallaxPlane.js.map +0 -1
  949. package/dist/features/paths/anchorEdits.js +0 -156
  950. package/dist/features/paths/anchorEdits.js.map +0 -1
  951. package/dist/features/paths/anchors.js +0 -154
  952. package/dist/features/paths/anchors.js.map +0 -1
  953. package/dist/features/paths/booleans.js +0 -2
  954. package/dist/features/paths/markerCommands.js +0 -148
  955. package/dist/features/paths/markerCommands.js.map +0 -1
  956. package/dist/features/paths/markerSites.js +0 -59
  957. package/dist/features/paths/markerSites.js.map +0 -1
  958. package/dist/features/paths/markers.js +0 -95
  959. package/dist/features/paths/markers.js.map +0 -1
  960. package/dist/features/paths/nearestAnchor.js +0 -36
  961. package/dist/features/paths/nearestAnchor.js.map +0 -1
  962. package/dist/features/paths/pathInWorld.js +0 -41
  963. package/dist/features/paths/pathInWorld.js.map +0 -1
  964. package/dist/features/paths/poseDescriptor.js +0 -39
  965. package/dist/features/paths/poseDescriptor.js.map +0 -1
  966. package/dist/features/paths/tessellate/dash.js +0 -52
  967. package/dist/features/paths/tessellate/dash.js.map +0 -1
  968. package/dist/features/paths/tessellate/insets.js +0 -32
  969. package/dist/features/paths/tessellate/insets.js.map +0 -1
  970. package/dist/features/paths/tessellate/metric.js +0 -72
  971. package/dist/features/paths/tessellate/metric.js.map +0 -1
  972. package/dist/features/paths/tessellate/stroke.js +0 -170
  973. package/dist/features/paths/tessellate/stroke.js.map +0 -1
  974. package/dist/features/paths/tessellate/vertexWidths.js +0 -32
  975. package/dist/features/paths/tessellate/vertexWidths.js.map +0 -1
  976. package/dist/features/patterns/index.js +0 -23
  977. package/dist/features/patterns/index.js.map +0 -1
  978. package/dist/features/patterns/patterns-builtin.js +0 -38
  979. package/dist/features/patterns/patterns-builtin.js.map +0 -1
  980. package/dist/features/patterns/resolveSpec.js +0 -57
  981. package/dist/features/patterns/resolveSpec.js.map +0 -1
  982. package/dist/features/patterns/tileGeometry.js +0 -158
  983. package/dist/features/patterns/tileGeometry.js.map +0 -1
  984. package/dist/features/pointer/PointerContext.js +0 -45
  985. package/dist/features/pointer/PointerContext.js.map +0 -1
  986. package/dist/features/selection/SelectionContext.js +0 -46
  987. package/dist/features/selection/SelectionContext.js.map +0 -1
  988. package/dist/features/simulation/createSimulation.js +0 -61
  989. package/dist/features/simulation/createSimulation.js.map +0 -1
  990. package/dist/features/simulation/types.js +0 -6
  991. package/dist/features/simulation/types.js.map +0 -1
  992. package/dist/features/simulation/useSimulation.js +0 -74
  993. package/dist/features/simulation/useSimulation.js.map +0 -1
  994. package/dist/features/text/domRuns.js +0 -258
  995. package/dist/features/text/domRuns.js.map +0 -1
  996. package/dist/features/text/fitTextPose.js +0 -38
  997. package/dist/features/text/fitTextPose.js.map +0 -1
  998. package/dist/features/text/hitTest.js +0 -45
  999. package/dist/features/text/hitTest.js.map +0 -1
  1000. package/dist/features/text/renderLabel.js +0 -14
  1001. package/dist/features/text/renderLabel.js.map +0 -1
  1002. package/dist/features/text/runs/effectiveRangeStyle.js +0 -66
  1003. package/dist/features/text/runs/effectiveRangeStyle.js.map +0 -1
  1004. package/dist/features/text/runs/flagRange.js +0 -53
  1005. package/dist/features/text/runs/flagRange.js.map +0 -1
  1006. package/dist/features/text/runs/rangeStyle.js +0 -135
  1007. package/dist/features/text/runs/rangeStyle.js.map +0 -1
  1008. package/dist/features/text/textCommand.js +0 -59
  1009. package/dist/features/text/textCommand.js.map +0 -1
  1010. package/dist/features/text/textToPath.js +0 -181
  1011. package/dist/features/text/textToPath.js.map +0 -1
  1012. package/dist/features/text/useTextEdit.js +0 -467
  1013. package/dist/features/text/useTextEdit.js.map +0 -1
  1014. package/dist/features/tiling/createTiledLayer.js +0 -63
  1015. package/dist/features/tiling/createTiledLayer.js.map +0 -1
  1016. package/dist/features/tiling/tiledProject.js +0 -14
  1017. package/dist/features/tiling/tiledProject.js.map +0 -1
  1018. package/dist/interactions/actions/clone/behaviors/cloneByAltDrag.js +0 -26
  1019. package/dist/interactions/actions/clone/behaviors/cloneByAltDrag.js.map +0 -1
  1020. package/dist/interactions/actions/defaults/align.js.map +0 -1
  1021. package/dist/interactions/actions/defaults/booleans.js +0 -52
  1022. package/dist/interactions/actions/defaults/booleans.js.map +0 -1
  1023. package/dist/interactions/actions/defaults/clipboard.js.map +0 -1
  1024. package/dist/interactions/actions/defaults/clone.js +0 -107
  1025. package/dist/interactions/actions/defaults/clone.js.map +0 -1
  1026. package/dist/interactions/actions/defaults/createOutlines.js +0 -47
  1027. package/dist/interactions/actions/defaults/createOutlines.js.map +0 -1
  1028. package/dist/interactions/actions/defaults/distribute.js +0 -66
  1029. package/dist/interactions/actions/defaults/distribute.js.map +0 -1
  1030. package/dist/interactions/actions/defaults/editAnchors.js.map +0 -1
  1031. package/dist/interactions/actions/defaults/flip.js +0 -119
  1032. package/dist/interactions/actions/defaults/flip.js.map +0 -1
  1033. package/dist/interactions/actions/defaults/freshNodeId.js +0 -10
  1034. package/dist/interactions/actions/defaults/freshNodeId.js.map +0 -1
  1035. package/dist/interactions/actions/defaults/insert.js +0 -288
  1036. package/dist/interactions/actions/defaults/insert.js.map +0 -1
  1037. package/dist/interactions/actions/defaults/lassoSelect.js +0 -156
  1038. package/dist/interactions/actions/defaults/lassoSelect.js.map +0 -1
  1039. package/dist/interactions/actions/defaults/move.js +0 -760
  1040. package/dist/interactions/actions/defaults/move.js.map +0 -1
  1041. package/dist/interactions/actions/defaults/resize.js +0 -335
  1042. package/dist/interactions/actions/defaults/resize.js.map +0 -1
  1043. package/dist/interactions/actions/defaults/rotate.js +0 -184
  1044. package/dist/interactions/actions/defaults/rotate.js.map +0 -1
  1045. package/dist/interactions/actions/previewOverrides.js +0 -25
  1046. package/dist/interactions/actions/previewOverrides.js.map +0 -1
  1047. package/dist/interactions/actions/resize/autoPoseDescriptor.js.map +0 -1
  1048. package/dist/math-Drrw4ewZ.d.ts +0 -160
  1049. package/dist/registerProgram-BMZRDgrh.d.ts +0 -197
  1050. package/dist/renderer/DrawCommand.js +0 -6
  1051. package/dist/renderer/DrawCommand.js.map +0 -1
  1052. package/dist/renderer/WeaselRenderer.js +0 -331
  1053. package/dist/renderer/WeaselRenderer.js.map +0 -1
  1054. package/dist/renderer/batchClip.js +0 -46
  1055. package/dist/renderer/batchClip.js.map +0 -1
  1056. package/dist/renderer/cache/GLImageCache.js +0 -64
  1057. package/dist/renderer/cache/GLImageCache.js.map +0 -1
  1058. package/dist/renderer/cache/GLMeshCache.js +0 -102
  1059. package/dist/renderer/cache/GLMeshCache.js.map +0 -1
  1060. package/dist/renderer/cache/GLTextureCache.js +0 -51
  1061. package/dist/renderer/cache/GLTextureCache.js.map +0 -1
  1062. package/dist/renderer/cache/GradientRampAtlas.js +0 -82
  1063. package/dist/renderer/cache/GradientRampAtlas.js.map +0 -1
  1064. package/dist/renderer/cache/cache.js +0 -13
  1065. package/dist/renderer/cache/cache.js.map +0 -1
  1066. package/dist/renderer/cache/markerCommandCache.js +0 -63
  1067. package/dist/renderer/cache/markerCommandCache.js.map +0 -1
  1068. package/dist/renderer/cache/outlineMeshCache.js +0 -15
  1069. package/dist/renderer/cache/outlineMeshCache.js.map +0 -1
  1070. package/dist/renderer/cache/outlineStrokeMeshCache.js +0 -36
  1071. package/dist/renderer/cache/outlineStrokeMeshCache.js.map +0 -1
  1072. package/dist/renderer/cache/strokeMeshCache.js +0 -55
  1073. package/dist/renderer/cache/strokeMeshCache.js.map +0 -1
  1074. package/dist/renderer/cullDrawCommands.js +0 -90
  1075. package/dist/renderer/cullDrawCommands.js.map +0 -1
  1076. package/dist/renderer/draw.js +0 -1135
  1077. package/dist/renderer/draw.js.map +0 -1
  1078. package/dist/renderer/drawBatch.js +0 -198
  1079. package/dist/renderer/drawBatch.js.map +0 -1
  1080. package/dist/renderer/effects/EffectTargets.js +0 -45
  1081. package/dist/renderer/effects/EffectTargets.js.map +0 -1
  1082. package/dist/renderer/effects/builtins.js +0 -31
  1083. package/dist/renderer/effects/builtins.js.map +0 -1
  1084. package/dist/renderer/effects/composite.js +0 -9
  1085. package/dist/renderer/effects/composite.js.map +0 -1
  1086. package/dist/renderer/effects/effectPrelude.js +0 -10
  1087. package/dist/renderer/effects/effectPrelude.js.map +0 -1
  1088. package/dist/renderer/effects/types.js +0 -10
  1089. package/dist/renderer/effects/types.js.map +0 -1
  1090. package/dist/renderer/glyphOutlineMesh.js +0 -67
  1091. package/dist/renderer/glyphOutlineMesh.js.map +0 -1
  1092. package/dist/renderer/index.js +0 -19
  1093. package/dist/renderer/math/color.js +0 -341
  1094. package/dist/renderer/math/color.js.map +0 -1
  1095. package/dist/renderer/math/mat3.js +0 -76
  1096. package/dist/renderer/math/mat3.js.map +0 -1
  1097. package/dist/renderer/math/patternSpace.js +0 -22
  1098. package/dist/renderer/math/patternSpace.js.map +0 -1
  1099. package/dist/renderer/math/viewToMat3.js +0 -19
  1100. package/dist/renderer/math/viewToMat3.js.map +0 -1
  1101. package/dist/renderer/paintResources.js +0 -18
  1102. package/dist/renderer/paintResources.js.map +0 -1
  1103. package/dist/renderer/paintScratch.js +0 -37
  1104. package/dist/renderer/paintScratch.js.map +0 -1
  1105. package/dist/renderer/shaders/ShaderProgram.js +0 -74
  1106. package/dist/renderer/shaders/ShaderProgram.js.map +0 -1
  1107. package/dist/renderer/shaders/batchFill.js +0 -119
  1108. package/dist/renderer/shaders/batchFill.js.map +0 -1
  1109. package/dist/renderer/shaders/customPrelude.js +0 -34
  1110. package/dist/renderer/shaders/customPrelude.js.map +0 -1
  1111. package/dist/renderer/shaders/extractUniformNames.js +0 -184
  1112. package/dist/renderer/shaders/extractUniformNames.js.map +0 -1
  1113. package/dist/renderer/shaders/glyphPaint.js +0 -61
  1114. package/dist/renderer/shaders/glyphPaint.js.map +0 -1
  1115. package/dist/renderer/shaders/gradFill.js +0 -30
  1116. package/dist/renderer/shaders/gradFill.js.map +0 -1
  1117. package/dist/renderer/shaders/imageFill.js +0 -14
  1118. package/dist/renderer/shaders/imageFill.js.map +0 -1
  1119. package/dist/renderer/shaders/pathFill.js +0 -13
  1120. package/dist/renderer/shaders/pathFill.js.map +0 -1
  1121. package/dist/renderer/shaders/patternFill.js +0 -24
  1122. package/dist/renderer/shaders/patternFill.js.map +0 -1
  1123. package/dist/renderer/shaders/registerProgram.js +0 -18
  1124. package/dist/renderer/shaders/registerProgram.js.map +0 -1
  1125. package/dist/renderer/spriteSheet.js +0 -14
  1126. package/dist/renderer/spriteSheet.js.map +0 -1
  1127. package/dist/renderer/state/GroupState.js +0 -77
  1128. package/dist/renderer/state/GroupState.js.map +0 -1
  1129. package/dist/renderer/strokeLengths.js +0 -50
  1130. package/dist/renderer/strokeLengths.js.map +0 -1
  1131. package/dist/renderer/syntheticItalic.js +0 -6
  1132. package/dist/renderer/syntheticItalic.js.map +0 -1
  1133. package/dist/renderer/textures/registerTexture.js +0 -14
  1134. package/dist/renderer/textures/registerTexture.js.map +0 -1
  1135. package/dist/scheduling/useVisibleRaf.js +0 -69
  1136. package/dist/scheduling/useVisibleRaf.js.map +0 -1
  1137. package/dist/test-seams-CuIxe0xY.d.ts +0 -356
  1138. package/dist/tools/prefs.js +0 -62
  1139. package/dist/tools/prefs.js.map +0 -1
@@ -1,989 +1,331 @@
1
- import { normalizeView as e, viewZoom as t } from "../core/viewport/view.js";
2
- import { rectFromPlane as n } from "../core/viewport/parallax.js";
3
- import { DeviceProfileProvider as r, useDeviceProfile as i } from "../core/device/useDeviceProfile.js";
4
- import { clientToWorld as a } from "../core/viewport/clientToWorld.js";
5
- import { HANDLE_BASE_PX as o, targetSizesPx as s } from "../core/device/targets.js";
6
- import { AUTO_POSE_DESCRIPTOR as c } from "../interactions/actions/resize/autoPoseDescriptor.js";
7
- import { KIT_SHAPE_KINDS as l } from "../core/shapeKinds.js";
8
- import { usePointerContext as u } from "../features/pointer/PointerContext.js";
9
- import { dlog as d, dwarn as ee } from "../debug/flag.js";
10
- import { registerContentHandler as f } from "../features/ingestion/contentHandlers.js";
11
- import { KIT_STANDARD_ACTION_IDS as te, useStandardActions as p } from "../interactions/actions/useStandardActions.js";
12
- import { resizePolicyOptions as ne, useResizePolicy as m } from "./deps/resizePolicy.js";
13
- import { usePoseDescriptorDepSource as h } from "./deps/poseDescriptor.js";
14
- import { usePoseCompositionDepSource as re } from "./deps/poseComposition.js";
15
- import { useSliceDepSource as ie } from "./deps/slice.js";
16
- import { useDecayLoop as g } from "../core/viewport/useDecayLoop.js";
17
- import { useAnimator as ae } from "../animation/useAnimator.js";
18
- import { useViewAnimationOn as _ } from "../core/viewport/useViewAnimation.js";
19
- import { useTools as oe } from "../tools/overlayBinding.js";
20
- import { useKeybindings as v } from "../tools/useKeybindings.js";
21
- import { pathFromPlane as se } from "./planeClips.js";
22
- import { selectionMoveContribution as y, selectionResizeContribution as b, selectionRotateContribution as ce } from "../tools/builtin/select/selectionContributions.js";
23
- import { useHandTool as le } from "../tools/builtin/hand/useHandTool.js";
24
- import { defaultDrawOne as ue, defaultPaintBounds as de, paintBoundsFor as x } from "./defaultDrawOne.js";
25
- import { useLateContentRedraw as fe } from "./useLateContentRedraw.js";
26
- import { createSceneLayerGate as pe } from "./sceneLayerPaint.js";
27
- import { EMPTY_CHROME_STATE as me } from "../core/selection/chromeState.js";
28
- import { ViewRegistryProvider as S, useOptionalViewRegistry as he } from "./viewRegistry.js";
29
- import { useSelection as ge } from "../core/selection/useSelection.js";
30
- import { createSelectionOverlayLayer as C, rotationBadgeOf as _e } from "../features/selection/overlay.js";
31
- import { rotateAroundAABBCenter as ve } from "./poseRotation.js";
32
- import { Canvas as ye } from "./Canvas.js";
33
- import { composeAlphaFor as be, wireSceneSlotToScene as xe } from "./sceneSlotWiring.js";
34
- import { useSceneAdapter as Se } from "./sceneAdapter.js";
35
- import { sceneFromJSON as Ce } from "../core/scene/scene.js";
36
- import { usePublishSelection as we } from "../features/selection/SelectionContext.js";
37
- import { ViewInputsProvider as Te } from "./viewInputs.js";
38
- import { anchorStateFrom as Ee, buildAffordanceAt as De, buildClassifyTarget as w, chromeAffordances as Oe } from "./affordanceAt.js";
39
- import { createDispatcherPreviewSources as ke, createGestureSource as Ae } from "./SceneCanvas/dispatcherGestureBounds.js";
40
- import { CanvasView as je } from "./CanvasView.js";
41
- import { contributionEntries as Me, useContributionRoles as Ne } from "./SceneCanvas/useContributionRoles.js";
42
- import { PointerProviderIfRoot as Pe, PointerPublisher as Fe } from "./SceneCanvas/PointerProviderIfRoot.js";
43
- import { useSceneSelectTool as Ie } from "./SceneCanvas/useSceneSelectTool.js";
44
- import { SCENE_CANVAS_FEATURES as Le, featureActionIds as Re, resolveFeatures as ze } from "./SceneCanvas/features.js";
45
- import { usePreviewGhostLayer as Be } from "./SceneCanvas/usePreviewGhostLayer.js";
46
- import { useDispatcherOverlayLayer as Ve } from "./SceneCanvas/useDispatcherOverlayLayer.js";
47
- import { createPenPreviewLayer as He } from "../features/paths/penPreviewLayer.js";
48
- import { createPathEditingOverlayLayer as Ue } from "../features/paths/pathEditingOverlayLayer.js";
49
- import { createSlopsDebugLayer as We } from "./slopsDebugLayer.js";
50
- import { useBuiltinShapeTools as Ge } from "./SceneCanvas/useBuiltinShapeTools.js";
51
- import { useViewDepSource as Ke } from "./deps/view.js";
52
- import { useAreaSelectDepSource as qe } from "./deps/areaSelect.js";
53
- import { useNodeAtPointDepSource as Je } from "./deps/nodeAtPoint.js";
54
- import { useLassoSelectDepSource as Ye } from "./deps/lassoSelect.js";
55
- import { useTextEditDepSource as Xe } from "./deps/textEdit.js";
56
- import { resolveEditablePathOf as Ze, useEditAnchorsDepSource as Qe } from "./deps/editAnchors.js";
57
- import { useInsertDepSource as $e } from "./deps/insert.js";
58
- import { useSnapDepSource as T } from "./deps/snap.js";
59
- import { useDebugDepSource as et } from "./deps/debug.js";
60
- import { useDispatcherDepSource as tt } from "./deps/dispatcher.js";
61
- import { useLayoutDepSource as nt } from "./deps/layout.js";
62
- import { useGeometryProjection as rt } from "./deps/geometryProjection.js";
63
- import { useIngestionDepSource as it } from "./deps/ingestion.js";
64
- import { useLayoutArrivals as at } from "../layout/arrivals.js";
65
- import { acquireKitContentHandlers as ot } from "../features/ingestion/registerKitHandlers.js";
66
- import { itemsFromFiles as st } from "../features/ingestion/index.js";
67
- import { useActionsPropResolver as ct } from "./SceneCanvas/useActionsPropResolver.js";
68
- import { useViewportActions as lt } from "./SceneCanvas/useViewportActions.js";
69
- import { createLongPressFeedbackContribution as ut } from "../features/longPress/longPressFeedback.js";
70
- import { createNodeRouting as dt } from "../core/scene/NodeRouting.js";
71
- import { inferredNodeRouting as ft } from "./SceneCanvas/defaultNodeRouting.js";
72
- import { installTestHookIfRequested as pt } from "../test-hook/install.js";
73
- import { makeGetNodeAtPoint as mt } from "./getNodeAtPoint.js";
74
- import { useHitObserver as ht } from "./useHitObserver.js";
75
- import { never as gt } from "../features/chrome-caps/conditions.js";
76
- import { resolveVisibility as _t } from "../features/chrome-caps/resolve.js";
77
- import { buildChromeCtx as vt } from "../features/chrome-caps/buildChromeCtx.js";
78
- import { useHoverTracking as yt } from "../features/chrome-caps/useHoverTracking.js";
79
- import { DEFAULT_ALLOWED_CAPABILITIES as bt } from "../features/chrome-caps/index.js";
80
- import { forwardRef as xt, useCallback as E, useEffect as D, useInsertionEffect as St, useMemo as O, useRef as k, useState as Ct } from "react";
81
- import { assignRef as wt, useLatest as A } from "@weasel-js/react";
82
- import { createDispatcher as Tt, createLongPressStore as Et } from "@weasel-js/routing";
83
- import { InputScope as Dt, useActionsRegistry as Ot, useDepRegistry as kt, useDepSource as At, useGestureDispatcher as j } from "@weasel-js/routing/react";
84
- import { Fragment as jt, jsx as M, jsxs as Mt } from "react/jsx-runtime";
85
- import { getActiveModeFor as Nt } from "@weasel-js/modes";
1
+ import { DeviceProfileProvider as e, useDeviceProfile as t } from "../core/device/useDeviceProfile.js";
2
+ import { dlog as n } from "../debug/flag.js";
3
+ import { AUTO_POSE_DESCRIPTOR as ee } from "../core/geometry/autoPoseDescriptor.js";
4
+ import { ViewInputsProvider as te } from "./viewInputs.js";
5
+ import { ViewRegistryProvider as ne } from "./viewRegistry.js";
6
+ import { CanvasView as r } from "./CanvasView.js";
7
+ import { rotateAroundAABBCenter as i } from "./poseRotation.js";
8
+ import "./defaultDrawOne.js";
9
+ import { PointerProviderIfRoot as re, PointerPublisher as ie } from "./SceneCanvas/PointerProviderIfRoot.js";
10
+ import { isSerializedScene as ae } from "../core/scene/serialization.js";
11
+ import { sceneFromJSON as oe } from "../core/scene/scene.js";
12
+ import { useCanvasCamera as se } from "./SceneCanvas/useCanvasCamera.js";
13
+ import { useHeldModifiers as ce } from "./SceneCanvas/useHeldModifiers.js";
14
+ import { useCanvasIngestion as le } from "../features/ingestion/useCanvasIngestion.js";
15
+ import { isSelectedNode as ue } from "../features/paths/pathEditState.js";
16
+ import { usePathEditState as de } from "../features/paths/usePathEdit.js";
17
+ import { useTestHook as fe } from "../test-hook/useTestHook.js";
18
+ import { Canvas as pe } from "./Canvas.js";
19
+ import { DevHuds as me } from "./SceneCanvas/DevHuds.js";
20
+ import { GestureDispatcherMounter as he } from "./SceneCanvas/GestureDispatcherMounter.js";
21
+ import { actionsMuting as ge } from "./SceneCanvas/useActionsPropResolver.js";
22
+ import { viewportZoomOption as _e } from "./SceneCanvas/useViewportActions.js";
23
+ import { StandardActionsRegistrar as ve } from "./SceneCanvas/StandardActionsRegistrar.js";
24
+ import { contributionEntries as ye } from "./SceneCanvas/useContributionRoles.js";
25
+ import { ToolKeybindingsMounter as be } from "./SceneCanvas/ToolKeybindingsMounter.js";
26
+ import { useCanvasDispatcher as xe } from "./SceneCanvas/useCanvasDispatcher.js";
27
+ import { useCanvasSelection as Se } from "./SceneCanvas/useCanvasSelection.js";
28
+ import { SCENE_CANVAS_FEATURES as Ce } from "./SceneCanvas/features.js";
29
+ import { BUILTIN_TOOL_IDS as we, DEFAULT_HANDLE_SIZE as a } from "./SceneCanvas/props.js";
30
+ import { useCanvasTools as Te, useEnabledFeatures as Ee, useFeatureBindings as De } from "./SceneCanvas/useCanvasTools.js";
31
+ import { useNodeAtPoint as Oe } from "./SceneCanvas/useNodeAtPoint.js";
32
+ import { useNodeKinds as ke } from "./SceneCanvas/useNodeKinds.js";
33
+ import { useAddedViews as Ae, useSceneCanvasHandle as je } from "./SceneCanvas/useSceneCanvasHandle.js";
34
+ import { composeAlphaFor as Me } from "./sceneSlotWiring.js";
35
+ import { useSceneCanvasLayers as Ne } from "./SceneCanvas/useSceneCanvasLayers.js";
36
+ import { useChromeRules as Pe, useSceneHover as Fe, useSurfaceChromeCaps as Ie } from "./SceneCanvas/useSceneChrome.js";
37
+ import { useSceneRedrawSources as Le } from "./SceneCanvas/useSceneRedrawSources.js";
38
+ import { useSceneSelectTool as Re } from "./SceneCanvas/useSceneSelectTool.js";
39
+ import { useViewLayerGate as ze } from "./SceneCanvas/useViewLayerGate.js";
40
+ import { useSceneAdapter as Be } from "./sceneAdapter.js";
41
+ import { useHitObserver as o } from "./useHitObserver.js";
42
+ import { forwardRef as s, useEffect as Ve, useMemo as c, useRef as l, useState as He } from "react";
43
+ import { useLatest as Ue } from "@weasel-js/react";
44
+ import { InputScope as u } from "@weasel-js/routing/react";
45
+ import { jsx as d, jsxs as We } from "react/jsx-runtime";
46
+ import { getActiveModeFor as Ge } from "@weasel-js/modes";
86
47
  //#region src/canvas/SceneCanvas.tsx
87
- var Pt = o, Ft = (() => {
88
- try {
89
- return !1;
90
- } catch {
91
- return !1;
92
- }
93
- })(), It = 200, N = [], Lt = Ft;
94
- Lt && typeof window < "u" && (window.__weaselCoordLog__ = N);
95
- function Rt(e) {
96
- Lt && (N.push(e), N.length > It && N.shift());
97
- }
98
- function zt(e, t = 1) {
99
- let n = {
100
- scene: {
101
- drawOne: ue,
102
- paintBounds: de
103
- },
104
- selectionOverlay: { handles: { size: s(t).handle } }
105
- };
106
- if (!e) return n;
107
- let r = { ...e };
108
- if (!("scene" in e)) r.scene = n.scene;
109
- else if (e.scene === null) r.scene = null;
110
- else {
111
- let t = {
112
- ...n.scene,
113
- ...e.scene
114
- };
115
- r.scene = e.scene && "paintBounds" in e.scene ? t : {
116
- ...t,
117
- paintBounds: x(t.drawOne)
118
- };
119
- }
120
- return r.selectionOverlay = "selectionOverlay" in e ? e.selectionOverlay === null ? null : {
121
- ...n.selectionOverlay,
122
- ...e.selectionOverlay
123
- } : n.selectionOverlay, r;
124
- }
125
- var Bt = ["select", "hand"], Vt = [...Bt, ...l];
126
- function Ht(e) {
48
+ function Ke(e) {
127
49
  if (e === !1) return !1;
128
50
  let { slops: t, ...n } = e;
129
51
  return n;
130
52
  }
131
- var Ut = /* @__PURE__ */ new Set(), Wt = /* @__PURE__ */ new Set();
132
- function Gt(e) {
133
- return typeof e.setActive == "function";
134
- }
135
- function P(o, u) {
136
- let { scene: p, geometry: ne, poseDescriptor: m, selectTool: h, insertTool: re, insertNodeFactories: ie, ingestion: g, layouts: v, layoutDropTarget: ue, reflowTransition: de, poseComposition: x, geometryProjection: me, routing: S, selection: ve, selectionOptions: Ee, selectable: De = !0, tools: w, features: Oe, enableKeybindings: Ne = !0, enableGestureDispatcher: Le = !0, onToolsCreated: Ke, defaultTools: qe, toolOptions: Je, initialActiveTool: Ye, ambient: Xe, versionCheck: Qe, longPress: $e, viewport: T, layers: et, actions: tt, actionDefaults: nt, describeKind: rt, animator: it, views: at, children: ct, shaders: lt, flattenTolerance: xt, backgroundFill: Et, cursorCoordsHud: Dt, pickHud: Ot, debug: kt, modalityHud: At, alphaFor: j, layerVisibility: Pt, layerOrder: It, isPointerInteractive: N, onDoubleClick: Lt, onClick: Rt, chromeVisibility: Vt, modes: P, getFocused: Yt, device: Xt, ...Zt } = o, F = m ?? c, I = i(Xt), Qt = O(() => s(I.targetScale), [I.targetScale]), $t = (e) => typeof e == "object" && !!e && e.version === 1 && Array.isArray(e.nodes), [en] = Ct(() => $t(p) ? Ce(p, {}) : null), L = en ?? p, { view: R, onViewChange: tn, defaultView: nn, redrawOn: rn, ...an } = Zt, on = O(() => P ? Nt(P) : void 0, [P]), sn = O(() => P ? [...rn ?? [], P] : rn, [P, rn]), z = k(null), B = k(null), [cn, ln] = Ct(!1);
137
- D(() => (d("scene-canvas", "mount"), () => d("scene-canvas", "unmount")), []);
138
- let un = g?.handlers;
139
- D(() => {
140
- let e = [ot()];
141
- for (let t of un ?? []) e.push(f(t));
142
- return () => e.forEach((e) => e());
143
- }, [un]), D(() => {
144
- if (it) return it.onTick(() => {
145
- B.current?.requestRedraw?.();
146
- });
147
- }, [it]), fe(E(() => {
148
- B.current?.requestRedraw?.();
149
- }, [])), D(() => L.overrides.subscribe(() => {
150
- B.current?.requestRedraw?.();
151
- }), [L]), D(() => L.subscribe(() => {
152
- B.current?.requestRedraw?.();
153
- }), [L]);
154
- let V = k(e(R ?? nn ?? {
155
- x: 0,
156
- y: 0,
157
- scale: {
158
- x: 1,
159
- y: 1
160
- }
161
- }));
162
- St(() => {
163
- R !== void 0 && (V.current = e(R));
164
- }), D(() => {
165
- let e = B.current;
166
- if (e) return V.current = e.getView(), e.subscribeView((e) => {
167
- V.current = e;
168
- });
169
- }, [cn]);
170
- let dn = E((t) => {
171
- let n = B.current;
172
- if (R === void 0 && n) {
173
- n.setView(t);
174
- return;
175
- }
176
- tn?.(e(t));
177
- }, [R, tn]), fn = ae(), pn = O(() => ({
178
- get: () => V.current,
179
- set: dn
180
- }), [dn]), H = _(pn, fn), mn = E((e) => {
181
- H.stopIfExternal(), tn?.(e);
182
- }, [tn, H]), hn = T?.animatedZoom, gn = T?.zoom ?? !0, _n = O(() => {
183
- if (gn === !1) return !1;
184
- let e = typeof gn == "object" ? gn : {};
185
- return hn ? {
186
- ...e,
187
- animate: hn === !0 ? {} : hn
188
- } : e;
189
- }, [gn, hn]), vn = O(() => ({
190
- scene: L,
191
- ...Ee ?? {}
192
- }), [L, Ee]), yn = ge(vn), bn = ve ?? yn, xn = bn.adapterMethods, Sn = O(() => ({
193
- getSelection: () => xn.getSelection(),
194
- setSelection: () => {}
195
- }), [xn]), U = O(() => {
196
- if (De) return bn;
197
- let e = () => {};
198
- return {
199
- get current() {
200
- return bn.current;
201
- },
202
- get: bn.get,
203
- contains: bn.contains,
204
- set: e,
205
- add: e,
206
- remove: e,
207
- toggle: e,
208
- clear: e,
209
- applyClick: e,
210
- adapterMethods: Sn
211
- };
212
- }, [
213
- bn,
214
- De,
215
- Sn
216
- ]), Cn = U.current, wn = O(() => {
217
- if (Cn.length === 0) return;
218
- let e = [];
219
- for (let t of Cn) {
220
- let n = L.get(t);
221
- if (!n) {
222
- e.push(void 0);
223
- continue;
224
- }
225
- if (rt) {
226
- e.push(rt(n));
227
- continue;
228
- }
229
- if (n.kind === "container") {
230
- e.push("group");
231
- continue;
232
- }
233
- let r = n.pose;
234
- if (r && typeof r == "object" && "kind" in r && typeof r.kind == "string") {
235
- e.push("path");
236
- continue;
237
- }
238
- e.push(void 0);
239
- }
240
- return e;
241
- }, [
242
- Cn,
243
- L,
244
- rt
245
- ]);
246
- we(Cn, wn);
247
- let [Tn, En] = Ct(""), Dn = A(Tn), On = k(void 0), W = E(() => {
248
- let e = On.current;
249
- return e && !e() ? "" : Dn.current;
250
- }, [Dn]), kn = k(Wt), An = k(null), jn = O(() => ({
251
- getEditingId: () => W(),
252
- setEditingId: (e) => En(e ?? ""),
253
- getSelectedAnchors: () => kn.current,
254
- setSelectedAnchors: (e) => {
255
- kn.current = e, B.current?.requestRedraw?.();
256
- },
257
- getMarquee: () => An.current,
258
- setMarquee: (e) => {
259
- An.current = e, B.current?.requestRedraw?.();
260
- }
261
- }), [W]), Mn = O(() => ({
262
- handleHitRadius: Qt.handle,
263
- extendClickLocked: () => W() !== "",
264
- ...h
265
- }), [
266
- h,
267
- Qt.handle,
268
- W
269
- ]), Nn = A(U), Pn = O(() => {
270
- let e = S === void 0 ? ft : S;
271
- if (e.length === 0) return;
272
- let t = dt();
273
- for (let n of e) t.register(n);
274
- return (e) => t.classify(e);
275
- }, [S]), Fn = O(() => {
276
- if (Pn) return (e) => {
277
- let t = L.get(e);
278
- return t ? Pn(t.data) : void 0;
279
- };
280
- }, [Pn, L]), In = O(() => be(L, j), [L, j]), Ln = he(), Rn = A({
281
- layerVisibility: Pt,
282
- layerOrder: It
283
- }), [zn] = Ct(pe), Bn = E((e) => zn(Ln?.surface()?.layers() ?? [], Rn.current)(e), [
284
- Ln,
285
- zn,
286
- Rn
287
- ]), Vn = Pt !== void 0 || It !== void 0 ? Bn : void 0, Hn = x !== void 0 && x.closure !== "identity", G = Se(L, {
288
- selection: U.adapterMethods,
289
- poseDescriptor: F,
290
- commitInsert: re?.create,
291
- insertLayer: re?.layer,
292
- layouts: v,
293
- poseComposition: x,
294
- cascadeContainerPose: !Hn
295
- }), { selectTool: Un, pickEvery: K, pickBest: Wn, boundsOf: Gn, boundsOfPose: Kn, planeOfNode: qn, moveOptions: Jn } = Ie({
296
- scene: L,
297
- adapter: G,
298
- poseDescriptor: F,
299
- geometry: ne,
300
- getView: () => V.current,
301
- ...j ? { alphaOf: In } : {},
302
- ...Vn ? { layerIsPainted: Vn } : {},
303
- selectTool: Mn
304
- }), Yn = A(qn), Xn = O(() => {
305
- if (!K) return;
306
- let e = mt(K, (e) => {
307
- let t = G.getNode(e);
308
- return {
309
- kind: t && Pn ? Pn(t.data) : "unknown",
310
- pose: G.getWorldPose(e),
311
- data: t ?? { id: e }
312
- };
313
- });
314
- return N ? (t, n, r) => {
315
- let i = e(t, n, r);
316
- return i == null || N(i.id) === !1 ? null : i;
317
- } : e;
318
- }, [
319
- G,
320
- K,
321
- N,
322
- Pn
323
- ]), Zn = (Oe ?? []).join("|"), Qn = T !== void 0, q = O(() => ze(Oe, { viewport: Qn }), [Zn, Qn]), $n = !!T?.inertia, er = typeof T?.inertia == "object" ? T.inertia : void 0, tr = $n ? {
324
- friction: er?.friction,
325
- minSpeed: er?.minSpeed,
326
- boundary: er?.boundary,
327
- bounds: er?.bounds
328
- } : void 0, nr = le(tr ? { inertia: tr } : {}), rr = [
329
- ...qe ?? [],
330
- ...q.has("select") ? ["select"] : [],
331
- ...q.has("view") ? ["hand"] : []
332
- ], ir = /* @__PURE__ */ new Set([...Bt, ...l]), ar = !w || Gt(w) ? null : w, or = /* @__PURE__ */ new Set();
333
- if (ar) {
334
- for (let [e, t] of Object.entries(ar)) if (t === !0) {
335
- if (!ir.has(e)) {
336
- Ft && console.warn(`[SceneCanvas] tools.${e}=true is not a known built-in id; ignoring`);
337
- continue;
338
- }
339
- or.add(e);
340
- }
341
- }
342
- let J = (e) => rr.includes(e) || or.has(e), Y = Ge({
343
- scene: L,
344
- adapter: G,
345
- options: Je
346
- }), sr = O(() => ut(), []), cr = $e?.feedback ?? !0, lr = cr === !0 ? sr : cr || null, ur = O(() => lr ? [...Xe ?? [], lr] : Xe ?? [], [Xe, lr]), X = {};
347
- J("select") && (X.select = Un), J("hand") && (X.hand = nr), J("rect") && (X.rect = Y.rect), J("ellipse") && (X.ellipse = Y.ellipse), J("line") && (X.line = Y.line), J("polygon") && (X.polygon = Y.polygon), J("star") && (X.star = Y.star), J("pen") && (X.pen = Y.pen), J("pencil") && (X.pencil = Y.pencil), J("lasso") && (X.lasso = Y.lasso), J("text") && (X.text = Y.text);
348
- let dr = ar;
349
- if (dr) for (let [e, t] of Object.entries(dr)) if (t === !1) delete X[e];
350
- else if (t === !0) continue;
351
- else Ft && e in X && console.warn(`[SceneCanvas] tools prop overrides bundled "${e}" tool`), X[e] = t;
352
- let fr = w && Gt(w) ? w : null, pr = oe({
353
- active: Ye ?? ("select" in X ? "select" : null),
354
- registry: X,
355
- ...ur.length ? { ambient: ur } : {},
356
- ...P ? { modes: P } : {}
357
- }), mr = A(fr ?? pr), Z = A(on), hr = E((e) => {
358
- let t = Z.current;
359
- if (!t) return !0;
360
- let n = (mr.current?.registry)?.[e]?.eligibility.capabilities ?? [];
361
- if (n.length === 0) return !1;
362
- let r = t().allowedCapabilities;
363
- for (let e of n) if (r.has(e)) return !0;
364
- return !1;
365
- }, [Z, mr]), Q = fr ?? pr, gr = O(() => ({ move: Jn }), [Jn]), _r = h?.rotate || void 0, vr = O(() => [
366
- ...q.has("resize") ? [b()] : [],
367
- ...q.has("rotate") ? [ce({ rotate: _r })] : [],
368
- ...q.has("move") ? [y(gr)] : []
369
- ], [
370
- q,
371
- gr,
372
- _r
373
- ]), yr = O(() => {
374
- let e = Re(q), t = [
375
- ...Object.values(Q.registry),
376
- ...Q.ambient,
377
- ...vr
378
- ];
379
- for (let n of t) for (let t of n.bindings ?? []) e.add(t.actionId);
380
- return te.filter((t) => !e.has(t));
381
- }, [
382
- q,
383
- Q,
384
- vr
385
- ]), br = A(Ke);
386
- D(() => {
387
- br.current?.(Q);
388
- }, [Q, br]);
389
- let xr = A(Xn), Sr = ht(Lt, xr), Cr = ht(Rt, xr), $ = O(() => zt(et, I.targetScale), [et, I.targetScale]), wr = O(() => {
390
- if (h?.rotate !== !1) return tt;
391
- if (tt === null) return null;
392
- let e = { ...tt ?? {} };
393
- return "rotate" in e || (e.rotate = null), e;
394
- }, [tt, h?.rotate]), Tr = k(null), Er = k(null);
395
- Er.current ||= Tt({ getAction: (e) => Tr.current?.(e) });
396
- let Dr = Er.current, Or = O(() => Ae(() => Er.current), []), { previewIdsExtra: kr, previewPoseExtra: Ar } = O(() => ke(() => Er.current), []), jr = O(() => {
397
- let e = $.scene;
398
- return !e || "layer" in e ? e : xe(e, L, j, it?.colorOverrides);
399
- }, [
400
- $.scene,
401
- j,
402
- L,
403
- it
404
- ]), Mr = Be({
405
- scene: L,
406
- sceneSlot: jr,
407
- dispatcher: Dr
408
- }), Nr = Ve({ dispatcher: Dr }), Pr = A(Xn), Fr = yt({
409
- canvasRef: z,
410
- nodeAtClientPoint: (e, t) => {
411
- let n = z.current;
412
- if (!n) return null;
413
- let r = Ln?.resolver.at(null, e, t), i = r?.origin ?? n.getBoundingClientRect(), o = r?.view ?? V.current, [s, c] = a(e, t, i, o), l = r?.id == null ? void 0 : Ln?.list().find((e) => e.id === r.id), u = Pr.current?.(s, c, l ? {
414
- scale: o.scale,
415
- layerIsPainted: l.layerIsPainted
416
- } : o);
417
- return u ? { id: u.id } : null;
418
- },
419
- enabled: Vt !== void 0
420
- }), Ir = A(U.current), Lr = A(Yt), Rr = O(() => {
421
- let e = {};
422
- return q.has("outline") || (e["selection.outline"] = gt), q.has("resize") || (e["selection.resize-handles"] = gt), q.has("rotate") || (e["selection.rotation-handle"] = gt), De || (e["action.marquee"] = gt, e["action.lasso"] = gt), h?.rotate === !1 && (e["selection.rotation-handle"] = gt), Object.keys(e).length === 0 ? Vt : {
423
- ...e,
424
- ...Vt
425
- };
426
- }, [
427
- Vt,
428
- De,
429
- h?.rotate,
430
- q
431
- ]), zr = A(Rr), Br = A(I), Vr = A(h?.resize?.resizable), Hr = E((e) => {
432
- let n = e.selection, r = Z.current?.() ?? {
433
- id: "normal",
434
- allowedCapabilities: bt
435
- }, i = vt({
436
- focused: !Lr.current || Lr.current(),
437
- selection: n,
438
- multiActive: n.length > 1,
439
- modifiers: {
440
- alt: !1,
441
- ctrl: !1,
442
- meta: !1,
443
- shift: !1
444
- },
445
- action: e.action,
446
- hover: Fr(),
447
- view: e.view
448
- }), a = Vr.current, o = a ? n.every((e) => a(e)) : void 0;
449
- return {
450
- ...i,
451
- zoom: t(e.view),
452
- mode: r.id,
453
- allowedCapabilities: r.allowedCapabilities,
454
- selectionResizable: o,
455
- editingAnchors: W() !== "",
456
- device: Br.current
457
- };
458
- }, [
459
- Fr,
460
- W,
461
- Z,
462
- Lr,
463
- Vr,
464
- Br
465
- ]), Ur = E(() => ({
466
- selection: Ir.current,
467
- view: V.current,
468
- action: Dr.getActiveAction()
469
- }), [Dr, Ir]), Wr = E(() => Hr(Ur()), [Hr, Ur]), Gr = O(() => on ? () => Z.current().allowedCapabilities.has("edits-anchors") : void 0, [on, Z]);
470
- St(() => {
471
- On.current = Gr;
472
- });
473
- let Kr = O(() => ({
474
- ruleCtx: (e) => Z.current ? Hr(e) : void 0,
475
- isVisible: (e) => _t(zr.current, Hr(e))
476
- }), [
477
- Hr,
478
- Z,
479
- zr
480
- ]), qr = E(() => Kr.isVisible(Ur()), [Kr, Ur]), Jr = J("pen"), Yr = O(() => Jr ? He({ penTool: Y.pen }) : null, [Y.pen, Jr]);
481
- D(() => {
482
- B.current?.requestRedraw?.();
483
- }, [Tn]);
484
- let Xr = A(L), Zr = kt !== void 0 && kt !== !1 && kt.slops === !0, Qr = $.selectionOverlay, $r = Qr ? _e(Qr) : null, ei = O(() => $r, [$r?.distancePx, $r?.sizePx]), ti = k([]), ni = O(() => We({ getAffordances: () => ti.current }), []), ri = (e, t, n) => {
485
- let r = Xr.current?.get(e);
486
- if (!r) return null;
487
- let i = r.pose, a = r.data, o = !1;
488
- for (let n of t) {
489
- let t = n.previewIds?.();
490
- if (!t) continue;
491
- let r = !1;
492
- for (let n of t) if (n === e) {
493
- r = !0;
494
- break;
495
- }
496
- if (!r) continue;
497
- let s = n.previewPose?.(e);
498
- s != null && !o && (i = s, o = !0);
499
- let c = n.previewData?.(e);
500
- c != null && (a = c, o = !0);
501
- }
502
- return se(Ze({
503
- pose: i,
504
- data: a
505
- }), Yn.current(e, n));
506
- }, ii = O(() => Ue({
507
- getEditingId: () => W() || null,
508
- getPose: (e, t, n) => ri(e, t, n),
509
- getSelectedAnchors: () => kn.current,
510
- getMarquee: (e) => {
511
- let t = An.current, r = t ? Yn.current(W(), e) : null;
512
- return t && r ? n(r, t) : t;
53
+ function f(e, ne) {
54
+ let { scene: i, geometry: Ce, poseDescriptor: we, selectTool: a, insertNodeFactories: s, insertPaint: u, ingestion: f, layouts: p, layoutDropTarget: m, reflowTransition: h, geometryProjection: qe, routing: Je, selection: Ye, selectionOptions: Xe, selectable: g = !0, tools: Ze, features: Qe, enableKeybindings: _ = !0, claimKeys: $e = !1, enableGestureDispatcher: et = !0, onToolsCreated: tt, defaultTools: nt, toolOptions: rt, initialActiveTool: it, ambient: at, versionCheck: ot, longPress: st, viewport: v, layers: ct, actions: y, describeKind: lt, animator: ut, views: dt, children: ft, debug: b, alphaFor: x, layerVisibility: S, layerOrder: pt, isPointerInteractive: mt, onDoubleClick: ht, onClick: gt, chromeVisibility: C, modes: w, pathEdit: _t, getFocused: vt, cursorCoordsHud: yt, pickHud: bt, modalityHud: xt, view: St, onViewChange: Ct, defaultView: wt, viewBounds: Tt, redrawOn: Et, ...T } = e, E = we ?? ee, D = t(), [Dt] = He(() => ae(i) ? oe(i, {}) : null), O = Dt ?? i, k = c(() => w ? Ge(w) : void 0, [w]), Ot = ce(), kt = Le({
55
+ supplied: Et,
56
+ scene: O,
57
+ heldModifiers: Ot,
58
+ animator: ut,
59
+ modes: w
60
+ }), A = l(null), j = l(null);
61
+ Ve(() => (n("scene-canvas", "mount"), () => n("scene-canvas", "unmount")), []);
62
+ let { viewState: M, viewAnimation: N, camera: At } = se({
63
+ view: St,
64
+ defaultView: wt,
65
+ onViewChange: Ct,
66
+ viewBounds: Tt,
67
+ width: T.width,
68
+ height: T.height,
69
+ requestRedraw: () => {
70
+ j.current?.requestRedraw();
513
71
  }
514
- }), []), ai = E(() => {
515
- let e = W();
516
- return e ? /* @__PURE__ */ new Set([e]) : Ut;
517
- }, [W]), oi = O(() => {
518
- let e = $.selectionOverlay;
519
- if (e === null) return null;
520
- let t = e ?? {}, n = t.getSuppressedIds, r = () => {
521
- let e = ai(), t = n?.();
522
- if (!t || t.size === 0) return e;
523
- if (e.size === 0) return t;
524
- let r = new Set(t);
525
- for (let t of e) r.add(t);
526
- return r;
527
- };
528
- return C({
529
- ...t,
530
- getSuppressedIds: r,
531
- ...t.poseById ? {
532
- getPose: t.poseById,
533
- poseDescriptor: t.poseDescriptor ?? F
534
- } : {}
535
- });
536
- }, [
537
- $.selectionOverlay,
538
- ai,
539
- F
540
- ]), si = O(() => ({
541
- ...$,
542
- ...jr ? { scene: jr } : {},
543
- selectionOverlay: oi ? { layer: oi } : $.selectionOverlay === null ? null : void 0,
544
- previewGhost: {
545
- layer: Mr,
546
- after: "scene"
547
- },
548
- dispatcherOverlay: {
549
- layer: Nr,
550
- after: "previewGhost"
72
+ }), { viewRef: P } = M, F = v?.zoom, I = v?.animatedZoom, jt = c(() => _e(F, I), [F, I]), L = Se({
73
+ scene: O,
74
+ supplied: Ye,
75
+ options: Xe,
76
+ selectable: g,
77
+ describeKind: lt
78
+ }), R = de({
79
+ host: _t,
80
+ isAllowed: k ? () => k().allowedCapabilities.has("edits-anchors") : void 0,
81
+ isSelectedNode: (e) => ue(O, L, e)
82
+ }), Mt = c(() => ({
83
+ extendClickLocked: () => R.getEditingId() !== "",
84
+ ...a
85
+ }), [a, R]), Nt = Ue(L), { kindOfData: Pt, kindOfNode: z } = ke(O, Je), B = c(() => Me(O, x), [O, x]), V = ze(S, pt), H = Be(O, {
86
+ selection: L.adapterMethods,
87
+ poseDescriptor: E,
88
+ layouts: p
89
+ }), { selectTool: Ft, pickEvery: U, pickBest: W, boundsOf: G, boundsOfPose: K, planeOfNode: q, moveOptions: It } = Re({
90
+ scene: O,
91
+ adapter: H,
92
+ poseDescriptor: E,
93
+ geometry: Ce,
94
+ getView: () => P.current,
95
+ ...x ? { alphaOf: B } : {},
96
+ ...V ? { layerIsPainted: V } : {},
97
+ selectTool: Mt
98
+ }), Lt = Oe({
99
+ pickBest: W,
100
+ nodes: H,
101
+ kindOfData: Pt,
102
+ isPointerInteractive: mt
103
+ }), J = Ee(Qe, v !== void 0), { tools: Y, internal: Rt, takeover: zt } = Te({
104
+ select: Ft,
105
+ enabled: J,
106
+ tools: Ze,
107
+ defaultTools: nt,
108
+ toolOptions: rt,
109
+ inertia: v?.inertia,
110
+ ambient: at,
111
+ pressFeedback: st?.feedback,
112
+ initialActiveTool: it,
113
+ modes: w,
114
+ onToolsCreated: tt
115
+ }), { contributions: Bt, standardActionsExclude: Vt } = De({
116
+ enabled: J,
117
+ tools: Y,
118
+ move: It,
119
+ rotate: a?.rotate || void 0
120
+ }), X = Ue(Lt), Ht = o(ht, X), Ut = o(gt, X), Z = a?.rotate === !1, Wt = c(() => Z ? ge(y, "rotate") : y, [y, Z]), { dispatcher: Q, getActionRef: Gt, gestureSource: Kt, previewIdsExtra: qt, previewPoseExtra: Jt } = xe(), { layers: Yt, rotationBadge: $, chromeAffordancesRef: Xt } = Ne({
121
+ layers: ct,
122
+ targetScale: D.targetScale,
123
+ scene: O,
124
+ adapter: H,
125
+ poseDescriptor: E,
126
+ alphaFor: x,
127
+ colorOverrides: ut?.colorOverrides,
128
+ boundsOf: G,
129
+ planeOfNode: q,
130
+ previewIds: qt,
131
+ dispatcher: Q,
132
+ pathEditState: R,
133
+ slops: b !== void 0 && b !== !1 && b.slops === !0
134
+ }), { getHover: Zt, canvasRef: Qt } = Fe({
135
+ canvasApiRef: j,
136
+ viewRef: P,
137
+ nodeAtPointRef: X,
138
+ enabled: C !== void 0
139
+ }), $t = Pe({
140
+ enabled: J,
141
+ selectable: g,
142
+ rotateOff: Z,
143
+ chromeVisibility: C
144
+ }), { chromeCaps: en, getIsVisible: tn, getRuleCtx: nn } = Ie({
145
+ source: {
146
+ rules: $t,
147
+ getMode: k,
148
+ getFocused: vt,
149
+ getHover: Zt,
150
+ getModifiers: Ot.get,
151
+ resizable: a?.resize?.resizable,
152
+ editingAnchors: () => R.getEditingId() !== "",
153
+ device: D
551
154
  },
552
- ...Yr ? { penPreview: {
553
- layer: Yr,
554
- after: "dispatcherOverlay"
555
- } } : {},
556
- pathEditingOverlay: {
557
- layer: ii,
558
- after: "selectionOverlay"
559
- },
560
- ...Zr ? { slopsDebug: {
561
- layer: ni,
562
- after: "pathEditingOverlay"
563
- } } : {}
155
+ selection: L.current,
156
+ viewRef: P,
157
+ dispatcher: Q
158
+ }), rn = l(null), { ingest: an, clipboard: on } = le(H, () => rn.current, f), { views: sn, addView: cn } = Ae(), { handleRef: ln, ready: un } = je({
159
+ ref: ne,
160
+ elementRef: A,
161
+ apiRef: j,
162
+ onElement: Qt,
163
+ ingest: an,
164
+ viewAnimation: N,
165
+ camera: At,
166
+ addView: cn
167
+ }), dn = c(() => ({
168
+ adapter: H,
169
+ geometry: E,
170
+ boundsOf: G,
171
+ boundsOfPose: K,
172
+ planeOfNode: q,
173
+ pickEvery: U,
174
+ pickBest: W,
175
+ kindOfNode: z,
176
+ chromeCaps: en,
177
+ selectionApi: L,
178
+ rotationBadge: $
564
179
  }), [
565
- $,
566
- jr,
567
- oi,
568
- Mr,
569
- Nr,
570
- Yr,
571
- ii,
572
- Zr,
573
- ni
574
- ]), ci = k(null), li = g?.clipboard?.reviver, ui = g?.clipboard?.enabled !== !1, di = O(() => {
575
- if (ui && G?.commitPaste) return {
576
- adapter: G,
577
- ...li ? { reviver: li } : {}
578
- };
579
- }, [
580
- G,
581
- ui,
582
- li
583
- ]), fi = E((e, t) => {
584
- let n = e.map((e) => e instanceof File ? st([e])[0] : e);
585
- if (n.length !== 0) {
586
- if (!ci.current) {
587
- ee("ingest", "CanvasExtensionApi.ingest called before the action registry mounted — call ignored. Defer to an effect or event handler.");
588
- return;
589
- }
590
- ci.current.trigger("ingest", {
591
- items: n,
592
- ...t ? {
593
- worldX: t.x,
594
- worldY: t.y
595
- } : {}
596
- });
597
- }
598
- }, []), [pi, mi] = Ct([]), hi = E((e) => (mi((t) => [...t.filter((t) => t.id !== e.id), e]), {
599
- id: e.id,
600
- draw: (t, n, r) => Ln?.list().find((t) => t.id === e.id)?.layer.draw(t, n, r) ?? [],
601
- remove: () => mi((t) => t.filter((t) => t !== e))
602
- }), [Ln]), gi = E((e) => {
603
- z.current = e?.element ?? null;
604
- let t = e ? {
605
- ...e,
606
- ingest: fi,
607
- animateView: H.animate,
608
- stopViewAnimation: H.stop,
609
- isViewAnimating: H.isAnimating,
610
- addView: hi
611
- } : null;
612
- B.current = t, ln(t !== null), wt(u, t);
613
- }, [
614
- u,
615
- fi,
616
180
  H,
617
- hi
618
- ]), _i = O(() => ({
619
- adapter: G,
620
- geometry: F,
621
- boundsOf: Gn,
622
- boundsOfPose: Kn,
623
- planeOfNode: qn,
624
- tools: Q,
625
- pickEvery: K,
626
- pickBest: Wn,
627
- kindOfNode: Fn,
628
- chromeCaps: Kr,
629
- selectionApi: U,
630
- rotationBadge: ei
631
- }), [
181
+ E,
632
182
  G,
633
- F,
634
- Gn,
635
- Kn,
636
- qn,
637
- Q,
638
183
  K,
639
- Wn,
640
- Fn,
641
- Kr,
184
+ q,
642
185
  U,
643
- ei
644
- ]), vi = /* @__PURE__ */ M(ye, {
645
- ref: gi,
646
- adapter: G,
647
- selection: U,
648
- poseDescriptor: F,
649
- tools: Q,
650
- layers: si,
651
- pickEvery: K,
652
- boundsOf: Gn,
653
- boundsOfPose: Kn,
654
- getIsVisible: qr,
655
- previewIdsExtra: kr,
656
- gestureSource: Or,
657
- previewPoseExtra: Ar,
658
- backgroundFill: Et,
659
- cursorCoordsHud: Dt,
660
- pickHud: Ot,
661
- modalityHud: At,
662
- ...kt === void 0 ? {} : { debug: Ht(kt) },
663
- pickBest: Wn,
664
- contentVersion: L.getVersion,
665
- layerVisibility: Pt,
666
- layerOrder: It,
667
- ...R === void 0 ? { defaultView: nn } : { view: R },
668
- onViewChange: mn,
669
- shaders: lt,
670
- flattenTolerance: xt,
671
- ...sn ? { redrawOn: sn } : {},
672
- ...an
673
- }), yi = A(L), bi = A(U), xi = k(null);
674
- return D(() => {
675
- process.env.NODE_ENV !== "production" && (xi.current = pt({
676
- getScene: () => yi.current,
677
- getSelectionIds: () => bi.current?.current ?? [],
678
- getView: () => V.current,
679
- getActiveToolId: () => mr.current?.active ?? null
680
- }), xi.current?._markReady());
681
- }, [
682
- yi,
683
- bi,
684
- mr
685
- ]), /* @__PURE__ */ M(r, {
686
- value: Xt,
687
- children: /* @__PURE__ */ M(Te, {
688
- value: _i,
689
- children: /* @__PURE__ */ M(jt, { children: /* @__PURE__ */ M(Pe, { children: /* @__PURE__ */ Mt(jt, { children: [
690
- vi,
691
- /* @__PURE__ */ M(Fe, { canvasRef: z }),
692
- /* @__PURE__ */ M(Jt, {
693
- selection: U,
694
- scene: L,
695
- adapter: G,
696
- actionDefaults: nt,
697
- actions: wr,
698
- excludeActions: yr,
699
- currentViewRef: V,
700
- onViewChange: dn,
701
- resizeOptions: h?.resize,
702
- poseDescriptor: F,
703
- geometryProjection: me,
704
- dispatcher: Dr,
705
- getActionRef: Tr,
706
- pickEvery: K,
707
- layerIsPainted: Vn,
708
- alphaOf: j ? In : void 0,
709
- viewportPanEnabled: q.has("view") ? T?.pan ?? !0 : !1,
710
- viewportZoom: q.has("view") ? _n : !1,
711
- viewportPinchZoom: q.has("view") ? T?.pinchZoom ?? !0 : !1,
712
- viewportRecenter: T?.recenter,
713
- viewAnimation: H,
714
- editAnchorsExternalState: jn,
715
- anchorEditingAllowed: Gr,
716
- layouts: v,
717
- layoutDropTarget: ue,
718
- reflowTransition: de,
719
- poseComposition: x,
720
- insertNodeFactories: ie,
721
- snapPoint: Je?.snapPoint,
722
- canvasRef: z,
723
- canvasApiRef: B,
724
- ingestionResolveSrc: g?.resolveSrc,
725
- ingestionSvg: g?.svg,
726
- ingestionClipboard: di,
727
- actionsRegistryRef: ci
728
- }),
729
- /* @__PURE__ */ M(qt, {
730
- canvasRef: z,
731
- canvasApiRef: B,
732
- tools: Q,
733
- contributions: vr,
734
- enabled: Le,
735
- keyboard: Ne,
736
- selectionRef: Nn,
737
- boundsOf: Gn,
738
- planeOfNode: qn,
739
- pickEvery: K,
740
- pickBest: Wn,
741
- kindOfNode: Fn,
742
- viewRef: V,
743
- dispatcher: Dr,
744
- getIsVisibleForCanvas: qr,
745
- getRuleCtx: on ? Wr : void 0,
746
- targetScale: I.targetScale,
747
- handleHitRadius: h?.handleHitRadius,
748
- rotationBadge: ei,
749
- chromeAffordancesRef: ti,
750
- onDoubleClick: Sr,
751
- onClick: Cr,
752
- longPress: $e
753
- }),
754
- /* @__PURE__ */ M(Kt, {
755
- internalTools: pr,
756
- toolsTakeover: fr ?? void 0,
757
- enableKeybindings: Ne,
758
- isToolEligible: hr,
759
- canvasApi: cn ? B.current : null,
760
- versionCheck: Qe
761
- }),
762
- at?.map((e, t) => /* @__PURE__ */ M(je, {
763
- ...e,
764
- order: e.order ?? t
765
- }, e.id)),
766
- Me(Q).flatMap((e) => e.views ?? []).map((e) => /* @__PURE__ */ M(je, { ...e }, `contribution:${e.id}`)),
767
- pi.map((e) => /* @__PURE__ */ M(je, { ...e }, `added:${e.id}`)),
768
- ct
769
- ] }) }) })
770
- })
771
- });
772
- }
773
- function Kt({ internalTools: e, toolsTakeover: t, enableKeybindings: n, isToolEligible: r, canvasApi: i, versionCheck: a }) {
774
- return v(e, {
775
- disable: !!t || !n,
776
- isToolEligible: r
777
- }), v(t ?? e, {
778
- disable: !t || !n,
779
- isToolEligible: r
780
- }), Ne(t ?? e, i, a), null;
781
- }
782
- function qt({ canvasRef: e, canvasApiRef: t, tools: n, contributions: r, enabled: i, keyboard: o, selectionRef: s, boundsOf: c, planeOfNode: l, pickEvery: u, pickBest: d, kindOfNode: ee, viewRef: f, dispatcher: te, getIsVisibleForCanvas: p, getRuleCtx: ne, targetScale: m, handleHitRadius: h, rotationBadge: re, chromeAffordancesRef: ie, onDoubleClick: g, onClick: ae, longPress: _ }) {
783
- let oe = Ot(), v = kt(), y = he(), b = O(() => {
784
- let e = /* @__PURE__ */ new Map();
785
- for (let [t, r] of Object.entries(n.registry)) e.set(t, r);
786
- for (let t of r) e.set(t.id, t);
787
- for (let t of n.ambient) e.set(t.id, t);
788
- return e;
789
- }, [
790
- n.registry,
791
- n.ambient,
792
- r
793
- ]), ce = A(u), le = A(d), ue = A(ee), de = A(v), x = A(l), fe = O(() => Ee(() => de.current, (e, t) => se(t, x.current?.(e) ?? null)), [de, x]), pe = O(() => Oe({
794
- ...m === void 0 ? {} : { targetScale: m },
795
- ...h === void 0 ? {} : { handleHitRadius: h },
796
- rotationBadge: re,
797
- getAnchorState: fe
798
- }), [
799
- m,
800
- h,
801
- re,
802
- fe
186
+ W,
187
+ z,
188
+ en,
189
+ L,
190
+ $
803
191
  ]);
804
- St(() => {
805
- ie && (ie.current = pe);
192
+ return fe({
193
+ getScene: () => O,
194
+ getSelectionIds: () => L.current ?? [],
195
+ getView: () => P.current,
196
+ getActiveToolId: () => Y.active ?? null
197
+ }), /* @__PURE__ */ d(te, {
198
+ value: dn,
199
+ children: /* @__PURE__ */ We(re, { children: [
200
+ /* @__PURE__ */ d(pe, {
201
+ ref: ln,
202
+ adapter: H,
203
+ selection: L,
204
+ poseDescriptor: E,
205
+ tools: Y,
206
+ layers: Yt,
207
+ boundsOf: G,
208
+ boundsOfPose: K,
209
+ getIsVisible: tn,
210
+ gestureSource: Kt,
211
+ previewPoseExtra: Jt,
212
+ ...b === void 0 ? {} : { debug: Ke(b) },
213
+ contentVersion: O.getVersion,
214
+ layerVisibility: S,
215
+ layerOrder: pt,
216
+ viewState: M,
217
+ redrawOn: kt,
218
+ ...T
219
+ }),
220
+ /* @__PURE__ */ d(me, {
221
+ cursorCoords: yt,
222
+ pick: bt,
223
+ modality: xt,
224
+ canvasRef: A,
225
+ canvasApiRef: j,
226
+ detachedInput: T.paintInto ? T.inputElement ?? null : void 0,
227
+ viewRef: P,
228
+ pickEvery: U,
229
+ pickBest: W
230
+ }),
231
+ /* @__PURE__ */ d(ie, {
232
+ canvasRef: A,
233
+ canvasApiRef: j
234
+ }),
235
+ /* @__PURE__ */ d(ve, {
236
+ selection: L,
237
+ scene: O,
238
+ adapter: H,
239
+ actions: Wt,
240
+ excludeActions: Vt,
241
+ currentViewRef: P,
242
+ onViewChange: M.setViewFromInput,
243
+ resizeOptions: a?.resize,
244
+ poseDescriptor: E,
245
+ geometryProjection: qe,
246
+ dispatcher: Q,
247
+ getActionRef: Gt,
248
+ pickEvery: U,
249
+ layerIsPainted: V,
250
+ alphaOf: x ? B : void 0,
251
+ viewportPanEnabled: J.has("view") ? v?.pan ?? !0 : !1,
252
+ viewportZoom: J.has("view") ? jt : !1,
253
+ viewportPinchZoom: J.has("view") ? v?.pinchZoom ?? !0 : !1,
254
+ viewportRecenter: v?.recenter,
255
+ viewAnimation: N,
256
+ editAnchorsExternalState: R,
257
+ layouts: p,
258
+ layoutDropTarget: m,
259
+ reflowTransition: h,
260
+ insertNodeFactories: s,
261
+ insertPaint: u,
262
+ snapPoint: rt?.snapPoint,
263
+ canvasRef: A,
264
+ canvasApiRef: j,
265
+ ingestionResolveSrc: f?.resolveSrc,
266
+ ingestionSvg: f?.svg,
267
+ ingestionClipboard: on,
268
+ actionsRegistryRef: rn
269
+ }),
270
+ /* @__PURE__ */ d(he, {
271
+ canvasRef: A,
272
+ canvasApiRef: j,
273
+ tools: Y,
274
+ contributions: Bt,
275
+ enabled: et,
276
+ keyboard: _,
277
+ claimKeys: $e,
278
+ selectionRef: Nt,
279
+ boundsOf: G,
280
+ planeOfNode: q,
281
+ pickEvery: U,
282
+ pickBest: W,
283
+ kindOfNode: z,
284
+ viewRef: P,
285
+ dispatcher: Q,
286
+ getIsVisibleForCanvas: tn,
287
+ getRuleCtx: nn,
288
+ targetScale: D.targetScale,
289
+ handleHitRadius: a?.handleHitRadius,
290
+ rotationBadge: $,
291
+ chromeAffordancesRef: Xt,
292
+ onDoubleClick: Ht,
293
+ onClick: Ut,
294
+ longPress: st
295
+ }),
296
+ /* @__PURE__ */ d(be, {
297
+ internalTools: Rt,
298
+ toolsTakeover: zt ?? void 0,
299
+ enableKeybindings: _,
300
+ modes: w,
301
+ canvasApi: un ? j.current : null,
302
+ versionCheck: ot
303
+ }),
304
+ dt?.map((e, t) => /* @__PURE__ */ d(r, {
305
+ ...e,
306
+ order: e.order ?? t
307
+ }, e.id)),
308
+ ye(Y).flatMap((e) => e.views ?? []).map((e) => /* @__PURE__ */ d(r, { ...e }, `contribution:${e.id}`)),
309
+ sn.map((e) => /* @__PURE__ */ d(r, { ...e }, `added:${e.id}`)),
310
+ ft
311
+ ] })
806
312
  });
807
- let S = O(() => {
808
- if (s && c && f) return De({
809
- getChromeState: () => y?.surface()?.chromeState() ?? me,
810
- getView: () => f.current ?? {
811
- x: 0,
812
- y: 0,
813
- scale: {
814
- x: 1,
815
- y: 1
816
- }
817
- },
818
- affordances: pe,
819
- ...p ? { getIsVisible: () => p() } : {}
820
- });
821
- }, [
822
- s,
823
- c,
824
- f,
825
- pe,
826
- p,
827
- y
828
- ]), ge = O(() => {
829
- if (s && u && f) return w(() => s.current?.current ?? [], (e, t) => {
830
- if (le.current) return le.current(e, t);
831
- let n = ce.current?.(e, t) ?? [];
832
- return n.length > 0 ? n[n.length - 1] : null;
833
- }, (e) => ue.current?.(e));
834
- }, [
835
- s,
836
- u,
837
- f,
838
- le,
839
- ce,
840
- ue
841
- ]), C = E((t, n) => {
842
- let r = e.current, i = f?.current;
843
- if (!r || !i) return Rt({
844
- ts: Date.now(),
845
- clientX: t,
846
- clientY: n,
847
- rect: null,
848
- view: null,
849
- world: {
850
- x: t,
851
- y: n
852
- },
853
- fallback: !0
854
- }), {
855
- x: t,
856
- y: n
857
- };
858
- let o = r.getBoundingClientRect(), [s, c] = a(t, n, o, i), l = {
859
- x: s,
860
- y: c
861
- };
862
- return Rt({
863
- ts: Date.now(),
864
- clientX: t,
865
- clientY: n,
866
- rect: {
867
- left: o.left,
868
- top: o.top,
869
- width: o.width,
870
- height: o.height
871
- },
872
- view: {
873
- x: i.x,
874
- y: i.y,
875
- scaleX: i.scale.x,
876
- scaleY: i.scale.y
877
- },
878
- world: l,
879
- fallback: !1
880
- }), l;
881
- }, [e, f]), _e = O(() => (e) => {
882
- let n = t?.current?.hitTestExtras?.(e.x, e.y);
883
- if (n) {
884
- let e = n.hit;
885
- return {
886
- kind: `layer:${n.layerId}`,
887
- owner: n.layerId,
888
- strength: e.strength ?? "shared",
889
- ...e.claimedKinds === void 0 ? {} : { claimedKinds: e.claimedKinds },
890
- ...e.cursor === void 0 ? {} : { cursor: e.cursor },
891
- ...e.initialScratch === void 0 ? {} : { payload: e.initialScratch }
892
- };
893
- }
894
- return S ? S(e) : null;
895
- }, [S, t]), ve = E(() => {
896
- t?.current?.requestRedraw?.();
897
- }, [t]), ye = E(() => t?.current?.paintedCursor, [t]), [be] = Ct(Et), xe = O(() => ({
898
- state: be,
899
- ..._?.duration === void 0 ? {} : { duration: _.duration },
900
- ..._?.haptics === void 0 ? {} : { haptics: _.haptics }
901
- }), [
902
- be,
903
- _?.duration,
904
- _?.haptics
905
- ]), Se = O(() => {
906
- if (y) return {
907
- targets: () => y.list().map((e) => ({
908
- id: e.id,
909
- ...e.target
910
- })),
911
- resolver: y.resolver
912
- };
913
- }, [y]);
914
- return j({
915
- canvasRef: e,
916
- actions: oe,
917
- entriesById: b,
918
- enabled: i,
919
- keyboard: o,
920
- affordanceAt: _e,
921
- classifyTarget: ge,
922
- dispatcher: te,
923
- clientToWorld: C,
924
- requestRedraw: ve,
925
- paintedCursor: ye,
926
- getRuleCtx: ne,
927
- onClick: ae,
928
- onDoubleClick: g,
929
- longPress: xe,
930
- ...Se ? { views: Se } : {}
931
- }), At("longPress", () => be), null;
932
- }
933
- function Jt({ selection: e, scene: t, adapter: n, actions: r, excludeActions: i, currentViewRef: a, onViewChange: o, resizeOptions: s, poseDescriptor: c, geometryProjection: l, dispatcher: d, getActionRef: ee, pickEvery: f, layerIsPainted: te, alphaOf: ne, viewportPanEnabled: m, viewportZoom: ae, viewportPinchZoom: _, viewportRecenter: oe, viewAnimation: v, editAnchorsExternalState: se, anchorEditingAllowed: y, poseComposition: b, layouts: ce, layoutDropTarget: le, reflowTransition: ue, insertNodeFactories: de, snapPoint: x, canvasRef: fe, canvasApiRef: pe, ingestionResolveSrc: me, ingestionSvg: S, ingestionClipboard: he, actionsRegistryRef: ge }) {
934
- let C = Ot();
935
- D(() => (ge.current = C, () => {
936
- ge.current = null;
937
- }), [C, ge]), D(() => {
938
- if (C) return C.setDispatcher(d);
939
- }, [C, d]), D(() => {
940
- if (C) return ee.current = (e) => C.list().find((t) => t.id === e), () => {
941
- ee.current = null;
942
- };
943
- }, [C, ee]);
944
- let _e = g(), ve = Ke(a, o, oe, () => {
945
- let e = fe.current;
946
- return e ? {
947
- width: e.clientWidth,
948
- height: e.clientHeight
949
- } : null;
950
- }, v, _e, te);
951
- p({
952
- selection: e,
953
- scene: t,
954
- view: ve,
955
- history: t.history,
956
- exclude: i
957
- }), At("rootView", () => ve);
958
- let ye = u();
959
- return At("pointer", () => ye ?? void 0), lt({
960
- pan: m,
961
- zoom: ae,
962
- pinchZoom: _
963
- }), qe(t, e, c, b, ne), Je(f), nt(t, ce, le, ue), at(t, {
964
- layouts: ce,
965
- poseDescriptor: c,
966
- poseComposition: b
967
- }), $e(t, n, de), ie(t, e, n, b, c), T(x), et(pe), it(fe, () => a.current, me, S, he), Ye(t, e, c, b, ne), Xe(t), Qe(t, e, n, se, { anchorEditingAllowed: y }), tt(d), h(c), re(b), ct(r, i.join("|")), /* @__PURE__ */ Mt(jt, { children: [s ? /* @__PURE__ */ M(Yt, { options: s }) : null, l ? /* @__PURE__ */ M(Xt, { projection: l }) : null] });
968
- }
969
- function Yt({ options: e }) {
970
- return m(ne(e)), null;
971
313
  }
972
- function Xt({ projection: e }) {
973
- return rt(e), null;
974
- }
975
- var Zt = xt(P);
976
- function F(e, t) {
977
- return /* @__PURE__ */ M(Dt, {
978
- yoke: e.yoke,
979
- children: /* @__PURE__ */ M(S, { children: /* @__PURE__ */ M(Zt, {
980
- ...e,
981
- ref: t
982
- }) })
314
+ var p = s(f);
315
+ function m({ device: t, ...n }, ee) {
316
+ return /* @__PURE__ */ d(u, {
317
+ yoke: n.yoke,
318
+ children: /* @__PURE__ */ d(e, {
319
+ value: t,
320
+ children: /* @__PURE__ */ d(ne, { children: /* @__PURE__ */ d(p, {
321
+ ...n,
322
+ ref: ee
323
+ }) })
324
+ })
983
325
  });
984
326
  }
985
- var I = xt(F);
327
+ var h = s(m);
986
328
  //#endregion
987
- export { Vt as BUILTIN_TOOL_IDS, Pt as DEFAULT_HANDLE_SIZE, Le as SCENE_CANVAS_FEATURES, I as SceneCanvas, zt as mergeLayersWithDefaults, ve as rotateAroundAABBCenter };
329
+ export { we as BUILTIN_TOOL_IDS, a as DEFAULT_HANDLE_SIZE, Ce as SCENE_CANVAS_FEATURES, h as SceneCanvas, i as rotateAroundAABBCenter };
988
330
 
989
331
  //# sourceMappingURL=SceneCanvas.js.map