@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
@@ -1,5 +1,4 @@
1
- import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
- import type { FileSystemHandle } from "./filesystem";
1
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
2
  import type { ExportType } from "../scene/types";
4
3
  import type { AppState, BinaryFiles } from "../types";
5
4
  export { loadFromBlob } from "./blob";
@@ -7,8 +6,8 @@ export { loadFromJSON, saveAsJSON } from "./json";
7
6
  export type ExportedElements = readonly NonDeletedExcalidrawElement[] & {
8
7
  _brand: "exportedElements";
9
8
  };
10
- export declare const prepareElementsForExport: (elements: readonly ExcalidrawElement[], { selectedElementIds }: Pick<AppState, "selectedElementIds">, exportSelectionOnly: boolean) => {
11
- exportingFrame: ExcalidrawFrameLikeElement | null;
9
+ export declare const prepareElementsForExport: (allElements: readonly ExcalidrawElement[], { selectedElementIds }: Pick<AppState, "selectedElementIds">, exportSelectionOnly: boolean) => {
10
+ exportingFrame: NonDeleted<ExcalidrawFrameLikeElement> | null;
12
11
  exportedElements: ExportedElements;
13
12
  };
14
13
  export declare const exportAsImage: ({ type, data, config, }: {
@@ -24,7 +23,7 @@ export declare const exportAsImage: ({ type, data, config, }: {
24
23
  viewBackgroundColor: string;
25
24
  /** filename, if applicable */
26
25
  name?: string;
27
- fileHandle?: FileSystemHandle | null;
28
- exportingFrame: ExcalidrawFrameLikeElement | null;
26
+ fileHandle?: FileSystemFileHandle | null;
27
+ exportingFrame: NonDeleted<ExcalidrawFrameLikeElement> | null;
29
28
  };
30
- }) => Promise<FileSystemHandle | null | undefined>;
29
+ }) => Promise<FileSystemFileHandle | null | undefined>;
@@ -1,11 +1,19 @@
1
1
  import type { ExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { MaybePromise } from "@excalidraw/common/utility-types";
2
3
  import type { AppState, BinaryFiles, LibraryItems } from "../types";
3
4
  import type { ImportedDataState, ImportedLibraryData } from "./types";
5
+ export type JSONExportData = {
6
+ elements: readonly ExcalidrawElement[];
7
+ appState: AppState;
8
+ files: BinaryFiles;
9
+ };
4
10
  export declare const serializeAsJSON: (elements: readonly ExcalidrawElement[], appState: Partial<AppState>, files: BinaryFiles, type: "local" | "database") => string;
5
- export declare const saveAsJSON: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles,
6
- /** filename */
7
- name?: string) => Promise<{
8
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
11
+ export declare const saveAsJSON: ({ data, filename, fileHandle, }: {
12
+ data: MaybePromise<JSONExportData>;
13
+ filename: string;
14
+ fileHandle: AppState["fileHandle"];
15
+ }) => Promise<{
16
+ fileHandle: FileSystemFileHandle | null;
9
17
  }>;
10
18
  export declare const loadFromJSON: (localAppState: AppState, localElements: readonly ExcalidrawElement[] | null) => Promise<{
11
19
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
@@ -18,9 +26,81 @@ export declare const loadFromJSON: (localAppState: AppState, localElements: read
18
26
  clip: boolean;
19
27
  };
20
28
  viewBackgroundColor: string;
29
+ name: string | null;
30
+ zoom: import("../types").Zoom;
21
31
  scrollX: number;
22
32
  scrollY: number;
23
- zoom: import("../types").Zoom;
33
+ viewModeEnabled: boolean;
34
+ openDialog: null | {
35
+ name: "imageExport" | "help" | "jsonExport";
36
+ } | {
37
+ name: "ttd";
38
+ tab: "text-to-diagram" | "mermaid";
39
+ } | {
40
+ name: "commandPalette";
41
+ } | {
42
+ name: "settings";
43
+ } | {
44
+ name: "elementLinkSelector";
45
+ sourceElementId: ExcalidrawElement["id"];
46
+ } | {
47
+ name: "charts";
48
+ data: import("../charts").Spreadsheet;
49
+ rawText: string;
50
+ };
51
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
52
+ selectedElementIds: Readonly<{
53
+ [id: string]: true;
54
+ }>;
55
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
56
+ activeTool: {
57
+ lastActiveTool: import("../types").ActiveTool | null;
58
+ locked: boolean;
59
+ fromSelection: boolean;
60
+ } & import("../types").ActiveTool;
61
+ activeEmbeddable: {
62
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
63
+ state: "hover" | "active";
64
+ } | null;
65
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
66
+ selectedGroupIds: {
67
+ [groupId: string]: boolean;
68
+ };
69
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
70
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
71
+ newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
72
+ isBindingEnabled: boolean;
73
+ isMidpointSnappingEnabled: boolean;
74
+ gridModeEnabled: boolean;
75
+ suggestedBinding: {
76
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
77
+ midPoint?: import("@excalidraw/math").GlobalPoint;
78
+ } | null;
79
+ hoveredArrowTextAnchor: {
80
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
81
+ anchor: "start" | "end" | "label";
82
+ } | null;
83
+ isRotating: boolean;
84
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
85
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
86
+ snapLines: readonly import("../snapping").SnapLine[];
87
+ zenModeEnabled: boolean;
88
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
89
+ isCropping: boolean;
90
+ croppingElementId: ExcalidrawElement["id"] | null;
91
+ searchMatches: Readonly<{
92
+ focusedId: ExcalidrawElement["id"] | null;
93
+ matches: readonly import("../types").SearchMatch[];
94
+ }> | null;
95
+ activeLockedId: string | null;
96
+ hoveredElementIds: Readonly<{
97
+ [id: string]: true;
98
+ }>;
99
+ shouldCacheIgnoreZoom: boolean;
100
+ exportScale: number;
101
+ currentItemArrowType: "sharp" | "round" | "elbow";
102
+ gridSize: number;
103
+ bindMode: import("@excalidraw/element/types").BindMode;
24
104
  contextMenu: {
25
105
  items: import("../components/ContextMenu").ContextMenuItems;
26
106
  top: number;
@@ -29,26 +109,10 @@ export declare const loadFromJSON: (localAppState: AppState, localElements: read
29
109
  showWelcomeScreen: boolean;
30
110
  isLoading: boolean;
31
111
  errorMessage: React.ReactNode;
32
- activeEmbeddable: {
33
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
34
- state: "hover" | "active";
35
- } | null;
36
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
37
112
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
38
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
39
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
40
- isBindingEnabled: boolean;
41
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
42
- suggestedBinding: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
43
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
44
- editingFrame: string | null;
45
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
46
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
47
- activeTool: {
48
- lastActiveTool: import("../types").ActiveTool | null;
49
- locked: boolean;
50
- fromSelection: boolean;
51
- } & import("../types").ActiveTool;
113
+ boxSelectionMode: import("../types").BoxSelectionMode;
114
+ bindingPreference: "enabled" | "disabled";
115
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
52
116
  preferredSelectionTool: {
53
117
  type: "selection" | "lasso";
54
118
  initialized: boolean;
@@ -58,13 +122,13 @@ export declare const loadFromJSON: (localAppState: AppState, localElements: read
58
122
  exportBackground: boolean;
59
123
  exportEmbedScene: boolean;
60
124
  exportWithDarkMode: boolean;
61
- exportScale: number;
62
125
  currentItemStrokeColor: string;
63
126
  currentItemBackgroundColor: string;
64
127
  currentItemFillStyle: ExcalidrawElement["fillStyle"];
65
- currentItemStrokeWidth: number;
128
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
66
129
  currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
67
130
  currentItemRoughness: number;
131
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
68
132
  currentItemOpacity: number;
69
133
  currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
70
134
  currentItemFontSize: number;
@@ -73,93 +137,47 @@ export declare const loadFromJSON: (localAppState: AppState, localElements: read
73
137
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
74
138
  currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
75
139
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
76
- currentItemArrowType: "sharp" | "round" | "elbow";
140
+ scrollConstraints: import("../types").ScrollConstraints | null;
77
141
  cursorButton: "up" | "down";
78
142
  scrolledOutside: boolean;
79
- name: string | null;
80
143
  isResizing: boolean;
81
- isRotating: boolean;
82
144
  openMenu: "canvas" | null;
83
145
  openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
84
146
  openSidebar: {
85
147
  name: import("../types").SidebarName;
86
148
  tab?: import("../types").SidebarTabName;
87
149
  } | null;
88
- openDialog: null | {
89
- name: "imageExport" | "help" | "jsonExport";
90
- } | {
91
- name: "ttd";
92
- tab: "text-to-diagram" | "mermaid";
93
- } | {
94
- name: "commandPalette";
95
- } | {
96
- name: "settings";
97
- } | {
98
- name: "elementLinkSelector";
99
- sourceElementId: ExcalidrawElement["id"];
100
- };
101
150
  defaultSidebarDockedPreference: boolean;
102
151
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
103
- selectedElementIds: Readonly<{
104
- [id: string]: true;
105
- }>;
106
- hoveredElementIds: Readonly<{
107
- [id: string]: true;
108
- }>;
109
152
  previousSelectedElementIds: {
110
153
  [id: string]: true;
111
154
  };
112
155
  selectedElementsAreBeingDragged: boolean;
113
- shouldCacheIgnoreZoom: boolean;
114
156
  toast: {
115
- message: string;
157
+ message: React.ReactNode;
116
158
  closable?: boolean;
117
159
  duration?: number;
118
160
  } | null;
119
- zenModeEnabled: boolean;
120
- gridSize: number;
121
161
  gridStep: number;
122
- gridModeEnabled: boolean;
123
- viewModeEnabled: boolean;
124
- selectedGroupIds: {
125
- [groupId: string]: boolean;
126
- };
127
- editingGroupId: import("@excalidraw/element/types").GroupId | null;
128
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
129
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
162
+ fileHandle: FileSystemFileHandle | null;
130
163
  stats: {
131
164
  open: boolean;
132
165
  panels: number;
133
166
  };
134
- currentChartType: import("@excalidraw/element/types").ChartType;
135
- pasteDialog: {
136
- shown: false;
137
- data: null;
138
- } | {
139
- shown: true;
140
- data: import("../charts").Spreadsheet;
141
- };
142
167
  showHyperlinkPopup: false | "info" | "editor";
143
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
144
- snapLines: readonly import("../snapping").SnapLine[];
145
168
  originSnapOffset: {
146
169
  x: number;
147
170
  y: number;
148
171
  } | null;
149
172
  objectsSnapModeEnabled: boolean;
150
- userToFollow: import("../types").UserToFollow | null;
151
- followedBy: Set<import("../types").SocketId>;
152
- isCropping: boolean;
153
- croppingElementId: ExcalidrawElement["id"] | null;
154
- searchMatches: Readonly<{
155
- focusedId: ExcalidrawElement["id"] | null;
156
- matches: readonly import("../types").SearchMatch[];
157
- }> | null;
158
- activeLockedId: string | null;
159
173
  lockedMultiSelections: {
160
174
  [groupId: string]: true;
161
175
  };
162
- bindMode: import("@excalidraw/element/types").BindMode;
176
+ colorTopPicks: {
177
+ elementStroke: readonly string[] | null;
178
+ elementBackground: readonly string[] | null;
179
+ bucketFill: readonly string[] | null;
180
+ };
163
181
  };
164
182
  files: BinaryFiles;
165
183
  }>;
@@ -37,7 +37,7 @@ export interface LibraryMigrationAdapter {
37
37
  /** clears entire storage afterwards */
38
38
  clear(): MaybePromise<void>;
39
39
  }
40
- export declare const libraryItemsAtom: import("jotai/vanilla/atom").PrimitiveAtom<{
40
+ export declare const libraryItemsAtom: import("jotai").PrimitiveAtom<{
41
41
  status: "loading" | "loaded";
42
42
  /** indicates whether library is initialized with library items (has gone
43
43
  * through at least one update). Used in UI. Specific to this atom only. */
@@ -1,5 +1,10 @@
1
+ import type { MaybePromise } from "@excalidraw/common/utility-types";
1
2
  import type { ExcalidrawElement } from "@excalidraw/element/types";
2
3
  import type { AppState, BinaryFiles } from "../types";
3
- export declare const resaveAsImageWithScene: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles, name: string) => Promise<{
4
- fileHandle: import("browser-fs-access").FileSystemHandle;
4
+ export declare const resaveAsImageWithScene: (data: MaybePromise<{
5
+ elements: readonly ExcalidrawElement[];
6
+ appState: AppState;
7
+ files: BinaryFiles;
8
+ }>, fileHandle: FileSystemFileHandle, filename: string) => Promise<{
9
+ fileHandle: FileSystemFileHandle;
5
10
  }>;
@@ -2,7 +2,7 @@ import { type CombineBrandsIfNeeded } from "@excalidraw/common";
2
2
  import type { ElementsMap, ElementsMapOrArray, ExcalidrawElement, ExcalidrawSelectionElement, OrderedExcalidrawElement } from "@excalidraw/element/types";
3
3
  import type { AppState, BinaryFiles, LibraryItem } from "../types";
4
4
  import type { ImportedDataState } from "./types";
5
- type RestoredAppState = Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height" | "scrollConstraints">;
5
+ type RestoredAppState = Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
6
6
  export declare const AllowedExcalidrawActiveTools: Record<AppState["activeTool"]["type"], boolean>;
7
7
  export type RestoredDataState = {
8
8
  elements: OrderedExcalidrawElement[];
@@ -0,0 +1,16 @@
1
+ import type { GlobalPoint } from "@excalidraw/math";
2
+ import type App from "./components/App";
3
+ import type { Trail } from "./animatedTrail";
4
+ export declare class DrawShapeTrail implements Trail {
5
+ private app;
6
+ private trail;
7
+ constructor(app: App);
8
+ private getTrailOptions;
9
+ startPath(x: number, y: number): void;
10
+ addPointToPath(x: number, y: number): void;
11
+ endPath(): void;
12
+ clearTrails(): void;
13
+ getCurrentPoints(): GlobalPoint[];
14
+ start(container: SVGSVGElement): void;
15
+ stop(): void;
16
+ }
@@ -1,10 +1,9 @@
1
- import { AnimatedTrail } from "../animated-trail";
2
- import type { AnimationFrameHandler } from "../animation-frame-handler";
1
+ import { AnimatedTrail } from "../animatedTrail";
3
2
  import type App from "../components/App";
4
3
  export declare class EraserTrail extends AnimatedTrail {
5
4
  private elementsToErase;
6
5
  private groupsToErase;
7
- constructor(animationFrameHandler: AnimationFrameHandler, app: App);
6
+ constructor(app: App);
8
7
  startPath(x: number, y: number): void;
9
8
  addPointToPath(x: number, y: number, restore?: boolean): string[];
10
9
  private updateElementsToBeErased;
@@ -0,0 +1,29 @@
1
+ import type { AppState } from "../types";
2
+ /**
3
+ * Subscribes to specific appState changes. The component re-renders
4
+ * only when the specified prop(s) change — not on every appState update.
5
+ *
6
+ * Works both inside and outside the <Excalidraw> tree, as long as
7
+ * ExcalidrawAPIContext.Provider is an ancestor (automatically provided
8
+ * inside <Excalidraw>, or manually by the host app).
9
+ *
10
+ * Returns the narrowed value depending on prop form:
11
+ * - `keyof AppState` → `AppState[K]`
12
+ * - `(keyof AppState)[]` → whole `AppState`
13
+ * - selector function → selector's return type `T`
14
+ *
15
+ * If excalidrawAPI is not ready yet (host apps), hook is rerendered with latest
16
+ * value once available.
17
+ */
18
+ export declare function useAppStateValue<K extends keyof AppState>(prop: K, _internal?: boolean): AppState[K];
19
+ export declare function useAppStateValue(props: (keyof AppState)[], _internal?: boolean): AppState;
20
+ export declare function useAppStateValue<T>(selector: (appState: AppState) => T, _internal?: boolean): T;
21
+ /**
22
+ * Subscribes to specific appState changes without causing component rerenders.
23
+ *
24
+ * The callback is called on every matching change, but also on initial render
25
+ * so you can initialize your state.
26
+ */
27
+ export declare function useOnAppStateChange<K extends keyof AppState>(prop: K, callback: (value: AppState[K], appState: AppState) => void): undefined;
28
+ export declare function useOnAppStateChange(props: (keyof AppState)[], callback: (props: AppState, appState: AppState) => void): undefined;
29
+ export declare function useOnAppStateChange<T>(selector: (appState: AppState) => T, callback: (value: T, appState: AppState) => void): undefined;
@@ -1,6 +1,6 @@
1
1
  import type { LibraryItem } from "../types";
2
2
  export type SvgCache = Map<LibraryItem["id"], SVGSVGElement>;
3
- export declare const libraryItemSvgsCache: import("jotai/vanilla/atom").PrimitiveAtom<SvgCache> & {
3
+ export declare const libraryItemSvgsCache: import("jotai").PrimitiveAtom<SvgCache> & {
4
4
  init: SvgCache;
5
5
  };
6
6
  export declare const useLibraryItemSvg: (id: LibraryItem["id"] | null, elements: LibraryItem["elements"] | undefined, svgCache: SvgCache, ref: React.RefObject<HTMLDivElement | null>) => SVGSVGElement | undefined;
@@ -1,12 +1,22 @@
1
1
  import React from "react";
2
+ import { applyDarkModeFilter, getStrokeWidthByKey } from "@excalidraw/common";
2
3
  import Footer from "./components/footer/FooterCenter";
3
4
  import LiveCollaborationTrigger from "./components/live-collaboration/LiveCollaborationTrigger";
4
5
  import MainMenu from "./components/main-menu/MainMenu";
5
6
  import WelcomeScreen from "./components/welcome-screen/WelcomeScreen";
7
+ import { useOnAppStateChange as _useOnAppStateChange } from "./hooks/useAppStateValue";
6
8
  import "./css/app.scss";
7
9
  import "./css/styles.scss";
8
10
  import "./fonts/fonts.css";
9
- import type { ExcalidrawProps } from "./types";
11
+ import type { AppState, ExcalidrawProps } from "./types";
12
+ /**
13
+ * Stateless provider that allows `useExcalidrawAPI()` (and hooks built
14
+ * on it, such as `useAppStateValue()` and `useOnAppStateChange()`) to work
15
+ * outside the <Excalidraw> component tree.
16
+ */
17
+ export declare const ExcalidrawAPIProvider: ({ children, }: {
18
+ children: React.ReactNode;
19
+ }) => import("react/jsx-runtime").JSX.Element;
10
20
  export declare const Excalidraw: React.MemoExoticComponent<(props: ExcalidrawProps) => import("react/jsx-runtime").JSX.Element>;
11
21
  export { getSceneVersion, hashElementsVersion, hashString, getNonDeletedElements, } from "@excalidraw/element";
12
22
  export { getTextFromElements } from "@excalidraw/element";
@@ -19,7 +29,7 @@ export { serializeAsJSON, serializeLibraryAsJSON } from "./data/json";
19
29
  export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "./data/blob";
20
30
  export { mergeLibraryItems, getLibraryItemsHash } from "./data/library";
21
31
  export { isLinearElement } from "@excalidraw/element";
22
- export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, normalizeLink, sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, getFormFactor, } from "@excalidraw/common";
32
+ export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, normalizeLink, sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, getFormFactor, throttleRAF, } from "@excalidraw/common";
23
33
  export { mutateElement, newElementWith, bumpVersion, } from "@excalidraw/element";
24
34
  export { CaptureUpdateAction } from "@excalidraw/element";
25
35
  export { parseLibraryTokensFromUrl, useHandleLibrary } from "./data/library";
@@ -28,7 +38,7 @@ export { Button } from "./components/Button";
28
38
  export { Footer };
29
39
  export { MainMenu };
30
40
  export { Ellipsify } from "./components/Ellipsify";
31
- export { useEditorInterface, useStylesPanelMode } from "./components/App";
41
+ export { useEditorInterface, useStylesPanelMode, useExcalidrawAPI, ExcalidrawAPIContext, } from "./components/App";
32
42
  export { WelcomeScreen };
33
43
  export { LiveCollaborationTrigger };
34
44
  export { Stats } from "./components/Stats";
@@ -36,19 +46,35 @@ export { exportToCanvas } from "./scene/export";
36
46
  export { DefaultSidebar } from "./components/DefaultSidebar";
37
47
  export { TTDDialog } from "./components/TTDDialog/TTDDialog";
38
48
  export { TTDDialogTrigger } from "./components/TTDDialog/TTDDialogTrigger";
39
- export { TTDStreamFetch } from "./components/TTDDialog/utils/TTDStreamFetch";
49
+ export { TTDStreamFetch, parseSSEStream, } from "./components/TTDDialog/utils/TTDStreamFetch";
50
+ export type { StreamChunk } from "./components/TTDDialog/utils/TTDStreamFetch";
40
51
  export type { TTDPersistenceAdapter, SavedChat, SavedChats, } from "./components/TTDDialog/types";
41
- export { zoomToFitBounds } from "./actions/actionCanvas";
52
+ export type { ViewportStatusFrame } from "./types";
53
+ export { zoomToFitBounds, DEFAULT_OVERSCROLL } from "./viewport";
42
54
  export { getCommonBounds, getVisibleSceneBounds, convertToExcalidrawElements, } from "@excalidraw/element";
43
- export { elementsOverlappingBBox, isElementInsideBBox, elementPartiallyOverlapsWithOrContainsBBox, } from "@excalidraw/utils/withinBounds";
55
+ export { elementsOverlappingBBox } from "@excalidraw/element";
44
56
  export { DiagramToCodePlugin } from "./components/DiagramToCodePlugin/DiagramToCodePlugin";
45
57
  export { getDataURL } from "./data/blob";
46
58
  export { isElementLink } from "@excalidraw/element";
59
+ export { Fonts } from "./fonts/Fonts";
47
60
  export { setCustomTextMetricsProvider } from "@excalidraw/element";
61
+ export { CommandPalette } from "./components/CommandPalette/CommandPalette";
62
+ export { renderSpreadsheet, tryParseSpreadsheet, isSpreadsheetValidForChartType, } from "./charts/index";
63
+ /**
64
+ * hook that subscribes to specific appState prop(s)
65
+ *
66
+ * @param prop - appState prop(s) to subscribe to, or a selector function.
67
+ * NOTE `prop/selector` is memoized and will not change after initial render
68
+ */
69
+ export declare function useExcalidrawStateValue<K extends keyof AppState>(prop: K): AppState[K] | undefined;
70
+ export declare function useExcalidrawStateValue<T extends keyof AppState>(props: T[]): AppState | undefined;
71
+ export declare function useExcalidrawStateValue<T>(selector: (appState: AppState) => T): T | undefined;
72
+ export { _useOnAppStateChange as useOnExcalidrawStateChange };
73
+ export { applyDarkModeFilter, getStrokeWidthByKey };
48
74
  export { getDefaultAppState, cleanAppStateForExport, clearAppStateForLocalStorage, } from "./appState";
49
75
  export { libraryItemsAtom } from "./data/library";
50
- export * as icons from "./components/icons";
51
- export * as actions from "./actions/index";
52
76
  export { duplicateElements, duplicateElement } from "../element/src/duplicate";
53
77
  export { parseMermaidToExcalidraw } from "@excalidraw/mermaid-to-excalidraw";
54
- export { CommandPalette } from "./components/CommandPalette/CommandPalette";
78
+ export * as icons from "./components/icons";
79
+ export * as actions from "./actions/index";
80
+ export type { SetViewportOptions } from "./viewport";
@@ -1,20 +1,18 @@
1
- import { AnimatedTrail } from "./animated-trail";
2
- import type { Trail } from "./animated-trail";
3
- import type { AnimationFrameHandler } from "./animation-frame-handler";
1
+ import { AnimatedTrail } from "./animatedTrail";
2
+ import type { Trail } from "./animatedTrail";
4
3
  import type App from "./components/App";
5
4
  export declare class LaserTrails implements Trail {
6
- private animationFrameHandler;
7
5
  private app;
8
6
  localTrail: AnimatedTrail;
9
7
  private collabTrails;
10
8
  private container?;
11
- constructor(animationFrameHandler: AnimationFrameHandler, app: App);
9
+ constructor(app: App);
12
10
  private getTrailOptions;
13
11
  startPath(x: number, y: number): void;
14
12
  addPointToPath(x: number, y: number): void;
15
13
  endPath(): void;
16
14
  start(container: SVGSVGElement): void;
17
15
  stop(): void;
18
- onFrame(): void;
19
- private updateCollabTrails;
16
+ private stopCollabTrails;
17
+ updateCollabTrails(collaborators: App["state"]["collaborators"]): void;
20
18
  }
@@ -1,5 +1,4 @@
1
- import { type AnimationFrameHandler } from "../animation-frame-handler";
2
- import { AnimatedTrail } from "../animated-trail";
1
+ import { AnimatedTrail } from "../animatedTrail";
3
2
  import type App from "../components/App";
4
3
  export declare class LassoTrail extends AnimatedTrail {
5
4
  private intersectedElements;
@@ -7,7 +6,7 @@ export declare class LassoTrail extends AnimatedTrail {
7
6
  private elementsSegments;
8
7
  private canvasTranslate;
9
8
  private keepPreviousSelection;
10
- constructor(animationFrameHandler: AnimationFrameHandler, app: App);
9
+ constructor(app: App);
11
10
  startPath(x: number, y: number, keepPreviousSelection?: boolean): void;
12
11
  selectElementsFromIds: (ids: string[]) => void;
13
12
  addPointToPath: (x: number, y: number, keepPreviousSelection?: boolean) => void;
@@ -1,5 +1,6 @@
1
1
  import type { ElementsSegmentsMap, GlobalPoint } from "@excalidraw/math/types";
2
2
  import type { ElementsMap, ExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { BoxSelectionMode } from "../types";
3
4
  export declare const getLassoSelectedElementIds: (input: {
4
5
  lassoPath: GlobalPoint[];
5
6
  elements: readonly ExcalidrawElement[];
@@ -8,6 +9,7 @@ export declare const getLassoSelectedElementIds: (input: {
8
9
  intersectedElements: Set<ExcalidrawElement["id"]>;
9
10
  enclosedElements: Set<ExcalidrawElement["id"]>;
10
11
  simplifyDistance?: number;
12
+ mode?: BoxSelectionMode;
11
13
  }) => {
12
14
  selectedElementIds: string[];
13
15
  };
@@ -3,10 +3,14 @@ export type Animation<R extends object> = (params: {
3
3
  state?: R;
4
4
  }) => R | null | undefined;
5
5
  export declare class AnimationController {
6
- private static isRunning;
6
+ private static scheduledFrame;
7
7
  private static animations;
8
8
  static start<R extends object>(key: string, animation: Animation<R>): void;
9
+ private static scheduleNextFrame;
10
+ private static cancelScheduledFrame;
11
+ private static cancelScheduledFrameIfIdle;
9
12
  private static tick;
10
13
  static running(key: string): boolean;
11
14
  static cancel(key: string): void;
15
+ static reset(): void;
12
16
  }
@@ -1,9 +1,7 @@
1
1
  import { getScrollBars } from "../scene/scrollbars";
2
- import type { InteractiveSceneRenderConfig, RenderableElementsMap } from "../scene/types";
2
+ import type { InteractiveSceneRenderConfig } from "../scene/types";
3
3
  declare const _renderInteractiveScene: ({ app, canvas, elementsMap, visibleElements, selectedElements, allElementsMap, scale, appState, renderConfig, editorInterface, animationState, deltaTime, }: InteractiveSceneRenderConfig) => {
4
4
  scrollBars?: ReturnType<typeof getScrollBars>;
5
- atLeastOneVisibleElement: boolean;
6
- elementsMap: RenderableElementsMap;
7
5
  animationState?: typeof animationState;
8
6
  };
9
7
  /**