@dwelle/excalidraw 0.4.0-c954a9b → 0.4.0-ce7d72c
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.
- package/CHANGELOG.md +348 -527
- package/README.md +18 -1362
- package/dist/excalidraw-assets/Assistant-Bold.woff2 +0 -0
- package/dist/excalidraw-assets/Assistant-Medium.woff2 +0 -0
- package/dist/excalidraw-assets/Assistant-Regular.woff2 +0 -0
- package/dist/excalidraw-assets/Assistant-SemiBold.woff2 +0 -0
- package/dist/excalidraw-assets/vendor-d415b28e9024dee4bb1b.js +2 -0
- package/dist/excalidraw-assets-dev/Assistant-Bold.woff2 +0 -0
- package/dist/excalidraw-assets-dev/Assistant-Medium.woff2 +0 -0
- package/dist/excalidraw-assets-dev/Assistant-Regular.woff2 +0 -0
- package/dist/excalidraw-assets-dev/Assistant-SemiBold.woff2 +0 -0
- package/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.js → vendor-a14cd58fa2db417e42b2.js} +7 -7
- package/dist/excalidraw.development.js +3148 -1361
- package/dist/excalidraw.production.min.js +1 -1
- package/dist/excalidraw.production.min.js.LICENSE.txt +34 -6
- package/package.json +9 -4
- package/types/actions/actionAddToLibrary.d.ts +118 -55
- package/types/actions/actionAlign.d.ts +25 -20
- package/types/actions/actionBoundText.d.ts +181 -23
- package/types/actions/actionCanvas.d.ts +728 -172
- package/types/actions/actionClipboard.d.ts +222 -94
- package/types/actions/actionDeleteSelected.d.ts +126 -58
- package/types/actions/actionDistribute.d.ts +7 -8
- package/types/actions/actionDuplicateSelection.d.ts +1 -2
- package/types/actions/actionElementLock.d.ts +271 -0
- package/types/actions/actionExport.d.ts +379 -189
- package/types/actions/actionFinalize.d.ts +77 -39
- package/types/actions/actionFlip.d.ts +4 -7
- package/types/actions/actionFrame.d.ts +423 -0
- package/types/actions/actionGroup.d.ts +6 -7
- package/types/actions/actionHistory.d.ts +1 -1
- package/types/actions/{actionToggleLock.d.ts → actionLinearEditor.d.ts} +52 -32
- package/types/actions/actionMenu.d.ts +123 -61
- package/types/actions/actionNavigate.d.ts +2 -1
- package/types/actions/actionProperties.d.ts +525 -253
- package/types/actions/actionSelectAll.d.ts +0 -1
- package/types/actions/actionStyles.d.ts +40 -20
- package/types/actions/actionToggleGridMode.d.ts +42 -20
- package/types/actions/actionToggleStats.d.ts +41 -20
- package/types/actions/actionToggleViewMode.d.ts +42 -20
- package/types/actions/actionToggleZenMode.d.ts +42 -20
- package/types/actions/actionZindex.d.ts +4 -4
- package/types/actions/index.d.ts +2 -1
- package/types/actions/manager.d.ts +2 -1
- package/types/actions/shortcuts.d.ts +2 -1
- package/types/actions/types.d.ts +15 -10
- package/types/appState.d.ts +30 -25
- package/types/charts.d.ts +2 -2
- package/types/clients.d.ts +5 -6
- package/types/clipboard.d.ts +8 -3
- package/types/colors.d.ts +60 -5
- package/types/components/Actions.d.ts +8 -7
- package/types/components/ActiveConfirmDialog.d.ts +4 -0
- package/types/components/App.d.ts +85 -23
- package/types/components/Avatar.d.ts +2 -3
- package/types/components/BraveMeasureTextError.d.ts +2 -0
- package/types/components/Button.d.ts +16 -0
- package/types/components/ButtonIconSelect.d.ts +11 -3
- package/types/components/Card.d.ts +0 -1
- package/types/components/ColorPicker/ColorInput.d.ts +7 -0
- package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
- package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
- package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
- package/types/components/ColorPicker/Picker.d.ts +18 -0
- package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
- package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
- package/types/components/ColorPicker/ShadeList.d.ts +8 -0
- package/types/components/ColorPicker/TopPicks.d.ts +9 -0
- package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
- package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
- package/types/components/ContextMenu.d.ts +9 -22
- package/types/components/DefaultSidebar.d.ts +29 -0
- package/types/components/Dialog.d.ts +3 -4
- package/types/components/DialogActionButton.d.ts +10 -0
- package/types/components/ErrorDialog.d.ts +3 -2
- package/types/components/EyeDropper.d.ts +17 -0
- package/types/components/FilledButton.d.ts +17 -0
- package/types/components/FixedSideContainer.d.ts +1 -1
- package/types/components/HandButton.d.ts +10 -0
- package/types/components/HelpButton.d.ts +7 -0
- package/types/components/HintViewer.d.ts +5 -5
- package/types/components/HomeButton.d.ts +5 -0
- package/types/components/ImageExportDialog.d.ts +8 -11
- package/types/components/InitializeApp.d.ts +2 -0
- package/types/components/Island.d.ts +1 -1
- package/types/components/JSONExportDialog.d.ts +7 -5
- package/types/components/LayerUI.d.ts +9 -14
- package/types/components/LibraryMenu.d.ts +15 -7
- package/types/components/LibraryMenuBrowseButton.d.ts +7 -0
- package/types/components/LibraryMenuControlButtons.d.ts +9 -0
- package/types/components/LibraryMenuHeaderContent.d.ts +17 -0
- package/types/components/LibraryMenuItems.d.ts +4 -14
- package/types/components/LibraryMenuSection.d.ts +22 -0
- package/types/components/LibraryUnit.d.ts +7 -5
- package/types/components/LoadingMessage.d.ts +2 -1
- package/types/components/LockButton.d.ts +1 -2
- package/types/components/MobileMenu.d.ts +11 -12
- package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
- package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
- package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
- package/types/components/PasteChartDialog.d.ts +4 -5
- package/types/components/PenModeButton.d.ts +1 -1
- package/types/components/Popover.d.ts +1 -1
- package/types/components/ProjectName.d.ts +2 -1
- package/types/components/PublishLibrary.d.ts +2 -2
- package/types/components/RadioGroup.d.ts +12 -0
- package/types/components/Section.d.ts +1 -1
- package/types/components/Sidebar/Sidebar.d.ts +76 -0
- package/types/components/Sidebar/SidebarHeader.d.ts +7 -0
- package/types/components/Sidebar/SidebarTab.d.ts +8 -0
- package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
- package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
- package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
- package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
- package/types/components/Sidebar/common.d.ts +33 -0
- package/types/components/Spinner.d.ts +2 -1
- package/types/components/Stack.d.ts +4 -3
- package/types/components/Stats.d.ts +3 -3
- package/types/components/Switch.d.ts +9 -0
- package/types/components/ToolButton.d.ts +6 -5
- package/types/components/Tooltip.d.ts +1 -1
- package/types/components/Trans.d.ts +9 -0
- package/types/components/UserList.d.ts +0 -3
- package/types/components/dropdownMenu/DropdownMenu.d.ts +67 -0
- package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
- package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
- package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -0
- package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
- package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
- package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -0
- package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
- package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
- package/types/components/dropdownMenu/common.d.ts +6 -0
- package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
- package/types/components/footer/Footer.d.ts +12 -0
- package/types/components/footer/FooterCenter.d.ts +8 -0
- package/types/components/hoc/withInternalFallback.d.ts +4 -0
- package/types/components/icons.d.ts +95 -123
- package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -0
- package/types/components/main-menu/DefaultItems.d.ts +47 -0
- package/types/components/main-menu/MainMenu.d.ts +61 -0
- package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +57 -0
- package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
- package/types/components/welcome-screen/WelcomeScreen.d.ts +84 -0
- package/types/constants.d.ts +98 -23
- package/types/context/tunnels.d.ts +19 -0
- package/types/context/ui-appState.d.ts +4 -0
- package/types/data/blob.d.ts +4 -3
- package/types/data/encode.d.ts +1 -1
- package/types/data/filesystem.d.ts +2 -1
- package/types/data/index.d.ts +1 -1
- package/types/data/library.d.ts +3 -45
- package/types/data/restore.d.ts +10 -4
- package/types/data/types.d.ts +14 -1
- package/types/data/url.d.ts +7 -0
- package/types/element/Hyperlink.d.ts +52 -28
- package/types/element/binding.d.ts +3 -3
- package/types/element/bounds.d.ts +34 -8
- package/types/element/collision.d.ts +7 -7
- package/types/element/dragElements.d.ts +2 -1
- package/types/element/embeddable.d.ts +153 -0
- package/types/element/image.d.ts +11 -1
- package/types/element/index.d.ts +4 -3
- package/types/element/linearElementEditor.d.ts +90 -31
- package/types/element/mutateElement.d.ts +2 -1
- package/types/element/newElement.d.ts +52 -10
- package/types/element/resizeElements.d.ts +1 -1
- package/types/element/showSelectedShapeActions.d.ts +2 -2
- package/types/element/sortElements.d.ts +2 -0
- package/types/element/textElement.d.ts +62 -8
- package/types/element/textWysiwyg.d.ts +6 -1
- package/types/element/transformHandles.d.ts +14 -8
- package/types/element/typeChecks.d.ts +14 -2
- package/types/element/types.d.ts +66 -35
- package/types/emitter.d.ts +1 -1
- package/types/errors.d.ts +1 -1
- package/types/frame.d.ts +40 -0
- package/types/ga.d.ts +5 -5
- package/types/groups.d.ts +7 -3
- package/types/history.d.ts +3 -3
- package/types/hooks/useCreatePortalContainer.d.ts +4 -0
- package/types/hooks/useLibraryItemSvg.d.ts +11 -0
- package/types/hooks/useOutsideClick.d.ts +19 -0
- package/types/hooks/useScrollPosition.d.ts +1 -0
- package/types/hooks/useTransition.d.ts +2 -0
- package/types/i18n.d.ts +11 -2
- package/types/jotai.d.ts +20 -108
- package/types/keys.d.ts +19 -7
- package/types/math.d.ts +11 -1
- package/types/packages/excalidraw/example/App.d.ts +9 -2
- package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
- package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
- package/types/packages/excalidraw/example/initialData.d.ts +6 -0
- package/types/packages/excalidraw/example/sidebar/{Sidebar.d.ts → ExampleSidebar.d.ts} +1 -1
- package/types/packages/excalidraw/index.d.ts +19 -3
- package/types/packages/excalidraw/webpack.dev.config.d.ts +5 -2
- package/types/packages/excalidraw/webpack.prod.config.d.ts +3 -0
- package/types/packages/utils.d.ts +28 -22
- package/types/renderer/renderElement.d.ts +9 -6
- package/types/renderer/renderScene.d.ts +15 -7
- package/types/renderer/roundRect.d.ts +1 -1
- package/types/scene/Fonts.d.ts +21 -0
- package/types/scene/Scene.d.ts +40 -5
- package/types/scene/comparisons.d.ts +2 -3
- package/types/scene/export.d.ts +158 -10
- package/types/scene/index.d.ts +1 -1
- package/types/scene/selection.d.ts +25 -5
- package/types/scene/types.d.ts +14 -5
- package/types/shapes.d.ts +27 -3
- package/types/types.d.ts +156 -78
- package/types/utility-types.d.ts +24 -0
- package/types/utils.d.ts +67 -9
- package/types/zindex.d.ts +4 -4
- package/dist/excalidraw-assets/vendor-52b1f3361986b6c6a4fe.js +0 -2
- package/types/components/ActiveFile.d.ts +0 -7
- package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +0 -9
- package/types/components/ClearCanvas.d.ts +0 -4
- package/types/components/CollabButton.d.ts +0 -7
- package/types/components/ColorPicker.d.ts +0 -14
- package/types/components/Footer.d.ts +0 -9
- package/types/components/HelpIcon.d.ts +0 -8
- package/types/components/LibraryButton.d.ts +0 -7
- package/types/components/SidebarLockButton.d.ts +0 -8
- package/types/components/SingleLibraryItem.d.ts +0 -10
- /package/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
- /package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.d.ts → vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
- /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -13,105 +13,98 @@ Please add the latest change on the top under the correct section.
|
|
|
13
13
|
|
|
14
14
|
## Unreleased
|
|
15
15
|
|
|
16
|
-
###
|
|
17
|
-
|
|
18
|
-
#### Features
|
|
16
|
+
### renderEmbeddable
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
```tsx
|
|
19
|
+
(element: NonDeletedExcalidrawElement, radius: number, appState: UIAppState) => JSX.Element | null;`
|
|
20
|
+
```
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
The renderEmbeddable function allows you to customize the rendering of a JSX component instead of using the default `<iframe>`. By setting props.renderEmbeddable, you can provide a custom implementation for rendering the element.
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
#### Parameters:
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
- element (NonDeletedExcalidrawElement): The element to be rendered.
|
|
27
|
+
- radius (number): The calculated border radius in pixels.
|
|
28
|
+
- appState (UIAppState): The current state of the UI.
|
|
27
29
|
|
|
28
|
-
|
|
30
|
+
#### Return value:
|
|
29
31
|
|
|
30
|
-
|
|
32
|
+
JSX.Element | null: The JSX component representing the custom rendering, or null if the default `<iframe>` should be rendered.
|
|
31
33
|
|
|
32
|
-
|
|
34
|
+
### Features
|
|
33
35
|
|
|
34
|
-
-
|
|
36
|
+
- 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)
|
|
37
|
+
- 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).
|
|
38
|
+
- Properly sanitize element `link` urls. [#6728](https://github.com/excalidraw/excalidraw/pull/6728).
|
|
39
|
+
- 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)
|
|
40
|
+
- Exposed `DefaultSidebar` component to allow modifying the default sidebar, such as adding custom tabs to it. [#6213](https://github.com/excalidraw/excalidraw/pull/6213)
|
|
35
41
|
|
|
36
|
-
|
|
42
|
+
#### BREAKING CHANGES
|
|
37
43
|
|
|
38
|
-
-
|
|
44
|
+
- `props.renderSidebar` is removed in favor of rendering as `children`.
|
|
45
|
+
- `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.
|
|
46
|
+
- Sidebar `props.dockable` is removed. To indicate dockability, supply `props.onDock()` alongside setting `props.docked`.
|
|
47
|
+
- `Sidebar.Header` is no longer rendered by default. You need to render it yourself.
|
|
48
|
+
- `props.onClose` replaced with `props.onStateChange`.
|
|
49
|
+
- `restore()`/`restoreAppState()` now retains `appState.openSidebar` regardless of docked state.
|
|
39
50
|
|
|
40
|
-
|
|
51
|
+
## 0.15.2 (2023-04-20)
|
|
41
52
|
|
|
42
|
-
|
|
53
|
+
### Docs
|
|
43
54
|
|
|
44
|
-
|
|
55
|
+
- Fix docs link in readme [#6486](https://github.com/excalidraw/excalidraw/pull/6486)
|
|
45
56
|
|
|
46
|
-
|
|
57
|
+
## Excalidraw Library
|
|
47
58
|
|
|
48
|
-
|
|
59
|
+
**_This section lists the updates made to the excalidraw library and will not affect the integration._**
|
|
49
60
|
|
|
50
|
-
|
|
61
|
+
### Fixes
|
|
51
62
|
|
|
52
|
-
|
|
63
|
+
- Rotate the text element when binding to a rotated container [#6477](https://github.com/excalidraw/excalidraw/pull/6477)
|
|
53
64
|
|
|
54
|
-
|
|
65
|
+
- Support breaking words containing hyphen - [#6014](https://github.com/excalidraw/excalidraw/pull/6014)
|
|
55
66
|
|
|
56
|
-
-
|
|
67
|
+
- Incorrect background fill button active state [#6491](https://github.com/excalidraw/excalidraw/pull/6491)
|
|
57
68
|
|
|
58
|
-
|
|
59
|
-
- Add [`onScrollChange`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onScrollChange) callback which gets triggered when scrolling the canvas.
|
|
60
|
-
- 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.
|
|
69
|
+
---
|
|
61
70
|
|
|
62
|
-
|
|
63
|
-
- 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).
|
|
64
|
-
- 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).
|
|
65
|
-
- 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).
|
|
66
|
-
- Expose util [`mergeLibraryItems`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#mergeLibraryItems) [#5101](https://github.com/excalidraw/excalidraw/pull/5101).
|
|
67
|
-
- 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).
|
|
68
|
-
- 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).
|
|
69
|
-
- The `exportToBlob` utility now supports the `exportEmbedScene` option when generating a png image [#5047](https://github.com/excalidraw/excalidraw/pull/5047).
|
|
70
|
-
- Exported [`restoreLibraryItems`](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#restoreLibraryItems) API [#4995](https://github.com/excalidraw/excalidraw/pull/4995).
|
|
71
|
+
## 0.15.1 (2023-04-18)
|
|
71
72
|
|
|
72
|
-
|
|
73
|
+
### Docs
|
|
73
74
|
|
|
74
|
-
-
|
|
75
|
+
- Add the readme back to the package which was mistakenly removed [#6484](https://github.com/excalidraw/excalidraw/pull/6484)
|
|
75
76
|
|
|
76
|
-
|
|
77
|
+
## Excalidraw Library
|
|
77
78
|
|
|
78
|
-
|
|
79
|
-
- Library menu now properly rerenders if open when library is updated using `updateScene({ libraryItems })` [#4995](https://github.com/excalidraw/excalidraw/pull/4995).
|
|
79
|
+
**_This section lists the updates made to the excalidraw library and will not affect the integration._**
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
---
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
- 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.
|
|
83
|
+
## 0.15.0 (2023-04-18)
|
|
85
84
|
|
|
86
|
-
|
|
85
|
+
### Features
|
|
87
86
|
|
|
88
|
-
|
|
87
|
+
- [`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)
|
|
89
88
|
|
|
90
|
-
-
|
|
89
|
+
- 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)
|
|
91
90
|
|
|
92
|
-
|
|
91
|
+
- [`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
|
|
93
92
|
|
|
94
|
-
|
|
93
|
+
```js
|
|
94
|
+
{ refreshDimensions?: boolean, repairBindings?: boolean }
|
|
95
|
+
```
|
|
95
96
|
|
|
96
|
-
|
|
97
|
+
The same `opts` param has been added to [`restore`](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api/utils/restore#restore) API as well.
|
|
97
98
|
|
|
98
|
-
|
|
99
|
+
For more details refer to the [docs](https://docs.excalidraw.com)
|
|
99
100
|
|
|
100
101
|
#### BREAKING CHANGE
|
|
101
102
|
|
|
102
|
-
|
|
103
|
+
- 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`
|
|
103
104
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
```js
|
|
107
|
-
import { Excalidraw } from "@excalidraw/excalidraw";
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
In Browser :point_down:
|
|
105
|
+
### Fixes
|
|
111
106
|
|
|
112
|
-
|
|
113
|
-
React.createElement(ExcalidrawLib.Excalidraw, opts);
|
|
114
|
-
```
|
|
107
|
+
- Exporting labelled arrows via export utils [#6443](https://github.com/excalidraw/excalidraw/pull/6443)
|
|
115
108
|
|
|
116
109
|
## Excalidraw Library
|
|
117
110
|
|
|
@@ -119,315 +112,158 @@ React.createElement(ExcalidrawLib.Excalidraw, opts);
|
|
|
119
112
|
|
|
120
113
|
### Features
|
|
121
114
|
|
|
122
|
-
-
|
|
123
|
-
|
|
124
|
-
- Make toast closable and allow custom duration [#5308](https://github.com/excalidraw/excalidraw/pull/5308)
|
|
125
|
-
|
|
126
|
-
- Collab component state handling rewrite & fixes [#5046](https://github.com/excalidraw/excalidraw/pull/5046)
|
|
127
|
-
|
|
128
|
-
- Support debugging PWA in dev [#4853](https://github.com/excalidraw/excalidraw/pull/4853)
|
|
129
|
-
|
|
130
|
-
- Redirect vscode.excalidraw.com to vscode marketplace [#5285](https://github.com/excalidraw/excalidraw/pull/5285)
|
|
131
|
-
|
|
132
|
-
- Go-to-excalidrawplus button [#5202](https://github.com/excalidraw/excalidraw/pull/5202)
|
|
133
|
-
|
|
134
|
-
- Autoredirect to Excalidraw+ if special cookie is present [#5183](https://github.com/excalidraw/excalidraw/pull/5183)
|
|
135
|
-
|
|
136
|
-
- Support resubmitting published library items [#5174](https://github.com/excalidraw/excalidraw/pull/5174)
|
|
137
|
-
|
|
138
|
-
- Support adding multiple library items on canvas [#5116](https://github.com/excalidraw/excalidraw/pull/5116)
|
|
139
|
-
|
|
140
|
-
- Support customType in activeTool [#5144](https://github.com/excalidraw/excalidraw/pull/5144)
|
|
141
|
-
|
|
142
|
-
- Stop event propagation when key handled [#5091](https://github.com/excalidraw/excalidraw/pull/5091)
|
|
143
|
-
|
|
144
|
-
- Rewrite library state management & related refactor [#5067](https://github.com/excalidraw/excalidraw/pull/5067)
|
|
145
|
-
|
|
146
|
-
- Delay initial loading message & tweak design [#5049](https://github.com/excalidraw/excalidraw/pull/5049)
|
|
147
|
-
|
|
148
|
-
- Reconcile when saving to firebase [#4991](https://github.com/excalidraw/excalidraw/pull/4991)
|
|
149
|
-
|
|
150
|
-
- Hide trash button during collaboration [#5037](https://github.com/excalidraw/excalidraw/pull/5037)
|
|
151
|
-
|
|
152
|
-
- Refactor local persistence & fix race condition on SW reload [#5032](https://github.com/excalidraw/excalidraw/pull/5032)
|
|
153
|
-
|
|
154
|
-
- Element locking [#4964](https://github.com/excalidraw/excalidraw/pull/4964)
|
|
115
|
+
- Constrain export dialog preview size [#6475](https://github.com/excalidraw/excalidraw/pull/6475)
|
|
155
116
|
|
|
156
|
-
-
|
|
117
|
+
- Zigzag fill easter egg [#6439](https://github.com/excalidraw/excalidraw/pull/6439)
|
|
157
118
|
|
|
158
|
-
-
|
|
119
|
+
- Add container to multiple text elements [#6428](https://github.com/excalidraw/excalidraw/pull/6428)
|
|
159
120
|
|
|
160
|
-
-
|
|
121
|
+
- Starting migration from GA to Matomo for better privacy [#6398](https://github.com/excalidraw/excalidraw/pull/6398)
|
|
161
122
|
|
|
162
|
-
-
|
|
123
|
+
- Add line height attribute to text element [#6360](https://github.com/excalidraw/excalidraw/pull/6360)
|
|
163
124
|
|
|
164
|
-
-
|
|
125
|
+
- Add thai lang support [#6314](https://github.com/excalidraw/excalidraw/pull/6314)
|
|
165
126
|
|
|
166
|
-
-
|
|
127
|
+
- Create bound container from text [#6301](https://github.com/excalidraw/excalidraw/pull/6301)
|
|
167
128
|
|
|
168
|
-
-
|
|
129
|
+
- Improve text measurements in bound containers [#6187](https://github.com/excalidraw/excalidraw/pull/6187)
|
|
169
130
|
|
|
170
|
-
-
|
|
131
|
+
- Bind text to container if double clicked on filled shape or stroke [#6250](https://github.com/excalidraw/excalidraw/pull/6250)
|
|
171
132
|
|
|
172
|
-
-
|
|
133
|
+
- Make repair and refreshDimensions configurable in restoreElements [#6238](https://github.com/excalidraw/excalidraw/pull/6238)
|
|
173
134
|
|
|
174
|
-
-
|
|
135
|
+
- Show error message when not connected to internet while collabo… [#6165](https://github.com/excalidraw/excalidraw/pull/6165)
|
|
175
136
|
|
|
176
|
-
-
|
|
137
|
+
- Shortcut for clearCanvas confirmDialog [#6114](https://github.com/excalidraw/excalidraw/pull/6114)
|
|
177
138
|
|
|
178
|
-
-
|
|
179
|
-
|
|
180
|
-
- Support custom colors 🎉 [#4843](https://github.com/excalidraw/excalidraw/pull/4843)
|
|
181
|
-
|
|
182
|
-
- Support Links in Exported SVG [#4791](https://github.com/excalidraw/excalidraw/pull/4791)
|
|
183
|
-
|
|
184
|
-
- Scale font size when bound text containers resized with shift pressed [#4828](https://github.com/excalidraw/excalidraw/pull/4828)
|
|
139
|
+
- 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>
|
|
185
140
|
|
|
186
141
|
### Fixes
|
|
187
142
|
|
|
188
|
-
-
|
|
189
|
-
|
|
190
|
-
- Action name for autorelease [#5411](https://github.com/excalidraw/excalidraw/pull/5411)
|
|
191
|
-
|
|
192
|
-
- Typecast file to fix the build [#5410](https://github.com/excalidraw/excalidraw/pull/5410)
|
|
193
|
-
|
|
194
|
-
- File handle not persisted when importing excalidraw files [#5372](https://github.com/excalidraw/excalidraw/pull/5372)
|
|
195
|
-
|
|
196
|
-
- Library not scrollable when no published items installed [#5352](https://github.com/excalidraw/excalidraw/pull/5352)
|
|
197
|
-
|
|
198
|
-
- Focus traps inside popovers [#5317](https://github.com/excalidraw/excalidraw/pull/5317)
|
|
199
|
-
|
|
200
|
-
- Unable to use cmd/ctrl-delete/backspace in inputs [#5348](https://github.com/excalidraw/excalidraw/pull/5348)
|
|
201
|
-
|
|
202
|
-
- Delay loading until language imported [#5344](https://github.com/excalidraw/excalidraw/pull/5344)
|
|
203
|
-
|
|
204
|
-
- Command to trigger release [#5347](https://github.com/excalidraw/excalidraw/pull/5347)
|
|
205
|
-
|
|
206
|
-
- Remove unnecessary options passed to language detector [#5336](https://github.com/excalidraw/excalidraw/pull/5336)
|
|
207
|
-
|
|
208
|
-
- Stale `appState.pendingImageElement` [#5322](https://github.com/excalidraw/excalidraw/pull/5322)
|
|
209
|
-
|
|
210
|
-
- Non-letter shortcuts being swallowed by color picker [#5316](https://github.com/excalidraw/excalidraw/pull/5316)
|
|
211
|
-
|
|
212
|
-
- Bind text to correct container when nested [#5307](https://github.com/excalidraw/excalidraw/pull/5307)
|
|
213
|
-
|
|
214
|
-
- Copy bound text style when copying element having bound text [#5305](https://github.com/excalidraw/excalidraw/pull/5305)
|
|
215
|
-
|
|
216
|
-
- Copy arrow head when using copy styles [#5303](https://github.com/excalidraw/excalidraw/pull/5303)
|
|
217
|
-
|
|
218
|
-
- Unsafely accessing draggingElement [#5216](https://github.com/excalidraw/excalidraw/pull/5216)
|
|
219
|
-
|
|
220
|
-
- Library load button does not work [#5205](https://github.com/excalidraw/excalidraw/pull/5205)
|
|
221
|
-
|
|
222
|
-
- Do not deselect when not zooming using touchscreen pinch [#5181](https://github.com/excalidraw/excalidraw/pull/5181)
|
|
223
|
-
|
|
224
|
-
- Wheel zoom normalization [#5165](https://github.com/excalidraw/excalidraw/pull/5165)
|
|
225
|
-
|
|
226
|
-
- Hide sidebar when `custom` tool active [#5179](https://github.com/excalidraw/excalidraw/pull/5179)
|
|
227
|
-
|
|
228
|
-
- Don't save deleted ExcalidrawElements to Firebase [#5108](https://github.com/excalidraw/excalidraw/pull/5108)
|
|
143
|
+
- Center align text when wrapped in container via context menu [#6480](https://github.com/excalidraw/excalidraw/pull/6480)
|
|
229
144
|
|
|
230
|
-
-
|
|
145
|
+
- Restore original container height when unbinding text which was binded via context menu [#6444](https://github.com/excalidraw/excalidraw/pull/6444)
|
|
231
146
|
|
|
232
|
-
-
|
|
147
|
+
- Mark more props as optional for element [#6448](https://github.com/excalidraw/excalidraw/pull/6448)
|
|
233
148
|
|
|
234
|
-
-
|
|
149
|
+
- Improperly cache-busting on canvas scale instead of zoom [#6473](https://github.com/excalidraw/excalidraw/pull/6473)
|
|
235
150
|
|
|
236
|
-
-
|
|
151
|
+
- Incorrectly duplicating items on paste/library insert [#6467](https://github.com/excalidraw/excalidraw/pull/6467)
|
|
237
152
|
|
|
238
|
-
-
|
|
153
|
+
- Library ids cross-contamination on multiple insert [#6466](https://github.com/excalidraw/excalidraw/pull/6466)
|
|
239
154
|
|
|
240
|
-
-
|
|
155
|
+
- Color picker keyboard handling not working [#6464](https://github.com/excalidraw/excalidraw/pull/6464)
|
|
241
156
|
|
|
242
|
-
-
|
|
157
|
+
- Abort freedraw line if second touch is detected [#6440](https://github.com/excalidraw/excalidraw/pull/6440)
|
|
243
158
|
|
|
244
|
-
-
|
|
159
|
+
- Utils leaking Scene state [#6461](https://github.com/excalidraw/excalidraw/pull/6461)
|
|
245
160
|
|
|
246
|
-
-
|
|
161
|
+
- Split "Edit selected shape" shortcut [#6457](https://github.com/excalidraw/excalidraw/pull/6457)
|
|
247
162
|
|
|
248
|
-
-
|
|
163
|
+
- Center align text when bind to container via context menu [#6451](https://github.com/excalidraw/excalidraw/pull/6451)
|
|
249
164
|
|
|
250
|
-
-
|
|
165
|
+
- Update coords when text unbinded from its container [#6445](https://github.com/excalidraw/excalidraw/pull/6445)
|
|
251
166
|
|
|
252
|
-
-
|
|
167
|
+
- Autoredirect to plus in prod only [#6446](https://github.com/excalidraw/excalidraw/pull/6446)
|
|
253
168
|
|
|
254
|
-
-
|
|
169
|
+
- Fixing popover overflow on small screen [#6433](https://github.com/excalidraw/excalidraw/pull/6433)
|
|
255
170
|
|
|
256
|
-
-
|
|
171
|
+
- Introduce baseline to fix the layout shift when switching to text editor [#6397](https://github.com/excalidraw/excalidraw/pull/6397)
|
|
257
172
|
|
|
258
|
-
-
|
|
173
|
+
- Don't refresh dimensions for deleted text elements [#6438](https://github.com/excalidraw/excalidraw/pull/6438)
|
|
259
174
|
|
|
260
|
-
-
|
|
175
|
+
- Element vanishes when zoomed in [#6417](https://github.com/excalidraw/excalidraw/pull/6417)
|
|
261
176
|
|
|
262
|
-
-
|
|
177
|
+
- Don't jump text to end when out of viewport in safari [#6416](https://github.com/excalidraw/excalidraw/pull/6416)
|
|
263
178
|
|
|
264
|
-
-
|
|
179
|
+
- GetDefaultLineHeight should return default font family line height for unknown font [#6399](https://github.com/excalidraw/excalidraw/pull/6399)
|
|
265
180
|
|
|
266
|
-
-
|
|
181
|
+
- Revert use `ideographic` textBaseline to improve layout shift when editing text" [#6400](https://github.com/excalidraw/excalidraw/pull/6400)
|
|
267
182
|
|
|
268
|
-
-
|
|
183
|
+
- Call stack size exceeded when paste large text [#6373](https://github.com/excalidraw/excalidraw/pull/6373) (#6396)
|
|
269
184
|
|
|
270
|
-
-
|
|
185
|
+
- Use `ideographic` textBaseline to improve layout shift when editing text [#6384](https://github.com/excalidraw/excalidraw/pull/6384)
|
|
271
186
|
|
|
272
|
-
-
|
|
187
|
+
- Chrome crashing when embedding scene on chrome arm [#6383](https://github.com/excalidraw/excalidraw/pull/6383)
|
|
273
188
|
|
|
274
|
-
-
|
|
189
|
+
- Division by zero in findFocusPointForEllipse leads to infinite loop in wrapText freezing Excalidraw [#6377](https://github.com/excalidraw/excalidraw/pull/6377)
|
|
275
190
|
|
|
276
|
-
-
|
|
191
|
+
- Containerizing text incorrectly updates arrow bindings [#6369](https://github.com/excalidraw/excalidraw/pull/6369)
|
|
277
192
|
|
|
278
|
-
-
|
|
193
|
+
- Ensure export preview is centered [#6337](https://github.com/excalidraw/excalidraw/pull/6337)
|
|
279
194
|
|
|
280
|
-
-
|
|
195
|
+
- Hide text align for labelled arrows [#6339](https://github.com/excalidraw/excalidraw/pull/6339)
|
|
281
196
|
|
|
282
|
-
-
|
|
197
|
+
- Refresh dimensions when elements loaded from shareable link and blob [#6333](https://github.com/excalidraw/excalidraw/pull/6333)
|
|
283
198
|
|
|
284
|
-
-
|
|
199
|
+
- Show error message when measureText API breaks in brave [#6336](https://github.com/excalidraw/excalidraw/pull/6336)
|
|
285
200
|
|
|
286
|
-
-
|
|
201
|
+
- Add an offset of 0.5px for text editor in containers [#6328](https://github.com/excalidraw/excalidraw/pull/6328)
|
|
287
202
|
|
|
288
|
-
-
|
|
203
|
+
- Move utility types out of `.d.ts` file to fix exported declaration files [#6315](https://github.com/excalidraw/excalidraw/pull/6315)
|
|
289
204
|
|
|
290
|
-
-
|
|
205
|
+
- More jotai scopes missing [#6313](https://github.com/excalidraw/excalidraw/pull/6313)
|
|
291
206
|
|
|
292
|
-
-
|
|
207
|
+
- Provide HelpButton title prop [#6209](https://github.com/excalidraw/excalidraw/pull/6209)
|
|
293
208
|
|
|
294
|
-
-
|
|
209
|
+
- Respect text align when wrapping in a container [#6310](https://github.com/excalidraw/excalidraw/pull/6310)
|
|
295
210
|
|
|
296
|
-
-
|
|
211
|
+
- Compute bounding box correctly for text element when multiple element resizing [#6307](https://github.com/excalidraw/excalidraw/pull/6307)
|
|
297
212
|
|
|
298
|
-
-
|
|
213
|
+
- Use jotai scope for editor-specific atoms [#6308](https://github.com/excalidraw/excalidraw/pull/6308)
|
|
299
214
|
|
|
300
|
-
-
|
|
215
|
+
- Consider arrow for bound text element [#6297](https://github.com/excalidraw/excalidraw/pull/6297)
|
|
301
216
|
|
|
302
|
-
-
|
|
217
|
+
- Text never goes beyond max width for unbound text elements [#6288](https://github.com/excalidraw/excalidraw/pull/6288)
|
|
303
218
|
|
|
304
|
-
-
|
|
219
|
+
- Svg text baseline [#6285](https://github.com/excalidraw/excalidraw/pull/6273)
|
|
305
220
|
|
|
306
|
-
-
|
|
221
|
+
- Compute container height from bound text correctly [#6273](https://github.com/excalidraw/excalidraw/pull/6273)
|
|
307
222
|
|
|
308
|
-
-
|
|
223
|
+
- Fit mobile toolbar and make scrollable [#6270](https://github.com/excalidraw/excalidraw/pull/6270)
|
|
309
224
|
|
|
310
|
-
-
|
|
225
|
+
- Indenting via `tab` clashing with IME compositor [#6258](https://github.com/excalidraw/excalidraw/pull/6258)
|
|
311
226
|
|
|
312
|
-
-
|
|
227
|
+
- Improve text wrapping inside rhombus and more fixes [#6265](https://github.com/excalidraw/excalidraw/pull/6265)
|
|
313
228
|
|
|
314
|
-
- Improve
|
|
229
|
+
- Improve text wrapping in ellipse and alignment [#6172](https://github.com/excalidraw/excalidraw/pull/6172)
|
|
315
230
|
|
|
316
|
-
-
|
|
231
|
+
- Don't allow blank space in collab name [#6211](https://github.com/excalidraw/excalidraw/pull/6211)
|
|
317
232
|
|
|
318
|
-
-
|
|
233
|
+
- Docker build architecture:linux/amd64 error occur on linux/arm64 instance [#6197](https://github.com/excalidraw/excalidraw/pull/6197)
|
|
319
234
|
|
|
320
|
-
-
|
|
235
|
+
- Sort bound text elements to fix text duplication z-index error [#5130](https://github.com/excalidraw/excalidraw/pull/5130)
|
|
321
236
|
|
|
322
|
-
-
|
|
237
|
+
- Hide welcome screen on mobile once user interacts [#6185](https://github.com/excalidraw/excalidraw/pull/6185)
|
|
323
238
|
|
|
324
|
-
-
|
|
325
|
-
|
|
326
|
-
- Restore cursor position after bound text container value updated [#4836](https://github.com/excalidraw/excalidraw/pull/4836)
|
|
327
|
-
|
|
328
|
-
- Support resizing multiple bound text containers [#4824](https://github.com/excalidraw/excalidraw/pull/4824)
|
|
329
|
-
|
|
330
|
-
- Also check overflowY: overlay in detectScroll [#4806](https://github.com/excalidraw/excalidraw/pull/4806)
|
|
331
|
-
|
|
332
|
-
- Stuck resizing when resizing bound text container very fast beyond threshold [#4804](https://github.com/excalidraw/excalidraw/pull/4804)
|
|
239
|
+
- Edit link in docs [#6182](https://github.com/excalidraw/excalidraw/pull/6182)
|
|
333
240
|
|
|
334
241
|
### Refactor
|
|
335
242
|
|
|
336
|
-
-
|
|
337
|
-
|
|
338
|
-
### Build
|
|
339
|
-
|
|
340
|
-
- Extract all i18n files into locales folder [#5419](https://github.com/excalidraw/excalidraw/pull/5419)
|
|
243
|
+
- Inline `SingleLibraryItem` into `PublishLibrary` [#6462](https://github.com/excalidraw/excalidraw/pull/6462)
|
|
341
244
|
|
|
342
|
-
-
|
|
245
|
+
- Make the example React app reusable without duplication [#6188](https://github.com/excalidraw/excalidraw/pull/6188)
|
|
343
246
|
|
|
344
|
-
|
|
247
|
+
### Performance
|
|
345
248
|
|
|
346
|
-
-
|
|
249
|
+
- Break early if the line width <= max width of the container [#6347](https://github.com/excalidraw/excalidraw/pull/6347)
|
|
347
250
|
|
|
348
|
-
|
|
251
|
+
### Build
|
|
349
252
|
|
|
350
|
-
-
|
|
253
|
+
- Move TS and types to devDependencies [#6346](https://github.com/excalidraw/excalidraw/pull/6346)
|
|
351
254
|
|
|
352
255
|
---
|
|
353
256
|
|
|
354
|
-
## 0.
|
|
355
|
-
|
|
356
|
-
## Excalidraw API
|
|
257
|
+
## 0.14.2 (2023-02-01)
|
|
357
258
|
|
|
358
259
|
### Features
|
|
359
260
|
|
|
360
|
-
-
|
|
361
|
-
-
|
|
362
|
-
|
|
363
|
-
- 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).
|
|
364
|
-
|
|
365
|
-
- [`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).
|
|
366
|
-
|
|
367
|
-
#### BREAKING CHANGE
|
|
368
|
-
|
|
369
|
-
Remove `getElementMap` util [#4306](https://github.com/excalidraw/excalidraw/pull/4306).
|
|
370
|
-
|
|
371
|
-
- 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):
|
|
372
|
-
|
|
373
|
-
- Add `maxWidthOrHeight?: number` attribute.
|
|
374
|
-
- `scale` returned from `getDimensions()` is now optional (default to `1`).
|
|
375
|
-
|
|
376
|
-
- Image support added for host [PR](https://github.com/excalidraw/excalidraw/pull/4011)
|
|
377
|
-
|
|
378
|
-
General notes:
|
|
379
|
-
|
|
380
|
-
- File data are encoded as DataURLs (base64) for portability reasons.
|
|
381
|
-
|
|
382
|
-
[ExcalidrawAPI](https://github.com/excalidraw/excalidraw/blob/master/src/packages/excalidraw/README.md#onLibraryChange):
|
|
383
|
-
|
|
384
|
-
- 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.
|
|
385
|
-
|
|
386
|
-
Excalidraw app props:
|
|
387
|
-
|
|
388
|
-
- added `generateIdForFile(file: File)` optional prop so you can generate your own ids for added files.
|
|
389
|
-
- `onChange(elements, appState, files)` prop callback is now passed `BinaryFiles` as third argument.
|
|
390
|
-
- `onPaste(data, event)` data prop should contain `data.files` (`BinaryFiles`) if the elements pasted are referencing new files.
|
|
391
|
-
- `initialData` object now supports additional `files` (`BinaryFiles`) attribute.
|
|
392
|
-
|
|
393
|
-
Other notes:
|
|
394
|
-
|
|
395
|
-
- `.excalidraw` files may now contain top-level `files` key in format of `Record<FileId, BinaryFileData>` when exporting any (image) elements.
|
|
396
|
-
- 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.
|
|
397
|
-
|
|
398
|
-
- 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).
|
|
399
|
-
|
|
400
|
-
- 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).
|
|
401
|
-
|
|
402
|
-
- Export `THEME` constant from the package so host can use this when passing the theme [#4055](https://github.com/excalidraw/excalidraw/pull/4055).
|
|
403
|
-
|
|
404
|
-
#### BREAKING CHANGE
|
|
405
|
-
|
|
406
|
-
The `Appearance` type is now removed and renamed to `Theme` so `Theme` type needs to be used.
|
|
261
|
+
- 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)
|
|
262
|
+
- `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)
|
|
407
263
|
|
|
408
264
|
### Fixes
|
|
409
265
|
|
|
410
|
-
-
|
|
411
|
-
- 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).
|
|
412
|
-
- 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).
|
|
413
|
-
|
|
414
|
-
### Build
|
|
415
|
-
|
|
416
|
-
- Release preview package [@excalidraw/excalidraw-preview](https://www.npmjs.com/package/@excalidraw/excalidraw-preview) when triggered via comment
|
|
417
|
-
|
|
418
|
-
```
|
|
419
|
-
@excalibot trigger release
|
|
420
|
-
```
|
|
421
|
-
|
|
422
|
-
[#4750](https://github.com/excalidraw/excalidraw/pull/4750).
|
|
423
|
-
|
|
424
|
-
- 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)
|
|
425
|
-
|
|
426
|
-
- 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).
|
|
427
|
-
|
|
428
|
-
- We're now compiling to `es2017` target. Notably, `async/await` is not compiled down to generators. [#4341](https://github.com/excalidraw/excalidraw/pull/4341).
|
|
429
|
-
|
|
430
|
-
---
|
|
266
|
+
- declare css variable for font in excalidraw so its available in host [#6160](https://github.com/excalidraw/excalidraw/pull/6160)
|
|
431
267
|
|
|
432
268
|
## Excalidraw Library
|
|
433
269
|
|
|
@@ -435,459 +271,444 @@ React.createElement(ExcalidrawLib.Excalidraw, opts);
|
|
|
435
271
|
|
|
436
272
|
### Features
|
|
437
273
|
|
|
438
|
-
-
|
|
274
|
+
- Add hand/panning tool [#6141](https://github.com/excalidraw/excalidraw/pull/6141)
|
|
439
275
|
|
|
440
|
-
-
|
|
276
|
+
- Show copy-as-png export button on firefox and show steps how to enable it [#6125](https://github.com/excalidraw/excalidraw/pull/6125)
|
|
441
277
|
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
- Make whole element clickable in view mode when it has hyperlink [#4735](https://github.com/excalidraw/excalidraw/pull/4735)
|
|
445
|
-
|
|
446
|
-
- Allow any precision when zooming [#4730](https://github.com/excalidraw/excalidraw/pull/4730)
|
|
447
|
-
|
|
448
|
-
- Throttle `pointermove` events per framerate [#4727](https://github.com/excalidraw/excalidraw/pull/4727)
|
|
449
|
-
|
|
450
|
-
- Support hyperlinks 🔥 [#4620](https://github.com/excalidraw/excalidraw/pull/4620)
|
|
451
|
-
|
|
452
|
-
- Added penMode for palm rejection [#4657](https://github.com/excalidraw/excalidraw/pull/4657)
|
|
453
|
-
|
|
454
|
-
- Support unbinding bound text [#4686](https://github.com/excalidraw/excalidraw/pull/4686)
|
|
455
|
-
|
|
456
|
-
- Sync local storage state across tabs when out of sync [#4545](https://github.com/excalidraw/excalidraw/pull/4545)
|
|
457
|
-
|
|
458
|
-
- Support contextMenuLabel to be of function type to support dynamic labels [#4654](https://github.com/excalidraw/excalidraw/pull/4654)
|
|
278
|
+
### Fixes
|
|
459
279
|
|
|
460
|
-
-
|
|
280
|
+
- Horizontal padding when aligning bound text containers [#6180](https://github.com/excalidraw/excalidraw/pull/6180)
|
|
461
281
|
|
|
462
|
-
-
|
|
282
|
+
- Make tunnels work in multi-instance scenarios [#6178](https://github.com/excalidraw/excalidraw/pull/6178)
|
|
463
283
|
|
|
464
|
-
-
|
|
284
|
+
- Add 1px width to the container to calculate more accurately [#6174](https://github.com/excalidraw/excalidraw/pull/6174)
|
|
465
285
|
|
|
466
|
-
-
|
|
286
|
+
- Quick typo fix [#6167](https://github.com/excalidraw/excalidraw/pull/6167)
|
|
467
287
|
|
|
468
|
-
-
|
|
288
|
+
- Set the width correctly using measureText in editor [#6162](https://github.com/excalidraw/excalidraw/pull/6162)
|
|
469
289
|
|
|
470
|
-
-
|
|
290
|
+
- :bug: broken emojis when wrap text [#6153](https://github.com/excalidraw/excalidraw/pull/6153)
|
|
471
291
|
|
|
472
|
-
-
|
|
292
|
+
- Button background and svg sizes [#6155](https://github.com/excalidraw/excalidraw/pull/6155)
|
|
473
293
|
|
|
474
|
-
|
|
294
|
+
### Styles
|
|
475
295
|
|
|
476
|
-
-
|
|
296
|
+
- Change in ExportButton style [#6147](https://github.com/excalidraw/excalidraw/pull/6147) (#6148)
|
|
477
297
|
|
|
478
|
-
|
|
298
|
+
### Build
|
|
479
299
|
|
|
480
|
-
-
|
|
300
|
+
- Temporarily disable pre-commit [#6132](https://github.com/excalidraw/excalidraw/pull/6132)
|
|
481
301
|
|
|
482
|
-
|
|
302
|
+
---
|
|
483
303
|
|
|
484
|
-
|
|
304
|
+
## 0.14.1 (2023-01-16)
|
|
485
305
|
|
|
486
|
-
|
|
306
|
+
### Fixes
|
|
487
307
|
|
|
488
|
-
-
|
|
308
|
+
- 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.
|
|
489
309
|
|
|
490
|
-
|
|
310
|
+
## 0.14.0 (2023-01-13)
|
|
491
311
|
|
|
492
|
-
|
|
312
|
+
### Features
|
|
493
313
|
|
|
494
|
-
-
|
|
314
|
+
- 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).
|
|
495
315
|
|
|
496
|
-
-
|
|
316
|
+
- 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)
|
|
497
317
|
|
|
498
|
-
-
|
|
318
|
+
- 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).
|
|
499
319
|
|
|
500
|
-
-
|
|
320
|
+
- [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).
|
|
501
321
|
|
|
502
|
-
-
|
|
322
|
+
- 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).
|
|
503
323
|
|
|
504
|
-
-
|
|
324
|
+
- 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).
|
|
505
325
|
|
|
506
|
-
|
|
326
|
+
#### BREAKING CHANGES
|
|
507
327
|
|
|
508
|
-
-
|
|
328
|
+
- `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.
|
|
329
|
+
- The prop `renderFooter` is now removed in favor of rendering as a child component.
|
|
509
330
|
|
|
510
|
-
|
|
331
|
+
### Excalidraw schema
|
|
511
332
|
|
|
512
|
-
-
|
|
333
|
+
- 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).
|
|
513
334
|
|
|
514
|
-
|
|
335
|
+
## Excalidraw Library
|
|
515
336
|
|
|
516
|
-
|
|
337
|
+
**_This section lists the updates made to the excalidraw library and will not affect the integration._**
|
|
517
338
|
|
|
518
|
-
###
|
|
339
|
+
### Features
|
|
519
340
|
|
|
520
|
-
-
|
|
341
|
+
- Generic button export [#6092](https://github.com/excalidraw/excalidraw/pull/6092)
|
|
521
342
|
|
|
522
|
-
-
|
|
343
|
+
- Scroll using PageUp and PageDown [#6038](https://github.com/excalidraw/excalidraw/pull/6038)
|
|
523
344
|
|
|
524
|
-
-
|
|
345
|
+
- Support shrinking text containers to original height when text removed [#6025](https://github.com/excalidraw/excalidraw/pull/6025)
|
|
525
346
|
|
|
526
|
-
-
|
|
347
|
+
- Move contextMenu into the component tree and control via appState [#6021](https://github.com/excalidraw/excalidraw/pull/6021)
|
|
527
348
|
|
|
528
|
-
-
|
|
349
|
+
- Allow readonly actions to be used in viewMode [#5982](https://github.com/excalidraw/excalidraw/pull/5982)
|
|
529
350
|
|
|
530
|
-
-
|
|
351
|
+
- Support labels for arrow 🔥 [#5723](https://github.com/excalidraw/excalidraw/pull/5723)
|
|
531
352
|
|
|
532
|
-
-
|
|
353
|
+
- Don't add midpoint until dragged beyond a threshold [#5927](https://github.com/excalidraw/excalidraw/pull/5927)
|
|
533
354
|
|
|
534
|
-
-
|
|
355
|
+
- Changed text copy/paste behaviour [#5786](https://github.com/excalidraw/excalidraw/pull/5786)
|
|
535
356
|
|
|
536
|
-
-
|
|
357
|
+
- Reintroduce `x` shortcut for `freedraw` [#5840](https://github.com/excalidraw/excalidraw/pull/5840)
|
|
537
358
|
|
|
538
|
-
-
|
|
359
|
+
- Tweak toolbar shortcuts & remove library shortcut [#5832](https://github.com/excalidraw/excalidraw/pull/5832)
|
|
539
360
|
|
|
540
|
-
-
|
|
361
|
+
- Clean unused images only after 24hrs (local-only) [#5839](https://github.com/excalidraw/excalidraw/pull/5839)
|
|
541
362
|
|
|
542
|
-
-
|
|
363
|
+
- Refetch errored/pending images on collab room init load [#5833](https://github.com/excalidraw/excalidraw/pull/5833)
|
|
543
364
|
|
|
544
|
-
-
|
|
365
|
+
- Stop deleting whole line when no point select in line editor [#5676](https://github.com/excalidraw/excalidraw/pull/5676)
|
|
545
366
|
|
|
546
|
-
-
|
|
367
|
+
- Editor redesign 🔥 [#5780](https://github.com/excalidraw/excalidraw/pull/5780)
|
|
547
368
|
|
|
548
|
-
|
|
369
|
+
### Fixes
|
|
549
370
|
|
|
550
|
-
-
|
|
371
|
+
- Mobile tools positioning [#6107](https://github.com/excalidraw/excalidraw/pull/6107)
|
|
551
372
|
|
|
552
|
-
-
|
|
373
|
+
- Renamed folder MainMenu->main-menu and support rest props [#6103](https://github.com/excalidraw/excalidraw/pull/6103)
|
|
553
374
|
|
|
554
|
-
-
|
|
375
|
+
- Use position absolute for mobile misc tools [#6099](https://github.com/excalidraw/excalidraw/pull/6099)
|
|
555
376
|
|
|
556
|
-
-
|
|
377
|
+
- React.memo resolvers not accounting for all props [#6042](https://github.com/excalidraw/excalidraw/pull/6042)
|
|
557
378
|
|
|
558
|
-
-
|
|
379
|
+
- Image horizontal flip fix + improved tests [#5799](https://github.com/excalidraw/excalidraw/pull/5799)
|
|
559
380
|
|
|
560
|
-
-
|
|
381
|
+
- Png-exporting does not preserve angles correctly for flipped images [#6085](https://github.com/excalidraw/excalidraw/pull/6085)
|
|
561
382
|
|
|
562
|
-
-
|
|
383
|
+
- Stale appState of MainMenu defaultItems rendered from Actions [#6074](https://github.com/excalidraw/excalidraw/pull/6074)
|
|
563
384
|
|
|
564
|
-
-
|
|
385
|
+
- HelpDialog [#6072](https://github.com/excalidraw/excalidraw/pull/6072)
|
|
565
386
|
|
|
566
|
-
-
|
|
387
|
+
- Show error message on collab save failure [#6063](https://github.com/excalidraw/excalidraw/pull/6063)
|
|
567
388
|
|
|
568
|
-
-
|
|
389
|
+
- Remove ga from docker build [#6059](https://github.com/excalidraw/excalidraw/pull/6059)
|
|
569
390
|
|
|
570
|
-
-
|
|
391
|
+
- Use displayName since name gets stripped off when uglifying/minifiyng in production [#6036](https://github.com/excalidraw/excalidraw/pull/6036)
|
|
571
392
|
|
|
572
|
-
-
|
|
393
|
+
- Remove background from wysiwyg when editing arrow label [#6033](https://github.com/excalidraw/excalidraw/pull/6033)
|
|
573
394
|
|
|
574
|
-
-
|
|
395
|
+
- Use canvas measureText to calculate width in measureText [#6030](https://github.com/excalidraw/excalidraw/pull/6030)
|
|
575
396
|
|
|
576
|
-
-
|
|
397
|
+
- Restoring deleted bindings [#6029](https://github.com/excalidraw/excalidraw/pull/6029)
|
|
577
398
|
|
|
578
|
-
-
|
|
399
|
+
- ColorPicker getColor [#5949](https://github.com/excalidraw/excalidraw/pull/5949)
|
|
579
400
|
|
|
580
|
-
-
|
|
401
|
+
- 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)
|
|
581
402
|
|
|
582
|
-
-
|
|
403
|
+
- Showing `grabbing` cursor when holding `spacebar` [#6015](https://github.com/excalidraw/excalidraw/pull/6015)
|
|
583
404
|
|
|
584
|
-
-
|
|
405
|
+
- Resize sometimes throwing on missing null-checks [#6013](https://github.com/excalidraw/excalidraw/pull/6013)
|
|
585
406
|
|
|
586
|
-
-
|
|
407
|
+
- PWA not working after CRA@5 update [#6012](https://github.com/excalidraw/excalidraw/pull/6012)
|
|
587
408
|
|
|
588
|
-
-
|
|
409
|
+
- Not properly restoring element stroke and bg colors [#6002](https://github.com/excalidraw/excalidraw/pull/6002)
|
|
589
410
|
|
|
590
|
-
-
|
|
411
|
+
- Avatar outline on safari & center [#5997](https://github.com/excalidraw/excalidraw/pull/5997)
|
|
591
412
|
|
|
592
|
-
-
|
|
413
|
+
- Chart pasting not working due to removing tab characters [#5987](https://github.com/excalidraw/excalidraw/pull/5987)
|
|
593
414
|
|
|
594
|
-
-
|
|
415
|
+
- Apply the right type of roundness when pasting styles [#5979](https://github.com/excalidraw/excalidraw/pull/5979)
|
|
595
416
|
|
|
596
|
-
-
|
|
417
|
+
- Remove editor onpaste handler [#5971](https://github.com/excalidraw/excalidraw/pull/5971)
|
|
597
418
|
|
|
598
|
-
-
|
|
419
|
+
- Remove blank space [#5950](https://github.com/excalidraw/excalidraw/pull/5950)
|
|
599
420
|
|
|
600
|
-
-
|
|
421
|
+
- Galego and Kurdî missing in languages plus two locale typos [#5954](https://github.com/excalidraw/excalidraw/pull/5954)
|
|
601
422
|
|
|
602
|
-
-
|
|
423
|
+
- `ExcalidrawArrowElement` rather than `ExcalidrawArrowEleement` [#5955](https://github.com/excalidraw/excalidraw/pull/5955)
|
|
603
424
|
|
|
604
|
-
-
|
|
425
|
+
- RenderFooter styling [#5962](https://github.com/excalidraw/excalidraw/pull/5962)
|
|
605
426
|
|
|
606
|
-
-
|
|
427
|
+
- Repair element bindings on restore [#5956](https://github.com/excalidraw/excalidraw/pull/5956)
|
|
607
428
|
|
|
608
|
-
-
|
|
429
|
+
- Don't allow whitespaces for bound text [#5939](https://github.com/excalidraw/excalidraw/pull/5939)
|
|
609
430
|
|
|
610
|
-
-
|
|
431
|
+
- Bindings do not survive history serialization [#5942](https://github.com/excalidraw/excalidraw/pull/5942)
|
|
611
432
|
|
|
612
|
-
-
|
|
433
|
+
- Dedupe boundElement ids when container duplicated with alt+drag [#5938](https://github.com/excalidraw/excalidraw/pull/5938)
|
|
613
434
|
|
|
614
|
-
-
|
|
435
|
+
- Scale font correctly when using shift [#5935](https://github.com/excalidraw/excalidraw/pull/5935)
|
|
615
436
|
|
|
616
|
-
-
|
|
437
|
+
- Always bind to container selected by user [#5880](https://github.com/excalidraw/excalidraw/pull/5880)
|
|
617
438
|
|
|
618
|
-
-
|
|
439
|
+
- Fonts not rendered on init if `loadingdone` not fired [#5923](https://github.com/excalidraw/excalidraw/pull/5923)
|
|
619
440
|
|
|
620
|
-
-
|
|
441
|
+
- Stop replacing `del` word with `Delete` [#5897](https://github.com/excalidraw/excalidraw/pull/5897)
|
|
621
442
|
|
|
622
|
-
-
|
|
443
|
+
- Remove legacy React.render() from the editor [#5893](https://github.com/excalidraw/excalidraw/pull/5893)
|
|
623
444
|
|
|
624
|
-
-
|
|
445
|
+
- Allow adding text via enter only for text containers [#5891](https://github.com/excalidraw/excalidraw/pull/5891)
|
|
625
446
|
|
|
626
|
-
-
|
|
447
|
+
- Stop font `loadingdone` loop when rendering element SVGs [#5883](https://github.com/excalidraw/excalidraw/pull/5883)
|
|
627
448
|
|
|
628
|
-
-
|
|
449
|
+
- Refresh text dimensions only after font load done [#5878](https://github.com/excalidraw/excalidraw/pull/5878)
|
|
629
450
|
|
|
630
|
-
-
|
|
451
|
+
- Correctly paste contents parsed by `JSON.parse()` as text. [#5868](https://github.com/excalidraw/excalidraw/pull/5868)
|
|
631
452
|
|
|
632
|
-
-
|
|
453
|
+
- SVG element attributes in icons.tsx [#5871](https://github.com/excalidraw/excalidraw/pull/5871)
|
|
633
454
|
|
|
634
|
-
-
|
|
455
|
+
- Merge existing text with new when pasted [#5856](https://github.com/excalidraw/excalidraw/pull/5856)
|
|
635
456
|
|
|
636
|
-
-
|
|
457
|
+
- Disable FAST_REFRESH to fix live reload [#5852](https://github.com/excalidraw/excalidraw/pull/5852)
|
|
637
458
|
|
|
638
|
-
-
|
|
459
|
+
- Paste clipboard contents into unbound text elements [#5849](https://github.com/excalidraw/excalidraw/pull/5849)
|
|
639
460
|
|
|
640
|
-
-
|
|
461
|
+
- Compute dimensions of container correctly when text pasted on container [#5845](https://github.com/excalidraw/excalidraw/pull/5845)
|
|
641
462
|
|
|
642
|
-
-
|
|
463
|
+
- Line editor points rendering below elements [#5781](https://github.com/excalidraw/excalidraw/pull/5781)
|
|
643
464
|
|
|
644
|
-
-
|
|
465
|
+
- Syncing 1-point lines to remote clients [#5677](https://github.com/excalidraw/excalidraw/pull/5677)
|
|
645
466
|
|
|
646
|
-
-
|
|
467
|
+
- Incorrectly selecting linear elements on creation while tool-locked [#5785](https://github.com/excalidraw/excalidraw/pull/5785)
|
|
647
468
|
|
|
648
|
-
-
|
|
469
|
+
- Corrected typo in toggle theme shortcut [#5813](https://github.com/excalidraw/excalidraw/pull/5813)
|
|
649
470
|
|
|
650
|
-
-
|
|
471
|
+
- Hide canvas-modifying UI in view mode [#5815](https://github.com/excalidraw/excalidraw/pull/5815)
|
|
651
472
|
|
|
652
|
-
-
|
|
473
|
+
- Fix vertical/horizntal centering icons [#5812](https://github.com/excalidraw/excalidraw/pull/5812)
|
|
653
474
|
|
|
654
|
-
-
|
|
475
|
+
- Consistent use of ZOOM_STEP [#5801](https://github.com/excalidraw/excalidraw/pull/5801)
|
|
655
476
|
|
|
656
|
-
-
|
|
477
|
+
- Multiple elements resizing regressions [#5586](https://github.com/excalidraw/excalidraw/pull/5586)
|
|
657
478
|
|
|
658
|
-
-
|
|
479
|
+
- Changelog typo [#5795](https://github.com/excalidraw/excalidraw/pull/5795)
|
|
659
480
|
|
|
660
|
-
|
|
481
|
+
### Refactor
|
|
661
482
|
|
|
662
|
-
-
|
|
483
|
+
- Remove unnecessary code [#5933](https://github.com/excalidraw/excalidraw/pull/5933)
|
|
663
484
|
|
|
664
|
-
|
|
485
|
+
### Build
|
|
665
486
|
|
|
666
|
-
-
|
|
487
|
+
- Move release scripts to use release branch [#5958](https://github.com/excalidraw/excalidraw/pull/5958)
|
|
667
488
|
|
|
668
|
-
-
|
|
489
|
+
- Stops ignoring .env files from docker context so env variables get set during react app build. [#5809](https://github.com/excalidraw/excalidraw/pull/5809)
|
|
669
490
|
|
|
670
|
-
|
|
491
|
+
---
|
|
671
492
|
|
|
672
|
-
|
|
493
|
+
## 0.13.0 (2022-10-27)
|
|
673
494
|
|
|
674
|
-
###
|
|
495
|
+
### Excalidraw API
|
|
675
496
|
|
|
676
|
-
|
|
497
|
+
#### Features
|
|
677
498
|
|
|
678
|
-
-
|
|
499
|
+
- `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).
|
|
500
|
+
- 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)).
|
|
501
|
+
- 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)).
|
|
502
|
+
- 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).
|
|
503
|
+
- 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].
|
|
504
|
+
- 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`.
|
|
679
505
|
|
|
680
|
-
|
|
506
|
+
#### Breaking Changes
|
|
681
507
|
|
|
682
|
-
-
|
|
508
|
+
- `props.UIOptions.canvasActions.theme` is now renamed to `props.UIOptions.canvasActions.toggleTheme` [#5660](https://github.com/excalidraw/excalidraw/pull/5660).
|
|
509
|
+
- `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`.
|
|
683
510
|
|
|
684
|
-
|
|
511
|
+
## Excalidraw Library
|
|
685
512
|
|
|
686
|
-
|
|
513
|
+
**_This section lists the updates made to the excalidraw library and will not affect the integration._**
|
|
687
514
|
|
|
688
|
-
|
|
515
|
+
### Features
|
|
689
516
|
|
|
690
|
-
-
|
|
517
|
+
- Render library into `Sidebar` on mobile [#5774](https://github.com/excalidraw/excalidraw/pull/5774)
|
|
691
518
|
|
|
692
|
-
|
|
519
|
+
- Additional drag and drop image format support (webp, bmp, ico) [#5749](https://github.com/excalidraw/excalidraw/pull/5749)
|
|
693
520
|
|
|
694
|
-
|
|
521
|
+
- Enter and Exit line editor via context menu [#5719](https://github.com/excalidraw/excalidraw/pull/5719)
|
|
695
522
|
|
|
696
|
-
|
|
523
|
+
- Further reduce darkmode init flash [#5701](https://github.com/excalidraw/excalidraw/pull/5701)
|
|
697
524
|
|
|
698
|
-
|
|
525
|
+
- Support segment midpoints in line editor [#5641](https://github.com/excalidraw/excalidraw/pull/5641)
|
|
699
526
|
|
|
700
|
-
-
|
|
527
|
+
- Added exportPadding to PNG (blob) export in @excalidraw/utils [#5626](https://github.com/excalidraw/excalidraw/pull/5626)
|
|
701
528
|
|
|
702
|
-
-
|
|
529
|
+
- Introduce ExcalidrawElements and ExcalidrawAppState provider [#5463](https://github.com/excalidraw/excalidraw/pull/5463)
|
|
703
530
|
|
|
704
|
-
|
|
531
|
+
- Enable midpoint inside linear element editor [#5564](https://github.com/excalidraw/excalidraw/pull/5564)
|
|
705
532
|
|
|
706
|
-
|
|
533
|
+
- Show a mid point for linear elements [#5534](https://github.com/excalidraw/excalidraw/pull/5534)
|
|
707
534
|
|
|
708
|
-
|
|
535
|
+
- Lock angle when editing linear elements with shift pressed [#5527](https://github.com/excalidraw/excalidraw/pull/5527)
|
|
709
536
|
|
|
710
|
-
-
|
|
537
|
+
- Redesign linear elements 🎉 [#5501](https://github.com/excalidraw/excalidraw/pull/5501)
|
|
711
538
|
|
|
712
|
-
|
|
539
|
+
- Cursor alignment when creating linear elements with shift pressed [#5518](https://github.com/excalidraw/excalidraw/pull/5518)
|
|
713
540
|
|
|
714
|
-
-
|
|
541
|
+
- Shift-clamp when creating multi-point lines/arrows [#5500](https://github.com/excalidraw/excalidraw/pull/5500)
|
|
715
542
|
|
|
716
|
-
|
|
543
|
+
- Cursor alignment when creating generic elements [#5516](https://github.com/excalidraw/excalidraw/pull/5516)
|
|
717
544
|
|
|
718
|
-
|
|
545
|
+
- Make context menu scrollable [#4030](https://github.com/excalidraw/excalidraw/pull/4030)
|
|
719
546
|
|
|
720
|
-
###
|
|
547
|
+
### Fixes
|
|
721
548
|
|
|
722
|
-
-
|
|
549
|
+
- Ungroup short cut key [#5779](https://github.com/excalidraw/excalidraw/pull/5779)
|
|
723
550
|
|
|
724
|
-
-
|
|
551
|
+
- Replaced KeyboardEvent.code with KeyboardEvent.key for all letters [#5523](https://github.com/excalidraw/excalidraw/pull/5523)
|
|
725
552
|
|
|
726
|
-
-
|
|
553
|
+
- Free draw flip not scaling correctly [#5752](https://github.com/excalidraw/excalidraw/pull/5752)
|
|
727
554
|
|
|
728
|
-
-
|
|
555
|
+
- Wait for window focus until prompting for library install [#5751](https://github.com/excalidraw/excalidraw/pull/5751)
|
|
729
556
|
|
|
730
|
-
-
|
|
557
|
+
- Update perfect freehand library to fix extra dot [#5727](https://github.com/excalidraw/excalidraw/pull/5727)
|
|
731
558
|
|
|
732
|
-
-
|
|
559
|
+
- RestoreElementWithProperties drops "parent" property [#5742](https://github.com/excalidraw/excalidraw/pull/5742)
|
|
733
560
|
|
|
734
|
-
|
|
561
|
+
- Horizontal text alignment for bound text when resizing [#5721](https://github.com/excalidraw/excalidraw/pull/5721)
|
|
735
562
|
|
|
736
|
-
-
|
|
563
|
+
- Set the dimensions of bound text correctly [#5710](https://github.com/excalidraw/excalidraw/pull/5710)
|
|
737
564
|
|
|
738
|
-
-
|
|
565
|
+
- Image-mirroring in export preview and in exported svg [#5700](https://github.com/excalidraw/excalidraw/pull/5700)
|
|
739
566
|
|
|
740
|
-
-
|
|
567
|
+
- Double state update incorrectly resetting state [#5704](https://github.com/excalidraw/excalidraw/pull/5704)
|
|
741
568
|
|
|
742
|
-
-
|
|
569
|
+
- Remove no longer used code related to collab room loading [#5699](https://github.com/excalidraw/excalidraw/pull/5699)
|
|
743
570
|
|
|
744
|
-
-
|
|
571
|
+
- Revert webpack deduping to fix `@next` runtime [#5695](https://github.com/excalidraw/excalidraw/pull/5695)
|
|
745
572
|
|
|
746
|
-
-
|
|
573
|
+
- Move to release notes for v0.9.0 and after [#5686](https://github.com/excalidraw/excalidraw/pull/5686)
|
|
747
574
|
|
|
748
|
-
-
|
|
575
|
+
- Zen-mode exit button not working [#5682](https://github.com/excalidraw/excalidraw/pull/5682)
|
|
749
576
|
|
|
750
|
-
-
|
|
577
|
+
- Buttons jump around on the mobile menu [#5658](https://github.com/excalidraw/excalidraw/pull/5658)
|
|
751
578
|
|
|
752
|
-
-
|
|
579
|
+
- #5622 - prevent session theme reset during collaboration [#5640](https://github.com/excalidraw/excalidraw/pull/5640)
|
|
753
580
|
|
|
754
|
-
|
|
581
|
+
- Library actions inside the sidebar [#5638](https://github.com/excalidraw/excalidraw/pull/5638)
|
|
755
582
|
|
|
756
|
-
|
|
583
|
+
- Don't render library menu twice for mobile [#5636](https://github.com/excalidraw/excalidraw/pull/5636)
|
|
757
584
|
|
|
758
|
-
|
|
585
|
+
- Reintroduce help dialog button [#5631](https://github.com/excalidraw/excalidraw/pull/5631)
|
|
759
586
|
|
|
760
|
-
|
|
587
|
+
- Add display name to components so it doesn't show as anonymous [#5616](https://github.com/excalidraw/excalidraw/pull/5616)
|
|
761
588
|
|
|
762
|
-
-
|
|
589
|
+
- Improve solveQuadratic when a = 0 [#5618](https://github.com/excalidraw/excalidraw/pull/5618)
|
|
763
590
|
|
|
764
|
-
|
|
591
|
+
- Add random tiny offsets to avoid linear elements from being clipped [#5615](https://github.com/excalidraw/excalidraw/pull/5615)
|
|
765
592
|
|
|
766
|
-
|
|
593
|
+
- Crash when adding a new point in the line editor #5602 [#5606](https://github.com/excalidraw/excalidraw/pull/5606)
|
|
767
594
|
|
|
768
|
-
-
|
|
595
|
+
- Allow box selection of points when inside editor [#5594](https://github.com/excalidraw/excalidraw/pull/5594)
|
|
769
596
|
|
|
770
|
-
|
|
597
|
+
- Remove unnecessary conditions in pointerup for linear elements [#5575](https://github.com/excalidraw/excalidraw/pull/5575)
|
|
771
598
|
|
|
772
|
-
|
|
773
|
-
- [`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.
|
|
599
|
+
- Check if hitting link in handleSelectionOnPointerDown [#5589](https://github.com/excalidraw/excalidraw/pull/5589)
|
|
774
600
|
|
|
775
|
-
-
|
|
601
|
+
- Points not being normalized on single-elem resize [#5581](https://github.com/excalidraw/excalidraw/pull/5581)
|
|
776
602
|
|
|
777
|
-
-
|
|
603
|
+
- Deselect linear element when clicked inside bounding box outside editor [#5579](https://github.com/excalidraw/excalidraw/pull/5579)
|
|
778
604
|
|
|
779
|
-
-
|
|
605
|
+
- Resize multiple elements from center [#5560](https://github.com/excalidraw/excalidraw/pull/5560)
|
|
780
606
|
|
|
781
|
-
|
|
607
|
+
- Call static methods via class instead of instance in linearElementEditor [#5561](https://github.com/excalidraw/excalidraw/pull/5561)
|
|
782
608
|
|
|
783
|
-
-
|
|
784
|
-
- 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).
|
|
609
|
+
- Show bounding box for 3 or more linear point elements [#5554](https://github.com/excalidraw/excalidraw/pull/5554)
|
|
785
610
|
|
|
786
|
-
-
|
|
611
|
+
- Cleanup the condition for dragging elements [#5555](https://github.com/excalidraw/excalidraw/pull/5555)
|
|
787
612
|
|
|
788
|
-
|
|
613
|
+
- Shareable links being merged with current scene data [#5547](https://github.com/excalidraw/excalidraw/pull/5547)
|
|
789
614
|
|
|
790
|
-
|
|
615
|
+
- Scene lookup failing when looking up by id [#5542](https://github.com/excalidraw/excalidraw/pull/5542)
|
|
791
616
|
|
|
792
|
-
|
|
793
|
-
- `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.
|
|
617
|
+
- Remove rounding to fix jitter when shift-editing [#5543](https://github.com/excalidraw/excalidraw/pull/5543)
|
|
794
618
|
|
|
795
|
-
|
|
619
|
+
- Line deselected when shift-dragging point outside editor [#5540](https://github.com/excalidraw/excalidraw/pull/5540)
|
|
796
620
|
|
|
797
|
-
-
|
|
621
|
+
- Flip linear elements after redesign [#5538](https://github.com/excalidraw/excalidraw/pull/5538)
|
|
798
622
|
|
|
799
|
-
|
|
623
|
+
- Disable locking aspect ratio for box-selection [#5525](https://github.com/excalidraw/excalidraw/pull/5525)
|
|
800
624
|
|
|
801
|
-
-
|
|
802
|
-
- Rename `UIOptions.canvasActions.saveScene` to `UIOptions.canvasActions.saveToActiveFile`[#3657](https://github.com/excalidraw/excalidraw/pull/3657).
|
|
803
|
-
- 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).
|
|
804
|
-
- 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.
|
|
625
|
+
- Add `title` attribute to the modal close button [#5521](https://github.com/excalidraw/excalidraw/pull/5521)
|
|
805
626
|
|
|
806
|
-
|
|
627
|
+
- Context menu positioning when component has offsets [#5520](https://github.com/excalidraw/excalidraw/pull/5520)
|
|
807
628
|
|
|
808
|
-
|
|
629
|
+
- Resolve paths in prebuild.js script [#5498](https://github.com/excalidraw/excalidraw/pull/5498)
|
|
809
630
|
|
|
810
|
-
|
|
631
|
+
- Use flushSync when moving line editor since we need to read previous value after setting state [#5508](https://github.com/excalidraw/excalidraw/pull/5508)
|
|
811
632
|
|
|
812
|
-
-
|
|
633
|
+
- UseLayout effect cleanup in dev mode for charts [#5505](https://github.com/excalidraw/excalidraw/pull/5505)
|
|
813
634
|
|
|
814
|
-
-
|
|
635
|
+
- Revert browser toast for high/low zoom [#5495](https://github.com/excalidraw/excalidraw/pull/5495)
|
|
815
636
|
|
|
816
|
-
-
|
|
637
|
+
- Fixing push to DockerHub [#5468](https://github.com/excalidraw/excalidraw/pull/5468)
|
|
817
638
|
|
|
818
|
-
-
|
|
639
|
+
- Incorrectly rendering freedraw elements [#5481](https://github.com/excalidraw/excalidraw/pull/5481)
|
|
819
640
|
|
|
820
|
-
-
|
|
641
|
+
- Generate types when building example [#5480](https://github.com/excalidraw/excalidraw/pull/5480)
|
|
821
642
|
|
|
822
|
-
-
|
|
643
|
+
- Use React.FC as react-dom is not able to infer types of Modal [#5479](https://github.com/excalidraw/excalidraw/pull/5479)
|
|
823
644
|
|
|
824
|
-
-
|
|
645
|
+
- Missing translation for "Scale" to Export Dialog [#5456](https://github.com/excalidraw/excalidraw/pull/5456)
|
|
825
646
|
|
|
826
|
-
-
|
|
647
|
+
- Add display name for Excalidraw component so it doesn't show as anonymous [#5464](https://github.com/excalidraw/excalidraw/pull/5464)
|
|
827
648
|
|
|
828
|
-
-
|
|
649
|
+
- Account for safe area for floating buttons on mobile [#5420](https://github.com/excalidraw/excalidraw/pull/5420)
|
|
829
650
|
|
|
830
|
-
-
|
|
651
|
+
- Attribute warnings in comment svg example [#5465](https://github.com/excalidraw/excalidraw/pull/5465)
|
|
831
652
|
|
|
832
|
-
-
|
|
653
|
+
- Check for ctrl key when wheel event triggered to only disable zooming [#5459](https://github.com/excalidraw/excalidraw/pull/5459)
|
|
833
654
|
|
|
834
|
-
-
|
|
655
|
+
- Disable render throttling by default & during resize [#5451](https://github.com/excalidraw/excalidraw/pull/5451)
|
|
835
656
|
|
|
836
|
-
-
|
|
657
|
+
- Attach wheel event to exscalidraw container only [#5443](https://github.com/excalidraw/excalidraw/pull/5443)
|
|
837
658
|
|
|
838
|
-
|
|
659
|
+
- Show toast when browser zoom is not 100% [#5304](https://github.com/excalidraw/excalidraw/pull/5304)
|
|
839
660
|
|
|
840
|
-
-
|
|
661
|
+
- Prevent browser zoom inside Excalidraw [#5426](https://github.com/excalidraw/excalidraw/pull/5426)
|
|
841
662
|
|
|
842
|
-
-
|
|
663
|
+
- Typo in changelog [#5425](https://github.com/excalidraw/excalidraw/pull/5425)
|
|
843
664
|
|
|
844
|
-
|
|
665
|
+
### Refactor
|
|
845
666
|
|
|
846
|
-
-
|
|
667
|
+
- Create a util to compute container dimensions for bound text container [#5708](https://github.com/excalidraw/excalidraw/pull/5708)
|
|
847
668
|
|
|
848
|
-
-
|
|
669
|
+
- Reuse common ui dialogs and message for mobile and LayerUI [#5611](https://github.com/excalidraw/excalidraw/pull/5611)
|
|
849
670
|
|
|
850
|
-
-
|
|
671
|
+
- Stats component [#5610](https://github.com/excalidraw/excalidraw/pull/5610)
|
|
851
672
|
|
|
852
|
-
-
|
|
673
|
+
- Move footer to its own component [#5609](https://github.com/excalidraw/excalidraw/pull/5609)
|
|
853
674
|
|
|
854
|
-
-
|
|
675
|
+
- Remove unused attribute hasHitElementInside from pointerDownState [#5591](https://github.com/excalidraw/excalidraw/pull/5591)
|
|
855
676
|
|
|
856
|
-
-
|
|
677
|
+
- Cleanup renderScene [#5573](https://github.com/excalidraw/excalidraw/pull/5573)
|
|
857
678
|
|
|
858
|
-
-
|
|
679
|
+
- Rename docs to dev-docs [#5487](https://github.com/excalidraw/excalidraw/pull/5487)
|
|
859
680
|
|
|
860
|
-
-
|
|
681
|
+
- Remove unnecessary if condition for linear element onKeyDown [#5486](https://github.com/excalidraw/excalidraw/pull/5486)
|
|
861
682
|
|
|
862
|
-
-
|
|
683
|
+
- Improve typing & check [#5415](https://github.com/excalidraw/excalidraw/pull/5415)
|
|
863
684
|
|
|
864
|
-
-
|
|
685
|
+
- Don't pass zenModeEnable, viewModeEnabled and toggleZenMode props to LayerUI [#5444](https://github.com/excalidraw/excalidraw/pull/5444)
|
|
865
686
|
|
|
866
|
-
|
|
687
|
+
### Build
|
|
867
688
|
|
|
868
|
-
-
|
|
689
|
+
- Add missing dependencies: pica, lodash [#5656](https://github.com/excalidraw/excalidraw/pull/5656)
|
|
869
690
|
|
|
870
|
-
-
|
|
691
|
+
- Move dotenv to dev deps [#5472](https://github.com/excalidraw/excalidraw/pull/5472)
|
|
871
692
|
|
|
872
|
-
|
|
693
|
+
---
|
|
873
694
|
|
|
874
|
-
|
|
695
|
+
## 0.12.0 (2022-07-07)
|
|
875
696
|
|
|
876
|
-
|
|
697
|
+
Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.12.0) )
|
|
877
698
|
|
|
878
|
-
|
|
699
|
+
**_This section lists the updates made to the excalidraw library and will not affect the integration._**
|
|
879
700
|
|
|
880
|
-
|
|
701
|
+
## 0.11.0 (2022-02-17)
|
|
881
702
|
|
|
882
|
-
|
|
703
|
+
Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.11.0)
|
|
883
704
|
|
|
884
|
-
|
|
705
|
+
## 0.10.0 (2021-10-13)
|
|
885
706
|
|
|
886
|
-
|
|
707
|
+
Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.10.0)
|
|
887
708
|
|
|
888
|
-
|
|
709
|
+
## 0.9.0 (2021-07-10)
|
|
889
710
|
|
|
890
|
-
|
|
711
|
+
Check out the [release notes](https://github.com/excalidraw/excalidraw/releases/tag/v0.9.0)
|
|
891
712
|
|
|
892
713
|
## 0.8.0 (2021-05-15)
|
|
893
714
|
|