Tldraw/packages/tldraw/CHANGELOG.md

62 KiB

v2.0.0-beta.1 (Wed Dec 20 2023)

Release Notes

Fix clicking off the context menu (#2355)

  • Fix not being able to close the context menu by clicking on the UI or your selected shape.

fix read only page menu (#2356)

  • Add a brief release note for your PR here.

focus on container before deleting to avoid losing focus (#2354)

  • Prevents losing focus when clicking the trash button

Use custom font (#2343)

  • Add a brief release note for your PR here.

Only allow side resizing when we have some shapes that are not aspect ratio locked (#2347)

  • Don't allow edges resizing on mobile. The only exception is a single text shape.

Fix iconleft padding (#2345)

  • Fixes the icon padding in back to content / pen mode buttons.

Allow dragging on top of locked shapes. (#2337)

  • Allow translating of shapes on top of a locked shape by clicking inside of selection and moving the mouse.

Prevent diff mutation (#2336)

  • Fix squashRecordDiffs to prevent a bug where it mutates the 'updated' entires

Fix indicator radius for bookmarks. (#2335)

  • Fix the indicator for the bookmark shape. The radius now matches the shape's radius.

Start scrolling if we are dragging close to the window edges. (#2299)

  • Adds the logic to change the camera position when you get close to the edges of the window. This allows you to drag, resize, brush select past the edges of the current viewport.

Fix downscaling (#2325)

  • Decrease the size of uploaded assets.

💥 Breaking Change

🚀 Enhancement

🐛 Bug Fix

Authors: 6


v2.0.0-alpha.19 (Tue Dec 12 2023)

Release Notes

zoom to affected shapes after undo/redo (#2293)

  • Make sure affected shapes are visible after undo/redo

Add fit to content for frames. (#2275)

  • Add Fit to content option to the context menu for frames. This resizes the frames to correctly fit all their content.

fix new page naming (#2292)

  • Fix naming of pages created by the "move to page" action

Fix exporting of cropped images. (#2268)

  • Fix exporting of cropped images.

[improvements] arrows x enclosing shapes x precision. (#2265)

  • Improves the logic about when to draw "precise" arrows between the center of bound shapes.

fix vite HMR issue (#2279)

  • Fixes a bug that could cause crashes due to a re-render loop with HMR #1989

Removing frames and adding elements to frames (#2219)

  • Allow users to remove the frame, but keep it's children. Allow the users to add shapes to the frame directly when creating a frame.

Fix missing padding-right in toast (#2251)

  • Fox padding-right in toast content.

Also export TLUiEventMap (#2234)

  • Export TLUiEventMap type.

Fix the tool lock button. (#2225)

  • Adds the missing tool lock button.

Custom Tools DX + screenshot example (#2198)

  • adds ScreenshotTool custom tool example
  • improvements and new exports related to copying and exporting images / files
  • loosens up types around icons and translations
  • moving StateNode.isActive into an atom
  • adding Editor.path

StateNode atoms (#2213)

  • adds computed StateNode.getPath
  • adds computed StateNode.getCurrent`
  • adds computed StateNode.getIsActive`
  • adds computed Editor.getPath()
  • makes transition's second property optional

don't overwrite bookmark position if it changed before metadata arrives (#2215)

  • Fixes issue when creating new bookmark shape where the position would be reset if you moved it before the bookmark metadata was fetched.

[fix] huge images, use downscale for image scaling (#2207)

  • Improved image rescaling.

Fix an issue with not being able to group a shape an an arrow. (#2205)

  • Add a brief release note for your PR here.

feat: add new prop to force mobile mode layout (#1734)

  • add new prop to force mobile mode layout

💥 Breaking Change

🚀 Enhancement

🐛 Bug Fix

🧪 Tests

Authors: 7


v2.0.0-alpha.18 (Fri Nov 10 2023)

Release Notes

Fix an error when using context menu. (#2186)

  • Fixes the console error when opening the context menu for the first time.

[fix] actions menu freezing ui (#2187)

  • Fix actions menu not closing when clicking the canvas after grouping items via the actions menu.
  • Fixes an issue with using the Edit link dialog.

Only use the hack if we are in safari. (#2185)

  • Improve the speed of exporting to png for non Safari browsers.

Fix keyboard shortcuts for vscode. (#2181)

  • Fixes keyboard shortcuts for VS Code extension.

Fix printing. (#2177)

  • Fixes printing of shapes.

[fix] Frame label not following staying aligned correctly on rotation (#2172)

  • Frame labels immediately update their position on rotation.

Don't show scrollbars. (#2171)

  • Hide the horizontal scrollbar in the vertical alignment for Firefox.

instant bookmarks (#2176)

  • Improves ux around pasting bookmarks

Fix arrow dropdown localizations. (#2174)

  • Fix arrow headstyle dropdown translations.

Fix crash with zero length arrow (#2173)

  • Fix a hyper niche arrow crash with zero length arrows.

Allow users to select shapes when drag starts on top of a locked shape. (#2169)

  • Allows brush selecting when you start it on top of a locked shape.

Fix the problem with text not being correctly aligned in small geo shapes. (#2168)

  • Fixes position of Text labels in geo shapes.

Zooming improvement (#2149)

  • Improves zooming for inactive windows.

[feature] Things on the canvas (#2150)

  • [editor] Adds two new components, OnTheCanvas and InFrontOfTheCanvas.

Fix cleanupText (#2138)

  • Fixes a minor bug where cleaning up text would fail.
  • Fixed a bug where labels and links could lose alignment on android.

[feature] multi-scribbles (#2125)

  • [feature] multi scribbles

Tighten up editor ui (#2102)

  • Small adjustment to editor ui.

Remove indicator for autosize text shapes while editing (#2120)

  • Removed the indicator from autosize text shapes.

Taha/initial shape in handle change (#2117)

  • Add a brief release note for your PR here.

fix selection fg transform (#2113)

  • Fixes a small issue causing the selection foreground to be offset when the browser is at particular zoom levels.

Remove (optional) from jsdocs (#2109)

  • dev: Removed duplicate/inconsistent (optional)s from docs

[fix] mobile style panel switching open / closed (#2101)

  • Fix bug with style panel

🚀 Enhancement

🐛 Bug Fix

🏠 Internal

📝 Documentation

Authors: 5


v2.0.0-alpha.17 (Tue Oct 17 2023)

Release Notes

Firefox, Touch: Fix not being able to open style dropdowns (#2092)

  • Firefox Mobile: Fixed a bug where you couldn't open some style dropdown options.

Add timestamp to file names (#2096)

  • Add timestamp to exported image file names

[fix] Context menu + menus not closing correctly (#2086)

  • [fix] bug with menus

Fix not being able to upload massive images (#2095)

  • Fixed big images being too big to get added to the canvas.

fix cropped image size (#2097)

  • Fixes a rendering issue where cropped images were sometimes bleeding outside their bounds.

Add offline indicator (also to top zone example) (#2083)

  • [@tldraw/tldraw] add offline indicator to ui components

[fix] reparenting locked shapes (#2070)

  • Fix a bug where grouped locked shapes would be deleted when ungrouped.

[fix] Don't select locked shapes on pointer up (#2069)

  • Fix bug where locked shape could be selected by clicking on its label

[fix] locked shape of opacity problem with eraser.pointing (#2073)

  • locked shape of opacity problem with eraser.pointing Before/after: A B

🚀 Enhancement

🐛 Bug Fix

Authors: 7


v2.0.0-alpha.16 (Wed Oct 11 2023)

Release Notes

[fix] Hit testing against zero width / height lines (#2060)

  • [fix] Bug where arrows would not bind to straight lines

Fix opacity lowering on shapes that cannot be deleted (#2061)

  • Locked shapes don't change opacity when scribble erasing.

Before/after:

fix: proper label for opacity tooltip on hover (#2044)

  • Add a brief release note for your PR here.

Fix alt + shift keyboard shortcuts (#2053)

  • Fixes keyboard shortcuts that use alt and shift modifiers.

[improvement] Scope getShapeAtPoint to rendering shapes only (#2043)

  • Improve perf for hovering shapes / shape hit tests

Remove topBar prop from (#2018)

  • [BREAKING] removed topBar prop

🚀 Enhancement

🐛 Bug Fix

🏠 Internal

Authors: 6


v2.0.0-alpha.15 (Fri Oct 06 2023)

Release Notes

frame label fix (#2016)

  • Add a brief release note for your PR here.

fix cloud rendering (#2008)

  • Improves cloud shape rendering

[improvement] prevent editing in readonly (#1990)

  • Prevent editing text shapes in readonly mode.

Fix style panel opening when disabled (#1983)

  • When select tool is active, the style menu shouldn't be openable unless a shape is also selected.

Before/After

Fix text-wrapping on Safari (#1980)

  • Fix text wrapping differently on Safari and Chrome/Firefox

Before/After

Remove focus management (#1953)

  • [editor] Make autofocus default, remove automatic blur / focus events.

[fix] Drawing tool touch for first pen mark (#1977)

  • [fix] Accidental palm inputs when using iPad pencil

Remove targeted editing from text (#1962)

  • Fixed some cases where text would get selected in the wrong place.
  • Changed the behaviour of text selection. Removed 'deep editing'.

fix line bugs (#1936)

  • This PR patches a couple of bugs which led to straight draw lines and beziered dash lines not rendering on the canvas

Before & After:

Allow right clicking selection backgrounds (#1968)

  • Improved right click behaviour.

Mark an undo before toggling lock (#1969)

  • Mark an undo before toggling locked.

Stop editing frame headers when clicking inside a frame. (#1955)

  • Stop editing frame headers when clicking inside of a frame.

[feature] Include sources in TLExternalContent (#1925)

  • [editor / tldraw] add sources to TLExternalContent

[improvement] quick actions (#1922)

  • Improve the menu / kbds behavior when select tool is not active

Firefox: Fix dropdowns not opening with touch (#1923)

  • Firefox: Fixed dropdown menus not opening with touch.

Fix lines being draggable via their background (#1920)

  • None - unreleased bug

Fix first handle of line snapping to itself (#1912)

  • Fixed a bug where the first handle of a line shape could snap to itself.

[fix] Moving group items inside of a frame (dropping) (#1886)

  • Fix bug: ungroup when moving a shape in a group in a frame.

[fix] id properties of undefined (#1730) (#1919)

  • Fixed a bug similar #1730

♻️ fix: editing is not terminated after the conversion is confirmed. (#1885)

  • fix: editing is not terminated after the conversion is confirmed.

Fix selecting one shape from selection group (#1905)

  • Fix bug when selecting a single shape from a selection group

Before

https://github.com/tldraw/tldraw/assets/98838967/1412f9c6-d466-42b3-af94-d08cbc1656be

After Kapture 2023-09-18 at 14 15 10

Fix highlighter dots not being clickable (#1903)

  • None - unreleased bug

Fix video shape controls (#1909)

  • Fixes pointer events for editing video shapes.

Fix line handles (#1904)

  • Fixes an issue where line handles were slightly offset from the indicator line.

Fix pinch start with toolbar open (#1895)

  • Fixes a bug that could trigger undo by accident when closing the style toolbar via a pinch gesture on mobile.

Migrate snapshot (#1843)

  • [editor] add Store.migrateSnapshot

[fix] zero width / height bounds (#1840)

  • Fix bug with straight lines / arrows

clamp x-box and check-box lines to stay within box at small scales (#1860)

  • Fixes a regression introduced by the geometry refactor related to x-box and checkbox resizing.

Fix paste transform (#1859)

  • Fixes a bug affecting the position of pasted content inside frames.

[feature] Asset props (#1824)

  • [@tldraw/tldraw] add asset props

[fix] editing video shapes (#1821)

  • Fix bug with editing video shapes.

[feature] unlock all action (#1820)

  • Adds the unlock all feature.

Fix text editing in page menu popover (#1790)

  • (fix) page menu editing

[fix] embeds switching / tldraw embed (#1792)

  • [fix] tldraw embeds

Custom rendering margin / don't cull selected shapes (#1788)

  • [editor] add Editor.renderingBoundsMargin

Camera APIs (#1786)

  • (editor) improve camera commands

environment manager (#1784)

  • [editor] Move environment flags to environment manager

Editor commands API / effects (#1778)

  • tbd

export UiEventsProvider (#1774)

  • [@tldraw/tldraw] export ui events, so that UI hooks can work without context

remove useForceSolid effect for geo / line shapes (#1769)

  • Remove the force solid switching for geo / line shapes

remove selectionPageCenter (#1766)

  • [dev] Removes Editor.selectionPageCenter

rename selection page bounds (#1763)

  • [editor] rename selectedPageBounds to selectionPageBounds

ShapeUtil.getGeometry, selection rewrite (#1751)

  • [editor] Remove ShapeUtil.getBounds, ShapeUtil.getOutline, ShapeUtil.hitTestPoint, ShapeUtil.hitTestLineSegment
  • [editor] Add ShapeUtil.getGeometry
  • [editor] Add Editor.getShapeGeometry

Fix asset urls (#1758)

  • Fixed asset urls

[fix] arrow snapping bug (#1756)

  • [fix] arrow snapping

[fix] dark mode (#1754)

  • [fix] dark mode colors not updating

Remove helpers / extraneous API methods. (#1745)

  • [tldraw] rename useReadonly to useReadOnly
  • [editor] remove Editor.isDarkMode
  • [editor] remove Editor.isChangingStyle
  • [editor] remove Editor.isCoarsePointer
  • [editor] remove Editor.isDarkMode
  • [editor] remove Editor.isFocused
  • [editor] remove Editor.isGridMode
  • [editor] remove Editor.isPenMode
  • [editor] remove Editor.isReadOnly
  • [editor] remove Editor.isSnapMode
  • [editor] remove Editor.isToolLocked
  • [editor] remove Editor.locale
  • [editor] rename Editor.pageState to Editor.currentPageState
  • [editor] add Editor.pageStates
  • [editor] add Editor.setErasingIds
  • [editor] add Editor.setEditingId
  • [editor] add several new component overrides

fix: escape eraser tool on escape (#1732)

  • escape eraser tool on escape

fix: arrow label dark mode color (#1733)

  • fixed arrow label dark mode color

tldraw zero - package shuffle (#1710)

  • [@tldraw/editor] lots, wip
  • [@tldraw/ui] gone, merged to tldraw/tldraw
  • [@tldraw/polyfills] gone, merged to tldraw/editor
  • [@tldraw/primitives] gone, merged to tldraw/editor / tldraw/tldraw
  • [@tldraw/indices] gone, merged to tldraw/editor
  • [@tldraw/file-format] gone, merged to tldraw/tldraw

💥 Breaking Change

🚀 Enhancement

🐛 Bug Fix

🏠 Internal

🧪 Tests

Authors: 12


v2.0.0-alpha.13 (Wed Jun 28 2023)

Release Notes

ShapeUtil refactor, Editor cleanup (#1611)

  • [editor] renames defaultProps to getDefaultProps
  • [editor] removes outline, outlineSegments, handles, bounds
  • [editor] renames renderBackground to backgroundComponent

Revert "Update dependencies (#1613)" (#1617)

tldraw.css (#1607)

  • [tldraw] Removes editor.css and ui.css exports, replaces with tldraw.css

mini defineShape API (#1563)

[dev-facing, notes to come]

rename app to editor (#1503)

  • Rename App to Editor and many other things that reference app to editor.

[chore] refactor user preferences (#1435)

  • Add a brief release note for your PR here.

[refactor] restore createTLSchema (#1444)

  • [editor] Simplifies custom shape definition
  • [tldraw] Updates props for component to require a TldrawEditorConfig.

avoid lazy race conditions (#1364)

[internal only]


💥 Breaking Change

🐛 Bug Fix

⚠️ Pushed to main

🏠 Internal

🔩 Dependency Updates

Authors: 4


v2.0.0-alpha.12 (Mon Apr 03 2023)

🐛 Bug Fix

Authors: 3


@tldraw/ui

2.0.0-alpha.11

Patch Changes

  • fix some package build scripting
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.11
    • @tldraw/polyfills@2.0.0-alpha.10
    • @tldraw/tlsync-client@2.0.0-alpha.11
    • @tldraw/ui@2.0.0-alpha.11

2.0.0-alpha.10

Patch Changes

  • 4b4399b6e: redeploy with yarn to prevent package version issues
  • Updated dependencies [4b4399b6e]
    • @tldraw/polyfills@2.0.0-alpha.9
    • @tldraw/tlsync-client@2.0.0-alpha.10
    • @tldraw/ui@2.0.0-alpha.10
    • @tldraw/editor@2.0.0-alpha.10

2.0.0-alpha.9

Patch Changes

  • Release day!
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.9
    • @tldraw/polyfills@2.0.0-alpha.8
    • @tldraw/tlsync-client@2.0.0-alpha.9
    • @tldraw/ui@2.0.0-alpha.9

2.0.0-alpha.8

Patch Changes

  • Updated dependencies [23dd81cfe]
    • @tldraw/editor@2.0.0-alpha.8
    • @tldraw/tlsync-client@2.0.0-alpha.8
    • @tldraw/ui@2.0.0-alpha.8

2.0.0-alpha.7

Patch Changes

  • Bug fixes.
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.7
    • @tldraw/tlsync-client@2.0.0-alpha.7
    • @tldraw/ui@2.0.0-alpha.7

2.0.0-alpha.6

Patch Changes

  • Add licenses.
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.6
    • @tldraw/tlsync-client@2.0.0-alpha.6
    • @tldraw/ui@2.0.0-alpha.6

2.0.0-alpha.5

Patch Changes

  • Add CSS files to tldraw/tldraw.
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.5
    • @tldraw/tlsync-client@2.0.0-alpha.5
    • @tldraw/ui@2.0.0-alpha.5

2.0.0-alpha.4

Patch Changes

  • Add children to tldraw/tldraw
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.4
    • @tldraw/tlsync-client@2.0.0-alpha.4
    • @tldraw/ui@2.0.0-alpha.4

2.0.0-alpha.3

Patch Changes

  • Change permissions.
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.3
    • @tldraw/tlsync-client@2.0.0-alpha.3
    • @tldraw/ui@2.0.0-alpha.3

2.0.0-alpha.2

Patch Changes

  • Add tldraw, editor
  • Updated dependencies
    • @tldraw/editor@2.0.0-alpha.2
    • @tldraw/tlsync-client@2.0.0-alpha.2
    • @tldraw/ui@2.0.0-alpha.2

0.1.0-alpha.11

Patch Changes

  • Fix stale reactors.
  • Updated dependencies
    • @tldraw/primitives@0.1.0-alpha.11
    • @tldraw/tldraw-beta@0.1.0-alpha.11
    • @tldraw/tlsync-client@0.1.0-alpha.11
    • @tldraw/utils@0.1.0-alpha.11

0.1.0-alpha.10

Patch Changes

  • Fix type export bug.
  • Updated dependencies
    • @tldraw/primitives@0.1.0-alpha.10
    • @tldraw/tldraw-beta@0.1.0-alpha.10
    • @tldraw/tlsync-client@0.1.0-alpha.10
    • @tldraw/utils@0.1.0-alpha.10

0.1.0-alpha.9

Patch Changes

  • Fix import bugs.
  • Updated dependencies
    • @tldraw/primitives@0.1.0-alpha.9
    • @tldraw/tldraw-beta@0.1.0-alpha.9
    • @tldraw/tlsync-client@0.1.0-alpha.9
    • @tldraw/utils@0.1.0-alpha.9

0.1.0-alpha.8

Patch Changes

  • Changes validation requirements, exports validation helpers.
  • Updated dependencies
    • @tldraw/primitives@0.1.0-alpha.8
    • @tldraw/tldraw-beta@0.1.0-alpha.8
    • @tldraw/tlsync-client@0.1.0-alpha.8
    • @tldraw/utils@0.1.0-alpha.8

0.1.0-alpha.7

Patch Changes

    • Pre-pre-release update
  • Updated dependencies
    • @tldraw/primitives@0.1.0-alpha.7
    • @tldraw/tldraw-beta@0.1.0-alpha.7
    • @tldraw/tlsync-client@0.1.0-alpha.7
    • @tldraw/utils@0.1.0-alpha.7

0.0.2-alpha.1

Patch Changes

  • Fix error with HMR
  • Updated dependencies
    • @tldraw/primitives@0.0.2-alpha.1
    • @tldraw/tldraw-beta@0.0.2-alpha.1
    • @tldraw/tlsync-client@0.0.2-alpha.1
    • @tldraw/utils@0.0.2-alpha.1

0.0.2-alpha.0

Patch Changes

  • Initial release
  • Updated dependencies
    • @tldraw/primitives@0.0.2-alpha.0
    • @tldraw/tldraw-beta@0.0.2-alpha.0
    • @tldraw/tlsync-client@0.0.2-alpha.0
    • @tldraw/utils@0.0.2-alpha.0