tldraw/packages
Mitja Bezenšek db7c3f59bf
Prevent duplicate from creating any shapes if we reach max allowed shapes (#3692)
This prevents duplicating shapes if we get to the max allowed shapes.
Before this change we would create as many shapes as we could and skip
the rest. After this change we don't create any shapes in this case.

We already do this for [copy
pasting](https://github.com/tldraw/tldraw/blob/mitja%2Fduplicate-shapes/packages/editor/src/lib/editor/Editor.ts#L7595-L7600)
(via `putContentOntoCurrentPage`), so no change was needed there.

Resolves https://github.com/tldraw/tldraw/issues/3669

### Change Type

<!--  Please select a 'Scope' label ️ -->

- [x] `sdk` — Changes the tldraw SDK
- [ ] `dotcom` — Changes the tldraw.com web app
- [ ] `docs` — Changes to the documentation, examples, or templates.
- [ ] `vs code` — Changes to the vscode plugin
- [ ] `internal` — Does not affect user-facing stuff

<!--  Please select a 'Type' label ️ -->

- [ ] `bugfix` — Bug fix
- [ ] `feature` — New feature
- [x] `improvement` — Improving existing features
- [ ] `chore` — Updating dependencies, other boring stuff
- [ ] `galaxy brain` — Architectural changes
- [ ] `tests` — Changes to any test code
- [ ] `tools` — Changes to infrastructure, CI, internal scripts,
debugging tools, etc.
- [ ] `dunno` — I don't know


### Test Plan

1. Create close to 2000 shapes.
2. Select so many shapes that duplicating them would go over the 2000
shapes per page limit.
3. Duplicate.
4. You should not create any shapes even if there is space for some of
them.

- [ ] Unit Tests
- [ ] End to end tests

### Release Notes

- Prevent duplicating shapes if we would go over the maximum shape
limit. It's now an all or nothing operation, where as before some shapes
would get created.
2024-05-03 15:22:36 +00:00
..
assets Fix missing icons (#3654) 2024-04-30 10:39:53 +00:00
dotcom-shared make route prefixes have a single place where they are defined (#3624) 2024-04-27 10:57:55 +00:00
editor Prevent duplicate from creating any shapes if we reach max allowed shapes (#3692) 2024-05-03 15:22:36 +00:00
namespaced-tldraw Don't check api.json files into git (#3565) 2024-04-24 15:58:26 +00:00
state [signia] perf thing again (#3645) 2024-04-30 13:44:52 +00:00
store Automatic undo/redo (#3364) 2024-04-24 18:26:10 +00:00
tldraw textfields: fix RTL layout for SVG exports (#3680) 2024-05-03 13:40:59 +00:00
tlschema Lokalise: Translations update (#3649) 2024-04-30 10:23:23 +00:00
tlsync Allow clients to gracefully handle rejection (#3673) 2024-05-02 13:54:21 +00:00
utils Don't check api.json files into git (#3565) 2024-04-24 15:58:26 +00:00
validate Don't check api.json files into git (#3565) 2024-04-24 15:58:26 +00:00