Sanity Studio v5.10.0: TypeGen GA, and improvements to Portable Text Editor, Media Library plugin, comments, timezone UI, and file uploads

This release announces the general availability of Sanity TypeGen, improves the Portable Text Editor, fixes critical issues with Media Library asset insertion and comment sharing links, resolves UI problems with timezone selection and dialog flickering, and enhances file upload handling.

TypeGen is now generally available

Sanity TypeGen has reached general availability. TypeGen automatically generates TypeScript types from your Sanity schemas and GROQ queries, providing type safety throughout your content workflow.

Key features include automatic type generation during development, support for multiple file types (TypeScript, JavaScript, Astro, Svelte, Vue), utility types for working with complex schemas, and watch mode for separate repositories.

Learn more in the documentation, read the announcement blog post, or take the Sanity Learn course.

Add warning when a document type is used for a field

Using document types as reusable fields is considered an anti-pattern. The CLI now prints a warning if a document type is used as the type of a field.

New changed props on PTE block

Blocks and inline blocks in PTE now expose a changed props like all other PTE items.

🐛 Notable bugfixes and improvements

Fixed a minor regression related to type hoisting when using document types as field types (a documented anti pattern).

Fixes a regression in the Media Library Studio plugin that prevented you to insert images and files into the document when that asset already existed in the Media Library.

Fixes a bug where sharing a link to a comment that was placed on a scheduled draft document would not correctly link to the expected document.

Fixes an issue when selecting a timezone for the Studio where dropdown selections would sometimes not be available if an existing timezone was selected.

Enhanced Object Dialog: Fixes dialog flickering open and immediately closing when reopening an array item after closing via the close button or breadcrumb navigation.

Fixes an issue so that when sharing a link to a comment on a field, once shared the link will automatically scroll the document to that field.

Fixes an issue when dragging and dropping a file into a file upload field, where in some instances where an uploader handler was not defined, the file would fail to upload with an error claiming that no handler could be found.

Reduced SSE listener grace period from 10s to 5s to lower concurrent connection count during document navigation, reducing server-side fan-out on commits.