@excalidraw/excalidraw 0.17.1-1d71f84 → 0.17.1-1ed53b1

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 (426) hide show
  1. package/CHANGELOG.md +14 -2
  2. package/dist/browser/dev/excalidraw-assets-dev/{blockDiagram-91b80b7a-ACFH36JV.js → blockDiagram-91b80b7a-H47FTXHA.js} +5 -5
  3. package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-b2a90758-QZ27YR47.js → c4Diagram-b2a90758-NNJK6GKC.js} +3 -3
  4. package/dist/browser/dev/excalidraw-assets-dev/{chunk-HO2HMSK7.js → chunk-4KQVEBHW.js} +3 -3
  5. package/dist/browser/dev/excalidraw-assets-dev/{chunk-USGV265L.js → chunk-53YI56GV.js} +4 -4
  6. package/dist/browser/dev/excalidraw-assets-dev/{chunk-EDFX3S7X.js → chunk-A2WCJI4I.js} +3 -3
  7. package/dist/browser/dev/excalidraw-assets-dev/{chunk-IX4V72YG.js → chunk-EFLPX7NE.js} +6 -6
  8. package/dist/browser/dev/excalidraw-assets-dev/{chunk-AK7SWNLN.js → chunk-JKPJV7MZ.js} +6 -4
  9. package/dist/browser/dev/excalidraw-assets-dev/chunk-JKPJV7MZ.js.map +7 -0
  10. package/dist/browser/dev/excalidraw-assets-dev/{chunk-MXVETLVM.js → chunk-JYIQCNWV.js} +2 -2
  11. package/dist/browser/dev/excalidraw-assets-dev/{chunk-YZIOORVX.js → chunk-LVIQQW6F.js} +2 -2
  12. package/dist/browser/dev/excalidraw-assets-dev/{chunk-RWZVJAQU.js → chunk-OKAZAA6U.js} +4494 -2647
  13. package/dist/browser/dev/excalidraw-assets-dev/chunk-OKAZAA6U.js.map +7 -0
  14. package/dist/browser/dev/excalidraw-assets-dev/{chunk-6U7GQNJT.js → chunk-PXLO3FOU.js} +2 -2
  15. package/dist/browser/dev/excalidraw-assets-dev/{chunk-7DACDEY3.js → chunk-TO2AW5PW.js} +2 -2
  16. package/dist/browser/dev/excalidraw-assets-dev/{chunk-NJ77ZFNJ.js → chunk-VURILHLY.js} +2 -2
  17. package/dist/browser/dev/excalidraw-assets-dev/{chunk-2T2GU7NF.js → chunk-ZAYGSUHF.js} +2 -2
  18. package/dist/browser/dev/excalidraw-assets-dev/{chunk-Z3PH3V2B.js → chunk-ZQR5ML6Y.js} +26 -26
  19. package/dist/browser/dev/excalidraw-assets-dev/chunk-ZQR5ML6Y.js.map +7 -0
  20. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-30eddba6-QSLMH4JW.js → classDiagram-30eddba6-CUYIJICN.js} +5 -5
  21. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-f2df5561-DY4DYQ5P.js → classDiagram-v2-f2df5561-K6WW6K73.js} +8 -8
  22. package/dist/browser/dev/excalidraw-assets-dev/{dist-Z46EOVOL.js → dist-ITJNUBZF.js} +2 -2
  23. package/dist/browser/dev/excalidraw-assets-dev/{en-5TCZHGGJ.js → en-BF4XUPIZ.js} +2 -2
  24. package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-47591fe2-SOOJRTCB.js → erDiagram-47591fe2-XGAD7EEP.js} +4 -4
  25. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-5540d9b9-AHGL4KPK.js → flowDiagram-5540d9b9-B6EOVNNO.js} +9 -9
  26. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-3b53844e-56LDZZWY.js → flowDiagram-v2-3b53844e-NUG24FJH.js} +9 -9
  27. package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5fe447d6-27LUKRI6.js → flowchart-elk-definition-5fe447d6-25Y7PCBL.js} +5 -5
  28. package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-9a3bba1f-EHGYGNG6.js → ganttDiagram-9a3bba1f-GNL6ZDTC.js} +2 -2
  29. package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-96e6b4ee-AJQNBDW5.js → gitGraphDiagram-96e6b4ee-HNW52NVO.js} +2 -2
  30. package/dist/browser/dev/excalidraw-assets-dev/{image-EDKQZH7Z.js → image-LVS32KQQ.js} +2 -2
  31. package/dist/browser/dev/excalidraw-assets-dev/{image-OFRRV5MB.css → image-O66MQ7WQ.css} +1 -1
  32. package/dist/browser/dev/excalidraw-assets-dev/image-O66MQ7WQ.css.map +7 -0
  33. package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-bcd20f53-SWLLQVES.js → infoDiagram-bcd20f53-FWEUVFLT.js} +2 -2
  34. package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-4fe6b3dc-7UAVCWOZ.js → journeyDiagram-4fe6b3dc-RZIUI7UG.js} +3 -3
  35. package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-f354de21-SROW5KGM.js → mindmap-definition-f354de21-GBVN45GU.js} +3 -3
  36. package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-79897490-QKCI6NCB.js → pieDiagram-79897490-ECENNII6.js} +2 -2
  37. package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-62f64e94-LNYJZFC5.js → quadrantDiagram-62f64e94-ZMEOFVNL.js} +2 -2
  38. package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-05bf5f74-ZZD7ZHFA.js → requirementDiagram-05bf5f74-FHZSFHCR.js} +4 -4
  39. package/dist/browser/dev/excalidraw-assets-dev/{sankeyDiagram-97764748-L75ZZ4UM.js → sankeyDiagram-97764748-VDKIKTA6.js} +2 -2
  40. package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-acc0e65c-6PCU7TDK.js → sequenceDiagram-acc0e65c-6JUSPVKX.js} +3 -3
  41. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-0ff1cf1a-WM76WOPR.js → stateDiagram-0ff1cf1a-L3AKWENF.js} +5 -5
  42. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-9a9d610d-N4HZW3O2.js → stateDiagram-v2-9a9d610d-NU3GGMCH.js} +8 -8
  43. package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-fea2a41d-ZHGCAXGP.js → timeline-definition-fea2a41d-JGP7XCHW.js} +2 -2
  44. package/dist/browser/dev/excalidraw-assets-dev/{xychartDiagram-ab372869-2DLOVRAZ.js → xychartDiagram-ab372869-HLFHHF2I.js} +3 -3
  45. package/dist/browser/dev/index.css +72 -28
  46. package/dist/browser/dev/index.css.map +3 -3
  47. package/dist/browser/dev/index.js +2064 -1830
  48. package/dist/browser/dev/index.js.map +4 -4
  49. package/dist/browser/prod/excalidraw-assets/{blockDiagram-91b80b7a-ONPS22AM.js → blockDiagram-91b80b7a-FVCRVGN5.js} +1 -1
  50. package/dist/browser/prod/excalidraw-assets/{c4Diagram-b2a90758-XMIQY7ZT.js → c4Diagram-b2a90758-56CXO7GA.js} +1 -1
  51. package/dist/browser/prod/excalidraw-assets/{chunk-GCHQBOKV.js → chunk-635MQ3CK.js} +1 -1
  52. package/dist/browser/prod/excalidraw-assets/{chunk-P5M3G2RP.js → chunk-AIKXYJX3.js} +1 -1
  53. package/dist/browser/prod/excalidraw-assets/{chunk-E2YLWFZX.js → chunk-CR7VMNWC.js} +1 -1
  54. package/dist/browser/prod/excalidraw-assets/{chunk-WEYK4A2L.js → chunk-FFF2CSVG.js} +1 -1
  55. package/dist/browser/prod/excalidraw-assets/{chunk-R3HAIP6R.js → chunk-G4WDCSPE.js} +1 -1
  56. package/dist/browser/prod/excalidraw-assets/{chunk-HFOXJM22.js → chunk-HKZSHFLX.js} +1 -1
  57. package/dist/browser/prod/excalidraw-assets/{chunk-XIMFFJTE.js → chunk-IKCDYWMW.js} +1 -1
  58. package/dist/browser/prod/excalidraw-assets/{chunk-AHLLBBVJ.js → chunk-L5DS24G6.js} +1 -1
  59. package/dist/browser/prod/excalidraw-assets/{chunk-CQJF3C6G.js → chunk-MUNOKHUD.js} +1 -1
  60. package/dist/browser/prod/excalidraw-assets/{chunk-CTYINSWT.js → chunk-O4AI3NNG.js} +2 -2
  61. package/dist/browser/prod/excalidraw-assets/{chunk-NI6SYCUG.js → chunk-QOQYOOQ4.js} +1 -1
  62. package/dist/browser/prod/excalidraw-assets/chunk-SXBDZOS3.js +55 -0
  63. package/dist/browser/prod/excalidraw-assets/{chunk-I2PZFXTK.js → chunk-ZTIWFPBM.js} +21 -21
  64. package/dist/browser/prod/excalidraw-assets/{classDiagram-30eddba6-IEJXXCVX.js → classDiagram-30eddba6-BCUTAUMD.js} +1 -1
  65. package/dist/browser/prod/excalidraw-assets/{classDiagram-v2-f2df5561-7LZDSWOS.js → classDiagram-v2-f2df5561-6SOXSGQ2.js} +1 -1
  66. package/dist/browser/prod/excalidraw-assets/{dist-PIPZXALV.js → dist-54276HPL.js} +1 -1
  67. package/dist/browser/prod/excalidraw-assets/{en-LROPV2RN.js → en-N7CLNF6C.js} +1 -1
  68. package/dist/browser/prod/excalidraw-assets/{erDiagram-47591fe2-E5V666CF.js → erDiagram-47591fe2-RE6HB7RM.js} +1 -1
  69. package/dist/browser/prod/excalidraw-assets/{flowDiagram-5540d9b9-GMBRCYVF.js → flowDiagram-5540d9b9-ZNJZBERW.js} +1 -1
  70. package/dist/browser/prod/excalidraw-assets/{flowDiagram-v2-3b53844e-Z4HUWP6B.js → flowDiagram-v2-3b53844e-LY44JLQJ.js} +1 -1
  71. package/dist/browser/prod/excalidraw-assets/{flowchart-elk-definition-5fe447d6-5ZCYTX5N.js → flowchart-elk-definition-5fe447d6-TMTJ6Z7O.js} +1 -1
  72. package/dist/browser/prod/excalidraw-assets/{ganttDiagram-9a3bba1f-WM32OMT5.js → ganttDiagram-9a3bba1f-5O6EA6LX.js} +1 -1
  73. package/dist/browser/prod/excalidraw-assets/{gitGraphDiagram-96e6b4ee-CAKZ2U6E.js → gitGraphDiagram-96e6b4ee-UHYNM5DI.js} +1 -1
  74. package/dist/browser/prod/excalidraw-assets/image-VAGBVQ3G.js +1 -0
  75. package/dist/browser/prod/excalidraw-assets/{infoDiagram-bcd20f53-MUIKXGC4.js → infoDiagram-bcd20f53-BP77NQEH.js} +1 -1
  76. package/dist/browser/prod/excalidraw-assets/{journeyDiagram-4fe6b3dc-NYRV4HK2.js → journeyDiagram-4fe6b3dc-XMGKCMES.js} +1 -1
  77. package/dist/browser/prod/excalidraw-assets/{mindmap-definition-f354de21-MY55DRSM.js → mindmap-definition-f354de21-ZQRRBRWF.js} +1 -1
  78. package/dist/browser/prod/excalidraw-assets/{pieDiagram-79897490-47L6J6L2.js → pieDiagram-79897490-IGXEC2KX.js} +1 -1
  79. package/dist/browser/prod/excalidraw-assets/{quadrantDiagram-62f64e94-DF5C2GDT.js → quadrantDiagram-62f64e94-WTHHDYJL.js} +1 -1
  80. package/dist/browser/prod/excalidraw-assets/{requirementDiagram-05bf5f74-C4IMUBDN.js → requirementDiagram-05bf5f74-MV4OFRVW.js} +1 -1
  81. package/dist/browser/prod/excalidraw-assets/{sankeyDiagram-97764748-YHW7EUST.js → sankeyDiagram-97764748-ZGYUHEJT.js} +1 -1
  82. package/dist/browser/prod/excalidraw-assets/{sequenceDiagram-acc0e65c-H3XEHT32.js → sequenceDiagram-acc0e65c-IBSENK6W.js} +1 -1
  83. package/dist/browser/prod/excalidraw-assets/{stateDiagram-0ff1cf1a-Z5WB6Q3P.js → stateDiagram-0ff1cf1a-DB73XNZH.js} +1 -1
  84. package/dist/browser/prod/excalidraw-assets/{stateDiagram-v2-9a9d610d-T7OZETQC.js → stateDiagram-v2-9a9d610d-2OOBUPNR.js} +1 -1
  85. package/dist/browser/prod/excalidraw-assets/{timeline-definition-fea2a41d-VVC22BWF.js → timeline-definition-fea2a41d-P3NQQVDU.js} +1 -1
  86. package/dist/browser/prod/excalidraw-assets/{xychartDiagram-ab372869-JAXODQF7.js → xychartDiagram-ab372869-HI3XLK3Y.js} +1 -1
  87. package/dist/browser/prod/index.css +1 -1
  88. package/dist/browser/prod/index.js +24 -24
  89. package/dist/dev/{en-II4GK66F.json → en-UQDDYCH7.json} +5 -3
  90. package/dist/dev/index.css +72 -28
  91. package/dist/dev/index.css.map +3 -3
  92. package/dist/dev/index.js +5352 -3354
  93. package/dist/dev/index.js.map +4 -4
  94. package/dist/excalidraw/actions/actionAddToLibrary.d.ts +4 -4
  95. package/dist/excalidraw/actions/actionAddToLibrary.js +4 -3
  96. package/dist/excalidraw/actions/actionAlign.d.ts +22 -22
  97. package/dist/excalidraw/actions/actionAlign.js +7 -6
  98. package/dist/excalidraw/actions/actionBoundText.d.ts +10 -10
  99. package/dist/excalidraw/actions/actionBoundText.js +8 -4
  100. package/dist/excalidraw/actions/actionCanvas.d.ts +52 -52
  101. package/dist/excalidraw/actions/actionCanvas.js +19 -14
  102. package/dist/excalidraw/actions/actionClipboard.d.ts +24 -24
  103. package/dist/excalidraw/actions/actionClipboard.js +14 -13
  104. package/dist/excalidraw/actions/actionDeleteSelected.d.ts +10 -10
  105. package/dist/excalidraw/actions/actionDeleteSelected.js +6 -3
  106. package/dist/excalidraw/actions/actionDistribute.d.ts +10 -10
  107. package/dist/excalidraw/actions/actionDistribute.js +3 -2
  108. package/dist/excalidraw/actions/actionDuplicateSelection.d.ts +7 -8
  109. package/dist/excalidraw/actions/actionDuplicateSelection.js +7 -3
  110. package/dist/excalidraw/actions/actionElementLock.d.ts +9 -9
  111. package/dist/excalidraw/actions/actionElementLock.js +3 -2
  112. package/dist/excalidraw/actions/actionExport.d.ts +33 -33
  113. package/dist/excalidraw/actions/actionExport.js +15 -11
  114. package/dist/excalidraw/actions/actionFinalize.d.ts +9 -9
  115. package/dist/excalidraw/actions/actionFinalize.js +9 -5
  116. package/dist/excalidraw/actions/actionFlip.d.ts +10 -10
  117. package/dist/excalidraw/actions/actionFlip.js +12 -12
  118. package/dist/excalidraw/actions/actionFrame.d.ts +16 -171
  119. package/dist/excalidraw/actions/actionFrame.js +7 -6
  120. package/dist/excalidraw/actions/actionGroup.d.ts +12 -322
  121. package/dist/excalidraw/actions/actionGroup.js +9 -11
  122. package/dist/excalidraw/actions/actionHistory.d.ts +4 -3
  123. package/dist/excalidraw/actions/actionHistory.js +27 -28
  124. package/dist/excalidraw/actions/actionLinearEditor.d.ts +6 -4
  125. package/dist/excalidraw/actions/actionLinearEditor.js +21 -5
  126. package/dist/excalidraw/actions/actionLink.d.ts +5 -5
  127. package/dist/excalidraw/actions/actionLink.js +2 -1
  128. package/dist/excalidraw/actions/actionMenu.d.ts +8 -8
  129. package/dist/excalidraw/actions/actionMenu.js +4 -3
  130. package/dist/excalidraw/actions/actionNavigate.d.ts +4 -4
  131. package/dist/excalidraw/actions/actionNavigate.js +3 -2
  132. package/dist/excalidraw/actions/actionProperties.d.ts +34 -34
  133. package/dist/excalidraw/actions/actionProperties.js +18 -13
  134. package/dist/excalidraw/actions/actionSelectAll.d.ts +5 -5
  135. package/dist/excalidraw/actions/actionSelectAll.js +2 -1
  136. package/dist/excalidraw/actions/actionStyles.d.ts +9 -12
  137. package/dist/excalidraw/actions/actionStyles.js +4 -3
  138. package/dist/excalidraw/actions/actionToggleGridMode.d.ts +7 -5
  139. package/dist/excalidraw/actions/actionToggleGridMode.js +6 -2
  140. package/dist/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +4 -4
  141. package/dist/excalidraw/actions/actionToggleObjectsSnapMode.js +2 -1
  142. package/dist/excalidraw/actions/actionToggleStats.d.ts +4 -4
  143. package/dist/excalidraw/actions/actionToggleStats.js +2 -1
  144. package/dist/excalidraw/actions/actionToggleViewMode.d.ts +4 -4
  145. package/dist/excalidraw/actions/actionToggleViewMode.js +2 -1
  146. package/dist/excalidraw/actions/actionToggleZenMode.d.ts +4 -4
  147. package/dist/excalidraw/actions/actionToggleZenMode.js +2 -1
  148. package/dist/excalidraw/actions/actionZindex.d.ts +23 -19
  149. package/dist/excalidraw/actions/actionZindex.js +9 -4
  150. package/dist/excalidraw/actions/manager.d.ts +5 -5
  151. package/dist/excalidraw/actions/register.d.ts +1 -1
  152. package/dist/excalidraw/actions/shortcuts.d.ts +2 -2
  153. package/dist/excalidraw/actions/shortcuts.js +1 -1
  154. package/dist/excalidraw/actions/types.d.ts +7 -7
  155. package/dist/excalidraw/align.d.ts +1 -1
  156. package/dist/excalidraw/analytics.js +1 -1
  157. package/dist/excalidraw/animated-trail.d.ts +2 -2
  158. package/dist/excalidraw/appState.d.ts +5 -5
  159. package/dist/excalidraw/change.d.ts +191 -0
  160. package/dist/excalidraw/change.js +894 -0
  161. package/dist/excalidraw/charts.d.ts +1 -1
  162. package/dist/excalidraw/clients.d.ts +2 -2
  163. package/dist/excalidraw/clients.js +1 -1
  164. package/dist/excalidraw/clipboard.d.ts +3 -3
  165. package/dist/excalidraw/colors.d.ts +1 -1
  166. package/dist/excalidraw/components/Actions.d.ts +3 -3
  167. package/dist/excalidraw/components/Actions.js +8 -5
  168. package/dist/excalidraw/components/App.d.ts +27 -13
  169. package/dist/excalidraw/components/App.js +362 -157
  170. package/dist/excalidraw/components/ColorPicker/ColorInput.d.ts +1 -1
  171. package/dist/excalidraw/components/ColorPicker/ColorInput.js +1 -1
  172. package/dist/excalidraw/components/ColorPicker/ColorPicker.d.ts +4 -4
  173. package/dist/excalidraw/components/ColorPicker/ColorPicker.js +1 -1
  174. package/dist/excalidraw/components/ColorPicker/Picker.d.ts +3 -3
  175. package/dist/excalidraw/components/ColorPicker/PickerColorList.d.ts +1 -1
  176. package/dist/excalidraw/components/ColorPicker/PickerHeading.d.ts +1 -1
  177. package/dist/excalidraw/components/ColorPicker/ShadeList.d.ts +1 -1
  178. package/dist/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  179. package/dist/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +2 -2
  180. package/dist/excalidraw/components/ColorPicker/colorPickerUtils.js +1 -1
  181. package/dist/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
  182. package/dist/excalidraw/components/ColorPicker/keyboardNavHandlers.js +1 -1
  183. package/dist/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -1
  184. package/dist/excalidraw/components/CommandPalette/CommandPalette.js +28 -13
  185. package/dist/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -1
  186. package/dist/excalidraw/components/CommandPalette/types.d.ts +3 -3
  187. package/dist/excalidraw/components/ConfirmDialog.d.ts +1 -1
  188. package/dist/excalidraw/components/ContextMenu.d.ts +2 -2
  189. package/dist/excalidraw/components/ContextMenu.js +1 -1
  190. package/dist/excalidraw/components/DarkModeToggle.d.ts +1 -1
  191. package/dist/excalidraw/components/DarkModeToggle.js +3 -1
  192. package/dist/excalidraw/components/DefaultSidebar.d.ts +2 -2
  193. package/dist/excalidraw/components/DialogActionButton.d.ts +1 -1
  194. package/dist/excalidraw/components/EyeDropper.d.ts +2 -2
  195. package/dist/excalidraw/components/FollowMode/FollowMode.d.ts +1 -1
  196. package/dist/excalidraw/components/HelpDialog.js +8 -6
  197. package/dist/excalidraw/components/HintViewer.d.ts +1 -1
  198. package/dist/excalidraw/components/ImageExportDialog.d.ts +1 -1
  199. package/dist/excalidraw/components/InitializeApp.d.ts +2 -2
  200. package/dist/excalidraw/components/JSONExportDialog.d.ts +3 -3
  201. package/dist/excalidraw/components/LayerUI.d.ts +4 -4
  202. package/dist/excalidraw/components/LibraryMenu.d.ts +2 -2
  203. package/dist/excalidraw/components/LibraryMenuBrowseButton.d.ts +1 -1
  204. package/dist/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  205. package/dist/excalidraw/components/LibraryMenuHeaderContent.d.ts +2 -2
  206. package/dist/excalidraw/components/LibraryMenuItems.d.ts +1 -1
  207. package/dist/excalidraw/components/LibraryMenuSection.d.ts +5 -4
  208. package/dist/excalidraw/components/LibraryUnit.d.ts +2 -2
  209. package/dist/excalidraw/components/LoadingMessage.d.ts +1 -1
  210. package/dist/excalidraw/components/MagicSettings.js +2 -2
  211. package/dist/excalidraw/components/MobileMenu.d.ts +3 -3
  212. package/dist/excalidraw/components/Modal.d.ts +1 -1
  213. package/dist/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  214. package/dist/excalidraw/components/PasteChartDialog.d.ts +1 -1
  215. package/dist/excalidraw/components/PublishLibrary.d.ts +1 -1
  216. package/dist/excalidraw/components/RadioGroup.d.ts +2 -1
  217. package/dist/excalidraw/components/RadioGroup.js +1 -1
  218. package/dist/excalidraw/components/SVGLayer.d.ts +1 -1
  219. package/dist/excalidraw/components/Sidebar/Sidebar.d.ts +2 -2
  220. package/dist/excalidraw/components/Sidebar/Sidebar.js +1 -1
  221. package/dist/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -1
  222. package/dist/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -1
  223. package/dist/excalidraw/components/Sidebar/SidebarTrigger.d.ts +1 -1
  224. package/dist/excalidraw/components/Sidebar/common.d.ts +1 -1
  225. package/dist/excalidraw/components/Stack.d.ts +2 -2
  226. package/dist/excalidraw/components/Stats.d.ts +2 -2
  227. package/dist/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +1 -1
  228. package/dist/excalidraw/components/TTDDialog/MermaidToExcalidraw.js +6 -2
  229. package/dist/excalidraw/components/TTDDialog/TTDDialog.js +2 -2
  230. package/dist/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +1 -1
  231. package/dist/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +1 -1
  232. package/dist/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +1 -1
  233. package/dist/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +1 -1
  234. package/dist/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -1
  235. package/dist/excalidraw/components/TTDDialog/common.d.ts +4 -4
  236. package/dist/excalidraw/components/TextField.d.ts +1 -1
  237. package/dist/excalidraw/components/Toast.d.ts +1 -1
  238. package/dist/excalidraw/components/ToolButton.d.ts +4 -2
  239. package/dist/excalidraw/components/ToolButton.js +1 -1
  240. package/dist/excalidraw/components/Trans.d.ts +1 -1
  241. package/dist/excalidraw/components/UserList.d.ts +1 -1
  242. package/dist/excalidraw/components/canvases/InteractiveCanvas.d.ts +2 -1
  243. package/dist/excalidraw/components/canvases/InteractiveCanvas.js +1 -0
  244. package/dist/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  245. package/dist/excalidraw/components/dropdownMenu/DropdownMenuItem.js +2 -2
  246. package/dist/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +18 -0
  247. package/dist/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.js +9 -0
  248. package/dist/excalidraw/components/footer/Footer.d.ts +2 -2
  249. package/dist/excalidraw/components/hyperlink/Hyperlink.d.ts +2 -2
  250. package/dist/excalidraw/components/hyperlink/Hyperlink.js +3 -3
  251. package/dist/excalidraw/components/hyperlink/helpers.d.ts +3 -3
  252. package/dist/excalidraw/components/hyperlink/helpers.js +2 -3
  253. package/dist/excalidraw/components/icons.d.ts +6 -1
  254. package/dist/excalidraw/components/icons.js +19 -5
  255. package/dist/excalidraw/components/main-menu/DefaultItems.d.ts +12 -2
  256. package/dist/excalidraw/components/main-menu/DefaultItems.js +38 -7
  257. package/dist/excalidraw/constants.d.ts +5 -5
  258. package/dist/excalidraw/constants.js +6 -3
  259. package/dist/excalidraw/context/ui-appState.d.ts +1 -1
  260. package/dist/excalidraw/cursor.d.ts +1 -1
  261. package/dist/excalidraw/data/EditorLocalStorage.d.ts +2 -2
  262. package/dist/excalidraw/data/blob.d.ts +5 -5
  263. package/dist/excalidraw/data/filesystem.d.ts +2 -1
  264. package/dist/excalidraw/data/index.d.ts +4 -4
  265. package/dist/excalidraw/data/json.d.ts +3 -3
  266. package/dist/excalidraw/data/library.d.ts +3 -3
  267. package/dist/excalidraw/data/magic.d.ts +3 -3
  268. package/dist/excalidraw/data/magic.js +2 -1
  269. package/dist/excalidraw/data/reconcile.d.ts +6 -0
  270. package/dist/excalidraw/data/reconcile.js +49 -0
  271. package/dist/excalidraw/data/resave.d.ts +2 -2
  272. package/dist/excalidraw/data/restore.d.ts +5 -5
  273. package/dist/excalidraw/data/restore.js +6 -7
  274. package/dist/excalidraw/data/transform.d.ts +4 -4
  275. package/dist/excalidraw/data/transform.js +12 -3
  276. package/dist/excalidraw/data/types.d.ts +3 -3
  277. package/dist/excalidraw/data/url.d.ts +1 -0
  278. package/dist/excalidraw/data/url.js +4 -1
  279. package/dist/excalidraw/element/ElementCanvasButtons.d.ts +1 -1
  280. package/dist/excalidraw/element/binding.d.ts +50 -9
  281. package/dist/excalidraw/element/binding.js +712 -155
  282. package/dist/excalidraw/element/bounds.d.ts +3 -4
  283. package/dist/excalidraw/element/bounds.js +0 -3
  284. package/dist/excalidraw/element/collision.d.ts +14 -19
  285. package/dist/excalidraw/element/collision.js +36 -713
  286. package/dist/excalidraw/element/containerCache.d.ts +1 -1
  287. package/dist/excalidraw/element/dragElements.d.ts +3 -3
  288. package/dist/excalidraw/element/embeddable.d.ts +9 -6
  289. package/dist/excalidraw/element/embeddable.js +98 -62
  290. package/dist/excalidraw/element/image.d.ts +2 -2
  291. package/dist/excalidraw/element/index.d.ts +1 -2
  292. package/dist/excalidraw/element/index.js +0 -1
  293. package/dist/excalidraw/element/linearElementEditor.d.ts +12 -12
  294. package/dist/excalidraw/element/linearElementEditor.js +7 -5
  295. package/dist/excalidraw/element/mutateElement.d.ts +3 -4
  296. package/dist/excalidraw/element/newElement.d.ts +4 -4
  297. package/dist/excalidraw/element/newElement.js +2 -1
  298. package/dist/excalidraw/element/resizeElements.d.ts +4 -4
  299. package/dist/excalidraw/element/resizeElements.js +110 -86
  300. package/dist/excalidraw/element/resizeTest.d.ts +7 -7
  301. package/dist/excalidraw/element/resizeTest.js +55 -8
  302. package/dist/excalidraw/element/showSelectedShapeActions.d.ts +2 -2
  303. package/dist/excalidraw/element/sizeHelpers.d.ts +2 -2
  304. package/dist/excalidraw/element/sizeHelpers.js +3 -0
  305. package/dist/excalidraw/element/sortElements.d.ts +1 -1
  306. package/dist/excalidraw/element/textElement.d.ts +5 -6
  307. package/dist/excalidraw/element/textElement.js +5 -34
  308. package/dist/excalidraw/element/textWysiwyg.d.ts +2 -2
  309. package/dist/excalidraw/element/transformHandles.d.ts +24 -6
  310. package/dist/excalidraw/element/transformHandles.js +24 -3
  311. package/dist/excalidraw/element/typeChecks.d.ts +4 -4
  312. package/dist/excalidraw/element/types.d.ts +26 -10
  313. package/dist/excalidraw/emitter.d.ts +1 -1
  314. package/dist/excalidraw/errors.d.ts +3 -0
  315. package/dist/excalidraw/errors.js +3 -0
  316. package/dist/excalidraw/fractionalIndex.d.ts +40 -0
  317. package/dist/excalidraw/fractionalIndex.js +241 -0
  318. package/dist/excalidraw/frame.d.ts +4 -4
  319. package/dist/excalidraw/gatransforms.d.ts +1 -1
  320. package/dist/excalidraw/gesture.d.ts +1 -1
  321. package/dist/excalidraw/groups.d.ts +5 -3
  322. package/dist/excalidraw/groups.js +17 -0
  323. package/dist/excalidraw/history.d.ts +35 -47
  324. package/dist/excalidraw/history.js +100 -167
  325. package/dist/excalidraw/hooks/useCreatePortalContainer.js +2 -1
  326. package/dist/excalidraw/hooks/useEmitter.d.ts +2 -0
  327. package/dist/excalidraw/hooks/useEmitter.js +13 -0
  328. package/dist/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  329. package/dist/excalidraw/i18n.d.ts +1 -1
  330. package/dist/excalidraw/index.d.ts +3 -1
  331. package/dist/excalidraw/index.js +2 -0
  332. package/dist/excalidraw/jotai.d.ts +1 -1
  333. package/dist/excalidraw/laser-trails.d.ts +3 -2
  334. package/dist/excalidraw/locales/en.json +5 -3
  335. package/dist/excalidraw/math.d.ts +2 -2
  336. package/dist/excalidraw/points.d.ts +1 -1
  337. package/dist/excalidraw/queue.d.ts +1 -1
  338. package/dist/excalidraw/renderer/helpers.d.ts +2 -2
  339. package/dist/excalidraw/renderer/helpers.js +2 -2
  340. package/dist/excalidraw/renderer/interactiveScene.d.ts +2 -2
  341. package/dist/excalidraw/renderer/interactiveScene.js +8 -7
  342. package/dist/excalidraw/renderer/renderElement.d.ts +3 -3
  343. package/dist/excalidraw/renderer/renderElement.js +5 -5
  344. package/dist/excalidraw/renderer/renderSnaps.d.ts +1 -1
  345. package/dist/excalidraw/renderer/renderSnaps.js +2 -1
  346. package/dist/excalidraw/renderer/staticScene.d.ts +1 -1
  347. package/dist/excalidraw/renderer/staticScene.js +14 -3
  348. package/dist/excalidraw/renderer/staticSvgScene.d.ts +4 -4
  349. package/dist/excalidraw/renderer/staticSvgScene.js +10 -0
  350. package/dist/excalidraw/scene/Fonts.d.ts +1 -1
  351. package/dist/excalidraw/scene/Renderer.d.ts +3 -3
  352. package/dist/excalidraw/scene/Scene.d.ts +9 -8
  353. package/dist/excalidraw/scene/Scene.js +31 -16
  354. package/dist/excalidraw/scene/Shape.d.ts +1 -1
  355. package/dist/excalidraw/scene/ShapeCache.d.ts +4 -4
  356. package/dist/excalidraw/scene/comparisons.d.ts +2 -2
  357. package/dist/excalidraw/scene/export.d.ts +2 -2
  358. package/dist/excalidraw/scene/export.js +5 -4
  359. package/dist/excalidraw/scene/scroll.d.ts +2 -2
  360. package/dist/excalidraw/scene/scrollbars.d.ts +3 -3
  361. package/dist/excalidraw/scene/selection.d.ts +2 -2
  362. package/dist/excalidraw/scene/types.d.ts +5 -4
  363. package/dist/excalidraw/scene/zoom.d.ts +1 -1
  364. package/dist/excalidraw/snapping.d.ts +4 -4
  365. package/dist/excalidraw/store.d.ts +99 -0
  366. package/dist/excalidraw/store.js +269 -0
  367. package/dist/excalidraw/types.d.ts +33 -19
  368. package/dist/excalidraw/utils.d.ts +11 -4
  369. package/dist/excalidraw/utils.js +8 -0
  370. package/dist/excalidraw/zindex.d.ts +4 -4
  371. package/dist/excalidraw/zindex.js +9 -13
  372. package/dist/prod/{en-II4GK66F.json → en-UQDDYCH7.json} +5 -3
  373. package/dist/prod/index.css +1 -1
  374. package/dist/prod/index.js +44 -44
  375. package/dist/utils/bbox.d.ts +2 -2
  376. package/dist/utils/collision.d.ts +4 -0
  377. package/dist/utils/collision.js +48 -0
  378. package/dist/utils/export.d.ts +2 -2
  379. package/dist/utils/geometry/geometry.d.ts +71 -0
  380. package/dist/utils/geometry/geometry.js +674 -0
  381. package/dist/utils/geometry/shape.d.ts +56 -0
  382. package/dist/utils/geometry/shape.js +168 -0
  383. package/dist/utils/withinBounds.d.ts +1 -1
  384. package/history.ts +163 -218
  385. package/package.json +2 -1
  386. package/dist/browser/dev/excalidraw-assets-dev/chunk-AK7SWNLN.js.map +0 -7
  387. package/dist/browser/dev/excalidraw-assets-dev/chunk-RWZVJAQU.js.map +0 -7
  388. package/dist/browser/dev/excalidraw-assets-dev/chunk-Z3PH3V2B.js.map +0 -7
  389. package/dist/browser/dev/excalidraw-assets-dev/image-OFRRV5MB.css.map +0 -7
  390. package/dist/browser/prod/excalidraw-assets/chunk-LL4GORAM.js +0 -55
  391. package/dist/browser/prod/excalidraw-assets/image-EFCJDJH3.js +0 -1
  392. /package/dist/browser/dev/excalidraw-assets-dev/{blockDiagram-91b80b7a-ACFH36JV.js.map → blockDiagram-91b80b7a-H47FTXHA.js.map} +0 -0
  393. /package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-b2a90758-QZ27YR47.js.map → c4Diagram-b2a90758-NNJK6GKC.js.map} +0 -0
  394. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-HO2HMSK7.js.map → chunk-4KQVEBHW.js.map} +0 -0
  395. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-USGV265L.js.map → chunk-53YI56GV.js.map} +0 -0
  396. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-EDFX3S7X.js.map → chunk-A2WCJI4I.js.map} +0 -0
  397. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-IX4V72YG.js.map → chunk-EFLPX7NE.js.map} +0 -0
  398. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-MXVETLVM.js.map → chunk-JYIQCNWV.js.map} +0 -0
  399. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-YZIOORVX.js.map → chunk-LVIQQW6F.js.map} +0 -0
  400. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-6U7GQNJT.js.map → chunk-PXLO3FOU.js.map} +0 -0
  401. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-7DACDEY3.js.map → chunk-TO2AW5PW.js.map} +0 -0
  402. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-NJ77ZFNJ.js.map → chunk-VURILHLY.js.map} +0 -0
  403. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-2T2GU7NF.js.map → chunk-ZAYGSUHF.js.map} +0 -0
  404. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-30eddba6-QSLMH4JW.js.map → classDiagram-30eddba6-CUYIJICN.js.map} +0 -0
  405. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-f2df5561-DY4DYQ5P.js.map → classDiagram-v2-f2df5561-K6WW6K73.js.map} +0 -0
  406. /package/dist/browser/dev/excalidraw-assets-dev/{dist-Z46EOVOL.js.map → dist-ITJNUBZF.js.map} +0 -0
  407. /package/dist/browser/dev/excalidraw-assets-dev/{en-5TCZHGGJ.js.map → en-BF4XUPIZ.js.map} +0 -0
  408. /package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-47591fe2-SOOJRTCB.js.map → erDiagram-47591fe2-XGAD7EEP.js.map} +0 -0
  409. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-5540d9b9-AHGL4KPK.js.map → flowDiagram-5540d9b9-B6EOVNNO.js.map} +0 -0
  410. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-3b53844e-56LDZZWY.js.map → flowDiagram-v2-3b53844e-NUG24FJH.js.map} +0 -0
  411. /package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5fe447d6-27LUKRI6.js.map → flowchart-elk-definition-5fe447d6-25Y7PCBL.js.map} +0 -0
  412. /package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-9a3bba1f-EHGYGNG6.js.map → ganttDiagram-9a3bba1f-GNL6ZDTC.js.map} +0 -0
  413. /package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-96e6b4ee-AJQNBDW5.js.map → gitGraphDiagram-96e6b4ee-HNW52NVO.js.map} +0 -0
  414. /package/dist/browser/dev/excalidraw-assets-dev/{image-EDKQZH7Z.js.map → image-LVS32KQQ.js.map} +0 -0
  415. /package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-bcd20f53-SWLLQVES.js.map → infoDiagram-bcd20f53-FWEUVFLT.js.map} +0 -0
  416. /package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-4fe6b3dc-7UAVCWOZ.js.map → journeyDiagram-4fe6b3dc-RZIUI7UG.js.map} +0 -0
  417. /package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-f354de21-SROW5KGM.js.map → mindmap-definition-f354de21-GBVN45GU.js.map} +0 -0
  418. /package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-79897490-QKCI6NCB.js.map → pieDiagram-79897490-ECENNII6.js.map} +0 -0
  419. /package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-62f64e94-LNYJZFC5.js.map → quadrantDiagram-62f64e94-ZMEOFVNL.js.map} +0 -0
  420. /package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-05bf5f74-ZZD7ZHFA.js.map → requirementDiagram-05bf5f74-FHZSFHCR.js.map} +0 -0
  421. /package/dist/browser/dev/excalidraw-assets-dev/{sankeyDiagram-97764748-L75ZZ4UM.js.map → sankeyDiagram-97764748-VDKIKTA6.js.map} +0 -0
  422. /package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-acc0e65c-6PCU7TDK.js.map → sequenceDiagram-acc0e65c-6JUSPVKX.js.map} +0 -0
  423. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-0ff1cf1a-WM76WOPR.js.map → stateDiagram-0ff1cf1a-L3AKWENF.js.map} +0 -0
  424. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-9a9d610d-N4HZW3O2.js.map → stateDiagram-v2-9a9d610d-NU3GGMCH.js.map} +0 -0
  425. /package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-fea2a41d-ZHGCAXGP.js.map → timeline-definition-fea2a41d-JGP7XCHW.js.map} +0 -0
  426. /package/dist/browser/dev/excalidraw-assets-dev/{xychartDiagram-ab372869-2DLOVRAZ.js.map → xychartDiagram-ab372869-HLFHHF2I.js.map} +0 -0
@@ -1,13 +1,13 @@
1
1
  /// <reference types="react" />
2
- import { AppClassProperties, AppState, Primitive } from "../types";
3
- import { Arrowhead, ExcalidrawElement, ExcalidrawLinearElement } from "../element/types";
2
+ import type { AppClassProperties, AppState, Primitive } from "../types";
3
+ import type { Arrowhead, ExcalidrawElement, ExcalidrawLinearElement } from "../element/types";
4
4
  export declare const changeProperty: (elements: readonly ExcalidrawElement[], appState: AppState, callback: (element: ExcalidrawElement) => ExcalidrawElement, includeBoundText?: boolean) => ExcalidrawElement[];
5
5
  export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], appState: AppState, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
6
6
  export declare const actionChangeStrokeColor: {
7
7
  name: "changeStrokeColor";
8
8
  label: string;
9
9
  trackEvent: false;
10
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
10
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
11
11
  PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
12
12
  } & {
13
13
  keyTest?: undefined;
@@ -16,7 +16,7 @@ export declare const actionChangeBackgroundColor: {
16
16
  name: "changeBackgroundColor";
17
17
  label: string;
18
18
  trackEvent: false;
19
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
19
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
20
20
  PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
21
21
  } & {
22
22
  keyTest?: undefined;
@@ -25,7 +25,7 @@ export declare const actionChangeFillStyle: {
25
25
  name: "changeFillStyle";
26
26
  label: string;
27
27
  trackEvent: false;
28
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
28
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
29
29
  elements: ExcalidrawElement[];
30
30
  appState: {
31
31
  currentItemFillStyle: any;
@@ -179,7 +179,7 @@ export declare const actionChangeFillStyle: {
179
179
  userToFollow: import("../types").UserToFollow | null;
180
180
  followedBy: Set<import("../types").SocketId>;
181
181
  };
182
- commitToHistory: true;
182
+ storeAction: import("../store").StoreActionType;
183
183
  };
184
184
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
185
185
  } & {
@@ -189,7 +189,7 @@ export declare const actionChangeStrokeWidth: {
189
189
  name: "changeStrokeWidth";
190
190
  label: string;
191
191
  trackEvent: false;
192
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
192
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
193
193
  elements: ExcalidrawElement[];
194
194
  appState: {
195
195
  currentItemStrokeWidth: any;
@@ -343,7 +343,7 @@ export declare const actionChangeStrokeWidth: {
343
343
  userToFollow: import("../types").UserToFollow | null;
344
344
  followedBy: Set<import("../types").SocketId>;
345
345
  };
346
- commitToHistory: true;
346
+ storeAction: import("../store").StoreActionType;
347
347
  };
348
348
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
349
349
  } & {
@@ -353,7 +353,7 @@ export declare const actionChangeSloppiness: {
353
353
  name: "changeSloppiness";
354
354
  label: string;
355
355
  trackEvent: false;
356
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
356
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
357
357
  elements: ExcalidrawElement[];
358
358
  appState: {
359
359
  currentItemRoughness: any;
@@ -507,7 +507,7 @@ export declare const actionChangeSloppiness: {
507
507
  userToFollow: import("../types").UserToFollow | null;
508
508
  followedBy: Set<import("../types").SocketId>;
509
509
  };
510
- commitToHistory: true;
510
+ storeAction: import("../store").StoreActionType;
511
511
  };
512
512
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
513
513
  } & {
@@ -517,7 +517,7 @@ export declare const actionChangeStrokeStyle: {
517
517
  name: "changeStrokeStyle";
518
518
  label: string;
519
519
  trackEvent: false;
520
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
520
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
521
521
  elements: ExcalidrawElement[];
522
522
  appState: {
523
523
  currentItemStrokeStyle: any;
@@ -671,7 +671,7 @@ export declare const actionChangeStrokeStyle: {
671
671
  userToFollow: import("../types").UserToFollow | null;
672
672
  followedBy: Set<import("../types").SocketId>;
673
673
  };
674
- commitToHistory: true;
674
+ storeAction: import("../store").StoreActionType;
675
675
  };
676
676
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
677
677
  } & {
@@ -681,7 +681,7 @@ export declare const actionChangeOpacity: {
681
681
  name: "changeOpacity";
682
682
  label: string;
683
683
  trackEvent: false;
684
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
684
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
685
685
  elements: ExcalidrawElement[];
686
686
  appState: {
687
687
  currentItemOpacity: any;
@@ -835,7 +835,7 @@ export declare const actionChangeOpacity: {
835
835
  userToFollow: import("../types").UserToFollow | null;
836
836
  followedBy: Set<import("../types").SocketId>;
837
837
  };
838
- commitToHistory: true;
838
+ storeAction: import("../store").StoreActionType;
839
839
  };
840
840
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
841
841
  } & {
@@ -845,7 +845,7 @@ export declare const actionChangeFontSize: {
845
845
  name: "changeFontSize";
846
846
  label: string;
847
847
  trackEvent: false;
848
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
848
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
849
849
  elements: ExcalidrawElement[];
850
850
  appState: {
851
851
  currentItemFontSize: number;
@@ -999,7 +999,7 @@ export declare const actionChangeFontSize: {
999
999
  userToFollow: import("../types").UserToFollow | null;
1000
1000
  followedBy: Set<import("../types").SocketId>;
1001
1001
  };
1002
- commitToHistory: boolean;
1002
+ storeAction: import("../store").StoreActionType;
1003
1003
  };
1004
1004
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
1005
1005
  } & {
@@ -1010,7 +1010,7 @@ export declare const actionDecreaseFontSize: {
1010
1010
  label: string;
1011
1011
  icon: JSX.Element;
1012
1012
  trackEvent: false;
1013
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1013
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1014
1014
  elements: ExcalidrawElement[];
1015
1015
  appState: {
1016
1016
  currentItemFontSize: number;
@@ -1164,18 +1164,18 @@ export declare const actionDecreaseFontSize: {
1164
1164
  userToFollow: import("../types").UserToFollow | null;
1165
1165
  followedBy: Set<import("../types").SocketId>;
1166
1166
  };
1167
- commitToHistory: boolean;
1167
+ storeAction: import("../store").StoreActionType;
1168
1168
  };
1169
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1169
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1170
1170
  } & {
1171
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1171
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1172
1172
  };
1173
1173
  export declare const actionIncreaseFontSize: {
1174
1174
  name: "increaseFontSize";
1175
1175
  label: string;
1176
1176
  icon: JSX.Element;
1177
1177
  trackEvent: false;
1178
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1178
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1179
1179
  elements: ExcalidrawElement[];
1180
1180
  appState: {
1181
1181
  currentItemFontSize: number;
@@ -1329,17 +1329,17 @@ export declare const actionIncreaseFontSize: {
1329
1329
  userToFollow: import("../types").UserToFollow | null;
1330
1330
  followedBy: Set<import("../types").SocketId>;
1331
1331
  };
1332
- commitToHistory: boolean;
1332
+ storeAction: import("../store").StoreActionType;
1333
1333
  };
1334
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1334
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1335
1335
  } & {
1336
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1336
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1337
1337
  };
1338
1338
  export declare const actionChangeFontFamily: {
1339
1339
  name: "changeFontFamily";
1340
1340
  label: string;
1341
1341
  trackEvent: false;
1342
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1342
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1343
1343
  elements: ExcalidrawElement[];
1344
1344
  appState: {
1345
1345
  currentItemFontFamily: any;
@@ -1493,7 +1493,7 @@ export declare const actionChangeFontFamily: {
1493
1493
  userToFollow: import("../types").UserToFollow | null;
1494
1494
  followedBy: Set<import("../types").SocketId>;
1495
1495
  };
1496
- commitToHistory: true;
1496
+ storeAction: import("../store").StoreActionType;
1497
1497
  };
1498
1498
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
1499
1499
  } & {
@@ -1503,7 +1503,7 @@ export declare const actionChangeTextAlign: {
1503
1503
  name: "changeTextAlign";
1504
1504
  label: string;
1505
1505
  trackEvent: false;
1506
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1506
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1507
1507
  elements: ExcalidrawElement[];
1508
1508
  appState: {
1509
1509
  currentItemTextAlign: any;
@@ -1657,7 +1657,7 @@ export declare const actionChangeTextAlign: {
1657
1657
  userToFollow: import("../types").UserToFollow | null;
1658
1658
  followedBy: Set<import("../types").SocketId>;
1659
1659
  };
1660
- commitToHistory: true;
1660
+ storeAction: import("../store").StoreActionType;
1661
1661
  };
1662
1662
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
1663
1663
  } & {
@@ -1669,7 +1669,7 @@ export declare const actionChangeVerticalAlign: {
1669
1669
  trackEvent: {
1670
1670
  category: "element";
1671
1671
  };
1672
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1672
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1673
1673
  elements: ExcalidrawElement[];
1674
1674
  appState: {
1675
1675
  contextMenu: {
@@ -1823,7 +1823,7 @@ export declare const actionChangeVerticalAlign: {
1823
1823
  userToFollow: import("../types").UserToFollow | null;
1824
1824
  followedBy: Set<import("../types").SocketId>;
1825
1825
  };
1826
- commitToHistory: true;
1826
+ storeAction: import("../store").StoreActionType;
1827
1827
  };
1828
1828
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
1829
1829
  } & {
@@ -1833,7 +1833,7 @@ export declare const actionChangeRoundness: {
1833
1833
  name: "changeRoundness";
1834
1834
  label: string;
1835
1835
  trackEvent: false;
1836
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
1836
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => {
1837
1837
  elements: ExcalidrawElement[];
1838
1838
  appState: {
1839
1839
  currentItemRoundness: any;
@@ -1987,7 +1987,7 @@ export declare const actionChangeRoundness: {
1987
1987
  userToFollow: import("../types").UserToFollow | null;
1988
1988
  followedBy: Set<import("../types").SocketId>;
1989
1989
  };
1990
- commitToHistory: true;
1990
+ storeAction: import("../store").StoreActionType;
1991
1991
  };
1992
1992
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
1993
1993
  } & {
@@ -1997,7 +1997,7 @@ export declare const actionChangeArrowhead: {
1997
1997
  name: "changeArrowhead";
1998
1998
  label: string;
1999
1999
  trackEvent: false;
2000
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, value: {
2000
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: {
2001
2001
  position: "start" | "end";
2002
2002
  type: Arrowhead;
2003
2003
  }) => {
@@ -2154,7 +2154,7 @@ export declare const actionChangeArrowhead: {
2154
2154
  userToFollow: import("../types").UserToFollow | null;
2155
2155
  followedBy: Set<import("../types").SocketId>;
2156
2156
  };
2157
- commitToHistory: true;
2157
+ storeAction: import("../store").StoreActionType;
2158
2158
  };
2159
2159
  PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
2160
2160
  } & {
@@ -20,6 +20,7 @@ import { canHaveArrowheads, getCommonAttributeOfSelectedElements, getSelectedEle
20
20
  import { hasStrokeColor } from "../scene/comparisons";
21
21
  import { arrayToMap, getShortcutKey } from "../utils";
22
22
  import { register } from "./register";
23
+ import { StoreAction } from "../store";
23
24
  const FONT_SIZE_RELATIVE_INCREASE_STEP = 0.1;
24
25
  export const changeProperty = (elements, appState, callback, includeBoundText = false) => {
25
26
  const selectedElementIds = arrayToMap(getSelectedElements(elements, appState, {
@@ -97,7 +98,7 @@ const changeFontSize = (elements, appState, app, getNewFontSize, fallbackValue)
97
98
  ? [...newFontSizes][0]
98
99
  : fallbackValue ?? appState.currentItemFontSize,
99
100
  },
100
- commitToHistory: true,
101
+ storeAction: StoreAction.CAPTURE,
101
102
  };
102
103
  };
103
104
  // -----------------------------------------------------------------------------
@@ -120,7 +121,9 @@ export const actionChangeStrokeColor = register({
120
121
  ...appState,
121
122
  ...value,
122
123
  },
123
- commitToHistory: !!value.currentItemStrokeColor,
124
+ storeAction: !!value.currentItemStrokeColor
125
+ ? StoreAction.CAPTURE
126
+ : StoreAction.NONE,
124
127
  };
125
128
  },
126
129
  PanelComponent: ({ elements, appState, updateData, appProps }) => (_jsxs(_Fragment, { children: [_jsx("h3", { "aria-hidden": "true", children: t("labels.stroke") }), _jsx(ColorPicker, { topPicks: DEFAULT_ELEMENT_STROKE_PICKS, palette: DEFAULT_ELEMENT_STROKE_COLOR_PALETTE, type: "elementStroke", label: t("labels.stroke"), color: getFormValue(elements, appState, (element) => element.strokeColor, true, appState.currentItemStrokeColor), onChange: (color) => updateData({ currentItemStrokeColor: color }), elements: elements, appState: appState, updateData: updateData })] })),
@@ -140,7 +143,9 @@ export const actionChangeBackgroundColor = register({
140
143
  ...appState,
141
144
  ...value,
142
145
  },
143
- commitToHistory: !!value.currentItemBackgroundColor,
146
+ storeAction: !!value.currentItemBackgroundColor
147
+ ? StoreAction.CAPTURE
148
+ : StoreAction.NONE,
144
149
  };
145
150
  },
146
151
  PanelComponent: ({ elements, appState, updateData, appProps }) => (_jsxs(_Fragment, { children: [_jsx("h3", { "aria-hidden": "true", children: t("labels.background") }), _jsx(ColorPicker, { topPicks: DEFAULT_ELEMENT_BACKGROUND_PICKS, palette: DEFAULT_ELEMENT_BACKGROUND_COLOR_PALETTE, type: "elementBackground", label: t("labels.background"), color: getFormValue(elements, appState, (element) => element.backgroundColor, true, appState.currentItemBackgroundColor), onChange: (color) => updateData({ currentItemBackgroundColor: color }), elements: elements, appState: appState, updateData: updateData })] })),
@@ -156,7 +161,7 @@ export const actionChangeFillStyle = register({
156
161
  fillStyle: value,
157
162
  })),
158
163
  appState: { ...appState, currentItemFillStyle: value },
159
- commitToHistory: true,
164
+ storeAction: StoreAction.CAPTURE,
160
165
  };
161
166
  },
162
167
  PanelComponent: ({ elements, appState, updateData }) => {
@@ -203,7 +208,7 @@ export const actionChangeStrokeWidth = register({
203
208
  strokeWidth: value,
204
209
  })),
205
210
  appState: { ...appState, currentItemStrokeWidth: value },
206
- commitToHistory: true,
211
+ storeAction: StoreAction.CAPTURE,
207
212
  };
208
213
  },
209
214
  PanelComponent: ({ elements, appState, updateData }) => (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.strokeWidth") }), _jsx(ButtonIconSelect, { group: "stroke-width", options: [
@@ -238,7 +243,7 @@ export const actionChangeSloppiness = register({
238
243
  roughness: value,
239
244
  })),
240
245
  appState: { ...appState, currentItemRoughness: value },
241
- commitToHistory: true,
246
+ storeAction: StoreAction.CAPTURE,
242
247
  };
243
248
  },
244
249
  PanelComponent: ({ elements, appState, updateData }) => (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.sloppiness") }), _jsx(ButtonIconSelect, { group: "sloppiness", options: [
@@ -269,7 +274,7 @@ export const actionChangeStrokeStyle = register({
269
274
  strokeStyle: value,
270
275
  })),
271
276
  appState: { ...appState, currentItemStrokeStyle: value },
272
- commitToHistory: true,
277
+ storeAction: StoreAction.CAPTURE,
273
278
  };
274
279
  },
275
280
  PanelComponent: ({ elements, appState, updateData }) => (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.strokeStyle") }), _jsx(ButtonIconSelect, { group: "strokeStyle", options: [
@@ -300,7 +305,7 @@ export const actionChangeOpacity = register({
300
305
  opacity: value,
301
306
  }), true),
302
307
  appState: { ...appState, currentItemOpacity: value },
303
- commitToHistory: true,
308
+ storeAction: StoreAction.CAPTURE,
304
309
  };
305
310
  },
306
311
  PanelComponent: ({ elements, appState, updateData }) => (_jsxs("label", { className: "control-label", children: [t("labels.opacity"), _jsx("input", { type: "range", min: "0", max: "100", step: "10", onChange: (event) => updateData(+event.target.value), value: getFormValue(elements, appState, (element) => element.opacity, true, appState.currentItemOpacity) ?? undefined })] })),
@@ -405,7 +410,7 @@ export const actionChangeFontFamily = register({
405
410
  ...appState,
406
411
  currentItemFontFamily: value,
407
412
  },
408
- commitToHistory: true,
413
+ storeAction: StoreAction.CAPTURE,
409
414
  };
410
415
  },
411
416
  PanelComponent: ({ elements, appState, updateData, app }) => {
@@ -462,7 +467,7 @@ export const actionChangeTextAlign = register({
462
467
  ...appState,
463
468
  currentItemTextAlign: value,
464
469
  },
465
- commitToHistory: true,
470
+ storeAction: StoreAction.CAPTURE,
466
471
  };
467
472
  },
468
473
  PanelComponent: ({ elements, appState, updateData, app }) => {
@@ -516,7 +521,7 @@ export const actionChangeVerticalAlign = register({
516
521
  appState: {
517
522
  ...appState,
518
523
  },
519
- commitToHistory: true,
524
+ storeAction: StoreAction.CAPTURE,
520
525
  };
521
526
  },
522
527
  PanelComponent: ({ elements, appState, updateData, app }) => {
@@ -571,7 +576,7 @@ export const actionChangeRoundness = register({
571
576
  ...appState,
572
577
  currentItemRoundness: value,
573
578
  },
574
- commitToHistory: true,
579
+ storeAction: StoreAction.CAPTURE,
575
580
  };
576
581
  },
577
582
  PanelComponent: ({ elements, appState, updateData }) => {
@@ -691,7 +696,7 @@ export const actionChangeArrowhead = register({
691
696
  ? "currentItemStartArrowhead"
692
697
  : "currentItemEndArrowhead"]: value.type,
693
698
  },
694
- commitToHistory: true,
699
+ storeAction: StoreAction.CAPTURE,
695
700
  };
696
701
  },
697
702
  PanelComponent: ({ elements, appState, updateData }) => {
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ExcalidrawElement } from "../element/types";
2
+ import type { ExcalidrawElement } from "../element/types";
3
3
  import { LinearElementEditor } from "../element/linearElementEditor";
4
4
  export declare const actionSelectAll: {
5
5
  name: "selectAll";
@@ -9,7 +9,7 @@ export declare const actionSelectAll: {
9
9
  category: "canvas";
10
10
  };
11
11
  viewMode: false;
12
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => false | {
12
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => false | {
13
13
  appState: {
14
14
  selectedLinearElement: LinearElementEditor | null;
15
15
  selectedElementIds: Readonly<{
@@ -162,9 +162,9 @@ export declare const actionSelectAll: {
162
162
  userToFollow: import("../types").UserToFollow | null;
163
163
  followedBy: Set<import("../types").SocketId>;
164
164
  };
165
- commitToHistory: true;
165
+ storeAction: import("../store").StoreActionType;
166
166
  };
167
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
167
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
168
168
  } & {
169
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
169
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
170
170
  };
@@ -6,6 +6,7 @@ import { isLinearElement } from "../element/typeChecks";
6
6
  import { LinearElementEditor } from "../element/linearElementEditor";
7
7
  import { excludeElementsInFramesFromSelection } from "../scene/selection";
8
8
  import { selectAllIcon } from "../components/icons";
9
+ import { StoreAction } from "../store";
9
10
  export const actionSelectAll = register({
10
11
  name: "selectAll",
11
12
  label: "labels.selectAll",
@@ -36,7 +37,7 @@ export const actionSelectAll = register({
36
37
  ? new LinearElementEditor(elements[0])
37
38
  : null,
38
39
  },
39
- commitToHistory: true,
40
+ storeAction: StoreAction.CAPTURE,
40
41
  };
41
42
  },
42
43
  keyTest: (event) => event[KEYS.CTRL_OR_CMD] && event.key === KEYS.A,
@@ -7,7 +7,7 @@ export declare const actionCopyStyles: {
7
7
  trackEvent: {
8
8
  category: "element";
9
9
  };
10
- perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, formData: any, app: import("../types").AppClassProperties) => {
10
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, formData: any, app: import("../types").AppClassProperties) => {
11
11
  appState: {
12
12
  toast: {
13
13
  message: string;
@@ -158,11 +158,11 @@ export declare const actionCopyStyles: {
158
158
  userToFollow: import("../types").UserToFollow | null;
159
159
  followedBy: Set<import("../types").SocketId>;
160
160
  };
161
- commitToHistory: false;
161
+ storeAction: import("../store").StoreActionType;
162
162
  };
163
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
163
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
164
164
  } & {
165
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
165
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
166
166
  };
167
167
  export declare const actionPasteStyles: {
168
168
  name: "pasteStyles";
@@ -171,14 +171,11 @@ export declare const actionPasteStyles: {
171
171
  trackEvent: {
172
172
  category: "element";
173
173
  };
174
- perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, formData: any, app: import("../types").AppClassProperties) => {
175
- elements: readonly import("../element/types").ExcalidrawElement[];
176
- commitToHistory: false;
177
- } | {
178
- elements: import("../element/types").ExcalidrawElement[];
179
- commitToHistory: true;
174
+ perform: (elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, formData: any, app: import("../types").AppClassProperties) => {
175
+ elements: readonly import("../element/types").OrderedExcalidrawElement[];
176
+ storeAction: import("../store").StoreActionType;
180
177
  };
181
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
178
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
182
179
  } & {
183
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
180
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
184
181
  };
@@ -8,6 +8,7 @@ import { getBoundTextElement, getDefaultLineHeight, } from "../element/textEleme
8
8
  import { hasBoundTextElement, canApplyRoundnessTypeToElement, getDefaultRoundnessTypeForElement, isFrameLikeElement, isArrowElement, } from "../element/typeChecks";
9
9
  import { getSelectedElements } from "../scene";
10
10
  import { paintIcon } from "../components/icons";
11
+ import { StoreAction } from "../store";
11
12
  // `copiedStyles` is exported only for tests.
12
13
  export let copiedStyles = "{}";
13
14
  export const actionCopyStyles = register({
@@ -31,7 +32,7 @@ export const actionCopyStyles = register({
31
32
  ...appState,
32
33
  toast: { message: t("toast.copyStyles") },
33
34
  },
34
- commitToHistory: false,
35
+ storeAction: StoreAction.NONE,
35
36
  };
36
37
  },
37
38
  keyTest: (event) => event[KEYS.CTRL_OR_CMD] && event.altKey && event.code === CODES.C,
@@ -46,7 +47,7 @@ export const actionPasteStyles = register({
46
47
  const pastedElement = elementsCopied[0];
47
48
  const boundTextElement = elementsCopied[1];
48
49
  if (!isExcalidrawElement(pastedElement)) {
49
- return { elements, commitToHistory: false };
50
+ return { elements, storeAction: StoreAction.NONE };
50
51
  }
51
52
  const selectedElements = getSelectedElements(elements, appState, {
52
53
  includeBoundTextElement: true,
@@ -114,7 +115,7 @@ export const actionPasteStyles = register({
114
115
  }
115
116
  return element;
116
117
  }),
117
- commitToHistory: true,
118
+ storeAction: StoreAction.CAPTURE,
118
119
  };
119
120
  },
120
121
  keyTest: (event) => event[KEYS.CTRL_OR_CMD] && event.altKey && event.code === CODES.V,
@@ -1,14 +1,16 @@
1
1
  /// <reference types="react" />
2
- import { AppState } from "../types";
2
+ import type { AppState } from "../types";
3
3
  export declare const actionToggleGridMode: {
4
4
  name: "gridMode";
5
+ icon: JSX.Element;
6
+ keywords: string[];
5
7
  label: string;
6
8
  viewMode: true;
7
9
  trackEvent: {
8
10
  category: "canvas";
9
11
  predicate: (appState: Readonly<AppState>) => boolean;
10
12
  };
11
- perform(elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<AppState>): {
13
+ perform(elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>): {
12
14
  appState: {
13
15
  gridSize: number | null;
14
16
  objectsSnapModeEnabled: false;
@@ -161,11 +163,11 @@ export declare const actionToggleGridMode: {
161
163
  userToFollow: import("../types").UserToFollow | null;
162
164
  followedBy: Set<import("../types").SocketId>;
163
165
  };
164
- commitToHistory: false;
166
+ storeAction: import("../store").StoreActionType;
165
167
  };
166
168
  checked: (appState: AppState) => boolean;
167
169
  predicate: (element: readonly import("../element/types").ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps) => boolean;
168
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
170
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
169
171
  } & {
170
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
172
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
171
173
  };
@@ -1,9 +1,13 @@
1
1
  import { CODES, KEYS } from "../keys";
2
2
  import { register } from "./register";
3
3
  import { GRID_SIZE } from "../constants";
4
+ import { gridIcon } from "../components/icons";
5
+ import { StoreAction } from "../store";
4
6
  export const actionToggleGridMode = register({
5
7
  name: "gridMode",
6
- label: "labels.showGrid",
8
+ icon: gridIcon,
9
+ keywords: ["snap"],
10
+ label: "labels.toggleGrid",
7
11
  viewMode: true,
8
12
  trackEvent: {
9
13
  category: "canvas",
@@ -16,7 +20,7 @@ export const actionToggleGridMode = register({
16
20
  gridSize: this.checked(appState) ? null : GRID_SIZE,
17
21
  objectsSnapModeEnabled: false,
18
22
  },
19
- commitToHistory: false,
23
+ storeAction: StoreAction.NONE,
20
24
  };
21
25
  },
22
26
  checked: (appState) => appState.gridSize !== null,
@@ -8,7 +8,7 @@ export declare const actionToggleObjectsSnapMode: {
8
8
  category: "canvas";
9
9
  predicate: (appState: Readonly<import("../types").AppState>) => boolean;
10
10
  };
11
- perform(elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>): {
11
+ perform(elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>): {
12
12
  appState: {
13
13
  objectsSnapModeEnabled: boolean;
14
14
  gridSize: null;
@@ -161,11 +161,11 @@ export declare const actionToggleObjectsSnapMode: {
161
161
  userToFollow: import("../types").UserToFollow | null;
162
162
  followedBy: Set<import("../types").SocketId>;
163
163
  };
164
- commitToHistory: false;
164
+ storeAction: import("../store").StoreActionType;
165
165
  };
166
166
  checked: (appState: Readonly<import("../types").AppState>) => boolean;
167
167
  predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps) => boolean;
168
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
168
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
169
169
  } & {
170
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
170
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
171
171
  };
@@ -1,5 +1,6 @@
1
1
  import { magnetIcon } from "../components/icons";
2
2
  import { CODES, KEYS } from "../keys";
3
+ import { StoreAction } from "../store";
3
4
  import { register } from "./register";
4
5
  export const actionToggleObjectsSnapMode = register({
5
6
  name: "objectsSnapMode",
@@ -17,7 +18,7 @@ export const actionToggleObjectsSnapMode = register({
17
18
  objectsSnapModeEnabled: !this.checked(appState),
18
19
  gridSize: null,
19
20
  },
20
- commitToHistory: false,
21
+ storeAction: StoreAction.NONE,
21
22
  };
22
23
  },
23
24
  checked: (appState) => appState.objectsSnapModeEnabled,
@@ -8,7 +8,7 @@ export declare const actionToggleStats: {
8
8
  trackEvent: {
9
9
  category: "menu";
10
10
  };
11
- perform(elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>): {
11
+ perform(elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>): {
12
12
  appState: {
13
13
  showStats: boolean;
14
14
  contextMenu: {
@@ -161,10 +161,10 @@ export declare const actionToggleStats: {
161
161
  userToFollow: import("../types").UserToFollow | null;
162
162
  followedBy: Set<import("../types").SocketId>;
163
163
  };
164
- commitToHistory: false;
164
+ storeAction: import("../store").StoreActionType;
165
165
  };
166
166
  checked: (appState: Readonly<import("../types").AppState>) => boolean;
167
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
167
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
168
168
  } & {
169
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
169
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
170
170
  };