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

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.
@@ -80,11 +80,11 @@ export declare const actionToggleCanvasMenu: {
80
80
  openDialog: "imageExport" | "help" | "jsonExport" | null;
81
81
  defaultSidebarDockedPreference: boolean;
82
82
  lastPointerDownWith: import("../element/types").PointerType;
83
- selectedElementIds: {
84
- [id: string]: boolean;
85
- };
83
+ selectedElementIds: Readonly<{
84
+ [id: string]: true;
85
+ }>;
86
86
  previousSelectedElementIds: {
87
- [id: string]: boolean;
87
+ [id: string]: true;
88
88
  };
89
89
  selectedElementsAreBeingDragged: boolean;
90
90
  shouldCacheIgnoreZoom: boolean;
@@ -229,11 +229,11 @@ export declare const actionToggleEditMenu: {
229
229
  openDialog: "imageExport" | "help" | "jsonExport" | null;
230
230
  defaultSidebarDockedPreference: boolean;
231
231
  lastPointerDownWith: import("../element/types").PointerType;
232
- selectedElementIds: {
233
- [id: string]: boolean;
234
- };
232
+ selectedElementIds: Readonly<{
233
+ [id: string]: true;
234
+ }>;
235
235
  previousSelectedElementIds: {
236
- [id: string]: boolean;
236
+ [id: string]: true;
237
237
  };
238
238
  selectedElementsAreBeingDragged: boolean;
239
239
  shouldCacheIgnoreZoom: boolean;
@@ -394,11 +394,11 @@ export declare const actionShortcuts: {
394
394
  } | null;
395
395
  defaultSidebarDockedPreference: boolean;
396
396
  lastPointerDownWith: import("../element/types").PointerType;
397
- selectedElementIds: {
398
- [id: string]: boolean;
399
- };
397
+ selectedElementIds: Readonly<{
398
+ [id: string]: true;
399
+ }>;
400
400
  previousSelectedElementIds: {
401
- [id: string]: boolean;
401
+ [id: string]: true;
402
402
  };
403
403
  selectedElementsAreBeingDragged: boolean;
404
404
  shouldCacheIgnoreZoom: boolean;
@@ -97,11 +97,11 @@ export declare const actionChangeFillStyle: {
97
97
  openDialog: "imageExport" | "help" | "jsonExport" | null;
98
98
  defaultSidebarDockedPreference: boolean;
99
99
  lastPointerDownWith: import("../element/types").PointerType;
100
- selectedElementIds: {
101
- [id: string]: boolean;
102
- };
100
+ selectedElementIds: Readonly<{
101
+ [id: string]: true;
102
+ }>;
103
103
  previousSelectedElementIds: {
104
- [id: string]: boolean;
104
+ [id: string]: true;
105
105
  };
106
106
  selectedElementsAreBeingDragged: boolean;
107
107
  shouldCacheIgnoreZoom: boolean;
@@ -245,11 +245,11 @@ export declare const actionChangeStrokeWidth: {
245
245
  openDialog: "imageExport" | "help" | "jsonExport" | null;
246
246
  defaultSidebarDockedPreference: boolean;
247
247
  lastPointerDownWith: import("../element/types").PointerType;
248
- selectedElementIds: {
249
- [id: string]: boolean;
250
- };
248
+ selectedElementIds: Readonly<{
249
+ [id: string]: true;
250
+ }>;
251
251
  previousSelectedElementIds: {
252
- [id: string]: boolean;
252
+ [id: string]: true;
253
253
  };
254
254
  selectedElementsAreBeingDragged: boolean;
255
255
  shouldCacheIgnoreZoom: boolean;
@@ -393,11 +393,11 @@ export declare const actionChangeSloppiness: {
393
393
  openDialog: "imageExport" | "help" | "jsonExport" | null;
394
394
  defaultSidebarDockedPreference: boolean;
395
395
  lastPointerDownWith: import("../element/types").PointerType;
396
- selectedElementIds: {
397
- [id: string]: boolean;
398
- };
396
+ selectedElementIds: Readonly<{
397
+ [id: string]: true;
398
+ }>;
399
399
  previousSelectedElementIds: {
400
- [id: string]: boolean;
400
+ [id: string]: true;
401
401
  };
402
402
  selectedElementsAreBeingDragged: boolean;
403
403
  shouldCacheIgnoreZoom: boolean;
@@ -541,11 +541,11 @@ export declare const actionChangeStrokeStyle: {
541
541
  openDialog: "imageExport" | "help" | "jsonExport" | null;
542
542
  defaultSidebarDockedPreference: boolean;
543
543
  lastPointerDownWith: import("../element/types").PointerType;
544
- selectedElementIds: {
545
- [id: string]: boolean;
546
- };
544
+ selectedElementIds: Readonly<{
545
+ [id: string]: true;
546
+ }>;
547
547
  previousSelectedElementIds: {
548
- [id: string]: boolean;
548
+ [id: string]: true;
549
549
  };
550
550
  selectedElementsAreBeingDragged: boolean;
551
551
  shouldCacheIgnoreZoom: boolean;
@@ -689,11 +689,11 @@ export declare const actionChangeOpacity: {
689
689
  openDialog: "imageExport" | "help" | "jsonExport" | null;
690
690
  defaultSidebarDockedPreference: boolean;
691
691
  lastPointerDownWith: import("../element/types").PointerType;
692
- selectedElementIds: {
693
- [id: string]: boolean;
694
- };
692
+ selectedElementIds: Readonly<{
693
+ [id: string]: true;
694
+ }>;
695
695
  previousSelectedElementIds: {
696
- [id: string]: boolean;
696
+ [id: string]: true;
697
697
  };
698
698
  selectedElementsAreBeingDragged: boolean;
699
699
  shouldCacheIgnoreZoom: boolean;
@@ -837,11 +837,11 @@ export declare const actionChangeFontSize: {
837
837
  openDialog: "imageExport" | "help" | "jsonExport" | null;
838
838
  defaultSidebarDockedPreference: boolean;
839
839
  lastPointerDownWith: import("../element/types").PointerType;
840
- selectedElementIds: {
841
- [id: string]: boolean;
842
- };
840
+ selectedElementIds: Readonly<{
841
+ [id: string]: true;
842
+ }>;
843
843
  previousSelectedElementIds: {
844
- [id: string]: boolean;
844
+ [id: string]: true;
845
845
  };
846
846
  selectedElementsAreBeingDragged: boolean;
847
847
  shouldCacheIgnoreZoom: boolean;
@@ -985,11 +985,11 @@ export declare const actionDecreaseFontSize: {
985
985
  openDialog: "imageExport" | "help" | "jsonExport" | null;
986
986
  defaultSidebarDockedPreference: boolean;
987
987
  lastPointerDownWith: import("../element/types").PointerType;
988
- selectedElementIds: {
989
- [id: string]: boolean;
990
- };
988
+ selectedElementIds: Readonly<{
989
+ [id: string]: true;
990
+ }>;
991
991
  previousSelectedElementIds: {
992
- [id: string]: boolean;
992
+ [id: string]: true;
993
993
  };
994
994
  selectedElementsAreBeingDragged: boolean;
995
995
  shouldCacheIgnoreZoom: boolean;
@@ -1133,11 +1133,11 @@ export declare const actionIncreaseFontSize: {
1133
1133
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1134
1134
  defaultSidebarDockedPreference: boolean;
1135
1135
  lastPointerDownWith: import("../element/types").PointerType;
1136
- selectedElementIds: {
1137
- [id: string]: boolean;
1138
- };
1136
+ selectedElementIds: Readonly<{
1137
+ [id: string]: true;
1138
+ }>;
1139
1139
  previousSelectedElementIds: {
1140
- [id: string]: boolean;
1140
+ [id: string]: true;
1141
1141
  };
1142
1142
  selectedElementsAreBeingDragged: boolean;
1143
1143
  shouldCacheIgnoreZoom: boolean;
@@ -1281,11 +1281,11 @@ export declare const actionChangeFontFamily: {
1281
1281
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1282
1282
  defaultSidebarDockedPreference: boolean;
1283
1283
  lastPointerDownWith: import("../element/types").PointerType;
1284
- selectedElementIds: {
1285
- [id: string]: boolean;
1286
- };
1284
+ selectedElementIds: Readonly<{
1285
+ [id: string]: true;
1286
+ }>;
1287
1287
  previousSelectedElementIds: {
1288
- [id: string]: boolean;
1288
+ [id: string]: true;
1289
1289
  };
1290
1290
  selectedElementsAreBeingDragged: boolean;
1291
1291
  shouldCacheIgnoreZoom: boolean;
@@ -1429,11 +1429,11 @@ export declare const actionChangeTextAlign: {
1429
1429
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1430
1430
  defaultSidebarDockedPreference: boolean;
1431
1431
  lastPointerDownWith: import("../element/types").PointerType;
1432
- selectedElementIds: {
1433
- [id: string]: boolean;
1434
- };
1432
+ selectedElementIds: Readonly<{
1433
+ [id: string]: true;
1434
+ }>;
1435
1435
  previousSelectedElementIds: {
1436
- [id: string]: boolean;
1436
+ [id: string]: true;
1437
1437
  };
1438
1438
  selectedElementsAreBeingDragged: boolean;
1439
1439
  shouldCacheIgnoreZoom: boolean;
@@ -1579,11 +1579,11 @@ export declare const actionChangeVerticalAlign: {
1579
1579
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1580
1580
  defaultSidebarDockedPreference: boolean;
1581
1581
  lastPointerDownWith: import("../element/types").PointerType;
1582
- selectedElementIds: {
1583
- [id: string]: boolean;
1584
- };
1582
+ selectedElementIds: Readonly<{
1583
+ [id: string]: true;
1584
+ }>;
1585
1585
  previousSelectedElementIds: {
1586
- [id: string]: boolean;
1586
+ [id: string]: true;
1587
1587
  };
1588
1588
  selectedElementsAreBeingDragged: boolean;
1589
1589
  shouldCacheIgnoreZoom: boolean;
@@ -1727,11 +1727,11 @@ export declare const actionChangeRoundness: {
1727
1727
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1728
1728
  defaultSidebarDockedPreference: boolean;
1729
1729
  lastPointerDownWith: import("../element/types").PointerType;
1730
- selectedElementIds: {
1731
- [id: string]: boolean;
1732
- };
1730
+ selectedElementIds: Readonly<{
1731
+ [id: string]: true;
1732
+ }>;
1733
1733
  previousSelectedElementIds: {
1734
- [id: string]: boolean;
1734
+ [id: string]: true;
1735
1735
  };
1736
1736
  selectedElementsAreBeingDragged: boolean;
1737
1737
  shouldCacheIgnoreZoom: boolean;
@@ -1878,11 +1878,11 @@ export declare const actionChangeArrowhead: {
1878
1878
  openDialog: "imageExport" | "help" | "jsonExport" | null;
1879
1879
  defaultSidebarDockedPreference: boolean;
1880
1880
  lastPointerDownWith: import("../element/types").PointerType;
1881
- selectedElementIds: {
1882
- [id: string]: boolean;
1883
- };
1881
+ selectedElementIds: Readonly<{
1882
+ [id: string]: true;
1883
+ }>;
1884
1884
  previousSelectedElementIds: {
1885
- [id: string]: boolean;
1885
+ [id: string]: true;
1886
1886
  };
1887
1887
  selectedElementsAreBeingDragged: boolean;
1888
1888
  shouldCacheIgnoreZoom: boolean;
@@ -84,11 +84,11 @@ export declare const actionCopyStyles: {
84
84
  openDialog: "imageExport" | "help" | "jsonExport" | null;
85
85
  defaultSidebarDockedPreference: boolean;
86
86
  lastPointerDownWith: import("../element/types").PointerType;
87
- selectedElementIds: {
88
- [id: string]: boolean;
89
- };
87
+ selectedElementIds: Readonly<{
88
+ [id: string]: true;
89
+ }>;
90
90
  previousSelectedElementIds: {
91
- [id: string]: boolean;
91
+ [id: string]: true;
92
92
  };
93
93
  selectedElementsAreBeingDragged: boolean;
94
94
  shouldCacheIgnoreZoom: boolean;
@@ -84,11 +84,11 @@ export declare const actionToggleGridMode: {
84
84
  openDialog: "imageExport" | "help" | "jsonExport" | null;
85
85
  defaultSidebarDockedPreference: boolean;
86
86
  lastPointerDownWith: import("../element/types").PointerType;
87
- selectedElementIds: {
88
- [id: string]: boolean;
89
- };
87
+ selectedElementIds: Readonly<{
88
+ [id: string]: true;
89
+ }>;
90
90
  previousSelectedElementIds: {
91
- [id: string]: boolean;
91
+ [id: string]: true;
92
92
  };
93
93
  selectedElementsAreBeingDragged: boolean;
94
94
  shouldCacheIgnoreZoom: boolean;
@@ -82,11 +82,11 @@ export declare const actionToggleStats: {
82
82
  openDialog: "imageExport" | "help" | "jsonExport" | null;
83
83
  defaultSidebarDockedPreference: boolean;
84
84
  lastPointerDownWith: import("../element/types").PointerType;
85
- selectedElementIds: {
86
- [id: string]: boolean;
87
- };
85
+ selectedElementIds: Readonly<{
86
+ [id: string]: true;
87
+ }>;
88
88
  previousSelectedElementIds: {
89
- [id: string]: boolean;
89
+ [id: string]: true;
90
90
  };
91
91
  selectedElementsAreBeingDragged: boolean;
92
92
  shouldCacheIgnoreZoom: boolean;
@@ -83,11 +83,11 @@ export declare const actionToggleViewMode: {
83
83
  openDialog: "imageExport" | "help" | "jsonExport" | null;
84
84
  defaultSidebarDockedPreference: boolean;
85
85
  lastPointerDownWith: import("../element/types").PointerType;
86
- selectedElementIds: {
87
- [id: string]: boolean;
88
- };
86
+ selectedElementIds: Readonly<{
87
+ [id: string]: true;
88
+ }>;
89
89
  previousSelectedElementIds: {
90
- [id: string]: boolean;
90
+ [id: string]: true;
91
91
  };
92
92
  selectedElementsAreBeingDragged: boolean;
93
93
  shouldCacheIgnoreZoom: boolean;
@@ -83,11 +83,11 @@ export declare const actionToggleZenMode: {
83
83
  openDialog: "imageExport" | "help" | "jsonExport" | null;
84
84
  defaultSidebarDockedPreference: boolean;
85
85
  lastPointerDownWith: import("../element/types").PointerType;
86
- selectedElementIds: {
87
- [id: string]: boolean;
88
- };
86
+ selectedElementIds: Readonly<{
87
+ [id: string]: true;
88
+ }>;
89
89
  previousSelectedElementIds: {
90
- [id: string]: boolean;
90
+ [id: string]: true;
91
91
  };
92
92
  selectedElementsAreBeingDragged: boolean;
93
93
  shouldCacheIgnoreZoom: boolean;
@@ -48,11 +48,11 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
48
48
  } | null | undefined;
49
49
  defaultSidebarDockedPreference?: boolean | undefined;
50
50
  lastPointerDownWith?: import("./element/types").PointerType | undefined;
51
- selectedElementIds?: {
52
- [id: string]: boolean;
53
- } | undefined;
51
+ selectedElementIds?: Readonly<{
52
+ [id: string]: true;
53
+ }> | undefined;
54
54
  previousSelectedElementIds?: {
55
- [id: string]: boolean;
55
+ [id: string]: true;
56
56
  } | undefined;
57
57
  shouldCacheIgnoreZoom?: boolean | undefined;
58
58
  zenModeEnabled?: boolean | undefined;
@@ -94,11 +94,11 @@ export declare const actionLink: {
94
94
  openDialog: "imageExport" | "help" | "jsonExport" | null;
95
95
  defaultSidebarDockedPreference: boolean;
96
96
  lastPointerDownWith: import("./types").PointerType;
97
- selectedElementIds: {
98
- [id: string]: boolean;
99
- };
97
+ selectedElementIds: Readonly<{
98
+ [id: string]: true;
99
+ }>;
100
100
  previousSelectedElementIds: {
101
- [id: string]: boolean;
101
+ [id: string]: true;
102
102
  };
103
103
  selectedElementsAreBeingDragged: boolean;
104
104
  shouldCacheIgnoreZoom: boolean;
@@ -95,11 +95,11 @@ export declare const actionSetIFrameAsActiveTool: {
95
95
  openDialog: "imageExport" | "help" | "jsonExport" | null;
96
96
  defaultSidebarDockedPreference: boolean;
97
97
  lastPointerDownWith: import("./types").PointerType;
98
- selectedElementIds: {
99
- [id: string]: boolean;
100
- };
98
+ selectedElementIds: Readonly<{
99
+ [id: string]: true;
100
+ }>;
101
101
  previousSelectedElementIds: {
102
- [id: string]: boolean;
102
+ [id: string]: true;
103
103
  };
104
104
  selectedElementsAreBeingDragged: boolean;
105
105
  shouldCacheIgnoreZoom: boolean;
@@ -196,11 +196,11 @@ export declare class LinearElementEditor {
196
196
  openDialog: "imageExport" | "help" | "jsonExport" | null;
197
197
  defaultSidebarDockedPreference: boolean;
198
198
  lastPointerDownWith: import("./types").PointerType;
199
- selectedElementIds: {
200
- [id: string]: boolean;
201
- };
199
+ selectedElementIds: Readonly<{
200
+ [id: string]: true;
201
+ }>;
202
202
  previousSelectedElementIds: {
203
- [id: string]: boolean;
203
+ [id: string]: true;
204
204
  };
205
205
  selectedElementsAreBeingDragged: boolean;
206
206
  shouldCacheIgnoreZoom: boolean;
package/types/groups.d.ts CHANGED
@@ -12,7 +12,7 @@ export declare const getSelectedGroupIds: (appState: AppState) => GroupId[];
12
12
  * When you select an element, you often want to actually select the whole group it's in, unless
13
13
  * you're currently editing that group.
14
14
  */
15
- export declare const selectGroupsForSelectedElements: (appState: AppState, elements: readonly NonDeleted<ExcalidrawElement>[]) => AppState;
15
+ export declare const selectGroupsForSelectedElements: (appState: AppState, elements: readonly NonDeleted<ExcalidrawElement>[], prevAppState: AppState) => AppState;
16
16
  export declare const selectGroupsFromGivenElements: (elements: readonly NonDeleted<ExcalidrawElement>[], appState: AppState) => {
17
17
  [groupId: string]: boolean;
18
18
  };
@@ -5,9 +5,9 @@ export interface HistoryEntry {
5
5
  elements: ExcalidrawElement[];
6
6
  }
7
7
  declare const clearAppStatePropertiesForHistory: (appState: AppState) => {
8
- selectedElementIds: {
9
- [id: string]: boolean;
10
- };
8
+ selectedElementIds: Readonly<{
9
+ [id: string]: true;
10
+ }>;
11
11
  selectedGroupIds: {
12
12
  [groupId: string]: boolean;
13
13
  };
@@ -8,7 +8,10 @@ import { AppState } from "../types";
8
8
  */
9
9
  export declare const excludeElementsInFramesFromSelection: <T extends ExcalidrawElement>(selectedElements: readonly T[]) => T[];
10
10
  export declare const getElementsWithinSelection: (elements: readonly NonDeletedExcalidrawElement[], selection: NonDeletedExcalidrawElement, excludeElementsInFrames?: boolean) => NonDeletedExcalidrawElement[];
11
- export declare const isSomeElementSelected: (elements: readonly NonDeletedExcalidrawElement[], appState: Pick<AppState, "selectedElementIds">) => boolean;
11
+ export declare const isSomeElementSelected: {
12
+ (elements: readonly NonDeletedExcalidrawElement[], appState: Pick<AppState, "selectedElementIds">): boolean;
13
+ clearCache(): void;
14
+ };
12
15
  /**
13
16
  * Returns common attribute (picked by `getAttribute` callback) of selected
14
17
  * elements. If elements don't share the same value, returns `null`.
@@ -19,3 +22,10 @@ export declare const getSelectedElements: (elements: readonly NonDeletedExcalidr
19
22
  includeElementsInFrames?: boolean;
20
23
  }) => ExcalidrawElement[];
21
24
  export declare const getTargetElements: (elements: readonly NonDeletedExcalidrawElement[], appState: Pick<AppState, "selectedElementIds" | "editingElement">) => ExcalidrawElement[];
25
+ /**
26
+ * returns prevState's selectedElementids if no change from previous, so as to
27
+ * retain reference identity for memoization
28
+ */
29
+ export declare const makeNextSelectedElementIds: (nextSelectedElementIds: AppState["selectedElementIds"], prevState: Pick<AppState, "selectedElementIds">) => Readonly<{
30
+ [id: string]: true;
31
+ }>;
package/types/types.d.ts CHANGED
@@ -150,11 +150,11 @@ export type AppState = {
150
150
  */
151
151
  defaultSidebarDockedPreference: boolean;
152
152
  lastPointerDownWith: PointerType;
153
- selectedElementIds: {
154
- [id: string]: boolean;
155
- };
153
+ selectedElementIds: Readonly<{
154
+ [id: string]: true;
155
+ }>;
156
156
  previousSelectedElementIds: {
157
- [id: string]: boolean;
157
+ [id: string]: true;
158
158
  };
159
159
  selectedElementsAreBeingDragged: boolean;
160
160
  shouldCacheIgnoreZoom: boolean;