UNPKG

@tldraw/tlschema

Version:

A tiny little drawing app (schema).

1,094 lines (653 loc) โ€ข 70.4 kB
# v3.12.0 (Tue Apr 15 2025) ### Release Notes #### a11y: announce shapes as they're visited ([#5773](https://github.com/tldraw/tldraw/pull/5773)) - a11y: announce shapes as they're visited #### Add Frame colors ([#5283](https://github.com/tldraw/tldraw/pull/5283)) - Added `FrameShapeUtil.options.showColors` option to display colors for frames. --- #### ๐Ÿ› Bug Fixes - Add Frame colors [#5283](https://github.com/tldraw/tldraw/pull/5283) ([@steveruizok](https://github.com/steveruizok) [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) [@SomeHats](https://github.com/SomeHats)) #### ๐ŸŽ‰ New Features - a11y: announce shapes as they're visited [#5773](https://github.com/tldraw/tldraw/pull/5773) ([@mimecuvalo](https://github.com/mimecuvalo)) #### Authors: 4 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v3.11.0 (Thu Mar 20 2025) ### Release Notes #### assets: be able to remove assets that are unused ([#5628](https://github.com/tldraw/tldraw/pull/5628)) - Cleanup assets from the local indexedDB that are proactively deleted. #### 'New user' -> 'Guest user' (dotcom only) ([#5614](https://github.com/tldraw/tldraw/pull/5614)) - Add a translation key 'people-menu.anonymous-user' with the default string 'New User' - BREAKING CHANGE: `editor.user.getName()` no longer returns `'New user'` if the user has no name set. Instead it returns the empty string `''`. - BREAKING CHANGE: `defaultUserPreferences.name` is no longer the string `'New user'`, it is now the empty string `''` --- #### ๐Ÿ› Bug Fix - upgrade yarn to 4.7 [#5687](https://github.com/tldraw/tldraw/pull/5687) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ’„ Product Improvements - assets: be able to remove assets that are unused [#5628](https://github.com/tldraw/tldraw/pull/5628) ([@mimecuvalo](https://github.com/mimecuvalo)) - 'New user' -> 'Guest user' (dotcom only) [#5614](https://github.com/tldraw/tldraw/pull/5614) ([@ds300](https://github.com/ds300)) #### Authors: 3 - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) --- # v3.10.0 (Tue Mar 11 2025) ### Release Notes #### [feature] add rich text and contextual toolbar ([#4895](https://github.com/tldraw/tldraw/pull/4895)) - Rich text using ProseMirror as a first-class supported option in the Editor. --- #### ๐Ÿ› Bug Fix - CTA analytics [#5542](https://github.com/tldraw/tldraw/pull/5542) ([@TodePond](https://github.com/TodePond)) #### ๐ŸŽ‰ New Features - [feature] add rich text and contextual toolbar [#4895](https://github.com/tldraw/tldraw/pull/4895) ([@mimecuvalo](https://github.com/mimecuvalo) [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) [@SomeHats](https://github.com/SomeHats) [@ds300](https://github.com/ds300) [@steveruizok](https://github.com/steveruizok)) #### Authors: 6 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v3.9.0 (Mon Mar 03 2025) #### ๐Ÿ› Bug Fix - Update discord links [#5500](https://github.com/tldraw/tldraw/pull/5500) ([@SomeHats](https://github.com/SomeHats) [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) [@steveruizok](https://github.com/steveruizok) [@TodePond](https://github.com/TodePond)) #### Authors: 4 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v3.8.0 (Wed Feb 12 2025) ### Release Notes #### support react 19 ([#5293](https://github.com/tldraw/tldraw/pull/5293)) - tldraw now supports react 19 #### Add an onCrop handler to ShapeUtil ([#5137](https://github.com/tldraw/tldraw/pull/5137)) - Add support for an onCrop handler on shape utils that allows you to prevent or modify the crop. - The `TLImageShapeCrop` type has been replaced by `TLShapeCrop`. #### Asset uploads ([#5218](https://github.com/tldraw/tldraw/pull/5218)) **Breaking change** - `@tldraw/tlschema`: `TLAssetStore.upload` used to return just the `src` of the uploaded asset. It now returns `{src: string, meta?: JsonObject}`. The returned metadata will be added to the asset record and thus allows the users to add some additional data to them when uploading. - `@tldraw/editor`: `Editor.uploadAsset` used to return `Promise<string>` and now returns `Promise<{ src: string; meta?: JsonObject }> ` #### Exports DX pass ([#5114](https://github.com/tldraw/tldraw/pull/5114)) #### Breaking changes / user facing changes - The copy/export as JSON option has been removed. Data copied/exported from here could not be used anyway. If you need this in your app, look into `Editor.getContentFromCurrentPage`. - `useImageOrVideoAssetUrl` now expects a `width` parameter representing the rendered width of the asset. - `Editor.getSvgElement` and `Editor.getSvgString` will now export all shapes on the current page instead of returning undefined when passed an empty array of shape ids. #### Product improvement - When exporting to an image, image assets are now downloaded at a resolution appropriate for how they will appear in the export. #### API changes - There's a new `Editor.toImage` method that makes creating an image from your canvas easier. (`exportToBlob` is deprecated in favour of it) - `SvgExportContext` now exposes the `scale` and `pixelRatio` options of the current export - `SvgExportContext` now has a `resolveAssetUrl` method to resolve an asset at a resolution appropriate for the export. - `copyAs(editor, ids, format, opts)` has been deprecated in favour of `copyAs(editor, ids, opts)`. - `exportAs(editor, ids, format, name, opts)` has been deprecated in favour of `exportAs(editor, ids, opts)` #### i18n: augment the list so that we hit the top 40 languages ([#5208](https://github.com/tldraw/tldraw/pull/5208)) - i18n: add top 40 languages into the list --- #### ๐Ÿ› Bug Fixes - i18n: rename two locale codes [#5212](https://github.com/tldraw/tldraw/pull/5212) ([@mimecuvalo](https://github.com/mimecuvalo)) #### ๐Ÿ’„ Product Improvements - support react 19 [#5293](https://github.com/tldraw/tldraw/pull/5293) ([@SomeHats](https://github.com/SomeHats) [@mimecuvalo](https://github.com/mimecuvalo) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - Asset uploads [#5218](https://github.com/tldraw/tldraw/pull/5218) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### ๐ŸŽ‰ New Features - i18n: augment the list so that we hit the top 40 languages [#5208](https://github.com/tldraw/tldraw/pull/5208) ([@mimecuvalo](https://github.com/mimecuvalo)) #### ๐Ÿ› ๏ธ API Changes - Add an onCrop handler to ShapeUtil [#5137](https://github.com/tldraw/tldraw/pull/5137) ([@trygve-aaberge-adsk](https://github.com/trygve-aaberge-adsk) [@mimecuvalo](https://github.com/mimecuvalo)) - Exports DX pass [#5114](https://github.com/tldraw/tldraw/pull/5114) ([@SomeHats](https://github.com/SomeHats)) #### Authors: 5 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Trygve Aaberge ([@trygve-aaberge-adsk](https://github.com/trygve-aaberge-adsk)) --- # v3.7.0 (Tue Jan 07 2025) ### Release Notes #### custom sync presence ([#5071](https://github.com/tldraw/tldraw/pull/5071)) - It's now possible to customise what presence data is synced between clients, or disable presence syncing entirely. --- #### ๐Ÿ› Bug Fix - [botcom] slurp local files on sign in [#5059](https://github.com/tldraw/tldraw/pull/5059) ([@ds300](https://github.com/ds300)) #### ๐Ÿ› ๏ธ API Changes - custom sync presence [#5071](https://github.com/tldraw/tldraw/pull/5071) ([@SomeHats](https://github.com/SomeHats)) #### Authors: 2 - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) --- # v3.6.0 (Wed Dec 04 2024) ### Release Notes #### Create a utility type for making undefined properties optional ([#5055](https://github.com/tldraw/tldraw/pull/5055)) - Expose a utility type for making undefined properties optional --- #### ๐Ÿ› Bug Fix - Create a utility type for making undefined properties optional [#5055](https://github.com/tldraw/tldraw/pull/5055) ([@trygve-aaberge-adsk](https://github.com/trygve-aaberge-adsk) [@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ› Bug Fixes - Fix an issue with drag and dropping the files [#5013](https://github.com/tldraw/tldraw/pull/5013) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### Authors: 3 - alex ([@SomeHats](https://github.com/SomeHats)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Trygve Aaberge ([@trygve-aaberge-adsk](https://github.com/trygve-aaberge-adsk)) --- # v3.5.0 (Tue Nov 26 2024) #### ๐Ÿ’„ Product Improvements - Lokalise: Translations update [#4947](https://github.com/tldraw/tldraw/pull/4947) ([@TodePond](https://github.com/TodePond) [@mimecuvalo](https://github.com/mimecuvalo)) #### Authors: 2 - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) --- # v3.4.0 (Thu Oct 24 2024) ### Release Notes #### npm: upgrade eslint v8 โ†’ v9 ([#4757](https://github.com/tldraw/tldraw/pull/4757)) - Upgrade eslint v8 โ†’ v9 #### Add labelColor for notes. ([#4724](https://github.com/tldraw/tldraw/pull/4724)) - Adds `labelColor` for Note shapes. --- #### ๐Ÿ› Bug Fix - roll back changes from bad deploy [#4780](https://github.com/tldraw/tldraw/pull/4780) ([@SomeHats](https://github.com/SomeHats)) - Update CHANGELOG.md \[skip ci\] ([@huppy-bot[bot]](https://github.com/huppy-bot[bot])) #### ๐Ÿ’„ Product Improvements - npm: upgrade eslint v8 โ†’ v9 [#4757](https://github.com/tldraw/tldraw/pull/4757) ([@mimecuvalo](https://github.com/mimecuvalo) [@SomeHats](https://github.com/SomeHats) [@ds300](https://github.com/ds300) [@MitjaBezensek](https://github.com/MitjaBezensek) [@steveruizok](https://github.com/steveruizok)) #### ๐ŸŽ‰ New Features - Add labelColor for notes. [#4724](https://github.com/tldraw/tldraw/pull/4724) ([@steveruizok](https://github.com/steveruizok)) #### Authors: 6 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v3.3.0 (Wed Oct 09 2024) ### Release Notes #### [sync] Set instance.isReadonly automatically ([#4673](https://github.com/tldraw/tldraw/pull/4673)) - Puts the editor into readonly mode automatically when the tlsync server responds in readonly mode. - Adds the `editor.getIsReadonly()` method. - Fixes a bug where arrow labels could be edited in readonly mode. #### Disable debug mode in development by default ([#4629](https://github.com/tldraw/tldraw/pull/4629)) - Turns off debug mode by default in local development. --- #### ๐Ÿ› Bug Fix - Disable debug mode in development by default [#4629](https://github.com/tldraw/tldraw/pull/4629) ([@ds300](https://github.com/ds300)) #### ๐Ÿ’„ Product Improvements - [sync] Set instance.isReadonly automatically [#4673](https://github.com/tldraw/tldraw/pull/4673) ([@ds300](https://github.com/ds300)) #### Authors: 1 - David Sheldrick ([@ds300](https://github.com/ds300)) --- # v3.1.0 (Wed Sep 25 2024) #### ๐Ÿ› Bug Fix - npm: make our React packages consistent [#4547](https://github.com/tldraw/tldraw/pull/4547) ([@mimecuvalo](https://github.com/mimecuvalo) [@MitjaBezensek](https://github.com/MitjaBezensek)) - docs: cleanup/add readmes/licenses [#4542](https://github.com/tldraw/tldraw/pull/4542) ([@mimecuvalo](https://github.com/mimecuvalo) [@steveruizok](https://github.com/steveruizok) [@MitjaBezensek](https://github.com/MitjaBezensek) [@SomeHats](https://github.com/SomeHats)) - Clean up `apps` directory [#4548](https://github.com/tldraw/tldraw/pull/4548) ([@SomeHats](https://github.com/SomeHats)) - licenses: add MIT and update GB ones to match US [#4517](https://github.com/tldraw/tldraw/pull/4517) ([@mimecuvalo](https://github.com/mimecuvalo)) #### Authors: 4 - alex ([@SomeHats](https://github.com/SomeHats)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v3.0.0 (Fri Sep 13 2024) ### Release Notes #### Detect multiple installed versions of tldraw packages ([#4398](https://github.com/tldraw/tldraw/pull/4398)) - We detect when there are multiple versions of tldraw installed and let you know, as this can cause bugs in your application #### [api] Widen snapshots pit of success ([#4392](https://github.com/tldraw/tldraw/pull/4392)) - Improved loadSnapshot to preserve page state like camera position and current page if no session snapshot is provided. #### Custom embeds API ([#4326](https://github.com/tldraw/tldraw/pull/4326)) Adds the ability to customize the embeds that are supported. You can now customize or reorder the existing embeds, as well as add completely new ones. #### Rename `StoreOptions.multiplayerStatus` ([#4349](https://github.com/tldraw/tldraw/pull/4349)) - Renames `StoreOptions.multiplayerStatus` to `StoreOptions.collaboration.status`. #### remove onEditorMount prop ([#4320](https://github.com/tldraw/tldraw/pull/4320)) - **Breaking:** the `onEditorMount` option to `createTLStore` is now called `onMount` #### Move from function properties to methods ([#4288](https://github.com/tldraw/tldraw/pull/4288)) - Adds eslint rules for enforcing the use of methods instead of function properties and fixes / disables all the resulting errors. --- #### ๐Ÿ› Bug Fix - [SORRY, PLEASE MERGE] 3.0 megabus [#4494](https://github.com/tldraw/tldraw/pull/4494) ([@SomeHats](https://github.com/SomeHats) [@steveruizok](https://github.com/steveruizok) [@ds300](https://github.com/ds300)) - consistent function style [#4468](https://github.com/tldraw/tldraw/pull/4468) ([@SomeHats](https://github.com/SomeHats)) - Update READMEs. [#4377](https://github.com/tldraw/tldraw/pull/4377) ([@steveruizok](https://github.com/steveruizok)) - Fix some broken links in the docs [#4340](https://github.com/tldraw/tldraw/pull/4340) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ’„ Product Improvements - inline nanoid [#4410](https://github.com/tldraw/tldraw/pull/4410) ([@SomeHats](https://github.com/SomeHats)) - [api] Widen snapshots pit of success [#4392](https://github.com/tldraw/tldraw/pull/4392) ([@ds300](https://github.com/ds300)) #### ๐ŸŽ‰ New Features - Custom embeds API [#4326](https://github.com/tldraw/tldraw/pull/4326) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### ๐Ÿ› ๏ธ API Changes - Detect multiple installed versions of tldraw packages [#4398](https://github.com/tldraw/tldraw/pull/4398) ([@SomeHats](https://github.com/SomeHats)) - Rename `StoreOptions.multiplayerStatus` [#4349](https://github.com/tldraw/tldraw/pull/4349) ([@steveruizok](https://github.com/steveruizok)) - remove onEditorMount prop [#4320](https://github.com/tldraw/tldraw/pull/4320) ([@SomeHats](https://github.com/SomeHats)) - Move from function properties to methods [#4288](https://github.com/tldraw/tldraw/pull/4288) ([@ds300](https://github.com/ds300) [@MitjaBezensek](https://github.com/MitjaBezensek) [@steveruizok](https://github.com/steveruizok)) #### Authors: 4 - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.4.0 (Mon Jul 22 2024) ### Release Notes #### Finesse sync api ([#4212](https://github.com/tldraw/tldraw/pull/4212)) - Fixed a bug withโ€ฆ #### Make asset.fileSize optional ([#4206](https://github.com/tldraw/tldraw/pull/4206)) - Made the `fileSize` property of `TLImageAsset` and `TLVideoAsset` optional #### Explicitly type shape props and defaults ([#4191](https://github.com/tldraw/tldraw/pull/4191)) - Explicitly declare type types of default shapes etc. and shape props for better documentation #### [1/4] Blob storage in TLStore ([#4068](https://github.com/tldraw/tldraw/pull/4068)) Introduce a new `assets` option for the store, describing how to save and retrieve asset blobs like images & videos from e.g. a user-content CDN. These are accessible through `editor.uploadAsset` and `editor.resolveAssetUrl`. This supplements the existing `registerExternalAssetHandler` API: `registerExternalAssetHandler` is for customising metadata extraction, and should call `editor.uploadAsset` to save assets. Existing `registerExternalAssetHandler` calls will still work, but if you're only using them to configure uploads and don't want to customise metadata extraction, consider switching to the new `assets` store prop. #### Flip images ([#4113](https://github.com/tldraw/tldraw/pull/4113)) - Adds the ability to flip images. #### Make arrow sequence not retroactive ([#4090](https://github.com/tldraw/tldraw/pull/4090)) - Fixed a bug with... #### Add `setDefaultValue` to `StyleProp` ([#4044](https://github.com/tldraw/tldraw/pull/4044)) - Adds a method for changing the default style of a `StyleProp` instance. --- #### ๐Ÿ› Bug Fix - Cloudflare sync template [#4179](https://github.com/tldraw/tldraw/pull/4179) ([@SomeHats](https://github.com/SomeHats)) - Demo server bookmark unfurl endpoint [#4062](https://github.com/tldraw/tldraw/pull/4062) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ› Bug Fixes - Make arrow sequence not retroactive [#4090](https://github.com/tldraw/tldraw/pull/4090) ([@ds300](https://github.com/ds300)) #### ๐Ÿ’„ Product Improvements - [3/5] Automatically enable multiplayer UI when using demo sync [#4119](https://github.com/tldraw/tldraw/pull/4119) ([@SomeHats](https://github.com/SomeHats)) - Flip images [#4113](https://github.com/tldraw/tldraw/pull/4113) ([@steveruizok](https://github.com/steveruizok)) #### ๐ŸŽ‰ New Features - Add `setDefaultValue` to `StyleProp` [#4044](https://github.com/tldraw/tldraw/pull/4044) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ› ๏ธ API Changes - Finesse sync api [#4212](https://github.com/tldraw/tldraw/pull/4212) ([@ds300](https://github.com/ds300)) - Make asset.fileSize optional [#4206](https://github.com/tldraw/tldraw/pull/4206) ([@steveruizok](https://github.com/steveruizok)) - Explicitly type shape props and defaults [#4191](https://github.com/tldraw/tldraw/pull/4191) ([@SomeHats](https://github.com/SomeHats)) - [2/4] Rename sync hooks, add bookmarks to demo [#4094](https://github.com/tldraw/tldraw/pull/4094) ([@SomeHats](https://github.com/SomeHats)) - [1/4] Blob storage in TLStore [#4068](https://github.com/tldraw/tldraw/pull/4068) ([@SomeHats](https://github.com/SomeHats)) #### Authors: 3 - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.3.0 (Tue Jun 25 2024) ### Release Notes #### Dynamic size mode + fill fill ([#3835](https://github.com/tldraw/tldraw/pull/3835)) - Adds a dynamic size user preferences. - Removes double click to reset scale on text shapes. - Removes double click to reset autosize on text shapes. #### assets: make option to transform urls dynamically / LOD ([#3827](https://github.com/tldraw/tldraw/pull/3827)) - Assets: make option to transform urls dynamically to provide different sized images on demand. --- #### ๐Ÿ“š SDK Changes - Dynamic size mode + fill fill [#3835](https://github.com/tldraw/tldraw/pull/3835) ([@steveruizok](https://github.com/steveruizok) [@Taha-Hassan-Git](https://github.com/Taha-Hassan-Git) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - assets: make option to transform urls dynamically / LOD [#3827](https://github.com/tldraw/tldraw/pull/3827) ([@mimecuvalo](https://github.com/mimecuvalo)) #### Authors: 4 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) - Taha ([@Taha-Hassan-Git](https://github.com/Taha-Hassan-Git)) --- # v2.2.0 (Tue Jun 11 2024) ### Release Notes #### bookmark: fix up double request and rework extractor ([#3856](https://github.com/tldraw/tldraw/pull/3856)) - Bookmarks: fix up double request and rework extractor code. #### Snapshots pit of success ([#3811](https://github.com/tldraw/tldraw/pull/3811)) - Add a brief release note for your PR here. #### Add heart geo shape ([#3787](https://github.com/tldraw/tldraw/pull/3787)) - Adds a heart shape to the geo shape set. #### rework canBind callback ([#3797](https://github.com/tldraw/tldraw/pull/3797)) #### Breaking changes The `canBind` flag now accepts an options object instead of just the shape in question. If you're relying on its arguments, you need to change from `canBind(shape) {}` to `canBind({shape}) {}`. #### Bindings ([#3326](https://github.com/tldraw/tldraw/pull/3326)) #### Breaking changes - The `start` and `end` properties on `TLArrowShape` no longer have `type: point | binding`. Instead, they're always a point, which may be out of date if a binding exists. To check for & retrieve arrow bindings, use `getArrowBindings(editor, shape)` instead. - `getArrowTerminalsInArrowSpace` must be passed a `TLArrowBindings` as a third argument: `getArrowTerminalsInArrowSpace(editor, shape, getArrowBindings(editor, shape))` - The following types have been renamed: - `ShapeProps` -> `RecordProps` - `ShapePropsType` -> `RecordPropsType` - `TLShapePropsMigrations` -> `TLPropsMigrations` - `SchemaShapeInfo` -> `SchemaPropsInfo` #### Camera options ([#3282](https://github.com/tldraw/tldraw/pull/3282)) - SDK: Adds camera options. #### embed: allow embeds like YouTube to link back to its site ([#3609](https://github.com/tldraw/tldraw/pull/3609)) - Embeds: fix being able to click on links that go back to the embed's site (e.g. YouTube) #### Separate text-align property for shapes ([#3627](https://github.com/tldraw/tldraw/pull/3627)) - Separates the text align property for text shapes and labels. #### Add desmos graph embed type ([#3608](https://github.com/tldraw/tldraw/pull/3608)) - (feature) add desmos embed #### Expose migrations, validators, and versions from tlschema ([#3613](https://github.com/tldraw/tldraw/pull/3613)) Previously, we weren't exporting migrations & validators for our default shapes. This meant that it wasn't possible to make your own tlschema with both our default shapes and some of your own (e.g. for custom multiplayer). This fixes that by exposing all the migrations, validators, and versions from tlschema, plus `defaultShapeSchemas` which can be passed directly to `createTLSchema` #### fix migration exports ([#3586](https://github.com/tldraw/tldraw/pull/3586)) - Expose `createShapePropsMigrationIds`, `defaultEditorAssetUrls`, `PORTRAIT_BREAKPOINT`, `useDefaultColorTheme`, & `getPerfectDashProps` --- #### ๐Ÿ› Bug Fix - Lokalise: Translations update [#3649](https://github.com/tldraw/tldraw/pull/3649) ([@TodePond](https://github.com/TodePond)) #### ๐Ÿ“š SDK Changes - Snapshots pit of success [#3811](https://github.com/tldraw/tldraw/pull/3811) ([@ds300](https://github.com/ds300)) - Add heart geo shape [#3787](https://github.com/tldraw/tldraw/pull/3787) ([@steveruizok](https://github.com/steveruizok)) - rework canBind callback [#3797](https://github.com/tldraw/tldraw/pull/3797) ([@SomeHats](https://github.com/SomeHats)) - Force `interface` instead of `type` for better docs [#3815](https://github.com/tldraw/tldraw/pull/3815) ([@SomeHats](https://github.com/SomeHats)) - Bindings [#3326](https://github.com/tldraw/tldraw/pull/3326) ([@SomeHats](https://github.com/SomeHats)) - Camera options [#3282](https://github.com/tldraw/tldraw/pull/3282) ([@MitjaBezensek](https://github.com/MitjaBezensek) [@steveruizok](https://github.com/steveruizok)) - embed: allow embeds like YouTube to link back to its site [#3609](https://github.com/tldraw/tldraw/pull/3609) ([@mimecuvalo](https://github.com/mimecuvalo) [@steveruizok](https://github.com/steveruizok)) - Separate text-align property for shapes [#3627](https://github.com/tldraw/tldraw/pull/3627) ([@steveruizok](https://github.com/steveruizok) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - Expose migrations, validators, and versions from tlschema [#3613](https://github.com/tldraw/tldraw/pull/3613) ([@SomeHats](https://github.com/SomeHats)) - Automatic undo/redo [#3364](https://github.com/tldraw/tldraw/pull/3364) ([@SomeHats](https://github.com/SomeHats)) - fix migration exports [#3586](https://github.com/tldraw/tldraw/pull/3586) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ–ฅ๏ธ tldraw.com Changes - bookmark: fix up double request and rework extractor [#3856](https://github.com/tldraw/tldraw/pull/3856) ([@mimecuvalo](https://github.com/mimecuvalo) [@steveruizok](https://github.com/steveruizok)) - Add desmos graph embed type [#3608](https://github.com/tldraw/tldraw/pull/3608) ([@not-first](https://github.com/not-first) [@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ“– Documentation changes - make sure everything marked @public gets documented [#3892](https://github.com/tldraw/tldraw/pull/3892) ([@SomeHats](https://github.com/SomeHats)) - Bindings documentation [#3812](https://github.com/tldraw/tldraw/pull/3812) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ  Internal - Update READMEs, add form link [#3741](https://github.com/tldraw/tldraw/pull/3741) ([@steveruizok](https://github.com/steveruizok)) - Don't check api.json files into git [#3565](https://github.com/tldraw/tldraw/pull/3565) ([@SomeHats](https://github.com/SomeHats)) #### Authors: 8 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - fakerr ([@not-first](https://github.com/not-first)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.1.0 (Tue Apr 23 2024) ### Release Notes #### Color tweaks (light and dark mode) ([#3486](https://github.com/tldraw/tldraw/pull/3486)) - Adjusts colors #### New migrations again ([#3220](https://github.com/tldraw/tldraw/pull/3220)) #### BREAKING CHANGES - The `Migrations` type is now called `LegacyMigrations`. - The serialized schema format (e.g. returned by `StoreSchema.serialize()` and `Store.getSnapshot()`) has changed. You don't need to do anything about it unless you were reading data directly from the schema for some reason. In which case it'd be best to avoid that in the future! We have no plans to change the schema format again (this time was traumatic enough) but you never know. - `compareRecordVersions` and the `RecordVersion` type have both disappeared. There is no replacement. These were public by mistake anyway, so hopefully nobody had been using it. - `compareSchemas` is gone. Comparing the schemas directly is no longer really possible since we introduced some fuzziness. The best thing to do now to check compatibility is to call `schema.getMigraitonsSince(prevSchema)` and it will return an error if the schemas are not compatible, an empty array if there are no migrations to apply since the prev schema, and a nonempty array otherwise. Generally speaking, the best way to check schema compatibility now is to call `store.schema.getMigrationsSince(persistedSchema)`. This will throw an error if there is no upgrade path from the `persistedSchema` to the current version. - `defineMigrations` has been deprecated and will be removed in a future release. For upgrade instructions see https://tldraw.dev/docs/persistence#Updating-legacy-shape-migrations-defineMigrations - `migrate` has been removed. Nobody should have been using this but if you were you'll need to find an alternative. For migrating tldraw data, you should stick to using `schema.migrateStoreSnapshot` and, if you are building a nuanced sync engine that supports some amount of backwards compatibility, also feel free to use `schema.migratePersistedRecord`. - the `Migration` type has changed. If you need the old one for some reason it has been renamed to `LegacyMigration`. It will be removed in a future release. - the `Migrations` type has been renamed to `LegacyMigrations` and will be removed in a future release. - the `SerializedSchema` type has been augmented. If you need the old version specifically you can use `SerializedSchemaV1` #### Stickies: release candidate ([#3249](https://github.com/tldraw/tldraw/pull/3249)) - Improves sticky notes (see list) #### Add white ([#3321](https://github.com/tldraw/tldraw/pull/3321)) - Adds secret white color. --- #### ๐Ÿ“š SDK Changes - Color tweaks (light and dark mode) [#3486](https://github.com/tldraw/tldraw/pull/3486) ([@steveruizok](https://github.com/steveruizok) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - New migrations again [#3220](https://github.com/tldraw/tldraw/pull/3220) ([@ds300](https://github.com/ds300) [@steveruizok](https://github.com/steveruizok)) - Stickies: release candidate [#3249](https://github.com/tldraw/tldraw/pull/3249) ([@steveruizok](https://github.com/steveruizok) [@mimecuvalo](https://github.com/mimecuvalo) [@TodePond](https://github.com/TodePond) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - Add white migration [#3334](https://github.com/tldraw/tldraw/pull/3334) ([@steveruizok](https://github.com/steveruizok)) - Add white [#3321](https://github.com/tldraw/tldraw/pull/3321) ([@steveruizok](https://github.com/steveruizok)) - use native structuredClone on node, cloudflare workers, and in tests [#3166](https://github.com/tldraw/tldraw/pull/3166) ([@si14](https://github.com/si14)) #### ๐Ÿ  Internal - Display none for culled shapes [#3291](https://github.com/tldraw/tldraw/pull/3291) ([@MitjaBezensek](https://github.com/MitjaBezensek) [@steveruizok](https://github.com/steveruizok)) - Remove dependabot config since it only controls version updates? [#3057](https://github.com/tldraw/tldraw/pull/3057) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### ๐Ÿงช Tests - [fix] Routes check on e2e tests [#3022](https://github.com/tldraw/tldraw/pull/3022) ([@steveruizok](https://github.com/steveruizok)) #### Authors: 7 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - Dan Groshev ([@si14](https://github.com/si14)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-beta.5 (Thu Feb 29 2024) ### Release Notes #### Setup papercuts ([#2987](https://github.com/tldraw/tldraw/pull/2987)) - Add a brief release note for your PR here. #### fix structured clone reference in drawing ([#2945](https://github.com/tldraw/tldraw/pull/2945)) - Fixes a reference to structuredClone that caused a crash on older browsers. --- #### ๐Ÿ› Bug Fix - Setup papercuts [#2987](https://github.com/tldraw/tldraw/pull/2987) ([@ds300](https://github.com/ds300)) - Prevent iframe embedding for dotcom (except on tldraw.com) [#2947](https://github.com/tldraw/tldraw/pull/2947) ([@steveruizok](https://github.com/steveruizok)) - fix structured clone reference in drawing [#2945](https://github.com/tldraw/tldraw/pull/2945) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ”ฉ Dependency Updates - bump typescript / api-extractor [#2949](https://github.com/tldraw/tldraw/pull/2949) ([@steveruizok](https://github.com/steveruizok)) #### Authors: 2 - David Sheldrick ([@ds300](https://github.com/ds300)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-beta.4 (Wed Feb 21 2024) ### Release Notes #### Faster validations + record reference stability at the same time ([#2848](https://github.com/tldraw/tldraw/pull/2848)) - Add a brief release note for your PR here. #### [Snapping 2/5] Fix line-handle mid-point snapping ([#2831](https://github.com/tldraw/tldraw/pull/2831)) - Simplify the contents of `TLLineShape.props.handles` --- #### ๐Ÿ’ฅ Breaking Change - Add line IDs & fractional indexes [#2890](https://github.com/tldraw/tldraw/pull/2890) ([@SomeHats](https://github.com/SomeHats)) - [Snapping 2/5] Fix line-handle mid-point snapping [#2831](https://github.com/tldraw/tldraw/pull/2831) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿš€ Enhancement - [handles] Line shape handles -> points [#2856](https://github.com/tldraw/tldraw/pull/2856) ([@steveruizok](https://github.com/steveruizok)) - Lokalise: Translations update [#2830](https://github.com/tldraw/tldraw/pull/2830) ([@TodePond](https://github.com/TodePond) [@MitjaBezensek](https://github.com/MitjaBezensek)) #### ๐Ÿ› Bug Fix - Faster validations + record reference stability at the same time [#2848](https://github.com/tldraw/tldraw/pull/2848) ([@ds300](https://github.com/ds300)) - [Snapping 1/5] Validation & strict types for fractional indexes [#2827](https://github.com/tldraw/tldraw/pull/2827) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ  Internal - Check tsconfig "references" arrays [#2891](https://github.com/tldraw/tldraw/pull/2891) ([@ds300](https://github.com/ds300)) - dev: swap yarn test and test-dev for better dx [#2773](https://github.com/tldraw/tldraw/pull/2773) ([@mimecuvalo](https://github.com/mimecuvalo)) #### Authors: 6 - alex ([@SomeHats](https://github.com/SomeHats)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-beta.3 (Tue Feb 13 2024) ### Release Notes #### i18n: add HR ๐Ÿ‡ญ๐Ÿ‡ท ([#2778](https://github.com/tldraw/tldraw/pull/2778)) - i18n: add Croatian / Hrvatski. #### arrows: separate out handle behavior from labels ([#2621](https://github.com/tldraw/tldraw/pull/2621)) - Arrow labels: provide more polish on label placement #### dev: add test-dev command for easier testing of packages ([#2627](https://github.com/tldraw/tldraw/pull/2627)) - Adds easier testing command for individual packages. #### Improved duplication ([#2480](https://github.com/tldraw/tldraw/pull/2480)) - Add a brief release note for your PR here. #### i18n: sort languages by name, not by locale code ([#2625](https://github.com/tldraw/tldraw/pull/2625)) - Sorts the locale list by locale name, not code. #### arrows: add ability to change label placement ([#2557](https://github.com/tldraw/tldraw/pull/2557)) - Adds ability to change label position on arrows. #### [hot take] Make dark mode colours pop more ([#2478](https://github.com/tldraw/tldraw/pull/2478)) - Tweaked dark mode colour styles to make them pop more. #### [fix] disable vertical edge resizing for text on mobile ([#2456](https://github.com/tldraw/tldraw/pull/2456)) - Add a brief release note for your PR here. #### [Minor] change Simplified Chinese label to Chinese ([#2434](https://github.com/tldraw/tldraw/pull/2434)) - Changed the label for the Simplified Chinese language from `Chinese - Simplified` to `็ฎ€ไฝ“ไธญๆ–‡`, following the convention of other languages. - Updated the API and relevant documentation through build scripts. #### [improvement] account for coarse pointers / insets in edge scrolling ([#2401](https://github.com/tldraw/tldraw/pull/2401)) - Add `instanceState.insets` to track which edges of the component are inset from the edges of the document body. - Improve behavior around edge scrolling --- #### ๐Ÿš€ Enhancement - [dx] use Biome instead of Prettier, part 2 [#2731](https://github.com/tldraw/tldraw/pull/2731) ([@si14](https://github.com/si14)) - [dx] use Biome instead of Prettier, part 1 [#2729](https://github.com/tldraw/tldraw/pull/2729) ([@si14](https://github.com/si14)) - Improved duplication [#2480](https://github.com/tldraw/tldraw/pull/2480) ([@Taha-Hassan-Git](https://github.com/Taha-Hassan-Git) [@MitjaBezensek](https://github.com/MitjaBezensek) [@ds300](https://github.com/ds300) [@steveruizok](https://github.com/steveruizok)) - arrows: add ability to change label placement [#2557](https://github.com/tldraw/tldraw/pull/2557) ([@mimecuvalo](https://github.com/mimecuvalo) [@steveruizok](https://github.com/steveruizok) [@SomeHats](https://github.com/SomeHats)) - [improvement] account for coarse pointers / insets in edge scrolling [#2401](https://github.com/tldraw/tldraw/pull/2401) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ› Bug Fix - i18n: add HR ๐Ÿ‡ญ๐Ÿ‡ท [#2778](https://github.com/tldraw/tldraw/pull/2778) ([@mimecuvalo](https://github.com/mimecuvalo)) - arrows: separate out handle behavior from labels [#2621](https://github.com/tldraw/tldraw/pull/2621) ([@mimecuvalo](https://github.com/mimecuvalo) [@steveruizok](https://github.com/steveruizok)) - i18n: sort languages by name, not by locale code [#2625](https://github.com/tldraw/tldraw/pull/2625) ([@mimecuvalo](https://github.com/mimecuvalo)) - Make sure correct dark mode colours get used in exports [#2492](https://github.com/tldraw/tldraw/pull/2492) ([@SomeHats](https://github.com/SomeHats) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - [hot take] Make dark mode colours pop more [#2478](https://github.com/tldraw/tldraw/pull/2478) ([@TodePond](https://github.com/TodePond) [@huppy-bot[bot]](https://github.com/huppy-bot[bot])) - [fix] disable vertical edge resizing for text on mobile [#2456](https://github.com/tldraw/tldraw/pull/2456) ([@mimecuvalo](https://github.com/mimecuvalo)) - [Minor] change Simplified Chinese label to Chinese [#2434](https://github.com/tldraw/tldraw/pull/2434) ([@peilingjiang](https://github.com/peilingjiang)) #### ๐Ÿ  Internal - Unbiome [#2776](https://github.com/tldraw/tldraw/pull/2776) ([@si14](https://github.com/si14)) - Update the project to Node 20 [#2691](https://github.com/tldraw/tldraw/pull/2691) ([@si14](https://github.com/si14)) - make CI check for yarn install warnings and fix the peer deps ones we have [#2683](https://github.com/tldraw/tldraw/pull/2683) ([@si14](https://github.com/si14)) - dev: add test-dev command for easier testing of packages [#2627](https://github.com/tldraw/tldraw/pull/2627) ([@mimecuvalo](https://github.com/mimecuvalo)) - Add docs [#2470](https://github.com/tldraw/tldraw/pull/2470) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ”ฉ Dependency Updates - Bump Yarn to 4.0.2 and add version constraints [#2481](https://github.com/tldraw/tldraw/pull/2481) ([@si14](https://github.com/si14)) #### Authors: 10 - [@huppy-bot[bot]](https://github.com/huppy-bot[bot]) - alex ([@SomeHats](https://github.com/SomeHats)) - Dan Groshev ([@si14](https://github.com/si14)) - David Sheldrick ([@ds300](https://github.com/ds300)) - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Mime ฤŒuvalo ([@mimecuvalo](https://github.com/mimecuvalo)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Peiling Jiang ([@peilingjiang](https://github.com/peilingjiang)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) - Taha ([@Taha-Hassan-Git](https://github.com/Taha-Hassan-Git)) --- # v2.0.0-beta.2 (Wed Jan 10 2024) ### Release Notes #### Fix validation when pasting images. ([#2436](https://github.com/tldraw/tldraw/pull/2436)) - Fixes url validations. #### Add url validation ([#2428](https://github.com/tldraw/tldraw/pull/2428)) - Add validation to urls. #### [tech debt] Primitives renaming party / cleanup ([#2396](https://github.com/tldraw/tldraw/pull/2396)) - renames Vec2d to Vec - renames Vec2dModel to VecModel - renames Box2d to Box - renames Box2dModel to BoxModel - renames Matrix2d to Mat - renames Matrix2dModel to MatModel - removes unused primitive helpers #### Fix trademark links ([#2380](https://github.com/tldraw/tldraw/pull/2380)) - Fixes broken links in a number of docs files. --- #### ๐Ÿ’ฅ Breaking Change - [tech debt] Primitives renaming party / cleanup [#2396](https://github.com/tldraw/tldraw/pull/2396) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ› Bug Fix - Fix validation when pasting images. [#2436](https://github.com/tldraw/tldraw/pull/2436) ([@MitjaBezensek](https://github.com/MitjaBezensek) [@SomeHats](https://github.com/SomeHats)) - Add url validation [#2428](https://github.com/tldraw/tldraw/pull/2428) ([@MitjaBezensek](https://github.com/MitjaBezensek) [@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ“ Documentation - Fix trademark links [#2380](https://github.com/tldraw/tldraw/pull/2380) ([@nonparibus](https://github.com/nonparibus)) - Another typo fix. [#2366](https://github.com/tldraw/tldraw/pull/2366) ([@steveruizok](https://github.com/steveruizok)) #### Authors: 4 - alex ([@SomeHats](https://github.com/SomeHats)) - David @ HASH ([@nonparibus](https://github.com/nonparibus)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-beta.1 (Wed Dec 20 2023) ### Release Notes #### Lokalise: Translations update ([#2342](https://github.com/tldraw/tldraw/pull/2342)) Added Czech translations. Updated translations for German, Korean, Russian, Ukrainian, Traditional Chinese. --- #### ๐Ÿ’ฅ Breaking Change - bump to beta [#2364](https://github.com/tldraw/tldraw/pull/2364) ([@steveruizok](https://github.com/steveruizok)) - Change licenses to tldraw [#2167](https://github.com/tldraw/tldraw/pull/2167) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ› Bug Fix - Lokalise: Translations update [#2342](https://github.com/tldraw/tldraw/pull/2342) ([@TodePond](https://github.com/TodePond)) #### Authors: 2 - Lu Wilson ([@TodePond](https://github.com/TodePond)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-alpha.19 (Tue Dec 12 2023) ### Release Notes #### Fix migrations. ([#2302](https://github.com/tldraw/tldraw/pull/2302)) - Fix migrations of `instance_page_state`. #### [improvements] arrows x enclosing shapes x precision. ([#2265](https://github.com/tldraw/tldraw/pull/2265)) - Improves the logic about when to draw "precise" arrows between the center of bound shapes. #### Add prettier caching ([#2212](https://github.com/tldraw/tldraw/pull/2212)) - Speed up formatting of files via `yarn format`. --- #### ๐Ÿ’ฅ Breaking Change - No impure getters pt 1 [#2189](https://github.com/tldraw/tldraw/pull/2189) ([@steveruizok](https://github.com/steveruizok) [@ds300](https://github.com/ds300)) #### ๐Ÿš€ Enhancement - [improvements] arrows x enclosing shapes x precision. [#2265](https://github.com/tldraw/tldraw/pull/2265) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ› Bug Fix - Fix migrations. [#2302](https://github.com/tldraw/tldraw/pull/2302) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### ๐Ÿ  Internal - Add prettier caching [#2212](https://github.com/tldraw/tldraw/pull/2212) ([@MitjaBezensek](https://github.com/MitjaBezensek)) #### Authors: 3 - David Sheldrick ([@ds300](https://github.com/ds300)) - Mitja Bezenลกek ([@MitjaBezensek](https://github.com/MitjaBezensek)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-alpha.18 (Fri Nov 10 2023) ### Release Notes #### [feature] multi-scribbles ([#2125](https://github.com/tldraw/tldraw/pull/2125)) - [feature] multi scribbles --- #### ๐Ÿš€ Enhancement - [feature] multi-scribbles [#2125](https://github.com/tldraw/tldraw/pull/2125) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ  Internal - Revert "bump prerelease from alpha to beta" [#2192](https://github.com/tldraw/tldraw/pull/2192) ([@ds300](https://github.com/ds300)) - bump prerelease from alpha to beta [#2148](https://github.com/tldraw/tldraw/pull/2148) ([@ds300](https://github.com/ds300)) #### Authors: 2 - David Sheldrick ([@ds300](https://github.com/ds300)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-alpha.17 (Tue Oct 17 2023) #### ๐Ÿš€ Enhancement - Same first page id for all editors [#2071](https://github.com/tldraw/tldraw/pull/2071) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ”ฉ Dependency Updates - bump nanoid [#2078](https://github.com/tldraw/tldraw/pull/2078) ([@ds300](https://github.com/ds300)) #### Authors: 2 - David Sheldrick ([@ds300](https://github.com/ds300)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-alpha.16 (Wed Oct 11 2023) #### ๐Ÿš€ Enhancement - Remove dot com ui styles [1/2] [#2039](https://github.com/tldraw/tldraw/pull/2039) ([@steveruizok](https://github.com/steveruizok)) - prevent hover indicator from showing when pointer isn't over the canvas [#2023](https://github.com/tldraw/tldraw/pull/2023) ([@SomeHats](https://github.com/SomeHats)) #### ๐Ÿ› Bug Fix - [fix] Page state migration [#2040](https://github.com/tldraw/tldraw/pull/2040) ([@steveruizok](https://github.com/steveruizok)) - [fix] migrations for page state [#2038](https://github.com/tldraw/tldraw/pull/2038) ([@steveruizok](https://github.com/steveruizok)) #### ๐Ÿ  Internal - [fix] broken docs link [#2062](https://github.com/tldraw/tldraw/pull/2062) ([@steveruizok](https://github.com/steveruizok)) - Remove fixup script [#2041](https://github.com/tldraw/tldraw/pull/2041) ([@steveruizok](https://github.com/steveruizok)) - Publish api.json [#2034](https://github.com/tldraw/tldraw/pull/2034) ([@steveruizok](https://github.com/steveruizok)) #### Authors: 2 - alex ([@SomeHats](https://github.com/SomeHats)) - Steve Ruiz ([@steveruizok](https://github.com/steveruizok)) --- # v2.0.0-alpha.15 (Fri Oct 06 2023) ### Release Notes #### Migrate snapshot ([#1843](https://github.com/tldraw/tldraw/pull/1843)) - [editor] add `Store.migrateSnapshot` #### [fix] embeds switching / tldraw embed ([#1792](https://github.com/tldraw/tldraw/pull/1792)) - [fix] tldraw embeds #### Editor commands API / effects ([#1778](https://github.com/tldraw/tldraw/pull/1778)) - tbd #### [feature] Add val town embed ([#1777](https://github.com/tldraw/tldraw/pull/1777)) - (feature) val town #### `ShapeUtil.getGeometry`, selection rewrite ([#1751](https://github.com/tldraw/tldraw/pull/1751)) - [editor] Remove `ShapeUtil.getBounds`, `ShapeUtil.getOutline`, `ShapeUtil.hitTestPoint`, `ShapeUtil.hitTestLineSegment` - [editor] Add `ShapeUtil.getGeometry` - [editor] Add `Editor.getShapeGeometry` #### [fix] dark mode ([#1754](https://github.com/tldraw/tldraw/pull/1754)) - [fix] dark mode colors not updating #### Remove helpers / extraneous API methods. ([#1745](https://github.com/tldraw/tldraw/pull/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 #### tldraw zero - package shuffle ([#1710](https://github.com/tldraw/tldraw/pull/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 #### Add cloud shape ([#1708](https://github.com/tldraw/tldraw/pull/1708)) - Adds a cloud shape. --- #### ๐Ÿ’ฅ Breaking Change - Revert "Editor commands API / effects" [#1783](https://github.com/tldraw/tldraw/pull/1783) ([@steveruizok](https://github.com/steveruizok)) - Editor commands API / effects [#1778](https://github.com/tldraw/tldraw/pull/1778) ([@steveruizok](https://github.com/steveruizok)) - `ShapeUtil.getGeometry`, selection rewrite [#1751](https://github.com/tldraw/tldraw/pull/1751) ([@steveruizok](https://github.com/steveruizok)) - More cleanup, focus bug fixes [#1749](https://github.com/tldraw/tldraw/pull/1749) ([@steveruizok](https://github.com/steveruizok)) - Remove helpers / extraneous API methods. [#1745](https://github.com/tldraw/tldraw/pull/1745) ([@steveruizok](https://github.com/steveruizok)) - tldraw zero - package shuffle [#1710](https://github.com/tldraw/tldraw/pull/1710) ([@steveruizok](https://github.com/steveruizok) [@SomeHats](https://github.com/SomeHats)) #### ๐Ÿš€ Enhancement - Fix arrow handle snapping, snapping to text labels, selection of text labels [#1910](https://github.com/tldraw/tldraw/pull/1910) ([@steveruizok](https://github.com/steveruizok)) - Migra