@tldraw/editor 5.2.1 → 5.3.0-canary.7d00ddf70f63

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 (70) hide show
  1. package/dist-cjs/index.d.ts +45 -8
  2. package/dist-cjs/index.js +3 -3
  3. package/dist-cjs/index.js.map +2 -2
  4. package/dist-cjs/lib/editor/Editor.js +12 -2
  5. package/dist-cjs/lib/editor/Editor.js.map +2 -2
  6. package/dist-cjs/lib/editor/managers/EditorManager.js +52 -0
  7. package/dist-cjs/lib/editor/managers/EditorManager.js.map +7 -0
  8. package/dist-cjs/lib/editor/managers/FocusManager/FocusManager.js +9 -11
  9. package/dist-cjs/lib/editor/managers/FocusManager/FocusManager.js.map +2 -2
  10. package/dist-cjs/lib/editor/managers/InputsManager/InputsManager.js +5 -9
  11. package/dist-cjs/lib/editor/managers/InputsManager/InputsManager.js.map +2 -2
  12. package/dist-cjs/lib/editor/managers/SpatialIndexManager/RBushIndex.js +18 -29
  13. package/dist-cjs/lib/editor/managers/SpatialIndexManager/RBushIndex.js.map +2 -2
  14. package/dist-cjs/lib/editor/managers/SpatialIndexManager/SpatialIndexManager.js +96 -54
  15. package/dist-cjs/lib/editor/managers/SpatialIndexManager/SpatialIndexManager.js.map +2 -2
  16. package/dist-cjs/lib/editor/managers/TextManager/TextManager.js +24 -19
  17. package/dist-cjs/lib/editor/managers/TextManager/TextManager.js.map +2 -2
  18. package/dist-cjs/lib/editor/managers/TickManager/TickManager.js +4 -7
  19. package/dist-cjs/lib/editor/managers/TickManager/TickManager.js.map +2 -2
  20. package/dist-cjs/lib/editor/shapes/ShapeUtil.js.map +1 -1
  21. package/dist-cjs/lib/editor/tools/BaseBoxShapeTool/children/Pointing.js +1 -2
  22. package/dist-cjs/lib/editor/tools/BaseBoxShapeTool/children/Pointing.js.map +2 -2
  23. package/dist-cjs/version.js +3 -3
  24. package/dist-cjs/version.js.map +1 -1
  25. package/dist-esm/index.d.mts +45 -8
  26. package/dist-esm/index.mjs +3 -3
  27. package/dist-esm/index.mjs.map +2 -2
  28. package/dist-esm/lib/editor/Editor.mjs +12 -2
  29. package/dist-esm/lib/editor/Editor.mjs.map +2 -2
  30. package/dist-esm/lib/editor/managers/EditorManager.mjs +32 -0
  31. package/dist-esm/lib/editor/managers/EditorManager.mjs.map +7 -0
  32. package/dist-esm/lib/editor/managers/FocusManager/FocusManager.mjs +9 -11
  33. package/dist-esm/lib/editor/managers/FocusManager/FocusManager.mjs.map +2 -2
  34. package/dist-esm/lib/editor/managers/InputsManager/InputsManager.mjs +5 -9
  35. package/dist-esm/lib/editor/managers/InputsManager/InputsManager.mjs.map +2 -2
  36. package/dist-esm/lib/editor/managers/SpatialIndexManager/RBushIndex.mjs +18 -29
  37. package/dist-esm/lib/editor/managers/SpatialIndexManager/RBushIndex.mjs.map +2 -2
  38. package/dist-esm/lib/editor/managers/SpatialIndexManager/SpatialIndexManager.mjs +103 -56
  39. package/dist-esm/lib/editor/managers/SpatialIndexManager/SpatialIndexManager.mjs.map +2 -2
  40. package/dist-esm/lib/editor/managers/TextManager/TextManager.mjs +24 -19
  41. package/dist-esm/lib/editor/managers/TextManager/TextManager.mjs.map +2 -2
  42. package/dist-esm/lib/editor/managers/TickManager/TickManager.mjs +4 -7
  43. package/dist-esm/lib/editor/managers/TickManager/TickManager.mjs.map +2 -2
  44. package/dist-esm/lib/editor/shapes/ShapeUtil.mjs.map +1 -1
  45. package/dist-esm/lib/editor/tools/BaseBoxShapeTool/children/Pointing.mjs +1 -2
  46. package/dist-esm/lib/editor/tools/BaseBoxShapeTool/children/Pointing.mjs.map +2 -2
  47. package/dist-esm/version.mjs +3 -3
  48. package/dist-esm/version.mjs.map +1 -1
  49. package/package.json +7 -7
  50. package/src/index.ts +1 -1
  51. package/src/lib/editor/Editor.ts +15 -2
  52. package/src/lib/editor/managers/EditorManager.test.ts +51 -0
  53. package/src/lib/editor/managers/EditorManager.ts +60 -0
  54. package/src/lib/editor/managers/FocusManager/FocusManager.test.ts +2 -1
  55. package/src/lib/editor/managers/FocusManager/FocusManager.ts +10 -14
  56. package/src/lib/editor/managers/InputsManager/InputsManager.ts +6 -9
  57. package/src/lib/editor/managers/SpatialIndexManager/RBushIndex.ts +19 -33
  58. package/src/lib/editor/managers/SpatialIndexManager/SpatialIndexManager.ts +173 -86
  59. package/src/lib/editor/managers/TextManager/TextManager.test.ts +61 -1
  60. package/src/lib/editor/managers/TextManager/TextManager.ts +33 -19
  61. package/src/lib/editor/managers/TickManager/TickManager.test.ts +0 -10
  62. package/src/lib/editor/managers/TickManager/TickManager.ts +5 -6
  63. package/src/lib/editor/shapes/ShapeUtil.ts +1 -0
  64. package/src/lib/editor/tools/BaseBoxShapeTool/children/Pointing.ts +2 -2
  65. package/src/version.ts +3 -3
  66. package/dist-cjs/lib/editor/tools/cancelShapeCreationOnLongPress.js +0 -28
  67. package/dist-cjs/lib/editor/tools/cancelShapeCreationOnLongPress.js.map +0 -7
  68. package/dist-esm/lib/editor/tools/cancelShapeCreationOnLongPress.mjs +0 -8
  69. package/dist-esm/lib/editor/tools/cancelShapeCreationOnLongPress.mjs.map +0 -7
  70. package/src/lib/editor/tools/cancelShapeCreationOnLongPress.ts +0 -31
@@ -1,8 +0,0 @@
1
- function cancelShapeCreationOnLongPress(editor, cancelPendingCreation) {
2
- if (!editor.getInstanceState().isCoarsePointer) return;
3
- cancelPendingCreation();
4
- }
5
- export {
6
- cancelShapeCreationOnLongPress
7
- };
8
- //# sourceMappingURL=cancelShapeCreationOnLongPress.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/lib/editor/tools/cancelShapeCreationOnLongPress.ts"],
4
- "sourcesContent": ["import type { Editor } from '../Editor'\n\n/**\n * Shared handler for a long-press in a discrete shape-creation tool's pointing\n * state (geo, note, line, text, arrow, frame). On a coarse pointer this cancels\n * any pending creation so the long-press leaves no shape behind (issue #8277).\n * It does not open a context menu \u2014 that is a select-tool surface, reached on\n * touch only from the select tool, and on desktop from a right-click (which the\n * editor routes through the select tool).\n *\n * Gated on `isCoarsePointer`: on a fine pointer (mouse) the long-press timer\n * powers the deliberate \"pause before drag to start a precise arrow\" gesture,\n * which we must not disturb. The bug only manifests on coarse pointers, because\n * that is also where the browser fires `contextmenu` at the long-press mark.\n *\n * The `cancelPendingCreation` callback is the tool's own cleanup \u2014 it knows\n * whether it needs to `bailToMark` a shape it created early or simply transition\n * back to idle. Continuous-gesture tools (draw, highlight, eraser, laser) are\n * excluded: their press is their own action, so they handle (or ignore) the\n * long-press themselves.\n *\n * @internal\n */\nexport function cancelShapeCreationOnLongPress(\n\teditor: Editor,\n\tcancelPendingCreation: () => void\n): void {\n\tif (!editor.getInstanceState().isCoarsePointer) return\n\n\tcancelPendingCreation()\n}\n"],
5
- "mappings": "AAuBO,SAAS,+BACf,QACA,uBACO;AACP,MAAI,CAAC,OAAO,iBAAiB,EAAE,gBAAiB;AAEhD,wBAAsB;AACvB;",
6
- "names": []
7
- }
@@ -1,31 +0,0 @@
1
- import type { Editor } from '../Editor'
2
-
3
- /**
4
- * Shared handler for a long-press in a discrete shape-creation tool's pointing
5
- * state (geo, note, line, text, arrow, frame). On a coarse pointer this cancels
6
- * any pending creation so the long-press leaves no shape behind (issue #8277).
7
- * It does not open a context menu — that is a select-tool surface, reached on
8
- * touch only from the select tool, and on desktop from a right-click (which the
9
- * editor routes through the select tool).
10
- *
11
- * Gated on `isCoarsePointer`: on a fine pointer (mouse) the long-press timer
12
- * powers the deliberate "pause before drag to start a precise arrow" gesture,
13
- * which we must not disturb. The bug only manifests on coarse pointers, because
14
- * that is also where the browser fires `contextmenu` at the long-press mark.
15
- *
16
- * The `cancelPendingCreation` callback is the tool's own cleanup — it knows
17
- * whether it needs to `bailToMark` a shape it created early or simply transition
18
- * back to idle. Continuous-gesture tools (draw, highlight, eraser, laser) are
19
- * excluded: their press is their own action, so they handle (or ignore) the
20
- * long-press themselves.
21
- *
22
- * @internal
23
- */
24
- export function cancelShapeCreationOnLongPress(
25
- editor: Editor,
26
- cancelPendingCreation: () => void
27
- ): void {
28
- if (!editor.getInstanceState().isCoarsePointer) return
29
-
30
- cancelPendingCreation()
31
- }