Tabs plugin: Pasted code not visible until page refresh
This is a known issue with the sanity-plugin-tabs plugin! The problem you're experiencing where pasted content isn't visible until you refresh is related to how the plugin handles its implementation.
According to the discussion thread on this exact issue, the solution is to properly nest your fields according to the plugin's documentation. Looking at your code example, it appears you're not following the recommended structure.
The sanity-plugin-tabs documentation requires that all fields be nested inside a tabs object. Your current implementation has the inputComponent: Tabs at the document level, but the fields aren't properly nested within a tabs structure.
The fix: Nest all your fields inside a new object and move the Tabs input component and fieldsets into that object as well. In other words, you need to nest everything one level deeper. This isn't actually a bug with the plugin - it's about following the documented implementation pattern. When fields aren't nested properly, the plugin can exhibit strange behavior like the copy-paste visibility issue you're experiencing.
Alternative consideration: If you're starting a new project or can refactor, you might want to consider using Sanity's native Field Groups feature instead. Field Groups is the built-in way to organize fields into tabs in Sanity Studio, and it doesn't require a plugin. It's been part of Studio since v2.24.0 and provides a cleaner, officially supported way to create tabbed interfaces without affecting your data structure. You can assign fields to groups like this:
defineField({
name: 'slug',
type: 'slug',
group: 'seo', // Assigns this field to the 'seo' group
})This native approach tends to be more reliable and is actively maintained as part of the core Studio experience.
Show original thread7 replies
Sanity – Build the way you think, not the way your CMS thinks
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.