@dwelle/excalidraw 0.4.0-7882f270 → 0.4.0-7a88d85

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 (344) hide show
  1. package/CHANGELOG.md +497 -450
  2. package/README.md +18 -1366
  3. package/dist/excalidraw-assets/Assistant-Bold.woff2 +0 -0
  4. package/dist/excalidraw-assets/Assistant-Medium.woff2 +0 -0
  5. package/dist/excalidraw-assets/Assistant-Regular.woff2 +0 -0
  6. package/dist/excalidraw-assets/Assistant-SemiBold.woff2 +0 -0
  7. package/dist/excalidraw-assets/vendor-d415b28e9024dee4bb1b.js +2 -0
  8. package/dist/excalidraw-assets-dev/Assistant-Bold.woff2 +0 -0
  9. package/dist/excalidraw-assets-dev/Assistant-Medium.woff2 +0 -0
  10. package/dist/excalidraw-assets-dev/Assistant-Regular.woff2 +0 -0
  11. package/dist/excalidraw-assets-dev/Assistant-SemiBold.woff2 +0 -0
  12. package/dist/excalidraw-assets-dev/vendor-a14cd58fa2db417e42b2.js +98 -0
  13. package/dist/excalidraw.development.js +3241 -1384
  14. package/dist/excalidraw.production.min.js +1 -1
  15. package/dist/excalidraw.production.min.js.LICENSE.txt +20 -7
  16. package/main.js +1 -8
  17. package/package.json +10 -5
  18. package/types/actions/actionAddToLibrary.d.ts +118 -55
  19. package/types/actions/actionAlign.d.ts +25 -20
  20. package/types/actions/actionBoundText.d.ts +181 -23
  21. package/types/actions/actionCanvas.d.ts +728 -172
  22. package/types/actions/actionClipboard.d.ts +222 -94
  23. package/types/actions/actionDeleteSelected.d.ts +126 -58
  24. package/types/actions/actionDistribute.d.ts +7 -8
  25. package/types/actions/actionDuplicateSelection.d.ts +1 -2
  26. package/types/actions/actionElementLock.d.ts +271 -0
  27. package/types/actions/actionExport.d.ts +415 -225
  28. package/types/actions/actionFinalize.d.ts +78 -40
  29. package/types/actions/actionFlip.d.ts +4 -7
  30. package/types/actions/actionFrame.d.ts +423 -0
  31. package/types/actions/actionGroup.d.ts +247 -10
  32. package/types/actions/actionHistory.d.ts +1 -1
  33. package/types/actions/{actionToggleLock.d.ts → actionLinearEditor.d.ts} +52 -32
  34. package/types/actions/actionMenu.d.ts +123 -61
  35. package/types/actions/actionNavigate.d.ts +2 -1
  36. package/types/actions/actionProperties.d.ts +527 -253
  37. package/types/actions/actionSelectAll.d.ts +121 -2
  38. package/types/actions/actionStyles.d.ts +40 -20
  39. package/types/actions/actionToggleGridMode.d.ts +42 -20
  40. package/types/actions/actionToggleStats.d.ts +41 -20
  41. package/types/actions/actionToggleViewMode.d.ts +42 -20
  42. package/types/actions/actionToggleZenMode.d.ts +42 -20
  43. package/types/actions/actionZindex.d.ts +4 -4
  44. package/types/actions/index.d.ts +2 -1
  45. package/types/actions/manager.d.ts +2 -1
  46. package/types/actions/shortcuts.d.ts +2 -1
  47. package/types/actions/types.d.ts +15 -10
  48. package/types/appState.d.ts +30 -25
  49. package/types/charts.d.ts +2 -2
  50. package/types/clients.d.ts +5 -6
  51. package/types/clipboard.d.ts +9 -3
  52. package/types/colors.d.ts +60 -5
  53. package/types/components/Actions.d.ts +10 -9
  54. package/types/components/ActiveConfirmDialog.d.ts +4 -0
  55. package/types/components/App.d.ts +93 -29
  56. package/types/components/Avatar.d.ts +2 -3
  57. package/types/components/BraveMeasureTextError.d.ts +2 -0
  58. package/types/components/Button.d.ts +16 -0
  59. package/types/components/ButtonIconSelect.d.ts +11 -3
  60. package/types/components/Card.d.ts +0 -1
  61. package/types/components/ColorPicker/ColorInput.d.ts +9 -0
  62. package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
  63. package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
  64. package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
  65. package/types/components/ColorPicker/Picker.d.ts +18 -0
  66. package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
  67. package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
  68. package/types/components/ColorPicker/ShadeList.d.ts +8 -0
  69. package/types/components/ColorPicker/TopPicks.d.ts +9 -0
  70. package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  71. package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  72. package/types/components/ContextMenu.d.ts +9 -22
  73. package/types/components/DefaultSidebar.d.ts +29 -0
  74. package/types/components/Dialog.d.ts +3 -4
  75. package/types/components/DialogActionButton.d.ts +10 -0
  76. package/types/components/ErrorDialog.d.ts +3 -2
  77. package/types/components/ExcalidrawLogo.d.ts +15 -0
  78. package/types/components/EyeDropper.d.ts +28 -0
  79. package/types/components/FilledButton.d.ts +17 -0
  80. package/types/components/FixedSideContainer.d.ts +1 -1
  81. package/types/components/HandButton.d.ts +10 -0
  82. package/types/components/HelpButton.d.ts +7 -0
  83. package/types/components/HintViewer.d.ts +5 -5
  84. package/types/components/HomeButton.d.ts +5 -0
  85. package/types/components/ImageExportDialog.d.ts +8 -11
  86. package/types/components/InitializeApp.d.ts +2 -0
  87. package/types/components/Island.d.ts +1 -1
  88. package/types/components/JSONExportDialog.d.ts +8 -6
  89. package/types/components/LayerUI.d.ts +11 -16
  90. package/types/components/LibraryMenu.d.ts +15 -7
  91. package/types/components/LibraryMenuBrowseButton.d.ts +7 -0
  92. package/types/components/LibraryMenuControlButtons.d.ts +9 -0
  93. package/types/components/LibraryMenuHeaderContent.d.ts +17 -0
  94. package/types/components/LibraryMenuItems.d.ts +4 -14
  95. package/types/components/LibraryMenuSection.d.ts +22 -0
  96. package/types/components/LibraryUnit.d.ts +7 -5
  97. package/types/components/LoadingMessage.d.ts +2 -1
  98. package/types/components/LockButton.d.ts +1 -2
  99. package/types/components/MobileMenu.d.ts +12 -14
  100. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  101. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  102. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  103. package/types/components/PasteChartDialog.d.ts +4 -5
  104. package/types/components/PenModeButton.d.ts +1 -1
  105. package/types/components/Popover.d.ts +1 -1
  106. package/types/components/ProjectName.d.ts +2 -1
  107. package/types/components/PublishLibrary.d.ts +2 -2
  108. package/types/components/RadioGroup.d.ts +12 -0
  109. package/types/components/Section.d.ts +1 -1
  110. package/types/components/Sidebar/Sidebar.d.ts +69 -60
  111. package/types/components/Sidebar/SidebarHeader.d.ts +6 -19
  112. package/types/components/Sidebar/SidebarTab.d.ts +8 -0
  113. package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  114. package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  115. package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
  116. package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
  117. package/types/components/Sidebar/common.d.ts +27 -5
  118. package/types/components/Spinner.d.ts +2 -1
  119. package/types/components/Stack.d.ts +4 -3
  120. package/types/components/Stats.d.ts +3 -3
  121. package/types/components/Switch.d.ts +9 -0
  122. package/types/components/ToolButton.d.ts +6 -5
  123. package/types/components/Tooltip.d.ts +1 -1
  124. package/types/components/Trans.d.ts +9 -0
  125. package/types/components/UserList.d.ts +0 -3
  126. package/types/components/canvases/InteractiveCanvas.d.ts +27 -0
  127. package/types/components/canvases/StaticCanvas.d.ts +18 -0
  128. package/types/components/canvases/index.d.ts +3 -0
  129. package/types/components/dropdownMenu/DropdownMenu.d.ts +67 -0
  130. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
  131. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  132. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -0
  133. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  134. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
  135. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -0
  136. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  137. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  138. package/types/components/dropdownMenu/common.d.ts +6 -0
  139. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  140. package/types/components/footer/Footer.d.ts +12 -0
  141. package/types/components/footer/FooterCenter.d.ts +8 -0
  142. package/types/components/hoc/withInternalFallback.d.ts +4 -0
  143. package/types/components/icons.d.ts +95 -123
  144. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -0
  145. package/types/components/main-menu/DefaultItems.d.ts +47 -0
  146. package/types/components/main-menu/MainMenu.d.ts +61 -0
  147. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +57 -0
  148. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  149. package/types/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  150. package/types/constants.d.ts +107 -23
  151. package/types/context/tunnels.d.ts +19 -0
  152. package/types/context/ui-appState.d.ts +4 -0
  153. package/types/data/blob.d.ts +4 -3
  154. package/types/data/encode.d.ts +1 -1
  155. package/types/data/filesystem.d.ts +2 -1
  156. package/types/data/index.d.ts +1 -1
  157. package/types/data/library.d.ts +3 -45
  158. package/types/data/restore.d.ts +10 -4
  159. package/types/data/transform.d.ts +71 -0
  160. package/types/data/types.d.ts +14 -1
  161. package/types/data/url.d.ts +7 -0
  162. package/types/element/Hyperlink.d.ts +52 -28
  163. package/types/element/binding.d.ts +4 -3
  164. package/types/element/bounds.d.ts +34 -8
  165. package/types/element/collision.d.ts +7 -7
  166. package/types/element/dragElements.d.ts +2 -1
  167. package/types/element/embeddable.d.ts +153 -0
  168. package/types/element/image.d.ts +11 -1
  169. package/types/element/index.d.ts +4 -3
  170. package/types/element/linearElementEditor.d.ts +91 -31
  171. package/types/element/mutateElement.d.ts +2 -1
  172. package/types/element/newElement.d.ts +59 -13
  173. package/types/element/resizeElements.d.ts +1 -1
  174. package/types/element/showSelectedShapeActions.d.ts +2 -2
  175. package/types/element/sizeHelpers.d.ts +8 -1
  176. package/types/element/sortElements.d.ts +2 -0
  177. package/types/element/textElement.d.ts +60 -8
  178. package/types/element/textWysiwyg.d.ts +7 -2
  179. package/types/element/transformHandles.d.ts +16 -10
  180. package/types/element/typeChecks.d.ts +14 -2
  181. package/types/element/types.d.ts +66 -35
  182. package/types/emitter.d.ts +1 -1
  183. package/types/errors.d.ts +1 -1
  184. package/types/frame.d.ts +40 -0
  185. package/types/ga.d.ts +5 -5
  186. package/types/groups.d.ts +15 -11
  187. package/types/history.d.ts +3 -3
  188. package/types/hooks/useCreatePortalContainer.d.ts +4 -0
  189. package/types/hooks/useLibraryItemSvg.d.ts +11 -0
  190. package/types/hooks/useOutsideClick.d.ts +19 -0
  191. package/types/hooks/useScrollPosition.d.ts +1 -0
  192. package/types/hooks/useStable.d.ts +1 -0
  193. package/types/hooks/useTransition.d.ts +2 -0
  194. package/types/i18n.d.ts +11 -2
  195. package/types/jotai.d.ts +20 -108
  196. package/types/keys.d.ts +19 -7
  197. package/types/math.d.ts +11 -1
  198. package/types/packages/excalidraw/dist/excalidraw.development.d.ts +2 -4
  199. package/types/packages/excalidraw/example/App.d.ts +9 -2
  200. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  201. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  202. package/types/packages/excalidraw/example/initialData.d.ts +182 -64
  203. package/types/packages/excalidraw/index.d.ts +20 -4
  204. package/types/packages/excalidraw/main.d.ts +3 -1
  205. package/types/packages/excalidraw/webpack.dev.config.d.ts +75 -61
  206. package/types/packages/excalidraw/webpack.prod.config.d.ts +88 -70
  207. package/types/packages/utils.d.ts +28 -24
  208. package/types/renderer/renderElement.d.ts +13 -22
  209. package/types/renderer/renderScene.d.ts +20 -30
  210. package/types/renderer/roundRect.d.ts +1 -1
  211. package/types/scene/Fonts.d.ts +21 -0
  212. package/types/scene/Renderer.d.ts +25 -0
  213. package/types/scene/Scene.d.ts +42 -5
  214. package/types/scene/Shape.d.ts +12 -0
  215. package/types/scene/ShapeCache.d.ts +20 -0
  216. package/types/scene/comparisons.d.ts +2 -3
  217. package/types/scene/export.d.ts +182 -10
  218. package/types/scene/index.d.ts +1 -1
  219. package/types/scene/scroll.d.ts +1 -1
  220. package/types/scene/scrollbars.d.ts +2 -6
  221. package/types/scene/selection.d.ts +26 -6
  222. package/types/scene/types.d.ts +69 -25
  223. package/types/shapes.d.ts +27 -3
  224. package/types/types.d.ts +194 -83
  225. package/types/utility-types.d.ts +24 -0
  226. package/types/utils.d.ts +78 -12
  227. package/types/zindex.d.ts +4 -4
  228. package/dist/excalidraw-assets/vendor-ddc717b6da3bea42bb67.js +0 -2
  229. package/dist/excalidraw-assets-dev/vendor-2811fad3dc3b42ee3357.js +0 -90
  230. package/types/components/ActiveFile.d.ts +0 -7
  231. package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +0 -9
  232. package/types/components/ClearCanvas.d.ts +0 -4
  233. package/types/components/CollabButton.d.ts +0 -7
  234. package/types/components/ColorPicker.d.ts +0 -14
  235. package/types/components/Footer.d.ts +0 -9
  236. package/types/components/HelpIcon.d.ts +0 -8
  237. package/types/components/LibraryButton.d.ts +0 -8
  238. package/types/components/SidebarLockButton.d.ts +0 -8
  239. package/types/components/SingleLibraryItem.d.ts +0 -10
  240. package/types/components/hoc/withUpstreamOverride.d.ts +0 -10
  241. package/types/packages/common.webpack.dev.config.d.ts +0 -71
  242. package/types/packages/common.webpack.prod.config.d.ts +0 -83
  243. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ar-SA-json-4ff31c0432fe4c84d726.d.ts +0 -0
  244. package/types/packages/excalidraw/dist/excalidraw-assets/locales/bg-BG-json-1c6eb789a5c90a61edf8.d.ts +0 -0
  245. package/types/packages/excalidraw/dist/excalidraw-assets/locales/bn-BD-json-aa99c5a33f005fb00c6b.d.ts +0 -0
  246. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ca-ES-json-32cf66a0dfdbbafb6903.d.ts +0 -0
  247. package/types/packages/excalidraw/dist/excalidraw-assets/locales/cs-CZ-json-304d08cac870aa0684ec.d.ts +0 -0
  248. package/types/packages/excalidraw/dist/excalidraw-assets/locales/da-DK-json-80c7153473e1427a9a3b.d.ts +0 -0
  249. package/types/packages/excalidraw/dist/excalidraw-assets/locales/de-DE-json-9b88838b2648d7d61f1b.d.ts +0 -0
  250. package/types/packages/excalidraw/dist/excalidraw-assets/locales/el-GR-json-74f57c0f8b11ac1b6dde.d.ts +0 -0
  251. package/types/packages/excalidraw/dist/excalidraw-assets/locales/es-ES-json-ffb4e65453db2f3058d4.d.ts +0 -0
  252. package/types/packages/excalidraw/dist/excalidraw-assets/locales/eu-ES-json-a61838a778c9eacb61ec.d.ts +0 -0
  253. package/types/packages/excalidraw/dist/excalidraw-assets/locales/fa-IR-json-2d0cb1044744ed8e4139.d.ts +0 -0
  254. package/types/packages/excalidraw/dist/excalidraw-assets/locales/fi-FI-json-32bcb6481756ef8af590.d.ts +0 -0
  255. package/types/packages/excalidraw/dist/excalidraw-assets/locales/fr-FR-json-935424b03b86c1d82dcd.d.ts +0 -0
  256. package/types/packages/excalidraw/dist/excalidraw-assets/locales/gl-ES-json-5b417484d91976bce190.d.ts +0 -0
  257. package/types/packages/excalidraw/dist/excalidraw-assets/locales/he-IL-json-3f5bfefb1ad0baf19b6c.d.ts +0 -0
  258. package/types/packages/excalidraw/dist/excalidraw-assets/locales/hi-IN-json-71a38dbb2202baec2bad.d.ts +0 -0
  259. package/types/packages/excalidraw/dist/excalidraw-assets/locales/hu-HU-json-e1275f2b1e6ae6ef4427.d.ts +0 -0
  260. package/types/packages/excalidraw/dist/excalidraw-assets/locales/id-ID-json-da38cd847aaf195c3c20.d.ts +0 -0
  261. package/types/packages/excalidraw/dist/excalidraw-assets/locales/it-IT-json-10923c290e23bd31a5b4.d.ts +0 -0
  262. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ja-JP-json-4c357f8206b88dc44840.d.ts +0 -0
  263. package/types/packages/excalidraw/dist/excalidraw-assets/locales/kab-KAB-json-8303afee283a95237f2b.d.ts +0 -0
  264. package/types/packages/excalidraw/dist/excalidraw-assets/locales/kk-KZ-json-ccf0876179807d1d685a.d.ts +0 -0
  265. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ko-KR-json-f27d159b2556809076aa.d.ts +0 -0
  266. package/types/packages/excalidraw/dist/excalidraw-assets/locales/lt-LT-json-7277ad8dae6d3e6607b3.d.ts +0 -0
  267. package/types/packages/excalidraw/dist/excalidraw-assets/locales/lv-LV-json-cc5e03ed2a09f8f8b60b.d.ts +0 -0
  268. package/types/packages/excalidraw/dist/excalidraw-assets/locales/mr-IN-json-cb316f30d7b40d3e6766.d.ts +0 -0
  269. package/types/packages/excalidraw/dist/excalidraw-assets/locales/my-MM-json-5dcc8e9cb97a4aa1d8bc.d.ts +0 -0
  270. package/types/packages/excalidraw/dist/excalidraw-assets/locales/nb-NO-json-61192c4af6e2231d38ae.d.ts +0 -0
  271. package/types/packages/excalidraw/dist/excalidraw-assets/locales/nl-NL-json-861ac93c048b5296b791.d.ts +0 -0
  272. package/types/packages/excalidraw/dist/excalidraw-assets/locales/nn-NO-json-808362c0cd4eccb6a885.d.ts +0 -0
  273. package/types/packages/excalidraw/dist/excalidraw-assets/locales/oc-FR-json-d5706569ab4023f94c66.d.ts +0 -0
  274. package/types/packages/excalidraw/dist/excalidraw-assets/locales/pa-IN-json-eb38ce8bfc1b974c1455.d.ts +0 -0
  275. package/types/packages/excalidraw/dist/excalidraw-assets/locales/pl-PL-json-55d8dd8a44917364ef63.d.ts +0 -0
  276. package/types/packages/excalidraw/dist/excalidraw-assets/locales/pt-BR-json-686219f43cd76123b7fa.d.ts +0 -0
  277. package/types/packages/excalidraw/dist/excalidraw-assets/locales/pt-PT-json-be4502ca3a1250845c39.d.ts +0 -0
  278. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ro-RO-json-232ea1e0c18745ec6ed9.d.ts +0 -0
  279. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ru-RU-json-ce5fedd8812aa76a0b41.d.ts +0 -0
  280. package/types/packages/excalidraw/dist/excalidraw-assets/locales/si-LK-json-f48a64dfd1cb9c075d2e.d.ts +0 -0
  281. package/types/packages/excalidraw/dist/excalidraw-assets/locales/sk-SK-json-537132ec043d4db7f328.d.ts +0 -0
  282. package/types/packages/excalidraw/dist/excalidraw-assets/locales/sl-SI-json-b69c9fd9b85dac1310c6.d.ts +0 -0
  283. package/types/packages/excalidraw/dist/excalidraw-assets/locales/sv-SE-json-9a8520b202b7181625cf.d.ts +0 -0
  284. package/types/packages/excalidraw/dist/excalidraw-assets/locales/ta-IN-json-15175d03785f7a482568.d.ts +0 -0
  285. package/types/packages/excalidraw/dist/excalidraw-assets/locales/tr-TR-json-c53ae37e848043dd0b89.d.ts +0 -0
  286. package/types/packages/excalidraw/dist/excalidraw-assets/locales/uk-UA-json-15fda426e55236408ef9.d.ts +0 -0
  287. package/types/packages/excalidraw/dist/excalidraw-assets/locales/vi-VN-json-5c276b534d762658589c.d.ts +0 -0
  288. package/types/packages/excalidraw/dist/excalidraw-assets/locales/zh-CN-json-0e3236ea93581e6ac2d3.d.ts +0 -0
  289. package/types/packages/excalidraw/dist/excalidraw-assets/locales/zh-HK-json-9e8b36ecb4c8399449b1.d.ts +0 -0
  290. package/types/packages/excalidraw/dist/excalidraw-assets/locales/zh-TW-json-441a30840e0721d7f2e2.d.ts +0 -0
  291. package/types/packages/excalidraw/dist/excalidraw-assets/vendor-52b1f3361986b6c6a4fe.d.ts +0 -0
  292. package/types/packages/excalidraw/dist/excalidraw-assets/vendor-ddc717b6da3bea42bb67.d.ts +0 -0
  293. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ar-SA-json-c8fa653de4977a22dad1.d.ts +0 -2
  294. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/bg-BG-json-d7e517c7462119871c76.d.ts +0 -2
  295. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/bn-BD-json-02993b6dba9e7f115b53.d.ts +0 -2
  296. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ca-ES-json-7aabb5b31e7a995a90e3.d.ts +0 -2
  297. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/cs-CZ-json-a9cc158d187424de71d7.d.ts +0 -2
  298. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/da-DK-json-81b641c9b272e91762b8.d.ts +0 -2
  299. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/de-DE-json-e9f68b4434bb76d28151.d.ts +0 -2
  300. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/el-GR-json-2bc44d5450554154e110.d.ts +0 -2
  301. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/es-ES-json-9e5e962b234d2fa5aac2.d.ts +0 -2
  302. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/eu-ES-json-05199638b0e1e11061f3.d.ts +0 -2
  303. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/fa-IR-json-2a69e87cf2308b8e78f5.d.ts +0 -2
  304. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/fi-FI-json-6f0f0bcd3593bcc8930a.d.ts +0 -2
  305. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/fr-FR-json-f53c7082a6f8691b7258.d.ts +0 -2
  306. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/gl-ES-json-5295fdf24f032f998f75.d.ts +0 -2
  307. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/he-IL-json-19fae6e424c8b418735d.d.ts +0 -2
  308. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/hi-IN-json-f04242b20685f34378a5.d.ts +0 -2
  309. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/hu-HU-json-c8014a1b2a44d4885691.d.ts +0 -2
  310. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/id-ID-json-bcd3ce43f1dbefe3f4d0.d.ts +0 -2
  311. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/it-IT-json-946dc662ecab93b77e69.d.ts +0 -2
  312. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ja-JP-json-77b3461742458e757b59.d.ts +0 -2
  313. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/kab-KAB-json-5e733b113476a350e900.d.ts +0 -2
  314. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/kk-KZ-json-5ec5044574589896438e.d.ts +0 -2
  315. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ko-KR-json-09de6762eea271167b56.d.ts +0 -2
  316. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/lt-LT-json-a17971ff33b8929e96d3.d.ts +0 -2
  317. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/lv-LV-json-2d1a7d044c33d030ecca.d.ts +0 -2
  318. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/mr-IN-json-ed8cde2f50a5f3c08e85.d.ts +0 -2
  319. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/my-MM-json-600fc533d1a1c8d3e2f9.d.ts +0 -2
  320. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/nb-NO-json-c7c63cfd529a92ac3510.d.ts +0 -2
  321. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/nl-NL-json-7e7200dded88b465781e.d.ts +0 -2
  322. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/nn-NO-json-d654941277fcbace33bf.d.ts +0 -2
  323. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/oc-FR-json-2d347b7f54a867a5478f.d.ts +0 -2
  324. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/pa-IN-json-63518bb328bf8b92790c.d.ts +0 -2
  325. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/pl-PL-json-92de366ba93223fa3d6a.d.ts +0 -2
  326. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/pt-BR-json-5e4c8cd83b785ed859c2.d.ts +0 -2
  327. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/pt-PT-json-a7f89a1c6f1c380141e5.d.ts +0 -2
  328. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ro-RO-json-6903d070f824f8b91709.d.ts +0 -2
  329. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ru-RU-json-110d8aec7823819bf4e3.d.ts +0 -2
  330. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/si-LK-json-ad2dff740d16a23684ff.d.ts +0 -2
  331. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/sk-SK-json-209333495d21be527f89.d.ts +0 -2
  332. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/sl-SI-json-76bdeb34579c5b1f944f.d.ts +0 -2
  333. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/sv-SE-json-6e768d07fff4e3ed6560.d.ts +0 -2
  334. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/ta-IN-json-059a459deba6d6230393.d.ts +0 -2
  335. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/tr-TR-json-7cc28f1f798ef2dd9864.d.ts +0 -2
  336. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/uk-UA-json-80b2990c3144c6bb1270.d.ts +0 -2
  337. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/vi-VN-json-670ecb0ad40c0453bdfd.d.ts +0 -2
  338. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/zh-CN-json-26caa1a6379860230513.d.ts +0 -2
  339. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/zh-HK-json-179f6dc61b14b96215fa.d.ts +0 -2
  340. package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/zh-TW-json-2aeeb73d79793ee69bfc.d.ts +0 -2
  341. package/types/packages/excalidraw/example/sidebar/Sidebar.d.ts +0 -5
  342. /package/dist/excalidraw-assets/{vendor-ddc717b6da3bea42bb67.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
  343. /package/types/packages/excalidraw/dist/{excalidraw-assets-dev/vendor-c0592035c3911af79359.d.ts → excalidraw-assets/vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
  344. /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-2811fad3dc3b42ee3357.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -11,708 +11,729 @@ The change should be grouped under one of the below section and must contain PR
11
11
  Please add the latest change on the top under the correct section.
12
12
  -->
13
13
 
14
- ## Unreleased
14
+ ## 0.16.1 (2023-09-21)
15
15
 
16
- ### Excalidraw API
16
+ ## Excalidraw Library
17
17
 
18
- #### Features
18
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
19
19
 
20
- - Added support for storing [`customData`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#storing-custom-data-to-excalidraw-elements) on Excalidraw elements [#5592].
21
- - Added `exportPadding?: number;` to [exportToCanvas](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exporttocanvas) and [exportToBlob](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exporttoblob). The default value of the padding is 10.
20
+ ### Fixes
22
21
 
23
- #### Breaking Changes
22
+ - More eye-droper fixes [#7019](https://github.com/excalidraw/excalidraw/pull/7019)
24
23
 
25
- - `setToastMessage` API is now renamed to `setToast` API and the function signature is also updated [#5427](https://github.com/excalidraw/excalidraw/pull/5427). You can also pass `duration` and `closable` attributes along with `message`.
24
+ ### Refactor
26
25
 
27
- ## 0.12.0 (2022-07-07)
26
+ - Move excalidraw-app outside src [#6987](https://github.com/excalidraw/excalidraw/pull/6987)
28
27
 
29
- ### Excalidraw API
30
-
31
- #### Features
28
+ ---
32
29
 
33
- - [`loadLibraryFromBlob`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#loadLibraryFromBlob) now takes an additional parameter `defaultStatus` which sets the default status of library item if not present, defaults to `unpublished` [#5067](https://github.com/excalidraw/excalidraw/pull/5067).
30
+ ## 0.16.0 (2023-09-19)
34
31
 
35
- - Add [`UIOptions.dockedSidebarBreakpoint`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#dockedSidebarBreakpoint) to customize at which point to break from the docked sidebar [#5274](https://github.com/excalidraw/excalidraw/pull/5274).
32
+ - Support creating containers, linear elements, text containers, labelled arrows and arrow bindings programatically [#6546](https://github.com/excalidraw/excalidraw/pull/6546)
33
+ - Introducing Web-Embeds (alias iframe element)[#6691](https://github.com/excalidraw/excalidraw/pull/6691)
34
+ - Added [`props.validateEmbeddable`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/props#validateEmbeddable) to customize embeddable src url validation. [#6691](https://github.com/excalidraw/excalidraw/pull/6691)
35
+ - Add support for `opts.fitToViewport` and `opts.viewportZoomFactor` in the [`ExcalidrawAPI.scrollToContent`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/props/ref#scrolltocontent) API. [#6581](https://github.com/excalidraw/excalidraw/pull/6581).
36
+ - Properly sanitize element `link` urls. [#6728](https://github.com/excalidraw/excalidraw/pull/6728).
37
+ - Sidebar component now supports tabs — for more detailed description of new behavior and breaking changes, see the linked PR. [#6213](https://github.com/excalidraw/excalidraw/pull/6213)
38
+ - Exposed `DefaultSidebar` component to allow modifying the default sidebar, such as adding custom tabs to it. [#6213](https://github.com/excalidraw/excalidraw/pull/6213)
36
39
 
37
- - Added support for supplying user `id` in the Collaborator object (see `collaborators` in [`updateScene()`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#updateScene)), which will be used to deduplicate users when rendering collaborator avatar list. Cursors will still be rendered for every user. [#5309](https://github.com/excalidraw/excalidraw/pull/5309)
40
+ #### BREAKING CHANGES
38
41
 
39
- - Export API to [set](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#setCursor) and [reset](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#resetCursor) mouse cursor on the canvas [#5215](https://github.com/excalidraw/excalidraw/pull/5215).
42
+ - `props.renderSidebar` is removed in favor of rendering as `children`.
43
+ - `appState.isSidebarDocked` replaced with `appState.defaultSidebarDockedPreference` with slightly different semantics, and relating only to the default sidebar. You need to handle `docked` state for your custom sidebars yourself.
44
+ - Sidebar `props.dockable` is removed. To indicate dockability, supply `props.onDock()` alongside setting `props.docked`.
45
+ - `Sidebar.Header` is no longer rendered by default. You need to render it yourself.
46
+ - `props.onClose` replaced with `props.onStateChange`.
47
+ - `restore()`/`restoreAppState()` now retains `appState.openSidebar` regardless of docked state.
40
48
 
41
- - Export [`sceneCoordsToViewportCoords`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onPointerDown) and [`viewportCoordsToSceneCoords`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onPointerDown) utilities [#5187](https://github.com/excalidraw/excalidraw/pull/5187).
49
+ ## Excalidraw Library
42
50
 
43
- - Added [`useHandleLibrary`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#useHandleLibrary) hook to automatically handle importing of libraries when `#addLibrary` URL hash key is present, and potentially for initializing library as well [#5115](https://github.com/excalidraw/excalidraw/pull/5115).
51
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
44
52
 
45
- Also added [`parseLibraryTokensFromUrl`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#parseLibraryTokensFromUrl) to help in manually importing library from URL if desired.
53
+ ### Features
46
54
 
47
- ##### BREAKING CHANGE
55
+ - allow `avif`, `jfif`, `webp`, `bmp`, `ico` image types [#6500](https://github.com/excalidraw/excalidraw/pull/6500)
56
+ - Zen-mode/go-to-plus button style tweaks [#7006](https://github.com/excalidraw/excalidraw/pull/7006)
48
57
 
49
- - Libraries are no longer automatically initialized from URL when `#addLibrary` hash key is present. Host apps now need to handle this themselves with the help of either of the above APIs (`useHandleLibrary` is recommended).
58
+ - Holding down CMD/CTRL will disable snap to grid when grid is active [#6983](https://github.com/excalidraw/excalidraw/pull/6983)
50
59
 
51
- - Added [`updateLibrary`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#updateLibrary) API to update (replace/merge) the library [#5115](https://github.com/excalidraw/excalidraw/pull/5115).
60
+ - Update logo [#6979](https://github.com/excalidraw/excalidraw/pull/6979)
52
61
 
53
- ##### BREAKING CHANGE
62
+ - Export `changeProperty()` and `getFormValue()`. [#6957](https://github.com/excalidraw/excalidraw/pull/6957)
54
63
 
55
- - `updateScene` API no longer supports passing `libraryItems`. Instead, use the `updateLibrary` API.
64
+ - Partition main canvas vertically [#6759](https://github.com/excalidraw/excalidraw/pull/6759)
56
65
 
57
- - Add support for integrating custom elements [#5164](https://github.com/excalidraw/excalidraw/pull/5164).
66
+ - Support creating containers, linear elements, text containers, labelled arrows and arrow bindings programatically [#6546](https://github.com/excalidraw/excalidraw/pull/6546)
58
67
 
59
- - Add [`onPointerDown`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onPointerDown) callback which gets triggered on pointer down events.
60
- - Add [`onScrollChange`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onScrollChange) callback which gets triggered when scrolling the canvas.
61
- - Add API [`setActiveTool`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#setActiveTool) which host can call to set the active tool.
68
+ - Add support for simplePDF in Web-Embeds [#6810](https://github.com/excalidraw/excalidraw/pull/6810)
62
69
 
63
- - Exported [`loadSceneOrLibraryFromBlob`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#loadSceneOrLibraryFromBlob) function [#5057](https://github.com/excalidraw/excalidraw/pull/5057).
64
- - Export [`MIME_TYPES`](https://github.com/excalidraw/excalidraw/blob/master/src/constants.ts#L92) supported by Excalidraw [#5135](https://github.com/excalidraw/excalidraw/pull/5135).
65
- - Support [`avatarUrl`](https://github.com/excalidraw/excalidraw/blob/master/src/types.ts#L50) for collaborators. Now onwards host can pass `avatarUrl` to render the customized avatar for collaborators [#5114](https://github.com/excalidraw/excalidraw/pull/5114), renamed in [#5177](https://github.com/excalidraw/excalidraw/pull/5177).
66
- - Support `libraryItems` argument in `initialData.libraryItems` and `updateScene({ libraryItems })` to be a Promise resolving to `LibraryItems`, and support functional update of `libraryItems` in [`updateScene({ libraryItems })`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#updateScene). [#5101](https://github.com/excalidraw/excalidraw/pull/5101).
67
- - Expose util [`mergeLibraryItems`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#mergeLibraryItems) [#5101](https://github.com/excalidraw/excalidraw/pull/5101).
68
- - Expose util [`exportToClipboard`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportToClipboard) which allows to copy the scene contents to clipboard as `svg`, `png` or `json` [#5103](https://github.com/excalidraw/excalidraw/pull/5103).
69
- - Expose `window.EXCALIDRAW_EXPORT_SOURCE` which you can use to overwrite the `source` field in exported data [#5095](https://github.com/excalidraw/excalidraw/pull/5095).
70
- - The `exportToBlob` utility now supports the `exportEmbedScene` option when generating a png image [#5047](https://github.com/excalidraw/excalidraw/pull/5047).
71
- - Exported [`restoreLibraryItems`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#restoreLibraryItems) API [#4995](https://github.com/excalidraw/excalidraw/pull/4995).
70
+ - Add support for val.town embeds [#6821](https://github.com/excalidraw/excalidraw/pull/6821)
72
71
 
73
- #### Fixes
72
+ - Render bold lines in grid [#6779](https://github.com/excalidraw/excalidraw/pull/6779)
74
73
 
75
- - Allow returning `null ` in [`renderFooter`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#renderFooter) prop [#5282](https://github.com/excalidraw/excalidraw/pull/5282).
74
+ - Adds support for stackblitz.com embeds [#6813](https://github.com/excalidraw/excalidraw/pull/6813)
76
75
 
77
- - Transpile `browser-fs-access` dependency so that its `for await` syntax doesn't force `es2018` requirement onto dependent projects [#5041](https://github.com/excalidraw/excalidraw/pull/5041).
76
+ - Cache most of element selection [#6747](https://github.com/excalidraw/excalidraw/pull/6747)
78
77
 
79
- - Use `window.EXCALIDRAW_ASSET_PATH` for fonts when exporting to svg [#5065](https://github.com/excalidraw/excalidraw/pull/5065).
80
- - Library menu now properly rerenders if open when library is updated using `updateScene({ libraryItems })` [#4995](https://github.com/excalidraw/excalidraw/pull/4995).
78
+ - Support customizing what parts of frames are rendered [#6752](https://github.com/excalidraw/excalidraw/pull/6752)
81
79
 
82
- #### Refactor
80
+ - Make `appState.selectedElementIds` more stable [#6745](https://github.com/excalidraw/excalidraw/pull/6745)
83
81
 
84
- - Rename `appState.elementLocked` to `appState.activeTool.locked` [#4983](https://github.com/excalidraw/excalidraw/pull/4983).
85
- - Expose [`serializeLibraryAsJSON`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#serializeLibraryAsJSON) helper that we use when saving Excalidraw Library to a file.
82
+ - Overwrite confirmation dialogs [#6658](https://github.com/excalidraw/excalidraw/pull/6658)
86
83
 
87
- ##### BREAKING CHANGE
84
+ - Simple analitycs [#6683](https://github.com/excalidraw/excalidraw/pull/6683)
88
85
 
89
- You will need to pass `activeTool.locked` instead of `elementType` from now onwards in `appState`.
86
+ - Introduce frames [#6123](https://github.com/excalidraw/excalidraw/pull/6123)
90
87
 
91
- - Rename `appState.elementType` to [`appState.activeTool`](https://github.com/excalidraw/excalidraw/blob/master/src/types.ts#L80) which is now an object [#4698](https://github.com/excalidraw/excalidraw/pull/4968).
88
+ - Add canvas-roundrect-polyfill package [#6675](https://github.com/excalidraw/excalidraw/pull/6675)
92
89
 
93
- ##### BREAKING CHANGE
90
+ - Polyfill `CanvasRenderingContext2D.roundRect` [#6673](https://github.com/excalidraw/excalidraw/pull/6673)
94
91
 
95
- You will need to pass `activeTool` instead of `elementType` from now onwards in `appState`
92
+ - Disable collab feature when running in iframe [#6646](https://github.com/excalidraw/excalidraw/pull/6646)
96
93
 
97
- ### Build
94
+ - Assign random user name when not set [#6663](https://github.com/excalidraw/excalidraw/pull/6663)
98
95
 
99
- - Use only named exports [#5045](https://github.com/excalidraw/excalidraw/pull/5045).
96
+ - Redesigned collab cursors [#6659](https://github.com/excalidraw/excalidraw/pull/6659)
100
97
 
101
- #### BREAKING CHANGE
98
+ - Eye dropper [#6615](https://github.com/excalidraw/excalidraw/pull/6615)
102
99
 
103
- You will need to import the named export from now onwards to use the component
100
+ - Redesign of Live Collaboration dialog [#6635](https://github.com/excalidraw/excalidraw/pull/6635)
104
101
 
105
- Using bundler :point_down:
102
+ - Recover scrolled position after Library re-opening [#6624](https://github.com/excalidraw/excalidraw/pull/6624)
106
103
 
107
- ```js
108
- import { Excalidraw } from "@excalidraw/excalidraw";
109
- ```
104
+ - Clearing library cache [#6621](https://github.com/excalidraw/excalidraw/pull/6621)
110
105
 
111
- In Browser :point_down:
106
+ - Update design of ImageExportDialog [#6614](https://github.com/excalidraw/excalidraw/pull/6614)
112
107
 
113
- ```js
114
- React.createElement(ExcalidrawLib.Excalidraw, opts);
115
- ```
108
+ - Add flipping for multiple elements [#5578](https://github.com/excalidraw/excalidraw/pull/5578)
116
109
 
117
- ## Excalidraw Library
110
+ - Color picker redesign [#6216](https://github.com/excalidraw/excalidraw/pull/6216)
118
111
 
119
- **_This section lists the updates made to the excalidraw library and will not affect the integration._**
112
+ - Add "unlock all elements" to canvas contextMenu [#5894](https://github.com/excalidraw/excalidraw/pull/5894)
120
113
 
121
- ### Features
114
+ - Library sidebar design tweaks [#6582](https://github.com/excalidraw/excalidraw/pull/6582)
122
115
 
123
- - Throttle scene rendering to animation framerate [#5422](https://github.com/excalidraw/excalidraw/pull/5422)
116
+ - Add Trans component for interpolating JSX in translations [#6534](https://github.com/excalidraw/excalidraw/pull/6534)
124
117
 
125
- - Make toast closable and allow custom duration [#5308](https://github.com/excalidraw/excalidraw/pull/5308)
118
+ - Testing simple analytics and fathom analytics for better privacy of the users [#6529](https://github.com/excalidraw/excalidraw/pull/6529)
126
119
 
127
- - Collab component state handling rewrite & fixes [#5046](https://github.com/excalidraw/excalidraw/pull/5046)
120
+ - Retain `seed` on shift-paste [#6509](https://github.com/excalidraw/excalidraw/pull/6509)
128
121
 
129
- - Support debugging PWA in dev [#4853](https://github.com/excalidraw/excalidraw/pull/4853)
122
+ - Allow `avif`, `jfif`, `webp`, `bmp`, `ico` image types (#6500
130
123
 
131
- - Redirect vscode.excalidraw.com to vscode marketplace [#5285](https://github.com/excalidraw/excalidraw/pull/5285)
124
+ ### Fixes
132
125
 
133
- - Go-to-excalidrawplus button [#5202](https://github.com/excalidraw/excalidraw/pull/5202)
126
+ - Improperly disabling UI pointer-events on canvas interaction [#7005](https://github.com/excalidraw/excalidraw/pull/7005)
134
127
 
135
- - Autoredirect to Excalidraw+ if special cookie is present [#5183](https://github.com/excalidraw/excalidraw/pull/5183)
128
+ - Several eyeDropper fixes [#7002](https://github.com/excalidraw/excalidraw/pull/7002)
136
129
 
137
- - Support resubmitting published library items [#5174](https://github.com/excalidraw/excalidraw/pull/5174)
130
+ - IsBindableElement to affirm frames [#6900](https://github.com/excalidraw/excalidraw/pull/6900)
138
131
 
139
- - Support adding multiple library items on canvas [#5116](https://github.com/excalidraw/excalidraw/pull/5116)
132
+ - Use `device.isMobile` for sidebar trigger label breakpoint [#6994](https://github.com/excalidraw/excalidraw/pull/6994)
140
133
 
141
- - Support customType in activeTool [#5144](https://github.com/excalidraw/excalidraw/pull/5144)
134
+ - Export to plus url [#6980](https://github.com/excalidraw/excalidraw/pull/6980)
142
135
 
143
- - Stop event propagation when key handled [#5091](https://github.com/excalidraw/excalidraw/pull/5091)
136
+ - Z-index inconsistencies during addition / deletion in frames [#6914](https://github.com/excalidraw/excalidraw/pull/6914)
144
137
 
145
- - Rewrite library state management & related refactor [#5067](https://github.com/excalidraw/excalidraw/pull/5067)
138
+ - Update size-limit so react is not installed as dependency [#6964](https://github.com/excalidraw/excalidraw/pull/6964)
146
139
 
147
- - Delay initial loading message & tweak design [#5049](https://github.com/excalidraw/excalidraw/pull/5049)
140
+ - Stale labeled arrow bounds cache after editing the label [#6893](https://github.com/excalidraw/excalidraw/pull/6893)
148
141
 
149
- - Reconcile when saving to firebase [#4991](https://github.com/excalidraw/excalidraw/pull/4991)
142
+ - Canvas flickering due to resetting canvas on skipped frames [#6960](https://github.com/excalidraw/excalidraw/pull/6960)
150
143
 
151
- - Hide trash button during collaboration [#5037](https://github.com/excalidraw/excalidraw/pull/5037)
144
+ - Grid jittery after partition PR [#6935](https://github.com/excalidraw/excalidraw/pull/6935)
152
145
 
153
- - Refactor local persistence & fix race condition on SW reload [#5032](https://github.com/excalidraw/excalidraw/pull/5032)
146
+ - Regression in indexing when adding elements to frame [#6904](https://github.com/excalidraw/excalidraw/pull/6904)
154
147
 
155
- - Element locking [#4964](https://github.com/excalidraw/excalidraw/pull/4964)
148
+ - Stabilize `selectedElementIds` when box selecting [#6912](https://github.com/excalidraw/excalidraw/pull/6912)
156
149
 
157
- - Copy to clipboard all text nodes as text [#5013](https://github.com/excalidraw/excalidraw/pull/5013)
150
+ - Resetting deleted elements on duplication [#6906](https://github.com/excalidraw/excalidraw/pull/6906)
158
151
 
159
- - Create and expose serializeLibraryAsJSON [#5009](https://github.com/excalidraw/excalidraw/pull/5009)
152
+ - Make canvas compos memoize appState on props they declare [#6897](https://github.com/excalidraw/excalidraw/pull/6897)
160
153
 
161
- - Hide penMode button on reload if not enabled [#4992](https://github.com/excalidraw/excalidraw/pull/4992)
154
+ - Scope `--color-selection` retrieval to given instance [#6886](https://github.com/excalidraw/excalidraw/pull/6886)
162
155
 
163
- - Eraser toggle to switch back to the previous tool [#4981](https://github.com/excalidraw/excalidraw/pull/4981)
156
+ - Webpack config exclude statement to system agnostic [#6857](https://github.com/excalidraw/excalidraw/pull/6857)
164
157
 
165
- - Save penDetected and penMode, and detect pen already on ToolButton click [#4955](https://github.com/excalidraw/excalidraw/pull/4955)
158
+ - Remove `embeddable` from generic elements [#6853](https://github.com/excalidraw/excalidraw/pull/6853)
166
159
 
167
- - Support binding text to container via context menu [#4935](https://github.com/excalidraw/excalidraw/pull/4935)
160
+ - Resizing arrow labels [#6789](https://github.com/excalidraw/excalidraw/pull/6789)
168
161
 
169
- - Map shortcut O to ellipse and Add eraser shortcut E [#4930](https://github.com/excalidraw/excalidraw/pull/4930)
162
+ - Eye-dropper not working with app offset correctly on non-1 dPR [#6835](https://github.com/excalidraw/excalidraw/pull/6835)
170
163
 
171
- - Update eraser cursor [#4922](https://github.com/excalidraw/excalidraw/pull/4922)
164
+ - Add self destroying service-worker.js to migrate everyone from CRA to Vite [#6833](https://github.com/excalidraw/excalidraw/pull/6833)
172
165
 
173
- - Add Eraser 🎉 [#4887](https://github.com/excalidraw/excalidraw/pull/4887)
166
+ - Forgotten REACT_APP env variables [#6834](https://github.com/excalidraw/excalidraw/pull/6834)
174
167
 
175
- - Added optional REACT_APP_WS_SERVER_URL for forks usecases [#4889](https://github.com/excalidraw/excalidraw/pull/4889)
168
+ - Refresh sw when browser refreshed [#6824](https://github.com/excalidraw/excalidraw/pull/6824)
176
169
 
177
- - Rewrite collab server connecting [#4881](https://github.com/excalidraw/excalidraw/pull/4881)
170
+ - Adding to selection via shift box-select [#6815](https://github.com/excalidraw/excalidraw/pull/6815)
178
171
 
179
- - Support vertical text align for bound containers [#4852](https://github.com/excalidraw/excalidraw/pull/4852)
172
+ - Prevent binding focus NaN value [#6803](https://github.com/excalidraw/excalidraw/pull/6803)
180
173
 
181
- - Support custom colors 🎉 [#4843](https://github.com/excalidraw/excalidraw/pull/4843)
174
+ - Use pull request in semantic workflow for better security [#6799](https://github.com/excalidraw/excalidraw/pull/6799)
182
175
 
183
- - Support Links in Exported SVG [#4791](https://github.com/excalidraw/excalidraw/pull/4791)
176
+ - Don't show `canvasBackground` label when `UIOptions.canvasActions.changeViewBackgroundColor` is false [#6781](https://github.com/excalidraw/excalidraw/pull/6781)
184
177
 
185
- - Scale font size when bound text containers resized with shift pressed [#4828](https://github.com/excalidraw/excalidraw/pull/4828)
178
+ - Use subdirectory for @excalidraw/excalidraw size limit [#6787](https://github.com/excalidraw/excalidraw/pull/6787)
186
179
 
187
- ### Fixes
180
+ - Use actual dock state to not close docked library on insert [#6766](https://github.com/excalidraw/excalidraw/pull/6766)
188
181
 
189
- - Autorelease job name [#5412](https://github.com/excalidraw/excalidraw/pull/5412)
182
+ - UI disappears when pressing the eyedropper shortcut on mobile [#6725](https://github.com/excalidraw/excalidraw/pull/6725)
190
183
 
191
- - Action name for autorelease [#5411](https://github.com/excalidraw/excalidraw/pull/5411)
184
+ - Elements in non-existing frame getting removed [#6708](https://github.com/excalidraw/excalidraw/pull/6708)
192
185
 
193
- - Typecast file to fix the build [#5410](https://github.com/excalidraw/excalidraw/pull/5410)
186
+ - Scrollbars renders but disable [#6706](https://github.com/excalidraw/excalidraw/pull/6706)
194
187
 
195
- - File handle not persisted when importing excalidraw files [#5372](https://github.com/excalidraw/excalidraw/pull/5372)
188
+ - Typo in chart.ts [#6696](https://github.com/excalidraw/excalidraw/pull/6696)
196
189
 
197
- - Library not scrollable when no published items installed [#5352](https://github.com/excalidraw/excalidraw/pull/5352)
190
+ - Do not bind text to container using text tool when it has text already [#6694](https://github.com/excalidraw/excalidraw/pull/6694)
198
191
 
199
- - Focus traps inside popovers [#5317](https://github.com/excalidraw/excalidraw/pull/5317)
192
+ - Don't allow binding text to images [#6693](https://github.com/excalidraw/excalidraw/pull/6693)
200
193
 
201
- - Unable to use cmd/ctrl-delete/backspace in inputs [#5348](https://github.com/excalidraw/excalidraw/pull/5348)
194
+ - Updated link for documentation page under help section [#6654](https://github.com/excalidraw/excalidraw/pull/6654)
202
195
 
203
- - Delay loading until language imported [#5344](https://github.com/excalidraw/excalidraw/pull/5344)
196
+ - Collab username style fixes [#6668](https://github.com/excalidraw/excalidraw/pull/6668)
204
197
 
205
- - Command to trigger release [#5347](https://github.com/excalidraw/excalidraw/pull/5347)
198
+ - Bound arrows not updated when rotating multiple elements [#6662](https://github.com/excalidraw/excalidraw/pull/6662)
206
199
 
207
- - Remove unnecessary options passed to language detector [#5336](https://github.com/excalidraw/excalidraw/pull/5336)
200
+ - Delete setCursor when resize [#6660](https://github.com/excalidraw/excalidraw/pull/6660)
208
201
 
209
- - Stale `appState.pendingImageElement` [#5322](https://github.com/excalidraw/excalidraw/pull/5322)
202
+ - Creating text while color picker open [#6651](https://github.com/excalidraw/excalidraw/pull/6651)
210
203
 
211
- - Non-letter shortcuts being swallowed by color picker [#5316](https://github.com/excalidraw/excalidraw/pull/5316)
204
+ - Cleanup textWysiwyg and getAdjustedDimensions [#6520](https://github.com/excalidraw/excalidraw/pull/6520)
212
205
 
213
- - Bind text to correct container when nested [#5307](https://github.com/excalidraw/excalidraw/pull/5307)
206
+ - Eye dropper not accounting for offsets [#6640](https://github.com/excalidraw/excalidraw/pull/6640)
214
207
 
215
- - Copy bound text style when copying element having bound text [#5305](https://github.com/excalidraw/excalidraw/pull/5305)
208
+ - Color picker input closing problem [#6599](https://github.com/excalidraw/excalidraw/pull/6599)
216
209
 
217
- - Copy arrow head when using copy styles [#5303](https://github.com/excalidraw/excalidraw/pull/5303)
210
+ - Export dialog shortcut toggles console on firefox [#6620](https://github.com/excalidraw/excalidraw/pull/6620)
218
211
 
219
- - Unsafely accessing draggingElement [#5216](https://github.com/excalidraw/excalidraw/pull/5216)
212
+ - Add react v17 `useTransition` polyfill [#6618](https://github.com/excalidraw/excalidraw/pull/6618)
220
213
 
221
- - Library load button does not work [#5205](https://github.com/excalidraw/excalidraw/pull/5205)
214
+ - Library dropdown visibility issue for mobile [#6613](https://github.com/excalidraw/excalidraw/pull/6613)
222
215
 
223
- - Do not deselect when not zooming using touchscreen pinch [#5181](https://github.com/excalidraw/excalidraw/pull/5181)
216
+ - `withInternalFallback` leaking state in multi-instance scenarios [#6602](https://github.com/excalidraw/excalidraw/pull/6602)
224
217
 
225
- - Wheel zoom normalization [#5165](https://github.com/excalidraw/excalidraw/pull/5165)
218
+ - Language list containing duplicate `en` lang [#6583](https://github.com/excalidraw/excalidraw/pull/6583)
226
219
 
227
- - Hide sidebar when `custom` tool active [#5179](https://github.com/excalidraw/excalidraw/pull/5179)
220
+ - Garbled text displayed on avatars [#6575](https://github.com/excalidraw/excalidraw/pull/6575)
228
221
 
229
- - Don't save deleted ExcalidrawElements to Firebase [#5108](https://github.com/excalidraw/excalidraw/pull/5108)
222
+ - Assign the original text to text editor only during init [#6580](https://github.com/excalidraw/excalidraw/pull/6580)
230
223
 
231
- - Eraser removed deleted elements [#5155](https://github.com/excalidraw/excalidraw/pull/5155)
224
+ - I18n: Apply Trans component to publish library dialogue [#6564](https://github.com/excalidraw/excalidraw/pull/6564)
232
225
 
233
- - Handle `ColorPicker` parentSelector being undefined [#5152](https://github.com/excalidraw/excalidraw/pull/5152)
226
+ - Fix brave error i18n string and remove unused [#6561](https://github.com/excalidraw/excalidraw/pull/6561)
234
227
 
235
- - Library multiselect not accounting for published state [#5132](https://github.com/excalidraw/excalidraw/pull/5132)
228
+ - Revert add version tags to Docker build [#6540](https://github.com/excalidraw/excalidraw/pull/6540)
236
229
 
237
- - Chart display fix [#5154](https://github.com/excalidraw/excalidraw/pull/5154)
230
+ - Don't refresh dimensions for text containers on font load [#6523](https://github.com/excalidraw/excalidraw/pull/6523)
238
231
 
239
- - Update opacity of bound text when opacity of container updated [#5142](https://github.com/excalidraw/excalidraw/pull/5142)
232
+ - Cleanup getMaxContainerHeight and getMaxContainerWidth [#6519](https://github.com/excalidraw/excalidraw/pull/6519)
240
233
 
241
- - Jumping of text when typing single line in bound text [#5139](https://github.com/excalidraw/excalidraw/pull/5139)
234
+ - Cleanup redrawTextBoundingBox [#6518](https://github.com/excalidraw/excalidraw/pull/6518)
242
235
 
243
- - Remove opacity scroll wheel interaction [#5111](https://github.com/excalidraw/excalidraw/pull/5111)
236
+ - Text jumps when editing on Android Chrome [#6503](https://github.com/excalidraw/excalidraw/pull/6503)
244
237
 
245
- - Propagate keydown events from excalidraw-wysiwyg inputs [#5099](https://github.com/excalidraw/excalidraw/pull/5099)
238
+ ### Styles
246
239
 
247
- - Don't bind text to container if double clicked else instead of center [#5105](https://github.com/excalidraw/excalidraw/pull/5105)
240
+ - Removes extra spaces [#6558](https://github.com/excalidraw/excalidraw/pull/6558)
248
241
 
249
- - ToolIcon height not using rem [#5092](https://github.com/excalidraw/excalidraw/pull/5092)
242
+ - Fix font family inconsistencies [#6501](https://github.com/excalidraw/excalidraw/pull/6501)
250
243
 
251
- - Excalidraw named export type [#5078](https://github.com/excalidraw/excalidraw/pull/5078)
244
+ ### Refactor
252
245
 
253
- - BoundElementIds when arrows bound to elements are deleted [#5077](https://github.com/excalidraw/excalidraw/pull/5077)
246
+ - Factor out shape generation from `renderElement.ts` pt 2 [#6878](https://github.com/excalidraw/excalidraw/pull/6878)
254
247
 
255
- - Don't merge libraryItems on updateScene [#5076](https://github.com/excalidraw/excalidraw/pull/5076)
248
+ - Add typeScript support to enforce valid translation keys [#6776](https://github.com/excalidraw/excalidraw/pull/6776)
256
249
 
257
- - SVG metadata extraction regex on multiline elements [#5074](https://github.com/excalidraw/excalidraw/pull/5074)
250
+ - Simplify `ImageExportDialog` [#6578](https://github.com/excalidraw/excalidraw/pull/6578)
258
251
 
259
- - Eraser cursor showing on theme change when not using eraser [#4990](https://github.com/excalidraw/excalidraw/pull/4990)
252
+ ### Performance
260
253
 
261
- - Update `storage.rules` [#5020](https://github.com/excalidraw/excalidraw/pull/5020)
254
+ - Limiting the suggested binding to fix performance issue [#6877](https://github.com/excalidraw/excalidraw/pull/6877)
262
255
 
263
- - Add image button not working on iPad [#5038](https://github.com/excalidraw/excalidraw/pull/5038)
256
+ - Memoize rendering of library [#6622](https://github.com/excalidraw/excalidraw/pull/6622)
264
257
 
265
- - Ensure svg image dimensions are always set [#5044](https://github.com/excalidraw/excalidraw/pull/5044)
258
+ - Improve rendering performance for Library [#6587](https://github.com/excalidraw/excalidraw/pull/6587)
266
259
 
267
- - Pinch zoom in view mode [#5001](https://github.com/excalidraw/excalidraw/pull/5001)
260
+ - Use `UIAppState` where possible to reduce UI rerenders [#6560](https://github.com/excalidraw/excalidraw/pull/6560)
268
261
 
269
- - Select whole group on righclick & few lock-related fixes [#5022](https://github.com/excalidraw/excalidraw/pull/5022)
262
+ ### Build
270
263
 
271
- - Export serializeLibraryAsJSON from the package [#5017](https://github.com/excalidraw/excalidraw/pull/5017)
264
+ - Increase limit for bundle by 1kb [#6880](https://github.com/excalidraw/excalidraw/pull/6880)
272
265
 
273
- - Support copying PNG to clipboard on Safari [#3746](https://github.com/excalidraw/excalidraw/pull/3746)
266
+ - Update to node 18 in docker [#6822](https://github.com/excalidraw/excalidraw/pull/6822)
274
267
 
275
- - More copyText fixes [#5016](https://github.com/excalidraw/excalidraw/pull/5016)
268
+ - Migrate to Vite 🚀 [#6818](https://github.com/excalidraw/excalidraw/pull/6818)
276
269
 
277
- - Copy to clipboard all text nodes as text [#5014](https://github.com/excalidraw/excalidraw/pull/5014)
270
+ - Migrate to Vite 🚀 [#6713](https://github.com/excalidraw/excalidraw/pull/6713)
278
271
 
279
- - Update cursorButton once freedraw is released [#4996](https://github.com/excalidraw/excalidraw/pull/4996)
272
+ - Increase limit to 290 kB for prod bundle [#6809](https://github.com/excalidraw/excalidraw/pull/6809)
280
273
 
281
- - Decouple actionFinalize and actionErase [#4984](https://github.com/excalidraw/excalidraw/pull/4984)
274
+ - Add version tags to Docker build [#6508](https://github.com/excalidraw/excalidraw/pull/6508)
282
275
 
283
- - Using stale state when switching tools [#4989](https://github.com/excalidraw/excalidraw/pull/4989)
276
+ ---
284
277
 
285
- - UpdateWysiwygStyle updatedElement is undefined TypeError [#4980](https://github.com/excalidraw/excalidraw/pull/4980)
278
+ ## 0.15.2 (2023-04-20)
286
279
 
287
- - Adding check for link length to prevent early return [#4982](https://github.com/excalidraw/excalidraw/pull/4982)
280
+ ### Docs
288
281
 
289
- - Show link icon for bound text containers [#4960](https://github.com/excalidraw/excalidraw/pull/4960)
282
+ - Fix docs link in readme [#6486](https://github.com/excalidraw/excalidraw/pull/6486)
290
283
 
291
- - Cancel erase elements on pointer up if eraser is not active on pointer up [#4956](https://github.com/excalidraw/excalidraw/pull/4956)
284
+ ## Excalidraw Library
292
285
 
293
- - Restore original opacities when alt pressed while erasing [#4954](https://github.com/excalidraw/excalidraw/pull/4954)
286
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
294
287
 
295
- - Don't bind text to container if already present [#4946](https://github.com/excalidraw/excalidraw/pull/4946)
288
+ ### Fixes
296
289
 
297
- - Erase all elements which are hit with single point click [#4934](https://github.com/excalidraw/excalidraw/pull/4934)
290
+ - Rotate the text element when binding to a rotated container [#6477](https://github.com/excalidraw/excalidraw/pull/6477)
298
291
 
299
- - Add multiElement-edit finalize action to Desktop (currently only visible in Mobile view) [#4764](https://github.com/excalidraw/excalidraw/pull/4764)
292
+ - Support breaking words containing hyphen - [#6014](https://github.com/excalidraw/excalidraw/pull/6014)
300
293
 
301
- - Hide eraser in view mode in desktop [#4929](https://github.com/excalidraw/excalidraw/pull/4929)
294
+ - Incorrect background fill button active state [#6491](https://github.com/excalidraw/excalidraw/pull/6491)
302
295
 
303
- - Undo when erasing elements by clicking [#4921](https://github.com/excalidraw/excalidraw/pull/4921)
296
+ ---
304
297
 
305
- - Undo when erasing [#4900](https://github.com/excalidraw/excalidraw/pull/4900)
298
+ ## 0.15.1 (2023-04-18)
306
299
 
307
- - Incorrectly erasing on mobile [#4899](https://github.com/excalidraw/excalidraw/pull/4899)
300
+ ### Docs
308
301
 
309
- - Don't crash on drop highlighted text onto canvas [#4890](https://github.com/excalidraw/excalidraw/pull/4890)
302
+ - Add the readme back to the package which was mistakenly removed [#6484](https://github.com/excalidraw/excalidraw/pull/6484)
310
303
 
311
- - Paste styles shortcut [#4886](https://github.com/excalidraw/excalidraw/pull/4886)
304
+ ## Excalidraw Library
312
305
 
313
- - Freedraw element's background fill color missing from SVG when exporting with package API exportToSvg() [#4871](https://github.com/excalidraw/excalidraw/pull/4871)
306
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
314
307
 
315
- - Improve pointer syncing performance [#4883](https://github.com/excalidraw/excalidraw/pull/4883)
308
+ ---
316
309
 
317
- - Collab room initialization [#4882](https://github.com/excalidraw/excalidraw/pull/4882)
310
+ ## 0.15.0 (2023-04-18)
318
311
 
319
- - Ensure verticalAlign properties not shown when no element selected [#4860](https://github.com/excalidraw/excalidraw/pull/4860)
312
+ ### Features
320
313
 
321
- - Binding text to non-bindable containers and not always preferring selection [#4655](https://github.com/excalidraw/excalidraw/pull/4655)
314
+ - [`ExcalidrawAPI.scrollToContent`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/props/ref#scrolltocontent) has new opts object allowing you to fit viewport to content, and animate the scrolling. [#6319](https://github.com/excalidraw/excalidraw/pull/6319)
322
315
 
323
- - Don't show align icons for single bound container element [#4846](https://github.com/excalidraw/excalidraw/pull/4846)
316
+ - Expose `useI18n()` hook return an object containing `t()` i18n helper and current `langCode`. You can use this in components you render as `<Excalidraw>` children to render any of our i18n locale strings. [#6224](https://github.com/excalidraw/excalidraw/pull/6224)
324
317
 
325
- - Redraw text bounding box when pasting styles [#4845](https://github.com/excalidraw/excalidraw/pull/4845)
318
+ - [`restoreElements`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/utils/restore#restoreelements) API now takes an optional parameter `opts` which currently supports the below attributes
326
319
 
327
- - Restore cursor position after bound text container value updated [#4836](https://github.com/excalidraw/excalidraw/pull/4836)
320
+ ```js
321
+ { refreshDimensions?: boolean, repairBindings?: boolean }
322
+ ```
328
323
 
329
- - Support resizing multiple bound text containers [#4824](https://github.com/excalidraw/excalidraw/pull/4824)
324
+ The same `opts` param has been added to [`restore`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/utils/restore#restore) API as well.
330
325
 
331
- - Also check overflowY: overlay in detectScroll [#4806](https://github.com/excalidraw/excalidraw/pull/4806)
326
+ For more details refer to the [docs](https://docs.excalidraw.com)
332
327
 
333
- - Stuck resizing when resizing bound text container very fast beyond threshold [#4804](https://github.com/excalidraw/excalidraw/pull/4804)
328
+ #### BREAKING CHANGE
334
329
 
335
- ### Refactor
330
+ - The optional parameter `refreshDimensions` in [`restoreElements`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/utils/restore#restoreelements) has been removed and can be enabled via `opts`
336
331
 
337
- - Don't pass array to handleBindTextResize [#4826](https://github.com/excalidraw/excalidraw/pull/4826)
332
+ ### Fixes
338
333
 
339
- ### Build
334
+ - Exporting labelled arrows via export utils [#6443](https://github.com/excalidraw/excalidraw/pull/6443)
340
335
 
341
- - Extract all i18n files into locales folder [#5419](https://github.com/excalidraw/excalidraw/pull/5419)
336
+ ## Excalidraw Library
342
337
 
343
- - Automate release step fully [#5414](https://github.com/excalidraw/excalidraw/pull/5414)
338
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
344
339
 
345
- - Use next and preview tags instead of separate packages for next and preview release [#5346](https://github.com/excalidraw/excalidraw/pull/5346)
340
+ ### Features
346
341
 
347
- - Support runtime React Jsx in @excalidraw/utils [#4866](https://github.com/excalidraw/excalidraw/pull/4866)
342
+ - Constrain export dialog preview size [#6475](https://github.com/excalidraw/excalidraw/pull/6475)
348
343
 
349
- - Release @excalidraw/utils 0.1.1 [#4862](https://github.com/excalidraw/excalidraw/pull/4862)
344
+ - Zigzag fill easter egg [#6439](https://github.com/excalidraw/excalidraw/pull/6439)
350
345
 
351
- - Remove build packages workflow [#4835](https://github.com/excalidraw/excalidraw/pull/4835)
346
+ - Add container to multiple text elements [#6428](https://github.com/excalidraw/excalidraw/pull/6428)
352
347
 
353
- ---
348
+ - Starting migration from GA to Matomo for better privacy [#6398](https://github.com/excalidraw/excalidraw/pull/6398)
354
349
 
355
- ## 0.11.0 (2022-02-17)
350
+ - Add line height attribute to text element [#6360](https://github.com/excalidraw/excalidraw/pull/6360)
356
351
 
357
- ## Excalidraw API
352
+ - Add thai lang support [#6314](https://github.com/excalidraw/excalidraw/pull/6314)
358
353
 
359
- ### Features
354
+ - Create bound container from text [#6301](https://github.com/excalidraw/excalidraw/pull/6301)
360
355
 
361
- - Add `onLinkOpen` prop which will be triggered when clicked on element hyperlink if present [#4694](https://github.com/excalidraw/excalidraw/pull/4694).
362
- - Support updating library using [`updateScene`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#updateScene) API [#4546](https://github.com/excalidraw/excalidraw/pull/4546).
356
+ - Improve text measurements in bound containers [#6187](https://github.com/excalidraw/excalidraw/pull/6187)
363
357
 
364
- - Introduced primary colors to the app. The colors can be overridden. Check [readme](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#customizing-styles) on how to do so [#4387](https://github.com/excalidraw/excalidraw/pull/4387).
358
+ - Bind text to container if double clicked on filled shape or stroke [#6250](https://github.com/excalidraw/excalidraw/pull/6250)
365
359
 
366
- - [`exportToBlob`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportToBlob) now automatically sets `appState.exportBackground` to `true` if exporting to `image/jpeg` MIME type (to ensure that alpha channel is not compressed to black color) [#4342](https://github.com/excalidraw/excalidraw/pull/4342).
360
+ - Make repair and refreshDimensions configurable in restoreElements [#6238](https://github.com/excalidraw/excalidraw/pull/6238)
367
361
 
368
- #### BREAKING CHANGE
362
+ - Show error message when not connected to internet while collabo… [#6165](https://github.com/excalidraw/excalidraw/pull/6165)
369
363
 
370
- Remove `getElementMap` util [#4306](https://github.com/excalidraw/excalidraw/pull/4306).
364
+ - Shortcut for clearCanvas confirmDialog [#6114](https://github.com/excalidraw/excalidraw/pull/6114)
371
365
 
372
- - Changes to [`exportToCanvas`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportToCanvas) util function [#4321](https://github.com/excalidraw/excalidraw/pull/4321):
366
+ - Disable canvas smoothing (antialiasing) for right-angled elements [#6186](https://github.com/excalidraw/excalidraw/pull/6186)Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>
373
367
 
374
- - Add `maxWidthOrHeight?: number` attribute.
375
- - `scale` returned from `getDimensions()` is now optional (default to `1`).
368
+ ### Fixes
376
369
 
377
- - Image support added for host [PR](https://github.com/excalidraw/excalidraw/pull/4011)
370
+ - Center align text when wrapped in container via context menu [#6480](https://github.com/excalidraw/excalidraw/pull/6480)
378
371
 
379
- General notes:
372
+ - Restore original container height when unbinding text which was binded via context menu [#6444](https://github.com/excalidraw/excalidraw/pull/6444)
380
373
 
381
- - File data are encoded as DataURLs (base64) for portability reasons.
374
+ - Mark more props as optional for element [#6448](https://github.com/excalidraw/excalidraw/pull/6448)
382
375
 
383
- [ExcalidrawAPI](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onLibraryChange):
376
+ - Improperly cache-busting on canvas scale instead of zoom [#6473](https://github.com/excalidraw/excalidraw/pull/6473)
384
377
 
385
- - added `getFiles()` to get current `BinaryFiles` (`Record<FileId, BinaryFileData>`). It may contain files that aren't referenced by any element, so if you're persisting the files to a storage, you should compare them against stored elements.
378
+ - Incorrectly duplicating items on paste/library insert [#6467](https://github.com/excalidraw/excalidraw/pull/6467)
386
379
 
387
- Excalidraw app props:
380
+ - Library ids cross-contamination on multiple insert [#6466](https://github.com/excalidraw/excalidraw/pull/6466)
388
381
 
389
- - added `generateIdForFile(file: File)` optional prop so you can generate your own ids for added files.
390
- - `onChange(elements, appState, files)` prop callback is now passed `BinaryFiles` as third argument.
391
- - `onPaste(data, event)` data prop should contain `data.files` (`BinaryFiles`) if the elements pasted are referencing new files.
392
- - `initialData` object now supports additional `files` (`BinaryFiles`) attribute.
382
+ - Color picker keyboard handling not working [#6464](https://github.com/excalidraw/excalidraw/pull/6464)
393
383
 
394
- Other notes:
384
+ - Abort freedraw line if second touch is detected [#6440](https://github.com/excalidraw/excalidraw/pull/6440)
395
385
 
396
- - `.excalidraw` files may now contain top-level `files` key in format of `Record<FileId, BinaryFileData>` when exporting any (image) elements.
397
- - Changes were made to various export utilities exported from the package so that they take `files`, you can refer to the docs for the same.
386
+ - Utils leaking Scene state [#6461](https://github.com/excalidraw/excalidraw/pull/6461)
398
387
 
399
- - Export [`isLinearElement`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#isLinearElement) and [`getNonDeletedElements`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#getNonDeletedElements) [#4072](https://github.com/excalidraw/excalidraw/pull/4072).
388
+ - Split "Edit selected shape" shortcut [#6457](https://github.com/excalidraw/excalidraw/pull/6457)
400
389
 
401
- - Support [`renderTopRightUI`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#renderTopRightUI) in mobile UI [#4065](https://github.com/excalidraw/excalidraw/pull/4065).
390
+ - Center align text when bind to container via context menu [#6451](https://github.com/excalidraw/excalidraw/pull/6451)
402
391
 
403
- - Export `THEME` constant from the package so host can use this when passing the theme [#4055](https://github.com/excalidraw/excalidraw/pull/4055).
392
+ - Update coords when text unbinded from its container [#6445](https://github.com/excalidraw/excalidraw/pull/6445)
404
393
 
405
- #### BREAKING CHANGE
394
+ - Autoredirect to plus in prod only [#6446](https://github.com/excalidraw/excalidraw/pull/6446)
406
395
 
407
- The `Appearance` type is now removed and renamed to `Theme` so `Theme` type needs to be used.
396
+ - Fixing popover overflow on small screen [#6433](https://github.com/excalidraw/excalidraw/pull/6433)
408
397
 
409
- ### Fixes
398
+ - Introduce baseline to fix the layout shift when switching to text editor [#6397](https://github.com/excalidraw/excalidraw/pull/6397)
410
399
 
411
- - Reset `unmounted` state on the component once component mounts to fix the mounting/unmounting repeatedly when used with `useEffect` [#4682](https://github.com/excalidraw/excalidraw/pull/4682).
412
- - Panning the canvas using `mousewheel-drag` and `space-drag` now prevents the browser from scrolling the container/page [#4489](https://github.com/excalidraw/excalidraw/pull/4489).
413
- - Scope drag and drop events to Excalidraw container to prevent overriding host application drag and drop events [#4445](https://github.com/excalidraw/excalidraw/pull/4445).
400
+ - Don't refresh dimensions for deleted text elements [#6438](https://github.com/excalidraw/excalidraw/pull/6438)
414
401
 
415
- ### Build
402
+ - Element vanishes when zoomed in [#6417](https://github.com/excalidraw/excalidraw/pull/6417)
416
403
 
417
- - Release preview package [@excalidraw/excalidraw-preview](https://www.npmjs.com/package/@excalidraw/excalidraw-preview) when triggered via comment
404
+ - Don't jump text to end when out of viewport in safari [#6416](https://github.com/excalidraw/excalidraw/pull/6416)
418
405
 
419
- ```
420
- @excalibot trigger release
421
- ```
406
+ - GetDefaultLineHeight should return default font family line height for unknown font [#6399](https://github.com/excalidraw/excalidraw/pull/6399)
422
407
 
423
- [#4750](https://github.com/excalidraw/excalidraw/pull/4750).
408
+ - Revert use `ideographic` textBaseline to improve layout shift when editing text" [#6400](https://github.com/excalidraw/excalidraw/pull/6400)
424
409
 
425
- - Added an example to test and develop the package [locally](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#Development) using `yarn start` [#4488](https://github.com/excalidraw/excalidraw/pull/4488)
410
+ - Call stack size exceeded when paste large text [#6373](https://github.com/excalidraw/excalidraw/pull/6373) (#6396)
426
411
 
427
- - Remove `file-loader` so font assets are not duplicated by webpack and use webpack asset modules for font generation [#4380](https://github.com/excalidraw/excalidraw/pull/4380).
412
+ - Use `ideographic` textBaseline to improve layout shift when editing text [#6384](https://github.com/excalidraw/excalidraw/pull/6384)
428
413
 
429
- - We're now compiling to `es2017` target. Notably, `async/await` is not compiled down to generators. [#4341](https://github.com/excalidraw/excalidraw/pull/4341).
414
+ - Chrome crashing when embedding scene on chrome arm [#6383](https://github.com/excalidraw/excalidraw/pull/6383)
430
415
 
431
- ---
416
+ - Division by zero in findFocusPointForEllipse leads to infinite loop in wrapText freezing Excalidraw [#6377](https://github.com/excalidraw/excalidraw/pull/6377)
432
417
 
433
- ## Excalidraw Library
418
+ - Containerizing text incorrectly updates arrow bindings [#6369](https://github.com/excalidraw/excalidraw/pull/6369)
434
419
 
435
- **_This section lists the updates made to the excalidraw library and will not affect the integration._**
420
+ - Ensure export preview is centered [#6337](https://github.com/excalidraw/excalidraw/pull/6337)
436
421
 
437
- ### Features
422
+ - Hide text align for labelled arrows [#6339](https://github.com/excalidraw/excalidraw/pull/6339)
438
423
 
439
- - Show group/group and link action in mobile [#4795](https://github.com/excalidraw/excalidraw/pull/4795)
424
+ - Refresh dimensions when elements loaded from shareable link and blob [#6333](https://github.com/excalidraw/excalidraw/pull/6333)
440
425
 
441
- - Support background fill for freedraw shapes [#4610](https://github.com/excalidraw/excalidraw/pull/4610)
426
+ - Show error message when measureText API breaks in brave [#6336](https://github.com/excalidraw/excalidraw/pull/6336)
442
427
 
443
- - Keep selected tool on canvas reset [#4728](https://github.com/excalidraw/excalidraw/pull/4728)
428
+ - Add an offset of 0.5px for text editor in containers [#6328](https://github.com/excalidraw/excalidraw/pull/6328)
444
429
 
445
- - Make whole element clickable in view mode when it has hyperlink [#4735](https://github.com/excalidraw/excalidraw/pull/4735)
430
+ - Move utility types out of `.d.ts` file to fix exported declaration files [#6315](https://github.com/excalidraw/excalidraw/pull/6315)
446
431
 
447
- - Allow any precision when zooming [#4730](https://github.com/excalidraw/excalidraw/pull/4730)
432
+ - More jotai scopes missing [#6313](https://github.com/excalidraw/excalidraw/pull/6313)
448
433
 
449
- - Throttle `pointermove` events per framerate [#4727](https://github.com/excalidraw/excalidraw/pull/4727)
434
+ - Provide HelpButton title prop [#6209](https://github.com/excalidraw/excalidraw/pull/6209)
450
435
 
451
- - Support hyperlinks 🔥 [#4620](https://github.com/excalidraw/excalidraw/pull/4620)
436
+ - Respect text align when wrapping in a container [#6310](https://github.com/excalidraw/excalidraw/pull/6310)
452
437
 
453
- - Added penMode for palm rejection [#4657](https://github.com/excalidraw/excalidraw/pull/4657)
438
+ - Compute bounding box correctly for text element when multiple element resizing [#6307](https://github.com/excalidraw/excalidraw/pull/6307)
454
439
 
455
- - Support unbinding bound text [#4686](https://github.com/excalidraw/excalidraw/pull/4686)
440
+ - Use jotai scope for editor-specific atoms [#6308](https://github.com/excalidraw/excalidraw/pull/6308)
456
441
 
457
- - Sync local storage state across tabs when out of sync [#4545](https://github.com/excalidraw/excalidraw/pull/4545)
442
+ - Consider arrow for bound text element [#6297](https://github.com/excalidraw/excalidraw/pull/6297)
458
443
 
459
- - Support contextMenuLabel to be of function type to support dynamic labels [#4654](https://github.com/excalidraw/excalidraw/pull/4654)
444
+ - Text never goes beyond max width for unbound text elements [#6288](https://github.com/excalidraw/excalidraw/pull/6288)
460
445
 
461
- - Support decreasing/increasing `fontSize` via keyboard [#4553](https://github.com/excalidraw/excalidraw/pull/4553)
446
+ - Svg text baseline [#6285](https://github.com/excalidraw/excalidraw/pull/6273)
462
447
 
463
- - Link to new LP for excalidraw plus [#4549](https://github.com/excalidraw/excalidraw/pull/4549)
448
+ - Compute container height from bound text correctly [#6273](https://github.com/excalidraw/excalidraw/pull/6273)
464
449
 
465
- - Update stroke color of bounded text along with container [#4541](https://github.com/excalidraw/excalidraw/pull/4541)
450
+ - Fit mobile toolbar and make scrollable [#6270](https://github.com/excalidraw/excalidraw/pull/6270)
466
451
 
467
- - Hints and shortcuts help around deep selection [#4502](https://github.com/excalidraw/excalidraw/pull/4502)
452
+ - Indenting via `tab` clashing with IME compositor [#6258](https://github.com/excalidraw/excalidraw/pull/6258)
468
453
 
469
- - Support updating text properties by clicking on container [#4499](https://github.com/excalidraw/excalidraw/pull/4499)
454
+ - Improve text wrapping inside rhombus and more fixes [#6265](https://github.com/excalidraw/excalidraw/pull/6265)
470
455
 
471
- - Bind text to shapes when pressing enter and support sticky notes 🎉 [#4343](https://github.com/excalidraw/excalidraw/pull/4343)
456
+ - Improve text wrapping in ellipse and alignment [#6172](https://github.com/excalidraw/excalidraw/pull/6172)
472
457
 
473
- - Change `boundElementIds` `boundElements` [#4404](https://github.com/excalidraw/excalidraw/pull/4404)
458
+ - Don't allow blank space in collab name [#6211](https://github.com/excalidraw/excalidraw/pull/6211)
474
459
 
475
- - Support selecting multiple points when editing line [#4373](https://github.com/excalidraw/excalidraw/pull/4373)
460
+ - Docker build architecture:linux/amd64 error occur on linux/arm64 instance [#6197](https://github.com/excalidraw/excalidraw/pull/6197)
476
461
 
477
- - Horizontally center toolbar menu [commit link](https://github.com/excalidraw/excalidraw/commit/9b8ee3cacfec239617c357693cf2a3ca9972d2cb)
462
+ - Sort bound text elements to fix text duplication z-index error [#5130](https://github.com/excalidraw/excalidraw/pull/5130)
478
463
 
479
- - Add support for rounded corners in diamond [#4369](https://github.com/excalidraw/excalidraw/pull/4369)
464
+ - Hide welcome screen on mobile once user interacts [#6185](https://github.com/excalidraw/excalidraw/pull/6185)
480
465
 
481
- - Allow zooming up to 3000% [#4358](https://github.com/excalidraw/excalidraw/pull/4358)
466
+ - Edit link in docs [#6182](https://github.com/excalidraw/excalidraw/pull/6182)
482
467
 
483
- - Stop discarding precision when rendering [#4357](https://github.com/excalidraw/excalidraw/pull/4357)
468
+ ### Refactor
484
469
 
485
- - Support Image binding [#4347](https://github.com/excalidraw/excalidraw/pull/4347)
470
+ - Inline `SingleLibraryItem` into `PublishLibrary` [#6462](https://github.com/excalidraw/excalidraw/pull/6462)
486
471
 
487
- - Add `element.updated` [#4070](https://github.com/excalidraw/excalidraw/pull/4070)
472
+ - Make the example React app reusable without duplication [#6188](https://github.com/excalidraw/excalidraw/pull/6188)
488
473
 
489
- - Compress shareLink data when uploading to json server [#4225](https://github.com/excalidraw/excalidraw/pull/4225)
474
+ ### Performance
490
475
 
491
- - Supply `version` param when installing libraries [#4305](https://github.com/excalidraw/excalidraw/pull/4305)
476
+ - Break early if the line width <= max width of the container [#6347](https://github.com/excalidraw/excalidraw/pull/6347)
492
477
 
493
- - Log FS abortError to console [#4279](https://github.com/excalidraw/excalidraw/pull/4279)
478
+ ### Build
494
479
 
495
- - Add validation for website and remove validation for library item name [#4269](https://github.com/excalidraw/excalidraw/pull/4269)
480
+ - Move TS and types to devDependencies [#6346](https://github.com/excalidraw/excalidraw/pull/6346)
496
481
 
497
- - Allow publishing libraries from UI [#4115](https://github.com/excalidraw/excalidraw/pull/4115)
482
+ ---
498
483
 
499
- - Create confirm dialog to use instead of window.confirm [#4256](https://github.com/excalidraw/excalidraw/pull/4256)
484
+ ## 0.14.2 (2023-02-01)
500
485
 
501
- - Allow letters in IDs for storing files in backend [#4224](https://github.com/excalidraw/excalidraw/pull/4224)
486
+ ### Features
502
487
 
503
- - Remove support for V1 unencrypted backend [#4189](https://github.com/excalidraw/excalidraw/pull/4189)
488
+ - Welcome screen no longer renders by default, and you need to render it yourself. `UIOptions.welcomeScreen` option is now deprecated. [#6117](https://github.com/excalidraw/excalidraw/pull/6117)
489
+ - `MainMenu`, `MainMenu.Item`, and `MainMenu.ItemLink` components now all support `onSelect(event: Event): void` callback. If you call `event.preventDefault()`, it will prevent the menu from closing when an item is selected (clicked on). [#6152](https://github.com/excalidraw/excalidraw/pull/6152)
504
490
 
505
- - Use separate backend for local storage [#4187](https://github.com/excalidraw/excalidraw/pull/4187)
491
+ ### Fixes
506
492
 
507
- - Add hint around canvas panning [#4159](https://github.com/excalidraw/excalidraw/pull/4159)
493
+ - declare css variable for font in excalidraw so its available in host [#6160](https://github.com/excalidraw/excalidraw/pull/6160)
508
494
 
509
- - Stop using production services for development [#4113](https://github.com/excalidraw/excalidraw/pull/4113)
495
+ ## Excalidraw Library
510
496
 
511
- - Add triangle arrowhead [#4024](https://github.com/excalidraw/excalidraw/pull/4024)
497
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
512
498
 
513
- - Add rewrite to webex landing page [#4102](https://github.com/excalidraw/excalidraw/pull/4102)
499
+ ### Features
514
500
 
515
- - Switch collab server [#4092](https://github.com/excalidraw/excalidraw/pull/4092)
501
+ - Add hand/panning tool [#6141](https://github.com/excalidraw/excalidraw/pull/6141)
516
502
 
517
- - Use dialog component for clear canvas instead of window confirm [#4075](https://github.com/excalidraw/excalidraw/pull/4075)
503
+ - Show copy-as-png export button on firefox and show steps how to enable it [#6125](https://github.com/excalidraw/excalidraw/pull/6125)
518
504
 
519
505
  ### Fixes
520
506
 
521
- - Rename --color-primary-chubb to --color-primary-contrast-offset and fallback to primary color if not present [#4803](https://github.com/excalidraw/excalidraw/pull/4803)
507
+ - Horizontal padding when aligning bound text containers [#6180](https://github.com/excalidraw/excalidraw/pull/6180)
522
508
 
523
- - Add commits directly pushed to master in changelog [#4798](https://github.com/excalidraw/excalidraw/pull/4798)
509
+ - Make tunnels work in multi-instance scenarios [#6178](https://github.com/excalidraw/excalidraw/pull/6178)
524
510
 
525
- - Don't bump element version when adding files data [#4794](https://github.com/excalidraw/excalidraw/pull/4794)
511
+ - Add 1px width to the container to calculate more accurately [#6174](https://github.com/excalidraw/excalidraw/pull/6174)
526
512
 
527
- - Mobile link click [#4742](https://github.com/excalidraw/excalidraw/pull/4742)
513
+ - Quick typo fix [#6167](https://github.com/excalidraw/excalidraw/pull/6167)
528
514
 
529
- - ContextMenu timer & pointers not correctly reset on iOS [#4765](https://github.com/excalidraw/excalidraw/pull/4765)
515
+ - Set the width correctly using measureText in editor [#6162](https://github.com/excalidraw/excalidraw/pull/6162)
530
516
 
531
- - Use absolute coords when rendering link popover [#4753](https://github.com/excalidraw/excalidraw/pull/4753)
517
+ - :bug: broken emojis when wrap text [#6153](https://github.com/excalidraw/excalidraw/pull/6153)
532
518
 
533
- - Changing font size when text is not selected or edited [#4751](https://github.com/excalidraw/excalidraw/pull/4751)
519
+ - Button background and svg sizes [#6155](https://github.com/excalidraw/excalidraw/pull/6155)
534
520
 
535
- - Disable contextmenu on non-secondary `pen` events or `touch` [#4675](https://github.com/excalidraw/excalidraw/pull/4675)
521
+ ### Styles
536
522
 
537
- - Mobile context menu won't show on long press [#4741](https://github.com/excalidraw/excalidraw/pull/4741)
523
+ - Change in ExportButton style [#6147](https://github.com/excalidraw/excalidraw/pull/6147) (#6148)
538
524
 
539
- - Do not open links twice [#4738](https://github.com/excalidraw/excalidraw/pull/4738)
525
+ ### Build
540
526
 
541
- - Make link icon clickable in mobile [#4736](https://github.com/excalidraw/excalidraw/pull/4736)
527
+ - Temporarily disable pre-commit [#6132](https://github.com/excalidraw/excalidraw/pull/6132)
542
528
 
543
- - Apple Pen missing strokes [#4705](https://github.com/excalidraw/excalidraw/pull/4705)
529
+ ---
544
530
 
545
- - Freedraw slow movement jittery lines [#4726](https://github.com/excalidraw/excalidraw/pull/4726)
531
+ ## 0.14.1 (2023-01-16)
546
532
 
547
- - Disable three finger pinch zoom in penMode [#4725](https://github.com/excalidraw/excalidraw/pull/4725)
533
+ ### Fixes
548
534
 
549
- - Remove click listener for opening popup [#4700](https://github.com/excalidraw/excalidraw/pull/4700)
535
+ - remove overflow hidden from button [#6110](https://github.com/excalidraw/excalidraw/pull/6110). This fixes the collaborator count css in the [LiveCollaborationTrigger](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#LiveCollaborationTrigger) component.
550
536
 
551
- - Link popup position not accounting for offsets [#4695](https://github.com/excalidraw/excalidraw/pull/4695)
537
+ ## 0.14.0 (2023-01-13)
552
538
 
553
- - PenMode darkmode style [#4692](https://github.com/excalidraw/excalidraw/pull/4692)
539
+ ### Features
554
540
 
555
- - Typing `_+` in wysiwyg not working [#4681](https://github.com/excalidraw/excalidraw/pull/4681)
541
+ - Support customization for the editor [welcome screen](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#WelcomeScreen) [#6048](https://github.com/excalidraw/excalidraw/pull/6048).
556
542
 
557
- - Keyboard-zooming in wysiwyg should zoom canvas [#4676](https://github.com/excalidraw/excalidraw/pull/4676)
543
+ - Expose component API for the Excalidraw main menu [#6034](https://github.com/excalidraw/excalidraw/pull/6034), You can read more about its usage [here](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#MainMenu)
558
544
 
559
- - SceneCoordsToViewportCoords, jumping text when there is an offset [#4413](https://github.com/excalidraw/excalidraw/pull/4413) (#4630)
545
+ - Support customization for the Excalidraw [main menu](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#MainMenu) [#6034](https://github.com/excalidraw/excalidraw/pull/6034).
560
546
 
561
- - Right-click object menu displays partially off-screen [#4572](https://github.com/excalidraw/excalidraw/pull/4572) (#4631)
547
+ - [Footer](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#Footer) is now rendered as child component instead of passed as a render prop [#5970](https://github.com/excalidraw/excalidraw/pull/5970).
562
548
 
563
- - Support collaboration in bound text [#4573](https://github.com/excalidraw/excalidraw/pull/4573)
549
+ - Any top-level children passed to the `<Excalidraw/>` component that do not belong to one of the officially supported Excalidraw children components are now rendered directly inside the Excalidraw container (previously, they weren't rendered at all) [#6096](https://github.com/excalidraw/excalidraw/pull/6096).
564
550
 
565
- - Cmd/ctrl native browser behavior blocked in inputs [#4589](https://github.com/excalidraw/excalidraw/pull/4589)
551
+ - Expose [LiveCollaborationTrigger](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#LiveCollaborationTrigger) component. Replaces `props.onCollabButtonClick` [#6104](https://github.com/excalidraw/excalidraw/pull/6104).
566
552
 
567
- - Use cached width when calculating min width during resize [#4585](https://github.com/excalidraw/excalidraw/pull/4585)
553
+ #### BREAKING CHANGES
568
554
 
569
- - Support collaboration in bounded text [#4580](https://github.com/excalidraw/excalidraw/pull/4580)
555
+ - `props.onCollabButtonClick` is now removed. You need to render the main menu item yourself, and optionally also render the `<LiveCollaborationTrigger>` component using [renderTopRightUI](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#renderTopRightUI) prop if you want to retain the canvas button at top-right.
556
+ - The prop `renderFooter` is now removed in favor of rendering as a child component.
570
557
 
571
- - Port for collab server and update docs [#4569](https://github.com/excalidraw/excalidraw/pull/4569)
558
+ ### Excalidraw schema
572
559
 
573
- - Don't mutate the bounded text if not updated when submitted [#4543](https://github.com/excalidraw/excalidraw/pull/4543)
560
+ - Merged `appState.currentItemStrokeSharpness` and `appState.currentItemLinearStrokeSharpness` into `appState.currentItemRoundness`. Renamed `changeSharpness` action to `changeRoundness`. Excalidraw element's `strokeSharpness` was changed to `roundness`. Check the PR for types and more details [#5553](https://github.com/excalidraw/excalidraw/pull/5553).
574
561
 
575
- - Prevent canvas drag while editing text [#4552](https://github.com/excalidraw/excalidraw/pull/4552)
562
+ ## Excalidraw Library
576
563
 
577
- - Support shift+P for freedraw [#4550](https://github.com/excalidraw/excalidraw/pull/4550)
564
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
578
565
 
579
- - Prefer spreadsheet data over image [#4533](https://github.com/excalidraw/excalidraw/pull/4533)
566
+ ### Features
580
567
 
581
- - Show text properties button states correctly for bounded text [#4542](https://github.com/excalidraw/excalidraw/pull/4542)
568
+ - Generic button export [#6092](https://github.com/excalidraw/excalidraw/pull/6092)
582
569
 
583
- - Rotate bounded text when container is rotated before typing [#4535](https://github.com/excalidraw/excalidraw/pull/4535)
570
+ - Scroll using PageUp and PageDown [#6038](https://github.com/excalidraw/excalidraw/pull/6038)
584
571
 
585
- - Undo should work when selecting bounded textr [#4537](https://github.com/excalidraw/excalidraw/pull/4537)
572
+ - Support shrinking text containers to original height when text removed [#6025](https://github.com/excalidraw/excalidraw/pull/6025)
586
573
 
587
- - Reduce padding to 5px for bounded text [#4530](https://github.com/excalidraw/excalidraw/pull/4530)
574
+ - Move contextMenu into the component tree and control via appState [#6021](https://github.com/excalidraw/excalidraw/pull/6021)
588
575
 
589
- - Bound text doesn't inherit container [#4521](https://github.com/excalidraw/excalidraw/pull/4521)
576
+ - Allow readonly actions to be used in viewMode [#5982](https://github.com/excalidraw/excalidraw/pull/5982)
590
577
 
591
- - Text wrapping with grid [#4505](https://github.com/excalidraw/excalidraw/pull/4505) (#4506)
578
+ - Support labels for arrow 🔥 [#5723](https://github.com/excalidraw/excalidraw/pull/5723)
592
579
 
593
- - Check if process is defined before using so it works in browser [#4497](https://github.com/excalidraw/excalidraw/pull/4497)
580
+ - Don't add midpoint until dragged beyond a threshold [#5927](https://github.com/excalidraw/excalidraw/pull/5927)
594
581
 
595
- - Pending review fixes for sticky notes [#4493](https://github.com/excalidraw/excalidraw/pull/4493)
582
+ - Changed text copy/paste behaviour [#5786](https://github.com/excalidraw/excalidraw/pull/5786)
596
583
 
597
- - Pasted elements except binded text once paste action is complete [#4472](https://github.com/excalidraw/excalidraw/pull/4472)
584
+ - Reintroduce `x` shortcut for `freedraw` [#5840](https://github.com/excalidraw/excalidraw/pull/5840)
598
585
 
599
- - Don't select binded text when ungrouping [#4470](https://github.com/excalidraw/excalidraw/pull/4470)
586
+ - Tweak toolbar shortcuts & remove library shortcut [#5832](https://github.com/excalidraw/excalidraw/pull/5832)
600
587
 
601
- - Set height correctly when text properties updated while editing in container until first submit [#4469](https://github.com/excalidraw/excalidraw/pull/4469)
588
+ - Clean unused images only after 24hrs (local-only) [#5839](https://github.com/excalidraw/excalidraw/pull/5839)
602
589
 
603
- - Align and distribute binded text in container and cleanup [#4468](https://github.com/excalidraw/excalidraw/pull/4468)
590
+ - Refetch errored/pending images on collab room init load [#5833](https://github.com/excalidraw/excalidraw/pull/5833)
604
591
 
605
- - Move binded text when moving container using keyboard [#4466](https://github.com/excalidraw/excalidraw/pull/4466)
592
+ - Stop deleting whole line when no point select in line editor [#5676](https://github.com/excalidraw/excalidraw/pull/5676)
606
593
 
607
- - Support dragging binded text in container selected in a group [#4462](https://github.com/excalidraw/excalidraw/pull/4462)
594
+ - Editor redesign 🔥 [#5780](https://github.com/excalidraw/excalidraw/pull/5780)
608
595
 
609
- - Vertically align single line when deleting text in bounded container [#4460](https://github.com/excalidraw/excalidraw/pull/4460)
596
+ ### Fixes
610
597
 
611
- - Update height correctly when updating text properties in binded text [#4459](https://github.com/excalidraw/excalidraw/pull/4459)
598
+ - Mobile tools positioning [#6107](https://github.com/excalidraw/excalidraw/pull/6107)
612
599
 
613
- - Align library item previews to center [#4447](https://github.com/excalidraw/excalidraw/pull/4447)
600
+ - Renamed folder MainMenu->main-menu and support rest props [#6103](https://github.com/excalidraw/excalidraw/pull/6103)
614
601
 
615
- - Vertically center align text when text deleted [#4457](https://github.com/excalidraw/excalidraw/pull/4457)
602
+ - Use position absolute for mobile misc tools [#6099](https://github.com/excalidraw/excalidraw/pull/6099)
616
603
 
617
- - Vertically center the first line as user starts typing in container [#4454](https://github.com/excalidraw/excalidraw/pull/4454)
604
+ - React.memo resolvers not accounting for all props [#6042](https://github.com/excalidraw/excalidraw/pull/6042)
618
605
 
619
- - Switch cursor to center of container when adding text when dimensions are too small [#4452](https://github.com/excalidraw/excalidraw/pull/4452)
606
+ - Image horizontal flip fix + improved tests [#5799](https://github.com/excalidraw/excalidraw/pull/5799)
620
607
 
621
- - Vertically center align the bounded text correctly when zoomed [#4444](https://github.com/excalidraw/excalidraw/pull/4444)
608
+ - Png-exporting does not preserve angles correctly for flipped images [#6085](https://github.com/excalidraw/excalidraw/pull/6085)
622
609
 
623
- - Support updating stroke color for text by typing in color picker input [#4415](https://github.com/excalidraw/excalidraw/pull/4415)
610
+ - Stale appState of MainMenu defaultItems rendered from Actions [#6074](https://github.com/excalidraw/excalidraw/pull/6074)
624
611
 
625
- - Bound text not atomic with container when changing z-index [#4414](https://github.com/excalidraw/excalidraw/pull/4414)
612
+ - HelpDialog [#6072](https://github.com/excalidraw/excalidraw/pull/6072)
626
613
 
627
- - Update viewport coords correctly when editing text [#4416](https://github.com/excalidraw/excalidraw/pull/4416)
614
+ - Show error message on collab save failure [#6063](https://github.com/excalidraw/excalidraw/pull/6063)
628
615
 
629
- - Use word-break break-word only and update text editor height only when binded to container [#4410](https://github.com/excalidraw/excalidraw/pull/4410)
616
+ - Remove ga from docker build [#6059](https://github.com/excalidraw/excalidraw/pull/6059)
630
617
 
631
- - Husky not able to execute pre-commit on windows [#4370](https://github.com/excalidraw/excalidraw/pull/4370)
618
+ - Use displayName since name gets stripped off when uglifying/minifiyng in production [#6036](https://github.com/excalidraw/excalidraw/pull/6036)
632
619
 
633
- - Make firebase config parsing not fail on undefined env [#4381](https://github.com/excalidraw/excalidraw/pull/4381)
620
+ - Remove background from wysiwyg when editing arrow label [#6033](https://github.com/excalidraw/excalidraw/pull/6033)
634
621
 
635
- - Adding to library via contextmenu when no image is selected [#4356](https://github.com/excalidraw/excalidraw/pull/4356)
622
+ - Use canvas measureText to calculate width in measureText [#6030](https://github.com/excalidraw/excalidraw/pull/6030)
636
623
 
637
- - Export scale quality regression [#4316](https://github.com/excalidraw/excalidraw/pull/4316)
624
+ - Restoring deleted bindings [#6029](https://github.com/excalidraw/excalidraw/pull/6029)
638
625
 
639
- - Remove `100%` height from tooltip container to fix layout issues [#3980](https://github.com/excalidraw/excalidraw/pull/3980)
626
+ - ColorPicker getColor [#5949](https://github.com/excalidraw/excalidraw/pull/5949)
640
627
 
641
- - Inline ENV variables when building excalidraw package [#4311](https://github.com/excalidraw/excalidraw/pull/4311)
628
+ - Don't push whitespace to next line when exceeding max width during wrapping and make sure to use same width of text editor on DOM when measuring dimensions [#5996](https://github.com/excalidraw/excalidraw/pull/5996)
642
629
 
643
- - SVG export in dark mode with embedded bitmap image [#4285](https://github.com/excalidraw/excalidraw/pull/4285)
630
+ - Showing `grabbing` cursor when holding `spacebar` [#6015](https://github.com/excalidraw/excalidraw/pull/6015)
644
631
 
645
- - New FS API not working on Linux [#4280](https://github.com/excalidraw/excalidraw/pull/4280)
632
+ - Resize sometimes throwing on missing null-checks [#6013](https://github.com/excalidraw/excalidraw/pull/6013)
646
633
 
647
- - Url -> URL for consistency [#4277](https://github.com/excalidraw/excalidraw/pull/4277)
634
+ - PWA not working after CRA@5 update [#6012](https://github.com/excalidraw/excalidraw/pull/6012)
648
635
 
649
- - Prevent adding images to library via contextMenu [#4264](https://github.com/excalidraw/excalidraw/pull/4264)
636
+ - Not properly restoring element stroke and bg colors [#6002](https://github.com/excalidraw/excalidraw/pull/6002)
650
637
 
651
- - Account for libraries v2 when prompting [#4263](https://github.com/excalidraw/excalidraw/pull/4263)
638
+ - Avatar outline on safari & center [#5997](https://github.com/excalidraw/excalidraw/pull/5997)
652
639
 
653
- - Skia rendering issues [#4200](https://github.com/excalidraw/excalidraw/pull/4200)
640
+ - Chart pasting not working due to removing tab characters [#5987](https://github.com/excalidraw/excalidraw/pull/5987)
654
641
 
655
- - Ellipse roughness when `0` [#4194](https://github.com/excalidraw/excalidraw/pull/4194)
642
+ - Apply the right type of roundness when pasting styles [#5979](https://github.com/excalidraw/excalidraw/pull/5979)
656
643
 
657
- - Proper string for invalid SVG [#4191](https://github.com/excalidraw/excalidraw/pull/4191)
644
+ - Remove editor onpaste handler [#5971](https://github.com/excalidraw/excalidraw/pull/5971)
658
645
 
659
- - Images not initialized correctly [#4157](https://github.com/excalidraw/excalidraw/pull/4157)
646
+ - Remove blank space [#5950](https://github.com/excalidraw/excalidraw/pull/5950)
660
647
 
661
- - Image-related fixes [#4147](https://github.com/excalidraw/excalidraw/pull/4147)
648
+ - Galego and Kurdî missing in languages plus two locale typos [#5954](https://github.com/excalidraw/excalidraw/pull/5954)
662
649
 
663
- - Rewrite collab element reconciliation to fix z-index issues [#4076](https://github.com/excalidraw/excalidraw/pull/4076)
650
+ - `ExcalidrawArrowElement` rather than `ExcalidrawArrowEleement` [#5955](https://github.com/excalidraw/excalidraw/pull/5955)
664
651
 
665
- - Redirect excalidraw.com/about to for-webex.excalidraw.com [#4104](https://github.com/excalidraw/excalidraw/pull/4104)
652
+ - RenderFooter styling [#5962](https://github.com/excalidraw/excalidraw/pull/5962)
666
653
 
667
- - Redirect to webex LP instead of rewrite to fix SW [#4103](https://github.com/excalidraw/excalidraw/pull/4103)
654
+ - Repair element bindings on restore [#5956](https://github.com/excalidraw/excalidraw/pull/5956)
668
655
 
669
- - Clear image/shape cache of affected elements when adding files [#4089](https://github.com/excalidraw/excalidraw/pull/4089)
656
+ - Don't allow whitespaces for bound text [#5939](https://github.com/excalidraw/excalidraw/pull/5939)
670
657
 
671
- - Clear `LibraryUnit` DOM on unmount [#4084](https://github.com/excalidraw/excalidraw/pull/4084)
658
+ - Bindings do not survive history serialization [#5942](https://github.com/excalidraw/excalidraw/pull/5942)
672
659
 
673
- - Pasting images on firefox [#4085](https://github.com/excalidraw/excalidraw/pull/4085)
660
+ - Dedupe boundElement ids when container duplicated with alt+drag [#5938](https://github.com/excalidraw/excalidraw/pull/5938)
674
661
 
675
- ### Refactor
662
+ - Scale font correctly when using shift [#5935](https://github.com/excalidraw/excalidraw/pull/5935)
676
663
 
677
- - Simplify zoom by removing `zoom.translation` [#4477](https://github.com/excalidraw/excalidraw/pull/4477)
664
+ - Always bind to container selected by user [#5880](https://github.com/excalidraw/excalidraw/pull/5880)
678
665
 
679
- - Deduplicate encryption helpers [#4146](https://github.com/excalidraw/excalidraw/pull/4146)
666
+ - Fonts not rendered on init if `loadingdone` not fired [#5923](https://github.com/excalidraw/excalidraw/pull/5923)
680
667
 
681
- ### Performance
668
+ - Stop replacing `del` word with `Delete` [#5897](https://github.com/excalidraw/excalidraw/pull/5897)
682
669
 
683
- - Cache approx line height in textwysiwg [#4651](https://github.com/excalidraw/excalidraw/pull/4651)
670
+ - Remove legacy React.render() from the editor [#5893](https://github.com/excalidraw/excalidraw/pull/5893)
684
671
 
685
- ### Build
672
+ - Allow adding text via enter only for text containers [#5891](https://github.com/excalidraw/excalidraw/pull/5891)
686
673
 
687
- - Rename release command to 'release package' [#4783](https://github.com/excalidraw/excalidraw/pull/4783)
674
+ - Stop font `loadingdone` loop when rendering element SVGs [#5883](https://github.com/excalidraw/excalidraw/pull/5883)
688
675
 
689
- - Deploy excalidraw package example [#4762](https://github.com/excalidraw/excalidraw/pull/4762)
676
+ - Refresh text dimensions only after font load done [#5878](https://github.com/excalidraw/excalidraw/pull/5878)
690
677
 
691
- - Allow package.json changes when autoreleasing next [#4068](https://github.com/excalidraw/excalidraw/pull/4068)
678
+ - Correctly paste contents parsed by `JSON.parse()` as text. [#5868](https://github.com/excalidraw/excalidraw/pull/5868)
692
679
 
693
- ---
680
+ - SVG element attributes in icons.tsx [#5871](https://github.com/excalidraw/excalidraw/pull/5871)
694
681
 
695
- ## 0.10.0 (2021-10-13)
682
+ - Merge existing text with new when pasted [#5856](https://github.com/excalidraw/excalidraw/pull/5856)
696
683
 
697
- ## Excalidraw API
684
+ - Disable FAST_REFRESH to fix live reload [#5852](https://github.com/excalidraw/excalidraw/pull/5852)
698
685
 
699
- ### Fixes
686
+ - Paste clipboard contents into unbound text elements [#5849](https://github.com/excalidraw/excalidraw/pull/5849)
700
687
 
701
- - Don't show save file to disk button in export dialog when `saveFileToDisk` passed as `false` in [`UIOptions.canvasActions.export`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportOpts) [#4073](https://github.com/excalidraw/excalidraw/pull/4073).
688
+ - Compute dimensions of container correctly when text pasted on container [#5845](https://github.com/excalidraw/excalidraw/pull/5845)
702
689
 
703
- - [`onPaste`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onPaste) prop should return false to prevent the native excalidraw paste action [#3974](https://github.com/excalidraw/excalidraw/pull/3974).
690
+ - Line editor points rendering below elements [#5781](https://github.com/excalidraw/excalidraw/pull/5781)
704
691
 
705
- #### BREAKING CHANGE
692
+ - Syncing 1-point lines to remote clients [#5677](https://github.com/excalidraw/excalidraw/pull/5677)
693
+
694
+ - Incorrectly selecting linear elements on creation while tool-locked [#5785](https://github.com/excalidraw/excalidraw/pull/5785)
695
+
696
+ - Corrected typo in toggle theme shortcut [#5813](https://github.com/excalidraw/excalidraw/pull/5813)
697
+
698
+ - Hide canvas-modifying UI in view mode [#5815](https://github.com/excalidraw/excalidraw/pull/5815)
699
+
700
+ - Fix vertical/horizntal centering icons [#5812](https://github.com/excalidraw/excalidraw/pull/5812)
701
+
702
+ - Consistent use of ZOOM_STEP [#5801](https://github.com/excalidraw/excalidraw/pull/5801)
706
703
 
707
- - Earlier the paste action was prevented when the prop [`onPaste`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onPaste) returned true, but now it should return false to prevent the paste action. This was done to make it semantically more correct and intuitive.
704
+ - Multiple elements resizing regressions [#5586](https://github.com/excalidraw/excalidraw/pull/5586)
705
+
706
+ - Changelog typo [#5795](https://github.com/excalidraw/excalidraw/pull/5795)
707
+
708
+ ### Refactor
709
+
710
+ - Remove unnecessary code [#5933](https://github.com/excalidraw/excalidraw/pull/5933)
708
711
 
709
712
  ### Build
710
713
 
711
- - Enable jsx transform in webpack [#4049](https://github.com/excalidraw/excalidraw/pull/4049)
714
+ - Move release scripts to use release branch [#5958](https://github.com/excalidraw/excalidraw/pull/5958)
712
715
 
713
- ### Docs
716
+ - Stops ignoring .env files from docker context so env variables get set during react app build. [#5809](https://github.com/excalidraw/excalidraw/pull/5809)
714
717
 
715
- - Correct exportToBackend in README to onExportToBackend [#3952](https://github.com/excalidraw/excalidraw/pull/3952)
718
+ ---
719
+
720
+ ## 0.13.0 (2022-10-27)
721
+
722
+ ### Excalidraw API
723
+
724
+ #### Features
725
+
726
+ - `restoreElements()` now takes an optional parameter to indicate whether we should also recalculate text element dimensions. Defaults to `true`, but since this is a potentially costly operation, you may want to disable it if you restore elements in tight loops, such as during collaboration [#5432](https://github.com/excalidraw/excalidraw/pull/5432).
727
+ - Support rendering custom sidebar using [`renderSidebar`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#renderSidebar) prop ([#5663](https://github.com/excalidraw/excalidraw/pull/5663)).
728
+ - Add [`toggleMenu`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#toggleMenu) prop to toggle specific menu open/close state ([#5663](https://github.com/excalidraw/excalidraw/pull/5663)).
729
+ - Support [theme](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#theme) to be semi-controlled [#5660](https://github.com/excalidraw/excalidraw/pull/5660).
730
+ - Added support for storing [`customData`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#storing-custom-data-on-excalidraw-elements) on Excalidraw elements [#5592].
731
+ - Added `exportPadding?: number;` to [exportToCanvas](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exporttocanvas) and [exportToBlob](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exporttoblob). The default value of the padding is `10`.
732
+
733
+ #### Breaking Changes
734
+
735
+ - `props.UIOptions.canvasActions.theme` is now renamed to `props.UIOptions.canvasActions.toggleTheme` [#5660](https://github.com/excalidraw/excalidraw/pull/5660).
736
+ - `setToastMessage` API is now renamed to `setToast` API and the function signature is also updated [#5427](https://github.com/excalidraw/excalidraw/pull/5427). You can also pass `duration` and `closable` attributes along with `message`.
716
737
 
717
738
  ## Excalidraw Library
718
739
 
@@ -720,176 +741,202 @@ React.createElement(ExcalidrawLib.Excalidraw, opts);
720
741
 
721
742
  ### Features
722
743
 
723
- - Improve freedraw shape [#3984](https://github.com/excalidraw/excalidraw/pull/3984)
744
+ - Render library into `Sidebar` on mobile [#5774](https://github.com/excalidraw/excalidraw/pull/5774)
724
745
 
725
- - Make color ARIA labels better [#3871](https://github.com/excalidraw/excalidraw/pull/3871)
746
+ - Additional drag and drop image format support (webp, bmp, ico) [#5749](https://github.com/excalidraw/excalidraw/pull/5749)
726
747
 
727
- - Add origin trial tokens [#3853](https://github.com/excalidraw/excalidraw/pull/3853)
748
+ - Enter and Exit line editor via context menu [#5719](https://github.com/excalidraw/excalidraw/pull/5719)
728
749
 
729
- - Re-order zoom buttons [#3837](https://github.com/excalidraw/excalidraw/pull/3837)
750
+ - Further reduce darkmode init flash [#5701](https://github.com/excalidraw/excalidraw/pull/5701)
730
751
 
731
- - Add undo/redo buttons & tweak footer [#3832](https://github.com/excalidraw/excalidraw/pull/3832)
752
+ - Support segment midpoints in line editor [#5641](https://github.com/excalidraw/excalidraw/pull/5641)
732
753
 
733
- - Resave to png/svg with metadata if you loaded your scene from a png/svg file [#3645](https://github.com/excalidraw/excalidraw/pull/3645)
754
+ - Added exportPadding to PNG (blob) export in @excalidraw/utils [#5626](https://github.com/excalidraw/excalidraw/pull/5626)
734
755
 
735
- ### Fixes
756
+ - Introduce ExcalidrawElements and ExcalidrawAppState provider [#5463](https://github.com/excalidraw/excalidraw/pull/5463)
736
757
 
737
- - Abstract and fix legacy fs [#4032](https://github.com/excalidraw/excalidraw/pull/4032)
758
+ - Enable midpoint inside linear element editor [#5564](https://github.com/excalidraw/excalidraw/pull/5564)
738
759
 
739
- - Context menu positioning [#4025](https://github.com/excalidraw/excalidraw/pull/4025)
760
+ - Show a mid point for linear elements [#5534](https://github.com/excalidraw/excalidraw/pull/5534)
740
761
 
741
- - Added alert for bad encryption key [#3998](https://github.com/excalidraw/excalidraw/pull/3998)
762
+ - Lock angle when editing linear elements with shift pressed [#5527](https://github.com/excalidraw/excalidraw/pull/5527)
742
763
 
743
- - OnPaste should return false to prevent paste action [#3974](https://github.com/excalidraw/excalidraw/pull/3974)
764
+ - Redesign linear elements 🎉 [#5501](https://github.com/excalidraw/excalidraw/pull/5501)
744
765
 
745
- - Help-icon now visible on Safari [#3939](https://github.com/excalidraw/excalidraw/pull/3939)
766
+ - Cursor alignment when creating linear elements with shift pressed [#5518](https://github.com/excalidraw/excalidraw/pull/5518)
746
767
 
747
- - Permanent zoom mode [#3931](https://github.com/excalidraw/excalidraw/pull/3931)
768
+ - Shift-clamp when creating multi-point lines/arrows [#5500](https://github.com/excalidraw/excalidraw/pull/5500)
748
769
 
749
- - Undo/redo buttons gap in Safari [#3836](https://github.com/excalidraw/excalidraw/pull/3836)
770
+ - Cursor alignment when creating generic elements [#5516](https://github.com/excalidraw/excalidraw/pull/5516)
750
771
 
751
- - Prevent gradual canvas misalignment [#3833](https://github.com/excalidraw/excalidraw/pull/3833)
772
+ - Make context menu scrollable [#4030](https://github.com/excalidraw/excalidraw/pull/4030)
752
773
 
753
- - Color picker shortcuts not working when elements selected [#3817](https://github.com/excalidraw/excalidraw/pull/3817)
774
+ ### Fixes
754
775
 
755
- ---
776
+ - Ungroup short cut key [#5779](https://github.com/excalidraw/excalidraw/pull/5779)
756
777
 
757
- ## 0.9.0 (2021-07-10)
778
+ - Replaced KeyboardEvent.code with KeyboardEvent.key for all letters [#5523](https://github.com/excalidraw/excalidraw/pull/5523)
758
779
 
759
- ## Excalidraw API
780
+ - Free draw flip not scaling correctly [#5752](https://github.com/excalidraw/excalidraw/pull/5752)
760
781
 
761
- ### Features
782
+ - Wait for window focus until prompting for library install [#5751](https://github.com/excalidraw/excalidraw/pull/5751)
762
783
 
763
- - [`restore(data, localAppState, localElements)`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#restore) and [`restoreElements(elements, localElements)`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#restoreElements) now take `localElements` argument which will be used to ensure existing elements' versions are used and incremented. This fixes an issue where importing the same file would resolve to elements with older versions, potentially causing issues when reconciling [#3797](https://github.com/excalidraw/excalidraw/pull/3797).
784
+ - Update perfect freehand library to fix extra dot [#5727](https://github.com/excalidraw/excalidraw/pull/5727)
764
785
 
765
- #### BREAKING CHANGE
786
+ - RestoreElementWithProperties drops "parent" property [#5742](https://github.com/excalidraw/excalidraw/pull/5742)
766
787
 
767
- - `localElements` argument is mandatory (can be `null`/`undefined`) if using TypeScript.
788
+ - Horizontal text alignment for bound text when resizing [#5721](https://github.com/excalidraw/excalidraw/pull/5721)
768
789
 
769
- - Support `appState.exportEmbedScene` attribute in [`exportToSvg`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportToSvg) which allows to embed the scene data [#3777](https://github.com/excalidraw/excalidraw/pull/3777).
790
+ - Set the dimensions of bound text correctly [#5710](https://github.com/excalidraw/excalidraw/pull/5710)
770
791
 
771
- #### BREAKING CHANGE
792
+ - Image-mirroring in export preview and in exported svg [#5700](https://github.com/excalidraw/excalidraw/pull/5700)
772
793
 
773
- - The attribute `metadata` is now removed as `metadata` was only used to embed scene data which is now supported with the `appState.exportEmbedScene` attribute.
774
- - [`exportToSvg`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportToSvg) now resolves to a promise which resolves to `svg` of the exported drawing.
794
+ - Double state update incorrectly resetting state [#5704](https://github.com/excalidraw/excalidraw/pull/5704)
775
795
 
776
- - Expose [`loadLibraryFromBlob`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#loadLibraryFromBlobY), [`loadFromBlob`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#loadFromBlob), and [`getFreeDrawSvgPath`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#getFreeDrawSvgPath) [#3764](https://github.com/excalidraw/excalidraw/pull/3764).
796
+ - Remove no longer used code related to collab room loading [#5699](https://github.com/excalidraw/excalidraw/pull/5699)
777
797
 
778
- - Expose [`FONT_FAMILY`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#FONT_FAMILY) so that consumer can use when passing `initialData.appState.currentItemFontFamily` [#3710](https://github.com/excalidraw/excalidraw/pull/3710).
798
+ - Revert webpack deduping to fix `@next` runtime [#5695](https://github.com/excalidraw/excalidraw/pull/5695)
779
799
 
780
- - Added prop [`autoFocus`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#autoFocus) to focus the excalidraw component on page load when enabled, defaults to false [#3691](https://github.com/excalidraw/excalidraw/pull/3691).
800
+ - Move to release notes for v0.9.0 and after [#5686](https://github.com/excalidraw/excalidraw/pull/5686)
781
801
 
782
- Note: Earlier Excalidraw component was focused by default on page load, you need to enable `autoFocus` prop to retain the same behaviour.
802
+ - Zen-mode exit button not working [#5682](https://github.com/excalidraw/excalidraw/pull/5682)
783
803
 
784
- - Added prop `UIOptions.canvasActions.export.renderCustomUI` to support Custom UI rendering inside export dialog [#3666](https://github.com/excalidraw/excalidraw/pull/3666).
785
- - Added prop `UIOptions.canvasActions.saveAsImage` to show/hide the **Save as image** button in the canvas actions. Defaults to `true` hence the **Save as Image** button is rendered [#3662](https://github.com/excalidraw/excalidraw/pull/3662).
804
+ - Buttons jump around on the mobile menu [#5658](https://github.com/excalidraw/excalidraw/pull/5658)
786
805
 
787
- - Export dialog can be customised with [`UiOptions.canvasActions.export`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#exportOpts) [#3658](https://github.com/excalidraw/excalidraw/pull/3658).
806
+ - #5622 - prevent session theme reset during collaboration [#5640](https://github.com/excalidraw/excalidraw/pull/5640)
788
807
 
789
- Also, [`UIOptions`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#UIOptions) is now memoized to avoid unnecessary rerenders.
808
+ - Library actions inside the sidebar [#5638](https://github.com/excalidraw/excalidraw/pull/5638)
790
809
 
791
- #### BREAKING CHANGE
810
+ - Don't render library menu twice for mobile [#5636](https://github.com/excalidraw/excalidraw/pull/5636)
792
811
 
793
- - `UIOptions.canvasActions.saveAsScene` is now renamed to `UiOptions.canvasActions.export.saveFileToDisk`. Defaults to `true` hence the **save file to disk** button is rendered inside the export dialog.
794
- - `exportToBackend` is now renamed to `UIOptions.canvasActions.export.exportToBackend`. If this prop is not passed, the **shareable-link** button will not be rendered, same as before.
812
+ - Reintroduce help dialog button [#5631](https://github.com/excalidraw/excalidraw/pull/5631)
795
813
 
796
- ### Fixes
814
+ - Add display name to components so it doesn't show as anonymous [#5616](https://github.com/excalidraw/excalidraw/pull/5616)
797
815
 
798
- - Use excalidraw Id in elements so every element has unique id [#3696](https://github.com/excalidraw/excalidraw/pull/3696).
816
+ - Improve solveQuadratic when a = 0 [#5618](https://github.com/excalidraw/excalidraw/pull/5618)
799
817
 
800
- ### Refactor
818
+ - Add random tiny offsets to avoid linear elements from being clipped [#5615](https://github.com/excalidraw/excalidraw/pull/5615)
801
819
 
802
- - #### BREAKING CHANGE
803
- - Rename `UIOptions.canvasActions.saveScene` to `UIOptions.canvasActions.saveToActiveFile`[#3657](https://github.com/excalidraw/excalidraw/pull/3657).
804
- - Removed `shouldAddWatermark: boolean` attribute from options for [export](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#export-utilities) APIs [#3639](https://github.com/excalidraw/excalidraw/pull/3639).
805
- - Removed `appState.shouldAddWatermark` so in case you were passing `shouldAddWatermark` in [initialData.AppState](https://github.com/excalidraw/excalidraw/blob/master/src/types.ts#L42) it will not work anymore.
820
+ - Crash when adding a new point in the line editor #5602 [#5606](https://github.com/excalidraw/excalidraw/pull/5606)
806
821
 
807
- ## Excalidraw Library
822
+ - Allow box selection of points when inside editor [#5594](https://github.com/excalidraw/excalidraw/pull/5594)
808
823
 
809
- **_This section lists the updates made to the excalidraw library and will not affect the integration._**
824
+ - Remove unnecessary conditions in pointerup for linear elements [#5575](https://github.com/excalidraw/excalidraw/pull/5575)
810
825
 
811
- ### Features
826
+ - Check if hitting link in handleSelectionOnPointerDown [#5589](https://github.com/excalidraw/excalidraw/pull/5589)
812
827
 
813
- - Switch to selection tool on library item insert [#3773](https://github.com/excalidraw/excalidraw/pull/3773)
828
+ - Points not being normalized on single-elem resize [#5581](https://github.com/excalidraw/excalidraw/pull/5581)
814
829
 
815
- - Show active file name when saving to current file [#3733](https://github.com/excalidraw/excalidraw/pull/3733)
830
+ - Deselect linear element when clicked inside bounding box outside editor [#5579](https://github.com/excalidraw/excalidraw/pull/5579)
816
831
 
817
- - Add hint around text editing [#3708](https://github.com/excalidraw/excalidraw/pull/3708)
832
+ - Resize multiple elements from center [#5560](https://github.com/excalidraw/excalidraw/pull/5560)
818
833
 
819
- - Change library icon to be more clear [#3583](https://github.com/excalidraw/excalidraw/pull/3583)
834
+ - Call static methods via class instead of instance in linearElementEditor [#5561](https://github.com/excalidraw/excalidraw/pull/5561)
820
835
 
821
- - Pass current `theme` when installing libraries [#3701](https://github.com/excalidraw/excalidraw/pull/3701)
836
+ - Show bounding box for 3 or more linear point elements [#5554](https://github.com/excalidraw/excalidraw/pull/5554)
822
837
 
823
- - Update virgil font [#3692](https://github.com/excalidraw/excalidraw/pull/3692)
838
+ - Cleanup the condition for dragging elements [#5555](https://github.com/excalidraw/excalidraw/pull/5555)
824
839
 
825
- - Support exporting json to excalidraw plus [#3678](https://github.com/excalidraw/excalidraw/pull/3678)
840
+ - Shareable links being merged with current scene data [#5547](https://github.com/excalidraw/excalidraw/pull/5547)
826
841
 
827
- - Save exportScale in AppState [#3580](https://github.com/excalidraw/excalidraw/pull/3580)
842
+ - Scene lookup failing when looking up by id [#5542](https://github.com/excalidraw/excalidraw/pull/5542)
828
843
 
829
- - Add shortcuts for stroke and background color picker [#3318](https://github.com/excalidraw/excalidraw/pull/3318)
844
+ - Remove rounding to fix jitter when shift-editing [#5543](https://github.com/excalidraw/excalidraw/pull/5543)
830
845
 
831
- - Exporting redesign [#3613](https://github.com/excalidraw/excalidraw/pull/3613)
846
+ - Line deselected when shift-dragging point outside editor [#5540](https://github.com/excalidraw/excalidraw/pull/5540)
832
847
 
833
- - Auto-position tooltip and support overflowing container [#3631](https://github.com/excalidraw/excalidraw/pull/3631)
848
+ - Flip linear elements after redesign [#5538](https://github.com/excalidraw/excalidraw/pull/5538)
834
849
 
835
- - Auto release @excalidraw/excalidraw-next on every change [#3614](https://github.com/excalidraw/excalidraw/pull/3614)
850
+ - Disable locking aspect ratio for box-selection [#5525](https://github.com/excalidraw/excalidraw/pull/5525)
836
851
 
837
- - Allow inner-drag-selecting with cmd/ctrl [#3603](https://github.com/excalidraw/excalidraw/pull/3603)
852
+ - Add `title` attribute to the modal close button [#5521](https://github.com/excalidraw/excalidraw/pull/5521)
838
853
 
839
- ### Fixes
854
+ - Context menu positioning when component has offsets [#5520](https://github.com/excalidraw/excalidraw/pull/5520)
855
+
856
+ - Resolve paths in prebuild.js script [#5498](https://github.com/excalidraw/excalidraw/pull/5498)
857
+
858
+ - Use flushSync when moving line editor since we need to read previous value after setting state [#5508](https://github.com/excalidraw/excalidraw/pull/5508)
840
859
 
841
- - view mode cursor adjustments [#3809](https://github.com/excalidraw/excalidraw/pull/3809).
860
+ - UseLayout effect cleanup in dev mode for charts [#5505](https://github.com/excalidraw/excalidraw/pull/5505)
842
861
 
843
- - Pass next release to updatePackageVersion & replace ## unreleased with new version [#3806](https://github.com/excalidraw/excalidraw/pull/3806)
862
+ - Revert browser toast for high/low zoom [#5495](https://github.com/excalidraw/excalidraw/pull/5495)
844
863
 
845
- - Include deleted elements when passing to restore [#3802](https://github.com/excalidraw/excalidraw/pull/3802)
864
+ - Fixing push to DockerHub [#5468](https://github.com/excalidraw/excalidraw/pull/5468)
846
865
 
847
- - Import React before using jsx [#3804](https://github.com/excalidraw/excalidraw/pull/3804)
866
+ - Incorrectly rendering freedraw elements [#5481](https://github.com/excalidraw/excalidraw/pull/5481)
848
867
 
849
- - Ensure `s` and `g` shortcuts work on no selection [#3800](https://github.com/excalidraw/excalidraw/pull/3800)
868
+ - Generate types when building example [#5480](https://github.com/excalidraw/excalidraw/pull/5480)
850
869
 
851
- - Keep binding for attached arrows after changing text [#3754](https://github.com/excalidraw/excalidraw/pull/3754)
870
+ - Use React.FC as react-dom is not able to infer types of Modal [#5479](https://github.com/excalidraw/excalidraw/pull/5479)
852
871
 
853
- - Deselect elements on viewMode toggle [#3741](https://github.com/excalidraw/excalidraw/pull/3741)
872
+ - Missing translation for "Scale" to Export Dialog [#5456](https://github.com/excalidraw/excalidraw/pull/5456)
854
873
 
855
- - Allow pointer events for disable zen mode button [#3743](https://github.com/excalidraw/excalidraw/pull/3743)
874
+ - Add display name for Excalidraw component so it doesn't show as anonymous [#5464](https://github.com/excalidraw/excalidraw/pull/5464)
856
875
 
857
- - Use rgba instead of shorthand alpha [#3688](https://github.com/excalidraw/excalidraw/pull/3688)
876
+ - Account for safe area for floating buttons on mobile [#5420](https://github.com/excalidraw/excalidraw/pull/5420)
858
877
 
859
- - Color pickers not opening on mobile [#3676](https://github.com/excalidraw/excalidraw/pull/3676)
878
+ - Attribute warnings in comment svg example [#5465](https://github.com/excalidraw/excalidraw/pull/5465)
860
879
 
861
- - On contextMenu, use selected element regardless of z-index [#3668](https://github.com/excalidraw/excalidraw/pull/3668)
880
+ - Check for ctrl key when wheel event triggered to only disable zooming [#5459](https://github.com/excalidraw/excalidraw/pull/5459)
862
881
 
863
- - SelectedGroupIds not being stored in history [#3630](https://github.com/excalidraw/excalidraw/pull/3630)
882
+ - Disable render throttling by default & during resize [#5451](https://github.com/excalidraw/excalidraw/pull/5451)
864
883
 
865
- - Overscroll on touch devices [#3663](https://github.com/excalidraw/excalidraw/pull/3663)
884
+ - Attach wheel event to exscalidraw container only [#5443](https://github.com/excalidraw/excalidraw/pull/5443)
866
885
 
867
- - Small UI issues around image export dialog [#3642](https://github.com/excalidraw/excalidraw/pull/3642)
886
+ - Show toast when browser zoom is not 100% [#5304](https://github.com/excalidraw/excalidraw/pull/5304)
868
887
 
869
- - Normalize linear element points on restore [#3633](https://github.com/excalidraw/excalidraw/pull/3633)
888
+ - Prevent browser zoom inside Excalidraw [#5426](https://github.com/excalidraw/excalidraw/pull/5426)
870
889
 
871
- - Disable pointer-events on footer-center container [#3629](https://github.com/excalidraw/excalidraw/pull/3629)
890
+ - Typo in changelog [#5425](https://github.com/excalidraw/excalidraw/pull/5425)
872
891
 
873
892
  ### Refactor
874
893
 
875
- - Delete React SyntheticEvent persist [#3700](https://github.com/excalidraw/excalidraw/pull/3700)
894
+ - Create a util to compute container dimensions for bound text container [#5708](https://github.com/excalidraw/excalidraw/pull/5708)
876
895
 
877
- - Code clean up [#3681](https://github.com/excalidraw/excalidraw/pull/3681)
896
+ - Reuse common ui dialogs and message for mobile and LayerUI [#5611](https://github.com/excalidraw/excalidraw/pull/5611)
878
897
 
879
- ### Performance
898
+ - Stats component [#5610](https://github.com/excalidraw/excalidraw/pull/5610)
880
899
 
881
- - Improve arrow head sizing [#3480](https://github.com/excalidraw/excalidraw/pull/3480)
900
+ - Move footer to its own component [#5609](https://github.com/excalidraw/excalidraw/pull/5609)
882
901
 
883
- ### Build
902
+ - Remove unused attribute hasHitElementInside from pointerDownState [#5591](https://github.com/excalidraw/excalidraw/pull/5591)
903
+
904
+ - Cleanup renderScene [#5573](https://github.com/excalidraw/excalidraw/pull/5573)
905
+
906
+ - Rename docs to dev-docs [#5487](https://github.com/excalidraw/excalidraw/pull/5487)
884
907
 
885
- - Add release script to update relevant files and commit for next release [#3805](https://github.com/excalidraw/excalidraw/pull/3805)
908
+ - Remove unnecessary if condition for linear element onKeyDown [#5486](https://github.com/excalidraw/excalidraw/pull/5486)
886
909
 
887
- - Add script to update changelog before a stable release [#3784](https://github.com/excalidraw/excalidraw/pull/3784)
910
+ - Improve typing & check [#5415](https://github.com/excalidraw/excalidraw/pull/5415)
888
911
 
889
- - Add script to update readme before stable release [#3781](https://github.com/excalidraw/excalidraw/pull/3781)
912
+ - Don't pass zenModeEnable, viewModeEnabled and toggleZenMode props to LayerUI [#5444](https://github.com/excalidraw/excalidraw/pull/5444)
913
+
914
+ ### Build
915
+
916
+ - Add missing dependencies: pica, lodash [#5656](https://github.com/excalidraw/excalidraw/pull/5656)
917
+
918
+ - Move dotenv to dev deps [#5472](https://github.com/excalidraw/excalidraw/pull/5472)
890
919
 
891
920
  ---
892
921
 
922
+ ## 0.12.0 (2022-07-07)
923
+
924
+ Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.12.0) )
925
+
926
+ **_This section lists the updates made to the excalidraw library and will not affect the integration._**
927
+
928
+ ## 0.11.0 (2022-02-17)
929
+
930
+ Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.11.0)
931
+
932
+ ## 0.10.0 (2021-10-13)
933
+
934
+ Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.10.0)
935
+
936
+ ## 0.9.0 (2021-07-10)
937
+
938
+ Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.9.0)
939
+
893
940
  ## 0.8.0 (2021-05-15)
894
941
 
895
942
  ## Excalidraw API