@dwelle/excalidraw 0.5.0-b8a955d → 0.5.0-ba41ca2

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 (563) hide show
  1. package/CHANGELOG.md +201 -0
  2. package/README.md +111 -14
  3. package/dist/dev/{chunk-KB3DXHSJ.js → chunk-63SUNQT5.js} +11160 -6728
  4. package/dist/dev/chunk-63SUNQT5.js.map +7 -0
  5. package/dist/dev/chunk-72CYJXY3.js +69 -0
  6. package/dist/dev/chunk-72CYJXY3.js.map +7 -0
  7. package/dist/dev/{chunk-VHBP2L6P.js → chunk-GLSDDV5C.js} +2 -2
  8. package/dist/dev/{chunk-XIXZ3HJO.js → chunk-ZKWD6VD3.js} +58 -10
  9. package/dist/dev/chunk-ZKWD6VD3.js.map +7 -0
  10. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js +259 -0
  11. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js.map +7 -0
  12. package/dist/dev/data/{image-YTAF2QAV.js → image-LSHTDYDI.js} +3 -3
  13. package/dist/dev/index.css +955 -752
  14. package/dist/dev/index.css.map +3 -3
  15. package/dist/dev/index.js +13606 -7440
  16. package/dist/dev/index.js.map +4 -4
  17. package/dist/dev/locales/{ar-SA-JK5MQ7TT.js → ar-SA-EW44IW4V.js} +127 -28
  18. package/dist/dev/locales/ar-SA-EW44IW4V.js.map +7 -0
  19. package/dist/dev/locales/{az-AZ-2PAD62G4.js → az-AZ-AI7WAYA2.js} +103 -4
  20. package/dist/dev/locales/az-AZ-AI7WAYA2.js.map +7 -0
  21. package/dist/dev/locales/{bg-BG-HUKVYCRK.js → bg-BG-43ZNGDXF.js} +104 -5
  22. package/dist/dev/locales/bg-BG-43ZNGDXF.js.map +7 -0
  23. package/dist/dev/locales/{bn-BD-V2CQI46P.js → bn-BD-PU4CN7NP.js} +103 -4
  24. package/dist/dev/locales/bn-BD-PU4CN7NP.js.map +7 -0
  25. package/dist/dev/locales/{bn-IN-MBEO4C3J.js → bn-IN-54CF43JL.js} +103 -4
  26. package/dist/dev/locales/bn-IN-54CF43JL.js.map +7 -0
  27. package/dist/dev/locales/{ca-ES-KWEKW4C3.js → ca-ES-RHJO3QDO.js} +105 -6
  28. package/dist/dev/locales/ca-ES-RHJO3QDO.js.map +7 -0
  29. package/dist/dev/locales/{cs-CZ-W5AHZB5H.js → cs-CZ-ZRSAO3BA.js} +104 -5
  30. package/dist/dev/locales/cs-CZ-ZRSAO3BA.js.map +7 -0
  31. package/dist/dev/locales/{da-DK-ITTM6YM4.js → da-DK-OAB6DEJX.js} +103 -4
  32. package/dist/dev/locales/da-DK-OAB6DEJX.js.map +7 -0
  33. package/dist/dev/locales/{de-CH-OAWPDQFJ.js → de-CH-QF7JLXTF.js} +181 -82
  34. package/dist/dev/locales/de-CH-QF7JLXTF.js.map +7 -0
  35. package/dist/dev/locales/{de-DE-ZRDYEPMS.js → de-DE-5ZO4KOPT.js} +175 -76
  36. package/dist/dev/locales/de-DE-5ZO4KOPT.js.map +7 -0
  37. package/dist/dev/locales/{el-GR-QXASZLPE.js → el-GR-F74ZSUEO.js} +105 -6
  38. package/dist/dev/locales/el-GR-F74ZSUEO.js.map +7 -0
  39. package/dist/dev/locales/{en-RTISGYJB.js → en-JNOPSYVP.js} +6 -2
  40. package/dist/dev/locales/{es-ES-VLQBB7FJ.js → es-ES-3B3IENPS.js} +162 -63
  41. package/dist/dev/locales/es-ES-3B3IENPS.js.map +7 -0
  42. package/dist/dev/locales/{eu-ES-TF2DGTZU.js → eu-ES-NH447TVU.js} +221 -122
  43. package/dist/dev/locales/eu-ES-NH447TVU.js.map +7 -0
  44. package/dist/dev/locales/{fa-IR-ITKFQ7QV.js → fa-IR-GHKV6Q2J.js} +110 -11
  45. package/dist/dev/locales/fa-IR-GHKV6Q2J.js.map +7 -0
  46. package/dist/dev/locales/{fi-FI-UWZRVXFI.js → fi-FI-ZXSYWCC4.js} +104 -5
  47. package/dist/dev/locales/fi-FI-ZXSYWCC4.js.map +7 -0
  48. package/dist/dev/locales/{fr-FR-A72LKGCO.js → fr-FR-RJSOSEYS.js} +105 -6
  49. package/dist/dev/locales/fr-FR-RJSOSEYS.js.map +7 -0
  50. package/dist/dev/locales/{gl-ES-2QCVIBFP.js → gl-ES-NAUVMVFY.js} +104 -5
  51. package/dist/dev/locales/gl-ES-NAUVMVFY.js.map +7 -0
  52. package/dist/dev/locales/{he-IL-WJNUHU26.js → he-IL-JBKWWR75.js} +162 -63
  53. package/dist/dev/locales/he-IL-JBKWWR75.js.map +7 -0
  54. package/dist/dev/locales/{hi-IN-XGMO235V.js → hi-IN-SD773MVZ.js} +113 -14
  55. package/dist/dev/locales/hi-IN-SD773MVZ.js.map +7 -0
  56. package/dist/dev/locales/{hu-HU-37FDQFIS.js → hu-HU-OTA7GOAV.js} +193 -94
  57. package/dist/dev/locales/hu-HU-OTA7GOAV.js.map +7 -0
  58. package/dist/dev/locales/{id-ID-EJIDCO4E.js → id-ID-2JAZWVTQ.js} +155 -56
  59. package/dist/dev/locales/id-ID-2JAZWVTQ.js.map +7 -0
  60. package/dist/dev/locales/{it-IT-X34PIOJ2.js → it-IT-GHWUAT77.js} +105 -6
  61. package/dist/dev/locales/it-IT-GHWUAT77.js.map +7 -0
  62. package/dist/dev/locales/{ja-JP-37FC23PR.js → ja-JP-YMGRGBPS.js} +207 -108
  63. package/dist/dev/locales/ja-JP-YMGRGBPS.js.map +7 -0
  64. package/dist/dev/locales/{kaa-7ZYDFVKA.js → kaa-RRE7XUCW.js} +103 -4
  65. package/dist/dev/locales/kaa-RRE7XUCW.js.map +7 -0
  66. package/dist/dev/locales/{kab-KAB-MILWXBA6.js → kab-KAB-ZCYVOJU4.js} +104 -5
  67. package/dist/dev/locales/kab-KAB-ZCYVOJU4.js.map +7 -0
  68. package/dist/dev/locales/{kk-KZ-7BWTPIAV.js → kk-KZ-TO6XEFJC.js} +103 -4
  69. package/dist/dev/locales/kk-KZ-TO6XEFJC.js.map +7 -0
  70. package/dist/dev/locales/{km-KH-BV4P2KSZ.js → km-KH-3HTDL5HB.js} +104 -5
  71. package/dist/dev/locales/km-KH-3HTDL5HB.js.map +7 -0
  72. package/dist/dev/locales/{ko-KR-TSXE5P7B.js → ko-KR-O4L4O7L6.js} +184 -85
  73. package/dist/dev/locales/ko-KR-O4L4O7L6.js.map +7 -0
  74. package/dist/dev/locales/{ku-TR-ASSXNN3U.js → ku-TR-AFJWDY67.js} +104 -5
  75. package/dist/dev/locales/ku-TR-AFJWDY67.js.map +7 -0
  76. package/dist/dev/locales/{lt-LT-G7RZYQQU.js → lt-LT-7QOT2VDQ.js} +103 -4
  77. package/dist/dev/locales/lt-LT-7QOT2VDQ.js.map +7 -0
  78. package/dist/dev/locales/{lv-LV-DXNPBJZU.js → lv-LV-WV6C4NYF.js} +104 -5
  79. package/dist/dev/locales/lv-LV-WV6C4NYF.js.map +7 -0
  80. package/dist/dev/locales/{mr-IN-7F2ZCTCF.js → mr-IN-3TLYWOEI.js} +106 -7
  81. package/dist/dev/locales/mr-IN-3TLYWOEI.js.map +7 -0
  82. package/dist/dev/locales/{my-MM-NBI3KQGW.js → my-MM-NNL2QJT3.js} +103 -4
  83. package/dist/dev/locales/my-MM-NNL2QJT3.js.map +7 -0
  84. package/dist/dev/locales/{nb-NO-4DCTQT6L.js → nb-NO-PG3XLMEV.js} +105 -6
  85. package/dist/dev/locales/nb-NO-PG3XLMEV.js.map +7 -0
  86. package/dist/dev/locales/{nl-NL-XGZJ7V2V.js → nl-NL-MMOYEKKQ.js} +109 -10
  87. package/dist/dev/locales/nl-NL-MMOYEKKQ.js.map +7 -0
  88. package/dist/dev/locales/{nn-NO-FR534JV5.js → nn-NO-AAC2I2YX.js} +103 -4
  89. package/dist/dev/locales/nn-NO-AAC2I2YX.js.map +7 -0
  90. package/dist/dev/locales/{oc-FR-YQCIKZIK.js → oc-FR-SR6MFB4N.js} +105 -6
  91. package/dist/dev/locales/oc-FR-SR6MFB4N.js.map +7 -0
  92. package/dist/dev/locales/{pa-IN-UM43JGD2.js → pa-IN-ADGMQLQI.js} +104 -5
  93. package/dist/dev/locales/pa-IN-ADGMQLQI.js.map +7 -0
  94. package/dist/dev/locales/{percentages-OGWD7R2K.js → percentages-DKKGPYTW.js} +2 -2
  95. package/dist/dev/locales/{pl-PL-2UGKA6HK.js → pl-PL-FNIPTMVP.js} +105 -6
  96. package/dist/dev/locales/pl-PL-FNIPTMVP.js.map +7 -0
  97. package/dist/dev/locales/{pt-BR-H23QFYE3.js → pt-BR-67FMCDNE.js} +154 -55
  98. package/dist/dev/locales/pt-BR-67FMCDNE.js.map +7 -0
  99. package/dist/dev/locales/{pt-PT-RHKJH5I5.js → pt-PT-4G3GI4SF.js} +153 -54
  100. package/dist/dev/locales/pt-PT-4G3GI4SF.js.map +7 -0
  101. package/dist/dev/locales/{ro-RO-IIFONL3T.js → ro-RO-CUZFN555.js} +108 -9
  102. package/dist/dev/locales/ro-RO-CUZFN555.js.map +7 -0
  103. package/dist/dev/locales/{ru-RU-QEP6D7GK.js → ru-RU-4GHINTII.js} +107 -8
  104. package/dist/dev/locales/ru-RU-4GHINTII.js.map +7 -0
  105. package/dist/dev/locales/{si-LK-LZYJQLHF.js → si-LK-SSNT7T4A.js} +105 -6
  106. package/dist/dev/locales/si-LK-SSNT7T4A.js.map +7 -0
  107. package/dist/dev/locales/{sk-SK-RWC6UWGY.js → sk-SK-J7TKZQEH.js} +105 -6
  108. package/dist/dev/locales/sk-SK-J7TKZQEH.js.map +7 -0
  109. package/dist/dev/locales/{sl-SI-QJT2CAUO.js → sl-SI-SIBF67NE.js} +105 -6
  110. package/dist/dev/locales/sl-SI-SIBF67NE.js.map +7 -0
  111. package/dist/dev/locales/{sv-SE-3MAT3NDX.js → sv-SE-YTR46NVM.js} +149 -50
  112. package/dist/dev/locales/sv-SE-YTR46NVM.js.map +7 -0
  113. package/dist/dev/locales/{ta-IN-J7XOYF2T.js → ta-IN-7AW6CTGA.js} +103 -4
  114. package/dist/dev/locales/ta-IN-7AW6CTGA.js.map +7 -0
  115. package/dist/dev/locales/{th-TH-2OI52EOQ.js → th-TH-DTLYJYKV.js} +134 -35
  116. package/dist/dev/locales/th-TH-DTLYJYKV.js.map +7 -0
  117. package/dist/dev/locales/{tr-TR-G7TAUHUI.js → tr-TR-UDQGNXAG.js} +145 -46
  118. package/dist/dev/locales/tr-TR-UDQGNXAG.js.map +7 -0
  119. package/dist/dev/locales/{uk-UA-IVSVBJIG.js → uk-UA-25HL2NCU.js} +126 -27
  120. package/dist/dev/locales/uk-UA-25HL2NCU.js.map +7 -0
  121. package/dist/dev/locales/{uz-UZ-KCVDUVDE.js → uz-UZ-OPSBAY4H.js} +103 -4
  122. package/dist/dev/locales/uz-UZ-OPSBAY4H.js.map +7 -0
  123. package/dist/dev/locales/{vi-VN-KBZAVWP5.js → vi-VN-DK367UGA.js} +103 -4
  124. package/dist/dev/locales/vi-VN-DK367UGA.js.map +7 -0
  125. package/dist/dev/locales/{zh-CN-IS26RG2D.js → zh-CN-QCVKNWUH.js} +106 -7
  126. package/dist/dev/locales/zh-CN-QCVKNWUH.js.map +7 -0
  127. package/dist/dev/locales/{zh-HK-KBWQ6SJC.js → zh-HK-WFGYHWPG.js} +103 -4
  128. package/dist/dev/locales/zh-HK-WFGYHWPG.js.map +7 -0
  129. package/dist/dev/locales/{zh-TW-JKJWJQ4J.js → zh-TW-WHQS4ZSD.js} +151 -52
  130. package/dist/dev/locales/zh-TW-WHQS4ZSD.js.map +7 -0
  131. package/dist/dev/subset-shared.chunk.js +1 -1
  132. package/dist/dev/subset-worker.chunk.js +1 -1
  133. package/dist/prod/chunk-5XKZK2GL.js +1 -0
  134. package/dist/prod/chunk-6XMTGF46.js +34 -0
  135. package/dist/prod/chunk-7L3NUBYQ.js +12 -0
  136. package/dist/prod/{chunk-GTEFJJHD.js → chunk-FUN3GFKR.js} +1 -1
  137. package/dist/prod/components/TTDDialog/CodeMirrorEditor-T6RKT6RA.js +1 -0
  138. package/dist/prod/data/image-UAXVGXRE.js +1 -0
  139. package/dist/prod/index.css +1 -1
  140. package/dist/prod/index.js +65 -89
  141. package/dist/prod/locales/ar-SA-5WIASEJP.js +10 -0
  142. package/dist/prod/locales/az-AZ-V5EUQD6C.js +1 -0
  143. package/dist/prod/locales/bg-BG-EXASCMTR.js +5 -0
  144. package/dist/prod/locales/bn-BD-U4SYNFCO.js +3 -0
  145. package/dist/prod/locales/bn-IN-HKDJIITE.js +3 -0
  146. package/dist/prod/locales/ca-ES-2KGUU5XB.js +8 -0
  147. package/dist/prod/locales/cs-CZ-VUCGPRML.js +7 -0
  148. package/dist/prod/locales/da-DK-NNDP2IVP.js +2 -0
  149. package/dist/prod/locales/de-CH-I7RAVIZN.js +11 -0
  150. package/dist/prod/locales/de-DE-WBQ3DQLR.js +11 -0
  151. package/dist/prod/locales/el-GR-TYQHVGXW.js +7 -0
  152. package/dist/prod/locales/en-E6R7JWZO.js +1 -0
  153. package/dist/prod/locales/es-ES-JEUOREKJ.js +12 -0
  154. package/dist/prod/locales/eu-ES-SO5DEEAN.js +8 -0
  155. package/dist/prod/locales/fa-IR-FIYUE2GQ.js +9 -0
  156. package/dist/prod/locales/fi-FI-REAEF6HQ.js +6 -0
  157. package/dist/prod/locales/fr-FR-SUCL7J6B.js +12 -0
  158. package/dist/prod/locales/gl-ES-KHCSOGVH.js +6 -0
  159. package/dist/prod/locales/he-IL-JYXVXV2Q.js +9 -0
  160. package/dist/prod/locales/hi-IN-BU52H3BO.js +3 -0
  161. package/dist/prod/locales/hu-HU-OWADXDQ3.js +3 -0
  162. package/dist/prod/locales/id-ID-EOMR5R3I.js +8 -0
  163. package/dist/prod/locales/it-IT-FC2VTM3L.js +12 -0
  164. package/dist/prod/locales/ja-JP-JBNTKYP4.js +12 -0
  165. package/dist/prod/locales/kaa-TC3VIB7V.js +1 -0
  166. package/dist/prod/locales/kab-KAB-UOUDSQKM.js +4 -0
  167. package/dist/prod/locales/kk-KZ-P5H2X7YS.js +1 -0
  168. package/dist/prod/locales/km-KH-IHMV2US7.js +7 -0
  169. package/dist/prod/locales/ko-KR-ZTMANIDF.js +5 -0
  170. package/dist/prod/locales/ku-TR-GPJTRB5G.js +6 -0
  171. package/dist/prod/locales/lt-LT-V3XDOK3P.js +3 -0
  172. package/dist/prod/locales/lv-LV-DVQ3FADO.js +4 -0
  173. package/dist/prod/locales/mr-IN-VZ6HH5FE.js +9 -0
  174. package/dist/prod/locales/my-MM-XYKWHRK6.js +1 -0
  175. package/dist/prod/locales/nb-NO-UNO2GGZJ.js +8 -0
  176. package/dist/prod/locales/nl-NL-76EFHT4P.js +13 -0
  177. package/dist/prod/locales/nn-NO-CFKD7ABE.js +4 -0
  178. package/dist/prod/locales/oc-FR-YBJTCJ3J.js +4 -0
  179. package/dist/prod/locales/pa-IN-SNOXSMRV.js +4 -0
  180. package/dist/prod/locales/percentages-Q7USCRWZ.js +1 -0
  181. package/dist/prod/locales/pl-PL-BSY6YFZ3.js +12 -0
  182. package/dist/prod/locales/pt-BR-CZDV62R3.js +10 -0
  183. package/dist/prod/locales/pt-PT-JO57XJJW.js +12 -0
  184. package/dist/prod/locales/ro-RO-UZ5ICYYN.js +12 -0
  185. package/dist/prod/locales/ru-RU-AN7JPREC.js +10 -0
  186. package/dist/prod/locales/si-LK-7CBLD6QQ.js +1 -0
  187. package/dist/prod/locales/sk-SK-SWR6DKBI.js +7 -0
  188. package/dist/prod/locales/sl-SI-JRML4FIH.js +6 -0
  189. package/dist/prod/locales/sv-SE-4ZPKFFXF.js +12 -0
  190. package/dist/prod/locales/ta-IN-V6NHHU6Z.js +6 -0
  191. package/dist/prod/locales/th-TH-P7CTMGDK.js +1 -0
  192. package/dist/prod/locales/tr-TR-GUFYG22B.js +4 -0
  193. package/dist/prod/locales/uk-UA-K6SV5NFQ.js +6 -0
  194. package/dist/prod/locales/uz-UZ-TVKTZO2G.js +1 -0
  195. package/dist/prod/locales/vi-VN-7FKFXJNO.js +7 -0
  196. package/dist/prod/locales/zh-CN-AOKVLNNK.js +11 -0
  197. package/dist/prod/locales/zh-HK-CDKPF5DC.js +1 -0
  198. package/dist/prod/locales/zh-TW-ZVGYESGW.js +13 -0
  199. package/dist/prod/subset-shared.chunk.js +1 -1
  200. package/dist/prod/subset-worker.chunk.js +1 -1
  201. package/dist/types/common/debug.d.ts +21 -0
  202. package/dist/types/common/src/appEventBus.d.ts +27 -0
  203. package/dist/types/common/src/colors.d.ts +16 -2
  204. package/dist/types/common/src/constants.d.ts +16 -7
  205. package/dist/types/common/src/index.d.ts +3 -0
  206. package/dist/types/common/src/keys.d.ts +2 -0
  207. package/dist/types/common/src/points.d.ts +1 -1
  208. package/dist/types/common/src/utils.d.ts +5 -50
  209. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  210. package/dist/types/element/src/Scene.d.ts +8 -4
  211. package/dist/types/element/src/align.d.ts +2 -2
  212. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  213. package/dist/types/element/src/arrowheads.d.ts +3 -0
  214. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  215. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  216. package/dist/types/element/src/binding.d.ts +29 -15
  217. package/dist/types/element/src/bounds.d.ts +23 -8
  218. package/dist/types/element/src/bucketFill.d.ts +110 -0
  219. package/dist/types/element/src/collision.d.ts +4 -3
  220. package/dist/types/element/src/comparisons.d.ts +5 -4
  221. package/dist/types/element/src/convertToShape.d.ts +23 -0
  222. package/dist/types/element/src/distribute.d.ts +3 -2
  223. package/dist/types/element/src/dragElements.d.ts +27 -0
  224. package/dist/types/element/src/duplicate.d.ts +4 -3
  225. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  226. package/dist/types/element/src/embeddable.d.ts +2 -2
  227. package/dist/types/element/src/flowchart.d.ts +7 -7
  228. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  229. package/dist/types/element/src/frame.d.ts +9 -8
  230. package/dist/types/element/src/groups.d.ts +9 -9
  231. package/dist/types/element/src/index.d.ts +7 -1
  232. package/dist/types/element/src/linearElementEditor.d.ts +22 -10
  233. package/dist/types/element/src/mutateElement.d.ts +2 -0
  234. package/dist/types/element/src/newElement.d.ts +14 -0
  235. package/dist/types/element/src/renderElement.d.ts +0 -3
  236. package/dist/types/element/src/resizeElements.d.ts +2 -2
  237. package/dist/types/element/src/selection.d.ts +12 -8
  238. package/dist/types/element/src/shape.d.ts +13 -1
  239. package/dist/types/element/src/sortElements.d.ts +10 -0
  240. package/dist/types/element/src/textElement.d.ts +13 -10
  241. package/dist/types/element/src/textWrapping.d.ts +26 -0
  242. package/dist/types/element/src/transform.d.ts +2 -2
  243. package/dist/types/element/src/typeChecks.d.ts +26 -25
  244. package/dist/types/element/src/types.d.ts +13 -3
  245. package/dist/types/element/src/utils.d.ts +6 -4
  246. package/dist/types/element/src/zindex.d.ts +2 -2
  247. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +83 -56
  248. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  249. package/dist/types/excalidraw/actions/actionBoundText.d.ts +57 -39
  250. package/dist/types/excalidraw/actions/actionCanvas.d.ts +355 -811
  251. package/dist/types/excalidraw/actions/actionClipboard.d.ts +56 -38
  252. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +28 -19
  253. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +89 -59
  254. package/dist/types/excalidraw/actions/actionDeselect.d.ts +165 -0
  255. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  256. package/dist/types/excalidraw/actions/actionElementLink.d.ts +24 -19
  257. package/dist/types/excalidraw/actions/actionElementLock.d.ts +57 -39
  258. package/dist/types/excalidraw/actions/actionExport.d.ts +152 -409
  259. package/dist/types/excalidraw/actions/actionFrame.d.ts +95 -240
  260. package/dist/types/excalidraw/actions/actionGroup.d.ts +72 -54
  261. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +34 -21
  262. package/dist/types/excalidraw/actions/actionLink.d.ts +29 -20
  263. package/dist/types/excalidraw/actions/actionMenu.d.ts +24 -19
  264. package/dist/types/excalidraw/actions/actionProperties.d.ts +84 -54
  265. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +33 -24
  266. package/dist/types/excalidraw/actions/actionStyles.d.ts +28 -18
  267. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  268. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +43 -33
  269. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +32 -24
  270. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +181 -0
  271. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +29 -20
  272. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +28 -24
  273. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  274. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +29 -20
  275. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +30 -21
  276. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +29 -20
  277. package/dist/types/excalidraw/actions/index.d.ts +4 -2
  278. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  279. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  280. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  281. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  282. package/dist/types/excalidraw/appState.d.ts +33 -24
  283. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  284. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  285. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  286. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  287. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  288. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  289. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  290. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  291. package/dist/types/excalidraw/clipboard.d.ts +6 -7
  292. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  293. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  294. package/dist/types/excalidraw/components/App.arrowText.d.ts +72 -0
  295. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  296. package/dist/types/excalidraw/components/App.cursor.d.ts +30 -0
  297. package/dist/types/excalidraw/components/App.d.ts +418 -85
  298. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  299. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  300. package/dist/types/excalidraw/components/App.viewport.d.ts +73 -0
  301. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  302. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -3
  303. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  304. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +3 -1
  305. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  306. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  307. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  308. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  309. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  310. package/dist/types/excalidraw/components/ColorPicker/topPicksDnD.d.ts +31 -0
  311. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  312. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +1 -1
  313. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  314. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  315. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  316. package/dist/types/excalidraw/components/{ToolButton.d.ts → IconButton.d.ts} +16 -19
  317. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  318. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  319. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  320. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -3
  321. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  322. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  323. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  324. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  325. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  326. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  327. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  328. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  329. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  330. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  331. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  332. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  333. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  334. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  335. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  336. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  337. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  338. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  339. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  340. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  341. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  342. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  343. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  344. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +2 -6
  345. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +2 -1
  346. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  347. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  348. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +11 -7
  349. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  350. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
  351. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  352. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +2 -1
  353. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  354. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +4 -0
  355. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  356. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +2 -1
  357. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  358. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  359. package/dist/types/excalidraw/components/Toast.d.ts +8 -4
  360. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  361. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  362. package/dist/types/excalidraw/components/Tools.d.ts +146 -0
  363. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  364. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  365. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +4 -1
  366. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  367. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  368. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +30 -16
  369. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +3 -2
  370. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +11 -12
  371. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  372. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +2 -1
  373. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  374. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  375. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  376. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  377. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  378. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  379. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  380. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  381. package/dist/types/excalidraw/components/icons.d.ts +29 -10
  382. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +24 -3
  383. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +23 -14
  384. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  385. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  386. package/dist/types/excalidraw/data/blob.d.ts +179 -160
  387. package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
  388. package/dist/types/excalidraw/data/index.d.ts +6 -7
  389. package/dist/types/excalidraw/data/json.d.ts +98 -80
  390. package/dist/types/excalidraw/data/library.d.ts +1 -1
  391. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  392. package/dist/types/excalidraw/data/restore.d.ts +1 -1
  393. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  394. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  395. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  396. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  397. package/dist/types/excalidraw/index.d.ts +35 -9
  398. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  399. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  400. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  401. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  402. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -3
  403. package/dist/types/excalidraw/scene/Renderer.d.ts +426 -19
  404. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  405. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  406. package/dist/types/excalidraw/scene/types.d.ts +4 -4
  407. package/dist/types/excalidraw/snapping.d.ts +7 -7
  408. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  409. package/dist/types/excalidraw/types.d.ts +512 -77
  410. package/dist/types/excalidraw/viewport.d.ts +275 -0
  411. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +6 -3
  412. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  413. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  414. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  415. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  416. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  417. package/dist/types/math/src/constants.d.ts +0 -1
  418. package/dist/types/math/src/curve.d.ts +4 -1
  419. package/dist/types/math/src/index.d.ts +1 -0
  420. package/dist/types/math/src/pca.d.ts +79 -0
  421. package/dist/types/math/src/point.d.ts +8 -2
  422. package/dist/types/math/src/polygon.d.ts +25 -1
  423. package/dist/types/math/src/types.d.ts +25 -1
  424. package/package.json +9 -6
  425. package/dist/dev/chunk-DJHLEOOZ.js +0 -69
  426. package/dist/dev/chunk-DJHLEOOZ.js.map +0 -7
  427. package/dist/dev/chunk-KB3DXHSJ.js.map +0 -7
  428. package/dist/dev/chunk-XIXZ3HJO.js.map +0 -7
  429. package/dist/dev/locales/ar-SA-JK5MQ7TT.js.map +0 -7
  430. package/dist/dev/locales/az-AZ-2PAD62G4.js.map +0 -7
  431. package/dist/dev/locales/bg-BG-HUKVYCRK.js.map +0 -7
  432. package/dist/dev/locales/bn-BD-V2CQI46P.js.map +0 -7
  433. package/dist/dev/locales/bn-IN-MBEO4C3J.js.map +0 -7
  434. package/dist/dev/locales/ca-ES-KWEKW4C3.js.map +0 -7
  435. package/dist/dev/locales/cs-CZ-W5AHZB5H.js.map +0 -7
  436. package/dist/dev/locales/da-DK-ITTM6YM4.js.map +0 -7
  437. package/dist/dev/locales/de-CH-OAWPDQFJ.js.map +0 -7
  438. package/dist/dev/locales/de-DE-ZRDYEPMS.js.map +0 -7
  439. package/dist/dev/locales/el-GR-QXASZLPE.js.map +0 -7
  440. package/dist/dev/locales/es-ES-VLQBB7FJ.js.map +0 -7
  441. package/dist/dev/locales/eu-ES-TF2DGTZU.js.map +0 -7
  442. package/dist/dev/locales/fa-IR-ITKFQ7QV.js.map +0 -7
  443. package/dist/dev/locales/fi-FI-UWZRVXFI.js.map +0 -7
  444. package/dist/dev/locales/fr-FR-A72LKGCO.js.map +0 -7
  445. package/dist/dev/locales/gl-ES-2QCVIBFP.js.map +0 -7
  446. package/dist/dev/locales/he-IL-WJNUHU26.js.map +0 -7
  447. package/dist/dev/locales/hi-IN-XGMO235V.js.map +0 -7
  448. package/dist/dev/locales/hu-HU-37FDQFIS.js.map +0 -7
  449. package/dist/dev/locales/id-ID-EJIDCO4E.js.map +0 -7
  450. package/dist/dev/locales/it-IT-X34PIOJ2.js.map +0 -7
  451. package/dist/dev/locales/ja-JP-37FC23PR.js.map +0 -7
  452. package/dist/dev/locales/kaa-7ZYDFVKA.js.map +0 -7
  453. package/dist/dev/locales/kab-KAB-MILWXBA6.js.map +0 -7
  454. package/dist/dev/locales/kk-KZ-7BWTPIAV.js.map +0 -7
  455. package/dist/dev/locales/km-KH-BV4P2KSZ.js.map +0 -7
  456. package/dist/dev/locales/ko-KR-TSXE5P7B.js.map +0 -7
  457. package/dist/dev/locales/ku-TR-ASSXNN3U.js.map +0 -7
  458. package/dist/dev/locales/lt-LT-G7RZYQQU.js.map +0 -7
  459. package/dist/dev/locales/lv-LV-DXNPBJZU.js.map +0 -7
  460. package/dist/dev/locales/mr-IN-7F2ZCTCF.js.map +0 -7
  461. package/dist/dev/locales/my-MM-NBI3KQGW.js.map +0 -7
  462. package/dist/dev/locales/nb-NO-4DCTQT6L.js.map +0 -7
  463. package/dist/dev/locales/nl-NL-XGZJ7V2V.js.map +0 -7
  464. package/dist/dev/locales/nn-NO-FR534JV5.js.map +0 -7
  465. package/dist/dev/locales/oc-FR-YQCIKZIK.js.map +0 -7
  466. package/dist/dev/locales/pa-IN-UM43JGD2.js.map +0 -7
  467. package/dist/dev/locales/pl-PL-2UGKA6HK.js.map +0 -7
  468. package/dist/dev/locales/pt-BR-H23QFYE3.js.map +0 -7
  469. package/dist/dev/locales/pt-PT-RHKJH5I5.js.map +0 -7
  470. package/dist/dev/locales/ro-RO-IIFONL3T.js.map +0 -7
  471. package/dist/dev/locales/ru-RU-QEP6D7GK.js.map +0 -7
  472. package/dist/dev/locales/si-LK-LZYJQLHF.js.map +0 -7
  473. package/dist/dev/locales/sk-SK-RWC6UWGY.js.map +0 -7
  474. package/dist/dev/locales/sl-SI-QJT2CAUO.js.map +0 -7
  475. package/dist/dev/locales/sv-SE-3MAT3NDX.js.map +0 -7
  476. package/dist/dev/locales/ta-IN-J7XOYF2T.js.map +0 -7
  477. package/dist/dev/locales/th-TH-2OI52EOQ.js.map +0 -7
  478. package/dist/dev/locales/tr-TR-G7TAUHUI.js.map +0 -7
  479. package/dist/dev/locales/uk-UA-IVSVBJIG.js.map +0 -7
  480. package/dist/dev/locales/uz-UZ-KCVDUVDE.js.map +0 -7
  481. package/dist/dev/locales/vi-VN-KBZAVWP5.js.map +0 -7
  482. package/dist/dev/locales/zh-CN-IS26RG2D.js.map +0 -7
  483. package/dist/dev/locales/zh-HK-KBWQ6SJC.js.map +0 -7
  484. package/dist/dev/locales/zh-TW-JKJWJQ4J.js.map +0 -7
  485. package/dist/prod/chunk-2INXXNZN.js +0 -12
  486. package/dist/prod/chunk-7ECCIQPE.js +0 -33
  487. package/dist/prod/chunk-AJI3LATG.js +0 -1
  488. package/dist/prod/data/image-E5KTZOPE.js +0 -1
  489. package/dist/prod/locales/ar-SA-IYHKZRSE.js +0 -8
  490. package/dist/prod/locales/az-AZ-WL5GYRHK.js +0 -1
  491. package/dist/prod/locales/bg-BG-FXZYTRPD.js +0 -5
  492. package/dist/prod/locales/bn-BD-KO6YL5G2.js +0 -3
  493. package/dist/prod/locales/bn-IN-PC6JHKYB.js +0 -3
  494. package/dist/prod/locales/ca-ES-AREX5NEO.js +0 -8
  495. package/dist/prod/locales/cs-CZ-HXAZMFYH.js +0 -7
  496. package/dist/prod/locales/da-DK-5X7ZLFU3.js +0 -2
  497. package/dist/prod/locales/de-CH-76ZNVSOF.js +0 -7
  498. package/dist/prod/locales/de-DE-G3JVZ4MQ.js +0 -7
  499. package/dist/prod/locales/el-GR-4AZTZGY6.js +0 -7
  500. package/dist/prod/locales/en-YGAMZJ7C.js +0 -1
  501. package/dist/prod/locales/es-ES-ART7BI3G.js +0 -7
  502. package/dist/prod/locales/eu-ES-BIF4XBMT.js +0 -7
  503. package/dist/prod/locales/fa-IR-D4HHKAAI.js +0 -9
  504. package/dist/prod/locales/fi-FI-O35ZY7UI.js +0 -6
  505. package/dist/prod/locales/fr-FR-XEFNCM4I.js +0 -12
  506. package/dist/prod/locales/gl-ES-U4NYM3X5.js +0 -6
  507. package/dist/prod/locales/he-IL-656ABAVQ.js +0 -8
  508. package/dist/prod/locales/hi-IN-Z55GAFFR.js +0 -3
  509. package/dist/prod/locales/hu-HU-UJ62DVIW.js +0 -3
  510. package/dist/prod/locales/id-ID-FLZFU3OO.js +0 -8
  511. package/dist/prod/locales/it-IT-GIGIGIBJ.js +0 -12
  512. package/dist/prod/locales/ja-JP-43VXGDWI.js +0 -7
  513. package/dist/prod/locales/kaa-L3IMSDYL.js +0 -1
  514. package/dist/prod/locales/kab-KAB-XKPWJLNL.js +0 -4
  515. package/dist/prod/locales/kk-KZ-SXPDDY2H.js +0 -1
  516. package/dist/prod/locales/km-KH-DOS4CPGC.js +0 -7
  517. package/dist/prod/locales/ko-KR-BGC6VCY4.js +0 -5
  518. package/dist/prod/locales/ku-TR-J7IUITIA.js +0 -6
  519. package/dist/prod/locales/lt-LT-AC3LV5KG.js +0 -3
  520. package/dist/prod/locales/lv-LV-I6AY7QG2.js +0 -4
  521. package/dist/prod/locales/mr-IN-5SP4HV5B.js +0 -9
  522. package/dist/prod/locales/my-MM-S7ECRBYZ.js +0 -1
  523. package/dist/prod/locales/nb-NO-6PNHTF4R.js +0 -8
  524. package/dist/prod/locales/nl-NL-R4C4SUIG.js +0 -13
  525. package/dist/prod/locales/nn-NO-3TFXTM7Y.js +0 -4
  526. package/dist/prod/locales/oc-FR-IK6GIE7H.js +0 -4
  527. package/dist/prod/locales/pa-IN-YAKHYJET.js +0 -4
  528. package/dist/prod/locales/percentages-OL6W367U.js +0 -1
  529. package/dist/prod/locales/pl-PL-BIY22ZWU.js +0 -12
  530. package/dist/prod/locales/pt-BR-Q23NUPD6.js +0 -6
  531. package/dist/prod/locales/pt-PT-LOPEJLPJ.js +0 -8
  532. package/dist/prod/locales/ro-RO-W3D2ZATV.js +0 -12
  533. package/dist/prod/locales/ru-RU-DCTW7QSH.js +0 -10
  534. package/dist/prod/locales/si-LK-FYRRHO3C.js +0 -1
  535. package/dist/prod/locales/sk-SK-MC7UOHQO.js +0 -7
  536. package/dist/prod/locales/sl-SI-L6B6HFY5.js +0 -6
  537. package/dist/prod/locales/sv-SE-KMY6L2BA.js +0 -8
  538. package/dist/prod/locales/ta-IN-ZQCYE2JK.js +0 -6
  539. package/dist/prod/locales/th-TH-WS7ECBAV.js +0 -1
  540. package/dist/prod/locales/tr-TR-S5FI7JRW.js +0 -4
  541. package/dist/prod/locales/uk-UA-4EZUWUSQ.js +0 -6
  542. package/dist/prod/locales/uz-UZ-OKHL6AFA.js +0 -1
  543. package/dist/prod/locales/vi-VN-K34TWHF7.js +0 -7
  544. package/dist/prod/locales/zh-CN-JE4UZWNO.js +0 -11
  545. package/dist/prod/locales/zh-HK-RM35YDXX.js +0 -1
  546. package/dist/prod/locales/zh-TW-ONGLV6Y5.js +0 -9
  547. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  548. package/dist/types/excalidraw/charts.d.ts +0 -27
  549. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  550. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  551. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  552. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  553. package/dist/types/excalidraw/cursor.d.ts +0 -5
  554. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  555. package/dist/types/excalidraw/scene/scrollConstraints.d.ts +0 -46
  556. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  557. package/dist/types/utils/src/bbox.d.ts +0 -9
  558. package/dist/types/utils/src/index.d.ts +0 -4
  559. package/dist/types/utils/src/withinBounds.d.ts +0 -19
  560. /package/dist/dev/{chunk-VHBP2L6P.js.map → chunk-GLSDDV5C.js.map} +0 -0
  561. /package/dist/dev/data/{image-YTAF2QAV.js.map → image-LSHTDYDI.js.map} +0 -0
  562. /package/dist/dev/locales/{en-RTISGYJB.js.map → en-JNOPSYVP.js.map} +0 -0
  563. /package/dist/dev/locales/{percentages-OGWD7R2K.js.map → percentages-DKKGPYTW.js.map} +0 -0
@@ -19,20 +19,7 @@ declare const MainMenu: React.FC<{
19
19
  displayName: string;
20
20
  };
21
21
  Item: {
22
- ({ icon, value, order, children, shortcut, className, hovered, selected, textStyle, onSelect, onClick, ...rest }: {
23
- icon?: React.JSX.Element;
24
- value?: string | number | undefined;
25
- order?: number;
26
- onSelect?: (event: Event) => void;
27
- children: React.ReactNode;
28
- shortcut? /**
29
- * Called when any menu item is selected (clicked on).
30
- */: string;
31
- hovered?: boolean;
32
- selected?: boolean;
33
- textStyle?: React.CSSProperties;
34
- className?: string;
35
- } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onSelect">): import("react/jsx-runtime").JSX.Element;
22
+ ({ icon, badge, value, children, shortcut, className, selected, onSelect, ...rest }: import("../dropdownMenu/DropdownMenuItem").DropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
36
23
  displayName: string;
37
24
  Badge: {
38
25
  ({ type, children, }: {
@@ -73,6 +60,28 @@ declare const MainMenu: React.FC<{
73
60
  (): import("react/jsx-runtime").JSX.Element;
74
61
  displayName: string;
75
62
  };
63
+ Sub: {
64
+ ({ children }: {
65
+ children?: React.ReactNode;
66
+ }): import("react/jsx-runtime").JSX.Element;
67
+ Trigger: {
68
+ ({ children, icon, shortcut, className, }: {
69
+ children: React.ReactNode;
70
+ icon?: React.JSX.Element;
71
+ shortcut?: string;
72
+ className?: string;
73
+ }): import("react/jsx-runtime").JSX.Element;
74
+ displayName: string;
75
+ };
76
+ Content: {
77
+ ({ children, className, }: {
78
+ children?: React.ReactNode;
79
+ className?: string;
80
+ }): import("react/jsx-runtime").JSX.Element;
81
+ displayName: string;
82
+ };
83
+ displayName: string;
84
+ };
76
85
  DefaultItems: typeof DefaultItems;
77
86
  };
78
87
  export default MainMenu;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Positions an element beside a cursor within a container, flipping the
3
+ * element to the other side of the cursor when it would overflow the
4
+ * container, resolved independently on each axis.
5
+ *
6
+ * Takes the cursor in client (viewport) coordinates and returns
7
+ * container-local coordinates.
8
+ */
9
+ export declare const positionElementBesideCursor: ({ cursor, element, container, gap, }: {
10
+ /** client (viewport) coordinates */
11
+ cursor: {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ element: {
16
+ width: number;
17
+ height: number;
18
+ };
19
+ /** the container's bounding client rect */
20
+ container: Pick<DOMRect, "left" | "top" | "width" | "height">;
21
+ /** distance between the cursor and the positioned element */
22
+ gap: number;
23
+ }) => {
24
+ left: number;
25
+ top: number;
26
+ };
@@ -0,0 +1,39 @@
1
+ import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
2
+ import type { AppClassProperties, UIAppState } from "../types";
3
+ export declare const canChangeStrokeColor: (appState: UIAppState, targetElements: ExcalidrawElement[]) => boolean;
4
+ export declare const canChangeBackgroundColor: (appState: UIAppState, targetElements: ExcalidrawElement[]) => boolean;
5
+ /**
6
+ * Single source of truth for "which shape-action controls are relevant right
7
+ * now". Each flag answers whether a given control should be shown, given the
8
+ * active tool and the current selection. All three styles-panel layouts
9
+ * (full / compact / mobile) and the compact popovers consume these flags so
10
+ * that visibility logic lives in one place and layout stays pure.
11
+ */
12
+ export declare const getShapeActionPredicates: (appState: UIAppState, targetElements: ExcalidrawElement[], elementsMap: NonDeletedElementsMap | NonDeletedSceneElementsMap, app: AppClassProperties) => {
13
+ /** some element(s) selected */
14
+ hasSelection: boolean;
15
+ /** actions on selected elements (delete/duplicate/...) */
16
+ showExtraActions: boolean;
17
+ strokeColor: boolean;
18
+ backgroundColor: boolean;
19
+ fill: boolean;
20
+ strokeWidth: boolean;
21
+ freedrawMode: boolean;
22
+ strokeStyle: boolean;
23
+ sloppiness: boolean;
24
+ roundness: boolean;
25
+ arrowType: boolean;
26
+ arrowheads: boolean;
27
+ text: boolean;
28
+ textAlign: boolean;
29
+ verticalAlign: boolean;
30
+ opacity: boolean;
31
+ layers: boolean;
32
+ align: boolean;
33
+ distribute: boolean;
34
+ link: boolean;
35
+ linkSingleOnly: boolean;
36
+ cropEditor: boolean;
37
+ lineEditor: boolean;
38
+ };
39
+ export type ShapeActionPredicates = ReturnType<typeof getShapeActionPredicates>;
@@ -2,12 +2,11 @@ import { IMAGE_MIME_TYPES, MIME_TYPES } from "@excalidraw/common";
2
2
  import type { ValueOf } from "@excalidraw/common/utility-types";
3
3
  import type { ExcalidrawElement, FileId } from "@excalidraw/element/types";
4
4
  import type { AppState, DataURL, LibraryItem } from "../types";
5
- import type { FileSystemHandle } from "browser-fs-access";
6
5
  import type { ImportedLibraryData } from "./types";
7
6
  export declare const getMimeType: (blob: Blob | string) => string;
8
- export declare const getFileHandleType: (handle: FileSystemHandle | null) => string | null;
7
+ export declare const getFileHandleType: (handle: FileSystemFileHandle | null) => string | null;
9
8
  export declare const isImageFileHandleType: (type: string | null) => type is "png" | "svg";
10
- export declare const isImageFileHandle: (handle: FileSystemHandle | null) => boolean;
9
+ export declare const isImageFileHandle: (handle: FileSystemFileHandle | null) => handle is FileSystemFileHandle;
11
10
  export declare const isSupportedImageFileType: (type: string | null | undefined) => boolean;
12
11
  export declare const isSupportedImageFile: (blob: Blob | null | undefined) => blob is Blob & {
13
12
  type: ValueOf<typeof IMAGE_MIME_TYPES>;
@@ -15,8 +14,8 @@ export declare const isSupportedImageFile: (blob: Blob | null | undefined) => bl
15
14
  export declare const loadSceneOrLibraryFromBlob: (blob: Blob | File,
16
15
  /** @see restore.localAppState */
17
16
  localAppState: AppState | null, localElements: readonly ExcalidrawElement[] | null,
18
- /** FileSystemHandle. Defaults to `blob.handle` if defined, otherwise null. */
19
- fileHandle?: FileSystemHandle | null) => Promise<{
17
+ /** FileSystemFileHandle. Defaults to `blob.handle` if defined, otherwise null. */
18
+ fileHandle?: FileSystemFileHandle | null) => Promise<{
20
19
  type: "application/vnd.excalidraw+json";
21
20
  data: {
22
21
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
@@ -29,9 +28,81 @@ fileHandle?: FileSystemHandle | null) => Promise<{
29
28
  clip: boolean;
30
29
  };
31
30
  viewBackgroundColor: string;
31
+ name: string | null;
32
+ zoom: import("../types").Zoom;
32
33
  scrollX: number;
33
34
  scrollY: number;
34
- zoom: import("../types").Zoom;
35
+ viewModeEnabled: boolean;
36
+ openDialog: null | {
37
+ name: "imageExport" | "help" | "jsonExport";
38
+ } | {
39
+ name: "ttd";
40
+ tab: "text-to-diagram" | "mermaid";
41
+ } | {
42
+ name: "commandPalette";
43
+ } | {
44
+ name: "settings";
45
+ } | {
46
+ name: "elementLinkSelector";
47
+ sourceElementId: ExcalidrawElement["id"];
48
+ } | {
49
+ name: "charts";
50
+ data: import("../charts").Spreadsheet;
51
+ rawText: string;
52
+ };
53
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
54
+ selectedElementIds: Readonly<{
55
+ [id: string]: true;
56
+ }>;
57
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
58
+ activeTool: {
59
+ lastActiveTool: import("../types").ActiveTool | null;
60
+ locked: boolean;
61
+ fromSelection: boolean;
62
+ } & import("../types").ActiveTool;
63
+ activeEmbeddable: {
64
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
65
+ state: "hover" | "active";
66
+ } | null;
67
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
68
+ selectedGroupIds: {
69
+ [groupId: string]: boolean;
70
+ };
71
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
72
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
73
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
74
+ isBindingEnabled: boolean;
75
+ isMidpointSnappingEnabled: boolean;
76
+ gridModeEnabled: boolean;
77
+ suggestedBinding: {
78
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
79
+ midPoint?: import("@excalidraw/math").GlobalPoint;
80
+ } | null;
81
+ hoveredArrowTextAnchor: {
82
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
83
+ anchor: "start" | "end" | "label";
84
+ } | null;
85
+ isRotating: boolean;
86
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
87
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
88
+ snapLines: readonly import("../snapping").SnapLine[];
89
+ zenModeEnabled: boolean;
90
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
91
+ isCropping: boolean;
92
+ croppingElementId: ExcalidrawElement["id"] | null;
93
+ searchMatches: Readonly<{
94
+ focusedId: ExcalidrawElement["id"] | null;
95
+ matches: readonly import("../types").SearchMatch[];
96
+ }> | null;
97
+ activeLockedId: string | null;
98
+ hoveredElementIds: Readonly<{
99
+ [id: string]: true;
100
+ }>;
101
+ shouldCacheIgnoreZoom: boolean;
102
+ exportScale: number;
103
+ currentItemArrowType: "sharp" | "round" | "elbow";
104
+ gridSize: number;
105
+ bindMode: import("@excalidraw/element/types").BindMode;
35
106
  contextMenu: {
36
107
  items: import("../components/ContextMenu").ContextMenuItems;
37
108
  top: number;
@@ -40,26 +111,10 @@ fileHandle?: FileSystemHandle | null) => Promise<{
40
111
  showWelcomeScreen: boolean;
41
112
  isLoading: boolean;
42
113
  errorMessage: React.ReactNode;
43
- activeEmbeddable: {
44
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
45
- state: "hover" | "active";
46
- } | null;
47
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
48
114
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
49
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
50
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
51
- isBindingEnabled: boolean;
52
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
53
- suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
54
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
55
- editingFrame: string | null;
56
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
57
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
58
- activeTool: {
59
- lastActiveTool: import("../types").ActiveTool | null;
60
- locked: boolean;
61
- fromSelection: boolean;
62
- } & import("../types").ActiveTool;
115
+ boxSelectionMode: import("../types").BoxSelectionMode;
116
+ bindingPreference: "enabled" | "disabled";
117
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
63
118
  preferredSelectionTool: {
64
119
  type: "selection" | "lasso";
65
120
  initialized: boolean;
@@ -69,13 +124,13 @@ fileHandle?: FileSystemHandle | null) => Promise<{
69
124
  exportBackground: boolean;
70
125
  exportEmbedScene: boolean;
71
126
  exportWithDarkMode: boolean;
72
- exportScale: number;
73
127
  currentItemStrokeColor: string;
74
128
  currentItemBackgroundColor: string;
75
129
  currentItemFillStyle: ExcalidrawElement["fillStyle"];
76
- currentItemStrokeWidth: number;
130
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
77
131
  currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
78
132
  currentItemRoughness: number;
133
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
79
134
  currentItemOpacity: number;
80
135
  currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
81
136
  currentItemFontSize: number;
@@ -84,93 +139,47 @@ fileHandle?: FileSystemHandle | null) => Promise<{
84
139
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
85
140
  currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
86
141
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
87
- currentItemArrowType: "sharp" | "round" | "elbow";
142
+ scrollConstraints: import("../types").ScrollConstraints | null;
88
143
  cursorButton: "up" | "down";
89
144
  scrolledOutside: boolean;
90
- name: string | null;
91
145
  isResizing: boolean;
92
- isRotating: boolean;
93
146
  openMenu: "canvas" | null;
94
147
  openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
95
148
  openSidebar: {
96
149
  name: import("../types").SidebarName;
97
150
  tab?: import("../types").SidebarTabName;
98
151
  } | null;
99
- openDialog: null | {
100
- name: "imageExport" | "help" | "jsonExport";
101
- } | {
102
- name: "ttd";
103
- tab: "text-to-diagram" | "mermaid";
104
- } | {
105
- name: "commandPalette";
106
- } | {
107
- name: "settings";
108
- } | {
109
- name: "elementLinkSelector";
110
- sourceElementId: ExcalidrawElement["id"];
111
- };
112
152
  defaultSidebarDockedPreference: boolean;
113
153
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
114
- selectedElementIds: Readonly<{
115
- [id: string]: true;
116
- }>;
117
- hoveredElementIds: Readonly<{
118
- [id: string]: true;
119
- }>;
120
154
  previousSelectedElementIds: {
121
155
  [id: string]: true;
122
156
  };
123
157
  selectedElementsAreBeingDragged: boolean;
124
- shouldCacheIgnoreZoom: boolean;
125
158
  toast: {
126
- message: string;
159
+ message: React.ReactNode;
127
160
  closable?: boolean;
128
161
  duration?: number;
129
162
  } | null;
130
- zenModeEnabled: boolean;
131
- gridSize: number;
132
163
  gridStep: number;
133
- gridModeEnabled: boolean;
134
- viewModeEnabled: boolean;
135
- selectedGroupIds: {
136
- [groupId: string]: boolean;
137
- };
138
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
139
- fileHandle: FileSystemHandle | null;
140
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
164
+ fileHandle: FileSystemFileHandle | null;
141
165
  stats: {
142
166
  open: boolean;
143
167
  panels: number;
144
168
  };
145
- currentChartType: import("@excalidraw/element/types").ChartType;
146
- pasteDialog: {
147
- shown: false;
148
- data: null;
149
- } | {
150
- shown: true;
151
- data: import("../charts").Spreadsheet;
152
- };
153
169
  showHyperlinkPopup: false | "info" | "editor";
154
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
155
- snapLines: readonly import("../snapping").SnapLine[];
156
170
  originSnapOffset: {
157
171
  x: number;
158
172
  y: number;
159
173
  } | null;
160
174
  objectsSnapModeEnabled: boolean;
161
- userToFollow: import("../types").UserToFollow | null;
162
- followedBy: Set<import("../types").SocketId>;
163
- isCropping: boolean;
164
- croppingElementId: ExcalidrawElement["id"] | null;
165
- searchMatches: Readonly<{
166
- focusedId: ExcalidrawElement["id"] | null;
167
- matches: readonly import("../types").SearchMatch[];
168
- }> | null;
169
- activeLockedId: string | null;
170
175
  lockedMultiSelections: {
171
176
  [groupId: string]: true;
172
177
  };
173
- bindMode: import("@excalidraw/element/types").BindMode;
178
+ colorTopPicks: {
179
+ elementStroke: readonly string[] | null;
180
+ elementBackground: readonly string[] | null;
181
+ bucketFill: readonly string[] | null;
182
+ };
174
183
  };
175
184
  files: import("../types").BinaryFiles;
176
185
  };
@@ -181,8 +190,8 @@ fileHandle?: FileSystemHandle | null) => Promise<{
181
190
  export declare const loadFromBlob: (blob: Blob,
182
191
  /** @see restore.localAppState */
183
192
  localAppState: AppState | null, localElements: readonly ExcalidrawElement[] | null,
184
- /** FileSystemHandle. Defaults to `blob.handle` if defined, otherwise null. */
185
- fileHandle?: FileSystemHandle | null) => Promise<{
193
+ /** FileSystemFileHandle. Defaults to `blob.handle` if defined, otherwise null. */
194
+ fileHandle?: FileSystemFileHandle | null) => Promise<{
186
195
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
187
196
  appState: {
188
197
  theme: import("@excalidraw/element/types").Theme;
@@ -193,9 +202,81 @@ fileHandle?: FileSystemHandle | null) => Promise<{
193
202
  clip: boolean;
194
203
  };
195
204
  viewBackgroundColor: string;
205
+ name: string | null;
206
+ zoom: import("../types").Zoom;
196
207
  scrollX: number;
197
208
  scrollY: number;
198
- zoom: import("../types").Zoom;
209
+ viewModeEnabled: boolean;
210
+ openDialog: null | {
211
+ name: "imageExport" | "help" | "jsonExport";
212
+ } | {
213
+ name: "ttd";
214
+ tab: "text-to-diagram" | "mermaid";
215
+ } | {
216
+ name: "commandPalette";
217
+ } | {
218
+ name: "settings";
219
+ } | {
220
+ name: "elementLinkSelector";
221
+ sourceElementId: ExcalidrawElement["id"];
222
+ } | {
223
+ name: "charts";
224
+ data: import("../charts").Spreadsheet;
225
+ rawText: string;
226
+ };
227
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
228
+ selectedElementIds: Readonly<{
229
+ [id: string]: true;
230
+ }>;
231
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
232
+ activeTool: {
233
+ lastActiveTool: import("../types").ActiveTool | null;
234
+ locked: boolean;
235
+ fromSelection: boolean;
236
+ } & import("../types").ActiveTool;
237
+ activeEmbeddable: {
238
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
239
+ state: "hover" | "active";
240
+ } | null;
241
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
242
+ selectedGroupIds: {
243
+ [groupId: string]: boolean;
244
+ };
245
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
246
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
247
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
248
+ isBindingEnabled: boolean;
249
+ isMidpointSnappingEnabled: boolean;
250
+ gridModeEnabled: boolean;
251
+ suggestedBinding: {
252
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
253
+ midPoint?: import("@excalidraw/math").GlobalPoint;
254
+ } | null;
255
+ hoveredArrowTextAnchor: {
256
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
257
+ anchor: "start" | "end" | "label";
258
+ } | null;
259
+ isRotating: boolean;
260
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
261
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
262
+ snapLines: readonly import("../snapping").SnapLine[];
263
+ zenModeEnabled: boolean;
264
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
265
+ isCropping: boolean;
266
+ croppingElementId: ExcalidrawElement["id"] | null;
267
+ searchMatches: Readonly<{
268
+ focusedId: ExcalidrawElement["id"] | null;
269
+ matches: readonly import("../types").SearchMatch[];
270
+ }> | null;
271
+ activeLockedId: string | null;
272
+ hoveredElementIds: Readonly<{
273
+ [id: string]: true;
274
+ }>;
275
+ shouldCacheIgnoreZoom: boolean;
276
+ exportScale: number;
277
+ currentItemArrowType: "sharp" | "round" | "elbow";
278
+ gridSize: number;
279
+ bindMode: import("@excalidraw/element/types").BindMode;
199
280
  contextMenu: {
200
281
  items: import("../components/ContextMenu").ContextMenuItems;
201
282
  top: number;
@@ -204,26 +285,10 @@ fileHandle?: FileSystemHandle | null) => Promise<{
204
285
  showWelcomeScreen: boolean;
205
286
  isLoading: boolean;
206
287
  errorMessage: React.ReactNode;
207
- activeEmbeddable: {
208
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
209
- state: "hover" | "active";
210
- } | null;
211
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
212
288
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
213
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
214
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
215
- isBindingEnabled: boolean;
216
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
217
- suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
218
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
219
- editingFrame: string | null;
220
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
221
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
222
- activeTool: {
223
- lastActiveTool: import("../types").ActiveTool | null;
224
- locked: boolean;
225
- fromSelection: boolean;
226
- } & import("../types").ActiveTool;
289
+ boxSelectionMode: import("../types").BoxSelectionMode;
290
+ bindingPreference: "enabled" | "disabled";
291
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
227
292
  preferredSelectionTool: {
228
293
  type: "selection" | "lasso";
229
294
  initialized: boolean;
@@ -233,13 +298,13 @@ fileHandle?: FileSystemHandle | null) => Promise<{
233
298
  exportBackground: boolean;
234
299
  exportEmbedScene: boolean;
235
300
  exportWithDarkMode: boolean;
236
- exportScale: number;
237
301
  currentItemStrokeColor: string;
238
302
  currentItemBackgroundColor: string;
239
303
  currentItemFillStyle: ExcalidrawElement["fillStyle"];
240
- currentItemStrokeWidth: number;
304
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
241
305
  currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
242
306
  currentItemRoughness: number;
307
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
243
308
  currentItemOpacity: number;
244
309
  currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
245
310
  currentItemFontSize: number;
@@ -248,93 +313,47 @@ fileHandle?: FileSystemHandle | null) => Promise<{
248
313
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
249
314
  currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
250
315
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
251
- currentItemArrowType: "sharp" | "round" | "elbow";
316
+ scrollConstraints: import("../types").ScrollConstraints | null;
252
317
  cursorButton: "up" | "down";
253
318
  scrolledOutside: boolean;
254
- name: string | null;
255
319
  isResizing: boolean;
256
- isRotating: boolean;
257
320
  openMenu: "canvas" | null;
258
321
  openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
259
322
  openSidebar: {
260
323
  name: import("../types").SidebarName;
261
324
  tab?: import("../types").SidebarTabName;
262
325
  } | null;
263
- openDialog: null | {
264
- name: "imageExport" | "help" | "jsonExport";
265
- } | {
266
- name: "ttd";
267
- tab: "text-to-diagram" | "mermaid";
268
- } | {
269
- name: "commandPalette";
270
- } | {
271
- name: "settings";
272
- } | {
273
- name: "elementLinkSelector";
274
- sourceElementId: ExcalidrawElement["id"];
275
- };
276
326
  defaultSidebarDockedPreference: boolean;
277
327
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
278
- selectedElementIds: Readonly<{
279
- [id: string]: true;
280
- }>;
281
- hoveredElementIds: Readonly<{
282
- [id: string]: true;
283
- }>;
284
328
  previousSelectedElementIds: {
285
329
  [id: string]: true;
286
330
  };
287
331
  selectedElementsAreBeingDragged: boolean;
288
- shouldCacheIgnoreZoom: boolean;
289
332
  toast: {
290
- message: string;
333
+ message: React.ReactNode;
291
334
  closable?: boolean;
292
335
  duration?: number;
293
336
  } | null;
294
- zenModeEnabled: boolean;
295
- gridSize: number;
296
337
  gridStep: number;
297
- gridModeEnabled: boolean;
298
- viewModeEnabled: boolean;
299
- selectedGroupIds: {
300
- [groupId: string]: boolean;
301
- };
302
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
303
- fileHandle: FileSystemHandle | null;
304
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
338
+ fileHandle: FileSystemFileHandle | null;
305
339
  stats: {
306
340
  open: boolean;
307
341
  panels: number;
308
342
  };
309
- currentChartType: import("@excalidraw/element/types").ChartType;
310
- pasteDialog: {
311
- shown: false;
312
- data: null;
313
- } | {
314
- shown: true;
315
- data: import("../charts").Spreadsheet;
316
- };
317
343
  showHyperlinkPopup: false | "info" | "editor";
318
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
319
- snapLines: readonly import("../snapping").SnapLine[];
320
344
  originSnapOffset: {
321
345
  x: number;
322
346
  y: number;
323
347
  } | null;
324
348
  objectsSnapModeEnabled: boolean;
325
- userToFollow: import("../types").UserToFollow | null;
326
- followedBy: Set<import("../types").SocketId>;
327
- isCropping: boolean;
328
- croppingElementId: ExcalidrawElement["id"] | null;
329
- searchMatches: Readonly<{
330
- focusedId: ExcalidrawElement["id"] | null;
331
- matches: readonly import("../types").SearchMatch[];
332
- }> | null;
333
- activeLockedId: string | null;
334
349
  lockedMultiSelections: {
335
350
  [groupId: string]: true;
336
351
  };
337
- bindMode: import("@excalidraw/element/types").BindMode;
352
+ colorTopPicks: {
353
+ elementStroke: readonly string[] | null;
354
+ elementBackground: readonly string[] | null;
355
+ bucketFill: readonly string[] | null;
356
+ };
338
357
  };
339
358
  files: import("../types").BinaryFiles;
340
359
  }>;
@@ -358,7 +377,7 @@ export declare const SVGStringToFile: (SVGString: string, filename?: string) =>
358
377
  type: typeof MIME_TYPES.svg;
359
378
  };
360
379
  export declare const ImageURLToFile: (imageUrl: string, filename?: string) => Promise<File | undefined>;
361
- export declare const getFileHandle: (event: DragEvent | React.DragEvent | DataTransferItem) => Promise<FileSystemHandle | null>;
380
+ export declare const getFileHandle: (event: DragEvent | React.DragEvent | DataTransferItem) => Promise<FileSystemFileHandle | null>;
362
381
  export declare const createFile: (blob: File | Blob | ArrayBuffer, mimeType: string, name: string | undefined) => File;
363
382
  /** attempts to detect correct mimeType if none is set, or if an image
364
383
  * has an incorrect extension.
@@ -1,6 +1,5 @@
1
1
  import { supported as nativeFileSystemSupported } from "browser-fs-access";
2
2
  import { MIME_TYPES } from "@excalidraw/common";
3
- import type { FileSystemHandle } from "browser-fs-access";
4
3
  type FILE_EXTENSION = Exclude<keyof typeof MIME_TYPES, "binary">;
5
4
  export declare const fileOpen: <M extends boolean | undefined = false>(opts: {
6
5
  extensions?: FILE_EXTENSION[];
@@ -14,8 +13,7 @@ export declare const fileSave: (blob: Blob | Promise<Blob>, opts: {
14
13
  extension: FILE_EXTENSION;
15
14
  mimeTypes?: string[];
16
15
  description: string;
17
- /** existing FileSystemHandle */
18
- fileHandle?: FileSystemHandle | null;
19
- }) => Promise<FileSystemHandle | null>;
16
+ /** existing FileSystemFileHandle */
17
+ fileHandle?: FileSystemFileHandle | null;
18
+ }) => Promise<FileSystemFileHandle | null>;
20
19
  export { nativeFileSystemSupported };
21
- export type { FileSystemHandle };