Markdown behaviors for the Portable Text Editor
The Portable Text Editor (PTE) now ships with markdown keyboard shortcuts for headings, block quotes and lists.
This change extends the core behaviors of the PTE with default markdown behaviors for a more intuitive writing experience. This allows you to:
- Use
#
characters to create headings. - Use
>
to create a blockquote. - Use
Backspace
at the beginning of a block to clear its style. - Use
-
,*
,_
or1.
to initiate a list.
This is part of the effort that brings features from the new standalone Portable Text Editor back into the Studio.
TypeGen: add support for astro
You can now generate types from queries in .astro
files. Learn more in the TypeGen docs.
🐛 Notable bugfixes
- Fixes schema extraction with nested union references.
- Header when creating new documents is now translated.
- Fixes
WebSocket is closed before the connection is established
warning. - Fixes a regression introduced in
v3.38.0
that could in rare cases cause a crash when opening a document in the Studio. unset()
inside custom datetime input components will now show that the value has been unset in the Studio UI.
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Cody Olsen | fix: WebSocket is closed before the connection is established warning (#8042)
| 57150e7 |
renovate[bot] | fix(deps): Update dev-non-major (#8100) | 9897dbc |
renovate[bot] | chore(deps): update dependency turbo to ^2.3.3 (#8099) | 1f1f061 |
Sindre Gulseth | feat(typegen): add support for astro (#8098) | 92dfc9f |
renovate[bot] | fix(deps): update dependency @sanity/icons to ^3.5.5 (#8106) | 93ea8af |
renovate[bot] | chore(deps): update typescript-tooling (#8104) | d35bf4e |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.153 (#8107) | 9115c4f |
renovate[bot] | fix(deps): update dependency react-rx to ^4.1.10 (#8109) | 87f783d |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.12 (#8108) | a20bcf7 |
renovate[bot] | fix(deps): update dependency @sanity/icons to ^3.5.5 (#8105) | 9b7ee0b |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.1 (#8088) | 1d23092 |
Rostislav Melkumyan | chore(cli): bump template validator (#8115) | e39c5b2 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.2 (#8113) | d3d1540 |
Bjørge Næss | fix(core): re-subscribes to shared pair listener opens a new connection (#8120) | 8f61ce3 |
Cody Olsen | fix: preload documents on hover (#8110) | 303841d |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.3 (#8117) | cd989d1 |
Bjørge Næss | fix(core): merge in listenerEvents in _keepalive stream (#8122) | babdfe4 |
renovate[bot] | fix(deps): update dependency @sanity/export to ^3.42.0 (#8111) | d6aa711 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.5 (#8124) | 8c61a7e |
renovate[bot] | chore(deps): update dev-non-major (#8125) | ef8cb12 |
renovate[bot] | fix(deps): update dependency @sanity/insert-menu to v1.0.17 (#8126) | 4935373 |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.19.14 (#8127) | ac2be36 |
renovate[bot] | chore(deps): update dev-non-major (#8128) | ddb65fa |
renovate[bot] | fix(deps): update dependency @sanity/insert-menu to v1.0.18 (#8132) | 30f3945 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.6 (#8136) | 42b4320 |
renovate[bot] | fix(deps): update dependency @sanity/icons to ^3.5.6 (#8129) | 797a381 |
ecospark[bot] | fix(deps): update React Compiler dependencies 🤖 ✨ (#8134) | 994598c |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.19.16 (#8133) | 6d18640 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.18.7 (#8148) | 59b143e |
renovate[bot] | chore(deps): update typescript-tooling (#8149) | d350ef9 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.14 (#8150) | 751a5f5 |
renovate[bot] | fix(deps): update dependency react-rx to ^4.1.11 (#8151) | 1546ea7 |
renovate[bot] | fix(deps): update dependency @sanity/export to ^3.42.1 (#8153) | 9722e5f |
renovate[bot] | fix(deps): update dependency @sanity/icons to ^3.5.7 (#8155) | e113dff |
renovate[bot] | chore(deps): update dependency @testing-library/react to v16 (#8158) | cfefb7d |
Eoin Falconer | fix: make header new and error text customisable (#8162) | 30cd307 |
Jordan Lawrence | chore(tasks): fixing typo in empty state title (#8143) | 4f08c3d |
Rostislav Melkumyan | chore(cli): bump @sanity/template-validator to v2.0.0 (#8156)
| be79fe8 |
Bjørge Næss | fix(sanity): throw a better error if onChange called during initial render (#8165) | 3285312 |
ecospark[bot] | chore(deps): dedupe pnpm-lock.yaml (#8164) | 466c6fa |
Cody Olsen | chore: add github problem matcher for PR linting (#8161) | 323d1b1 |
Cody Olsen | fix: remove react-hooks linter suppression (#8051) | 1d25b3c |
Pedro Bonamin | chore(core): replace 'sanity' imports for relative paths in core (#8160)
| 32ae6ec |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.15 (#8172) | 5010c37 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.19.0 (#8167) | 6c6fc0c |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.158 (#8169) | b5dce86 |
renovate[bot] | fix(deps): Update dev-non-major (#8174) | 60cede8 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.16 (#8175) | 3a972e9 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.17 (#8177) | 9d68dad |
Christian Grøngaard | feat(core): add default markdown behaviors to PTE (#8168) | 17aa32c |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.10.18 (#8185) | d9c959a |
ecospark[bot] | fix(deps): update React Compiler dependencies 🤖 ✨ (#8187) | fd30cb3 |
Cody Olsen | chore: temporarily downgrade compiler runtime (#8188) | 7bf6104 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.11.0 (#8190) | 5211c0d |
renovate[bot] | fix(deps): update dependency react-rx to ^4.1.12 (#8189) | 107435b |
renovate[bot] | chore(deps): update dependency styled-components to ^6.1.14 (#8182) | 001dda7 |
renovate[bot] | chore(deps): update typescript-tooling (#8186) | 5542235 |
renovate[bot] | fix(deps): update dependency @sanity/export to ^3.42.2 (#8179) | 4e60fe9 |
Rostislav Melkumyan | feat(cli): copy additions for remote project bootstrapper (#8141) | f453cbc |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.19.17 (#8195) | c44e5b0 |
Rostislav Melkumyan | feat(cli): allow credentials when adding CORS entry (#8191) | b57cb26 |
Cody Olsen | chore: upgrade test studios to react 19, remove next studios (#8178) | 9ed1ff7 |
ecospark[bot] | chore(deps): dedupe pnpm-lock.yaml (#8197) | f0ece85 |
renovate[bot] | fix(deps): Update dev-non-major (#8183) | 504337e |
renovate[bot] | chore(deps): update dependency @vitejs/plugin-react to ^4.3.4 (#8198) | 9c12eca |
renovate[bot] | chore(deps): update vitest monorepo to ^2.1.8 (#8200) | c9d7b62 |
Bjørge Næss | fix(structure): set patchRef in an insertion effect instead of regular useEffect (#8194) | facd3fb |
renovate[bot] | chore(deps): update react monorepo (#8199) | e3e3ad1 |
Robin Neatherway | fix: fixes schema extraction with nested union refs (#8096) | ac62487 |
Cody Olsen | fix: React 19 typings (finally) (#8171) | 68f244b |
Eoin Falconer | fix: unset should unset readOnly date field from custom input component (#8192) | e4f7164 |
renovate[bot] | chore(deps): update typescript-tooling (#8207) | d3a71a4 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.11.1 (#8203) | e98cf47 |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.20.1 (#8206) | a354c03 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.20.0 (#8208) | 1e12bc9 |
Bjørge Næss | fix(sanity): fix race condition introduced by #8120 (#8211) | 27feda0 |