@dwelle/excalidraw 0.4.0-e1bdbb6 → 0.4.0-e587816

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 (240) hide show
  1. package/CHANGELOG.md +714 -0
  2. package/README.md +18 -1422
  3. package/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.js → vendor-d415b28e9024dee4bb1b.js} +2 -2
  4. package/dist/excalidraw-assets-dev/{vendor-e6df8519da951026ff69.js → vendor-a14cd58fa2db417e42b2.js} +6 -6
  5. package/dist/excalidraw.development.js +3257 -1444
  6. package/dist/excalidraw.production.min.js +1 -1
  7. package/dist/excalidraw.production.min.js.LICENSE.txt +20 -0
  8. package/main.js +1 -8
  9. package/package.json +9 -4
  10. package/types/actions/actionAddToLibrary.d.ts +124 -64
  11. package/types/actions/actionAlign.d.ts +33 -40
  12. package/types/actions/actionBoundText.d.ts +182 -25
  13. package/types/actions/actionCanvas.d.ts +754 -220
  14. package/types/actions/actionClipboard.d.ts +236 -115
  15. package/types/actions/actionDeleteSelected.d.ts +133 -72
  16. package/types/actions/actionDistribute.d.ts +11 -16
  17. package/types/actions/actionDuplicateSelection.d.ts +4 -7
  18. package/types/actions/actionElementLock.d.ts +271 -0
  19. package/types/actions/actionExport.d.ts +440 -277
  20. package/types/actions/actionFinalize.d.ts +85 -51
  21. package/types/actions/actionFlip.d.ts +8 -11
  22. package/types/actions/actionFrame.d.ts +423 -0
  23. package/types/actions/actionGroup.d.ts +252 -19
  24. package/types/actions/actionHistory.d.ts +1 -1
  25. package/types/actions/actionLinearEditor.d.ts +44 -24
  26. package/types/actions/actionMenu.d.ts +132 -79
  27. package/types/actions/actionNavigate.d.ts +2 -3
  28. package/types/actions/actionProperties.d.ts +569 -334
  29. package/types/actions/actionSelectAll.d.ts +123 -4
  30. package/types/actions/actionStyles.d.ts +46 -27
  31. package/types/actions/actionToggleGridMode.d.ts +46 -25
  32. package/types/actions/{actionToggleLock.d.ts → actionToggleObjectsSnapMode.d.ts} +56 -35
  33. package/types/actions/actionToggleStats.d.ts +45 -25
  34. package/types/actions/actionToggleViewMode.d.ts +46 -25
  35. package/types/actions/actionToggleZenMode.d.ts +46 -25
  36. package/types/actions/actionZindex.d.ts +16 -24
  37. package/types/actions/index.d.ts +2 -1
  38. package/types/actions/manager.d.ts +3 -2
  39. package/types/actions/shortcuts.d.ts +2 -1
  40. package/types/actions/types.d.ts +16 -13
  41. package/types/appState.d.ts +27 -28
  42. package/types/charts.d.ts +2 -2
  43. package/types/clients.d.ts +5 -6
  44. package/types/clipboard.d.ts +9 -3
  45. package/types/colors.d.ts +60 -5
  46. package/types/components/Actions.d.ts +7 -12
  47. package/types/components/ActiveConfirmDialog.d.ts +4 -0
  48. package/types/components/App.d.ts +102 -86
  49. package/types/components/Avatar.d.ts +1 -2
  50. package/types/components/BraveMeasureTextError.d.ts +2 -0
  51. package/types/components/Button.d.ts +16 -0
  52. package/types/components/ButtonIconSelect.d.ts +11 -3
  53. package/types/components/Card.d.ts +6 -0
  54. package/types/components/ColorPicker/ColorInput.d.ts +9 -0
  55. package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
  56. package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
  57. package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
  58. package/types/components/ColorPicker/Picker.d.ts +18 -0
  59. package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
  60. package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
  61. package/types/components/ColorPicker/ShadeList.d.ts +8 -0
  62. package/types/components/ColorPicker/TopPicks.d.ts +9 -0
  63. package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  64. package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  65. package/types/components/ContextMenu.d.ts +9 -22
  66. package/types/components/DefaultSidebar.d.ts +29 -0
  67. package/types/components/Dialog.d.ts +3 -4
  68. package/types/components/ErrorDialog.d.ts +3 -2
  69. package/types/components/ExcalidrawLogo.d.ts +15 -0
  70. package/types/components/EyeDropper.d.ts +28 -0
  71. package/types/components/FilledButton.d.ts +17 -0
  72. package/types/components/FixedSideContainer.d.ts +1 -1
  73. package/types/components/HandButton.d.ts +10 -0
  74. package/types/components/HelpButton.d.ts +1 -2
  75. package/types/components/HintViewer.d.ts +4 -5
  76. package/types/components/HomeButton.d.ts +1 -1
  77. package/types/components/ImageExportDialog.d.ts +8 -13
  78. package/types/components/Island.d.ts +1 -1
  79. package/types/components/JSONExportDialog.d.ts +7 -5
  80. package/types/components/LaserTool/LaserPathManager.d.ts +28 -0
  81. package/types/components/LaserTool/LaserPointerButton.d.ts +10 -0
  82. package/types/components/LaserTool/LaserTool.d.ts +7 -0
  83. package/types/components/LayerUI.d.ts +11 -19
  84. package/types/components/LibraryMenu.d.ts +13 -14
  85. package/types/components/LibraryMenuBrowseButton.d.ts +2 -2
  86. package/types/components/LibraryMenuControlButtons.d.ts +9 -0
  87. package/types/components/LibraryMenuHeaderContent.d.ts +10 -5
  88. package/types/components/LibraryMenuItems.d.ts +6 -7
  89. package/types/components/LibraryMenuSection.d.ts +22 -0
  90. package/types/components/LibraryUnit.d.ts +6 -3
  91. package/types/components/LoadingMessage.d.ts +0 -1
  92. package/types/components/LockButton.d.ts +1 -2
  93. package/types/components/MobileMenu.d.ts +9 -15
  94. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  95. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  96. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  97. package/types/components/PasteChartDialog.d.ts +4 -5
  98. package/types/components/PenModeButton.d.ts +1 -1
  99. package/types/components/Popover.d.ts +1 -1
  100. package/types/components/ProjectName.d.ts +2 -1
  101. package/types/components/PublishLibrary.d.ts +2 -2
  102. package/types/components/RadioGroup.d.ts +12 -0
  103. package/types/components/Section.d.ts +1 -1
  104. package/types/components/Sidebar/Sidebar.d.ts +66 -63
  105. package/types/components/Sidebar/SidebarHeader.d.ts +6 -19
  106. package/types/components/Sidebar/SidebarTab.d.ts +8 -0
  107. package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  108. package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  109. package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
  110. package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
  111. package/types/components/Sidebar/common.d.ts +24 -7
  112. package/types/components/Spinner.d.ts +2 -1
  113. package/types/components/Stack.d.ts +4 -3
  114. package/types/components/Stats.d.ts +3 -3
  115. package/types/components/Switch.d.ts +9 -0
  116. package/types/components/ToolButton.d.ts +6 -5
  117. package/types/components/Tooltip.d.ts +1 -1
  118. package/types/components/Trans.d.ts +9 -0
  119. package/types/components/UserList.d.ts +0 -2
  120. package/types/components/canvases/InteractiveCanvas.d.ts +27 -0
  121. package/types/components/canvases/StaticCanvas.d.ts +18 -0
  122. package/types/components/canvases/index.d.ts +3 -0
  123. package/types/components/dropdownMenu/DropdownMenu.d.ts +70 -0
  124. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
  125. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  126. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +13 -0
  127. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  128. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -0
  129. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +14 -0
  130. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  131. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  132. package/types/components/dropdownMenu/common.d.ts +6 -0
  133. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  134. package/types/components/footer/Footer.d.ts +12 -0
  135. package/types/components/footer/FooterCenter.d.ts +8 -0
  136. package/types/components/hoc/withInternalFallback.d.ts +4 -0
  137. package/types/components/icons.d.ts +17 -2
  138. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -0
  139. package/types/components/main-menu/DefaultItems.d.ts +47 -0
  140. package/types/components/main-menu/MainMenu.d.ts +64 -0
  141. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +57 -0
  142. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  143. package/types/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  144. package/types/constants.d.ts +105 -18
  145. package/types/context/tunnels.d.ts +19 -0
  146. package/types/context/ui-appState.d.ts +4 -0
  147. package/types/cursor.d.ts +5 -0
  148. package/types/data/blob.d.ts +5 -3
  149. package/types/data/encode.d.ts +1 -1
  150. package/types/data/filesystem.d.ts +2 -1
  151. package/types/data/index.d.ts +1 -1
  152. package/types/data/library.d.ts +3 -45
  153. package/types/data/restore.d.ts +10 -4
  154. package/types/data/transform.d.ts +73 -0
  155. package/types/data/types.d.ts +3 -5
  156. package/types/data/url.d.ts +7 -0
  157. package/types/element/Hyperlink.d.ts +57 -36
  158. package/types/element/binding.d.ts +4 -3
  159. package/types/element/bounds.d.ts +41 -10
  160. package/types/element/collision.d.ts +7 -7
  161. package/types/element/dragElements.d.ts +12 -2
  162. package/types/element/embeddable.d.ts +153 -0
  163. package/types/element/image.d.ts +11 -1
  164. package/types/element/index.d.ts +3 -2
  165. package/types/element/linearElementEditor.d.ts +77 -30
  166. package/types/element/mutateElement.d.ts +3 -2
  167. package/types/element/newElement.d.ts +48 -15
  168. package/types/element/resizeElements.d.ts +3 -3
  169. package/types/element/resizeTest.d.ts +2 -1
  170. package/types/element/showSelectedShapeActions.d.ts +2 -2
  171. package/types/element/sizeHelpers.d.ts +8 -1
  172. package/types/element/sortElements.d.ts +2 -0
  173. package/types/element/textElement.d.ts +57 -9
  174. package/types/element/textWysiwyg.d.ts +7 -2
  175. package/types/element/transformHandles.d.ts +15 -8
  176. package/types/element/typeChecks.d.ts +14 -2
  177. package/types/element/types.d.ts +66 -35
  178. package/types/emitter.d.ts +1 -2
  179. package/types/errors.d.ts +1 -1
  180. package/types/frame.d.ts +46 -0
  181. package/types/ga.d.ts +5 -5
  182. package/types/groups.d.ts +15 -11
  183. package/types/history.d.ts +3 -3
  184. package/types/hooks/useCreatePortalContainer.d.ts +4 -0
  185. package/types/hooks/useLibraryItemSvg.d.ts +11 -0
  186. package/types/hooks/useOutsideClick.d.ts +19 -2
  187. package/types/hooks/useScrollPosition.d.ts +1 -0
  188. package/types/hooks/useStable.d.ts +1 -0
  189. package/types/hooks/useTransition.d.ts +2 -0
  190. package/types/i18n.d.ts +11 -2
  191. package/types/jotai.d.ts +20 -108
  192. package/types/keys.d.ts +7 -4
  193. package/types/math.d.ts +7 -1
  194. package/types/packages/bbox.d.ts +11 -0
  195. package/types/packages/excalidraw/example/App.d.ts +7 -1
  196. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  197. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  198. package/types/packages/excalidraw/example/initialData.d.ts +182 -64
  199. package/types/packages/excalidraw/index.d.ts +22 -4
  200. package/types/packages/excalidraw/main.d.ts +3 -1
  201. package/types/packages/excalidraw/webpack.dev.config.d.ts +5 -2
  202. package/types/packages/excalidraw/webpack.prod.config.d.ts +3 -0
  203. package/types/packages/utils.d.ts +30 -24
  204. package/types/packages/withinBounds.d.ts +19 -0
  205. package/types/renderer/renderElement.d.ts +13 -22
  206. package/types/renderer/renderScene.d.ts +19 -29
  207. package/types/renderer/renderSnaps.d.ts +2 -0
  208. package/types/renderer/roundRect.d.ts +1 -1
  209. package/types/scene/Fonts.d.ts +21 -0
  210. package/types/scene/Renderer.d.ts +25 -0
  211. package/types/scene/Scene.d.ts +42 -5
  212. package/types/scene/Shape.d.ts +12 -0
  213. package/types/scene/ShapeCache.d.ts +20 -0
  214. package/types/scene/comparisons.d.ts +2 -4
  215. package/types/scene/export.d.ts +183 -10
  216. package/types/scene/index.d.ts +1 -1
  217. package/types/scene/scroll.d.ts +1 -1
  218. package/types/scene/scrollbars.d.ts +2 -6
  219. package/types/scene/selection.d.ts +27 -6
  220. package/types/scene/types.d.ts +70 -26
  221. package/types/snapping.d.ts +108 -0
  222. package/types/types.d.ts +227 -91
  223. package/types/utility-types.d.ts +24 -0
  224. package/types/utils.d.ts +75 -14
  225. package/types/zindex.d.ts +4 -4
  226. package/types/components/ActiveFile.d.ts +0 -7
  227. package/types/components/ClearCanvas.d.ts +0 -4
  228. package/types/components/CollabButton.d.ts +0 -6
  229. package/types/components/ColorPicker.d.ts +0 -14
  230. package/types/components/Footer.d.ts +0 -10
  231. package/types/components/LibraryButton.d.ts +0 -8
  232. package/types/components/MenuItem.d.ts +0 -11
  233. package/types/components/MenuUtils.d.ts +0 -1
  234. package/types/components/SingleLibraryItem.d.ts +0 -10
  235. package/types/components/WelcomeScreen.d.ts +0 -10
  236. package/types/components/WelcomeScreenDecor.d.ts +0 -6
  237. package/types/components/hoc/withUpstreamOverride.d.ts +0 -10
  238. /package/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
  239. /package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-2002fe1b8862917b36c1.d.ts → vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
  240. /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-e6df8519da951026ff69.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare const actionToggleCanvasMenu: {
3
2
  name: "toggleCanvasMenu";
4
3
  trackEvent: {
@@ -7,9 +6,18 @@ export declare const actionToggleCanvasMenu: {
7
6
  perform: (_: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
8
7
  appState: {
9
8
  openMenu: "canvas" | null;
9
+ contextMenu: {
10
+ items: import("../components/ContextMenu").ContextMenuItems;
11
+ top: number;
12
+ left: number;
13
+ } | null;
10
14
  showWelcomeScreen: boolean;
11
15
  isLoading: boolean;
12
- errorMessage: string | null;
16
+ errorMessage: import("react").ReactNode;
17
+ activeEmbeddable: {
18
+ element: import("../element/types").NonDeletedExcalidrawElement;
19
+ state: "active" | "hover";
20
+ } | null;
13
21
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
14
22
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
15
23
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -17,19 +25,21 @@ export declare const actionToggleCanvasMenu: {
17
25
  isBindingEnabled: boolean;
18
26
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
19
27
  suggestedBindings: import("../element/binding").SuggestedBinding[];
28
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
29
+ frameRendering: {
30
+ enabled: boolean;
31
+ name: boolean;
32
+ outline: boolean;
33
+ clip: boolean;
34
+ };
35
+ editingFrame: string | null;
36
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
20
37
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
21
38
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
22
39
  activeTool: {
23
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
24
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
25
- locked: boolean;
26
- customType: null;
27
- } | {
28
- type: "custom";
29
- customType: string;
30
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
40
+ lastActiveTool: import("../types").ActiveTool | null;
31
41
  locked: boolean;
32
- };
42
+ } & import("../types").ActiveTool;
33
43
  penMode: boolean;
34
44
  penDetected: boolean;
35
45
  exportBackground: boolean;
@@ -46,10 +56,9 @@ export declare const actionToggleCanvasMenu: {
46
56
  currentItemFontFamily: number;
47
57
  currentItemFontSize: number;
48
58
  currentItemTextAlign: string;
49
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
50
59
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
51
60
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
52
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
61
+ currentItemRoundness: import("../element/types").StrokeRoundness;
53
62
  viewBackgroundColor: string;
54
63
  scrollX: number;
55
64
  scrollY: number;
@@ -61,17 +70,21 @@ export declare const actionToggleCanvasMenu: {
61
70
  zoom: Readonly<{
62
71
  value: import("../types").NormalizedZoomValue;
63
72
  }>;
64
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
65
- openSidebar: "library" | "customSidebar" | null;
66
- openDialog: "imageExport" | "help" | null;
67
- isSidebarDocked: boolean;
73
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
74
+ openSidebar: {
75
+ name: string;
76
+ tab?: string | undefined;
77
+ } | null;
78
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
79
+ defaultSidebarDockedPreference: boolean;
68
80
  lastPointerDownWith: import("../element/types").PointerType;
69
- selectedElementIds: {
70
- [id: string]: boolean;
71
- };
81
+ selectedElementIds: Readonly<{
82
+ [id: string]: true;
83
+ }>;
72
84
  previousSelectedElementIds: {
73
- [id: string]: boolean;
85
+ [id: string]: true;
74
86
  };
87
+ selectedElementsAreBeingDragged: boolean;
75
88
  shouldCacheIgnoreZoom: boolean;
76
89
  toast: {
77
90
  message: string;
@@ -79,7 +92,7 @@ export declare const actionToggleCanvasMenu: {
79
92
  duration?: number | undefined;
80
93
  } | null;
81
94
  zenModeEnabled: boolean;
82
- theme: string;
95
+ theme: import("../element/types").Theme;
83
96
  gridSize: number | null;
84
97
  viewModeEnabled: boolean;
85
98
  selectedGroupIds: {
@@ -102,14 +115,18 @@ export declare const actionToggleCanvasMenu: {
102
115
  data: import("../charts").Spreadsheet;
103
116
  };
104
117
  pendingImageElementId: string | null;
105
- showHyperlinkPopup: false | "info" | "editor";
118
+ showHyperlinkPopup: false | "editor" | "info";
106
119
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
120
+ snapLines: readonly import("../snapping").SnapLine[];
121
+ originSnapOffset: {
122
+ x: number;
123
+ y: number;
124
+ } | null;
125
+ objectsSnapModeEnabled: boolean;
107
126
  };
108
127
  commitToHistory: false;
109
128
  };
110
- PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps & {
111
- isInHamburgerMenu: boolean;
112
- }) => JSX.Element;
129
+ PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
113
130
  } & {
114
131
  keyTest?: undefined;
115
132
  };
@@ -121,9 +138,18 @@ export declare const actionToggleEditMenu: {
121
138
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
122
139
  appState: {
123
140
  openMenu: "shape" | null;
141
+ contextMenu: {
142
+ items: import("../components/ContextMenu").ContextMenuItems;
143
+ top: number;
144
+ left: number;
145
+ } | null;
124
146
  showWelcomeScreen: boolean;
125
147
  isLoading: boolean;
126
- errorMessage: string | null;
148
+ errorMessage: import("react").ReactNode;
149
+ activeEmbeddable: {
150
+ element: import("../element/types").NonDeletedExcalidrawElement;
151
+ state: "active" | "hover";
152
+ } | null;
127
153
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
128
154
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
129
155
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -131,19 +157,21 @@ export declare const actionToggleEditMenu: {
131
157
  isBindingEnabled: boolean;
132
158
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
133
159
  suggestedBindings: import("../element/binding").SuggestedBinding[];
160
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
161
+ frameRendering: {
162
+ enabled: boolean;
163
+ name: boolean;
164
+ outline: boolean;
165
+ clip: boolean;
166
+ };
167
+ editingFrame: string | null;
168
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
134
169
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
135
170
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
136
171
  activeTool: {
137
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
138
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
139
- locked: boolean;
140
- customType: null;
141
- } | {
142
- type: "custom";
143
- customType: string;
144
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
172
+ lastActiveTool: import("../types").ActiveTool | null;
145
173
  locked: boolean;
146
- };
174
+ } & import("../types").ActiveTool;
147
175
  penMode: boolean;
148
176
  penDetected: boolean;
149
177
  exportBackground: boolean;
@@ -160,10 +188,9 @@ export declare const actionToggleEditMenu: {
160
188
  currentItemFontFamily: number;
161
189
  currentItemFontSize: number;
162
190
  currentItemTextAlign: string;
163
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
164
191
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
165
192
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
166
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
193
+ currentItemRoundness: import("../element/types").StrokeRoundness;
167
194
  viewBackgroundColor: string;
168
195
  scrollX: number;
169
196
  scrollY: number;
@@ -175,17 +202,21 @@ export declare const actionToggleEditMenu: {
175
202
  zoom: Readonly<{
176
203
  value: import("../types").NormalizedZoomValue;
177
204
  }>;
178
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
179
- openSidebar: "library" | "customSidebar" | null;
180
- openDialog: "imageExport" | "help" | null;
181
- isSidebarDocked: boolean;
205
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
206
+ openSidebar: {
207
+ name: string;
208
+ tab?: string | undefined;
209
+ } | null;
210
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
211
+ defaultSidebarDockedPreference: boolean;
182
212
  lastPointerDownWith: import("../element/types").PointerType;
183
- selectedElementIds: {
184
- [id: string]: boolean;
185
- };
213
+ selectedElementIds: Readonly<{
214
+ [id: string]: true;
215
+ }>;
186
216
  previousSelectedElementIds: {
187
- [id: string]: boolean;
217
+ [id: string]: true;
188
218
  };
219
+ selectedElementsAreBeingDragged: boolean;
189
220
  shouldCacheIgnoreZoom: boolean;
190
221
  toast: {
191
222
  message: string;
@@ -193,7 +224,7 @@ export declare const actionToggleEditMenu: {
193
224
  duration?: number | undefined;
194
225
  } | null;
195
226
  zenModeEnabled: boolean;
196
- theme: string;
227
+ theme: import("../element/types").Theme;
197
228
  gridSize: number | null;
198
229
  viewModeEnabled: boolean;
199
230
  selectedGroupIds: {
@@ -216,19 +247,24 @@ export declare const actionToggleEditMenu: {
216
247
  data: import("../charts").Spreadsheet;
217
248
  };
218
249
  pendingImageElementId: string | null;
219
- showHyperlinkPopup: false | "info" | "editor";
250
+ showHyperlinkPopup: false | "editor" | "info";
220
251
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
252
+ snapLines: readonly import("../snapping").SnapLine[];
253
+ originSnapOffset: {
254
+ x: number;
255
+ y: number;
256
+ } | null;
257
+ objectsSnapModeEnabled: boolean;
221
258
  };
222
259
  commitToHistory: false;
223
260
  };
224
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
225
- isInHamburgerMenu: boolean;
226
- }) => JSX.Element;
261
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
227
262
  } & {
228
263
  keyTest?: undefined;
229
264
  };
230
265
  export declare const actionFullScreen: {
231
266
  name: "toggleFullScreen";
267
+ viewMode: true;
232
268
  trackEvent: {
233
269
  category: "canvas";
234
270
  predicate: (appState: Readonly<import("../types").AppState>) => boolean;
@@ -236,12 +272,12 @@ export declare const actionFullScreen: {
236
272
  perform: () => {
237
273
  commitToHistory: false;
238
274
  };
239
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
240
275
  } & {
241
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
276
+ keyTest?: undefined;
242
277
  };
243
278
  export declare const actionShortcuts: {
244
279
  name: "toggleShortcuts";
280
+ viewMode: true;
245
281
  trackEvent: {
246
282
  category: "menu";
247
283
  action: string;
@@ -249,9 +285,18 @@ export declare const actionShortcuts: {
249
285
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, { focusContainer }: import("../types").AppClassProperties) => {
250
286
  appState: {
251
287
  openDialog: "help" | null;
288
+ contextMenu: {
289
+ items: import("../components/ContextMenu").ContextMenuItems;
290
+ top: number;
291
+ left: number;
292
+ } | null;
252
293
  showWelcomeScreen: boolean;
253
294
  isLoading: boolean;
254
- errorMessage: string | null;
295
+ errorMessage: import("react").ReactNode;
296
+ activeEmbeddable: {
297
+ element: import("../element/types").NonDeletedExcalidrawElement;
298
+ state: "active" | "hover";
299
+ } | null;
255
300
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
256
301
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
257
302
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -259,19 +304,21 @@ export declare const actionShortcuts: {
259
304
  isBindingEnabled: boolean;
260
305
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
261
306
  suggestedBindings: import("../element/binding").SuggestedBinding[];
307
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
308
+ frameRendering: {
309
+ enabled: boolean;
310
+ name: boolean;
311
+ outline: boolean;
312
+ clip: boolean;
313
+ };
314
+ editingFrame: string | null;
315
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
262
316
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
263
317
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
264
318
  activeTool: {
265
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
266
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
319
+ lastActiveTool: import("../types").ActiveTool | null;
267
320
  locked: boolean;
268
- customType: null;
269
- } | {
270
- type: "custom";
271
- customType: string;
272
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
273
- locked: boolean;
274
- };
321
+ } & import("../types").ActiveTool;
275
322
  penMode: boolean;
276
323
  penDetected: boolean;
277
324
  exportBackground: boolean;
@@ -288,10 +335,9 @@ export declare const actionShortcuts: {
288
335
  currentItemFontFamily: number;
289
336
  currentItemFontSize: number;
290
337
  currentItemTextAlign: string;
291
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
292
338
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
293
339
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
294
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
340
+ currentItemRoundness: import("../element/types").StrokeRoundness;
295
341
  viewBackgroundColor: string;
296
342
  scrollX: number;
297
343
  scrollY: number;
@@ -304,16 +350,20 @@ export declare const actionShortcuts: {
304
350
  value: import("../types").NormalizedZoomValue;
305
351
  }>;
306
352
  openMenu: "canvas" | "shape" | null;
307
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
308
- openSidebar: "library" | "customSidebar" | null;
309
- isSidebarDocked: boolean;
353
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
354
+ openSidebar: {
355
+ name: string;
356
+ tab?: string | undefined;
357
+ } | null;
358
+ defaultSidebarDockedPreference: boolean;
310
359
  lastPointerDownWith: import("../element/types").PointerType;
311
- selectedElementIds: {
312
- [id: string]: boolean;
313
- };
360
+ selectedElementIds: Readonly<{
361
+ [id: string]: true;
362
+ }>;
314
363
  previousSelectedElementIds: {
315
- [id: string]: boolean;
364
+ [id: string]: true;
316
365
  };
366
+ selectedElementsAreBeingDragged: boolean;
317
367
  shouldCacheIgnoreZoom: boolean;
318
368
  toast: {
319
369
  message: string;
@@ -321,7 +371,7 @@ export declare const actionShortcuts: {
321
371
  duration?: number | undefined;
322
372
  } | null;
323
373
  zenModeEnabled: boolean;
324
- theme: string;
374
+ theme: import("../element/types").Theme;
325
375
  gridSize: number | null;
326
376
  viewModeEnabled: boolean;
327
377
  selectedGroupIds: {
@@ -344,15 +394,18 @@ export declare const actionShortcuts: {
344
394
  data: import("../charts").Spreadsheet;
345
395
  };
346
396
  pendingImageElementId: string | null;
347
- showHyperlinkPopup: false | "info" | "editor";
397
+ showHyperlinkPopup: false | "editor" | "info";
348
398
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
399
+ snapLines: readonly import("../snapping").SnapLine[];
400
+ originSnapOffset: {
401
+ x: number;
402
+ y: number;
403
+ } | null;
404
+ objectsSnapModeEnabled: boolean;
349
405
  };
350
406
  commitToHistory: false;
351
407
  };
352
- PanelComponent: ({ updateData, isInHamburgerMenu }: import("./types").PanelComponentProps & {
353
- isInHamburgerMenu: boolean;
354
- }) => JSX.Element;
355
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
408
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
356
409
  } & {
357
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
410
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
358
411
  };
@@ -1,5 +1,6 @@
1
1
  export declare const actionGoToCollaborator: {
2
2
  name: "goToCollaborator";
3
+ viewMode: true;
3
4
  trackEvent: {
4
5
  category: "collab";
5
6
  };
@@ -7,9 +8,7 @@ export declare const actionGoToCollaborator: {
7
8
  appState: Readonly<import("../types").AppState>;
8
9
  commitToHistory: false;
9
10
  };
10
- PanelComponent: ({ appState, updateData, data }: import("./types").PanelComponentProps & {
11
- isInHamburgerMenu: boolean;
12
- }) => JSX.Element;
11
+ PanelComponent: ({ updateData, data }: import("./types").PanelComponentProps) => JSX.Element;
13
12
  } & {
14
13
  keyTest?: undefined;
15
14
  };