chore(deps): update @sanity/ui to 4.0.0 - #1793
Conversation
Bump the pnpm catalog and force a single UI version via override so the monorepo (including sanity's transitive dep) resolves to the v4 next prerelease for compatibility testing.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
✅ E2E Tests🟢 25 passed • 🟡 1 flaky • view full report • view run Studio: https://plugins-e2e-test-studio-gnwr7a65q.sanity.dev Datasets: |
Keep the catalog on 4.0.0-next.0 for plugin testing; allow sanity to retain its own @sanity/ui@3.5.0 without forcing a tree-wide override.
🦋 Changeset detectedLatest commit: 48bcf70 The changes in this PR will be included in the next version bump. This PR includes changesets to release 44 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
@sanity/ui@4.0.0-next.3 types `space` and `columns` as never and replaces useClickOutside with useClickOutsideEvent. Rename space→gap, columns→gridTemplateColumns, and update the assist click-outside hook so lint passes against the v4 next prerelease.
Bump the catalog from 4.0.0-next.3 and handle the next.4/next.5 breaking changes: - Components with heavy dependencies moved to dedicated subpath entry points, so split imports of Autocomplete, Breadcrumbs, Code, Menu*, Popover, Toast* and Tooltip out of the root entry. - Static CSS now ships as a stylesheet consumers import themselves, so add `import '@sanity/ui/styles.css'` to the root entrypoint of every package that renders Sanity UI, plus an ambient module declaration since the export has no type declarations. - Retarget the `useToast` test mocks at `@sanity/ui/toast`. - Stub ResizeObserver in the media test setup; v4 dropped the @juggle/resize-observer polyfill in favour of the global API.
…ount CI shard 2 failed with unhandled React errors after Browser.test passed: Activity-kept Popover/Tooltip updates raced jsdom teardown. Explicitly unmount and flush a microtask so scheduled work settles first.
Patch release that ships styles.css unminified; no API changes.
Drop ambient declare module for @sanity/ui/styles.css — next.7 ships types on that export. Keep unsplash's react-photo-album CSS decl.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
Pull request overview
This PR upgrades the Sanity plugins monorepo from @sanity/ui v3 to stable v4.0.0 and performs the required mechanical migrations across affected plugins/packages (API changes, subpath imports, stylesheet ownership, and test-environment shims).
Changes:
- Bump the workspace dependency catalog to
@sanity/ui@4.0.0and migrate usages to v4 APIs (e.g.space → gap,columns → gridTemplateColumns,useToast/ToastProvidersubpath imports). - Move heavy UI component imports to v4 subpath entry points (e.g.
@sanity/ui/toast,@sanity/ui/menu,@sanity/ui/tooltip,@sanity/ui/popover,@sanity/ui/code,@sanity/ui/autocomplete). - Ensure consumers import
@sanity/ui/styles.css, add a jsdomResizeObserverstub, and stabilize test teardown for Activity-kept popovers/tooltips.
Reviewed changes
Copilot reviewed 258 out of 259 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pnpm-workspace.yaml | Pin workspace catalog to @sanity/ui@4.0.0. |
| plugins/sanity-translations-tab/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-translations-tab/src/components/TranslationView.tsx | Move useToast to toast subpath. |
| plugins/sanity-translations-tab/src/components/TranslationsTab.tsx | Move ToastProvider to toast subpath. |
| plugins/sanity-translations-tab/src/components/TaskView.tsx | Move useToast to toast subpath. |
| plugins/sanity-translations-tab/src/components/NewTask.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workspace-home/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-workflow/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-workflow/src/hooks/useWorkflowDocuments.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workflow/src/components/WorkflowTool.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workflow/src/components/Verify.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workflow/src/components/UserDisplay.tsx | Move Popover to popover subpath. |
| plugins/sanity-plugin-workflow/src/components/UserAssignment.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workflow/src/components/StateTitle/Status.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-workflow/src/components/Filters.tsx | Move menu components to menu subpath. |
| plugins/sanity-plugin-workflow/src/components/DocumentCard/ValidationStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-workflow/src/components/DocumentCard/core/PublishedStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-workflow/src/components/DocumentCard/core/DraftStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-workflow/src/components/DocumentCard/CompleteButton.tsx | Move toast/tooltip to subpaths. |
| plugins/sanity-plugin-workflow/src/actions/useCompleteWorkflow.tsx | Move toast types/hook to toast subpath. |
| plugins/sanity-plugin-workflow/src/actions/useBeginWorkflow.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-workflow/src/actions/defineUpdateWorkflow.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-utils/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-utils/src/components/UserSelectMenu/index.tsx | Move menu components to menu subpath. |
| plugins/sanity-plugin-shopify-assets/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-mux-input/src/hooks/useResyncAsset.ts | Move useToast to toast subpath. |
| plugins/sanity-plugin-mux-input/src/hooks/useMezzanine.ts | Move useToast to toast subpath. |
| plugins/sanity-plugin-mux-input/src/context/DrmPlaybackWarningContext.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/VideoThumbnail.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/VideosBrowser.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/VideoMetadata.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/VideoInBrowser.tsx | Move Tooltip to tooltip subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/VideoDetails/VideoDetails.tsx | Replace space with gap (and TabList). |
| plugins/sanity-plugin-mux-input/src/components/VideoDetails/useVideoDetails.ts | Move useToast to toast subpath. |
| plugins/sanity-plugin-mux-input/src/components/VideoDetails/DeleteDialog.tsx | Move useToast to toast subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/UploadProgress.tsx | Move Code to code subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/UploadPlaceholder.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/Uploader.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-mux-input/src/components/uploadConfiguration/StaticRenditionSelector.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/uploadConfiguration/PlaybackPolicy.tsx | Move Code to code subpath. |
| plugins/sanity-plugin-mux-input/src/components/UploadConfiguration.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/TextTracksManager.tsx | Move useToast to toast subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/TextTracksEditor.tsx | Move Autocomplete to autocomplete subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/SelectSortOptions.tsx | Move menu/popover types to subpaths. |
| plugins/sanity-plugin-mux-input/src/components/ResyncMetadata.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/PlayerActionsMenu.tsx | Move menu/popover/tooltip to subpaths; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/Onboard.tsx | Replace columns with gridTemplateColumns. |
| plugins/sanity-plugin-mux-input/src/components/MezzanineExplanation.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/MezzanineDialog.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/Mezzanine.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/ImportVideosFromMux.tsx | Move Code to code subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/FormField.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/FileInputMenuItem.styled.tsx | Move MenuItem to menu subpath. |
| plugins/sanity-plugin-mux-input/src/components/ErrorBoundaryCard.tsx | Move useToast to toast subpath; Grid columns→gridTemplateColumns. |
| plugins/sanity-plugin-mux-input/src/components/EditThumbnailDialog.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/EditCaptionDialog.tsx | Move autocomplete/toast to subpaths; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/DraggableWatermark.tsx | Replace space with gap; Grid columns→gridTemplateColumns. |
| plugins/sanity-plugin-mux-input/src/components/documentPreview/PublishedStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-mux-input/src/components/documentPreview/PaneItemPreview.tsx | Replace space with gap. |
| plugins/sanity-plugin-mux-input/src/components/documentPreview/DraftStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-mux-input/src/components/ConfigureApi.tsx | Move Code to code subpath; space→gap. |
| plugins/sanity-plugin-mux-input/src/components/AddCaptionDialog.tsx | Move autocomplete/toast to subpaths; space→gap. |
| plugins/sanity-plugin-mux-input/src/_exports/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-media/vitest.setup.ts | Add jsdom ResizeObserver stub. |
| plugins/sanity-plugin-media/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-media/src/hooks/usePortalPopoverProps.ts | Move PopoverProps type to popover subpath. |
| plugins/sanity-plugin-media/src/components/TagViewHeader/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/Tag/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-media/src/components/TableRowUpload/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/TableRowFolder/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/TableRowAsset/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-media/src/components/SearchFacetTags/index.tsx | Move menu components to menu subpath; space→gap. |
| plugins/sanity-plugin-media/src/components/SearchFacetString/index.tsx | Move menu components to menu subpath. |
| plugins/sanity-plugin-media/src/components/SearchFacetSelect/index.tsx | Move menu components to menu subpath. |
| plugins/sanity-plugin-media/src/components/SearchFacetsControl/index.tsx | Move menu components to menu subpath; space→gap. |
| plugins/sanity-plugin-media/src/components/SearchFacets/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/SearchFacetNumber/index.tsx | Move menu components to menu subpath. |
| plugins/sanity-plugin-media/src/components/OrderSelect/index.tsx | Move menu components to menu subpath; space→gap. |
| plugins/sanity-plugin-media/src/components/Notifications/index.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-media/src/components/FormSubmitButton/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-media/src/components/FormFieldInputLabel/index.tsx | Move Tooltip to tooltip subpath; space→gap. |
| plugins/sanity-plugin-media/src/components/FormBuilderTool/FormBuilderTool.test.tsx | Update ToastProvider import; add teardown flush. |
| plugins/sanity-plugin-media/src/components/FolderView/index.tsx | Move Tooltip to tooltip subpath; space→gap. |
| plugins/sanity-plugin-media/src/components/FolderBreadcrumbs/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/EditAssetTool/EditAssetTool.test.tsx | Move ToastProvider to toast subpath. |
| plugins/sanity-plugin-media/src/components/DocumentList/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/DialogFolderMove/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/DialogConfirm/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/DialogAssetEdit/index.tsx | Replace space with gap (and TabList). |
| plugins/sanity-plugin-media/src/components/DialogAssetEdit/Details.tsx | Replace space with gap (and TabList). |
| plugins/sanity-plugin-media/src/components/DebugControls/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-media/src/components/Controls/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/CardFolder/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/CardAsset/index.tsx | Move toast/tooltip to subpaths. |
| plugins/sanity-plugin-media/src/components/ButtonViewGroup/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/components/ButtonAssetCopy/index.tsx | Move Popover to popover subpath. |
| plugins/sanity-plugin-media/src/components/Browser/Browser.test.tsx | Update ToastProvider import; add teardown flush. |
| plugins/sanity-plugin-media/src/components/AutoTagInputWrapper/index.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-media/src/components/AssetMetadata/index.tsx | Replace space with gap. |
| plugins/sanity-plugin-media/src/tests/fixtures/renderWithProviders.tsx | Move ToastProvider to toast subpath. |
| plugins/sanity-plugin-markdown/src/indexNext.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-markdown/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-internationalized-array/src/test/component-helpers.tsx | Move ToastProvider to toast subpath. |
| plugins/sanity-plugin-internationalized-array/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-internationalized-array/src/components/InternationalizedInput.tsx | Move menu/tooltip to subpaths. |
| plugins/sanity-plugin-internationalized-array/src/components/InternationalizedArray.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-internationalized-array/src/components/InternationalizedArray.test.tsx | Mock toast subpath module. |
| plugins/sanity-plugin-internationalized-array/src/components/Feedback.tsx | Move Code to code subpath. |
| plugins/sanity-plugin-internationalized-array/src/components/DocumentAddButtons.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-internationalized-array/src/components/DocumentAddButtons.test.tsx | Mock toast subpath module. |
| plugins/sanity-plugin-iframe-pane/src/Toolbar.tsx | Move toast/tooltip to subpaths. |
| plugins/sanity-plugin-iframe-pane/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-hotspot-array/src/Spot.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-hotspot-array/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-graph-view/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-google-translate/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-google-translate/src/GoogleTranslateInput.tsx | Move toast/tooltip to subpaths. |
| plugins/sanity-plugin-documents-pane/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-documents-pane/src/DuplicateDocument.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-documents-pane/src/Debug.tsx | Move Code to code subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/components/FormFieldInputLabel/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/components/DialogForm/index.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/components/DeploymentTarget/index.tsx | Move Tooltip to tooltip subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/components/Deployments/index.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/components/DeployButton/index.tsx | Move useToast to toast subpath. |
| plugins/sanity-plugin-dashboard-widget-vercel/src/app.tsx | Move ToastProvider/Tooltip to subpaths. |
| plugins/sanity-plugin-dashboard-widget-netlify/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-dashboard-widget-document-list/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-cloudinary/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-bynder-input/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-asset-source-unsplash/src/index.ts | Import Sanity UI stylesheet. |
| plugins/sanity-plugin-aprimo/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/vercel-protection-bypass/src/VercelProtectionBypassTool.tsx | Move useToast to toast subpath. |
| plugins/@sanity/vercel-protection-bypass/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/table/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/table/src/components/TableMenu.tsx | Move menu components to menu subpath. |
| plugins/@sanity/studio-secrets/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/sfcc/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/sfcc/src/documentActions/sfccDelete.tsx | Move useToast to toast subpath. |
| plugins/@sanity/sanity-plugin-async-list/src/types.ts | Move AutocompleteProps to autocomplete subpath. |
| plugins/@sanity/sanity-plugin-async-list/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/sanity-plugin-async-list/src/components/async-list.tsx | Move Autocomplete to autocomplete subpath. |
| plugins/@sanity/rich-date-input/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/rich-date-input/src/components/TimezoneSelector.tsx | Move Autocomplete to autocomplete subpath. |
| plugins/@sanity/personalization-plugin/src/launchDarkly/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/personalization-plugin/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/personalization-plugin/src/growthbook/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/orderable-document-list/src/OrderableDocumentList.tsx | Move toast types to toast subpath. |
| plugins/@sanity/orderable-document-list/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/orderable-document-list/src/DraggableList.tsx | Move useToast to toast subpath. |
| plugins/@sanity/orderable-document-list/src/DocumentListWrapper.tsx | Move toast hook/types to toast subpath. |
| plugins/@sanity/orderable-document-list/src/Document.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/language-filter/src/LanguageFilterMenuButton.tsx | Move Popover to popover subpath. |
| plugins/@sanity/language-filter/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/hierarchical-document-list/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/hierarchical-document-list/src/components/TreeEditor.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/hierarchical-document-list/src/components/NodeActions.tsx | Move menu components to menu subpath. |
| plugins/@sanity/hierarchical-document-list/src/components/DocumentPreviewStatus.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/hierarchical-document-list/src/components/DocumentInNode.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/google-maps-input/src/input/ApiKeyMessages.tsx | Move Code to code subpath. |
| plugins/@sanity/google-maps-input/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/form-toolkit/src/mailchimp/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/form-toolkit/src/hubspot/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/embeddings-index-ui/src/referenceInput/SemanticSearchAutocomplete.tsx | Move Autocomplete (and types) to autocomplete subpath. |
| plugins/@sanity/embeddings-index-ui/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/embeddings-index-ui/src/embeddingsIndexDashboard/IndexList.tsx | Replace space with gap. |
| plugins/@sanity/embeddings-index-ui/src/embeddingsIndexDashboard/IndexInfo.tsx | Move menu components to menu subpath; space→gap. |
| plugins/@sanity/embeddings-index-ui/src/embeddingsIndexDashboard/IndexFormInput.tsx | Replace space with gap. |
| plugins/@sanity/embeddings-index-ui/src/embeddingsIndexDashboard/IndexEditor.tsx | Replace space with gap. |
| plugins/@sanity/embeddings-index-ui/src/embeddingsIndexDashboard/EmbeddingsIndexTool.tsx | Replace space with gap. |
| plugins/@sanity/document-internationalization/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/document-internationalization/src/components/LanguagePatch.tsx | Move useToast to toast subpath. |
| plugins/@sanity/document-internationalization/src/components/LanguagePatch.test.tsx | Mock toast subpath module. |
| plugins/@sanity/document-internationalization/src/components/LanguageOption.tsx | Move toast/tooltip to subpaths. |
| plugins/@sanity/document-internationalization/src/components/LanguageOption.test.tsx | Mock toast subpath module. |
| plugins/@sanity/document-internationalization/src/components/LanguageManage.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/document-internationalization/src/components/DocumentInternationalizationMenu.tsx | Move Popover to popover subpath. |
| plugins/@sanity/document-internationalization/src/components/BulkPublish/InfoIcon.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/document-internationalization/src/components/BulkPublish/index.tsx | Move useToast to toast subpath. |
| plugins/@sanity/document-internationalization/src/components/BulkPublish/index.test.tsx | Mock toast subpath module. |
| plugins/@sanity/document-internationalization/src/actions/DuplicateWithTranslationsAction.tsx | Move useToast to toast subpath. |
| plugins/@sanity/document-internationalization/src/actions/DuplicateWithTranslationsAction.test.tsx | Mock toast subpath module. |
| plugins/@sanity/document-internationalization/src/actions/DeleteTranslationAction.tsx | Move useToast to toast subpath. |
| plugins/@sanity/document-internationalization/src/actions/DeleteTranslationAction.test.tsx | Mock toast subpath module. |
| plugins/@sanity/document-internationalization/src/actions/DeleteMetadataAction.tsx | Move useToast to toast subpath. |
| plugins/@sanity/document-internationalization/src/actions/DeleteMetadataAction.test.tsx | Mock toast subpath module. |
| plugins/@sanity/debug-live-sync-tags/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/dashboard/src/widgets/projectInfo/ProjectInfo.tsx | Move Code to code subpath. |
| plugins/@sanity/dashboard/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/cross-dataset-duplicator/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/cross-dataset-duplicator/src/components/StatusBadge.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/color-input/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/code-input/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/code-input/src/CodeInputFullscreen.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/block-insert-picker/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/block-insert-picker/src/blockInsertPicker.tsx | Move popover/toast to subpaths. |
| plugins/@sanity/block-insert-picker/src/blockInsertPicker.test.tsx | Move ToastProvider to toast subpath. |
| plugins/@sanity/assist/src/useApiClient.ts | Move useToast to toast subpath. |
| plugins/@sanity/assist/src/translate/FieldTranslationProvider.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/assist/src/schemas/assistDocumentSchema.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/assist/src/presence/AiFieldPresence.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/assist/src/index.ts | Import Sanity UI stylesheet. |
| plugins/@sanity/assist/src/fieldActions/PrivateIcon.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/assist/src/fieldActions/customFieldActions.tsx | Move toast types/hook to toast subpath. |
| plugins/@sanity/assist/src/assistLayout/RunInstructionProvider.tsx | Move Tooltip to tooltip subpath. |
| plugins/@sanity/assist/src/assistInspector/InstructionTaskHistoryButton.tsx | Replace removed hook; move Popover to subpath. |
| plugins/@sanity/assist/src/assistInspector/FieldAutocomplete.tsx | Move Autocomplete/Breadcrumbs to subpaths. |
| plugins/@sanity/assist/src/assistDocument/hooks/useInstructionToaster.tsx | Move useToast to toast subpath. |
| plugins/@sanity/assist/src/assistDocument/components/instruction/appearance/IconInput.tsx | Move menu components to menu subpath. |
| dev/test-studio/src/studio-secrets/index.tsx | Move Code to code subpath. |
| dev/test-studio/src/script-runner/ScriptRunnerTool.tsx | Move Code to code subpath. |
| dev/test-studio/src/sanity-naive-html-serializer/index.tsx | Move code/toast/tooltip to subpaths. |
| dev/test-studio/src/i18n-array-translation/index.tsx | Move Code to code subpath. |
| dev/test-studio/src/document-internationalization-translation/index.tsx | Move Code to code subpath. |
| dev/test-studio/sanity.config.ts | Import Sanity UI stylesheet. |
| .changeset/sanity-ui-v4-sanity-vercel-protection-bypass.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-translations-tab.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-table.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-studio-secrets.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-sfcc.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-sanity-plugin-async-list.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-rich-date-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-workspace-home.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-workflow.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-utils.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-shopify-assets.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-mux-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-media.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-markdown.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-internationalized-array.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-iframe-pane.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-hotspot-array.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-graph-view.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-google-translate.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-documents-pane.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-dashboard-widget-vercel.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-dashboard-widget-netlify.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-dashboard-widget-document-list.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-cloudinary.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-bynder-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-asset-source-unsplash.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-plugin-aprimo.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-personalization-plugin.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-orderable-document-list.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-language-filter.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-hierarchical-document-list.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-google-maps-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-form-toolkit.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-embeddings-index-ui.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-document-internationalization.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-debug-live-sync-tags.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-dashboard.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-cross-dataset-duplicator.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-color-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-code-input.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-block-insert-picker.md | Patch changeset for v4 UI support. |
| .changeset/sanity-ui-v4-sanity-assist.md | Patch changeset for v4 UI support. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 217 out of 218 changed files in this pull request and generated no new comments.
Suppressed comments (1)
.changeset/sanity-ui-v4.md:5
- This changeset combines version bumps for 40+ published packages in a single file. Repo guidance requires one changeset file per modified plugin/package so each plugin’s changelog stays relevant (see AGENTS.md:67–71). Please split this into separate
.changeset/*.mdfiles (one per package listed here), each describing that package’s@sanity/uiv4 compatibility changes.
---
"@sanity/assist": patch
"@sanity/block-insert-picker": patch
"@sanity/code-input": patch
"@sanity/color-input": patch
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 217 out of 218 changed files in this pull request and generated no new comments.
Suppressed comments (1)
.changeset/sanity-ui-v4.md:5
- This changeset combines 40+ packages/plugins into a single file. Repo guidance requires a separate changeset file per modified plugin/package so each changelog stays relevant (see AGENTS.md:67-71). Please split this into individual changeset files (one per package) and remove this combined one.
---
"@sanity/assist": patch
"@sanity/block-insert-picker": patch
"@sanity/code-input": patch
"@sanity/color-input": patch
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 217 out of 218 changed files in this pull request and generated no new comments.
Suppressed comments (1)
.changeset/sanity-ui-v4.md:5
- This changeset combines dozens of packages in a single file. Repo guidance asks for a separate changeset per plugin/package so each changelog only includes relevant entries (see AGENTS.md:67-72). Please split this into individual changeset files (one per package touched) and remove this combined changeset.
---
"@sanity/assist": patch
"@sanity/block-insert-picker": patch
"@sanity/code-input": patch
"@sanity/color-input": patch
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @sanity/assist@6.1.18 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/block-insert-picker@1.0.5 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/code-input@7.3.4 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/color-input@6.1.2 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/cross-dataset-duplicator@2.1.1 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - @sanity/studio-secrets@4.0.16 ## @sanity/dashboard@6.0.15 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/debug-live-sync-tags@1.0.14 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/document-internationalization@6.2.29 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - sanity-plugin-utils@2.0.14 ## @sanity/embeddings-index-ui@4.0.14 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/form-toolkit@3.0.14 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - @sanity/sanity-plugin-async-list@3.0.1 ## @sanity/google-maps-input@6.1.10 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/hierarchical-document-list@4.0.1 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/language-filter@5.0.15 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/orderable-document-list@2.0.19 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - sanity-plugin-utils@2.0.14 ## @sanity/personalization-plugin@3.1.1 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - @sanity/studio-secrets@4.0.16 ## @sanity/rich-date-input@4.1.3 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/sanity-plugin-async-list@3.0.1 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - @sanity/studio-secrets@4.0.16 ## @sanity/sfcc@1.0.26 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/studio-secrets@4.0.16 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/table@3.1.13 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## @sanity/vercel-protection-bypass@5.0.20 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-aprimo@2.0.17 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-asset-source-unsplash@7.0.22 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-bynder-input@5.0.3 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-cloudinary@2.1.1 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - @sanity/studio-secrets@4.0.16 ## sanity-plugin-dashboard-widget-document-list@3.0.16 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-dashboard-widget-netlify@3.0.15 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-dashboard-widget-vercel@4.0.25 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-documents-pane@4.1.16 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - sanity-plugin-utils@2.0.14 ## sanity-plugin-google-translate@4.0.10 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-graph-view@5.0.20 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-hotspot-array@5.0.13 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-iframe-pane@5.0.31 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-internationalized-array@5.1.26 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-markdown@9.0.10 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-media@6.1.2 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-mux-input@5.0.9 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-shopify-assets@2.0.13 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-studio-smartling@5.0.15 ### Patch Changes - Updated dependencies [[`0650099`](0650099)]: - sanity-translations-tab@6.1.18 ## sanity-plugin-transifex@5.1.18 ### Patch Changes - Updated dependencies [[`0650099`](0650099)]: - sanity-translations-tab@6.1.18 ## sanity-plugin-utils@2.0.14 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-plugin-workflow@3.0.40 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 - Updated dependencies [[`0650099`](0650099)]: - sanity-plugin-utils@2.0.14 ## sanity-plugin-workspace-home@3.0.18 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 ## sanity-translations-tab@6.1.18 ### Patch Changes - [#1793](#1793) [`0650099`](0650099) Thanks [@stipsan](https://github.com/stipsan)! - upgrade to `@sanity/ui` v4 <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Wide Studio UI dependency bump across many published packages; consumers may see layout or component API differences from @sanity/ui v4 even though these are patch releases. > > **Overview** > **Changesets release** that bumps a large set of Sanity Studio plugins to new patch versions after upgrading their `@sanity/ui` dependency to **v4** ([#1793](#1793)). > > Each affected package gets an updated `CHANGELOG.md` entry and `package.json` version. There is no application source change in this diff—only release metadata. The pending `.changeset/sanity-ui-v4.md` file is removed because those version bumps are now applied. > > Packages that only pick up the change transitively (e.g. `sanity-plugin-studio-smartling`, `sanity-plugin-transifex` via `sanity-translations-tab`) are patch-bumped without their own UI changelog line. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit ba821bf. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
Update workspace plugins from
@sanity/uiv3 to stable v4.Changes
@sanity/ui@^4.0.0@sanity/ui@3.xdependency isolated in the lockfilespace→gap,columns→gridTemplateColumns,useClickOutside→useClickOutsideEvent)@sanity/ui/styles.cssfrom package entry points that render Sanity UIResizeObserverstub for UI v4@sanity/uiv4Version history covered
next.3: removed props and hooksnext.4: nativeResizeObservernext.5: component subpath entry points and consumer-owned stylesheet importnext.6: unminified stylesheet patchnext.7: typed./styles.cssexport, allowing removal of temporary ambient declarationsVerification
pnpm format— passedpnpm lint— passedpnpm knip— passedpnpm build— 52/52 tasks passedpnpm test— 211 files and 1,281 tests passedNotes
main.sanitycontinues to resolve its own@sanity/ui@3.x; this PR does not apply a tree-wide override.