@excalidraw/excalidraw 0.18.0-7876ee524 → 0.18.0-7f66e1f

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 (398) hide show
  1. package/dist/dev/{chunk-QF5FRM6O.js → chunk-LLUJPE5U.js} +48 -26
  2. package/dist/dev/chunk-LLUJPE5U.js.map +7 -0
  3. package/dist/dev/chunk-PMQWN2AA.js +69 -0
  4. package/dist/dev/chunk-PMQWN2AA.js.map +7 -0
  5. package/dist/dev/{chunk-CRKRRBMD.js → chunk-QLBLBAF4.js} +50 -58
  6. package/dist/dev/chunk-QLBLBAF4.js.map +7 -0
  7. package/dist/dev/data/{image-IWGLHPIX.js → image-WN3C5VZT.js} +2 -2
  8. package/dist/dev/index.css +1107 -665
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +7888 -5652
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{ar-SA-XORAP2EK.js → ar-SA-USQAA427.js} +299 -142
  13. package/dist/dev/locales/ar-SA-USQAA427.js.map +7 -0
  14. package/dist/dev/locales/{az-AZ-NAUU3Z4Y.js → az-AZ-CVQRXULV.js} +240 -83
  15. package/dist/dev/locales/az-AZ-CVQRXULV.js.map +7 -0
  16. package/dist/dev/locales/{bg-BG-AAABLFCY.js → bg-BG-E4I2JVOQ.js} +228 -71
  17. package/dist/dev/locales/bg-BG-E4I2JVOQ.js.map +7 -0
  18. package/dist/dev/locales/{bn-BD-PM4AC5WG.js → bn-BD-O55ROP2R.js} +208 -51
  19. package/dist/dev/locales/bn-BD-O55ROP2R.js.map +7 -0
  20. package/dist/dev/locales/bn-IN-OL7OUKTP.js +743 -0
  21. package/dist/dev/locales/bn-IN-OL7OUKTP.js.map +7 -0
  22. package/dist/dev/locales/{ca-ES-YNNMFRQX.js → ca-ES-73KY52DM.js} +274 -117
  23. package/dist/dev/locales/ca-ES-73KY52DM.js.map +7 -0
  24. package/dist/dev/locales/{cs-CZ-DGZA5IKG.js → cs-CZ-2YGHPQ24.js} +228 -71
  25. package/dist/dev/locales/cs-CZ-2YGHPQ24.js.map +7 -0
  26. package/dist/dev/locales/{da-DK-N76F4QAJ.js → da-DK-OEIZIPJU.js} +297 -140
  27. package/dist/dev/locales/da-DK-OEIZIPJU.js.map +7 -0
  28. package/dist/dev/locales/de-CH-4GJTW23D.js +743 -0
  29. package/dist/dev/locales/de-CH-4GJTW23D.js.map +7 -0
  30. package/dist/dev/locales/{de-DE-DMRXZ2SZ.js → de-DE-YRH6WMM5.js} +198 -41
  31. package/dist/dev/locales/de-DE-YRH6WMM5.js.map +7 -0
  32. package/dist/dev/locales/{el-GR-HIKPLEXI.js → el-GR-W7S64QNM.js} +273 -116
  33. package/dist/dev/locales/el-GR-W7S64QNM.js.map +7 -0
  34. package/dist/dev/locales/{en-SMAPCEOQ.js → en-YSPYSBUR.js} +4 -2
  35. package/dist/dev/locales/{es-ES-AQYVXC32.js → es-ES-7JEN5PTZ.js} +211 -54
  36. package/dist/dev/locales/es-ES-7JEN5PTZ.js.map +7 -0
  37. package/dist/dev/locales/{eu-ES-3TOEU5DE.js → eu-ES-HQNHU6VR.js} +209 -52
  38. package/dist/dev/locales/eu-ES-HQNHU6VR.js.map +7 -0
  39. package/dist/dev/locales/{fa-IR-527GAKUP.js → fa-IR-IN6XOPA6.js} +285 -128
  40. package/dist/dev/locales/fa-IR-IN6XOPA6.js.map +7 -0
  41. package/dist/dev/locales/{fi-FI-M3WLVDFP.js → fi-FI-5BAAYJDZ.js} +239 -82
  42. package/dist/dev/locales/fi-FI-5BAAYJDZ.js.map +7 -0
  43. package/dist/dev/locales/{fr-FR-YE4VDJFI.js → fr-FR-KCXBY2R4.js} +202 -45
  44. package/dist/dev/locales/fr-FR-KCXBY2R4.js.map +7 -0
  45. package/dist/dev/locales/{gl-ES-KMXUYGUN.js → gl-ES-5OPGWS6N.js} +211 -54
  46. package/dist/dev/locales/gl-ES-5OPGWS6N.js.map +7 -0
  47. package/dist/dev/locales/he-IL-3A6ZWK6L.js +743 -0
  48. package/dist/dev/locales/he-IL-3A6ZWK6L.js.map +7 -0
  49. package/dist/dev/locales/hi-IN-HZTBH6EG.js +743 -0
  50. package/dist/dev/locales/hi-IN-HZTBH6EG.js.map +7 -0
  51. package/dist/dev/locales/{hu-HU-VIYZI3X4.js → hu-HU-52IRZEAZ.js} +237 -80
  52. package/dist/dev/locales/hu-HU-52IRZEAZ.js.map +7 -0
  53. package/dist/dev/locales/{id-ID-22TWZNLA.js → id-ID-W6HBGXTS.js} +244 -87
  54. package/dist/dev/locales/id-ID-W6HBGXTS.js.map +7 -0
  55. package/dist/dev/locales/{it-IT-MDEQ2SG3.js → it-IT-AV75ICYT.js} +201 -44
  56. package/dist/dev/locales/it-IT-AV75ICYT.js.map +7 -0
  57. package/dist/dev/locales/{ja-JP-K2DI4W6B.js → ja-JP-SS4G3ZXF.js} +246 -89
  58. package/dist/dev/locales/ja-JP-SS4G3ZXF.js.map +7 -0
  59. package/dist/dev/locales/{kaa-6BPSNM3R.js → kaa-Y5BBB3IW.js} +201 -44
  60. package/dist/dev/locales/kaa-Y5BBB3IW.js.map +7 -0
  61. package/dist/dev/locales/{kab-KAB-2S7ZURK7.js → kab-KAB-KDVZQXBT.js} +209 -52
  62. package/dist/dev/locales/kab-KAB-KDVZQXBT.js.map +7 -0
  63. package/dist/dev/locales/{kk-KZ-UJPYGRQQ.js → kk-KZ-762YODLJ.js} +174 -17
  64. package/dist/dev/locales/kk-KZ-762YODLJ.js.map +7 -0
  65. package/dist/dev/locales/{km-KH-M5T5JKUE.js → km-KH-K2TE5MIK.js} +197 -40
  66. package/dist/dev/locales/km-KH-K2TE5MIK.js.map +7 -0
  67. package/dist/dev/locales/{ko-KR-RQX37SNF.js → ko-KR-75RUMBCO.js} +217 -60
  68. package/dist/dev/locales/ko-KR-75RUMBCO.js.map +7 -0
  69. package/dist/dev/locales/{ku-TR-5XJDIERL.js → ku-TR-E6DJ6LYM.js} +197 -40
  70. package/dist/dev/locales/ku-TR-E6DJ6LYM.js.map +7 -0
  71. package/dist/dev/locales/{lt-LT-MGUBX6CA.js → lt-LT-BYS5DA45.js} +178 -21
  72. package/dist/dev/locales/lt-LT-BYS5DA45.js.map +7 -0
  73. package/dist/dev/locales/{lv-LV-MD7N5VHD.js → lv-LV-SPQ2VWX3.js} +195 -38
  74. package/dist/dev/locales/lv-LV-SPQ2VWX3.js.map +7 -0
  75. package/dist/dev/locales/{mr-IN-4XWMNGQC.js → mr-IN-2HLK6LUA.js} +203 -46
  76. package/dist/dev/locales/mr-IN-2HLK6LUA.js.map +7 -0
  77. package/dist/dev/locales/{my-MM-O4Z74GN5.js → my-MM-P2LR44WR.js} +180 -23
  78. package/dist/dev/locales/my-MM-P2LR44WR.js.map +7 -0
  79. package/dist/dev/locales/{nb-NO-BMB73KRH.js → nb-NO-7YZHFFVS.js} +219 -62
  80. package/dist/dev/locales/nb-NO-7YZHFFVS.js.map +7 -0
  81. package/dist/dev/locales/{nl-NL-F2257BLQ.js → nl-NL-TF2OVIKN.js} +217 -60
  82. package/dist/dev/locales/nl-NL-TF2OVIKN.js.map +7 -0
  83. package/dist/dev/locales/{nn-NO-NCORG7TS.js → nn-NO-2BWEL2IS.js} +200 -43
  84. package/dist/dev/locales/nn-NO-2BWEL2IS.js.map +7 -0
  85. package/dist/dev/locales/{oc-FR-ATFBDMF6.js → oc-FR-5JYIFGLE.js} +212 -55
  86. package/dist/dev/locales/oc-FR-5JYIFGLE.js.map +7 -0
  87. package/dist/dev/locales/{pa-IN-D2I375G4.js → pa-IN-KBBGER76.js} +189 -32
  88. package/dist/dev/locales/pa-IN-KBBGER76.js.map +7 -0
  89. package/dist/dev/locales/{percentages-YKFLWNK2.js → percentages-2RAYDWNS.js} +2 -2
  90. package/dist/dev/locales/{pl-PL-YJHOWAAW.js → pl-PL-BWZ2X734.js} +213 -56
  91. package/dist/dev/locales/pl-PL-BWZ2X734.js.map +7 -0
  92. package/dist/dev/locales/{pt-BR-APOPYZJ7.js → pt-BR-ERVIQI63.js} +236 -79
  93. package/dist/dev/locales/pt-BR-ERVIQI63.js.map +7 -0
  94. package/dist/dev/locales/pt-PT-ZNJ5NB5S.js +743 -0
  95. package/dist/dev/locales/pt-PT-ZNJ5NB5S.js.map +7 -0
  96. package/dist/dev/locales/{ro-RO-L575VRQA.js → ro-RO-UYNXGUB7.js} +202 -45
  97. package/dist/dev/locales/ro-RO-UYNXGUB7.js.map +7 -0
  98. package/dist/dev/locales/{ru-RU-BLG6HZG5.js → ru-RU-F7LPIMGQ.js} +252 -95
  99. package/dist/dev/locales/ru-RU-F7LPIMGQ.js.map +7 -0
  100. package/dist/dev/locales/si-LK-5GF2DJUH.js +743 -0
  101. package/dist/dev/locales/si-LK-5GF2DJUH.js.map +7 -0
  102. package/dist/dev/locales/{sk-SK-DY6IPO5U.js → sk-SK-H6WE7IJX.js} +199 -42
  103. package/dist/dev/locales/sk-SK-H6WE7IJX.js.map +7 -0
  104. package/dist/dev/locales/{sl-SI-5DZSRA47.js → sl-SI-4PJ6LBI7.js} +196 -39
  105. package/dist/dev/locales/sl-SI-4PJ6LBI7.js.map +7 -0
  106. package/dist/dev/locales/{sv-SE-V32YHALQ.js → sv-SE-E5VQLCRE.js} +201 -44
  107. package/dist/dev/locales/sv-SE-E5VQLCRE.js.map +7 -0
  108. package/dist/dev/locales/{ta-IN-5JRAGQAO.js → ta-IN-2YWIVLKF.js} +256 -99
  109. package/dist/dev/locales/ta-IN-2YWIVLKF.js.map +7 -0
  110. package/dist/dev/locales/{th-TH-55ACRHDJ.js → th-TH-IV7RUTDK.js} +288 -131
  111. package/dist/dev/locales/th-TH-IV7RUTDK.js.map +7 -0
  112. package/dist/dev/locales/{tr-TR-7QYBXDBO.js → tr-TR-LEQWIQH7.js} +256 -99
  113. package/dist/dev/locales/tr-TR-LEQWIQH7.js.map +7 -0
  114. package/dist/dev/locales/{uk-UA-TJS2TMRH.js → uk-UA-DWVOQPTB.js} +228 -71
  115. package/dist/dev/locales/uk-UA-DWVOQPTB.js.map +7 -0
  116. package/dist/dev/locales/{si-LK-KT7GGO6D.js → uz-UZ-CKXQ3QKG.js} +211 -54
  117. package/dist/dev/locales/uz-UZ-CKXQ3QKG.js.map +7 -0
  118. package/dist/dev/locales/vi-VN-3P6DZOGS.js +743 -0
  119. package/dist/dev/locales/vi-VN-3P6DZOGS.js.map +7 -0
  120. package/dist/dev/locales/{zh-CN-4MXUOFTH.js → zh-CN-XXVG53TQ.js} +198 -41
  121. package/dist/dev/locales/zh-CN-XXVG53TQ.js.map +7 -0
  122. package/dist/dev/locales/{zh-HK-RBTGIU3U.js → zh-HK-JCHGKEUE.js} +174 -17
  123. package/dist/dev/locales/zh-HK-JCHGKEUE.js.map +7 -0
  124. package/dist/dev/locales/{zh-TW-U5VF4CCU.js → zh-TW-ARVT7RZU.js} +203 -46
  125. package/dist/dev/locales/zh-TW-ARVT7RZU.js.map +7 -0
  126. package/dist/prod/chunk-6GUG5R24.js +4 -0
  127. package/dist/prod/chunk-KRJFZ5JQ.js +1 -0
  128. package/dist/prod/chunk-RSFMSEP5.js +12 -0
  129. package/dist/prod/data/{image-4SM4COIL.js → image-AQDM7CNH.js} +1 -1
  130. package/dist/prod/index.css +1 -1
  131. package/dist/prod/index.js +25 -25
  132. package/dist/prod/locales/ar-SA-F62BVQMB.js +8 -0
  133. package/dist/prod/locales/az-AZ-7PGSKYOB.js +1 -0
  134. package/dist/prod/locales/bg-BG-AAEXMUQ4.js +5 -0
  135. package/dist/prod/locales/bn-BD-ONOFQYIQ.js +3 -0
  136. package/dist/prod/locales/bn-IN-YT3I2M3F.js +3 -0
  137. package/dist/prod/locales/ca-ES-GG4YH2FN.js +8 -0
  138. package/dist/prod/locales/cs-CZ-IS5VTBOP.js +7 -0
  139. package/dist/prod/locales/da-DK-VPQ2KWAY.js +2 -0
  140. package/dist/prod/locales/de-CH-G4Y2G6IS.js +7 -0
  141. package/dist/prod/locales/de-DE-RAT2LIDI.js +7 -0
  142. package/dist/prod/locales/el-GR-DNJB2AZO.js +7 -0
  143. package/dist/prod/locales/en-SFRQHD7K.js +1 -0
  144. package/dist/prod/locales/es-ES-IMTENLBU.js +7 -0
  145. package/dist/prod/locales/eu-ES-XLOS36YS.js +7 -0
  146. package/dist/prod/locales/fa-IR-J6Z2YOGX.js +9 -0
  147. package/dist/prod/locales/fi-FI-B2IQ7SBP.js +6 -0
  148. package/dist/prod/locales/fr-FR-N5BRDCMI.js +12 -0
  149. package/dist/prod/locales/gl-ES-BOYALFRN.js +6 -0
  150. package/dist/prod/locales/he-IL-H7M7HGY5.js +8 -0
  151. package/dist/prod/locales/hi-IN-7AB5CA2Q.js +3 -0
  152. package/dist/prod/locales/hu-HU-ZZM7UJLP.js +3 -0
  153. package/dist/prod/locales/id-ID-RZ7JNCXA.js +8 -0
  154. package/dist/prod/locales/it-IT-ZX7HN56D.js +8 -0
  155. package/dist/prod/locales/ja-JP-NBNBUHIR.js +7 -0
  156. package/dist/prod/locales/kaa-QWYSGEM7.js +1 -0
  157. package/dist/prod/locales/kab-KAB-Q3HBKQ5I.js +4 -0
  158. package/dist/prod/locales/kk-KZ-HF2NTCRX.js +1 -0
  159. package/dist/prod/locales/km-KH-CN6HHF5U.js +7 -0
  160. package/dist/prod/locales/ko-KR-SJQMUXM7.js +5 -0
  161. package/dist/prod/locales/ku-TR-VM4BHTPC.js +6 -0
  162. package/dist/prod/locales/lt-LT-QIWZQ7AG.js +3 -0
  163. package/dist/prod/locales/lv-LV-YQFCB4WZ.js +4 -0
  164. package/dist/prod/locales/mr-IN-GR2ZJPSQ.js +9 -0
  165. package/dist/prod/locales/my-MM-M5XJDJQ2.js +1 -0
  166. package/dist/prod/locales/nb-NO-2RU2YF7H.js +8 -0
  167. package/dist/prod/locales/nl-NL-MUHXDQFK.js +7 -0
  168. package/dist/prod/locales/nn-NO-72RCA552.js +4 -0
  169. package/dist/prod/locales/oc-FR-65ITQYQ2.js +4 -0
  170. package/dist/prod/locales/pa-IN-WESENMFH.js +4 -0
  171. package/dist/prod/locales/percentages-OEPNEGCM.js +1 -0
  172. package/dist/prod/locales/pl-PL-7C4NGVUA.js +12 -0
  173. package/dist/prod/locales/pt-BR-QH23C2IX.js +6 -0
  174. package/dist/prod/locales/pt-PT-O5XBATXI.js +8 -0
  175. package/dist/prod/locales/ro-RO-QHCHEGM5.js +12 -0
  176. package/dist/prod/locales/ru-RU-FUMQ2LLB.js +6 -0
  177. package/dist/prod/locales/si-LK-JYUINGNN.js +1 -0
  178. package/dist/prod/locales/sk-SK-R25O52BS.js +7 -0
  179. package/dist/prod/locales/sl-SI-5KPVX4FS.js +6 -0
  180. package/dist/prod/locales/sv-SE-MVMXV6O4.js +8 -0
  181. package/dist/prod/locales/ta-IN-A32FQB4D.js +6 -0
  182. package/dist/prod/locales/th-TH-CXMWNVBY.js +1 -0
  183. package/dist/prod/locales/tr-TR-YHFI3W2D.js +4 -0
  184. package/dist/prod/locales/uk-UA-UTJIIKT5.js +6 -0
  185. package/dist/prod/locales/uz-UZ-H4EGTR7D.js +1 -0
  186. package/dist/prod/locales/vi-VN-XBV2ESZM.js +7 -0
  187. package/dist/prod/locales/zh-CN-CKCJ4HAO.js +11 -0
  188. package/dist/prod/locales/zh-HK-ISASRRMF.js +1 -0
  189. package/dist/prod/locales/zh-TW-KYRW5V3R.js +9 -0
  190. package/dist/types/common/src/constants.d.ts +18 -15
  191. package/dist/types/common/src/editorInterface.d.ts +34 -0
  192. package/dist/types/common/src/index.d.ts +2 -0
  193. package/dist/types/common/src/utils.d.ts +2 -1
  194. package/dist/types/common/src/visualdebug.d.ts +41 -0
  195. package/dist/types/element/src/bounds.d.ts +1 -1
  196. package/dist/types/element/src/delta.d.ts +1 -2
  197. package/dist/types/element/src/index.d.ts +1 -0
  198. package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
  199. package/dist/types/element/src/renderElement.d.ts +4 -1
  200. package/dist/types/element/src/resizeTest.d.ts +5 -4
  201. package/dist/types/element/src/store.d.ts +3 -2
  202. package/dist/types/element/src/textElement.d.ts +1 -1
  203. package/dist/types/element/src/transformHandles.d.ts +5 -4
  204. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +21 -9
  205. package/dist/types/excalidraw/actions/actionBoundText.d.ts +14 -6
  206. package/dist/types/excalidraw/actions/actionCanvas.d.ts +94 -41
  207. package/dist/types/excalidraw/actions/actionClipboard.d.ts +42 -18
  208. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +7 -3
  209. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +22 -10
  210. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +1 -1
  211. package/dist/types/excalidraw/actions/actionElementLink.d.ts +7 -3
  212. package/dist/types/excalidraw/actions/actionElementLock.d.ts +14 -6
  213. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +7 -3
  214. package/dist/types/excalidraw/actions/actionExport.d.ts +63 -27
  215. package/dist/types/excalidraw/actions/actionFinalize.d.ts +14 -6
  216. package/dist/types/excalidraw/actions/actionFrame.d.ts +28 -12
  217. package/dist/types/excalidraw/actions/actionGroup.d.ts +14 -6
  218. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +8 -4
  219. package/dist/types/excalidraw/actions/actionLink.d.ts +5 -1
  220. package/dist/types/excalidraw/actions/actionMenu.d.ts +7 -369
  221. package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -6
  222. package/dist/types/excalidraw/actions/actionProperties.d.ts +122 -53
  223. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +7 -3
  224. package/dist/types/excalidraw/actions/actionStyles.d.ts +7 -3
  225. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +7 -3
  226. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +7 -3
  227. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +7 -3
  228. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +7 -3
  229. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +7 -3
  230. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +8 -4
  231. package/dist/types/excalidraw/actions/index.d.ts +2 -2
  232. package/dist/types/excalidraw/actions/types.d.ts +1 -1
  233. package/dist/types/excalidraw/appState.d.ts +5 -1
  234. package/dist/types/excalidraw/clipboard.d.ts +64 -1
  235. package/dist/types/excalidraw/components/Actions.d.ts +21 -4
  236. package/dist/types/excalidraw/components/App.d.ts +27 -23
  237. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -0
  238. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -1
  239. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -1
  240. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -0
  241. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +1 -1
  242. package/dist/types/excalidraw/components/FilledButton.d.ts +1 -1
  243. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +2 -1
  244. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +3 -1
  245. package/dist/types/excalidraw/components/HintViewer.d.ts +4 -3
  246. package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
  247. package/dist/types/excalidraw/components/LayerUI.d.ts +2 -1
  248. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +1 -1
  249. package/dist/types/excalidraw/components/LinkButton.d.ts +4 -0
  250. package/dist/types/excalidraw/components/MobileMenu.d.ts +3 -5
  251. package/dist/types/excalidraw/components/MobileToolBar.d.ts +11 -0
  252. package/dist/types/excalidraw/components/Popover.d.ts +2 -1
  253. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -0
  254. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -2
  255. package/dist/types/excalidraw/components/TextField.d.ts +1 -0
  256. package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
  257. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +6 -3
  258. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +4 -2
  259. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +2 -1
  260. package/dist/types/excalidraw/components/icons.d.ts +10 -0
  261. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +13 -1
  262. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +0 -3
  263. package/dist/types/excalidraw/components/shapes.d.ts +129 -1
  264. package/dist/types/excalidraw/data/blob.d.ts +3 -7
  265. package/dist/types/excalidraw/data/types.d.ts +4 -1
  266. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  267. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +3 -1
  268. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  269. package/dist/types/excalidraw/index.d.ts +2 -3
  270. package/dist/types/excalidraw/renderer/animation.d.ts +12 -0
  271. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +5 -13
  272. package/dist/types/excalidraw/scene/types.d.ts +11 -3
  273. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  274. package/dist/types/excalidraw/types.d.ts +18 -15
  275. package/dist/types/math/src/segment.d.ts +1 -0
  276. package/package.json +5 -5
  277. package/dist/dev/chunk-CRKRRBMD.js.map +0 -7
  278. package/dist/dev/chunk-MFAYKRVR.js +0 -66
  279. package/dist/dev/chunk-MFAYKRVR.js.map +0 -7
  280. package/dist/dev/chunk-QF5FRM6O.js.map +0 -7
  281. package/dist/dev/locales/ar-SA-XORAP2EK.js.map +0 -7
  282. package/dist/dev/locales/az-AZ-NAUU3Z4Y.js.map +0 -7
  283. package/dist/dev/locales/bg-BG-AAABLFCY.js.map +0 -7
  284. package/dist/dev/locales/bn-BD-PM4AC5WG.js.map +0 -7
  285. package/dist/dev/locales/ca-ES-YNNMFRQX.js.map +0 -7
  286. package/dist/dev/locales/cs-CZ-DGZA5IKG.js.map +0 -7
  287. package/dist/dev/locales/da-DK-N76F4QAJ.js.map +0 -7
  288. package/dist/dev/locales/de-DE-DMRXZ2SZ.js.map +0 -7
  289. package/dist/dev/locales/el-GR-HIKPLEXI.js.map +0 -7
  290. package/dist/dev/locales/es-ES-AQYVXC32.js.map +0 -7
  291. package/dist/dev/locales/eu-ES-3TOEU5DE.js.map +0 -7
  292. package/dist/dev/locales/fa-IR-527GAKUP.js.map +0 -7
  293. package/dist/dev/locales/fi-FI-M3WLVDFP.js.map +0 -7
  294. package/dist/dev/locales/fr-FR-YE4VDJFI.js.map +0 -7
  295. package/dist/dev/locales/gl-ES-KMXUYGUN.js.map +0 -7
  296. package/dist/dev/locales/he-IL-4MU5N22B.js +0 -586
  297. package/dist/dev/locales/he-IL-4MU5N22B.js.map +0 -7
  298. package/dist/dev/locales/hi-IN-ZHZNZWFC.js +0 -586
  299. package/dist/dev/locales/hi-IN-ZHZNZWFC.js.map +0 -7
  300. package/dist/dev/locales/hu-HU-VIYZI3X4.js.map +0 -7
  301. package/dist/dev/locales/id-ID-22TWZNLA.js.map +0 -7
  302. package/dist/dev/locales/it-IT-MDEQ2SG3.js.map +0 -7
  303. package/dist/dev/locales/ja-JP-K2DI4W6B.js.map +0 -7
  304. package/dist/dev/locales/kaa-6BPSNM3R.js.map +0 -7
  305. package/dist/dev/locales/kab-KAB-2S7ZURK7.js.map +0 -7
  306. package/dist/dev/locales/kk-KZ-UJPYGRQQ.js.map +0 -7
  307. package/dist/dev/locales/km-KH-M5T5JKUE.js.map +0 -7
  308. package/dist/dev/locales/ko-KR-RQX37SNF.js.map +0 -7
  309. package/dist/dev/locales/ku-TR-5XJDIERL.js.map +0 -7
  310. package/dist/dev/locales/lt-LT-MGUBX6CA.js.map +0 -7
  311. package/dist/dev/locales/lv-LV-MD7N5VHD.js.map +0 -7
  312. package/dist/dev/locales/mr-IN-4XWMNGQC.js.map +0 -7
  313. package/dist/dev/locales/my-MM-O4Z74GN5.js.map +0 -7
  314. package/dist/dev/locales/nb-NO-BMB73KRH.js.map +0 -7
  315. package/dist/dev/locales/nl-NL-F2257BLQ.js.map +0 -7
  316. package/dist/dev/locales/nn-NO-NCORG7TS.js.map +0 -7
  317. package/dist/dev/locales/oc-FR-ATFBDMF6.js.map +0 -7
  318. package/dist/dev/locales/pa-IN-D2I375G4.js.map +0 -7
  319. package/dist/dev/locales/pl-PL-YJHOWAAW.js.map +0 -7
  320. package/dist/dev/locales/pt-BR-APOPYZJ7.js.map +0 -7
  321. package/dist/dev/locales/pt-PT-W56WCN7P.js +0 -586
  322. package/dist/dev/locales/pt-PT-W56WCN7P.js.map +0 -7
  323. package/dist/dev/locales/ro-RO-L575VRQA.js.map +0 -7
  324. package/dist/dev/locales/ru-RU-BLG6HZG5.js.map +0 -7
  325. package/dist/dev/locales/si-LK-KT7GGO6D.js.map +0 -7
  326. package/dist/dev/locales/sk-SK-DY6IPO5U.js.map +0 -7
  327. package/dist/dev/locales/sl-SI-5DZSRA47.js.map +0 -7
  328. package/dist/dev/locales/sv-SE-V32YHALQ.js.map +0 -7
  329. package/dist/dev/locales/ta-IN-5JRAGQAO.js.map +0 -7
  330. package/dist/dev/locales/th-TH-55ACRHDJ.js.map +0 -7
  331. package/dist/dev/locales/tr-TR-7QYBXDBO.js.map +0 -7
  332. package/dist/dev/locales/uk-UA-TJS2TMRH.js.map +0 -7
  333. package/dist/dev/locales/vi-VN-Y5CQ2EKQ.js +0 -586
  334. package/dist/dev/locales/vi-VN-Y5CQ2EKQ.js.map +0 -7
  335. package/dist/dev/locales/zh-CN-4MXUOFTH.js.map +0 -7
  336. package/dist/dev/locales/zh-HK-RBTGIU3U.js.map +0 -7
  337. package/dist/dev/locales/zh-TW-U5VF4CCU.js.map +0 -7
  338. package/dist/prod/chunk-HHV2PJKY.js +0 -4
  339. package/dist/prod/chunk-I4UNSFV6.js +0 -12
  340. package/dist/prod/chunk-Z3N5DIM6.js +0 -1
  341. package/dist/prod/locales/ar-SA-G6X2FPQ2.js +0 -10
  342. package/dist/prod/locales/az-AZ-76LH7QW2.js +0 -1
  343. package/dist/prod/locales/bg-BG-XCXSNQG7.js +0 -5
  344. package/dist/prod/locales/bn-BD-2XOGV67Q.js +0 -5
  345. package/dist/prod/locales/ca-ES-6MX7JW3Y.js +0 -8
  346. package/dist/prod/locales/cs-CZ-2BRQDIVT.js +0 -11
  347. package/dist/prod/locales/da-DK-5WZEPLOC.js +0 -5
  348. package/dist/prod/locales/de-DE-XR44H4JA.js +0 -8
  349. package/dist/prod/locales/el-GR-BZB4AONW.js +0 -10
  350. package/dist/prod/locales/en-TYY6KWIJ.js +0 -1
  351. package/dist/prod/locales/es-ES-U4NZUMDT.js +0 -9
  352. package/dist/prod/locales/eu-ES-A7QVB2H4.js +0 -11
  353. package/dist/prod/locales/fa-IR-HGAKTJCU.js +0 -8
  354. package/dist/prod/locales/fi-FI-Z5N7JZ37.js +0 -6
  355. package/dist/prod/locales/fr-FR-RHASNOE6.js +0 -9
  356. package/dist/prod/locales/gl-ES-HMX3MZ6V.js +0 -10
  357. package/dist/prod/locales/he-IL-6SHJWFNN.js +0 -10
  358. package/dist/prod/locales/hi-IN-IWLTKZ5I.js +0 -4
  359. package/dist/prod/locales/hu-HU-A5ZG7DT2.js +0 -7
  360. package/dist/prod/locales/id-ID-SAP4L64H.js +0 -10
  361. package/dist/prod/locales/it-IT-JPQ66NNP.js +0 -11
  362. package/dist/prod/locales/ja-JP-DBVTYXUO.js +0 -8
  363. package/dist/prod/locales/kaa-6HZHGXH3.js +0 -1
  364. package/dist/prod/locales/kab-KAB-ZGHBKWFO.js +0 -8
  365. package/dist/prod/locales/kk-KZ-P5N5QNE5.js +0 -1
  366. package/dist/prod/locales/km-KH-HSX4SM5Z.js +0 -11
  367. package/dist/prod/locales/ko-KR-MTYHY66A.js +0 -9
  368. package/dist/prod/locales/ku-TR-6OUDTVRD.js +0 -9
  369. package/dist/prod/locales/lt-LT-XHIRWOB4.js +0 -3
  370. package/dist/prod/locales/lv-LV-5QDEKY6T.js +0 -7
  371. package/dist/prod/locales/mr-IN-CRQNXWMA.js +0 -13
  372. package/dist/prod/locales/my-MM-5M5IBNSE.js +0 -1
  373. package/dist/prod/locales/nb-NO-T6EIAALU.js +0 -10
  374. package/dist/prod/locales/nl-NL-IS3SIHDZ.js +0 -8
  375. package/dist/prod/locales/nn-NO-6E72VCQL.js +0 -8
  376. package/dist/prod/locales/oc-FR-POXYY2M6.js +0 -8
  377. package/dist/prod/locales/pa-IN-N4M65BXN.js +0 -4
  378. package/dist/prod/locales/percentages-BXMCSKIN.js +0 -1
  379. package/dist/prod/locales/pl-PL-T2D74RX3.js +0 -9
  380. package/dist/prod/locales/pt-BR-5N22H2LF.js +0 -9
  381. package/dist/prod/locales/pt-PT-UZXXM6DQ.js +0 -9
  382. package/dist/prod/locales/ro-RO-JPDTUUEW.js +0 -11
  383. package/dist/prod/locales/ru-RU-B4JR7IUQ.js +0 -9
  384. package/dist/prod/locales/si-LK-N5RQ5JYF.js +0 -1
  385. package/dist/prod/locales/sk-SK-C5VTKIMK.js +0 -6
  386. package/dist/prod/locales/sl-SI-NN7IZMDC.js +0 -6
  387. package/dist/prod/locales/sv-SE-XGPEYMSR.js +0 -10
  388. package/dist/prod/locales/ta-IN-2NMHFXQM.js +0 -9
  389. package/dist/prod/locales/th-TH-HPSO5L25.js +0 -2
  390. package/dist/prod/locales/tr-TR-DEFEU3FU.js +0 -7
  391. package/dist/prod/locales/uk-UA-QMV73CPH.js +0 -6
  392. package/dist/prod/locales/vi-VN-M7AON7JQ.js +0 -5
  393. package/dist/prod/locales/zh-CN-LNUGB5OW.js +0 -10
  394. package/dist/prod/locales/zh-HK-E62DVLB3.js +0 -1
  395. package/dist/prod/locales/zh-TW-RAJ6MFWO.js +0 -9
  396. /package/dist/dev/data/{image-IWGLHPIX.js.map → image-WN3C5VZT.js.map} +0 -0
  397. /package/dist/dev/locales/{en-SMAPCEOQ.js.map → en-YSPYSBUR.js.map} +0 -0
  398. /package/dist/dev/locales/{percentages-YKFLWNK2.js.map → percentages-2RAYDWNS.js.map} +0 -0
@@ -1,13 +1,5 @@
1
1
  import type { ExcalidrawElement, FontFamilyValues } from "@excalidraw/element/types";
2
2
  import type { AppProps, AppState } from "@excalidraw/excalidraw/types";
3
- export declare const isDarwin: boolean;
4
- export declare const isWindows: boolean;
5
- export declare const isAndroid: boolean;
6
- export declare const isFirefox: boolean;
7
- export declare const isChrome: boolean;
8
- export declare const isSafari: boolean;
9
- export declare const isIOS: boolean;
10
- export declare const isBrave: () => boolean;
11
3
  export declare const supportsResizeObserver: boolean;
12
4
  export declare const APP_NAME = "Excalidraw";
13
5
  export declare const TEXT_AUTOWRAP_THRESHOLD = 36;
@@ -86,10 +78,12 @@ export declare const ENV: {
86
78
  PRODUCTION: string;
87
79
  };
88
80
  export declare const CLASSES: {
81
+ SIDEBAR: string;
89
82
  SHAPE_ACTIONS_MENU: string;
90
83
  ZOOM_ACTIONS: string;
91
84
  SEARCH_MENU_INPUT_WRAPPER: string;
92
85
  CONVERT_ELEMENT_TYPE_POPUP: string;
86
+ SHAPE_ACTIONS_THEME_SCOPE: string;
93
87
  };
94
88
  export declare const CJK_HAND_DRAWN_FALLBACK_FONT = "Xiaolai";
95
89
  export declare const WINDOWS_EMOJI_FALLBACK_FONT = "Segoe UI Emoji";
@@ -175,6 +169,14 @@ export declare const IMAGE_MIME_TYPES: {
175
169
  readonly avif: "image/avif";
176
170
  readonly jfif: "image/jfif";
177
171
  };
172
+ export declare const STRING_MIME_TYPES: {
173
+ readonly text: "text/plain";
174
+ readonly html: "text/html";
175
+ readonly json: "application/json";
176
+ readonly excalidraw: "application/vnd.excalidraw+json";
177
+ readonly excalidrawlib: "application/vnd.excalidrawlib+json";
178
+ readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
179
+ };
178
180
  export declare const MIME_TYPES: {
179
181
  readonly svg: "image/svg+xml";
180
182
  readonly png: "image/png";
@@ -185,14 +187,15 @@ export declare const MIME_TYPES: {
185
187
  readonly ico: "image/x-icon";
186
188
  readonly avif: "image/avif";
187
189
  readonly jfif: "image/jfif";
190
+ readonly "excalidraw.svg": "image/svg+xml";
191
+ readonly "excalidraw.png": "image/png";
192
+ readonly binary: "application/octet-stream";
188
193
  readonly text: "text/plain";
189
194
  readonly html: "text/html";
190
195
  readonly json: "application/json";
191
196
  readonly excalidraw: "application/vnd.excalidraw+json";
192
197
  readonly excalidrawlib: "application/vnd.excalidrawlib+json";
193
- readonly "excalidraw.svg": "image/svg+xml";
194
- readonly "excalidraw.png": "image/png";
195
- readonly binary: "application/octet-stream";
198
+ readonly excalidrawlibIds: "application/vnd.excalidrawlib.ids+json";
196
199
  };
197
200
  export declare const ALLOWED_PASTE_MIME_TYPES: readonly ["text/plain", "text/html", ...("image/svg+xml" | "image/png" | "image/jpeg" | "image/gif" | "image/webp" | "image/bmp" | "image/x-icon" | "image/avif" | "image/jfif")[]];
198
201
  export declare const EXPORT_IMAGE_TYPES: {
@@ -227,10 +230,6 @@ export declare const URL_HASH_KEYS: {
227
230
  readonly addLibrary: "addLibrary";
228
231
  };
229
232
  export declare const DEFAULT_UI_OPTIONS: AppProps["UIOptions"];
230
- export declare const MQ_MAX_WIDTH_PORTRAIT = 730;
231
- export declare const MQ_MAX_WIDTH_LANDSCAPE = 1000;
232
- export declare const MQ_MAX_HEIGHT_LANDSCAPE = 500;
233
- export declare const MQ_RIGHT_SIDEBAR_MIN_WIDTH = 1229;
234
233
  export declare const MAX_DECIMALS_FOR_SVG_EXPORT = 2;
235
234
  export declare const EXPORT_SCALES: number[];
236
235
  export declare const DEFAULT_EXPORT_PADDING = 10;
@@ -342,3 +341,7 @@ export declare enum UserIdleState {
342
341
  * the start and end points)
343
342
  */
344
343
  export declare const LINE_POLYGON_POINT_MERGE_DISTANCE = 20;
344
+ export declare const DOUBLE_TAP_POSITION_THRESHOLD = 35;
345
+ export declare const MOBILE_ACTION_BUTTON_BG: {
346
+ readonly background: "var(--mobile-action-button-bg)";
347
+ };
@@ -0,0 +1,34 @@
1
+ export type StylesPanelMode = "compact" | "full" | "mobile";
2
+ export type EditorInterface = Readonly<{
3
+ formFactor: "phone" | "tablet" | "desktop";
4
+ desktopUIMode: "compact" | "full";
5
+ userAgent: Readonly<{
6
+ isMobileDevice: boolean;
7
+ platform: "ios" | "android" | "other" | "unknown";
8
+ }>;
9
+ isTouchScreen: boolean;
10
+ canFitSidebar: boolean;
11
+ isLandscape: boolean;
12
+ }>;
13
+ export declare const MQ_MAX_MOBILE = 599;
14
+ export declare const MQ_MAX_WIDTH_LANDSCAPE = 1000;
15
+ export declare const MQ_MAX_HEIGHT_LANDSCAPE = 500;
16
+ export declare const MQ_MIN_TABLET: number;
17
+ export declare const MQ_MAX_TABLET = 1400;
18
+ export declare const MQ_MIN_WIDTH_DESKTOP = 1440;
19
+ export declare const MQ_RIGHT_SIDEBAR_MIN_WIDTH = 1229;
20
+ export declare const isDarwin: boolean;
21
+ export declare const isWindows: boolean;
22
+ export declare const isAndroid: boolean;
23
+ export declare const isFirefox: boolean;
24
+ export declare const isChrome: boolean;
25
+ export declare const isSafari: boolean;
26
+ export declare const isIOS: boolean;
27
+ export declare const isBrave: () => boolean;
28
+ export declare const isMobileBreakpoint: (width: number, height: number) => boolean;
29
+ export declare const isTabletBreakpoint: (editorWidth: number, editorHeight: number) => boolean;
30
+ export declare const getFormFactor: (editorWidth: number, editorHeight: number) => EditorInterface["formFactor"];
31
+ export declare const deriveStylesPanelMode: (editorInterface: EditorInterface) => StylesPanelMode;
32
+ export declare const createUserAgentDescriptor: (userAgentString: string) => EditorInterface["userAgent"];
33
+ export declare const loadDesktopUIModePreference: () => "compact" | "full" | null;
34
+ export declare const setDesktopUIMode: (mode: EditorInterface["desktopUIMode"]) => "compact" | "full" | undefined;
@@ -10,3 +10,5 @@ export * from "./random";
10
10
  export * from "./url";
11
11
  export * from "./utils";
12
12
  export * from "./emitter";
13
+ export * from "./visualdebug";
14
+ export * from "./editorInterface";
@@ -17,6 +17,8 @@ export declare const getFontString: ({ fontSize, fontFamily, }: {
17
17
  fontSize: number;
18
18
  fontFamily: FontFamilyValues;
19
19
  }) => FontString;
20
+ /** executes callback in the frame that's after the current one */
21
+ export declare const nextAnimationFrame: (cb: () => any) => Promise<void>;
20
22
  export declare const debounce: <T extends any[]>(fn: (...args: T) => void, timeout: number) => {
21
23
  (...args: T): void;
22
24
  flush(): void;
@@ -94,7 +96,6 @@ export declare const updateActiveTool: (appState: Pick<AppState, "activeTool">,
94
96
  export declare const isFullScreen: () => boolean;
95
97
  export declare const allowFullScreen: () => Promise<void>;
96
98
  export declare const exitFullScreen: () => Promise<void>;
97
- export declare const getShortcutKey: (shortcut: string) => string;
98
99
  export declare const viewportCoordsToSceneCoords: ({ clientX, clientY }: {
99
100
  clientX: number;
100
101
  clientY: number;
@@ -0,0 +1,41 @@
1
+ import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
2
+ import type { Curve } from "@excalidraw/math";
3
+ import type { LineSegment } from "@excalidraw/utils";
4
+ import type { Bounds } from "@excalidraw/element";
5
+ declare global {
6
+ interface Window {
7
+ visualDebug?: {
8
+ data: DebugElement[][];
9
+ currentFrame?: number;
10
+ };
11
+ }
12
+ }
13
+ export type DebugElement = {
14
+ color: string;
15
+ data: LineSegment<GlobalPoint> | Curve<GlobalPoint>;
16
+ permanent: boolean;
17
+ };
18
+ export declare const debugDrawCubicBezier: (c: Curve<GlobalPoint>, opts?: {
19
+ color?: string;
20
+ permanent?: boolean;
21
+ }) => void;
22
+ export declare const debugDrawLine: (segment: LineSegment<GlobalPoint> | LineSegment<GlobalPoint>[], opts?: {
23
+ color?: string;
24
+ permanent?: boolean;
25
+ }) => void;
26
+ export declare const debugDrawPoint: (p: GlobalPoint, opts?: {
27
+ color?: string;
28
+ permanent?: boolean;
29
+ fuzzy?: boolean;
30
+ }) => void;
31
+ export declare const debugDrawBounds: (box: Bounds | Bounds[], opts?: {
32
+ color?: string;
33
+ permanent?: boolean;
34
+ }) => void;
35
+ export declare const debugDrawPoints: ({ x, y, points, }: {
36
+ x: number;
37
+ y: number;
38
+ points: LocalPoint[];
39
+ }, options?: any) => void;
40
+ export declare const debugCloseFrame: () => void;
41
+ export declare const debugClear: () => void;
@@ -74,7 +74,7 @@ export interface BoundingBox {
74
74
  width: number;
75
75
  height: number;
76
76
  }
77
- export declare const getCommonBoundingBox: (elements: ExcalidrawElement[] | readonly NonDeleted<ExcalidrawElement>[]) => BoundingBox;
77
+ export declare const getCommonBoundingBox: (elements: readonly ExcalidrawElement[] | readonly NonDeleted<ExcalidrawElement>[]) => BoundingBox;
78
78
  /**
79
79
  * returns scene coords of user's editor viewport (visible canvas area) bounds
80
80
  */
@@ -105,7 +105,7 @@ export interface DeltaContainer<T> {
105
105
  *
106
106
  * @returns a tuple of the next object `T` with applied `Delta`s, and `boolean`, indicating whether the applied deltas resulted in a visible change.
107
107
  */
108
- applyTo(previous: T, ...options: unknown[]): [T, boolean, ...unknown[]];
108
+ applyTo(previous: T, ...options: unknown[]): [T, boolean];
109
109
  /**
110
110
  * Squashes the current delta with the given one.
111
111
  */
@@ -224,6 +224,5 @@ export declare class ElementsDelta implements DeltaContainer<SceneElementsMap> {
224
224
  */
225
225
  private static postProcess;
226
226
  private static stripIrrelevantProps;
227
- private static stripVersionProps;
228
227
  }
229
228
  export {};
@@ -38,6 +38,7 @@ export * from "./image";
38
38
  export * from "./linearElementEditor";
39
39
  export * from "./mutateElement";
40
40
  export * from "./newElement";
41
+ export * from "./positionElementsOnGrid";
41
42
  export * from "./renderElement";
42
43
  export * from "./resizeElements";
43
44
  export * from "./resizeTest";
@@ -0,0 +1,2 @@
1
+ import type { ExcalidrawElement } from "./types";
2
+ export declare const positionElementsOnGrid: <TElement extends ExcalidrawElement>(elements: TElement[] | TElement[][], centerX: number, centerY: number, padding?: number) => TElement[];
@@ -1,6 +1,7 @@
1
+ import { type GlobalPoint } from "@excalidraw/math";
1
2
  import type { AppState, StaticCanvasAppState, InteractiveCanvasAppState, ElementsPendingErasure, PendingExcalidrawElements } from "@excalidraw/excalidraw/types";
2
3
  import type { StaticCanvasRenderConfig, RenderableElementsMap, InteractiveCanvasRenderConfig } from "@excalidraw/excalidraw/scene/types";
3
- import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap } from "./types";
4
+ import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap, ElementsMap } from "./types";
4
5
  import type { RoughCanvas } from "roughjs/bin/canvas";
5
6
  export declare const IMAGE_INVERT_FILTER = "invert(100%) hue-rotate(180deg) saturate(1.25)";
6
7
  export declare const getRenderOpacity: (element: ExcalidrawElement, containingFrame: ExcalidrawFrameLikeElement | null, elementsPendingErasure: ElementsPendingErasure, pendingNodes: Readonly<PendingExcalidrawElements> | null, globalAlpha?: number) => number;
@@ -26,3 +27,5 @@ export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
26
27
  export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
27
28
  export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
28
29
  export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
30
+ export declare function getFreedrawOutlineAsSegments(element: ExcalidrawFreeDrawElement, points: [number, number][], elementsMap: ElementsMap): import("@excalidraw/math").LineSegment<GlobalPoint>[];
31
+ export declare function getFreedrawOutlinePoints(element: ExcalidrawFreeDrawElement): [number, number][];
@@ -1,14 +1,15 @@
1
+ import { type EditorInterface } from "@excalidraw/common";
1
2
  import type { GlobalPoint, LocalPoint } from "@excalidraw/math";
2
- import type { AppState, Device, Zoom } from "@excalidraw/excalidraw/types";
3
+ import type { AppState, Zoom } from "@excalidraw/excalidraw/types";
3
4
  import type { Bounds } from "./bounds";
4
5
  import type { MaybeTransformHandleType } from "./transformHandles";
5
6
  import type { ExcalidrawElement, PointerType, NonDeletedExcalidrawElement, ElementsMap } from "./types";
6
- export declare const resizeTest: <Point extends GlobalPoint | LocalPoint>(element: NonDeletedExcalidrawElement, elementsMap: ElementsMap, appState: AppState, x: number, y: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
7
- export declare const getElementWithTransformHandleType: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, elementsMap: ElementsMap, device: Device) => {
7
+ export declare const resizeTest: <Point extends GlobalPoint | LocalPoint>(element: NonDeletedExcalidrawElement, elementsMap: ElementsMap, appState: AppState, x: number, y: number, zoom: Zoom, pointerType: PointerType, editorInterface: EditorInterface) => MaybeTransformHandleType;
8
+ export declare const getElementWithTransformHandleType: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, elementsMap: ElementsMap, editorInterface: EditorInterface) => {
8
9
  element: NonDeletedExcalidrawElement;
9
10
  transformHandleType: MaybeTransformHandleType;
10
11
  } | null;
11
- export declare const getTransformHandleTypeFromCoords: <Point extends GlobalPoint | LocalPoint>([x1, y1, x2, y2]: Bounds, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
12
+ export declare const getTransformHandleTypeFromCoords: <Point extends GlobalPoint | LocalPoint>([x1, y1, x2, y2]: Bounds, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, editorInterface: EditorInterface) => MaybeTransformHandleType;
12
13
  export declare const getCursorForResizingElement: (resizingElement: {
13
14
  element?: ExcalidrawElement;
14
15
  transformHandleType: MaybeTransformHandleType;
@@ -171,9 +171,9 @@ export declare class StoreDelta {
171
171
  */
172
172
  static load({ id, elements: { added, removed, updated }, appState: { delta: appStateDelta }, }: DTO<StoreDelta>): StoreDelta;
173
173
  /**
174
- * Squash the passed delta into the current instance.
174
+ * Squash the passed deltas into the aggregated delta instance.
175
175
  */
176
- squash(delta: StoreDelta): this;
176
+ static squash(...deltas: StoreDelta[]): StoreDelta;
177
177
  /**
178
178
  * Inverse store delta, creates new instance of `StoreDelta`.
179
179
  */
@@ -186,6 +186,7 @@ export declare class StoreDelta {
186
186
  * Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
187
187
  */
188
188
  static applyLatestChanges(delta: StoreDelta, prevElements: SceneElementsMap, nextElements: SceneElementsMap, modifierOptions?: "deleted" | "inserted"): StoreDelta;
189
+ static empty(): StoreDelta;
189
190
  isEmpty(): boolean;
190
191
  }
191
192
  /**
@@ -1,6 +1,6 @@
1
+ import { type Radians } from "@excalidraw/math";
1
2
  import type { AppState } from "@excalidraw/excalidraw/types";
2
3
  import type { ExtractSetType } from "@excalidraw/common/utility-types";
3
- import type { Radians } from "@excalidraw/math";
4
4
  import type { Scene } from "./Scene";
5
5
  import type { MaybeTransformHandleType } from "./transformHandles";
6
6
  import type { ElementsMap, ExcalidrawElement, ExcalidrawElementType, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, NonDeletedExcalidrawElement } from "./types";
@@ -1,5 +1,6 @@
1
+ import { type EditorInterface } from "@excalidraw/common";
1
2
  import type { Radians } from "@excalidraw/math";
2
- import type { Device, InteractiveCanvasAppState, Zoom } from "@excalidraw/excalidraw/types";
3
+ import type { InteractiveCanvasAppState, Zoom } from "@excalidraw/excalidraw/types";
3
4
  import type { Bounds } from "./bounds";
4
5
  import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement, PointerType } from "./types";
5
6
  export type TransformHandleDirection = "n" | "s" | "w" | "e" | "nw" | "ne" | "sw" | "se";
@@ -28,8 +29,8 @@ export declare const OMIT_SIDES_FOR_FRAME: {
28
29
  w: boolean;
29
30
  rotation: boolean;
30
31
  };
31
- export declare const canResizeFromSides: (device: Device) => boolean;
32
- export declare const getOmitSidesForDevice: (device: Device) => {};
32
+ export declare const canResizeFromSides: (editorInterface: EditorInterface) => boolean;
33
+ export declare const getOmitSidesForEditorInterface: (editorInterface: EditorInterface) => {};
33
34
  export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [number, number, number, number, number, number], angle: Radians, zoom: Zoom, pointerType: PointerType, omitSides?: {
34
35
  s?: boolean | undefined;
35
36
  n?: boolean | undefined;
@@ -52,4 +53,4 @@ export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoo
52
53
  se?: boolean | undefined;
53
54
  rotation?: boolean | undefined;
54
55
  }) => TransformHandles;
55
- export declare const shouldShowBoundingBox: (elements: readonly NonDeletedExcalidrawElement[], appState: InteractiveCanvasAppState) => boolean;
56
+ export declare const hasBoundingBox: (elements: readonly NonDeletedExcalidrawElement[], appState: InteractiveCanvasAppState, editorInterface: EditorInterface) => boolean;
@@ -44,6 +44,10 @@ export declare const actionAddToLibrary: {
44
44
  locked: boolean;
45
45
  fromSelection: boolean;
46
46
  } & import("../types").ActiveTool;
47
+ preferredSelectionTool: {
48
+ type: "selection" | "lasso";
49
+ initialized: boolean;
50
+ };
47
51
  penMode: boolean;
48
52
  penDetected: boolean;
49
53
  exportBackground: boolean;
@@ -76,8 +80,8 @@ export declare const actionAddToLibrary: {
76
80
  zoom: Readonly<{
77
81
  value: import("../types").NormalizedZoomValue;
78
82
  }>;
79
- openMenu: "canvas" | "shape" | null;
80
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
83
+ openMenu: "canvas" | null;
84
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
81
85
  openSidebar: {
82
86
  name: string;
83
87
  tab?: string | undefined;
@@ -153,7 +157,7 @@ export declare const actionAddToLibrary: {
153
157
  shown: true;
154
158
  data: import("../charts").Spreadsheet;
155
159
  };
156
- showHyperlinkPopup: false | "editor" | "info";
160
+ showHyperlinkPopup: false | "info" | "editor";
157
161
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
158
162
  snapLines: readonly import("../snapping").SnapLine[];
159
163
  originSnapOffset: {
@@ -211,6 +215,10 @@ export declare const actionAddToLibrary: {
211
215
  locked: boolean;
212
216
  fromSelection: boolean;
213
217
  } & import("../types").ActiveTool;
218
+ preferredSelectionTool: {
219
+ type: "selection" | "lasso";
220
+ initialized: boolean;
221
+ };
214
222
  penMode: boolean;
215
223
  penDetected: boolean;
216
224
  exportBackground: boolean;
@@ -243,8 +251,8 @@ export declare const actionAddToLibrary: {
243
251
  zoom: Readonly<{
244
252
  value: import("../types").NormalizedZoomValue;
245
253
  }>;
246
- openMenu: "canvas" | "shape" | null;
247
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
254
+ openMenu: "canvas" | null;
255
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
248
256
  openSidebar: {
249
257
  name: string;
250
258
  tab?: string | undefined;
@@ -325,7 +333,7 @@ export declare const actionAddToLibrary: {
325
333
  shown: true;
326
334
  data: import("../charts").Spreadsheet;
327
335
  };
328
- showHyperlinkPopup: false | "editor" | "info";
336
+ showHyperlinkPopup: false | "info" | "editor";
329
337
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
330
338
  snapLines: readonly import("../snapping").SnapLine[];
331
339
  originSnapOffset: {
@@ -383,6 +391,10 @@ export declare const actionAddToLibrary: {
383
391
  locked: boolean;
384
392
  fromSelection: boolean;
385
393
  } & import("../types").ActiveTool;
394
+ preferredSelectionTool: {
395
+ type: "selection" | "lasso";
396
+ initialized: boolean;
397
+ };
386
398
  penMode: boolean;
387
399
  penDetected: boolean;
388
400
  exportBackground: boolean;
@@ -415,8 +427,8 @@ export declare const actionAddToLibrary: {
415
427
  zoom: Readonly<{
416
428
  value: import("../types").NormalizedZoomValue;
417
429
  }>;
418
- openMenu: "canvas" | "shape" | null;
419
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
430
+ openMenu: "canvas" | null;
431
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
420
432
  openSidebar: {
421
433
  name: string;
422
434
  tab?: string | undefined;
@@ -497,7 +509,7 @@ export declare const actionAddToLibrary: {
497
509
  shown: true;
498
510
  data: import("../charts").Spreadsheet;
499
511
  };
500
- showHyperlinkPopup: false | "editor" | "info";
512
+ showHyperlinkPopup: false | "info" | "editor";
501
513
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
502
514
  snapLines: readonly import("../snapping").SnapLine[];
503
515
  originSnapOffset: {
@@ -64,6 +64,10 @@ export declare const actionBindText: {
64
64
  locked: boolean;
65
65
  fromSelection: boolean;
66
66
  } & import("../types").ActiveTool;
67
+ preferredSelectionTool: {
68
+ type: "selection" | "lasso";
69
+ initialized: boolean;
70
+ };
67
71
  penMode: boolean;
68
72
  penDetected: boolean;
69
73
  exportBackground: boolean;
@@ -96,8 +100,8 @@ export declare const actionBindText: {
96
100
  zoom: Readonly<{
97
101
  value: import("../types").NormalizedZoomValue;
98
102
  }>;
99
- openMenu: "canvas" | "shape" | null;
100
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
103
+ openMenu: "canvas" | null;
104
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
101
105
  openSidebar: {
102
106
  name: string;
103
107
  tab?: string | undefined;
@@ -175,7 +179,7 @@ export declare const actionBindText: {
175
179
  shown: true;
176
180
  data: import("../charts").Spreadsheet;
177
181
  };
178
- showHyperlinkPopup: false | "editor" | "info";
182
+ showHyperlinkPopup: false | "info" | "editor";
179
183
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
180
184
  snapLines: readonly import("../snapping").SnapLine[];
181
185
  originSnapOffset: {
@@ -248,6 +252,10 @@ export declare const actionWrapTextInContainer: {
248
252
  locked: boolean;
249
253
  fromSelection: boolean;
250
254
  } & import("../types").ActiveTool;
255
+ preferredSelectionTool: {
256
+ type: "selection" | "lasso";
257
+ initialized: boolean;
258
+ };
251
259
  penMode: boolean;
252
260
  penDetected: boolean;
253
261
  exportBackground: boolean;
@@ -280,8 +288,8 @@ export declare const actionWrapTextInContainer: {
280
288
  zoom: Readonly<{
281
289
  value: import("../types").NormalizedZoomValue;
282
290
  }>;
283
- openMenu: "canvas" | "shape" | null;
284
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
291
+ openMenu: "canvas" | null;
292
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
285
293
  openSidebar: {
286
294
  name: string;
287
295
  tab?: string | undefined;
@@ -359,7 +367,7 @@ export declare const actionWrapTextInContainer: {
359
367
  shown: true;
360
368
  data: import("../charts").Spreadsheet;
361
369
  };
362
- showHyperlinkPopup: false | "editor" | "info";
370
+ showHyperlinkPopup: false | "info" | "editor";
363
371
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
364
372
  snapLines: readonly import("../snapping").SnapLine[];
365
373
  originSnapOffset: {