v0.17.0
版本发布时间: 2023-11-14 22:26:08
excalidraw/excalidraw最新发布版本:v0.17.3(2024-02-09 22:08:24)
v0.17.0 (2023-11-14)
Features
-
Added support for disabling
image
tool (also disabling image insertion in general, though keeps support for importing from.excalidraw
files) #6320.For disabling
image
you need to set 👇UIOptions.tools = { image: false }
-
Support
excalidrawAPI
prop for accessing the Excalidraw API #7251. -
Export
getCommonBounds
helper from the package #7247. -
Support frames via programmatic API #7205.
-
Export
elementsOverlappingBBox
,isElementInsideBBox
,elementPartiallyOverlapsWithOrContainsBBox
helpers for filtering/checking if elements within bounds. #6727 -
Regenerate ids by default when using transform api and also update bindings by 0.5px to avoid possible overlapping #7195
-
Add onChange, onPointerDown, onPointerUp api subscribers #7154.
-
Support props.locked for setActiveTool #7153.
-
Add
selected
prop forMainMenu.Item
andMainMenu.ItemCustom
components to indicate active state. #7078
Fixes
- Double image dialog on image insertion #7152.
Breaking Changes
-
The
Ref
support has been removed in v0.17.0 so if you are using refs, please update the integration to use theexcalidrawAPI
#7251. -
Additionally
ready
andreadyPromise
from the API have been discontinued. These APIs were found to be superfluous, and as part of the effort to streamline the APIs and maintain simplicity, they were removed in version v0.17.0 #7251. -
useDevice
hook's return value was changed to differentiate betweeneditor
andviewport
breakpoints. #7243
Build
-
Support Preact #7255. The host needs to set
process.env.IS_PREACT
totrue
When using
vite
or any build tools, you will have to make sure theprocess
is accessible as we are accessingprocess.env.IS_PREACT
to decide whether to use thepreact
build.Since
Vit
e removes env variables by default, you can update the Vite config to ensure it's available :point_down:define: { "process.env.IS_PREACT": process.env.IS_PREACT, },
Excalidraw Library
This section lists the updates made to the excalidraw library and will not affect the integration.
Features
-
Allow D&D dice app domain for embeds #7263
-
Remove full screen shortcut #7222
-
Make adaptive-roughness less aggressive #7250
-
Render frames on export #7210
-
Support mermaid flowchart and sequence diagrams to excalidraw diagrams 🥳 #6920
-
Support frames via programmatic API #7205
-
Make clipboard more robust and reintroduce contextmenu actions #7198
-
Support giphy.com embed domain #7192
-
Renderer tweaks #6698
-
Closing of "Save to.." Dialog on Save To Disk #7168
-
Added Copy/Paste from Google Docs #7136
-
Remove bound-arrows from frames #7157
-
New dark mode theme & light theme tweaks #7104
-
Better laser cursor for dark mode #7132
-
Laser pointer improvements #7128
-
Initial Laser Pointer MVP #6739
-
Export
iconFillColor()
#6996 -
Element alignments - snapping #6256
Fixes
-
Image insertion bugs #7278
-
ExportToSvg to honor frameRendering also for name not only for frame itself #7270
-
Can't toggle penMode off due to missing typecheck in togglePenMode #7273
-
Replace hard coded font family with const value in addFrameLabelsAsTextElements #7269
-
Perf issue when ungrouping elements within frame #7265
-
Fixes the shortcut collision between "toggleHandTool" and "distributeHorizontally" #7189
-
Allow pointer events when editing a linear element #7238
-
Make modal use viewport breakpoints #7246
-
Align input
:hover
/:focus
with spec #7225 -
Dialog remounting on className updates #7224
-
Don't update label position when dragging labelled arrows #6891
-
Frame add/remove/z-index ordering changes #7194
-
Element relative position when dragging multiple elements on grid #7107
-
Freedraw non-solid bg hitbox not working #7193
-
Actions panel ux improvement #6850
-
Better fill rendering with latest RoughJS #7031
-
Fix for Strange Symbol Appearing on Canvas after Deleting Grouped Graphics (Issue #7116) #7170
-
Attempt to fix flake in wysiwyg tests #7173
-
Ensure
ClipboardItem
created in the same tick to fix safari #7066 -
Wysiwyg left in undefined state on reload #7123
-
Ensure relative z-index of elements added to frame is retained #7134
-
Memoize static canvas on
props.renderConfig
#7131 -
Regression from #6739 preventing redirect link in view mode #7120
-
Update links to excalidraw-app #7072
-
Ensure we do not stop laser update prematurely #7100
-
Remove invisible elements safely #7083
-
Icon size in manifest #7073
-
Elements being dropped/duplicated when added to frame #7057
-
Frame name not editable on dbl-click #7037
-
Polyfill
Element.replaceChildren
#7034
Refactor
-
DRY out tool typing #7086
-
Refactor event globals to differentiate from
lastPointerUp
#7084 -
DRY out and simplify setting active tool from toolbar #7079
Performance
- Improve element in frame check #7124
1、 excalidraw-excalidraw-0.17.0.tgz 10.08MB