@excalidraw/excalidraw 0.17.1-7500-ac247a0 → 0.17.1-b7babe5

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 (255) hide show
  1. package/CHANGELOG.md +56 -2
  2. package/dist/browser/dev/excalidraw-assets-dev/{chunk-2W5GQUR4.js → chunk-6NMK7JTV.js} +13 -6
  3. package/dist/browser/dev/excalidraw-assets-dev/chunk-6NMK7JTV.js.map +7 -0
  4. package/dist/browser/dev/excalidraw-assets-dev/chunk-CX3RATXT.js +20324 -0
  5. package/dist/browser/dev/excalidraw-assets-dev/chunk-CX3RATXT.js.map +7 -0
  6. package/dist/browser/dev/excalidraw-assets-dev/{en-OC6JWP3X.js → en-BZY7JRTM.js} +4 -2
  7. package/dist/browser/dev/excalidraw-assets-dev/{image-5TVMINCA.js → image-CVN3YKRW.js} +2 -4
  8. package/dist/browser/dev/excalidraw-assets-dev/image-LK4UNFRZ.css +6 -0
  9. package/dist/browser/dev/excalidraw-assets-dev/image-LK4UNFRZ.css.map +7 -0
  10. package/dist/browser/dev/excalidraw-assets-dev/roundRect-T5BX56ZF.js +161 -0
  11. package/dist/browser/dev/excalidraw-assets-dev/roundRect-T5BX56ZF.js.map +7 -0
  12. package/dist/browser/dev/index.css +189 -129
  13. package/dist/browser/dev/index.css.map +3 -3
  14. package/dist/browser/dev/index.js +34964 -37
  15. package/dist/browser/dev/index.js.map +4 -4
  16. package/dist/browser/prod/excalidraw-assets/chunk-VJAIK3AX.js +55 -0
  17. package/dist/browser/prod/excalidraw-assets/chunk-YYO5DFUW.js +11 -0
  18. package/dist/browser/prod/excalidraw-assets/en-O2YCQM2W.js +1 -0
  19. package/dist/browser/prod/excalidraw-assets/image-6FKY54X5.js +1 -0
  20. package/dist/browser/prod/excalidraw-assets/image-X66R2EM5.css +1 -0
  21. package/dist/browser/prod/excalidraw-assets/roundRect-2ACQK4DA.js +1 -0
  22. package/dist/browser/prod/index.css +1 -1
  23. package/dist/browser/prod/index.js +203 -1
  24. package/dist/{prod/en-RLIAOBCI.json → dev/en-EY7E2L5O.json} +10 -5
  25. package/dist/dev/index.css +189 -129
  26. package/dist/dev/index.css.map +3 -3
  27. package/dist/dev/index.js +38702 -39409
  28. package/dist/dev/index.js.map +4 -4
  29. package/dist/excalidraw/actions/actionAddToLibrary.d.ts +15 -15
  30. package/dist/excalidraw/actions/actionAlign.d.ts +6 -6
  31. package/dist/excalidraw/actions/actionAlign.js +2 -1
  32. package/dist/excalidraw/actions/actionBoundText.d.ts +10 -10
  33. package/dist/excalidraw/actions/actionBoundText.js +8 -8
  34. package/dist/excalidraw/actions/actionCanvas.d.ts +58 -58
  35. package/dist/excalidraw/actions/actionClipboard.d.ts +34 -34
  36. package/dist/excalidraw/actions/actionClipboard.js +9 -2
  37. package/dist/excalidraw/actions/actionDeleteSelected.d.ts +15 -15
  38. package/dist/excalidraw/actions/actionDeleteSelected.js +3 -2
  39. package/dist/excalidraw/actions/actionDistribute.d.ts +2 -2
  40. package/dist/excalidraw/actions/actionDistribute.js +1 -1
  41. package/dist/excalidraw/actions/actionDuplicateSelection.d.ts +1 -1
  42. package/dist/excalidraw/actions/actionDuplicateSelection.js +4 -3
  43. package/dist/excalidraw/actions/actionElementLock.d.ts +10 -10
  44. package/dist/excalidraw/actions/actionExport.d.ts +43 -43
  45. package/dist/excalidraw/actions/actionExport.js +4 -4
  46. package/dist/excalidraw/actions/actionFinalize.d.ts +9 -9
  47. package/dist/excalidraw/actions/actionFinalize.js +7 -6
  48. package/dist/excalidraw/actions/actionFlip.d.ts +2 -2
  49. package/dist/excalidraw/actions/actionFlip.js +11 -11
  50. package/dist/excalidraw/actions/actionFrame.d.ts +16 -16
  51. package/dist/excalidraw/actions/actionFrame.js +1 -1
  52. package/dist/excalidraw/actions/actionGroup.d.ts +10 -10
  53. package/dist/excalidraw/actions/actionGroup.js +3 -2
  54. package/dist/excalidraw/actions/actionLinearEditor.d.ts +5 -5
  55. package/dist/excalidraw/actions/actionLinearEditor.js +1 -1
  56. package/dist/excalidraw/{element/Hyperlink.d.ts → actions/actionLink.d.ts} +29 -51
  57. package/dist/excalidraw/actions/actionLink.js +40 -0
  58. package/dist/excalidraw/actions/actionMenu.d.ts +13 -13
  59. package/dist/excalidraw/actions/actionNavigate.d.ts +10 -10
  60. package/dist/excalidraw/actions/actionNavigate.js +1 -1
  61. package/dist/excalidraw/actions/actionProperties.d.ts +77 -77
  62. package/dist/excalidraw/actions/actionProperties.js +32 -27
  63. package/dist/excalidraw/actions/actionSelectAll.d.ts +5 -5
  64. package/dist/excalidraw/actions/actionSelectAll.js +1 -1
  65. package/dist/excalidraw/actions/actionStyles.d.ts +7 -7
  66. package/dist/excalidraw/actions/actionStyles.js +4 -4
  67. package/dist/excalidraw/actions/actionToggleGridMode.d.ts +5 -5
  68. package/dist/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +5 -5
  69. package/dist/excalidraw/actions/actionToggleStats.d.ts +5 -5
  70. package/dist/excalidraw/actions/actionToggleViewMode.d.ts +5 -5
  71. package/dist/excalidraw/actions/actionToggleZenMode.d.ts +5 -5
  72. package/dist/excalidraw/actions/index.d.ts +1 -1
  73. package/dist/excalidraw/actions/index.js +1 -1
  74. package/dist/excalidraw/actions/manager.js +2 -1
  75. package/dist/excalidraw/align.d.ts +2 -2
  76. package/dist/excalidraw/align.js +2 -2
  77. package/dist/excalidraw/animated-trail.d.ts +33 -0
  78. package/dist/excalidraw/animated-trail.js +96 -0
  79. package/dist/excalidraw/animation-frame-handler.d.ts +16 -0
  80. package/dist/excalidraw/animation-frame-handler.js +55 -0
  81. package/dist/excalidraw/appState.d.ts +1 -1
  82. package/dist/excalidraw/appState.js +1 -3
  83. package/dist/excalidraw/clipboard.js +5 -5
  84. package/dist/excalidraw/components/Actions.d.ts +3 -3
  85. package/dist/excalidraw/components/Actions.js +18 -7
  86. package/dist/excalidraw/components/App.d.ts +23 -16
  87. package/dist/excalidraw/components/App.js +387 -272
  88. package/dist/excalidraw/components/Button.d.ts +1 -1
  89. package/dist/excalidraw/components/FilledButton.d.ts +2 -2
  90. package/dist/excalidraw/components/FilledButton.js +27 -3
  91. package/dist/excalidraw/components/FollowMode/FollowMode.js +1 -1
  92. package/dist/excalidraw/components/ImageExportDialog.d.ts +2 -1
  93. package/dist/excalidraw/components/ImageExportDialog.js +17 -13
  94. package/dist/excalidraw/components/JSONExportDialog.js +1 -1
  95. package/dist/excalidraw/components/{LaserTool/LaserPointerButton.d.ts → LaserPointerButton.d.ts} +1 -1
  96. package/dist/excalidraw/components/{LaserTool/LaserPointerButton.js → LaserPointerButton.js} +2 -2
  97. package/dist/excalidraw/components/LayerUI.js +3 -3
  98. package/dist/excalidraw/components/MobileMenu.js +1 -1
  99. package/dist/excalidraw/components/ProjectName.d.ts +0 -1
  100. package/dist/excalidraw/components/ProjectName.js +1 -1
  101. package/dist/excalidraw/components/PublishLibrary.js +1 -1
  102. package/dist/excalidraw/components/SVGLayer.d.ts +8 -0
  103. package/dist/excalidraw/components/SVGLayer.js +20 -0
  104. package/dist/excalidraw/components/ShareableLinkDialog.js +10 -10
  105. package/dist/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  106. package/dist/excalidraw/components/Stack.d.ts +2 -2
  107. package/dist/excalidraw/components/TTDDialog/common.js +10 -1
  108. package/dist/excalidraw/components/TextField.d.ts +5 -2
  109. package/dist/excalidraw/components/TextField.js +6 -3
  110. package/dist/excalidraw/components/Toast.d.ts +3 -2
  111. package/dist/excalidraw/components/Toast.js +2 -2
  112. package/dist/excalidraw/components/ToolButton.js +2 -1
  113. package/dist/excalidraw/components/canvases/InteractiveCanvas.d.ts +2 -2
  114. package/dist/excalidraw/components/canvases/InteractiveCanvas.js +6 -5
  115. package/dist/excalidraw/components/canvases/StaticCanvas.d.ts +4 -3
  116. package/dist/excalidraw/components/canvases/StaticCanvas.js +7 -5
  117. package/dist/excalidraw/components/dropdownMenu/DropdownMenuContent.js +22 -2
  118. package/dist/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
  119. package/dist/excalidraw/{element → components/hyperlink}/Hyperlink.js +40 -115
  120. package/dist/excalidraw/components/hyperlink/helpers.d.ts +7 -0
  121. package/dist/excalidraw/components/hyperlink/helpers.js +49 -0
  122. package/dist/excalidraw/components/icons.d.ts +2 -1
  123. package/dist/excalidraw/components/icons.js +2 -1
  124. package/dist/excalidraw/components/live-collaboration/LiveCollaborationTrigger.js +3 -2
  125. package/dist/excalidraw/components/main-menu/DefaultItems.js +5 -2
  126. package/dist/excalidraw/constants.d.ts +6 -0
  127. package/dist/excalidraw/constants.js +6 -0
  128. package/dist/excalidraw/data/blob.js +13 -14
  129. package/dist/excalidraw/data/filesystem.d.ts +1 -1
  130. package/dist/excalidraw/data/index.d.ts +2 -1
  131. package/dist/excalidraw/data/index.js +20 -16
  132. package/dist/excalidraw/data/json.d.ts +1 -1
  133. package/dist/excalidraw/data/json.js +5 -3
  134. package/dist/excalidraw/data/library.d.ts +60 -8
  135. package/dist/excalidraw/data/library.js +302 -33
  136. package/dist/excalidraw/data/resave.d.ts +1 -1
  137. package/dist/excalidraw/data/resave.js +2 -2
  138. package/dist/excalidraw/data/restore.js +8 -13
  139. package/dist/excalidraw/data/transform.js +13 -9
  140. package/dist/excalidraw/distribute.d.ts +2 -2
  141. package/dist/excalidraw/distribute.js +2 -2
  142. package/dist/excalidraw/element/ElementCanvasButtons.d.ts +3 -2
  143. package/dist/excalidraw/element/ElementCanvasButtons.js +4 -4
  144. package/dist/excalidraw/element/binding.d.ts +9 -9
  145. package/dist/excalidraw/element/binding.js +61 -59
  146. package/dist/excalidraw/element/bounds.d.ts +5 -5
  147. package/dist/excalidraw/element/bounds.js +29 -32
  148. package/dist/excalidraw/element/collision.d.ts +11 -11
  149. package/dist/excalidraw/element/collision.js +49 -46
  150. package/dist/excalidraw/element/containerCache.d.ts +11 -0
  151. package/dist/excalidraw/element/containerCache.js +14 -0
  152. package/dist/excalidraw/element/dragElements.js +10 -19
  153. package/dist/excalidraw/element/embeddable.d.ts +12 -13
  154. package/dist/excalidraw/element/embeddable.js +17 -27
  155. package/dist/excalidraw/element/image.js +1 -2
  156. package/dist/excalidraw/element/index.d.ts +8 -1
  157. package/dist/excalidraw/element/index.js +23 -1
  158. package/dist/excalidraw/element/linearElementEditor.d.ts +36 -36
  159. package/dist/excalidraw/element/linearElementEditor.js +79 -80
  160. package/dist/excalidraw/element/newElement.d.ts +4 -6
  161. package/dist/excalidraw/element/newElement.js +11 -16
  162. package/dist/excalidraw/element/resizeElements.d.ts +6 -6
  163. package/dist/excalidraw/element/resizeElements.js +40 -46
  164. package/dist/excalidraw/element/resizeTest.d.ts +3 -3
  165. package/dist/excalidraw/element/resizeTest.js +4 -4
  166. package/dist/excalidraw/element/sizeHelpers.d.ts +2 -2
  167. package/dist/excalidraw/element/sizeHelpers.js +2 -2
  168. package/dist/excalidraw/element/textElement.d.ts +34 -21
  169. package/dist/excalidraw/element/textElement.js +87 -111
  170. package/dist/excalidraw/element/textWysiwyg.d.ts +1 -6
  171. package/dist/excalidraw/element/textWysiwyg.js +15 -37
  172. package/dist/excalidraw/element/transformHandles.d.ts +4 -4
  173. package/dist/excalidraw/element/transformHandles.js +6 -6
  174. package/dist/excalidraw/element/typeChecks.js +4 -1
  175. package/dist/excalidraw/element/types.d.ts +24 -11
  176. package/dist/excalidraw/frame.d.ts +26 -20
  177. package/dist/excalidraw/frame.js +157 -84
  178. package/dist/excalidraw/groups.d.ts +3 -3
  179. package/dist/excalidraw/groups.js +11 -3
  180. package/dist/excalidraw/history.d.ts +1 -1
  181. package/dist/excalidraw/hooks/useLibraryItemSvg.js +1 -1
  182. package/dist/excalidraw/index.d.ts +9 -10
  183. package/dist/excalidraw/index.js +16 -12
  184. package/dist/excalidraw/laser-trails.d.ts +19 -0
  185. package/dist/excalidraw/laser-trails.js +95 -0
  186. package/dist/excalidraw/locales/en.json +10 -5
  187. package/dist/excalidraw/queue.d.ts +9 -0
  188. package/dist/excalidraw/queue.js +27 -0
  189. package/dist/excalidraw/reactUtils.d.ts +14 -0
  190. package/dist/excalidraw/reactUtils.js +45 -0
  191. package/dist/excalidraw/renderer/helpers.d.ts +13 -0
  192. package/dist/excalidraw/renderer/helpers.js +39 -0
  193. package/dist/excalidraw/renderer/interactiveScene.d.ts +20 -0
  194. package/dist/excalidraw/renderer/{renderScene.js → interactiveScene.js} +199 -474
  195. package/dist/excalidraw/renderer/renderElement.d.ts +6 -6
  196. package/dist/excalidraw/renderer/renderElement.js +54 -366
  197. package/dist/excalidraw/renderer/staticScene.d.ts +11 -0
  198. package/dist/excalidraw/renderer/staticScene.js +205 -0
  199. package/dist/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  200. package/dist/excalidraw/renderer/staticSvgScene.js +385 -0
  201. package/dist/excalidraw/scene/Fonts.js +2 -1
  202. package/dist/excalidraw/scene/Renderer.d.ts +1 -1
  203. package/dist/excalidraw/scene/Renderer.js +32 -20
  204. package/dist/excalidraw/scene/Scene.d.ts +10 -9
  205. package/dist/excalidraw/scene/Scene.js +45 -21
  206. package/dist/excalidraw/scene/Shape.d.ts +3 -1
  207. package/dist/excalidraw/scene/Shape.js +7 -5
  208. package/dist/excalidraw/scene/ShapeCache.d.ts +2 -1
  209. package/dist/excalidraw/scene/ShapeCache.js +1 -0
  210. package/dist/excalidraw/scene/comparisons.js +2 -1
  211. package/dist/excalidraw/scene/export.d.ts +3 -0
  212. package/dist/excalidraw/scene/export.js +20 -40
  213. package/dist/excalidraw/scene/index.d.ts +0 -1
  214. package/dist/excalidraw/scene/index.js +0 -1
  215. package/dist/excalidraw/scene/scrollbars.d.ts +1 -1
  216. package/dist/excalidraw/scene/scrollbars.js +1 -1
  217. package/dist/excalidraw/scene/selection.d.ts +5 -5
  218. package/dist/excalidraw/scene/selection.js +16 -14
  219. package/dist/excalidraw/scene/types.d.ts +11 -5
  220. package/dist/excalidraw/snapping.d.ts +7 -7
  221. package/dist/excalidraw/snapping.js +21 -20
  222. package/dist/excalidraw/types.d.ts +16 -17
  223. package/dist/excalidraw/utility-types.d.ts +7 -0
  224. package/dist/excalidraw/utils.d.ts +21 -16
  225. package/dist/excalidraw/utils.js +43 -45
  226. package/dist/{dev/en-RLIAOBCI.json → prod/en-EY7E2L5O.json} +10 -5
  227. package/dist/prod/index.css +1 -1
  228. package/dist/prod/index.js +42 -42
  229. package/dist/utils/bbox.d.ts +2 -2
  230. package/dist/utils/export.d.ts +3 -3
  231. package/dist/utils/export.js +3 -13
  232. package/dist/utils/index.d.ts +2 -2
  233. package/dist/utils/index.js +2 -2
  234. package/dist/utils/withinBounds.d.ts +1 -1
  235. package/dist/utils/withinBounds.js +5 -2
  236. package/package.json +4 -4
  237. package/dist/browser/dev/excalidraw-assets-dev/chunk-2W5GQUR4.js.map +0 -7
  238. package/dist/browser/dev/excalidraw-assets-dev/chunk-KGZXLFLR.js +0 -53497
  239. package/dist/browser/dev/excalidraw-assets-dev/chunk-KGZXLFLR.js.map +0 -7
  240. package/dist/browser/dev/excalidraw-assets-dev/image-3MFRCKYM.css +0 -5797
  241. package/dist/browser/dev/excalidraw-assets-dev/image-3MFRCKYM.css.map +0 -7
  242. package/dist/browser/prod/excalidraw-assets/chunk-4YN2HN3S.js +0 -257
  243. package/dist/browser/prod/excalidraw-assets/chunk-OWLL6VOG.js +0 -11
  244. package/dist/browser/prod/excalidraw-assets/en-ERQOR3OC.js +0 -1
  245. package/dist/browser/prod/excalidraw-assets/image-LTLHTTSE.js +0 -1
  246. package/dist/browser/prod/excalidraw-assets/image-QBL334OA.css +0 -1
  247. package/dist/excalidraw/components/LaserTool/LaserPathManager.d.ts +0 -28
  248. package/dist/excalidraw/components/LaserTool/LaserPathManager.js +0 -225
  249. package/dist/excalidraw/components/LaserTool/LaserTool.d.ts +0 -8
  250. package/dist/excalidraw/components/LaserTool/LaserTool.js +0 -15
  251. package/dist/excalidraw/renderer/renderScene.d.ts +0 -25
  252. package/dist/excalidraw/vite.config.d.mts +0 -2
  253. package/dist/excalidraw/vite.config.mjs +0 -13
  254. /package/dist/browser/dev/excalidraw-assets-dev/{en-OC6JWP3X.js.map → en-BZY7JRTM.js.map} +0 -0
  255. /package/dist/browser/dev/excalidraw-assets-dev/{image-5TVMINCA.js.map → image-CVN3YKRW.js.map} +0 -0
@@ -20,7 +20,7 @@ export declare const actionAddToLibrary: {
20
20
  errorMessage: import("react").ReactNode;
21
21
  activeEmbeddable: {
22
22
  element: import("../element/types").NonDeletedExcalidrawElement;
23
- state: "active" | "hover";
23
+ state: "hover" | "active";
24
24
  } | null;
25
25
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
26
26
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -68,7 +68,7 @@ export declare const actionAddToLibrary: {
68
68
  scrollY: number;
69
69
  cursorButton: "up" | "down";
70
70
  scrolledOutside: boolean;
71
- name: string;
71
+ name: string | null;
72
72
  isResizing: boolean;
73
73
  isRotating: boolean;
74
74
  zoom: Readonly<{
@@ -81,14 +81,14 @@ export declare const actionAddToLibrary: {
81
81
  tab?: string | undefined;
82
82
  } | null;
83
83
  openDialog: {
84
- name: "help" | "imageExport" | "jsonExport";
84
+ name: "imageExport" | "help" | "jsonExport";
85
85
  } | {
86
86
  name: "settings";
87
87
  source: "settings" | "tool" | "generation";
88
88
  tab: "text-to-diagram" | "diagram-to-code";
89
89
  } | {
90
90
  name: "ttd";
91
- tab: "mermaid" | "text-to-diagram";
91
+ tab: "text-to-diagram" | "mermaid";
92
92
  } | null;
93
93
  defaultSidebarDockedPreference: boolean;
94
94
  lastPointerDownWith: import("../element/types").PointerType;
@@ -140,7 +140,7 @@ export declare const actionAddToLibrary: {
140
140
  data: import("../charts").Spreadsheet;
141
141
  };
142
142
  pendingImageElementId: string | null;
143
- showHyperlinkPopup: false | "editor" | "info";
143
+ showHyperlinkPopup: false | "info" | "editor";
144
144
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
145
145
  snapLines: readonly import("../snapping").SnapLine[];
146
146
  originSnapOffset: {
@@ -164,7 +164,7 @@ export declare const actionAddToLibrary: {
164
164
  isLoading: boolean;
165
165
  activeEmbeddable: {
166
166
  element: import("../element/types").NonDeletedExcalidrawElement;
167
- state: "active" | "hover";
167
+ state: "hover" | "active";
168
168
  } | null;
169
169
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
170
170
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -212,7 +212,7 @@ export declare const actionAddToLibrary: {
212
212
  scrollY: number;
213
213
  cursorButton: "up" | "down";
214
214
  scrolledOutside: boolean;
215
- name: string;
215
+ name: string | null;
216
216
  isResizing: boolean;
217
217
  isRotating: boolean;
218
218
  zoom: Readonly<{
@@ -225,14 +225,14 @@ export declare const actionAddToLibrary: {
225
225
  tab?: string | undefined;
226
226
  } | null;
227
227
  openDialog: {
228
- name: "help" | "imageExport" | "jsonExport";
228
+ name: "imageExport" | "help" | "jsonExport";
229
229
  } | {
230
230
  name: "settings";
231
231
  source: "settings" | "tool" | "generation";
232
232
  tab: "text-to-diagram" | "diagram-to-code";
233
233
  } | {
234
234
  name: "ttd";
235
- tab: "mermaid" | "text-to-diagram";
235
+ tab: "text-to-diagram" | "mermaid";
236
236
  } | null;
237
237
  defaultSidebarDockedPreference: boolean;
238
238
  lastPointerDownWith: import("../element/types").PointerType;
@@ -289,7 +289,7 @@ export declare const actionAddToLibrary: {
289
289
  data: import("../charts").Spreadsheet;
290
290
  };
291
291
  pendingImageElementId: string | null;
292
- showHyperlinkPopup: false | "editor" | "info";
292
+ showHyperlinkPopup: false | "info" | "editor";
293
293
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
294
294
  snapLines: readonly import("../snapping").SnapLine[];
295
295
  originSnapOffset: {
@@ -313,7 +313,7 @@ export declare const actionAddToLibrary: {
313
313
  isLoading: boolean;
314
314
  activeEmbeddable: {
315
315
  element: import("../element/types").NonDeletedExcalidrawElement;
316
- state: "active" | "hover";
316
+ state: "hover" | "active";
317
317
  } | null;
318
318
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
319
319
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -361,7 +361,7 @@ export declare const actionAddToLibrary: {
361
361
  scrollY: number;
362
362
  cursorButton: "up" | "down";
363
363
  scrolledOutside: boolean;
364
- name: string;
364
+ name: string | null;
365
365
  isResizing: boolean;
366
366
  isRotating: boolean;
367
367
  zoom: Readonly<{
@@ -374,14 +374,14 @@ export declare const actionAddToLibrary: {
374
374
  tab?: string | undefined;
375
375
  } | null;
376
376
  openDialog: {
377
- name: "help" | "imageExport" | "jsonExport";
377
+ name: "imageExport" | "help" | "jsonExport";
378
378
  } | {
379
379
  name: "settings";
380
380
  source: "settings" | "tool" | "generation";
381
381
  tab: "text-to-diagram" | "diagram-to-code";
382
382
  } | {
383
383
  name: "ttd";
384
- tab: "mermaid" | "text-to-diagram";
384
+ tab: "text-to-diagram" | "mermaid";
385
385
  } | null;
386
386
  defaultSidebarDockedPreference: boolean;
387
387
  lastPointerDownWith: import("../element/types").PointerType;
@@ -438,7 +438,7 @@ export declare const actionAddToLibrary: {
438
438
  data: import("../charts").Spreadsheet;
439
439
  };
440
440
  pendingImageElementId: string | null;
441
- showHyperlinkPopup: false | "editor" | "info";
441
+ showHyperlinkPopup: false | "info" | "editor";
442
442
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
443
443
  snapLines: readonly import("../snapping").SnapLine[];
444
444
  originSnapOffset: {
@@ -9,7 +9,7 @@ export declare const actionAlignTop: {
9
9
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
10
10
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
11
11
  appState: Readonly<AppState>;
12
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
12
+ elements: ExcalidrawElement[];
13
13
  commitToHistory: true;
14
14
  };
15
15
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
@@ -25,7 +25,7 @@ export declare const actionAlignBottom: {
25
25
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
26
26
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
27
27
  appState: Readonly<AppState>;
28
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
28
+ elements: ExcalidrawElement[];
29
29
  commitToHistory: true;
30
30
  };
31
31
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
@@ -41,7 +41,7 @@ export declare const actionAlignLeft: {
41
41
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
42
42
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
43
43
  appState: Readonly<AppState>;
44
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
44
+ elements: ExcalidrawElement[];
45
45
  commitToHistory: true;
46
46
  };
47
47
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
@@ -57,7 +57,7 @@ export declare const actionAlignRight: {
57
57
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
58
58
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
59
59
  appState: Readonly<AppState>;
60
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
60
+ elements: ExcalidrawElement[];
61
61
  commitToHistory: true;
62
62
  };
63
63
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
@@ -73,7 +73,7 @@ export declare const actionAlignVerticallyCentered: {
73
73
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
74
74
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
75
75
  appState: Readonly<AppState>;
76
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
76
+ elements: ExcalidrawElement[];
77
77
  commitToHistory: true;
78
78
  };
79
79
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
@@ -88,7 +88,7 @@ export declare const actionAlignHorizontallyCentered: {
88
88
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
89
89
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
90
90
  appState: Readonly<AppState>;
91
- elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
91
+ elements: ExcalidrawElement[];
92
92
  commitToHistory: true;
93
93
  };
94
94
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
@@ -18,7 +18,8 @@ const alignActionsPredicate = (elements, appState, _, app) => {
18
18
  };
19
19
  const alignSelectedElements = (elements, appState, app, alignment) => {
20
20
  const selectedElements = app.scene.getSelectedElements(appState);
21
- const updatedElements = alignElements(selectedElements, alignment);
21
+ const elementsMap = arrayToMap(elements);
22
+ const updatedElements = alignElements(selectedElements, elementsMap, alignment);
22
23
  const updatedElementsMap = arrayToMap(updatedElements);
23
24
  return updateFrameMembershipOfSelectedElements(elements.map((element) => updatedElementsMap.get(element.id) || element), appState, app);
24
25
  };
@@ -40,7 +40,7 @@ export declare const actionBindText: {
40
40
  errorMessage: import("react").ReactNode;
41
41
  activeEmbeddable: {
42
42
  element: import("../element/types").NonDeletedExcalidrawElement;
43
- state: "active" | "hover";
43
+ state: "hover" | "active";
44
44
  } | null;
45
45
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
46
46
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -88,7 +88,7 @@ export declare const actionBindText: {
88
88
  scrollY: number;
89
89
  cursorButton: "up" | "down";
90
90
  scrolledOutside: boolean;
91
- name: string;
91
+ name: string | null;
92
92
  isResizing: boolean;
93
93
  isRotating: boolean;
94
94
  zoom: Readonly<{
@@ -101,14 +101,14 @@ export declare const actionBindText: {
101
101
  tab?: string | undefined;
102
102
  } | null;
103
103
  openDialog: {
104
- name: "help" | "imageExport" | "jsonExport";
104
+ name: "imageExport" | "help" | "jsonExport";
105
105
  } | {
106
106
  name: "settings";
107
107
  source: "settings" | "tool" | "generation";
108
108
  tab: "text-to-diagram" | "diagram-to-code";
109
109
  } | {
110
110
  name: "ttd";
111
- tab: "mermaid" | "text-to-diagram";
111
+ tab: "text-to-diagram" | "mermaid";
112
112
  } | null;
113
113
  defaultSidebarDockedPreference: boolean;
114
114
  lastPointerDownWith: import("../element/types").PointerType;
@@ -162,7 +162,7 @@ export declare const actionBindText: {
162
162
  data: import("../charts").Spreadsheet;
163
163
  };
164
164
  pendingImageElementId: string | null;
165
- showHyperlinkPopup: false | "editor" | "info";
165
+ showHyperlinkPopup: false | "info" | "editor";
166
166
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
167
167
  snapLines: readonly import("../snapping").SnapLine[];
168
168
  originSnapOffset: {
@@ -201,7 +201,7 @@ export declare const actionWrapTextInContainer: {
201
201
  errorMessage: import("react").ReactNode;
202
202
  activeEmbeddable: {
203
203
  element: import("../element/types").NonDeletedExcalidrawElement;
204
- state: "active" | "hover";
204
+ state: "hover" | "active";
205
205
  } | null;
206
206
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
207
207
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -249,7 +249,7 @@ export declare const actionWrapTextInContainer: {
249
249
  scrollY: number;
250
250
  cursorButton: "up" | "down";
251
251
  scrolledOutside: boolean;
252
- name: string;
252
+ name: string | null;
253
253
  isResizing: boolean;
254
254
  isRotating: boolean;
255
255
  zoom: Readonly<{
@@ -262,14 +262,14 @@ export declare const actionWrapTextInContainer: {
262
262
  tab?: string | undefined;
263
263
  } | null;
264
264
  openDialog: {
265
- name: "help" | "imageExport" | "jsonExport";
265
+ name: "imageExport" | "help" | "jsonExport";
266
266
  } | {
267
267
  name: "settings";
268
268
  source: "settings" | "tool" | "generation";
269
269
  tab: "text-to-diagram" | "diagram-to-code";
270
270
  } | {
271
271
  name: "ttd";
272
- tab: "mermaid" | "text-to-diagram";
272
+ tab: "text-to-diagram" | "mermaid";
273
273
  } | null;
274
274
  defaultSidebarDockedPreference: boolean;
275
275
  lastPointerDownWith: import("../element/types").PointerType;
@@ -323,7 +323,7 @@ export declare const actionWrapTextInContainer: {
323
323
  data: import("../charts").Spreadsheet;
324
324
  };
325
325
  pendingImageElementId: string | null;
326
- showHyperlinkPopup: false | "editor" | "info";
326
+ showHyperlinkPopup: false | "info" | "editor";
327
327
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
328
328
  snapLines: readonly import("../snapping").SnapLine[];
329
329
  originSnapOffset: {
@@ -2,7 +2,7 @@ import { BOUND_TEXT_PADDING, ROUNDNESS, VERTICAL_ALIGN, TEXT_ALIGN, } from "../c
2
2
  import { isTextElement, newElement } from "../element";
3
3
  import { mutateElement } from "../element/mutateElement";
4
4
  import { computeBoundTextPosition, computeContainerDimensionForBoundText, getBoundTextElement, measureText, redrawTextBoundingBox, } from "../element/textElement";
5
- import { getOriginalContainerHeightFromCache, resetOriginalContainerCache, updateOriginalContainerCache, } from "../element/textWysiwyg";
5
+ import { getOriginalContainerHeightFromCache, resetOriginalContainerCache, updateOriginalContainerCache, } from "../element/containerCache";
6
6
  import { hasBoundTextElement, isTextBindableContainer, isUsingAdaptiveRadius, } from "../element/typeChecks";
7
7
  import { getFontString } from "../utils";
8
8
  import { register } from "./register";
@@ -16,18 +16,18 @@ export const actionUnbindText = register({
16
16
  },
17
17
  perform: (elements, appState, _, app) => {
18
18
  const selectedElements = app.scene.getSelectedElements(appState);
19
+ const elementsMap = app.scene.getNonDeletedElementsMap();
19
20
  selectedElements.forEach((element) => {
20
- const boundTextElement = getBoundTextElement(element);
21
+ const boundTextElement = getBoundTextElement(element, elementsMap);
21
22
  if (boundTextElement) {
22
- const { width, height, baseline } = measureText(boundTextElement.originalText, getFontString(boundTextElement), boundTextElement.lineHeight);
23
+ const { width, height } = measureText(boundTextElement.originalText, getFontString(boundTextElement), boundTextElement.lineHeight);
23
24
  const originalContainerHeight = getOriginalContainerHeightFromCache(element.id);
24
25
  resetOriginalContainerCache(element.id);
25
- const { x, y } = computeBoundTextPosition(element, boundTextElement);
26
+ const { x, y } = computeBoundTextPosition(element, boundTextElement, elementsMap);
26
27
  mutateElement(boundTextElement, {
27
28
  containerId: null,
28
29
  width,
29
30
  height,
30
- baseline,
31
31
  text: boundTextElement.originalText,
32
32
  x,
33
33
  y,
@@ -65,7 +65,7 @@ export const actionBindText = register({
65
65
  }
66
66
  if (textElement &&
67
67
  bindingContainer &&
68
- getBoundTextElement(bindingContainer) === null) {
68
+ getBoundTextElement(bindingContainer, app.scene.getNonDeletedElementsMap()) === null) {
69
69
  return true;
70
70
  }
71
71
  }
@@ -96,7 +96,7 @@ export const actionBindText = register({
96
96
  }),
97
97
  });
98
98
  const originalContainerHeight = container.height;
99
- redrawTextBoundingBox(textElement, container);
99
+ redrawTextBoundingBox(textElement, container, app.scene.getNonDeletedElementsMap());
100
100
  // overwritting the cache with original container height so
101
101
  // it can be restored when unbind
102
102
  updateOriginalContainerCache(container.id, originalContainerHeight);
@@ -196,7 +196,7 @@ export const actionWrapTextInContainer = register({
196
196
  boundElements: null,
197
197
  textAlign: TEXT_ALIGN.CENTER,
198
198
  }, false);
199
- redrawTextBoundingBox(textElement, container);
199
+ redrawTextBoundingBox(textElement, container, app.scene.getNonDeletedElementsMap());
200
200
  updatedElements = pushContainerBelowText([...updatedElements, container], container, textElement);
201
201
  containerIds[container.id] = true;
202
202
  }