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

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 (251) hide show
  1. package/CHANGELOG.md +52 -2
  2. package/dist/browser/dev/excalidraw-assets-dev/chunk-5VWQDKDR.js +20279 -0
  3. package/dist/browser/dev/excalidraw-assets-dev/chunk-5VWQDKDR.js.map +7 -0
  4. package/dist/browser/dev/excalidraw-assets-dev/{chunk-2W5GQUR4.js → chunk-IM4WTX2M.js} +12 -6
  5. package/dist/browser/dev/excalidraw-assets-dev/chunk-IM4WTX2M.js.map +7 -0
  6. package/dist/browser/dev/excalidraw-assets-dev/{en-OC6JWP3X.js → en-IOBA4CS2.js} +4 -2
  7. package/dist/browser/dev/excalidraw-assets-dev/image-LK4UNFRZ.css +6 -0
  8. package/dist/browser/dev/excalidraw-assets-dev/image-LK4UNFRZ.css.map +7 -0
  9. package/dist/browser/dev/excalidraw-assets-dev/{image-5TVMINCA.js → image-VKDAL6BQ.js} +2 -4
  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 +34708 -37
  15. package/dist/browser/dev/index.js.map +4 -4
  16. package/dist/browser/prod/excalidraw-assets/chunk-LIG3S5TN.js +11 -0
  17. package/dist/browser/prod/excalidraw-assets/chunk-N2C5DK3B.js +55 -0
  18. package/dist/browser/prod/excalidraw-assets/en-WFZVQ7I6.js +1 -0
  19. package/dist/browser/prod/excalidraw-assets/image-4AT7LYMR.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-TDNWCAOT.json} +9 -5
  25. package/dist/dev/index.css +189 -129
  26. package/dist/dev/index.css.map +3 -3
  27. package/dist/dev/index.js +39078 -40080
  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/resave.d.ts +1 -1
  135. package/dist/excalidraw/data/resave.js +2 -2
  136. package/dist/excalidraw/data/restore.js +8 -13
  137. package/dist/excalidraw/data/transform.js +13 -9
  138. package/dist/excalidraw/distribute.d.ts +2 -2
  139. package/dist/excalidraw/distribute.js +2 -2
  140. package/dist/excalidraw/element/ElementCanvasButtons.d.ts +3 -2
  141. package/dist/excalidraw/element/ElementCanvasButtons.js +4 -4
  142. package/dist/excalidraw/element/binding.d.ts +9 -9
  143. package/dist/excalidraw/element/binding.js +61 -59
  144. package/dist/excalidraw/element/bounds.d.ts +5 -5
  145. package/dist/excalidraw/element/bounds.js +29 -32
  146. package/dist/excalidraw/element/collision.d.ts +11 -11
  147. package/dist/excalidraw/element/collision.js +49 -46
  148. package/dist/excalidraw/element/containerCache.d.ts +11 -0
  149. package/dist/excalidraw/element/containerCache.js +14 -0
  150. package/dist/excalidraw/element/dragElements.js +10 -19
  151. package/dist/excalidraw/element/embeddable.d.ts +12 -13
  152. package/dist/excalidraw/element/embeddable.js +17 -27
  153. package/dist/excalidraw/element/image.js +1 -2
  154. package/dist/excalidraw/element/index.d.ts +0 -1
  155. package/dist/excalidraw/element/index.js +0 -1
  156. package/dist/excalidraw/element/linearElementEditor.d.ts +36 -36
  157. package/dist/excalidraw/element/linearElementEditor.js +79 -80
  158. package/dist/excalidraw/element/newElement.d.ts +4 -6
  159. package/dist/excalidraw/element/newElement.js +11 -16
  160. package/dist/excalidraw/element/resizeElements.d.ts +6 -6
  161. package/dist/excalidraw/element/resizeElements.js +40 -46
  162. package/dist/excalidraw/element/resizeTest.d.ts +3 -3
  163. package/dist/excalidraw/element/resizeTest.js +4 -4
  164. package/dist/excalidraw/element/sizeHelpers.d.ts +2 -2
  165. package/dist/excalidraw/element/sizeHelpers.js +2 -2
  166. package/dist/excalidraw/element/textElement.d.ts +18 -20
  167. package/dist/excalidraw/element/textElement.js +80 -111
  168. package/dist/excalidraw/element/textWysiwyg.d.ts +1 -6
  169. package/dist/excalidraw/element/textWysiwyg.js +15 -37
  170. package/dist/excalidraw/element/transformHandles.d.ts +4 -4
  171. package/dist/excalidraw/element/transformHandles.js +6 -6
  172. package/dist/excalidraw/element/typeChecks.js +4 -1
  173. package/dist/excalidraw/element/types.d.ts +24 -11
  174. package/dist/excalidraw/frame.d.ts +26 -20
  175. package/dist/excalidraw/frame.js +157 -84
  176. package/dist/excalidraw/groups.d.ts +3 -3
  177. package/dist/excalidraw/groups.js +11 -3
  178. package/dist/excalidraw/history.d.ts +1 -1
  179. package/dist/excalidraw/hooks/useLibraryItemSvg.js +1 -1
  180. package/dist/excalidraw/index.d.ts +8 -9
  181. package/dist/excalidraw/index.js +15 -11
  182. package/dist/excalidraw/laser-trails.d.ts +19 -0
  183. package/dist/excalidraw/laser-trails.js +95 -0
  184. package/dist/excalidraw/locales/en.json +9 -5
  185. package/dist/excalidraw/reactUtils.d.ts +14 -0
  186. package/dist/excalidraw/reactUtils.js +45 -0
  187. package/dist/excalidraw/renderer/helpers.d.ts +13 -0
  188. package/dist/excalidraw/renderer/helpers.js +39 -0
  189. package/dist/excalidraw/renderer/interactiveScene.d.ts +20 -0
  190. package/dist/excalidraw/renderer/{renderScene.js → interactiveScene.js} +199 -474
  191. package/dist/excalidraw/renderer/renderElement.d.ts +6 -6
  192. package/dist/excalidraw/renderer/renderElement.js +54 -366
  193. package/dist/excalidraw/renderer/staticScene.d.ts +11 -0
  194. package/dist/excalidraw/renderer/staticScene.js +205 -0
  195. package/dist/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  196. package/dist/excalidraw/renderer/staticSvgScene.js +385 -0
  197. package/dist/excalidraw/scene/Fonts.js +2 -1
  198. package/dist/excalidraw/scene/Renderer.d.ts +1 -1
  199. package/dist/excalidraw/scene/Renderer.js +32 -20
  200. package/dist/excalidraw/scene/Scene.d.ts +10 -9
  201. package/dist/excalidraw/scene/Scene.js +45 -21
  202. package/dist/excalidraw/scene/Shape.d.ts +3 -1
  203. package/dist/excalidraw/scene/Shape.js +7 -5
  204. package/dist/excalidraw/scene/ShapeCache.d.ts +2 -1
  205. package/dist/excalidraw/scene/ShapeCache.js +1 -0
  206. package/dist/excalidraw/scene/comparisons.js +2 -1
  207. package/dist/excalidraw/scene/export.d.ts +3 -0
  208. package/dist/excalidraw/scene/export.js +20 -40
  209. package/dist/excalidraw/scene/index.d.ts +0 -1
  210. package/dist/excalidraw/scene/index.js +0 -1
  211. package/dist/excalidraw/scene/scrollbars.d.ts +1 -1
  212. package/dist/excalidraw/scene/scrollbars.js +1 -1
  213. package/dist/excalidraw/scene/selection.d.ts +5 -5
  214. package/dist/excalidraw/scene/selection.js +16 -14
  215. package/dist/excalidraw/scene/types.d.ts +11 -5
  216. package/dist/excalidraw/snapping.d.ts +7 -7
  217. package/dist/excalidraw/snapping.js +21 -20
  218. package/dist/excalidraw/types.d.ts +10 -11
  219. package/dist/excalidraw/utility-types.d.ts +5 -0
  220. package/dist/excalidraw/utils.d.ts +18 -15
  221. package/dist/excalidraw/utils.js +37 -45
  222. package/dist/{dev/en-RLIAOBCI.json → prod/en-TDNWCAOT.json} +9 -5
  223. package/dist/prod/index.css +1 -1
  224. package/dist/prod/index.js +42 -42
  225. package/dist/utils/bbox.d.ts +2 -2
  226. package/dist/utils/export.d.ts +3 -3
  227. package/dist/utils/export.js +3 -13
  228. package/dist/utils/index.d.ts +2 -2
  229. package/dist/utils/index.js +2 -2
  230. package/dist/utils/withinBounds.d.ts +1 -1
  231. package/dist/utils/withinBounds.js +5 -2
  232. package/package.json +4 -4
  233. package/dist/browser/dev/excalidraw-assets-dev/chunk-2W5GQUR4.js.map +0 -7
  234. package/dist/browser/dev/excalidraw-assets-dev/chunk-KGZXLFLR.js +0 -53497
  235. package/dist/browser/dev/excalidraw-assets-dev/chunk-KGZXLFLR.js.map +0 -7
  236. package/dist/browser/dev/excalidraw-assets-dev/image-3MFRCKYM.css +0 -5797
  237. package/dist/browser/dev/excalidraw-assets-dev/image-3MFRCKYM.css.map +0 -7
  238. package/dist/browser/prod/excalidraw-assets/chunk-4YN2HN3S.js +0 -257
  239. package/dist/browser/prod/excalidraw-assets/chunk-OWLL6VOG.js +0 -11
  240. package/dist/browser/prod/excalidraw-assets/en-ERQOR3OC.js +0 -1
  241. package/dist/browser/prod/excalidraw-assets/image-LTLHTTSE.js +0 -1
  242. package/dist/browser/prod/excalidraw-assets/image-QBL334OA.css +0 -1
  243. package/dist/excalidraw/components/LaserTool/LaserPathManager.d.ts +0 -28
  244. package/dist/excalidraw/components/LaserTool/LaserPathManager.js +0 -225
  245. package/dist/excalidraw/components/LaserTool/LaserTool.d.ts +0 -8
  246. package/dist/excalidraw/components/LaserTool/LaserTool.js +0 -15
  247. package/dist/excalidraw/renderer/renderScene.d.ts +0 -25
  248. package/dist/excalidraw/vite.config.d.mts +0 -2
  249. package/dist/excalidraw/vite.config.mjs +0 -13
  250. /package/dist/browser/dev/excalidraw-assets-dev/{en-OC6JWP3X.js.map → en-IOBA4CS2.js.map} +0 -0
  251. /package/dist/browser/dev/excalidraw-assets-dev/{image-5TVMINCA.js.map → image-VKDAL6BQ.js.map} +0 -0
@@ -22,7 +22,7 @@ export declare const actionRemoveAllElementsFromFrame: {
22
22
  category: "history";
23
23
  };
24
24
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
25
- elements: ExcalidrawElement[];
25
+ elements: readonly ExcalidrawElement[];
26
26
  appState: {
27
27
  selectedElementIds: {
28
28
  [x: string]: true;
@@ -37,7 +37,7 @@ export declare const actionRemoveAllElementsFromFrame: {
37
37
  errorMessage: import("react").ReactNode;
38
38
  activeEmbeddable: {
39
39
  element: import("../element/types").NonDeletedExcalidrawElement;
40
- state: "active" | "hover";
40
+ state: "hover" | "active";
41
41
  } | null;
42
42
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
43
43
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -85,7 +85,7 @@ export declare const actionRemoveAllElementsFromFrame: {
85
85
  scrollY: number;
86
86
  cursorButton: "up" | "down";
87
87
  scrolledOutside: boolean;
88
- name: string;
88
+ name: string | null;
89
89
  isResizing: boolean;
90
90
  isRotating: boolean;
91
91
  zoom: Readonly<{
@@ -98,14 +98,14 @@ export declare const actionRemoveAllElementsFromFrame: {
98
98
  tab?: string | undefined;
99
99
  } | null;
100
100
  openDialog: {
101
- name: "help" | "imageExport" | "jsonExport";
101
+ name: "imageExport" | "help" | "jsonExport";
102
102
  } | {
103
103
  name: "settings";
104
104
  source: "settings" | "tool" | "generation";
105
105
  tab: "text-to-diagram" | "diagram-to-code";
106
106
  } | {
107
107
  name: "ttd";
108
- tab: "mermaid" | "text-to-diagram";
108
+ tab: "text-to-diagram" | "mermaid";
109
109
  } | null;
110
110
  defaultSidebarDockedPreference: boolean;
111
111
  lastPointerDownWith: import("../element/types").PointerType;
@@ -159,7 +159,7 @@ export declare const actionRemoveAllElementsFromFrame: {
159
159
  data: import("../charts").Spreadsheet;
160
160
  };
161
161
  pendingImageElementId: string | null;
162
- showHyperlinkPopup: false | "editor" | "info";
162
+ showHyperlinkPopup: false | "info" | "editor";
163
163
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
164
164
  snapLines: readonly import("../snapping").SnapLine[];
165
165
  originSnapOffset: {
@@ -206,7 +206,7 @@ export declare const actionupdateFrameRendering: {
206
206
  errorMessage: import("react").ReactNode;
207
207
  activeEmbeddable: {
208
208
  element: import("../element/types").NonDeletedExcalidrawElement;
209
- state: "active" | "hover";
209
+ state: "hover" | "active";
210
210
  } | null;
211
211
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
212
212
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -248,7 +248,7 @@ export declare const actionupdateFrameRendering: {
248
248
  scrollY: number;
249
249
  cursorButton: "up" | "down";
250
250
  scrolledOutside: boolean;
251
- name: string;
251
+ name: string | null;
252
252
  isResizing: boolean;
253
253
  isRotating: boolean;
254
254
  zoom: Readonly<{
@@ -261,14 +261,14 @@ export declare const actionupdateFrameRendering: {
261
261
  tab?: string | undefined;
262
262
  } | null;
263
263
  openDialog: {
264
- name: "help" | "imageExport" | "jsonExport";
264
+ name: "imageExport" | "help" | "jsonExport";
265
265
  } | {
266
266
  name: "settings";
267
267
  source: "settings" | "tool" | "generation";
268
268
  tab: "text-to-diagram" | "diagram-to-code";
269
269
  } | {
270
270
  name: "ttd";
271
- tab: "mermaid" | "text-to-diagram";
271
+ tab: "text-to-diagram" | "mermaid";
272
272
  } | null;
273
273
  defaultSidebarDockedPreference: boolean;
274
274
  lastPointerDownWith: import("../element/types").PointerType;
@@ -325,7 +325,7 @@ export declare const actionupdateFrameRendering: {
325
325
  data: import("../charts").Spreadsheet;
326
326
  };
327
327
  pendingImageElementId: string | null;
328
- showHyperlinkPopup: false | "editor" | "info";
328
+ showHyperlinkPopup: false | "info" | "editor";
329
329
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
330
330
  snapLines: readonly import("../snapping").SnapLine[];
331
331
  originSnapOffset: {
@@ -365,7 +365,7 @@ export declare const actionSetFrameAsActiveTool: {
365
365
  errorMessage: import("react").ReactNode;
366
366
  activeEmbeddable: {
367
367
  element: import("../element/types").NonDeletedExcalidrawElement;
368
- state: "active" | "hover";
368
+ state: "hover" | "active";
369
369
  } | null;
370
370
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
371
371
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -409,7 +409,7 @@ export declare const actionSetFrameAsActiveTool: {
409
409
  scrollY: number;
410
410
  cursorButton: "up" | "down";
411
411
  scrolledOutside: boolean;
412
- name: string;
412
+ name: string | null;
413
413
  isResizing: boolean;
414
414
  isRotating: boolean;
415
415
  zoom: Readonly<{
@@ -422,14 +422,14 @@ export declare const actionSetFrameAsActiveTool: {
422
422
  tab?: string | undefined;
423
423
  } | null;
424
424
  openDialog: {
425
- name: "help" | "imageExport" | "jsonExport";
425
+ name: "imageExport" | "help" | "jsonExport";
426
426
  } | {
427
427
  name: "settings";
428
428
  source: "settings" | "tool" | "generation";
429
429
  tab: "text-to-diagram" | "diagram-to-code";
430
430
  } | {
431
431
  name: "ttd";
432
- tab: "mermaid" | "text-to-diagram";
432
+ tab: "text-to-diagram" | "mermaid";
433
433
  } | null;
434
434
  defaultSidebarDockedPreference: boolean;
435
435
  lastPointerDownWith: import("../element/types").PointerType;
@@ -486,7 +486,7 @@ export declare const actionSetFrameAsActiveTool: {
486
486
  data: import("../charts").Spreadsheet;
487
487
  };
488
488
  pendingImageElementId: string | null;
489
- showHyperlinkPopup: false | "editor" | "info";
489
+ showHyperlinkPopup: false | "info" | "editor";
490
490
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
491
491
  snapLines: readonly import("../snapping").SnapLine[];
492
492
  originSnapOffset: {
@@ -45,7 +45,7 @@ export const actionRemoveAllElementsFromFrame = register({
45
45
  const selectedElement = app.scene.getSelectedElements(appState).at(0) || null;
46
46
  if (isFrameLikeElement(selectedElement)) {
47
47
  return {
48
- elements: removeAllElementsFromFrame(elements, selectedElement, appState),
48
+ elements: removeAllElementsFromFrame(elements, selectedElement),
49
49
  appState: {
50
50
  ...appState,
51
51
  selectedElementIds: {
@@ -29,7 +29,7 @@ export declare const actionGroup: {
29
29
  errorMessage: import("react").ReactNode;
30
30
  activeEmbeddable: {
31
31
  element: import("../element/types").NonDeletedExcalidrawElement;
32
- state: "active" | "hover";
32
+ state: "hover" | "active";
33
33
  } | null;
34
34
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
35
35
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -77,7 +77,7 @@ export declare const actionGroup: {
77
77
  scrollY: number;
78
78
  cursorButton: "up" | "down";
79
79
  scrolledOutside: boolean;
80
- name: string;
80
+ name: string | null;
81
81
  isResizing: boolean;
82
82
  isRotating: boolean;
83
83
  zoom: Readonly<{
@@ -90,14 +90,14 @@ export declare const actionGroup: {
90
90
  tab?: string | undefined;
91
91
  } | null;
92
92
  openDialog: {
93
- name: "help" | "imageExport" | "jsonExport";
93
+ name: "imageExport" | "help" | "jsonExport";
94
94
  } | {
95
95
  name: "settings";
96
96
  source: "settings" | "tool" | "generation";
97
97
  tab: "text-to-diagram" | "diagram-to-code";
98
98
  } | {
99
99
  name: "ttd";
100
- tab: "mermaid" | "text-to-diagram";
100
+ tab: "text-to-diagram" | "mermaid";
101
101
  } | null;
102
102
  defaultSidebarDockedPreference: boolean;
103
103
  lastPointerDownWith: import("../element/types").PointerType;
@@ -147,7 +147,7 @@ export declare const actionGroup: {
147
147
  data: import("../charts").Spreadsheet;
148
148
  };
149
149
  pendingImageElementId: string | null;
150
- showHyperlinkPopup: false | "editor" | "info";
150
+ showHyperlinkPopup: false | "info" | "editor";
151
151
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
152
152
  snapLines: readonly import("../snapping").SnapLine[];
153
153
  originSnapOffset: {
@@ -196,7 +196,7 @@ export declare const actionUngroup: {
196
196
  errorMessage: import("react").ReactNode;
197
197
  activeEmbeddable: {
198
198
  element: import("../element/types").NonDeletedExcalidrawElement;
199
- state: "active" | "hover";
199
+ state: "hover" | "active";
200
200
  } | null;
201
201
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
202
202
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -244,7 +244,7 @@ export declare const actionUngroup: {
244
244
  scrollY: number;
245
245
  cursorButton: "up" | "down";
246
246
  scrolledOutside: boolean;
247
- name: string;
247
+ name: string | null;
248
248
  isResizing: boolean;
249
249
  isRotating: boolean;
250
250
  zoom: Readonly<{
@@ -257,14 +257,14 @@ export declare const actionUngroup: {
257
257
  tab?: string | undefined;
258
258
  } | null;
259
259
  openDialog: {
260
- name: "help" | "imageExport" | "jsonExport";
260
+ name: "imageExport" | "help" | "jsonExport";
261
261
  } | {
262
262
  name: "settings";
263
263
  source: "settings" | "tool" | "generation";
264
264
  tab: "text-to-diagram" | "diagram-to-code";
265
265
  } | {
266
266
  name: "ttd";
267
- tab: "mermaid" | "text-to-diagram";
267
+ tab: "text-to-diagram" | "mermaid";
268
268
  } | null;
269
269
  defaultSidebarDockedPreference: boolean;
270
270
  lastPointerDownWith: import("../element/types").PointerType;
@@ -314,7 +314,7 @@ export declare const actionUngroup: {
314
314
  data: import("../charts").Spreadsheet;
315
315
  };
316
316
  pendingImageElementId: string | null;
317
- showHyperlinkPopup: false | "editor" | "info";
317
+ showHyperlinkPopup: false | "info" | "editor";
318
318
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
319
319
  snapLines: readonly import("../snapping").SnapLine[];
320
320
  originSnapOffset: {
@@ -66,7 +66,7 @@ export const actionGroup = register({
66
66
  if (groupingElementsFromDifferentFrames) {
67
67
  const frameElementsMap = groupByFrameLikes(selectedElements);
68
68
  frameElementsMap.forEach((elementsInFrame, frameId) => {
69
- nextElements = removeElementsFromFrame(nextElements, elementsInFrame, appState);
69
+ removeElementsFromFrame(elementsInFrame, app.scene.getNonDeletedElementsMap());
70
70
  });
71
71
  }
72
72
  const newGroupId = randomId();
@@ -112,6 +112,7 @@ export const actionUngroup = register({
112
112
  trackEvent: { category: "element" },
113
113
  perform: (elements, appState, _, app) => {
114
114
  const groupIds = getSelectedGroupIds(appState);
115
+ const elementsMap = arrayToMap(elements);
115
116
  if (groupIds.length === 0) {
116
117
  return { appState, elements, commitToHistory: false };
117
118
  }
@@ -137,7 +138,7 @@ export const actionUngroup = register({
137
138
  const targetFrames = getFrameLikeElements(elements).filter((frame) => selectedElementFrameIds.has(frame.id));
138
139
  targetFrames.forEach((frame) => {
139
140
  if (frame) {
140
- nextElements = replaceAllElementsInFrame(nextElements, getElementsInResizingFrame(nextElements, frame, appState), frame, appState);
141
+ nextElements = replaceAllElementsInFrame(nextElements, getElementsInResizingFrame(nextElements, frame, appState, elementsMap), frame, app);
141
142
  }
142
143
  });
143
144
  // remove binded text elements from selection
@@ -20,7 +20,7 @@ export declare const actionToggleLinearEditor: {
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;
@@ -67,7 +67,7 @@ export declare const actionToggleLinearEditor: {
67
67
  scrollY: number;
68
68
  cursorButton: "up" | "down";
69
69
  scrolledOutside: boolean;
70
- name: string;
70
+ name: string | null;
71
71
  isResizing: boolean;
72
72
  isRotating: boolean;
73
73
  zoom: Readonly<{
@@ -80,14 +80,14 @@ export declare const actionToggleLinearEditor: {
80
80
  tab?: string | undefined;
81
81
  } | null;
82
82
  openDialog: {
83
- name: "help" | "imageExport" | "jsonExport";
83
+ name: "imageExport" | "help" | "jsonExport";
84
84
  } | {
85
85
  name: "settings";
86
86
  source: "settings" | "tool" | "generation";
87
87
  tab: "text-to-diagram" | "diagram-to-code";
88
88
  } | {
89
89
  name: "ttd";
90
- tab: "mermaid" | "text-to-diagram";
90
+ tab: "text-to-diagram" | "mermaid";
91
91
  } | null;
92
92
  defaultSidebarDockedPreference: boolean;
93
93
  lastPointerDownWith: import("../element/types").PointerType;
@@ -144,7 +144,7 @@ export declare const actionToggleLinearEditor: {
144
144
  data: import("../charts").Spreadsheet;
145
145
  };
146
146
  pendingImageElementId: string | null;
147
- showHyperlinkPopup: false | "editor" | "info";
147
+ showHyperlinkPopup: false | "info" | "editor";
148
148
  selectedLinearElement: LinearElementEditor | null;
149
149
  snapLines: readonly import("../snapping").SnapLine[];
150
150
  originSnapOffset: {
@@ -20,7 +20,7 @@ export const actionToggleLinearEditor = register({
20
20
  })[0];
21
21
  const editingLinearElement = appState.editingLinearElement?.elementId === selectedElement.id
22
22
  ? null
23
- : new LinearElementEditor(selectedElement, app.scene);
23
+ : new LinearElementEditor(selectedElement);
24
24
  return {
25
25
  appState: {
26
26
  ...appState,
@@ -1,23 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { AppState, ExcalidrawProps, UIAppState } from "../types";
3
- import { NonDeletedExcalidrawElement } from "./types";
4
- import { Bounds } from "./bounds";
5
- import "./Hyperlink.scss";
6
- export declare const EXTERNAL_LINK_IMG: HTMLImageElement;
7
- export declare const Hyperlink: ({ element, setAppState, onLinkOpen, setToast, }: {
8
- element: NonDeletedExcalidrawElement;
9
- setAppState: React.Component<any, AppState>["setState"];
10
- onLinkOpen: ExcalidrawProps["onLinkOpen"];
11
- setToast: (toast: {
12
- message: string;
13
- closable?: boolean;
14
- duration?: number;
15
- } | null) => void;
16
- }) => JSX.Element | null;
17
2
  export declare const actionLink: {
18
3
  name: "hyperlink";
19
- perform: (elements: readonly import("./types").ExcalidrawElement[], appState: Readonly<AppState>) => false | {
20
- elements: readonly import("./types").ExcalidrawElement[];
4
+ perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => false | {
5
+ elements: readonly import("../element/types").ExcalidrawElement[];
21
6
  appState: {
22
7
  showHyperlinkPopup: "editor";
23
8
  openMenu: null;
@@ -30,17 +15,17 @@ export declare const actionLink: {
30
15
  isLoading: boolean;
31
16
  errorMessage: import("react").ReactNode;
32
17
  activeEmbeddable: {
33
- element: NonDeletedExcalidrawElement;
34
- state: "active" | "hover";
18
+ element: import("../element/types").NonDeletedExcalidrawElement;
19
+ state: "hover" | "active";
35
20
  } | null;
36
- draggingElement: NonDeletedExcalidrawElement | null;
37
- resizingElement: NonDeletedExcalidrawElement | null;
38
- multiElement: import("./types").NonDeleted<import("./types").ExcalidrawLinearElement> | null;
39
- selectionElement: NonDeletedExcalidrawElement | null;
21
+ draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
22
+ resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
23
+ multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
24
+ selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
40
25
  isBindingEnabled: boolean;
41
- startBoundElement: import("./types").NonDeleted<import("./types").ExcalidrawBindableElement> | null;
42
- suggestedBindings: import("./binding").SuggestedBinding[];
43
- frameToHighlight: import("./types").NonDeleted<import("./types").ExcalidrawFrameLikeElement> | null;
26
+ startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
27
+ suggestedBindings: import("../element/binding").SuggestedBinding[];
28
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameLikeElement> | null;
44
29
  frameRendering: {
45
30
  enabled: boolean;
46
31
  name: boolean;
@@ -48,9 +33,9 @@ export declare const actionLink: {
48
33
  clip: boolean;
49
34
  };
50
35
  editingFrame: string | null;
51
- elementsToHighlight: import("./types").NonDeleted<import("./types").ExcalidrawElement>[] | null;
52
- editingElement: NonDeletedExcalidrawElement | null;
53
- editingLinearElement: import("./linearElementEditor").LinearElementEditor | null;
36
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
37
+ editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
38
+ editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
54
39
  activeTool: {
55
40
  lastActiveTool: import("../types").ActiveTool | null;
56
41
  locked: boolean;
@@ -63,23 +48,23 @@ export declare const actionLink: {
63
48
  exportScale: number;
64
49
  currentItemStrokeColor: string;
65
50
  currentItemBackgroundColor: string;
66
- currentItemFillStyle: import("./types").FillStyle;
51
+ currentItemFillStyle: import("../element/types").FillStyle;
67
52
  currentItemStrokeWidth: number;
68
- currentItemStrokeStyle: import("./types").StrokeStyle;
53
+ currentItemStrokeStyle: import("../element/types").StrokeStyle;
69
54
  currentItemRoughness: number;
70
55
  currentItemOpacity: number;
71
56
  currentItemFontFamily: number;
72
57
  currentItemFontSize: number;
73
58
  currentItemTextAlign: string;
74
- currentItemStartArrowhead: import("./types").Arrowhead | null;
75
- currentItemEndArrowhead: import("./types").Arrowhead | null;
76
- currentItemRoundness: import("./types").StrokeRoundness;
59
+ currentItemStartArrowhead: import("../element/types").Arrowhead | null;
60
+ currentItemEndArrowhead: import("../element/types").Arrowhead | null;
61
+ currentItemRoundness: import("../element/types").StrokeRoundness;
77
62
  viewBackgroundColor: string;
78
63
  scrollX: number;
79
64
  scrollY: number;
80
65
  cursorButton: "up" | "down";
81
66
  scrolledOutside: boolean;
82
- name: string;
67
+ name: string | null;
83
68
  isResizing: boolean;
84
69
  isRotating: boolean;
85
70
  zoom: Readonly<{
@@ -91,17 +76,17 @@ export declare const actionLink: {
91
76
  tab?: string | undefined;
92
77
  } | null;
93
78
  openDialog: {
94
- name: "help" | "imageExport" | "jsonExport";
79
+ name: "imageExport" | "help" | "jsonExport";
95
80
  } | {
96
81
  name: "settings";
97
82
  source: "settings" | "tool" | "generation";
98
83
  tab: "text-to-diagram" | "diagram-to-code";
99
84
  } | {
100
85
  name: "ttd";
101
- tab: "mermaid" | "text-to-diagram";
86
+ tab: "text-to-diagram" | "mermaid";
102
87
  } | null;
103
88
  defaultSidebarDockedPreference: boolean;
104
- lastPointerDownWith: import("./types").PointerType;
89
+ lastPointerDownWith: import("../element/types").PointerType;
105
90
  selectedElementIds: Readonly<{
106
91
  [id: string]: true;
107
92
  }>;
@@ -116,7 +101,7 @@ export declare const actionLink: {
116
101
  duration?: number | undefined;
117
102
  } | null;
118
103
  zenModeEnabled: boolean;
119
- theme: import("./types").Theme;
104
+ theme: import("../element/types").Theme;
120
105
  gridSize: number | null;
121
106
  viewModeEnabled: boolean;
122
107
  selectedGroupIds: {
@@ -146,7 +131,7 @@ export declare const actionLink: {
146
131
  isCurrentUser?: boolean | undefined;
147
132
  }>>;
148
133
  showStats: boolean;
149
- currentChartType: import("./types").ChartType;
134
+ currentChartType: import("../element/types").ChartType;
150
135
  pasteDialog: {
151
136
  shown: false;
152
137
  data: null;
@@ -155,7 +140,7 @@ export declare const actionLink: {
155
140
  data: import("../charts").Spreadsheet;
156
141
  };
157
142
  pendingImageElementId: string | null;
158
- selectedLinearElement: import("./linearElementEditor").LinearElementEditor | null;
143
+ selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
159
144
  snapLines: readonly import("../snapping").SnapLine[];
160
145
  originSnapOffset: {
161
146
  x: number;
@@ -172,16 +157,9 @@ export declare const actionLink: {
172
157
  action: string;
173
158
  };
174
159
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
175
- contextItemLabel: (elements: readonly import("./types").ExcalidrawElement[], appState: Readonly<AppState>) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
176
- predicate: (elements: readonly import("./types").ExcalidrawElement[], appState: AppState) => boolean;
177
- PanelComponent: ({ elements, appState, updateData }: import("../actions/types").PanelComponentProps) => JSX.Element;
160
+ contextItemLabel: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
161
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
162
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
178
163
  } & {
179
164
  keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
180
165
  };
181
- export declare const getContextMenuLabel: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
182
- export declare const getLinkHandleFromCoords: ([x1, y1, x2, y2]: Bounds, angle: number, appState: Pick<UIAppState, "zoom">) => Bounds;
183
- export declare const isPointHittingLinkIcon: (element: NonDeletedExcalidrawElement, appState: AppState, [x, y]: readonly [number, number]) => boolean;
184
- export declare const isPointHittingLink: (element: NonDeletedExcalidrawElement, appState: AppState, [x, y]: readonly [number, number], isMobile: boolean) => boolean;
185
- export declare const showHyperlinkTooltip: (element: NonDeletedExcalidrawElement, appState: AppState) => void;
186
- export declare const hideHyperlinkToolip: () => void;
187
- export declare const shouldHideLinkPopup: (element: NonDeletedExcalidrawElement, appState: AppState, [clientX, clientY]: readonly [number, number]) => Boolean;
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getContextMenuLabel } from "../components/hyperlink/Hyperlink";
3
+ import { LinkIcon } from "../components/icons";
4
+ import { ToolButton } from "../components/ToolButton";
5
+ import { isEmbeddableElement } from "../element/typeChecks";
6
+ import { t } from "../i18n";
7
+ import { KEYS } from "../keys";
8
+ import { getSelectedElements } from "../scene";
9
+ import { getShortcutKey } from "../utils";
10
+ import { register } from "./register";
11
+ export const actionLink = register({
12
+ name: "hyperlink",
13
+ perform: (elements, appState) => {
14
+ if (appState.showHyperlinkPopup === "editor") {
15
+ return false;
16
+ }
17
+ return {
18
+ elements,
19
+ appState: {
20
+ ...appState,
21
+ showHyperlinkPopup: "editor",
22
+ openMenu: null,
23
+ },
24
+ commitToHistory: true,
25
+ };
26
+ },
27
+ trackEvent: { category: "hyperlink", action: "click" },
28
+ keyTest: (event) => event[KEYS.CTRL_OR_CMD] && event.key === KEYS.K,
29
+ contextItemLabel: (elements, appState) => getContextMenuLabel(elements, appState),
30
+ predicate: (elements, appState) => {
31
+ const selectedElements = getSelectedElements(elements, appState);
32
+ return selectedElements.length === 1;
33
+ },
34
+ PanelComponent: ({ elements, appState, updateData }) => {
35
+ const selectedElements = getSelectedElements(elements, appState);
36
+ return (_jsx(ToolButton, { type: "button", icon: LinkIcon, "aria-label": t(getContextMenuLabel(elements, appState)), title: `${isEmbeddableElement(elements[0])
37
+ ? t("labels.link.labelEmbed")
38
+ : t("labels.link.label")} - ${getShortcutKey("CtrlOrCmd+K")}`, onClick: () => updateData(null), selected: selectedElements.length === 1 && !!selectedElements[0].link }));
39
+ },
40
+ });
@@ -17,7 +17,7 @@ export declare const actionToggleCanvasMenu: {
17
17
  errorMessage: import("react").ReactNode;
18
18
  activeEmbeddable: {
19
19
  element: import("../element/types").NonDeletedExcalidrawElement;
20
- state: "active" | "hover";
20
+ state: "hover" | "active";
21
21
  } | null;
22
22
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
23
23
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -65,7 +65,7 @@ export declare const actionToggleCanvasMenu: {
65
65
  scrollY: number;
66
66
  cursorButton: "up" | "down";
67
67
  scrolledOutside: boolean;
68
- name: string;
68
+ name: string | null;
69
69
  isResizing: boolean;
70
70
  isRotating: boolean;
71
71
  zoom: Readonly<{
@@ -77,14 +77,14 @@ export declare const actionToggleCanvasMenu: {
77
77
  tab?: string | undefined;
78
78
  } | null;
79
79
  openDialog: {
80
- name: "help" | "imageExport" | "jsonExport";
80
+ name: "imageExport" | "help" | "jsonExport";
81
81
  } | {
82
82
  name: "settings";
83
83
  source: "settings" | "tool" | "generation";
84
84
  tab: "text-to-diagram" | "diagram-to-code";
85
85
  } | {
86
86
  name: "ttd";
87
- tab: "mermaid" | "text-to-diagram";
87
+ tab: "text-to-diagram" | "mermaid";
88
88
  } | null;
89
89
  defaultSidebarDockedPreference: boolean;
90
90
  lastPointerDownWith: import("../element/types").PointerType;
@@ -141,7 +141,7 @@ export declare const actionToggleCanvasMenu: {
141
141
  data: import("../charts").Spreadsheet;
142
142
  };
143
143
  pendingImageElementId: string | null;
144
- showHyperlinkPopup: false | "editor" | "info";
144
+ showHyperlinkPopup: false | "info" | "editor";
145
145
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
146
146
  snapLines: readonly import("../snapping").SnapLine[];
147
147
  originSnapOffset: {
@@ -176,7 +176,7 @@ export declare const actionToggleEditMenu: {
176
176
  errorMessage: import("react").ReactNode;
177
177
  activeEmbeddable: {
178
178
  element: import("../element/types").NonDeletedExcalidrawElement;
179
- state: "active" | "hover";
179
+ state: "hover" | "active";
180
180
  } | null;
181
181
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
182
182
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -224,7 +224,7 @@ export declare const actionToggleEditMenu: {
224
224
  scrollY: number;
225
225
  cursorButton: "up" | "down";
226
226
  scrolledOutside: boolean;
227
- name: string;
227
+ name: string | null;
228
228
  isResizing: boolean;
229
229
  isRotating: boolean;
230
230
  zoom: Readonly<{
@@ -236,14 +236,14 @@ export declare const actionToggleEditMenu: {
236
236
  tab?: string | undefined;
237
237
  } | null;
238
238
  openDialog: {
239
- name: "help" | "imageExport" | "jsonExport";
239
+ name: "imageExport" | "help" | "jsonExport";
240
240
  } | {
241
241
  name: "settings";
242
242
  source: "settings" | "tool" | "generation";
243
243
  tab: "text-to-diagram" | "diagram-to-code";
244
244
  } | {
245
245
  name: "ttd";
246
- tab: "mermaid" | "text-to-diagram";
246
+ tab: "text-to-diagram" | "mermaid";
247
247
  } | null;
248
248
  defaultSidebarDockedPreference: boolean;
249
249
  lastPointerDownWith: import("../element/types").PointerType;
@@ -300,7 +300,7 @@ export declare const actionToggleEditMenu: {
300
300
  data: import("../charts").Spreadsheet;
301
301
  };
302
302
  pendingImageElementId: string | null;
303
- showHyperlinkPopup: false | "editor" | "info";
303
+ showHyperlinkPopup: false | "info" | "editor";
304
304
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
305
305
  snapLines: readonly import("../snapping").SnapLine[];
306
306
  originSnapOffset: {
@@ -339,7 +339,7 @@ export declare const actionShortcuts: {
339
339
  errorMessage: import("react").ReactNode;
340
340
  activeEmbeddable: {
341
341
  element: import("../element/types").NonDeletedExcalidrawElement;
342
- state: "active" | "hover";
342
+ state: "hover" | "active";
343
343
  } | null;
344
344
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
345
345
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -387,7 +387,7 @@ export declare const actionShortcuts: {
387
387
  scrollY: number;
388
388
  cursorButton: "up" | "down";
389
389
  scrolledOutside: boolean;
390
- name: string;
390
+ name: string | null;
391
391
  isResizing: boolean;
392
392
  isRotating: boolean;
393
393
  zoom: Readonly<{
@@ -454,7 +454,7 @@ export declare const actionShortcuts: {
454
454
  data: import("../charts").Spreadsheet;
455
455
  };
456
456
  pendingImageElementId: string | null;
457
- showHyperlinkPopup: false | "editor" | "info";
457
+ showHyperlinkPopup: false | "info" | "editor";
458
458
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
459
459
  snapLines: readonly import("../snapping").SnapLine[];
460
460
  originSnapOffset: {