Installation and upgrading
To initiate a new Studio without installing the CLI globally:
npm create sanity@latest
To upgrade a v3 Studio, run this command in its folder:
npm install sanity@latest
✨ Highlights
Inline commenting in Blocks
Enhance editorial collaboration with the ability to attach comments directly to specific text selections. This feature includes highlight capabilities and ensures a seamless experience with updates and scrolling interactions.
Portable Text Editor improvements
- Inline references and objects will now render with increased default sizes in the Portable Text Editor for easier interaction.
- Original content keys are now preserved during undo/redo operations in the Portable Text Editor. This change makes for more robust content integrity.
🐛 Notable bugfixes
- Fixes an issue that allowed files to be dropped behind the open modal, leading to potentially adding files to the wrong input.
- Fixes a problem where temporary network disruptions could cause the form editor to reload and lose unsaved edits. Now, the form becomes read-only during reconnection, preserving state and changes.
- Fixes an issue where initial value templates would not accept a target dataset for cross-dataset references.
- Fixes an issue where the "disabled" state was shown indefinitely for cross-dataset references.
- Resolves a UI problem where the "cannot upload" message was incorrectly shown for extension-restricted file types during hover.
- Fixes a bug where certain selections within the Portable Text Editor were being mishandled.
- Fixes an issue where Comments would show a loading state while the form was reconnecting, preserving user comments during network issues.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Robin Neatherway | docs: show backup command in help (#5865) | 5d060af |
Nina Andal Aarvik | fix(core): change modalWidth of inlineObjects to 1 by default (#5839) | 6e551b0 |
Per-Kristian Nordnes | feat(portable-text-editor): preserve keys on undo/redo (#5805) | f83e8e4 |
Herman Wikner | feat(portable-text-editor): implement isSelectionOverlapping method (#5870)
| 1d41af7 |
renovate[bot] | chore(deps): update dependency get-random-values-esm to v1.0.2 (#5856) | 16a5434 |
Ash | fix(form): prevent drop event propagating outside of EditPortal component (#5813) | fc73437 |
Per-Kristian Nordnes | fix(portable-text-editor): check that path is lengthy (#5875) | 2deebb1 |
Herman Wikner | feat(core): add onFullScreenChange to Portable Text Input (#5879)
| 84a0c90 |
Rupert Dunk | feat(structure): support closing first collapsed DocumentPanel (#5867)
| 6d61e94 |
cngonzalez | fix(core): check if previous state is null for unmounted component (#5724) | 9ed5cca |
Tommy Petty | fix(structure): provide better error handling if orderings contain invalid field (#5709) | 4926b78 |
Per-Kristian Nordnes | feat(portable-text-editor): range decorations (#5871) | fa330a0 |
Herman Wikner | feat(comments): introduce inline commenting (#5606) | 7ed2b0f |
Tommy Petty | fix(core): updates to not show "cannot upload" on hover when using extension based accepts settings (#5881) | 023e7e6 |
Bjørge Næss | fix(sanity): preserve form (as readOnly) when reconnecting (#5884) | ed87e2a |
Per-Kristian Nordnes | fix(portable-text-editor): all paths must be checked (#5891) | 4ae88a0 |
Per-Kristian Nordnes | fix(comments): allow ranges to be collapsed (#5892) | eb5cd50 |
Ash | feat(ci): cache release dependencies (#5834) | 75ac3cf |
Rostislav Melkumyan | feat(cli): --quickstart flag for ejecting server schemas (#5797) | 174a616 |
Pedro Bonamin | feat(core): export useWorkspaceLoader from core (#5898) | 3670459 |
Pedro Bonamin | chore(search): refactor search to export necessary components and providers. (#5900) | 4159bca |
Espen Hovlandsdal | chore(deps): upgrade archiver, split2 dependencies (#5880) | c9a1dd6 |
Espen Hovlandsdal | fix(core): allow _dataset for cross-dataset references in templates (#5889)
| 9fc34a2 |