@zsviczian/excalidraw 0.15.2-obsidian-4 → 0.15.2-obsidian-6

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 (73) hide show
  1. package/README.md +4 -0
  2. package/dist/excalidraw.development.js +273 -143
  3. package/dist/excalidraw.production.min.js +1 -1
  4. package/dist/excalidraw.production.min.js.LICENSE.txt +2 -0
  5. package/package.json +1 -1
  6. package/types/actions/actionAddToLibrary.d.ts +30 -3
  7. package/types/actions/actionAlign.d.ts +12 -6
  8. package/types/actions/actionBoundText.d.ts +21 -3
  9. package/types/actions/actionCanvas.d.ts +397 -17
  10. package/types/actions/actionClipboard.d.ts +47 -5
  11. package/types/actions/actionDeleteSelected.d.ts +27 -3
  12. package/types/actions/actionDistribute.d.ts +2 -2
  13. package/types/actions/actionElementLock.d.ts +21 -2
  14. package/types/actions/actionExport.d.ts +90 -9
  15. package/types/actions/actionFinalize.d.ts +20 -2
  16. package/types/actions/actionFlip.d.ts +2 -2
  17. package/types/actions/actionFrame.d.ts +475 -0
  18. package/types/actions/actionGroup.d.ts +2 -2
  19. package/types/actions/actionLinearEditor.d.ts +10 -1
  20. package/types/actions/actionMenu.d.ts +30 -3
  21. package/types/actions/actionNavigate.d.ts +1 -1
  22. package/types/actions/actionProperties.d.ts +130 -13
  23. package/types/actions/actionStyles.d.ts +10 -1
  24. package/types/actions/actionToggleGridMode.d.ts +10 -1
  25. package/types/actions/actionToggleStats.d.ts +10 -1
  26. package/types/actions/actionToggleViewMode.d.ts +10 -1
  27. package/types/actions/actionToggleZenMode.d.ts +10 -1
  28. package/types/actions/actionZindex.d.ts +4 -4
  29. package/types/actions/types.d.ts +1 -1
  30. package/types/appState.d.ts +1 -1
  31. package/types/clients.d.ts +1 -5
  32. package/types/components/App.d.ts +29 -2
  33. package/types/components/Avatar.d.ts +0 -1
  34. package/types/components/Dialog.d.ts +2 -1
  35. package/types/components/FilledButton.d.ts +2 -1
  36. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  37. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  38. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  39. package/types/components/ToolButton.d.ts +2 -1
  40. package/types/components/dropdownMenu/DropdownMenu.d.ts +3 -2
  41. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +4 -2
  42. package/types/components/icons.d.ts +4 -0
  43. package/types/components/main-menu/MainMenu.d.ts +3 -2
  44. package/types/constants.d.ts +23 -1
  45. package/types/context/tunnels.d.ts +1 -0
  46. package/types/data/url.d.ts +2 -0
  47. package/types/element/Hyperlink.d.ts +20 -7
  48. package/types/element/binding.d.ts +1 -1
  49. package/types/element/bounds.d.ts +31 -6
  50. package/types/element/collision.d.ts +7 -7
  51. package/types/element/dragElements.d.ts +2 -1
  52. package/types/element/iframe.d.ts +167 -0
  53. package/types/element/index.d.ts +3 -2
  54. package/types/element/linearElementEditor.d.ts +11 -2
  55. package/types/element/newElement.d.ts +7 -2
  56. package/types/element/transformHandles.d.ts +8 -1
  57. package/types/element/typeChecks.d.ts +5 -3
  58. package/types/element/types.d.ts +20 -4
  59. package/types/frame.d.ts +40 -0
  60. package/types/groups.d.ts +4 -0
  61. package/types/keys.d.ts +3 -0
  62. package/types/math.d.ts +1 -0
  63. package/types/packages/excalidraw/example/initialData.d.ts +6 -0
  64. package/types/packages/excalidraw/index.d.ts +1 -0
  65. package/types/renderer/renderElement.d.ts +3 -2
  66. package/types/renderer/renderScene.d.ts +12 -3
  67. package/types/renderer/roundRect.d.ts +1 -1
  68. package/types/scene/Scene.d.ts +8 -1
  69. package/types/scene/export.d.ts +1 -0
  70. package/types/scene/selection.d.ts +13 -3
  71. package/types/types.d.ts +38 -3
  72. package/types/utils.d.ts +46 -16
  73. package/types/zindex.d.ts +4 -4
@@ -42,3 +42,5 @@ https://github.com/nodeca/pica
42
42
  * This source code is licensed under the MIT license found in the
43
43
  * LICENSE file in the root directory of this source tree.
44
44
  */
45
+
46
+ //!device.isMobile && //zsviczian
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zsviczian/excalidraw",
3
- "version": "0.15.2-obsidian-4",
3
+ "version": "0.15.2-obsidian-6",
4
4
  "main": "main.js",
5
5
  "types": "types/packages/excalidraw/index.d.ts",
6
6
  "files": [
@@ -18,6 +18,10 @@ export declare const actionAddToLibrary: {
18
18
  showWelcomeScreen: boolean;
19
19
  isLoading: boolean;
20
20
  errorMessage: import("react").ReactNode;
21
+ activeIFrame: {
22
+ element: import("../element/types").NonDeletedExcalidrawElement;
23
+ state: "active" | "hover";
24
+ } | null;
21
25
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
22
26
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
23
27
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -25,13 +29,17 @@ export declare const actionAddToLibrary: {
25
29
  isBindingEnabled: boolean;
26
30
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
27
31
  suggestedBindings: import("../element/binding").SuggestedBinding[];
32
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
33
+ shouldRenderFrames: boolean;
34
+ editingFrame: string | null;
35
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
28
36
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
29
37
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
30
38
  activeTool: {
31
39
  lastActiveTool: import("../types").LastActiveTool;
32
40
  locked: boolean;
33
41
  } & ({
34
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
42
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "iframe" | "image" | "frame" | "freedraw" | "eraser" | "hand";
35
43
  customType: null;
36
44
  } | {
37
45
  type: "custom";
@@ -82,6 +90,7 @@ export declare const actionAddToLibrary: {
82
90
  previousSelectedElementIds: {
83
91
  [id: string]: boolean;
84
92
  };
93
+ selectedElementsAreBeingDragged: boolean;
85
94
  shouldCacheIgnoreZoom: boolean;
86
95
  zenModeEnabled: boolean;
87
96
  theme: string;
@@ -143,6 +152,10 @@ export declare const actionAddToLibrary: {
143
152
  } | null;
144
153
  showWelcomeScreen: boolean;
145
154
  isLoading: boolean;
155
+ activeIFrame: {
156
+ element: import("../element/types").NonDeletedExcalidrawElement;
157
+ state: "active" | "hover";
158
+ } | null;
146
159
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
147
160
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
148
161
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -150,13 +163,17 @@ export declare const actionAddToLibrary: {
150
163
  isBindingEnabled: boolean;
151
164
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
152
165
  suggestedBindings: import("../element/binding").SuggestedBinding[];
166
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
167
+ shouldRenderFrames: boolean;
168
+ editingFrame: string | null;
169
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
153
170
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
154
171
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
155
172
  activeTool: {
156
173
  lastActiveTool: import("../types").LastActiveTool;
157
174
  locked: boolean;
158
175
  } & ({
159
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
176
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "iframe" | "image" | "frame" | "freedraw" | "eraser" | "hand";
160
177
  customType: null;
161
178
  } | {
162
179
  type: "custom";
@@ -207,6 +224,7 @@ export declare const actionAddToLibrary: {
207
224
  previousSelectedElementIds: {
208
225
  [id: string]: boolean;
209
226
  };
227
+ selectedElementsAreBeingDragged: boolean;
210
228
  shouldCacheIgnoreZoom: boolean;
211
229
  toast: {
212
230
  message: string;
@@ -273,6 +291,10 @@ export declare const actionAddToLibrary: {
273
291
  } | null;
274
292
  showWelcomeScreen: boolean;
275
293
  isLoading: boolean;
294
+ activeIFrame: {
295
+ element: import("../element/types").NonDeletedExcalidrawElement;
296
+ state: "active" | "hover";
297
+ } | null;
276
298
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
277
299
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
278
300
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -280,13 +302,17 @@ export declare const actionAddToLibrary: {
280
302
  isBindingEnabled: boolean;
281
303
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
282
304
  suggestedBindings: import("../element/binding").SuggestedBinding[];
305
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
306
+ shouldRenderFrames: boolean;
307
+ editingFrame: string | null;
308
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
283
309
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
284
310
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
285
311
  activeTool: {
286
312
  lastActiveTool: import("../types").LastActiveTool;
287
313
  locked: boolean;
288
314
  } & ({
289
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
315
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "iframe" | "image" | "frame" | "freedraw" | "eraser" | "hand";
290
316
  customType: null;
291
317
  } | {
292
318
  type: "custom";
@@ -337,6 +363,7 @@ export declare const actionAddToLibrary: {
337
363
  previousSelectedElementIds: {
338
364
  [id: string]: boolean;
339
365
  };
366
+ selectedElementsAreBeingDragged: boolean;
340
367
  shouldCacheIgnoreZoom: boolean;
341
368
  toast: {
342
369
  message: string;
@@ -6,9 +6,10 @@ export declare const actionAlignTop: {
6
6
  trackEvent: {
7
7
  category: "element";
8
8
  };
9
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
9
10
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
10
11
  appState: Readonly<AppState>;
11
- elements: ExcalidrawElement[];
12
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
12
13
  commitToHistory: true;
13
14
  };
14
15
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
@@ -21,9 +22,10 @@ export declare const actionAlignBottom: {
21
22
  trackEvent: {
22
23
  category: "element";
23
24
  };
25
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
24
26
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
25
27
  appState: Readonly<AppState>;
26
- elements: ExcalidrawElement[];
28
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
27
29
  commitToHistory: true;
28
30
  };
29
31
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
@@ -36,9 +38,10 @@ export declare const actionAlignLeft: {
36
38
  trackEvent: {
37
39
  category: "element";
38
40
  };
41
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
39
42
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
40
43
  appState: Readonly<AppState>;
41
- elements: ExcalidrawElement[];
44
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
42
45
  commitToHistory: true;
43
46
  };
44
47
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
@@ -51,9 +54,10 @@ export declare const actionAlignRight: {
51
54
  trackEvent: {
52
55
  category: "element";
53
56
  };
57
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
54
58
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
55
59
  appState: Readonly<AppState>;
56
- elements: ExcalidrawElement[];
60
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
57
61
  commitToHistory: true;
58
62
  };
59
63
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
@@ -66,9 +70,10 @@ export declare const actionAlignVerticallyCentered: {
66
70
  trackEvent: {
67
71
  category: "element";
68
72
  };
73
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
69
74
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
70
75
  appState: Readonly<AppState>;
71
- elements: ExcalidrawElement[];
76
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
72
77
  commitToHistory: true;
73
78
  };
74
79
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
@@ -80,9 +85,10 @@ export declare const actionAlignHorizontallyCentered: {
80
85
  trackEvent: {
81
86
  category: "element";
82
87
  };
88
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
83
89
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
84
90
  appState: Readonly<AppState>;
85
- elements: ExcalidrawElement[];
91
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
86
92
  commitToHistory: true;
87
93
  };
88
94
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
@@ -22,7 +22,7 @@ export declare const actionBindText: {
22
22
  trackEvent: {
23
23
  category: "element";
24
24
  };
25
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
25
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: import("../types").ExcalidrawProps) => boolean;
26
26
  perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
27
27
  elements: ExcalidrawElement[];
28
28
  appState: {
@@ -37,6 +37,10 @@ export declare const actionBindText: {
37
37
  showWelcomeScreen: boolean;
38
38
  isLoading: boolean;
39
39
  errorMessage: import("react").ReactNode;
40
+ activeIFrame: {
41
+ element: import("../element/types").NonDeletedExcalidrawElement;
42
+ state: "active" | "hover";
43
+ } | null;
40
44
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
41
45
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
42
46
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -44,13 +48,17 @@ export declare const actionBindText: {
44
48
  isBindingEnabled: boolean;
45
49
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
46
50
  suggestedBindings: import("../element/binding").SuggestedBinding[];
51
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
52
+ shouldRenderFrames: boolean;
53
+ editingFrame: string | null;
54
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
47
55
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
48
56
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
49
57
  activeTool: {
50
58
  lastActiveTool: import("../types").LastActiveTool;
51
59
  locked: boolean;
52
60
  } & ({
53
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
61
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "iframe" | "image" | "frame" | "freedraw" | "eraser" | "hand";
54
62
  customType: null;
55
63
  } | {
56
64
  type: "custom";
@@ -98,6 +106,7 @@ export declare const actionBindText: {
98
106
  previousSelectedElementIds: {
99
107
  [id: string]: boolean;
100
108
  };
109
+ selectedElementsAreBeingDragged: boolean;
101
110
  shouldCacheIgnoreZoom: boolean;
102
111
  toast: {
103
112
  message: string;
@@ -179,6 +188,10 @@ export declare const actionWrapTextInContainer: {
179
188
  showWelcomeScreen: boolean;
180
189
  isLoading: boolean;
181
190
  errorMessage: import("react").ReactNode;
191
+ activeIFrame: {
192
+ element: import("../element/types").NonDeletedExcalidrawElement;
193
+ state: "active" | "hover";
194
+ } | null;
182
195
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
183
196
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
184
197
  multiElement: import("../element/types").NonDeleted<ExcalidrawLinearElement> | null;
@@ -186,13 +199,17 @@ export declare const actionWrapTextInContainer: {
186
199
  isBindingEnabled: boolean;
187
200
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
188
201
  suggestedBindings: import("../element/binding").SuggestedBinding[];
202
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
203
+ shouldRenderFrames: boolean;
204
+ editingFrame: string | null;
205
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
189
206
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
190
207
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
191
208
  activeTool: {
192
209
  lastActiveTool: import("../types").LastActiveTool;
193
210
  locked: boolean;
194
211
  } & ({
195
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
212
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "iframe" | "image" | "frame" | "freedraw" | "eraser" | "hand";
196
213
  customType: null;
197
214
  } | {
198
215
  type: "custom";
@@ -240,6 +257,7 @@ export declare const actionWrapTextInContainer: {
240
257
  previousSelectedElementIds: {
241
258
  [id: string]: boolean;
242
259
  };
260
+ selectedElementsAreBeingDragged: boolean;
243
261
  shouldCacheIgnoreZoom: boolean;
244
262
  toast: {
245
263
  message: string;