tldraw/packages
David Sheldrick a48a55d3de
[perf] make ensureStoreIsUsable scale better (#1362)
The new version of the sync engine is gonna be calling
`ensureStoreIsUsable` on every sync message, so I took some time to make
it scale better. At the moment it operates on a serialized version of
the store, which is expensive and unnecessary. Here I changed it to use
reactive queries for the data it needs, so it only operates on small
bits of data and should not become more expensive as the number of
shapes grows.

### Change Type

<!-- 💡 Indicate the type of change your pull request is. -->
<!-- 🤷‍♀️ If you're not sure, don't select anything -->
<!-- ✂️ Feel free to delete unselected options -->

<!-- To select one, put an x in the box: [x] -->

- [x] `patch` — Bug Fix
- [ ] `minor` — New Feature
- [ ] `major` — Breaking Change

- [ ] `dependencies` — Dependency Update (publishes a `patch` release,
for devDependencies use `internal`)

- [ ] `documentation` — Changes to the documentation only (will not
publish a new version)
- [ ] `tests` — Changes to any testing-related code only (will not
publish a new version)
- [ ] `internal` — Any other changes that don't affect the published
package (will not publish a new version)

### Test Plan

1. Add a step-by-step description of how to test your PR here.
2.

- [ ] Unit Tests
- [ ] Webdriver tests

### Release Notes

- Add a brief release note for your PR here.
2023-05-12 11:39:36 +00:00
..
assets Rework the assets package for strategy-specific imports (#1341) 2023-05-09 16:08:38 +00:00
editor presence-related fixes (#1361) 2023-05-12 09:43:51 +00:00
file-format readmes 2023-05-04 13:47:56 +01:00
polyfills readmes 2023-05-04 13:47:56 +01:00
primitives readmes 2023-05-04 13:47:56 +01:00
tldraw New vite-based examples app (#1226) 2023-05-05 13:10:36 +00:00
tlschema [perf] make ensureStoreIsUsable scale better (#1362) 2023-05-12 11:39:36 +00:00
tlstore [perf] make ensureStoreIsUsable scale better (#1362) 2023-05-12 11:39:36 +00:00
tlsync-client readmes 2023-05-04 13:47:56 +01:00
tlvalidate readmes 2023-05-04 13:47:56 +01:00
ui Export Events stuff (#1360) 2023-05-12 09:45:32 +00:00
utils presence-related fixes (#1361) 2023-05-12 09:43:51 +00:00