@excalidraw/excalidraw 0.17.1-7441-cc6868c → 0.17.1-7441-0269e5a

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 (142) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/dist/browser/excalidraw-assets/{ar-SA-O4ZYAXHV.js → ar-SA-ZG4GMNKR.js} +1 -1
  3. package/dist/browser/excalidraw-assets/{az-AZ-RBGCVZSU.js → az-AZ-5QPIG4ZE.js} +1 -1
  4. package/dist/browser/excalidraw-assets/{bg-BG-27JU7ZTW.js → bg-BG-GWMMOXVZ.js} +1 -1
  5. package/dist/browser/excalidraw-assets/{bn-BD-YI5COLVX.js → bn-BD-FFLR3TNM.js} +1 -1
  6. package/dist/browser/excalidraw-assets/{c4Diagram-9cddb37f-M7FQCEGJ.js → c4Diagram-9cddb37f-DT3MBRIQ.js} +4 -4
  7. package/dist/browser/excalidraw-assets/{ca-ES-OT3NLCX2.js → ca-ES-7TTPSWTV.js} +1 -1
  8. package/dist/browser/excalidraw-assets/{chunk-Y73ZIZF2.js → chunk-2H6Q3UHB.js} +21 -21
  9. package/dist/browser/excalidraw-assets/{chunk-I7D3YGSV.js → chunk-5XVKPBR4.js} +1 -1
  10. package/dist/browser/excalidraw-assets/{chunk-EC7D42UC.js → chunk-67KWAPOR.js} +4 -4
  11. package/dist/browser/excalidraw-assets/{chunk-VFCK2VL6.js → chunk-AZELGDJ7.js} +3 -3
  12. package/dist/browser/excalidraw-assets/{chunk-KBSJWTUC.js → chunk-E67NG25X.js} +3 -3
  13. package/dist/browser/excalidraw-assets/{chunk-VJ4TJS2Y.js → chunk-ED7FCLMV.js} +3 -3
  14. package/dist/browser/excalidraw-assets/{chunk-YS3YHKSV.js → chunk-HG4GCABW.js} +7 -0
  15. package/dist/browser/excalidraw-assets/{chunk-PZKJ4HUG.js → chunk-K5VM6ZHC.js} +6 -6
  16. package/dist/browser/excalidraw-assets/{chunk-4RBOPRHV.js → chunk-L5BPE74O.js} +2 -2
  17. package/dist/browser/excalidraw-assets/{chunk-AB4DRNTX.js → chunk-OJAFOQ6I.js} +5 -5
  18. package/dist/browser/excalidraw-assets/{chunk-NUFRJSGA.js → chunk-RFZOXM2P.js} +3 -3
  19. package/dist/browser/excalidraw-assets/{chunk-Q5V3XSEB.js → chunk-T7PKCJTJ.js} +13 -1
  20. package/dist/browser/excalidraw-assets/{chunk-RRTDSCW5.js → chunk-UZYJGJH5.js} +2 -2
  21. package/dist/browser/excalidraw-assets/{chunk-C3WE7537.js → chunk-V52YQ6TH.js} +600 -172
  22. package/dist/browser/excalidraw-assets/{chunk-OBSLEQVG.js → chunk-YCSAT77X.js} +2 -2
  23. package/dist/browser/excalidraw-assets/{chunk-MDHEUGIE.js → chunk-YVMHRGYC.js} +2 -2
  24. package/dist/browser/excalidraw-assets/{classDiagram-bc733c3b-ILLIUUCV.js → classDiagram-bc733c3b-ADGQD5FE.js} +7 -7
  25. package/dist/browser/excalidraw-assets/{classDiagram-v2-8931bdaf-U7JETC6T.js → classDiagram-v2-8931bdaf-LQUNAO5F.js} +10 -10
  26. package/dist/browser/excalidraw-assets/{cs-CZ-VWNS2EBL.js → cs-CZ-ZBCV22AJ.js} +1 -1
  27. package/dist/browser/excalidraw-assets/{da-DK-ZSZISCYL.js → da-DK-Q4T27BFS.js} +1 -1
  28. package/dist/browser/excalidraw-assets/{de-DE-NGG5BQQU.js → de-DE-MBK4JIXX.js} +1 -1
  29. package/dist/browser/excalidraw-assets/{directory-open-01563666-OUEPAD2B.js → directory-open-01563666-XGWD52SG.js} +2 -2
  30. package/dist/browser/excalidraw-assets/{directory-open-4ed118d0-3YEXHCYQ.js → directory-open-4ed118d0-CW2C2TU4.js} +2 -2
  31. package/dist/browser/excalidraw-assets/{dist-YSQXM7F6.js → dist-GMU63VF7.js} +3 -3
  32. package/dist/browser/excalidraw-assets/{el-GR-WZRPRHPI.js → el-GR-4IO54FJG.js} +1 -1
  33. package/dist/browser/excalidraw-assets/{en-Y3Y5PHTH.js → en-6HNFHSKB.js} +4 -2
  34. package/dist/browser/excalidraw-assets/{erDiagram-f6946109-MARB7LUI.js → erDiagram-f6946109-LOZPUYNA.js} +5 -5
  35. package/dist/browser/excalidraw-assets/{es-ES-J4OESQ2T.js → es-ES-RTNHOKI6.js} +1 -1
  36. package/dist/browser/excalidraw-assets/{eu-ES-JIOSKIEU.js → eu-ES-IPUNFIRV.js} +1 -1
  37. package/dist/browser/excalidraw-assets/{fa-IR-KEVEW3J2.js → fa-IR-AFOLD64G.js} +1 -1
  38. package/dist/browser/excalidraw-assets/{fi-FI-VHWIPZNU.js → fi-FI-YDIGP7ED.js} +1 -1
  39. package/dist/browser/excalidraw-assets/{file-open-002ab408-YC7KQ7M7.js → file-open-002ab408-XIZJR36E.js} +2 -2
  40. package/dist/browser/excalidraw-assets/{file-open-7c801643-GRK3M4FM.js → file-open-7c801643-YIZPMU4W.js} +2 -2
  41. package/dist/browser/excalidraw-assets/{file-save-3189631c-XOSH6LGE.js → file-save-3189631c-BQMBD5TV.js} +2 -2
  42. package/dist/browser/excalidraw-assets/{file-save-745eba88-HT2N2RA6.js → file-save-745eba88-MWPDJIMB.js} +2 -2
  43. package/dist/browser/excalidraw-assets/{flowDiagram-93327f21-QAR7MBV2.js → flowDiagram-93327f21-IG42SU5S.js} +11 -11
  44. package/dist/browser/excalidraw-assets/{flowDiagram-v2-476db779-NRWK544J.js → flowDiagram-v2-476db779-Y67G2FM7.js} +11 -11
  45. package/dist/browser/excalidraw-assets/{flowchart-elk-definition-5082a990-YKT6KRH3.js → flowchart-elk-definition-5082a990-N6NGIBWD.js} +8 -8
  46. package/dist/browser/excalidraw-assets/{fr-FR-6IOJIJYL.js → fr-FR-DKTDAJMV.js} +1 -1
  47. package/dist/browser/excalidraw-assets/{ganttDiagram-7ce12d6b-TETXDXSS.js → ganttDiagram-7ce12d6b-QM7W7H3I.js} +3 -3
  48. package/dist/browser/excalidraw-assets/{gitGraphDiagram-1e960c50-KJ53NSM2.js → gitGraphDiagram-1e960c50-EKEGNJUG.js} +3 -3
  49. package/dist/browser/excalidraw-assets/{gl-ES-GLS3MPGJ.js → gl-ES-KAW5CTCB.js} +1 -1
  50. package/dist/browser/excalidraw-assets/{he-IL-PES5HNTH.js → he-IL-XFQ6PZWN.js} +1 -1
  51. package/dist/browser/excalidraw-assets/{hi-IN-KJ5CDJGW.js → hi-IN-CJGZ2R72.js} +1 -1
  52. package/dist/browser/excalidraw-assets/{hu-HU-Y4JXQDS4.js → hu-HU-LH67LOY3.js} +1 -1
  53. package/dist/browser/excalidraw-assets/{id-ID-DA5FA6OL.js → id-ID-L6Y7PWWN.js} +1 -1
  54. package/dist/browser/excalidraw-assets/{image-TP5JGDPK.css → image-2MHILQWB.css} +193 -2
  55. package/dist/browser/excalidraw-assets/{image-DBNYVO3T.js → image-MZHH7VY4.js} +4 -4
  56. package/dist/browser/excalidraw-assets/{image-blob-reduce.esm-EBROP3TW.js → image-blob-reduce.esm-5RGBO4BD.js} +2 -2
  57. package/dist/browser/excalidraw-assets/{infoDiagram-264bed3e-EX4AYPQQ.js → infoDiagram-264bed3e-DGYH27DL.js} +3 -3
  58. package/dist/browser/excalidraw-assets/{it-IT-BNXL4CYY.js → it-IT-NYW7ZXIC.js} +1 -1
  59. package/dist/browser/excalidraw-assets/{ja-JP-MNWVRFQD.js → ja-JP-PTAJBPX4.js} +1 -1
  60. package/dist/browser/excalidraw-assets/{journeyDiagram-31be0096-Y6RLBNJ4.js → journeyDiagram-31be0096-MOV4SXUQ.js} +4 -4
  61. package/dist/browser/excalidraw-assets/{kaa-MGHZRJX2.js → kaa-WXJRXWPF.js} +1 -1
  62. package/dist/browser/excalidraw-assets/{kab-KAB-JIMEPM6B.js → kab-KAB-ODUQXY6X.js} +1 -1
  63. package/dist/browser/excalidraw-assets/{kk-KZ-34LQGHKY.js → kk-KZ-UXGGFOE5.js} +1 -1
  64. package/dist/browser/excalidraw-assets/{km-KH-ASWPZXSX.js → km-KH-KH42MBCX.js} +1 -1
  65. package/dist/browser/excalidraw-assets/{ko-KR-TSJPRBBT.js → ko-KR-OK4WMN6E.js} +1 -1
  66. package/dist/browser/excalidraw-assets/{ku-TR-PNP7OOUH.js → ku-TR-I6JF7FTE.js} +1 -1
  67. package/dist/browser/excalidraw-assets/{lt-LT-OYI4CUPY.js → lt-LT-MRDJ3W6M.js} +1 -1
  68. package/dist/browser/excalidraw-assets/{lv-LV-UIBLRKLP.js → lv-LV-GUHKIRYT.js} +1 -1
  69. package/dist/browser/excalidraw-assets/{mindmap-definition-4fc2557c-BODO5LN7.js → mindmap-definition-4fc2557c-QD6CUNYL.js} +4 -4
  70. package/dist/browser/excalidraw-assets/{mr-IN-L2APYGBG.js → mr-IN-2VY5ATS4.js} +1 -1
  71. package/dist/browser/excalidraw-assets/{my-MM-75U3VCOE.js → my-MM-Q3UE7NDU.js} +1 -1
  72. package/dist/browser/excalidraw-assets/{nb-NO-NM6ZQSU6.js → nb-NO-YGVSWPTU.js} +1 -1
  73. package/dist/browser/excalidraw-assets/{nl-NL-D6PK3GH3.js → nl-NL-JYQZFVD6.js} +1 -1
  74. package/dist/browser/excalidraw-assets/{nn-NO-BNIHWH3L.js → nn-NO-SVCTK45S.js} +1 -1
  75. package/dist/browser/excalidraw-assets/{oc-FR-LCRUD5LT.js → oc-FR-7S4GZ53C.js} +1 -1
  76. package/dist/browser/excalidraw-assets/{pa-IN-STXLKWNM.js → pa-IN-OAXG5ILZ.js} +1 -1
  77. package/dist/browser/excalidraw-assets/{percentages-7OAWRSFY.js → percentages-G7XJNZNY.js} +1 -1
  78. package/dist/browser/excalidraw-assets/{pica-UY2E6YV3.js → pica-3M7LI2AU.js} +2 -2
  79. package/dist/browser/excalidraw-assets/{pieDiagram-157505fe-TR3EKKEP.js → pieDiagram-157505fe-THFWR2W3.js} +3 -3
  80. package/dist/browser/excalidraw-assets/{pl-PL-3XM5C6BE.js → pl-PL-4LOCCO6A.js} +1 -1
  81. package/dist/browser/excalidraw-assets/{pt-BR-PCB5M6Q5.js → pt-BR-UE7QKZT7.js} +1 -1
  82. package/dist/browser/excalidraw-assets/{pt-PT-JKKOIWOA.js → pt-PT-QRYXWDEQ.js} +1 -1
  83. package/dist/browser/excalidraw-assets/{quadrantDiagram-fd70f2d0-II72YD6R.js → quadrantDiagram-fd70f2d0-PM7WE6V7.js} +3 -3
  84. package/dist/browser/excalidraw-assets/{requirementDiagram-19c99588-KQYIFNAJ.js → requirementDiagram-19c99588-VQ7AQGMD.js} +5 -5
  85. package/dist/browser/excalidraw-assets/{ro-RO-CRH2KIPB.js → ro-RO-S6UM3GTE.js} +1 -1
  86. package/dist/browser/excalidraw-assets/{ru-RU-QBGPUX6G.js → ru-RU-X3LZJ2PM.js} +1 -1
  87. package/dist/browser/excalidraw-assets/{sequenceDiagram-5dfd0049-25L3RXZD.js → sequenceDiagram-5dfd0049-7VLXNLQB.js} +4 -4
  88. package/dist/browser/excalidraw-assets/{si-LK-3SZOS2BL.js → si-LK-47EZ7CDR.js} +1 -1
  89. package/dist/browser/excalidraw-assets/{sk-SK-J3IRFPPI.js → sk-SK-BZTESEQ3.js} +1 -1
  90. package/dist/browser/excalidraw-assets/{sl-SI-XMEM4DG7.js → sl-SI-UKPT7XYH.js} +1 -1
  91. package/dist/browser/excalidraw-assets/{stateDiagram-133e3642-BOXZPPAP.js → stateDiagram-133e3642-TFVBMKD2.js} +6 -6
  92. package/dist/browser/excalidraw-assets/{stateDiagram-v2-6371a76b-UE67H35B.js → stateDiagram-v2-6371a76b-HLD2VAQC.js} +10 -10
  93. package/dist/browser/excalidraw-assets/{sv-SE-ANRZHTXG.js → sv-SE-QCQFH645.js} +1 -1
  94. package/dist/browser/excalidraw-assets/{ta-IN-YQ3TKMCX.js → ta-IN-VVBM4WJT.js} +1 -1
  95. package/dist/browser/excalidraw-assets/{th-TH-SQW3PVEH.js → th-TH-7BH7SJAO.js} +1 -1
  96. package/dist/browser/excalidraw-assets/{timeline-definition-5ed366f4-VSVFFB5S.js → timeline-definition-5ed366f4-36TJ7JFQ.js} +3 -3
  97. package/dist/browser/excalidraw-assets/{tr-TR-KUEQIRHA.js → tr-TR-PSQK5I6C.js} +1 -1
  98. package/dist/browser/excalidraw-assets/{uk-UA-LHOOITZN.js → uk-UA-SPVEJS7T.js} +1 -1
  99. package/dist/browser/excalidraw-assets/{vi-VN-A6OAOG4Q.js → vi-VN-KIIQDQET.js} +1 -1
  100. package/dist/browser/excalidraw-assets/{zh-CN-TKODMXQV.js → zh-CN-6PVTYMG5.js} +1 -1
  101. package/dist/browser/excalidraw-assets/{zh-HK-3KKLKRDR.js → zh-HK-V2KK262G.js} +1 -1
  102. package/dist/browser/excalidraw-assets/{zh-TW-SN3SAI3Y.js → zh-TW-VYIR3NM2.js} +1 -1
  103. package/dist/browser/index.css +193 -2
  104. package/dist/browser/index.js +10 -6
  105. package/dist/index.css +193 -2
  106. package/dist/index.js +29488 -861
  107. package/package.json +2 -2
  108. package/types/excalidraw/actions/actionAddToLibrary.d.ts +57 -3
  109. package/types/excalidraw/actions/actionBoundText.d.ts +38 -2
  110. package/types/excalidraw/actions/actionCanvas.d.ts +367 -11
  111. package/types/excalidraw/actions/actionClipboard.d.ts +133 -7
  112. package/types/excalidraw/actions/actionDeleteSelected.d.ts +57 -3
  113. package/types/excalidraw/actions/actionElementLock.d.ts +38 -2
  114. package/types/excalidraw/actions/actionExport.d.ts +171 -9
  115. package/types/excalidraw/actions/actionFinalize.d.ts +38 -2
  116. package/types/excalidraw/actions/actionFrame.d.ts +57 -3
  117. package/types/excalidraw/actions/actionGroup.d.ts +38 -2
  118. package/types/excalidraw/actions/actionLinearEditor.d.ts +19 -1
  119. package/types/excalidraw/actions/actionMenu.d.ts +57 -3
  120. package/types/excalidraw/actions/actionNavigate.d.ts +302 -3
  121. package/types/excalidraw/actions/actionProperties.d.ts +247 -13
  122. package/types/excalidraw/actions/actionSelectAll.d.ts +19 -1
  123. package/types/excalidraw/actions/actionStyles.d.ts +19 -1
  124. package/types/excalidraw/actions/actionToggleGridMode.d.ts +19 -1
  125. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +19 -1
  126. package/types/excalidraw/actions/actionToggleStats.d.ts +19 -1
  127. package/types/excalidraw/actions/actionToggleViewMode.d.ts +19 -1
  128. package/types/excalidraw/actions/actionToggleZenMode.d.ts +19 -1
  129. package/types/excalidraw/actions/types.d.ts +1 -1
  130. package/types/excalidraw/components/App.d.ts +7 -2
  131. package/types/excalidraw/components/Avatar.d.ts +3 -1
  132. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +11 -0
  133. package/types/excalidraw/components/Tooltip.d.ts +2 -1
  134. package/types/excalidraw/components/UserList.d.ts +18 -4
  135. package/types/excalidraw/components/icons.d.ts +1 -0
  136. package/types/excalidraw/element/Hyperlink.d.ts +19 -1
  137. package/types/excalidraw/element/bounds.d.ts +14 -1
  138. package/types/excalidraw/element/embeddable.d.ts +19 -1
  139. package/types/excalidraw/element/linearElementEditor.d.ts +20 -2
  140. package/types/excalidraw/index.d.ts +2 -1
  141. package/types/excalidraw/types.d.ts +25 -5
  142. package/types/excalidraw/utils.d.ts +10 -1
@@ -1,6 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { ExcalidrawElement } from "../element/types";
3
3
  import { AppState, NormalizedZoomValue } from "../types";
4
+ import { SceneBounds } from "../element/bounds";
4
5
  export declare const actionChangeViewBackgroundColor: {
5
6
  name: "changeViewBackgroundColor";
6
7
  trackEvent: false;
@@ -135,7 +136,23 @@ export declare const actionClearCanvas: {
135
136
  };
136
137
  editingGroupId: string | null;
137
138
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
138
- collaborators: Map<string, import("../types").Collaborator>;
139
+ collaborators: Map<import("../types").SocketId, Readonly<{
140
+ pointer?: import("../types").CollaboratorPointer | undefined;
141
+ button?: "up" | "down" | undefined;
142
+ selectedElementIds?: Readonly<{
143
+ [id: string]: true;
144
+ }> | undefined;
145
+ username?: string | null | undefined;
146
+ userState?: import("../types").UserIdleState | undefined;
147
+ color?: {
148
+ background: string;
149
+ stroke: string;
150
+ } | undefined;
151
+ avatarUrl?: string | undefined;
152
+ id?: string | undefined;
153
+ socketId?: import("../types").SocketId | undefined;
154
+ isCurrentUser?: boolean | undefined;
155
+ }>>;
139
156
  currentChartType: import("../element/types").ChartType;
140
157
  pendingImageElementId: string | null;
141
158
  showHyperlinkPopup: false | "editor" | "info";
@@ -146,6 +163,8 @@ export declare const actionClearCanvas: {
146
163
  y: number;
147
164
  } | null;
148
165
  objectsSnapModeEnabled: boolean;
166
+ userToFollow: import("../types").UserToFollow | null;
167
+ followedBy: Set<import("../types").SocketId>;
149
168
  };
150
169
  commitToHistory: true;
151
170
  };
@@ -160,6 +179,7 @@ export declare const actionZoomIn: {
160
179
  };
161
180
  perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
162
181
  appState: {
182
+ userToFollow: null;
163
183
  scrollX: number;
164
184
  scrollY: number;
165
185
  zoom: {
@@ -268,7 +288,23 @@ export declare const actionZoomIn: {
268
288
  offsetTop: number;
269
289
  offsetLeft: number;
270
290
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
271
- collaborators: Map<string, import("../types").Collaborator>;
291
+ collaborators: Map<import("../types").SocketId, Readonly<{
292
+ pointer?: import("../types").CollaboratorPointer | undefined;
293
+ button?: "up" | "down" | undefined;
294
+ selectedElementIds?: Readonly<{
295
+ [id: string]: true;
296
+ }> | undefined;
297
+ username?: string | null | undefined;
298
+ userState?: import("../types").UserIdleState | undefined;
299
+ color?: {
300
+ background: string;
301
+ stroke: string;
302
+ } | undefined;
303
+ avatarUrl?: string | undefined;
304
+ id?: string | undefined;
305
+ socketId?: import("../types").SocketId | undefined;
306
+ isCurrentUser?: boolean | undefined;
307
+ }>>;
272
308
  showStats: boolean;
273
309
  currentChartType: import("../element/types").ChartType;
274
310
  pasteDialog: {
@@ -287,6 +323,7 @@ export declare const actionZoomIn: {
287
323
  y: number;
288
324
  } | null;
289
325
  objectsSnapModeEnabled: boolean;
326
+ followedBy: Set<import("../types").SocketId>;
290
327
  };
291
328
  commitToHistory: false;
292
329
  };
@@ -303,6 +340,7 @@ export declare const actionZoomOut: {
303
340
  };
304
341
  perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
305
342
  appState: {
343
+ userToFollow: null;
306
344
  scrollX: number;
307
345
  scrollY: number;
308
346
  zoom: {
@@ -411,7 +449,23 @@ export declare const actionZoomOut: {
411
449
  offsetTop: number;
412
450
  offsetLeft: number;
413
451
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
414
- collaborators: Map<string, import("../types").Collaborator>;
452
+ collaborators: Map<import("../types").SocketId, Readonly<{
453
+ pointer?: import("../types").CollaboratorPointer | undefined;
454
+ button?: "up" | "down" | undefined;
455
+ selectedElementIds?: Readonly<{
456
+ [id: string]: true;
457
+ }> | undefined;
458
+ username?: string | null | undefined;
459
+ userState?: import("../types").UserIdleState | undefined;
460
+ color?: {
461
+ background: string;
462
+ stroke: string;
463
+ } | undefined;
464
+ avatarUrl?: string | undefined;
465
+ id?: string | undefined;
466
+ socketId?: import("../types").SocketId | undefined;
467
+ isCurrentUser?: boolean | undefined;
468
+ }>>;
415
469
  showStats: boolean;
416
470
  currentChartType: import("../element/types").ChartType;
417
471
  pasteDialog: {
@@ -430,6 +484,7 @@ export declare const actionZoomOut: {
430
484
  y: number;
431
485
  } | null;
432
486
  objectsSnapModeEnabled: boolean;
487
+ followedBy: Set<import("../types").SocketId>;
433
488
  };
434
489
  commitToHistory: false;
435
490
  };
@@ -446,6 +501,7 @@ export declare const actionResetZoom: {
446
501
  };
447
502
  perform: (_elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => {
448
503
  appState: {
504
+ userToFollow: null;
449
505
  scrollX: number;
450
506
  scrollY: number;
451
507
  zoom: {
@@ -554,7 +610,23 @@ export declare const actionResetZoom: {
554
610
  offsetTop: number;
555
611
  offsetLeft: number;
556
612
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
557
- collaborators: Map<string, import("../types").Collaborator>;
613
+ collaborators: Map<import("../types").SocketId, Readonly<{
614
+ pointer?: import("../types").CollaboratorPointer | undefined;
615
+ button?: "up" | "down" | undefined;
616
+ selectedElementIds?: Readonly<{
617
+ [id: string]: true;
618
+ }> | undefined;
619
+ username?: string | null | undefined;
620
+ userState?: import("../types").UserIdleState | undefined;
621
+ color?: {
622
+ background: string;
623
+ stroke: string;
624
+ } | undefined;
625
+ avatarUrl?: string | undefined;
626
+ id?: string | undefined;
627
+ socketId?: import("../types").SocketId | undefined;
628
+ isCurrentUser?: boolean | undefined;
629
+ }>>;
558
630
  showStats: boolean;
559
631
  currentChartType: import("../element/types").ChartType;
560
632
  pasteDialog: {
@@ -573,6 +645,7 @@ export declare const actionResetZoom: {
573
645
  y: number;
574
646
  } | null;
575
647
  objectsSnapModeEnabled: boolean;
648
+ followedBy: Set<import("../types").SocketId>;
576
649
  };
577
650
  commitToHistory: false;
578
651
  };
@@ -581,6 +654,163 @@ export declare const actionResetZoom: {
581
654
  } & {
582
655
  keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
583
656
  };
657
+ export declare const zoomToFitBounds: ({ bounds, appState, fitToViewport, viewportZoomFactor, }: {
658
+ bounds: SceneBounds;
659
+ appState: Readonly<AppState>;
660
+ /** whether to fit content to viewport (beyond >100%) */
661
+ fitToViewport: boolean;
662
+ /** zoom content to cover X of the viewport, when fitToViewport=true */
663
+ viewportZoomFactor?: number | undefined;
664
+ }) => {
665
+ appState: {
666
+ scrollX: number;
667
+ scrollY: number;
668
+ zoom: {
669
+ value: NormalizedZoomValue;
670
+ };
671
+ contextMenu: {
672
+ items: import("../components/ContextMenu").ContextMenuItems;
673
+ top: number;
674
+ left: number;
675
+ } | null;
676
+ showWelcomeScreen: boolean;
677
+ isLoading: boolean;
678
+ errorMessage: import("react").ReactNode;
679
+ activeEmbeddable: {
680
+ element: import("../element/types").NonDeletedExcalidrawElement;
681
+ state: "active" | "hover";
682
+ } | null;
683
+ draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
684
+ resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
685
+ multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
686
+ selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
687
+ isBindingEnabled: boolean;
688
+ startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
689
+ suggestedBindings: import("../element/binding").SuggestedBinding[];
690
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameLikeElement> | null;
691
+ frameRendering: {
692
+ enabled: boolean;
693
+ name: boolean;
694
+ outline: boolean;
695
+ clip: boolean;
696
+ };
697
+ editingFrame: string | null;
698
+ elementsToHighlight: import("../element/types").NonDeleted<ExcalidrawElement>[] | null;
699
+ editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
700
+ editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
701
+ activeTool: {
702
+ lastActiveTool: import("../types").ActiveTool | null;
703
+ locked: boolean;
704
+ } & import("../types").ActiveTool;
705
+ penMode: boolean;
706
+ penDetected: boolean;
707
+ exportBackground: boolean;
708
+ exportEmbedScene: boolean;
709
+ exportWithDarkMode: boolean;
710
+ exportScale: number;
711
+ currentItemStrokeColor: string;
712
+ currentItemBackgroundColor: string;
713
+ currentItemFillStyle: import("../element/types").FillStyle;
714
+ currentItemStrokeWidth: number;
715
+ currentItemStrokeStyle: import("../element/types").StrokeStyle;
716
+ currentItemRoughness: number;
717
+ currentItemOpacity: number;
718
+ currentItemFontFamily: number;
719
+ currentItemFontSize: number;
720
+ currentItemTextAlign: string;
721
+ currentItemStartArrowhead: import("../element/types").Arrowhead | null;
722
+ currentItemEndArrowhead: import("../element/types").Arrowhead | null;
723
+ currentItemRoundness: import("../element/types").StrokeRoundness;
724
+ viewBackgroundColor: string;
725
+ cursorButton: "up" | "down";
726
+ scrolledOutside: boolean;
727
+ name: string;
728
+ isResizing: boolean;
729
+ isRotating: boolean;
730
+ openMenu: "canvas" | "shape" | null;
731
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
732
+ openSidebar: {
733
+ name: string;
734
+ tab?: string | undefined;
735
+ } | null;
736
+ openDialog: {
737
+ name: "imageExport" | "help" | "jsonExport";
738
+ } | {
739
+ name: "settings";
740
+ source: "settings" | "tool" | "generation";
741
+ tab: "text-to-diagram" | "diagram-to-code";
742
+ } | {
743
+ name: "ttd";
744
+ tab: "mermaid" | "text-to-diagram";
745
+ } | null;
746
+ defaultSidebarDockedPreference: boolean;
747
+ lastPointerDownWith: import("../element/types").PointerType;
748
+ selectedElementIds: Readonly<{
749
+ [id: string]: true;
750
+ }>;
751
+ previousSelectedElementIds: {
752
+ [id: string]: true;
753
+ };
754
+ selectedElementsAreBeingDragged: boolean;
755
+ shouldCacheIgnoreZoom: boolean;
756
+ toast: {
757
+ message: string;
758
+ closable?: boolean | undefined;
759
+ duration?: number | undefined;
760
+ } | null;
761
+ zenModeEnabled: boolean;
762
+ theme: import("../element/types").Theme;
763
+ gridSize: number | null;
764
+ viewModeEnabled: boolean;
765
+ selectedGroupIds: {
766
+ [groupId: string]: boolean;
767
+ };
768
+ editingGroupId: string | null;
769
+ width: number;
770
+ height: number;
771
+ offsetTop: number;
772
+ offsetLeft: number;
773
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
774
+ collaborators: Map<import("../types").SocketId, Readonly<{
775
+ pointer?: import("../types").CollaboratorPointer | undefined;
776
+ button?: "up" | "down" | undefined;
777
+ selectedElementIds?: Readonly<{
778
+ [id: string]: true;
779
+ }> | undefined;
780
+ username?: string | null | undefined;
781
+ userState?: import("../types").UserIdleState | undefined;
782
+ color?: {
783
+ background: string;
784
+ stroke: string;
785
+ } | undefined;
786
+ avatarUrl?: string | undefined;
787
+ id?: string | undefined;
788
+ socketId?: import("../types").SocketId | undefined;
789
+ isCurrentUser?: boolean | undefined;
790
+ }>>;
791
+ showStats: boolean;
792
+ currentChartType: import("../element/types").ChartType;
793
+ pasteDialog: {
794
+ shown: false;
795
+ data: null;
796
+ } | {
797
+ shown: true;
798
+ data: import("../charts").Spreadsheet;
799
+ };
800
+ pendingImageElementId: string | null;
801
+ showHyperlinkPopup: false | "editor" | "info";
802
+ selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
803
+ snapLines: readonly import("../snapping").SnapLine[];
804
+ originSnapOffset: {
805
+ x: number;
806
+ y: number;
807
+ } | null;
808
+ objectsSnapModeEnabled: boolean;
809
+ userToFollow: import("../types").UserToFollow | null;
810
+ followedBy: Set<import("../types").SocketId>;
811
+ };
812
+ commitToHistory: boolean;
813
+ };
584
814
  export declare const zoomToFit: ({ targetElements, appState, fitToViewport, viewportZoomFactor, }: {
585
815
  targetElements: readonly ExcalidrawElement[];
586
816
  appState: Readonly<AppState>;
@@ -698,7 +928,23 @@ export declare const zoomToFit: ({ targetElements, appState, fitToViewport, view
698
928
  offsetTop: number;
699
929
  offsetLeft: number;
700
930
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
701
- collaborators: Map<string, import("../types").Collaborator>;
931
+ collaborators: Map<import("../types").SocketId, Readonly<{
932
+ pointer?: import("../types").CollaboratorPointer | undefined;
933
+ button?: "up" | "down" | undefined;
934
+ selectedElementIds?: Readonly<{
935
+ [id: string]: true;
936
+ }> | undefined;
937
+ username?: string | null | undefined;
938
+ userState?: import("../types").UserIdleState | undefined;
939
+ color?: {
940
+ background: string;
941
+ stroke: string;
942
+ } | undefined;
943
+ avatarUrl?: string | undefined;
944
+ id?: string | undefined;
945
+ socketId?: import("../types").SocketId | undefined;
946
+ isCurrentUser?: boolean | undefined;
947
+ }>>;
702
948
  showStats: boolean;
703
949
  currentChartType: import("../element/types").ChartType;
704
950
  pasteDialog: {
@@ -717,6 +963,8 @@ export declare const zoomToFit: ({ targetElements, appState, fitToViewport, view
717
963
  y: number;
718
964
  } | null;
719
965
  objectsSnapModeEnabled: boolean;
966
+ userToFollow: import("../types").UserToFollow | null;
967
+ followedBy: Set<import("../types").SocketId>;
720
968
  };
721
969
  commitToHistory: boolean;
722
970
  };
@@ -835,7 +1083,23 @@ export declare const actionZoomToFitSelectionInViewport: {
835
1083
  offsetTop: number;
836
1084
  offsetLeft: number;
837
1085
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
838
- collaborators: Map<string, import("../types").Collaborator>;
1086
+ collaborators: Map<import("../types").SocketId, Readonly<{
1087
+ pointer?: import("../types").CollaboratorPointer | undefined;
1088
+ button?: "up" | "down" | undefined;
1089
+ selectedElementIds?: Readonly<{
1090
+ [id: string]: true;
1091
+ }> | undefined;
1092
+ username?: string | null | undefined;
1093
+ userState?: import("../types").UserIdleState | undefined;
1094
+ color?: {
1095
+ background: string;
1096
+ stroke: string;
1097
+ } | undefined;
1098
+ avatarUrl?: string | undefined;
1099
+ id?: string | undefined;
1100
+ socketId?: import("../types").SocketId | undefined;
1101
+ isCurrentUser?: boolean | undefined;
1102
+ }>>;
839
1103
  showStats: boolean;
840
1104
  currentChartType: import("../element/types").ChartType;
841
1105
  pasteDialog: {
@@ -854,6 +1118,8 @@ export declare const actionZoomToFitSelectionInViewport: {
854
1118
  y: number;
855
1119
  } | null;
856
1120
  objectsSnapModeEnabled: boolean;
1121
+ userToFollow: import("../types").UserToFollow | null;
1122
+ followedBy: Set<import("../types").SocketId>;
857
1123
  };
858
1124
  commitToHistory: boolean;
859
1125
  };
@@ -976,7 +1242,23 @@ export declare const actionZoomToFitSelection: {
976
1242
  offsetTop: number;
977
1243
  offsetLeft: number;
978
1244
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
979
- collaborators: Map<string, import("../types").Collaborator>;
1245
+ collaborators: Map<import("../types").SocketId, Readonly<{
1246
+ pointer?: import("../types").CollaboratorPointer | undefined;
1247
+ button?: "up" | "down" | undefined;
1248
+ selectedElementIds?: Readonly<{
1249
+ [id: string]: true;
1250
+ }> | undefined;
1251
+ username?: string | null | undefined;
1252
+ userState?: import("../types").UserIdleState | undefined;
1253
+ color?: {
1254
+ background: string;
1255
+ stroke: string;
1256
+ } | undefined;
1257
+ avatarUrl?: string | undefined;
1258
+ id?: string | undefined;
1259
+ socketId?: import("../types").SocketId | undefined;
1260
+ isCurrentUser?: boolean | undefined;
1261
+ }>>;
980
1262
  showStats: boolean;
981
1263
  currentChartType: import("../element/types").ChartType;
982
1264
  pasteDialog: {
@@ -995,6 +1277,8 @@ export declare const actionZoomToFitSelection: {
995
1277
  y: number;
996
1278
  } | null;
997
1279
  objectsSnapModeEnabled: boolean;
1280
+ userToFollow: import("../types").UserToFollow | null;
1281
+ followedBy: Set<import("../types").SocketId>;
998
1282
  };
999
1283
  commitToHistory: boolean;
1000
1284
  };
@@ -1118,7 +1402,23 @@ export declare const actionZoomToFit: {
1118
1402
  offsetTop: number;
1119
1403
  offsetLeft: number;
1120
1404
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
1121
- collaborators: Map<string, import("../types").Collaborator>;
1405
+ collaborators: Map<import("../types").SocketId, Readonly<{
1406
+ pointer?: import("../types").CollaboratorPointer | undefined;
1407
+ button?: "up" | "down" | undefined;
1408
+ selectedElementIds?: Readonly<{
1409
+ [id: string]: true;
1410
+ }> | undefined;
1411
+ username?: string | null | undefined;
1412
+ userState?: import("../types").UserIdleState | undefined;
1413
+ color?: {
1414
+ background: string;
1415
+ stroke: string;
1416
+ } | undefined;
1417
+ avatarUrl?: string | undefined;
1418
+ id?: string | undefined;
1419
+ socketId?: import("../types").SocketId | undefined;
1420
+ isCurrentUser?: boolean | undefined;
1421
+ }>>;
1122
1422
  showStats: boolean;
1123
1423
  currentChartType: import("../element/types").ChartType;
1124
1424
  pasteDialog: {
@@ -1137,6 +1437,8 @@ export declare const actionZoomToFit: {
1137
1437
  y: number;
1138
1438
  } | null;
1139
1439
  objectsSnapModeEnabled: boolean;
1440
+ userToFollow: import("../types").UserToFollow | null;
1441
+ followedBy: Set<import("../types").SocketId>;
1140
1442
  };
1141
1443
  commitToHistory: boolean;
1142
1444
  };
@@ -1260,7 +1562,23 @@ export declare const actionToggleTheme: {
1260
1562
  offsetTop: number;
1261
1563
  offsetLeft: number;
1262
1564
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
1263
- collaborators: Map<string, import("../types").Collaborator>;
1565
+ collaborators: Map<import("../types").SocketId, Readonly<{
1566
+ pointer?: import("../types").CollaboratorPointer | undefined;
1567
+ button?: "up" | "down" | undefined;
1568
+ selectedElementIds?: Readonly<{
1569
+ [id: string]: true;
1570
+ }> | undefined;
1571
+ username?: string | null | undefined;
1572
+ userState?: import("../types").UserIdleState | undefined;
1573
+ color?: {
1574
+ background: string;
1575
+ stroke: string;
1576
+ } | undefined;
1577
+ avatarUrl?: string | undefined;
1578
+ id?: string | undefined;
1579
+ socketId?: import("../types").SocketId | undefined;
1580
+ isCurrentUser?: boolean | undefined;
1581
+ }>>;
1264
1582
  showStats: boolean;
1265
1583
  currentChartType: import("../element/types").ChartType;
1266
1584
  pasteDialog: {
@@ -1279,6 +1597,8 @@ export declare const actionToggleTheme: {
1279
1597
  y: number;
1280
1598
  } | null;
1281
1599
  objectsSnapModeEnabled: boolean;
1600
+ userToFollow: import("../types").UserToFollow | null;
1601
+ followedBy: Set<import("../types").SocketId>;
1282
1602
  };
1283
1603
  commitToHistory: false;
1284
1604
  };
@@ -1395,7 +1715,23 @@ export declare const actionToggleEraserTool: {
1395
1715
  offsetTop: number;
1396
1716
  offsetLeft: number;
1397
1717
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
1398
- collaborators: Map<string, import("../types").Collaborator>;
1718
+ collaborators: Map<import("../types").SocketId, Readonly<{
1719
+ pointer?: import("../types").CollaboratorPointer | undefined;
1720
+ button?: "up" | "down" | undefined;
1721
+ selectedElementIds?: Readonly<{
1722
+ [id: string]: true;
1723
+ }> | undefined;
1724
+ username?: string | null | undefined;
1725
+ userState?: import("../types").UserIdleState | undefined;
1726
+ color?: {
1727
+ background: string;
1728
+ stroke: string;
1729
+ } | undefined;
1730
+ avatarUrl?: string | undefined;
1731
+ id?: string | undefined;
1732
+ socketId?: import("../types").SocketId | undefined;
1733
+ isCurrentUser?: boolean | undefined;
1734
+ }>>;
1399
1735
  showStats: boolean;
1400
1736
  currentChartType: import("../element/types").ChartType;
1401
1737
  pasteDialog: {
@@ -1414,6 +1750,8 @@ export declare const actionToggleEraserTool: {
1414
1750
  y: number;
1415
1751
  } | null;
1416
1752
  objectsSnapModeEnabled: boolean;
1753
+ userToFollow: import("../types").UserToFollow | null;
1754
+ followedBy: Set<import("../types").SocketId>;
1417
1755
  };
1418
1756
  commitToHistory: true;
1419
1757
  };
@@ -1529,7 +1867,23 @@ export declare const actionToggleHandTool: {
1529
1867
  offsetTop: number;
1530
1868
  offsetLeft: number;
1531
1869
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
1532
- collaborators: Map<string, import("../types").Collaborator>;
1870
+ collaborators: Map<import("../types").SocketId, Readonly<{
1871
+ pointer?: import("../types").CollaboratorPointer | undefined;
1872
+ button?: "up" | "down" | undefined;
1873
+ selectedElementIds?: Readonly<{
1874
+ [id: string]: true;
1875
+ }> | undefined;
1876
+ username?: string | null | undefined;
1877
+ userState?: import("../types").UserIdleState | undefined;
1878
+ color?: {
1879
+ background: string;
1880
+ stroke: string;
1881
+ } | undefined;
1882
+ avatarUrl?: string | undefined;
1883
+ id?: string | undefined;
1884
+ socketId?: import("../types").SocketId | undefined;
1885
+ isCurrentUser?: boolean | undefined;
1886
+ }>>;
1533
1887
  showStats: boolean;
1534
1888
  currentChartType: import("../element/types").ChartType;
1535
1889
  pasteDialog: {
@@ -1548,6 +1902,8 @@ export declare const actionToggleHandTool: {
1548
1902
  y: number;
1549
1903
  } | null;
1550
1904
  objectsSnapModeEnabled: boolean;
1905
+ userToFollow: import("../types").UserToFollow | null;
1906
+ followedBy: Set<import("../types").SocketId>;
1551
1907
  };
1552
1908
  commitToHistory: true;
1553
1909
  };