This release introduces significant performance improvements for form state computation in Sanity Studio, especially for complex documents:
Up to 10x performance improvement for documents with multiple large objects in arrays
Noticeable improvements for documents with large Portable Text fields
Memoization for form state computation
🐛 Notable bugfixes
The _createdAt document property will now always be set to the time when the document in question was first created in its initial draft state rather than the time of publishing, as intended.
In the Portable Text Editor, annotations can now be added across existing annotations and decorators without accidentally expanding or removing those.
In the Portable Text Editor, a collapsed selection can now toggle off an entire annotation.
A performance regression introduced in 3.52.3, affecting large Portable Text documents, has now been fixed.
Toggling decorators in selections spanning empty lines in the Portable Text Editor now works more predictably.
Lists created in the Portable Text Editor should now reset sublist indices under different parent list items (thank you, @phattran2905!).
When focused, the Portable Text Editor now automatically adds empty markDefs arrays to blocks if missing.
Array inputs now forward the received onItemPrepend and onItemAppend hooks to the insert button/array functions component.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the sanity group with 3 updates in the / directory: @sanity/client, sanity and @sanity/preview-kit.
Updates
@sanity/client
from 6.11.3 to 6.22.0Release notes
Sourced from
@sanity/client
's releases.... (truncated)
Changelog
Sourced from
@sanity/client
's changelog.... (truncated)
Commits
66c27d1
chore(main): release 6.22.0 (#889)e1406b1
feat(live): add experimentalincludeDrafts
option (#890)847ad5b
fix(deps): update dependency get-it to ^8.6.5 (#885)5383fbd
chore(deps): update peter-evans/create-pull-request action to v7 (#887)d0db087
chore(deps): update dependency next to v14.2.10 [security] (#883)a92ec7f
chore(main): release 6.21.3 (#880)13d71bb
fix: supportsignal
ongetDocument(s)
to cancel requests (#881)ebe840b
fix: deprecate studioHost, externalStudioHost in typings (#879)c5da67e
chore(deno): update import_map.json (#877)c4bff99
chore(main): release 6.21.2 (#878)Updates
sanity
from 3.23.4 to 3.57.4Release notes
Sourced from sanity's releases.
... (truncated)
Commits
930d508
v3.57.43bf7096
perf(core): memoizeprepareFormState
(#7498)4a50023
fix: forward received onItemPrepend/onItemAppend to ArrayFunctions (#7516)1a33125
fix: add padding above the "Push to reload" button instead of below (#7464)daf4ffa
fix(deps): update dependency@portabletext/editor
to ^1.1.1 (#7514)a6e0389
fix(deps): update dependency@portabletext/editor
to ^1.1.0 (#7501)4918a9e
fix(core): correctly reset PTE list counts after non-numbered lists and in su...9a646d8
chore(deps): update typescript-tooling (#7504)99f1bb6
fix(sanity): prevent empty patches being created (#7499)caec753
chore(deps): bumptypescript
to5.6.2
(#7494)Updates
@sanity/preview-kit
from 5.0.13 to 5.1.1Release notes
Sourced from
@sanity/preview-kit
's releases.... (truncated)
Changelog
Sourced from
@sanity/preview-kit
's changelog.... (truncated)
Commits
8b9276b
chore(release): 5.1.1 [skip ci]31564c4
fix(deps): Update dependency@sanity/preview-kit-compat
to v1.5.7 (#1312)754c6ce
chore(deps): update vitest monorepo to v2 (major) (#1310)8d1a850
fix(deps): update dependency lru-cache to v10.4.3 (#1308)73310a7
chore(deps): update linters (#1306)7462815
chore(deps): update dependency typescript to v5.5.3 (#1305)d50892f
fix(deps): Update dependency@sanity/preview-kit-compat
to v1.5.5 (#1304)222215d
fix(deps): Update dependency@sanity/preview-kit-compat
to v1.5.4 (#1301)aca4c09
fix(deps): Update dependency@sanity/preview-kit-compat
to v1.5.2 (#1298)fe84205
chore(deps): update dependency@sanity/semantic-release-preset
to v5 (#1299)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show