@dwelle/excalidraw 0.5.0-14564dd → 0.5.0-150a4a3

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 (414) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/dev/{chunk-K5XERBZZ.js → chunk-3BY36CLC.js} +2 -2
  3. package/dist/dev/{chunk-RSCEQT52.js → chunk-4BGOUES4.js} +5284 -3749
  4. package/dist/dev/chunk-4BGOUES4.js.map +7 -0
  5. package/dist/dev/{chunk-QLBMTSCL.js → chunk-A4LHQJCQ.js} +15 -3
  6. package/dist/dev/chunk-A4LHQJCQ.js.map +7 -0
  7. package/dist/dev/chunk-Q67DF2PJ.js +69 -0
  8. package/dist/dev/chunk-Q67DF2PJ.js.map +7 -0
  9. package/dist/dev/components/TTDDialog/{CodeMirrorEditor-MTOQXKVI.js → CodeMirrorEditor-52BOCW7F.js} +2 -2
  10. package/dist/dev/data/{image-7JQU3GIY.js → image-QTSLOKRC.js} +3 -3
  11. package/dist/dev/index.css +211 -175
  12. package/dist/dev/index.css.map +2 -2
  13. package/dist/dev/index.js +3847 -1803
  14. package/dist/dev/index.js.map +4 -4
  15. package/dist/dev/locales/{ar-SA-YEOLME2Y.js → ar-SA-EW44IW4V.js} +14 -2
  16. package/dist/dev/locales/ar-SA-EW44IW4V.js.map +7 -0
  17. package/dist/dev/locales/{az-AZ-DQL36U4O.js → az-AZ-AI7WAYA2.js} +14 -2
  18. package/dist/dev/locales/az-AZ-AI7WAYA2.js.map +7 -0
  19. package/dist/dev/locales/{bg-BG-LG6R5FEQ.js → bg-BG-43ZNGDXF.js} +14 -2
  20. package/dist/dev/locales/bg-BG-43ZNGDXF.js.map +7 -0
  21. package/dist/dev/locales/{bn-BD-W63P7JT5.js → bn-BD-PU4CN7NP.js} +14 -2
  22. package/dist/dev/locales/bn-BD-PU4CN7NP.js.map +7 -0
  23. package/dist/dev/locales/{bn-IN-SCHACAA6.js → bn-IN-54CF43JL.js} +14 -2
  24. package/dist/dev/locales/bn-IN-54CF43JL.js.map +7 -0
  25. package/dist/dev/locales/{ca-ES-XP3CQTWV.js → ca-ES-RHJO3QDO.js} +14 -2
  26. package/dist/dev/locales/ca-ES-RHJO3QDO.js.map +7 -0
  27. package/dist/dev/locales/{cs-CZ-EXLEOJMD.js → cs-CZ-ZRSAO3BA.js} +14 -2
  28. package/dist/dev/locales/cs-CZ-ZRSAO3BA.js.map +7 -0
  29. package/dist/dev/locales/{da-DK-46ONLZRX.js → da-DK-OAB6DEJX.js} +14 -2
  30. package/dist/dev/locales/da-DK-OAB6DEJX.js.map +7 -0
  31. package/dist/dev/locales/{de-CH-A5QH3YGW.js → de-CH-QF7JLXTF.js} +14 -2
  32. package/dist/dev/locales/de-CH-QF7JLXTF.js.map +7 -0
  33. package/dist/dev/locales/{de-DE-FVCCKR5N.js → de-DE-5ZO4KOPT.js} +14 -2
  34. package/dist/dev/locales/de-DE-5ZO4KOPT.js.map +7 -0
  35. package/dist/dev/locales/{el-GR-SB4MX5JS.js → el-GR-F74ZSUEO.js} +14 -2
  36. package/dist/dev/locales/el-GR-F74ZSUEO.js.map +7 -0
  37. package/dist/dev/locales/{en-N5KZ66E6.js → en-INQU5YPU.js} +2 -2
  38. package/dist/dev/locales/{es-ES-VRTYQG6S.js → es-ES-3B3IENPS.js} +14 -2
  39. package/dist/dev/locales/es-ES-3B3IENPS.js.map +7 -0
  40. package/dist/dev/locales/{eu-ES-3OHEU2YV.js → eu-ES-NH447TVU.js} +14 -2
  41. package/dist/dev/locales/eu-ES-NH447TVU.js.map +7 -0
  42. package/dist/dev/locales/{fa-IR-74WR2KXF.js → fa-IR-V44PNTTK.js} +46 -34
  43. package/dist/dev/locales/fa-IR-V44PNTTK.js.map +7 -0
  44. package/dist/dev/locales/{fi-FI-XZQC4II2.js → fi-FI-ZXSYWCC4.js} +14 -2
  45. package/dist/dev/locales/fi-FI-ZXSYWCC4.js.map +7 -0
  46. package/dist/dev/locales/{fr-FR-RABBDBKM.js → fr-FR-RJSOSEYS.js} +25 -13
  47. package/dist/dev/locales/fr-FR-RJSOSEYS.js.map +7 -0
  48. package/dist/dev/locales/{gl-ES-OU3Q6XUE.js → gl-ES-NAUVMVFY.js} +14 -2
  49. package/dist/dev/locales/gl-ES-NAUVMVFY.js.map +7 -0
  50. package/dist/dev/locales/{he-IL-6NCD5D54.js → he-IL-JBKWWR75.js} +67 -55
  51. package/dist/dev/locales/he-IL-JBKWWR75.js.map +7 -0
  52. package/dist/dev/locales/{hi-IN-M54WKOJI.js → hi-IN-SD773MVZ.js} +14 -2
  53. package/dist/dev/locales/hi-IN-SD773MVZ.js.map +7 -0
  54. package/dist/dev/locales/{hu-HU-HAW63BCI.js → hu-HU-OTA7GOAV.js} +14 -2
  55. package/dist/dev/locales/hu-HU-OTA7GOAV.js.map +7 -0
  56. package/dist/dev/locales/{id-ID-TFSPHGWX.js → id-ID-KGCGQFTT.js} +100 -88
  57. package/dist/dev/locales/id-ID-KGCGQFTT.js.map +7 -0
  58. package/dist/dev/locales/{it-IT-MH3BAO5W.js → it-IT-EWGEXMVK.js} +25 -13
  59. package/dist/dev/locales/it-IT-EWGEXMVK.js.map +7 -0
  60. package/dist/dev/locales/{ja-JP-UGJBHLX6.js → ja-JP-YMGRGBPS.js} +17 -5
  61. package/dist/dev/locales/ja-JP-YMGRGBPS.js.map +7 -0
  62. package/dist/dev/locales/{kaa-5ZUEYWIM.js → kaa-RRE7XUCW.js} +14 -2
  63. package/dist/dev/locales/kaa-RRE7XUCW.js.map +7 -0
  64. package/dist/dev/locales/{kab-KAB-RLAZQZSM.js → kab-KAB-ZCYVOJU4.js} +14 -2
  65. package/dist/dev/locales/kab-KAB-ZCYVOJU4.js.map +7 -0
  66. package/dist/dev/locales/{kk-KZ-CIP7GOIF.js → kk-KZ-TO6XEFJC.js} +14 -2
  67. package/dist/dev/locales/kk-KZ-TO6XEFJC.js.map +7 -0
  68. package/dist/dev/locales/{km-KH-YMR4247H.js → km-KH-3HTDL5HB.js} +14 -2
  69. package/dist/dev/locales/km-KH-3HTDL5HB.js.map +7 -0
  70. package/dist/dev/locales/{ko-KR-WGKQKR2R.js → ko-KR-O4L4O7L6.js} +14 -2
  71. package/dist/dev/locales/ko-KR-O4L4O7L6.js.map +7 -0
  72. package/dist/dev/locales/{ku-TR-ZSJN6TN6.js → ku-TR-AFJWDY67.js} +14 -2
  73. package/dist/dev/locales/ku-TR-AFJWDY67.js.map +7 -0
  74. package/dist/dev/locales/{lt-LT-FT6ZGIZP.js → lt-LT-7QOT2VDQ.js} +14 -2
  75. package/dist/dev/locales/lt-LT-7QOT2VDQ.js.map +7 -0
  76. package/dist/dev/locales/{lv-LV-U74YKDPR.js → lv-LV-WV6C4NYF.js} +14 -2
  77. package/dist/dev/locales/lv-LV-WV6C4NYF.js.map +7 -0
  78. package/dist/dev/locales/{mr-IN-KN72LOIA.js → mr-IN-3TLYWOEI.js} +14 -2
  79. package/dist/dev/locales/mr-IN-3TLYWOEI.js.map +7 -0
  80. package/dist/dev/locales/{my-MM-E57NLQ7W.js → my-MM-NNL2QJT3.js} +14 -2
  81. package/dist/dev/locales/my-MM-NNL2QJT3.js.map +7 -0
  82. package/dist/dev/locales/{nb-NO-FYQDWD7X.js → nb-NO-PG3XLMEV.js} +14 -2
  83. package/dist/dev/locales/nb-NO-PG3XLMEV.js.map +7 -0
  84. package/dist/dev/locales/{nl-NL-D5MZQRAC.js → nl-NL-MMOYEKKQ.js} +14 -2
  85. package/dist/dev/locales/nl-NL-MMOYEKKQ.js.map +7 -0
  86. package/dist/dev/locales/{nn-NO-5ZEUZJV4.js → nn-NO-AAC2I2YX.js} +14 -2
  87. package/dist/dev/locales/nn-NO-AAC2I2YX.js.map +7 -0
  88. package/dist/dev/locales/{oc-FR-MVW6LDAP.js → oc-FR-SR6MFB4N.js} +14 -2
  89. package/dist/dev/locales/oc-FR-SR6MFB4N.js.map +7 -0
  90. package/dist/dev/locales/{pa-IN-2NH3SVNI.js → pa-IN-ADGMQLQI.js} +14 -2
  91. package/dist/dev/locales/pa-IN-ADGMQLQI.js.map +7 -0
  92. package/dist/dev/locales/{percentages-QBBLQLIV.js → percentages-X2QIQ6XJ.js} +2 -2
  93. package/dist/dev/locales/{pl-PL-M6LYWLHY.js → pl-PL-FNIPTMVP.js} +14 -2
  94. package/dist/dev/locales/pl-PL-FNIPTMVP.js.map +7 -0
  95. package/dist/dev/locales/{pt-BR-27M3CCS7.js → pt-BR-67FMCDNE.js} +14 -2
  96. package/dist/dev/locales/pt-BR-67FMCDNE.js.map +7 -0
  97. package/dist/dev/locales/{pt-PT-V3C226NP.js → pt-PT-4G3GI4SF.js} +14 -2
  98. package/dist/dev/locales/pt-PT-4G3GI4SF.js.map +7 -0
  99. package/dist/dev/locales/{ro-RO-S4GNBAJI.js → ro-RO-CUZFN555.js} +25 -13
  100. package/dist/dev/locales/ro-RO-CUZFN555.js.map +7 -0
  101. package/dist/dev/locales/{ru-RU-CRRT5JUZ.js → ru-RU-4GHINTII.js} +14 -2
  102. package/dist/dev/locales/ru-RU-4GHINTII.js.map +7 -0
  103. package/dist/dev/locales/{si-LK-APMICZ7H.js → si-LK-SSNT7T4A.js} +14 -2
  104. package/dist/dev/locales/si-LK-SSNT7T4A.js.map +7 -0
  105. package/dist/dev/locales/{sk-SK-7ZFDZG6Y.js → sk-SK-J7TKZQEH.js} +14 -2
  106. package/dist/dev/locales/sk-SK-J7TKZQEH.js.map +7 -0
  107. package/dist/dev/locales/{sl-SI-BBENCX7D.js → sl-SI-SIBMLDYY.js} +130 -118
  108. package/dist/dev/locales/sl-SI-SIBMLDYY.js.map +7 -0
  109. package/dist/dev/locales/{sv-SE-35QJIOEW.js → sv-SE-6GYGFZNL.js} +25 -13
  110. package/dist/dev/locales/sv-SE-6GYGFZNL.js.map +7 -0
  111. package/dist/dev/locales/{ta-IN-4N5CFIWZ.js → ta-IN-7AW6CTGA.js} +14 -2
  112. package/dist/dev/locales/ta-IN-7AW6CTGA.js.map +7 -0
  113. package/dist/dev/locales/{th-TH-2F4V4IDB.js → th-TH-FP7ULYYM.js} +23 -11
  114. package/dist/dev/locales/th-TH-FP7ULYYM.js.map +7 -0
  115. package/dist/dev/locales/{tr-TR-NDFP3F7P.js → tr-TR-UDQGNXAG.js} +14 -2
  116. package/dist/dev/locales/tr-TR-UDQGNXAG.js.map +7 -0
  117. package/dist/dev/locales/{uk-UA-4I6VBQZ5.js → uk-UA-25HL2NCU.js} +51 -39
  118. package/dist/dev/locales/uk-UA-25HL2NCU.js.map +7 -0
  119. package/dist/dev/locales/{uz-UZ-UVKC7UNZ.js → uz-UZ-OPSBAY4H.js} +14 -2
  120. package/dist/dev/locales/uz-UZ-OPSBAY4H.js.map +7 -0
  121. package/dist/dev/locales/{vi-VN-UQCETDRL.js → vi-VN-DK367UGA.js} +14 -2
  122. package/dist/dev/locales/vi-VN-DK367UGA.js.map +7 -0
  123. package/dist/dev/locales/{zh-CN-RSRHKN75.js → zh-CN-QCVKNWUH.js} +14 -2
  124. package/dist/dev/locales/zh-CN-QCVKNWUH.js.map +7 -0
  125. package/dist/dev/locales/{zh-HK-XSFQ32U4.js → zh-HK-WFGYHWPG.js} +14 -2
  126. package/dist/dev/locales/zh-HK-WFGYHWPG.js.map +7 -0
  127. package/dist/dev/locales/{zh-TW-KFVYWRFJ.js → zh-TW-WHQS4ZSD.js} +33 -21
  128. package/dist/dev/locales/zh-TW-WHQS4ZSD.js.map +7 -0
  129. package/dist/dev/subset-shared.chunk.js +1 -1
  130. package/dist/dev/subset-worker.chunk.js +1 -1
  131. package/dist/prod/chunk-52O7NOSZ.js +12 -0
  132. package/dist/prod/chunk-D7DHHZ2A.js +34 -0
  133. package/dist/prod/chunk-DYU5D34O.js +1 -0
  134. package/dist/prod/{chunk-HFEPO4CK.js → chunk-UMWB7CYS.js} +1 -1
  135. package/dist/prod/components/TTDDialog/{CodeMirrorEditor-MZ7KVYX6.js → CodeMirrorEditor-XRJZY54S.js} +1 -1
  136. package/dist/prod/data/image-PS3RAXG4.js +1 -0
  137. package/dist/prod/index.css +1 -1
  138. package/dist/prod/index.js +63 -94
  139. package/dist/prod/locales/{ar-SA-PQUY64WN.js → ar-SA-5WIASEJP.js} +5 -5
  140. package/dist/prod/locales/az-AZ-V5EUQD6C.js +1 -0
  141. package/dist/prod/locales/bg-BG-EXASCMTR.js +5 -0
  142. package/dist/prod/locales/bn-BD-U4SYNFCO.js +3 -0
  143. package/dist/prod/locales/bn-IN-HKDJIITE.js +3 -0
  144. package/dist/prod/locales/ca-ES-2KGUU5XB.js +8 -0
  145. package/dist/prod/locales/cs-CZ-VUCGPRML.js +7 -0
  146. package/dist/prod/locales/da-DK-NNDP2IVP.js +2 -0
  147. package/dist/prod/locales/de-CH-I7RAVIZN.js +11 -0
  148. package/dist/prod/locales/de-DE-WBQ3DQLR.js +11 -0
  149. package/dist/prod/locales/el-GR-TYQHVGXW.js +7 -0
  150. package/dist/prod/locales/{en-AG7RKVLW.js → en-MYE3M2F3.js} +1 -1
  151. package/dist/prod/locales/es-ES-JEUOREKJ.js +12 -0
  152. package/dist/prod/locales/eu-ES-SO5DEEAN.js +8 -0
  153. package/dist/prod/locales/fa-IR-I4JNTJHK.js +9 -0
  154. package/dist/prod/locales/fi-FI-REAEF6HQ.js +6 -0
  155. package/dist/prod/locales/fr-FR-SUCL7J6B.js +12 -0
  156. package/dist/prod/locales/gl-ES-KHCSOGVH.js +6 -0
  157. package/dist/prod/locales/he-IL-JYXVXV2Q.js +9 -0
  158. package/dist/prod/locales/hi-IN-BU52H3BO.js +3 -0
  159. package/dist/prod/locales/hu-HU-OWADXDQ3.js +3 -0
  160. package/dist/prod/locales/id-ID-2WY7E4VX.js +8 -0
  161. package/dist/prod/locales/it-IT-INVHSAJF.js +12 -0
  162. package/dist/prod/locales/ja-JP-JBNTKYP4.js +12 -0
  163. package/dist/prod/locales/kaa-TC3VIB7V.js +1 -0
  164. package/dist/prod/locales/kab-KAB-UOUDSQKM.js +4 -0
  165. package/dist/prod/locales/kk-KZ-P5H2X7YS.js +1 -0
  166. package/dist/prod/locales/{km-KH-PCWDKPHP.js → km-KH-IHMV2US7.js} +4 -4
  167. package/dist/prod/locales/ko-KR-ZTMANIDF.js +5 -0
  168. package/dist/prod/locales/ku-TR-GPJTRB5G.js +6 -0
  169. package/dist/prod/locales/lt-LT-V3XDOK3P.js +3 -0
  170. package/dist/prod/locales/lv-LV-DVQ3FADO.js +4 -0
  171. package/dist/prod/locales/mr-IN-VZ6HH5FE.js +9 -0
  172. package/dist/prod/locales/my-MM-XYKWHRK6.js +1 -0
  173. package/dist/prod/locales/nb-NO-UNO2GGZJ.js +8 -0
  174. package/dist/prod/locales/nl-NL-76EFHT4P.js +13 -0
  175. package/dist/prod/locales/nn-NO-CFKD7ABE.js +4 -0
  176. package/dist/prod/locales/oc-FR-YBJTCJ3J.js +4 -0
  177. package/dist/prod/locales/pa-IN-SNOXSMRV.js +4 -0
  178. package/dist/prod/locales/percentages-LWOC67ZH.js +1 -0
  179. package/dist/prod/locales/pl-PL-BSY6YFZ3.js +12 -0
  180. package/dist/prod/locales/pt-BR-CZDV62R3.js +10 -0
  181. package/dist/prod/locales/pt-PT-JO57XJJW.js +12 -0
  182. package/dist/prod/locales/ro-RO-UZ5ICYYN.js +12 -0
  183. package/dist/prod/locales/ru-RU-AN7JPREC.js +10 -0
  184. package/dist/prod/locales/si-LK-7CBLD6QQ.js +1 -0
  185. package/dist/prod/locales/sk-SK-SWR6DKBI.js +7 -0
  186. package/dist/prod/locales/sl-SI-QY5KCFGA.js +8 -0
  187. package/dist/prod/locales/sv-SE-O3OFCY3J.js +12 -0
  188. package/dist/prod/locales/ta-IN-V6NHHU6Z.js +6 -0
  189. package/dist/prod/locales/th-TH-WLSZUSBX.js +1 -0
  190. package/dist/prod/locales/tr-TR-GUFYG22B.js +4 -0
  191. package/dist/prod/locales/uk-UA-K6SV5NFQ.js +6 -0
  192. package/dist/prod/locales/uz-UZ-TVKTZO2G.js +1 -0
  193. package/dist/prod/locales/vi-VN-7FKFXJNO.js +7 -0
  194. package/dist/prod/locales/zh-CN-AOKVLNNK.js +11 -0
  195. package/dist/prod/locales/zh-HK-CDKPF5DC.js +1 -0
  196. package/dist/prod/locales/zh-TW-ZVGYESGW.js +13 -0
  197. package/dist/prod/subset-shared.chunk.js +1 -1
  198. package/dist/prod/subset-worker.chunk.js +1 -1
  199. package/dist/types/common/src/colors.d.ts +13 -7
  200. package/dist/types/common/src/constants.d.ts +44 -0
  201. package/dist/types/common/src/keys.d.ts +2 -0
  202. package/dist/types/common/src/random.d.ts +7 -0
  203. package/dist/types/element/src/Scene.d.ts +1 -1
  204. package/dist/types/element/src/comparisons.d.ts +5 -3
  205. package/dist/types/element/src/delta.d.ts +23 -1
  206. package/dist/types/element/src/flowchart.d.ts +5 -1
  207. package/dist/types/element/src/frame.d.ts +2 -2
  208. package/dist/types/element/src/index.d.ts +1 -0
  209. package/dist/types/element/src/linearElementEditor.d.ts +10 -0
  210. package/dist/types/element/src/mutateElement.d.ts +1 -1
  211. package/dist/types/element/src/newElement.d.ts +24 -2
  212. package/dist/types/element/src/renderElement.d.ts +21 -4
  213. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  214. package/dist/types/element/src/stickyNote.d.ts +183 -0
  215. package/dist/types/element/src/textElement.d.ts +2 -1
  216. package/dist/types/element/src/transform.d.ts +25 -6
  217. package/dist/types/element/src/typeChecks.d.ts +3 -2
  218. package/dist/types/element/src/types.d.ts +35 -6
  219. package/dist/types/element/src/utils.d.ts +7 -3
  220. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +30 -0
  221. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  222. package/dist/types/excalidraw/actions/actionBoundText.d.ts +20 -0
  223. package/dist/types/excalidraw/actions/actionCanvas.d.ts +70 -0
  224. package/dist/types/excalidraw/actions/actionClipboard.d.ts +20 -0
  225. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +10 -0
  226. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +31 -1
  227. package/dist/types/excalidraw/actions/actionDeselect.d.ts +10 -0
  228. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -2
  229. package/dist/types/excalidraw/actions/actionElementLink.d.ts +10 -0
  230. package/dist/types/excalidraw/actions/actionElementLock.d.ts +20 -0
  231. package/dist/types/excalidraw/actions/actionExport.d.ts +20 -0
  232. package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -0
  233. package/dist/types/excalidraw/actions/actionFrame.d.ts +81 -1
  234. package/dist/types/excalidraw/actions/actionGroup.d.ts +20 -0
  235. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +61 -1
  236. package/dist/types/excalidraw/actions/actionLink.d.ts +10 -0
  237. package/dist/types/excalidraw/actions/actionMenu.d.ts +10 -0
  238. package/dist/types/excalidraw/actions/actionProperties.d.ts +30 -6
  239. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +10 -0
  240. package/dist/types/excalidraw/actions/actionStyles.d.ts +11 -1
  241. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +10 -0
  242. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +10 -0
  243. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +10 -0
  244. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +10 -0
  245. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +10 -0
  246. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +10 -0
  247. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +10 -0
  248. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +10 -0
  249. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  250. package/dist/types/excalidraw/appState.d.ts +21 -1
  251. package/dist/types/excalidraw/components/App.arrowText.d.ts +40 -8
  252. package/dist/types/excalidraw/components/App.bucketFill.d.ts +14 -0
  253. package/dist/types/excalidraw/components/App.cursor.d.ts +10 -3
  254. package/dist/types/excalidraw/components/App.d.ts +120 -12
  255. package/dist/types/excalidraw/components/App.pan.d.ts +54 -0
  256. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  257. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  258. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +6 -2
  259. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  260. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -1
  261. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +4 -2
  262. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  263. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  264. package/dist/types/excalidraw/components/ColorPicker/topPicksDnD.d.ts +31 -0
  265. package/dist/types/excalidraw/components/IconButton.d.ts +2 -0
  266. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +1 -0
  267. package/dist/types/excalidraw/components/Tools.d.ts +7 -2
  268. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +0 -5
  269. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +2 -0
  270. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  271. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +1 -0
  272. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +2 -2
  273. package/dist/types/excalidraw/data/blob.d.ts +20 -0
  274. package/dist/types/excalidraw/data/json.d.ts +10 -0
  275. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  276. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
  277. package/dist/types/excalidraw/index.d.ts +3 -2
  278. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  279. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  280. package/dist/types/excalidraw/renderer/helpers.d.ts +25 -0
  281. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -1
  282. package/dist/types/excalidraw/scene/Renderer.d.ts +64 -2
  283. package/dist/types/excalidraw/scene/index.d.ts +1 -1
  284. package/dist/types/excalidraw/scene/types.d.ts +3 -1
  285. package/dist/types/excalidraw/types.d.ts +85 -2
  286. package/dist/types/excalidraw/viewport.d.ts +10 -0
  287. package/dist/types/math/src/curve.d.ts +19 -12
  288. package/dist/types/math/src/segment.d.ts +6 -0
  289. package/dist/types/utils/src/shape.d.ts +2 -2
  290. package/package.json +1 -1
  291. package/dist/dev/chunk-HY55C7T4.js +0 -69
  292. package/dist/dev/chunk-HY55C7T4.js.map +0 -7
  293. package/dist/dev/chunk-QLBMTSCL.js.map +0 -7
  294. package/dist/dev/chunk-RSCEQT52.js.map +0 -7
  295. package/dist/dev/locales/ar-SA-YEOLME2Y.js.map +0 -7
  296. package/dist/dev/locales/az-AZ-DQL36U4O.js.map +0 -7
  297. package/dist/dev/locales/bg-BG-LG6R5FEQ.js.map +0 -7
  298. package/dist/dev/locales/bn-BD-W63P7JT5.js.map +0 -7
  299. package/dist/dev/locales/bn-IN-SCHACAA6.js.map +0 -7
  300. package/dist/dev/locales/ca-ES-XP3CQTWV.js.map +0 -7
  301. package/dist/dev/locales/cs-CZ-EXLEOJMD.js.map +0 -7
  302. package/dist/dev/locales/da-DK-46ONLZRX.js.map +0 -7
  303. package/dist/dev/locales/de-CH-A5QH3YGW.js.map +0 -7
  304. package/dist/dev/locales/de-DE-FVCCKR5N.js.map +0 -7
  305. package/dist/dev/locales/el-GR-SB4MX5JS.js.map +0 -7
  306. package/dist/dev/locales/es-ES-VRTYQG6S.js.map +0 -7
  307. package/dist/dev/locales/eu-ES-3OHEU2YV.js.map +0 -7
  308. package/dist/dev/locales/fa-IR-74WR2KXF.js.map +0 -7
  309. package/dist/dev/locales/fi-FI-XZQC4II2.js.map +0 -7
  310. package/dist/dev/locales/fr-FR-RABBDBKM.js.map +0 -7
  311. package/dist/dev/locales/gl-ES-OU3Q6XUE.js.map +0 -7
  312. package/dist/dev/locales/he-IL-6NCD5D54.js.map +0 -7
  313. package/dist/dev/locales/hi-IN-M54WKOJI.js.map +0 -7
  314. package/dist/dev/locales/hu-HU-HAW63BCI.js.map +0 -7
  315. package/dist/dev/locales/id-ID-TFSPHGWX.js.map +0 -7
  316. package/dist/dev/locales/it-IT-MH3BAO5W.js.map +0 -7
  317. package/dist/dev/locales/ja-JP-UGJBHLX6.js.map +0 -7
  318. package/dist/dev/locales/kaa-5ZUEYWIM.js.map +0 -7
  319. package/dist/dev/locales/kab-KAB-RLAZQZSM.js.map +0 -7
  320. package/dist/dev/locales/kk-KZ-CIP7GOIF.js.map +0 -7
  321. package/dist/dev/locales/km-KH-YMR4247H.js.map +0 -7
  322. package/dist/dev/locales/ko-KR-WGKQKR2R.js.map +0 -7
  323. package/dist/dev/locales/ku-TR-ZSJN6TN6.js.map +0 -7
  324. package/dist/dev/locales/lt-LT-FT6ZGIZP.js.map +0 -7
  325. package/dist/dev/locales/lv-LV-U74YKDPR.js.map +0 -7
  326. package/dist/dev/locales/mr-IN-KN72LOIA.js.map +0 -7
  327. package/dist/dev/locales/my-MM-E57NLQ7W.js.map +0 -7
  328. package/dist/dev/locales/nb-NO-FYQDWD7X.js.map +0 -7
  329. package/dist/dev/locales/nl-NL-D5MZQRAC.js.map +0 -7
  330. package/dist/dev/locales/nn-NO-5ZEUZJV4.js.map +0 -7
  331. package/dist/dev/locales/oc-FR-MVW6LDAP.js.map +0 -7
  332. package/dist/dev/locales/pa-IN-2NH3SVNI.js.map +0 -7
  333. package/dist/dev/locales/pl-PL-M6LYWLHY.js.map +0 -7
  334. package/dist/dev/locales/pt-BR-27M3CCS7.js.map +0 -7
  335. package/dist/dev/locales/pt-PT-V3C226NP.js.map +0 -7
  336. package/dist/dev/locales/ro-RO-S4GNBAJI.js.map +0 -7
  337. package/dist/dev/locales/ru-RU-CRRT5JUZ.js.map +0 -7
  338. package/dist/dev/locales/si-LK-APMICZ7H.js.map +0 -7
  339. package/dist/dev/locales/sk-SK-7ZFDZG6Y.js.map +0 -7
  340. package/dist/dev/locales/sl-SI-BBENCX7D.js.map +0 -7
  341. package/dist/dev/locales/sv-SE-35QJIOEW.js.map +0 -7
  342. package/dist/dev/locales/ta-IN-4N5CFIWZ.js.map +0 -7
  343. package/dist/dev/locales/th-TH-2F4V4IDB.js.map +0 -7
  344. package/dist/dev/locales/tr-TR-NDFP3F7P.js.map +0 -7
  345. package/dist/dev/locales/uk-UA-4I6VBQZ5.js.map +0 -7
  346. package/dist/dev/locales/uz-UZ-UVKC7UNZ.js.map +0 -7
  347. package/dist/dev/locales/vi-VN-UQCETDRL.js.map +0 -7
  348. package/dist/dev/locales/zh-CN-RSRHKN75.js.map +0 -7
  349. package/dist/dev/locales/zh-HK-XSFQ32U4.js.map +0 -7
  350. package/dist/dev/locales/zh-TW-KFVYWRFJ.js.map +0 -7
  351. package/dist/prod/chunk-7XWMRXBY.js +0 -1
  352. package/dist/prod/chunk-GXCKUVI6.js +0 -12
  353. package/dist/prod/chunk-UQIC6LJC.js +0 -34
  354. package/dist/prod/data/image-6B22357O.js +0 -1
  355. package/dist/prod/locales/az-AZ-OXJXL76K.js +0 -1
  356. package/dist/prod/locales/bg-BG-W2GKIJDF.js +0 -5
  357. package/dist/prod/locales/bn-BD-TGL7M4PJ.js +0 -3
  358. package/dist/prod/locales/bn-IN-BKETKYEH.js +0 -3
  359. package/dist/prod/locales/ca-ES-LD5SCRVV.js +0 -8
  360. package/dist/prod/locales/cs-CZ-OFPU5DBV.js +0 -7
  361. package/dist/prod/locales/da-DK-FRDJFYWF.js +0 -2
  362. package/dist/prod/locales/de-CH-ZG7H3QK3.js +0 -11
  363. package/dist/prod/locales/de-DE-SIJYH4IH.js +0 -11
  364. package/dist/prod/locales/el-GR-IEE2CGI2.js +0 -7
  365. package/dist/prod/locales/es-ES-TVVPWKV5.js +0 -12
  366. package/dist/prod/locales/eu-ES-CGBMFQDT.js +0 -8
  367. package/dist/prod/locales/fa-IR-IE6XAPR4.js +0 -9
  368. package/dist/prod/locales/fi-FI-P7TKNHRM.js +0 -6
  369. package/dist/prod/locales/fr-FR-QI2XZNT7.js +0 -12
  370. package/dist/prod/locales/gl-ES-TLYCNOZZ.js +0 -6
  371. package/dist/prod/locales/he-IL-ZX43XLGP.js +0 -9
  372. package/dist/prod/locales/hi-IN-UTYRMTUF.js +0 -3
  373. package/dist/prod/locales/hu-HU-AJOSEBW6.js +0 -3
  374. package/dist/prod/locales/id-ID-ETLTVG6C.js +0 -8
  375. package/dist/prod/locales/it-IT-B4B6TP6L.js +0 -12
  376. package/dist/prod/locales/ja-JP-IYKVURR5.js +0 -12
  377. package/dist/prod/locales/kaa-SE2BUIKX.js +0 -1
  378. package/dist/prod/locales/kab-KAB-Y3GLKXLR.js +0 -4
  379. package/dist/prod/locales/kk-KZ-ABWUFVOH.js +0 -1
  380. package/dist/prod/locales/ko-KR-7JQDXKGM.js +0 -5
  381. package/dist/prod/locales/ku-TR-NAH2Q5B7.js +0 -6
  382. package/dist/prod/locales/lt-LT-VQFYRSNQ.js +0 -3
  383. package/dist/prod/locales/lv-LV-T62VSYUM.js +0 -4
  384. package/dist/prod/locales/mr-IN-V4FHLCJE.js +0 -9
  385. package/dist/prod/locales/my-MM-E3SQ6E54.js +0 -1
  386. package/dist/prod/locales/nb-NO-MLNOFN5H.js +0 -8
  387. package/dist/prod/locales/nl-NL-D5L3ZV4M.js +0 -13
  388. package/dist/prod/locales/nn-NO-NNHDGPKB.js +0 -4
  389. package/dist/prod/locales/oc-FR-DWCRF55G.js +0 -4
  390. package/dist/prod/locales/pa-IN-3JSAY44M.js +0 -4
  391. package/dist/prod/locales/percentages-ETZPVQEE.js +0 -1
  392. package/dist/prod/locales/pl-PL-ACURYKP3.js +0 -12
  393. package/dist/prod/locales/pt-BR-LOX7MLGD.js +0 -10
  394. package/dist/prod/locales/pt-PT-CZ2U2RFQ.js +0 -12
  395. package/dist/prod/locales/ro-RO-2HECL2X6.js +0 -12
  396. package/dist/prod/locales/ru-RU-HAYNXO46.js +0 -10
  397. package/dist/prod/locales/si-LK-W5KNS4H6.js +0 -1
  398. package/dist/prod/locales/sk-SK-7K2CFGDV.js +0 -7
  399. package/dist/prod/locales/sl-SI-OXV2QZWW.js +0 -6
  400. package/dist/prod/locales/sv-SE-JTOBZRGL.js +0 -12
  401. package/dist/prod/locales/ta-IN-KFAVKXGT.js +0 -6
  402. package/dist/prod/locales/th-TH-VDMSCPDL.js +0 -1
  403. package/dist/prod/locales/tr-TR-CEZ6GX45.js +0 -4
  404. package/dist/prod/locales/uk-UA-Q3H3OXQC.js +0 -6
  405. package/dist/prod/locales/uz-UZ-NGCSWWPX.js +0 -1
  406. package/dist/prod/locales/vi-VN-P3NDEVPS.js +0 -7
  407. package/dist/prod/locales/zh-CN-SS3O57GA.js +0 -11
  408. package/dist/prod/locales/zh-HK-LWJT3VCF.js +0 -1
  409. package/dist/prod/locales/zh-TW-VJXC72RT.js +0 -13
  410. /package/dist/dev/{chunk-K5XERBZZ.js.map → chunk-3BY36CLC.js.map} +0 -0
  411. /package/dist/dev/components/TTDDialog/{CodeMirrorEditor-MTOQXKVI.js.map → CodeMirrorEditor-52BOCW7F.js.map} +0 -0
  412. /package/dist/dev/data/{image-7JQU3GIY.js.map → image-QTSLOKRC.js.map} +0 -0
  413. /package/dist/dev/locales/{en-N5KZ66E6.js.map → en-INQU5YPU.js.map} +0 -0
  414. /package/dist/dev/locales/{percentages-QBBLQLIV.js.map → percentages-X2QIQ6XJ.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -13,6 +13,22 @@ Please add the latest change on the top under the correct section.
13
13
 
14
14
  ## Unreleased
15
15
 
16
+ ### Wheel navigation (2026-09-13) [#XXXX](https://github.com/excalidraw/excalidraw/pull/XXXX)
17
+
18
+ - Scrolling while holding the wheel (middle) mouse button zooms the canvas around the pointer, the same as ctrl/cmd+wheel — a wheel-button pan can be zoomed one-handed, without reaching for a modifier.
19
+ - New `appState.inputDevice` preference (`"auto" | "mouse" | "trackpad"`, default `"auto"`, persisted in browser storage) selecting the wheel mappings. With `"trackpad"` a plain wheel pans; with `"mouse"` a plain wheel zooms. Ctrl/cmd+wheel (how a pinch is delivered) zooms with either device. Shift+wheel pans horizontally, and ctrl/cmd+shift+wheel pans vertically. The wheel-button zoom above is unaffected. `"auto"` is reserved for detecting the device from the wheel events and resolves to `"trackpad"` until that is implemented (`resolveInputDevice()`). Set it from the new "Input device" radio in the main menu's preferences submenu, also exposed as `MainMenu.DefaultItems.Preferences.InputDevice`.
20
+
21
+ ### Sticky notes (2026-09-06) [#XXXX](https://github.com/excalidraw/excalidraw/pull/XXXX)
22
+
23
+ - New `stickynote` element type and toolbar tool (`N`): an always-filled, flat-rendered note whose label auto-fits — the font shrinks from the user's size down to a minimum, and only then does the note grow in height (it never shrinks below the height the user gave it). Click to place a 250×250 note, drag to size it (previewed at the dragged size, snapped to a font-aware minimum on release); text editing starts right away.
24
+ - Element model: the note carries `baseHeight` (the user's height; `height ≥ baseHeight`), its label carries `baseFontSize` (the user's font ceiling, `null`/absent on any other text) while `fontSize` holds the fitted size. Read a text element's user-facing size through `getBaseFontSize(text, elementsMap)`.
25
+ - Sticky notes are their own color domain: new `appState.currentItemStickynoteStrokeColor` (the note's text color) and `appState.currentItemStickynoteBackgroundColor` defaults, and new customizable top-pick slots `appState.colorTopPicks.stickyNoteStroke` / `stickyNoteBackground`. The stroke and background pickers, both eyedroppers and paste-styles resolve their target (regular / sticky / mixed) at execution time. A note and its label share one ink (the stroke picker reads "Text color" for notes): coloring the label while editing colors the note too, binding a colored text gives the note its color, and the creation-date footer always paints in that ink.
26
+ - Skeleton API: `convertToExcalidrawElements([{ type: "stickynote", x, y, label?: { text, fontSize? } }])` creates a note (and fitted label); see the element-skeleton docs.
27
+ - Tools can be dragged out of the toolbar: drag the sticky note button onto the canvas to drop a default-sized note where you release it, previewed translucently while dragging (nothing reaches the scene, history or collaborators until the drop; Escape cancels). The mechanism is generic — other tools can opt in.
28
+ - Toolbar: on desktop and tablet the image tool moved into the "More tools" menu (still `9`; `UIOptions.tools.image` keeps hiding it; the mobile toolbar keeps its image slot), and tool badges now show the letter shortcuts (`R`, `T`, `N`, …) instead of the numbers, which are no longer contiguous. The number keys keep working.
29
+ - Each note shows its creation date (`element.created`) in a footer band — "7 Sep", or "7 Sep 2025" once the year differs — on canvas and in SVG/PNG exports. The band is reserved in the note's layout, so the label never overlaps it; notes without a timestamp keep the band empty.
30
+ - Resize semantics: a note's corners resize proportionally by default and scale the label's font ceiling with the note (Shift frees them); its edges resize freely by default (Shift constrains them). Drag-creation is proportional by default too (Shift frees it) and never touches the font ceiling. Width-only gestures keep the base height, height gestures set it, aspect-locked multi-select and Stats group edits scale the ceiling; flips preserve everything. Arrows bound to a note follow it as it grows.
31
+
16
32
  ## Excalidraw API
17
33
 
18
34
  ### Host-controlled active tool (2026-07-14) [#11665](https://github.com/excalidraw/excalidraw/pull/11665)
@@ -1,7 +1,7 @@
1
1
  // <define:import.meta.env>
2
- var define_import_meta_env_default = { MODE: "development", VITE_APP_BACKEND_V2_GET_URL: "https://json-dev.excalidraw.com/api/v2/", VITE_APP_BACKEND_V2_POST_URL: "https://json-dev.excalidraw.com/api/v2/post/", VITE_APP_LIBRARY_URL: "https://libraries.excalidraw.com", VITE_APP_LIBRARY_BACKEND: "https://us-central1-excalidraw-room-persistence.cloudfunctions.net/libraries", VITE_APP_WS_SERVER_URL: "http://localhost:3002", VITE_APP_PLUS_LP: "https://plus.excalidraw.com", VITE_APP_PLUS_APP: "http://localhost:3000", VITE_APP_AI_BACKEND: "http://localhost:3016", VITE_APP_FIREBASE_CONFIG: '{"apiKey":"AIzaSyCMkxA60XIW8KbqMYL7edC4qT5l4qHX2h8","authDomain":"excalidraw-oss-dev.firebaseapp.com","projectId":"excalidraw-oss-dev","storageBucket":"excalidraw-oss-dev.appspot.com","messagingSenderId":"664559512677","appId":"1:664559512677:web:a385181f2928d328a7aa8c"}', VITE_APP_DEV_DISABLE_LIVE_RELOAD: "", VITE_APP_ENABLE_TRACKING: "true", FAST_REFRESH: "false", VITE_APP_PORT: "3001", VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX: "", VITE_APP_COLLAPSE_OVERLAY: "true", VITE_APP_ENABLE_ESLINT: "true", VITE_APP_ENABLE_PWA: "false", VITE_APP_PLUS_EXPORT_PUBLIC_KEY: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm2g5T+Rub6Kbf1Mf57t0\n7r2zeHuVg4dla3r5ryXMswtzz6x767octl6oLThn33mQsPSy3GKglFZoCTXJR4ij\nba8SxB04sL/N8eRrKja7TFWjCVtRwTTfyy771NYYNFVJclkxHyE5qw4m27crHF1y\nUNWEjuqNMi/lwAErS9fFa2oJlWyT8U7zzv/5kQREkxZI6y9v0AF3qcbsy2731FnD\ns9ChJvOUW9toIab2gsIdrKW8ZNpu084ZFVKb6LNjvIXI1Se4oMTHeszXzNptzlot\nkdxxjOoaQMAyfljFSot1F1FlU6MQlag7UnFGvFjRHN1JI5q4K+n3a67DX+TMyRqS\nHQIDAQAB", VITE_APP_DISABLE_PREVENT_UNLOAD: "", PKG_NAME: "@excalidraw/excalidraw", PKG_VERSION: "0.5.0-14564dd", DEV: true };
2
+ var define_import_meta_env_default = { MODE: "development", VITE_APP_BACKEND_V2_GET_URL: "https://json-dev.excalidraw.com/api/v2/", VITE_APP_BACKEND_V2_POST_URL: "https://json-dev.excalidraw.com/api/v2/post/", VITE_APP_LIBRARY_URL: "https://libraries.excalidraw.com", VITE_APP_LIBRARY_BACKEND: "https://us-central1-excalidraw-room-persistence.cloudfunctions.net/libraries", VITE_APP_WS_SERVER_URL: "http://localhost:3002", VITE_APP_PLUS_LP: "https://plus.excalidraw.com", VITE_APP_PLUS_APP: "http://localhost:3000", VITE_APP_AI_BACKEND: "http://localhost:3016", VITE_APP_FIREBASE_CONFIG: '{"apiKey":"AIzaSyCMkxA60XIW8KbqMYL7edC4qT5l4qHX2h8","authDomain":"excalidraw-oss-dev.firebaseapp.com","projectId":"excalidraw-oss-dev","storageBucket":"excalidraw-oss-dev.appspot.com","messagingSenderId":"664559512677","appId":"1:664559512677:web:a385181f2928d328a7aa8c"}', VITE_APP_DEV_DISABLE_LIVE_RELOAD: "", VITE_APP_ENABLE_TRACKING: "true", FAST_REFRESH: "false", VITE_APP_PORT: "3001", VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX: "", VITE_APP_COLLAPSE_OVERLAY: "true", VITE_APP_ENABLE_ESLINT: "true", VITE_APP_ENABLE_PWA: "false", VITE_APP_PLUS_EXPORT_PUBLIC_KEY: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm2g5T+Rub6Kbf1Mf57t0\n7r2zeHuVg4dla3r5ryXMswtzz6x767octl6oLThn33mQsPSy3GKglFZoCTXJR4ij\nba8SxB04sL/N8eRrKja7TFWjCVtRwTTfyy771NYYNFVJclkxHyE5qw4m27crHF1y\nUNWEjuqNMi/lwAErS9fFa2oJlWyT8U7zzv/5kQREkxZI6y9v0AF3qcbsy2731FnD\ns9ChJvOUW9toIab2gsIdrKW8ZNpu084ZFVKb6LNjvIXI1Se4oMTHeszXzNptzlot\nkdxxjOoaQMAyfljFSot1F1FlU6MQlag7UnFGvFjRHN1JI5q4K+n3a67DX+TMyRqS\nHQIDAQAB", VITE_APP_DISABLE_PREVENT_UNLOAD: "", PKG_NAME: "@excalidraw/excalidraw", PKG_VERSION: "0.5.0-150a4a3", DEV: true };
3
3
 
4
4
  export {
5
5
  define_import_meta_env_default
6
6
  };
7
- //# sourceMappingURL=chunk-K5XERBZZ.js.map
7
+ //# sourceMappingURL=chunk-3BY36CLC.js.map