Address PR #906 review findings in google-translate plugin - #924
Address PR #906 review findings in google-translate plugin#924pedrobonamin with Copilot wants to merge 3934 commits into
Conversation
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
There was a problem hiding this comment.
Pull request overview
Updates the sanity-plugin-google-translate port to address prior review feedback by improving translation flow behavior, normalizing locale codes for API/UI consistency, extending Sanity schema option typings for better TS ergonomics, and correcting README usage examples.
Changes:
- Fixes translation state handling and normalizes target locales in
GoogleTranslateInputto avoid same-language translation attempts and improve messaging. - Adds TypeScript module augmentation so
translate/apiKeyare recognized on Sanity object schemaoptions, plus a small type-level test. - Updates README config example to use valid
defineConfig+export default, and removes an unnecessary@ts-expect-errorfrom the test studio.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| plugins/sanity-plugin-google-translate/src/types.ts | Adds module augmentation to extend Sanity ObjectOptions with plugin schema options. |
| plugins/sanity-plugin-google-translate/src/types.test.ts | Adds a Vitest type test asserting the ObjectOptions augmentation is applied. |
| plugins/sanity-plugin-google-translate/src/GoogleTranslateInput.tsx | Refines translation flow/state handling and normalizes locale codes for target comparison/API params/UI messaging. |
| plugins/sanity-plugin-google-translate/README.md | Fixes the Sanity config usage snippet to valid defineConfig + default export. |
| dev/test-studio/src/google-translate/index.tsx | Removes a now-unnecessary @ts-expect-error thanks to improved schema option typings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const source = extractLanguageFromCode(config.baseLanguage) | ||
|
|
||
| if (allLanguageFields.length === 1) { | ||
| const singleField = allLanguageFields[0]! | ||
| const target = extractLanguageFromCode(singleField.fieldLang) | ||
| if (target !== source) { | ||
| setIsTranslating(true) | ||
| } else { | ||
| return toast.push({ | ||
| title: `Bad language pair`, | ||
| status: `warning`, | ||
| description: `Cannot translate from "${source.toLocaleUpperCase()}" to "${target.toLocaleUpperCase()}"`, | ||
| }) | ||
| } | ||
| } else { | ||
| setIsTranslating(true) | ||
| } |
Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
* fix(deps): update dependency @tanstack/react-virtual to ^3.14.6 * chore(deps): changeset for dependency update --------- Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
* Remove redundant dts option from tsdown configs
Since typescript v7 (tsgo) landed, tsdown enables dts generation
automatically (packages declare types, or the resolved tsconfig sets
declaration: true) and rolldown-plugin-dts picks the tsgo generator
whenever the installed typescript major is >= 7. The explicit
dts: {tsgo: true} / dts: true options are therefore no-ops.
Verified: dist output across all 50 packages is byte-identical
before/after this change.
Co-authored-by: Cody Olsen <stipsan@users.noreply.github.com>
* Mention tsconfig declaration fallback in AGENTS.md dts note
Not all packages declare a types field (@repo/generators,
@sanity/form-toolkit); for those, tsdown enables dts generation via
declaration: true inherited from the @sanity/tsconfig presets.
Co-authored-by: Cody Olsen <stipsan@users.noreply.github.com>
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Cody Olsen <stipsan@users.noreply.github.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [@sanity/client](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/client)) | [`^7.25.0` → `^7.26.0`](https://renovatebot.com/diffs/npm/@sanity%2fclient/7.25.0/7.26.0) |  |  | --- ### Release Notes <details> <summary>sanity-io/client (@​sanity/client)</summary> ### [`v7.26.0`](https://redirect.github.com/sanity-io/client/blob/HEAD/CHANGELOG.md#7260-2026-07-29) [Compare Source](https://redirect.github.com/sanity-io/client/compare/v7.25.0...v7.26.0) ##### Features - support querying by multiple variant conditions ([#​1239](https://redirect.github.com/sanity-io/client/issues/1239)) ([e5e7980](https://redirect.github.com/sanity-io/client/commit/e5e7980d344a1389fb53bb8d8053b5c4613986cf)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQ0LjguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Routine patch/minor dependency bump with lockfile-only changes; no repo code changes, though API behavior may shift slightly via the new client release. > > **Overview** > Bumps the shared **`@sanity/client`** catalog entry from **`^7.25.0`** to **`^7.26.0`** and refreshes **`pnpm-lock.yaml`** so the monorepo resolves a single **7.26.0** instance everywhere (including workspace overrides and packages that depend on **`catalog:`**). > > Upstream **7.26.0** adds support for querying by multiple variant conditions; this repo change is version alignment only—no application or plugin source edits. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 01e5fcf. 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>
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/sanity-plugin-async-list@3.0.0 ### Major Changes - [#1087](#1087) [`f4e7fcc`](f4e7fcc) Thanks [@stipsan](https://github.com/stipsan)! - Refactor the input into a real React component and fix the `async-list-undefined` namespace/id - **Breaking:** `AsyncList` is now a regular React component that takes a single `props` argument (the standard Sanity input props plus an `options` field), instead of being called as `AsyncList(props, options)`. For the `components.input` slot, use the new `createAsyncListInput(options)` factory: `input: createAsyncListInput({loader})`. This makes the input safe under the Rules of Hooks and lets the React Compiler optimize it. - **Breaking:** the secrets namespace and DOM `id` are no longer derived as `async-list-${schemaType}` (which became the literal `async-list-undefined` for component usage). The DOM `id` now uses Sanity's stable per-field id, and the secrets namespace falls back to `async-list` (instead of `async-list-undefined`) when no `schemaType`/`secrets.namespace` is available. When using the component with `secrets`, set an explicit `secrets.namespace`; a dev warning is logged if it is missing. - Fix: the debounced search handler is stable and is cancelled on unmount, so it no longer drops queued calls or updates state on an unmounted tree. - Fix: the value-change handler no longer depends on the whole `props` object, avoiding unnecessary `Autocomplete` re-renders. - Fix: loader results are validated to ensure each option's `value` is a string. ### Patch Changes - Updated dependencies [[`c61bb44`](c61bb44)]: - @sanity/studio-secrets@4.0.15 ## @sanity/personalization-plugin@3.1.0 ### Minor Changes - [#1226](#1226) [`1143bd6`](1143bd6) Thanks [@jjburbridge](https://github.com/jjburbridge)! - Add `fieldLevelPersonalization` export for segment-based field personalization. Segments can be defined statically, fetched from an external API, or stored in your Sanity dataset. `FieldPluginConfig` is renamed to `ExperimentFieldPluginConfig` (a deprecated type alias is kept for compatibility). ### Patch Changes - [#1208](#1208) [`51317b2`](51317b2) Thanks [@stipsan](https://github.com/stipsan)! - Address review feedback from the migration into the monorepo: - Fix LaunchDarkly experiment pagination so `offset` advances between pages, preventing duplicate results and a possible infinite loop - Correct misspelled plugin names (`personalistaion` → `personalization`) and stop the LaunchDarkly entry point from identifying itself as the GrowthBook plugin - Fix an operator-precedence bug in the experiment field preview that could set the title to the entire field object - Walk reference preview paths with optional chaining to avoid throwing on missing intermediate fields - Move the experiment item activation patch out of render and into an effect - Remove unused `Select` props - Fix the GrowthBook (`project` config key) and LaunchDarkly (`fieldLevelExperiments` usage) docs and drop the stale standalone-repo Studio version / tooling references - Updated dependencies [[`c61bb44`](c61bb44)]: - @sanity/studio-secrets@4.0.15 ## sanity-plugin-cloudinary@2.1.0 ### Minor Changes - [#1233](#1233) [`36f3fe2`](36f3fe2) Thanks [@ChrisLaRocque](https://github.com/ChrisLaRocque)! - Add performant preview images Asset previews and diffs now build an optimized, scaled-down preview URL with `@cloudinary/url-gen` (a 400px-wide transformation) when a cloud name is configured, instead of loading the full-size original. This keeps the Studio fast when previewing large Cloudinary assets, and falls back to the stored asset URL when no cloud name is available. - [#1227](#1227) [`3b02635`](3b02635) Thanks [@pgurley](https://github.com/pgurley), [@atlvis](https://github.com/atlvis)! - Add `cloudinaryReferencePlugin` for storing Cloudinary assets as reusable document references - New `cloudinaryReferencePlugin` registers the schema types needed to reference Cloudinary assets as documents - New `cloudinaryAssetDocument` type stores a Cloudinary asset as a standalone document - New `cloudinaryAssetReference` type references those asset documents, with a custom input for selecting and managing assets through the Cloudinary Media Library - `openMediaSelector` now supports a `showHandler` callback and a `folder` option, so the select button can show a loading state and scope the library to a folder - Fixed the internal name of `cloudinaryAssetSourcePlugin` (`cloudinart-asset-source` → `cloudinary-asset-source`) ### Patch Changes - [#1236](#1236) [`7ec89b6`](7ec89b6) Thanks [@stipsan](https://github.com/stipsan)! - - Fix the `cloudinaryAssetSourcePlugin` name, which was mistakenly registered as `cloudinart-asset-source` - Wait for the Cloudinary Media Library script to finish loading before opening it, avoiding runtime errors when several inputs mount at once - Fix a user-facing typo in the asset source loading message ("Media Libary" → "Media Library") - Remove an invalid `src`-less `<track>` element from the video preview - Correct the README usage examples (`defineConfg` → `defineConfig`) and drop stale standalone-repo "Develop & test" / "Release new version" instructions - Updated dependencies [[`c61bb44`](c61bb44)]: - @sanity/studio-secrets@4.0.15 ## sanity-plugin-media@6.1.0 ### Minor Changes - [#1119](#1119) [`ab39674`](ab39674) Thanks [@lud-hu](https://github.com/lud-hu)! - Add an "Edit Media" asset source so media details (alt text, title, tags, etc.) can be edited directly from an image or file field on a document, without opening the full Media tool. - [#1117](#1117) [`6f4316d`](6f4316d) Thanks [@nickeforsberg](https://github.com/nickeforsberg)! - Add an `excludeTags` option that hides assets referencing the listed `media.tag` slugs (`name.current` values). Excluded assets are omitted from the Media browser grid and asset-picker queries, and the matching tags are hidden from the tag sidebar and tag search facet. The asset edit dialog still lists all tags so you can assign or remove them on an open asset. - [#1121](#1121) [`30fa7e2`](30fa7e2) Thanks [@bobbygeo](https://github.com/bobbygeo), [@pedrobonamin](https://github.com/pedrobonamin)! - Add folder management to the media browser - Organise assets into nested folders, backed by a new `media.folder` document type (a `name` plus a weak `parent` reference) and a single weak `opt.media.folder` reference on each asset (mirroring how tags work). Renaming a folder is a one-field document write regardless of how many assets it contains. - Browse folders in a dedicated sidebar tree, with breadcrumb navigation, create / rename / delete flows, a bulk "Move to folder" dialog, and per-asset folder controls in the asset details dialog. The default "All assets" view lists every asset; opening a folder filters the list to that folder. - Deleting a folder removes only the folder document — its assets stay in the library with their folder assignment cleared, and nested folders move up one level. - Support multi-select insert when the media plugin is used as an asset source for array (multiple) fields. - [#1115](#1115) [`e7ec6e6`](e7ec6e6) Thanks [@am0wa](https://github.com/am0wa)! - Extract `image` (`sanity.imageExifTags`) metadata on asset upload and include it in asset queries. The asset edit dialog now pre-fills the Description field from the image's `ImageDescription` EXIF tag as a fallback for image assets. - [#1118](#1118) [`186e29c`](186e29c) Thanks [@Polleke007](https://github.com/Polleke007), [@joepvandepol](https://github.com/joepvandepol)! - Add the ability to replace a selected asset with another one and update all of its references across documents When a single asset is selected, a new **Replace** action opens an overview where you can pick a replacement asset. Every document that references the original asset (including deeply nested image fields) is re-pointed to the chosen asset. Ported from sanity-io/sanity-plugin-media#236. ### Patch Changes - [#1108](#1108) [`1dc3a7b`](1dc3a7b) Thanks [@oxygensmith](https://github.com/oxygensmith)! - Add `crossOrigin="anonymous"` to the image thumbnail component so thumbnails load in Firefox. Firefox's Opaque Response Blocking would otherwise block Sanity CDN asset responses (which send `Vary: Origin`) when requested without an `Origin` header. ## @sanity/plugin-kit@10.0.3 ### Patch Changes - [#1698](#1698) [`d3dedd3`](d3dedd3) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency oxlint to ^1.76.0 - [#1779](#1779) [`5555795`](5555795) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency oxfmt to ^0.61.0 - [#1799](#1799) [`93858fc`](93858fc) Thanks [@stipsan](https://github.com/stipsan)! - Prefer function components via `react/prefer-function-component` (with `allowErrorBoundary`) instead of banning `Component`/`PureComponent` imports ## @sanity/cross-dataset-duplicator@2.0.13 ### Patch Changes - [#1228](#1228) [`71d77d5`](71d77d5) Thanks [@rohanvachheta](https://github.com/rohanvachheta)! - Handle reference errors during duplication by fetching missing referenced documents (including transitive refs, respecting `filter`), re-uploading any recovered assets, and retrying the transaction, with a one-by-one commit fallback - Updated dependencies [[`c61bb44`](c61bb44)]: - @sanity/studio-secrets@4.0.15 ## @sanity/embeddings-index-ui@4.0.13 ### Patch Changes - [#1792](#1792) [`c61bb44`](c61bb44) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency react-rx to ^4.2.5 ## @sanity/form-toolkit@3.0.13 ### Patch Changes - [#1234](#1234) [`1dd36c8`](1dd36c8) Thanks [@stipsan](https://github.com/stipsan)! - Address post-migration review feedback: - `FormRenderer` now renders interactive (uncontrolled) inputs when no `getFieldState` is provided, so the documented native HTML form usage works out of the box - Uncontrolled text and textarea fields honor `options.defaultValue` (controlled fields keep form-library state only, so UI and submit values stay in sync) - `FormRenderer` falls back to `field.name` for the React key when a field has no `_key` - The shared HubSpot/Mailchimp request handler defaults to the Next.js-compatible handler instead of throwing when no framework environment variable is detected, and short-circuits CORS preflight (`OPTIONS`) requests - Corrected the `formSchema`, `formiumInput`, and `mailchimpInput` usage examples (import paths and required options), README typos, and example/dev-workflow references - Updated dependencies [[`f4e7fcc`](f4e7fcc)]: - @sanity/sanity-plugin-async-list@3.0.0 ## @sanity/language-filter@5.0.14 ### Patch Changes - [#1792](#1792) [`c61bb44`](c61bb44) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency react-rx to ^4.2.5 ## @sanity/studio-secrets@4.0.15 ### Patch Changes - [#1792](#1792) [`c61bb44`](c61bb44) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency react-rx to ^4.2.5 ## sanity-plugin-hotspot-array@5.0.12 ### Patch Changes - [#1789](#1789) [`9628df4`](9628df4) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency motion to ^12.43.0 ## sanity-plugin-iframe-pane@5.0.30 ### Patch Changes - [#1789](#1789) [`9628df4`](9628df4) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency motion to ^12.43.0 ## sanity-plugin-internationalized-array@5.1.25 ### Patch Changes - [#1765](#1765) [`97937c4`](97937c4) Thanks [@pedrobonamin](https://github.com/pedrobonamin)! - Add a stable `data-testid` on the document-level add-translations panel for e2e coverage ## sanity-plugin-mux-input@5.0.8 ### Patch Changes - [#1792](#1792) [`c61bb44`](c61bb44) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency react-rx to ^4.2.5 ## sanity-plugin-studio-smartling@5.0.14 ### Patch Changes - [#1216](#1216) [`d4dd45b`](d4dd45b) Thanks [@stipsan](https://github.com/stipsan)! - Harden the Smartling adapter and fix docs: - Send the secret credentials JSON verbatim during authentication instead of double-encoding it, which could break auth with proxies that forward the request body as-is - Throw a clear error (surfacing Smartling's message) when authentication does not return an access token, instead of a cryptic `TypeError` - Avoid throwing when no existing job is found or when a translation/progress response is missing its expected payload - Guard the progress calculation against a zero total word count so empty documents no longer report `NaN`/`Infinity` - Fix the `additionalDeserializers` option name in the advanced configuration docs (was `additonalDeserializers`) and update the README development/release instructions for the monorepo ## sanity-plugin-workflow@3.0.39 ### Patch Changes - [#1789](#1789) [`9628df4`](9628df4) Thanks [@squiggler-app](https://github.com/apps/squiggler-app)! - fix(deps): update dependency motion to ^12.43.0 ## @sanity/document-internationalization@6.2.28 ## @sanity/sfcc@1.0.25 <!-- CURSOR_SUMMARY --> --- > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/bugbot) is generating a summary for commit 9246b02. 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>
<!-- CURSOR_AGENT_PR_BODY_BEGIN --> Draft PR to exercise plugins against `sanity@next` and `@sanity/vision@next` (currently `6.9.0-next.19`). ### Changes - `pnpm-workspace.yaml` overrides: `sanity`, `@sanity/vision` → `next` - Also pins `@sanity/mutator`, `@sanity/schema`, `@sanity/types`, `@sanity/util`, and `groq` to `next` so they stay in lockstep with `sanity` (required to avoid duplicate Studio package versions / dts emit failures) - Lockfile regenerated; `minimumReleaseAgeExclude` updated for `react-rx@5.1.1` (pulled in by `sanity@next`) - Catalog entries left on `^6.7.0` — only overrides force the next dist-tag ### Compatibility fix - `@sanity/color-input`: make preview `prepare` selected fields optional so the schema type is assignable under `sanity@next`'s `Record<string, any>` prepare typing (TS2322) ### Verification - `pnpm format` ✅ - `pnpm lint` ✅ - `pnpm knip` ✅ - `pnpm build` ✅ - `pnpm test run` ✅ (211 files / 1280 tests) ### Notes - Changeset only for the color-input typing fix; the override pin itself is a compatibility test, not a release - Intent: verify plugins against the next Studio line before it ships ### Intent Compatibility test only — do not merge until ready to adopt the next channel. <!-- CURSOR_AGENT_PR_BODY_END --> <div><a href="https://cursor.com/agents/bc-5154b38b-9983-414d-866b-14b6a4428d3c?cursor_ref=pr_footer&cursor_cta=open_in_web"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a> <a href="https://cursor.com/background-agent?bcId=bc-5154b38b-9983-414d-866b-14b6a4428d3c&cursor_ref=pr_footer&cursor_cta=open_in_cursor"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a> </div> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [@sanity/mutator](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/mutator)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/@sanity%2fmutator/6.7.0/6.8.0) |  |  | | [@sanity/schema](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/schema)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/@sanity%2fschema/6.7.0/6.8.0) |  |  | | [@sanity/types](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/types)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/@sanity%2ftypes/6.7.0/6.8.0) |  |  | | [@sanity/util](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/util)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/@sanity%2futil/6.7.0/6.8.0) |  |  | | [@sanity/vision](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/vision)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/@sanity%2fvision/6.7.0/6.8.0) |  |  | | [groq](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/groq)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/groq/6.7.0/6.8.0) |  |  | | [sanity](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/sanity)) | [`^6.7.0` → `^6.8.0`](https://renovatebot.com/diffs/npm/sanity/6.7.0/6.8.0) |  |  | --- ### Release Notes <details> <summary>sanity-io/sanity (@​sanity/mutator)</summary> ### [`v6.8.0`](https://redirect.github.com/sanity-io/sanity/releases/tag/v6.8.0) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.7.0...v6.8.0) ##### Sanity Studio v6.8.0 This release includes various improvements and bug fixes. For the complete changelog with all details, please visit: [www.sanity.io/changelog/studio-Ni43LjA](https://www.sanity.io/changelog/studio-Ni43LjA) ##### Install or upgrade Sanity Studio To upgrade to this version, run: ```bash npm install sanity@latest ``` To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on [Installing and Upgrading Sanity Studio](https://www.sanity.io/docs/upgrade). ##### 📓 Full changelog | Author | Message | Commit | | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(core): enable clear button when perspective is the non default one ([#​13819](https://redirect.github.com/sanity-io/sanity/issues/13819)) | [`1938e37`](https://redirect.github.com/sanity-io/sanity/commit/1938e375862ad99379958736e8c7b2b2139b8ee7) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(core): copy to drafts using transaction, prepare for variants ([#​13815](https://redirect.github.com/sanity-io/sanity/issues/13815)) | [`f283b1e`](https://redirect.github.com/sanity-io/sanity/commit/f283b1e58518888d9f6afbf095666784a4e1dfd9) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | chore(structure): useCopyToDrafts changes ([#​13806](https://redirect.github.com/sanity-io/sanity/issues/13806)) | [`e65a38a`](https://redirect.github.com/sanity-io/sanity/commit/e65a38aa6311fa1a95dd67009a6992fdd0aed6bc) | | squiggler-app\[bot] | chore(deps): update dependency [@​sanity/workbench](https://redirect.github.com/sanity/workbench) to v0.1.0-alpha.36 ([#​13808](https://redirect.github.com/sanity-io/sanity/issues/13808)) | [`ebc1904`](https://redirect.github.com/sanity-io/sanity/commit/ebc1904292c45d3b15b3fb9dd075d4308705596d) | | squiggler-app\[bot] | fix(deps): update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.15.1 ([#​13813](https://redirect.github.com/sanity-io/sanity/issues/13813)) | [`f57fff2`](https://redirect.github.com/sanity-io/sanity/commit/f57fff2ad2680e0c523d33bb543ffdc4dc5b12cd) | | squiggler-app\[bot] | chore(deps): update dependency [@​sentry/react](https://redirect.github.com/sentry/react) to ^10.68.0 ([#​13812](https://redirect.github.com/sanity-io/sanity/issues/13812)) | [`391db94`](https://redirect.github.com/sanity-io/sanity/commit/391db9438a9740aa5108717d0189dd2a139ea40d) | | squiggler-app\[bot] | chore(deps): update dependency turbo to ^2.10.7 ([#​13809](https://redirect.github.com/sanity-io/sanity/issues/13809)) | [`b341cd1`](https://redirect.github.com/sanity-io/sanity/commit/b341cd173f79a607904957a1580e4c6d8bdbaa12) | | squiggler-app\[bot] | fix(deps): update dev-non-major ([#​13810](https://redirect.github.com/sanity-io/sanity/issues/13810)) | [`bd9cee7`](https://redirect.github.com/sanity-io/sanity/commit/bd9cee7083d7233954d93f72a54ad58afe264fe5) | | squiggler-app\[bot] | chore(deps): update dependency [@​sanity/ailf](https://redirect.github.com/sanity/ailf) to ^7.33.0 ([#​13811](https://redirect.github.com/sanity-io/sanity/issues/13811)) | [`4c72095`](https://redirect.github.com/sanity-io/sanity/commit/4c7209502f827613b8e4c4d534fdd0cd820544b1) | | squiggler-app\[bot] | chore(deps): update dependency [@​sanity/vanilla-extract-vite-plugin](https://redirect.github.com/sanity/vanilla-extract-vite-plugin) to ^0.2.8 ([#​13807](https://redirect.github.com/sanity-io/sanity/issues/13807)) | [`733f618`](https://redirect.github.com/sanity-io/sanity/commit/733f6186e1a0d02569be09b0f0ebbc439a59a4a6) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(oxlint): allow side-effect css imports without suppressions ([#​13796](https://redirect.github.com/sanity-io/sanity/issues/13796)) | [`ef50a8f`](https://redirect.github.com/sanity-io/sanity/commit/ef50a8f2499f6770fb34983eff6723f521e218c9) | | [@​stipsan](https://redirect.github.com/stipsan) | fix(releases): throttle published archived history batches ([#​13805](https://redirect.github.com/sanity-io/sanity/issues/13805)) | [`afb3074`](https://redirect.github.com/sanity-io/sanity/commit/afb3074b035efe4297aa1e9b7ac48cbc9fa82ea9) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(deps): upgrade to typescript 7 ([#​13759](https://redirect.github.com/sanity-io/sanity/issues/13759)) | [`fe0cd99`](https://redirect.github.com/sanity-io/sanity/commit/fe0cd997dd0e489371d05b2c90738e6e8f668418) | | [@​stipsan](https://redirect.github.com/stipsan) | fix(deps): bump react-rx to 4.2.5 ([#​13797](https://redirect.github.com/sanity-io/sanity/issues/13797)) | [`d820ba1`](https://redirect.github.com/sanity-io/sanity/commit/d820ba12450f8872aec5aebc690cc1ac44010035) | | [@​juice49](https://redirect.github.com/juice49) | fix(sanity): virtualised item dimensions in hidden `CommandList` ([#​13792](https://redirect.github.com/sanity-io/sanity/issues/13792)) | [`2052523`](https://redirect.github.com/sanity-io/sanity/commit/20525238d6599f5d956535c5a80df2cf37d8a23c) | | squiggler-app\[bot] | chore(deps): dedupe pnpm-lock.yaml ([#​13766](https://redirect.github.com/sanity-io/sanity/issues/13766)) | [`015f924`](https://redirect.github.com/sanity-io/sanity/commit/015f924830a17aba21042e54f4b03f0f2e4de586) | | squiggler-app\[bot] | chore(tests): generate dts tests 🤖 ✨ ([#​13801](https://redirect.github.com/sanity-io/sanity/issues/13801)) | [`6ab5f7d`](https://redirect.github.com/sanity-io/sanity/commit/6ab5f7d655d2015e9eb75713e385c7e8231f844d) | | [@​colepeters](https://redirect.github.com/colepeters) | feat(sanity): install ui-poc for Studio, migrate 2 Boxes ([#​13776](https://redirect.github.com/sanity-io/sanity/issues/13776)) | [`e157f63`](https://redirect.github.com/sanity-io/sanity/commit/e157f63fb2cc7b38436cbdf1f029c539bd30559d) | | [@​jordanl17](https://redirect.github.com/jordanl17) | chore(codeowners): assign presentation tool to studio team ([#​13769](https://redirect.github.com/sanity-io/sanity/issues/13769)) | [`cad24ea`](https://redirect.github.com/sanity-io/sanity/commit/cad24eaf6156758b7bbce26848445b48a23a54b4) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(structure): allow creating variant documents with no base doc ([#​13789](https://redirect.github.com/sanity-io/sanity/issues/13789)) | [`d1db5e9`](https://redirect.github.com/sanity-io/sanity/commit/d1db5e9f026334d43ee6e7cd8b63886565534b33) | | squiggler-app\[bot] | fix(deps): update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.14.0 ([#​13777](https://redirect.github.com/sanity-io/sanity/issues/13777)) | [`8cb42ad`](https://redirect.github.com/sanity-io/sanity/commit/8cb42add66968eacd0c3bc4ccabcdcee0097cc4a) | | [@​jordanl17](https://redirect.github.com/jordanl17) | docs(telemetry): define standard location, position and path property value sets ([#​13770](https://redirect.github.com/sanity-io/sanity/issues/13770)) | [`258e6b0`](https://redirect.github.com/sanity-io/sanity/commit/258e6b00ca713f9fb338fe061d395e8a6bfa6271) | | [@​juice49](https://redirect.github.com/juice49) | chore(sanity): move `Delay` component to `core` ([#​13690](https://redirect.github.com/sanity-io/sanity/issues/13690)) | [`da8f541`](https://redirect.github.com/sanity-io/sanity/commit/da8f541d744e6307ab972cbb63f504c23b23e193) | | [@​juice49](https://redirect.github.com/juice49) | chore(sanity): return `SingleActionResult` from `createVariantDocument` ([#​13690](https://redirect.github.com/sanity-io/sanity/issues/13690)) | [`aec0ddf`](https://redirect.github.com/sanity-io/sanity/commit/aec0ddf1c872cb3b3623df77e056c2d3cb94575c) | | [@​juice49](https://redirect.github.com/juice49) | refactor(sanity): expand `createVariantScopedDocument` to explicitly handle `baseId` or `document` source ([#​13690](https://redirect.github.com/sanity-io/sanity/issues/13690)) | [`633dbd1`](https://redirect.github.com/sanity-io/sanity/commit/633dbd1517fd0da5c7f18a7bcfb7a6e6cb8d3392) | | [@​juice49](https://redirect.github.com/juice49) | chore(sanity): variant creation in document group inventory ([#​13690](https://redirect.github.com/sanity-io/sanity/issues/13690)) | [`c15ea83`](https://redirect.github.com/sanity-io/sanity/commit/c15ea83babf67ca9bc01d25eb2c39aeb01ecb9b3) | | [@​jordanl17](https://redirect.github.com/jordanl17) | fix(test-config): pin locale to en-US for deterministic test runs ([#​13779](https://redirect.github.com/sanity-io/sanity/issues/13779)) | [`8dc3d96`](https://redirect.github.com/sanity-io/sanity/commit/8dc3d96f8e853a91ff71a45601bbbabc46fcb056) | | [@​jordanl17](https://redirect.github.com/jordanl17) | perf(presentation): cache container rect during panel resize drags ([#​13762](https://redirect.github.com/sanity-io/sanity/issues/13762)) | [`640cbb9`](https://redirect.github.com/sanity-io/sanity/commit/640cbb9758238ca64496bd7fd5dd751e6b096dd6) | | [@​jordanl17](https://redirect.github.com/jordanl17) | perf(core): memoize document presence observable in useDocumentPresence ([#​13761](https://redirect.github.com/sanity-io/sanity/issues/13761)) | [`9479332`](https://redirect.github.com/sanity-io/sanity/commit/9479332b9e78b3e71473911c01ab111ee3903ca2) | | [@​jordanl17](https://redirect.github.com/jordanl17) | refactor(structure): rename document pane telemetry events to active voice ([#​13774](https://redirect.github.com/sanity-io/sanity/issues/13774)) | [`8546b73`](https://redirect.github.com/sanity-io/sanity/commit/8546b7377ef92770212cec9bdf42a936bec2b41b) | | [@​jordanl17](https://redirect.github.com/jordanl17) | perf(core): defer global search results rendering ([#​13554](https://redirect.github.com/sanity-io/sanity/issues/13554)) | [`6e51b5c`](https://redirect.github.com/sanity-io/sanity/commit/6e51b5c11fda71dfb23e0f8843fdb55f6656229c) | | [@​juice49](https://redirect.github.com/juice49) | fix(sanity): download asset in new browsing context ([#​13768](https://redirect.github.com/sanity-io/sanity/issues/13768)) | [`851b049`](https://redirect.github.com/sanity-io/sanity/commit/851b049a43df83931064dc078a2d80cf5a926b54) | | sieve-sanity\[bot] | fix(sanity): set referrerPolicy on grid thumbnail in image select dialog ([#​13664](https://redirect.github.com/sanity-io/sanity/issues/13664)) ([#​13665](https://redirect.github.com/sanity-io/sanity/issues/13665)) | [`3051e64`](https://redirect.github.com/sanity-io/sanity/commit/3051e642d7b722c80288cd4c6f672f3d7d85e02c) | | [@​jordanl17](https://redirect.github.com/jordanl17) | feat(core): add telemetry events for scheduled drafts ([#​13689](https://redirect.github.com/sanity-io/sanity/issues/13689)) | [`6ae94fd`](https://redirect.github.com/sanity-io/sanity/commit/6ae94fddcbb66056d42c4391169c907e79acfc3c) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(variants): wire ifPublishedVariantRevisionId on variant publish ([#​13765](https://redirect.github.com/sanity-io/sanity/issues/13765)) | [`d370b25`](https://redirect.github.com/sanity-io/sanity/commit/d370b254bec039b004246065d064b12237a87422) | </details> <details> <summary>sanity-io/sanity (@​sanity/vision)</summary> ### [`v6.8.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/@​sanity/vision/CHANGELOG.md#680-2026-07-30) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.7.0...v6.8.0) ##### Bug Fixes - **deps:** bump react-rx to 4.2.5 ([#​13797](https://redirect.github.com/sanity-io/sanity/issues/13797)) ([d820ba1](https://redirect.github.com/sanity-io/sanity/commit/d820ba12450f8872aec5aebc690cc1ac44010035)) </details> <details> <summary>sanity-io/sanity (sanity)</summary> ### [`v6.8.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/sanity/CHANGELOG.md#680-2026-07-30) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.7.0...v6.8.0) ##### Features - **core:** add telemetry events for scheduled drafts ([#​13689](https://redirect.github.com/sanity-io/sanity/issues/13689)) ([6ae94fd](https://redirect.github.com/sanity-io/sanity/commit/6ae94fddcbb66056d42c4391169c907e79acfc3c)) - **sanity:** install ui-poc for Studio, migrate 2 Boxes ([#​13776](https://redirect.github.com/sanity-io/sanity/issues/13776)) ([e157f63](https://redirect.github.com/sanity-io/sanity/commit/e157f63fb2cc7b38436cbdf1f029c539bd30559d)) ##### Bug Fixes - **core:** copy to drafts using transaction, prepare for variants ([#​13815](https://redirect.github.com/sanity-io/sanity/issues/13815)) ([f283b1e](https://redirect.github.com/sanity-io/sanity/commit/f283b1e58518888d9f6afbf095666784a4e1dfd9)) - **core:** enable clear button when perspective is the non default one ([#​13819](https://redirect.github.com/sanity-io/sanity/issues/13819)) ([1938e37](https://redirect.github.com/sanity-io/sanity/commit/1938e375862ad99379958736e8c7b2b2139b8ee7)) - **deps:** bump react-rx to 4.2.5 ([#​13797](https://redirect.github.com/sanity-io/sanity/issues/13797)) ([d820ba1](https://redirect.github.com/sanity-io/sanity/commit/d820ba12450f8872aec5aebc690cc1ac44010035)) - **deps:** update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.14.0 ([#​13777](https://redirect.github.com/sanity-io/sanity/issues/13777)) ([8cb42ad](https://redirect.github.com/sanity-io/sanity/commit/8cb42add66968eacd0c3bc4ccabcdcee0097cc4a)) - **deps:** update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.15.1 ([#​13813](https://redirect.github.com/sanity-io/sanity/issues/13813)) ([f57fff2](https://redirect.github.com/sanity-io/sanity/commit/f57fff2ad2680e0c523d33bb543ffdc4dc5b12cd)) - **releases:** throttle published archived history batches ([#​13805](https://redirect.github.com/sanity-io/sanity/issues/13805)) ([afb3074](https://redirect.github.com/sanity-io/sanity/commit/afb3074b035efe4297aa1e9b7ac48cbc9fa82ea9)) - **sanity:** download asset in new browsing context ([851b049](https://redirect.github.com/sanity-io/sanity/commit/851b049a43df83931064dc078a2d80cf5a926b54)) - **sanity:** set referrerPolicy on grid thumbnail in image select dialog ([#​13664](https://redirect.github.com/sanity-io/sanity/issues/13664)) ([#​13665](https://redirect.github.com/sanity-io/sanity/issues/13665)) ([3051e64](https://redirect.github.com/sanity-io/sanity/commit/3051e642d7b722c80288cd4c6f672f3d7d85e02c)) - **sanity:** virtualised item dimensions in hidden `CommandList` ([#​13792](https://redirect.github.com/sanity-io/sanity/issues/13792)) ([2052523](https://redirect.github.com/sanity-io/sanity/commit/20525238d6599f5d956535c5a80df2cf37d8a23c)) - **structure:** allow creating variant documents with no base doc ([#​13789](https://redirect.github.com/sanity-io/sanity/issues/13789)) ([d1db5e9](https://redirect.github.com/sanity-io/sanity/commit/d1db5e9f026334d43ee6e7cd8b63886565534b33)) - **variants:** wire ifPublishedVariantRevisionId on variant publish ([#​13765](https://redirect.github.com/sanity-io/sanity/issues/13765)) ([d370b25](https://redirect.github.com/sanity-io/sanity/commit/d370b254bec039b004246065d064b12237a87422)) ##### Performance Improvements - **core:** defer global search results rendering ([#​13554](https://redirect.github.com/sanity-io/sanity/issues/13554)) ([6e51b5c](https://redirect.github.com/sanity-io/sanity/commit/6e51b5c11fda71dfb23e0f8843fdb55f6656229c)) - **core:** memoize document presence observable in useDocumentPresence ([#​13761](https://redirect.github.com/sanity-io/sanity/issues/13761)) ([9479332](https://redirect.github.com/sanity-io/sanity/commit/9479332b9e78b3e71473911c01ab111ee3903ca2)) - **presentation:** cache container rect during panel resize drags ([#​13762](https://redirect.github.com/sanity-io/sanity/issues/13762)) ([640cbb9](https://redirect.github.com/sanity-io/sanity/commit/640cbb9758238ca64496bd7fd5dd751e6b096dd6)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQ0LjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [renovatebot/github-action](https://redirect.github.com/renovatebot/github-action) | action | patch | `v46.2.0` → `v46.2.1` | --- ### Release Notes <details> <summary>renovatebot/github-action (renovatebot/github-action)</summary> ### [`v46.2.1`](https://redirect.github.com/renovatebot/github-action/releases/tag/v46.2.1) [Compare Source](https://redirect.github.com/renovatebot/github-action/compare/v46.2.0...v46.2.1) ##### Documentation - update references to renovatebot/github-action to v46.2.0 ([b48aa6c](https://redirect.github.com/renovatebot/github-action/commit/b48aa6c21875ffa00dc6215bc4453262b81eaf73)) ##### Miscellaneous Chores - **deps:** update dependency globals to v17.8.0 ([3e46bd7](https://redirect.github.com/renovatebot/github-action/commit/3e46bd72790497e1894cc90581626a83e91932c3)) - **deps:** update dependency lint-staged to v17.2.0 ([9c685f2](https://redirect.github.com/renovatebot/github-action/commit/9c685f2a9881f67e357e60b4b46e30576efcb139)) - **deps:** update node.js to v24.18.1 ([f525256](https://redirect.github.com/renovatebot/github-action/commit/f52525626d00279a6ce548e44d82c015c2be2f79)) ##### Build System - **deps:** lock file maintenance ([3d8211a](https://redirect.github.com/renovatebot/github-action/commit/3d8211a3c37e5b20e4d27ece75eadc95d43356c7)) ##### Continuous Integration - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.0.1 ([d471d52](https://redirect.github.com/renovatebot/github-action/commit/d471d52edecc92151b1deffeb3d01a4b80b59fa1)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.2.1 ([5cb64df](https://redirect.github.com/renovatebot/github-action/commit/5cb64df2a3bfd25b911705834f55758002b90753)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.2.2 ([a6b5808](https://redirect.github.com/renovatebot/github-action/commit/a6b5808d7b51494262c60fa1689b3d8f4a816e4e)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.2.3 ([ab4d1eb](https://redirect.github.com/renovatebot/github-action/commit/ab4d1eb1a432926c1bf6b4255c01787ae00df16c)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.3.0 ([a427843](https://redirect.github.com/renovatebot/github-action/commit/a427843f2d41af326ec66d7506b1a2513b511af9)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.3.3 ([2ac8329](https://redirect.github.com/renovatebot/github-action/commit/2ac8329d950b26e8aa6f8ee6b1b686b3babd64a2)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.4.0 ([7665449](https://redirect.github.com/renovatebot/github-action/commit/7665449ea26ebce5a6c734bda989ec3b42849d71)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.4.2 ([0166c9f](https://redirect.github.com/renovatebot/github-action/commit/0166c9f78c5ec89ce686465bc5442d5dbdee3940)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.4.3 ([8662b55](https://redirect.github.com/renovatebot/github-action/commit/8662b55bbc8cf88000457c38636441458d358c33)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.4.5 ([1e71262](https://redirect.github.com/renovatebot/github-action/commit/1e71262fc6711a19c74ce965b485f4aa64bde81d)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.4.6 ([7bec40c](https://redirect.github.com/renovatebot/github-action/commit/7bec40cad622ea16aab5758dee8ab4ba5d2ab9fa)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.5.0 ([d146e8b](https://redirect.github.com/renovatebot/github-action/commit/d146e8b14e30ae18a8c05b8db970466d7882c240)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.5.1 ([ddd5dca](https://redirect.github.com/renovatebot/github-action/commit/ddd5dcaccd40a1bc93ec009e31caefb2c82aea61)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.5.2 ([0731dab](https://redirect.github.com/renovatebot/github-action/commit/0731dab41dcfb74c0fe073fbe697d39b35602e53)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.5.3 ([700f3b5](https://redirect.github.com/renovatebot/github-action/commit/700f3b59b9d0fc6dffce45b564ee1f58869973b1)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.6.0 ([7edb80e](https://redirect.github.com/renovatebot/github-action/commit/7edb80eba67c17f75cebdf7b4259f1902b75032e)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.7.0 ([127e8ef](https://redirect.github.com/renovatebot/github-action/commit/127e8ef2a0d7b2fdd66445b332d46a93fe1310b3)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.7.1 ([f7532d1](https://redirect.github.com/renovatebot/github-action/commit/f7532d19871b25335df440d8029eba8f9c5e41f0)) - **deps:** update ghcr.io/renovatebot/renovate docker tag to v44.7.2 ([0fcd35b](https://redirect.github.com/renovatebot/github-action/commit/0fcd35be09a6f0873d63680d8123a868788a1245)) - **deps:** update ghcr.io/zizmorcore/zizmor docker tag to v1.29.0 ([#​1068](https://redirect.github.com/renovatebot/github-action/issues/1068)) ([581f6ac](https://redirect.github.com/renovatebot/github-action/commit/581f6ac0a630038ab49d600de079abcbcee26c06)) - **deps:** update zizmorcore/zizmor-action action to v0.6.2 ([e36e81c](https://redirect.github.com/renovatebot/github-action/commit/e36e81c4ca010c6d7f888593b62de0cf6c2b0162)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMS4wIiwidXBkYXRlZEluVmVyIjoiNDQuMTEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
This PR contains the following updates: | Update | Change | |---|---| | lockFileMaintenance | All locks refreshed | 🔧 This Pull Request updates lock files to use the latest dependency versions. --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - On day 1 of the month, every 12 months (`* * 1 */12 *`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMS4xIiwidXBkYXRlZEluVmVyIjoiNDQuMTEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [oxlint](https://oxc.rs/docs/guide/usage/linter) ([source](https://redirect.github.com/oxc-project/oxc/tree/HEAD/npm/oxlint)) | [`^1.76.0` → `^1.77.0`](https://renovatebot.com/diffs/npm/oxlint/1.77.0/1.77.0) |  |  | --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMS4zIiwidXBkYXRlZEluVmVyIjoiNDQuMTEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Dev-only linter version bump with lockfile churn; no runtime or product code changes. > > **Overview** > Bumps the workspace **oxlint** catalog range from `^1.76.0` to `^1.77.0` and refreshes `pnpm-lock.yaml` so the monorepo lint toolchain uses oxlint **1.77.0**. > > Adds a **@sanity/plugin-kit** patch changeset for the dependency update. The lockfile also moves pinned `sanity` **next** packages from `6.9.0-next.38` to `6.9.0-next.39` as part of the same install resolution—no application source changes. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 92d8475. 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>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [tsx](https://tsx.hirok.io) ([source](https://redirect.github.com/privatenumber/tsx)) | [`^4.23.1` → `^4.23.5`](https://renovatebot.com/diffs/npm/tsx/4.23.5/4.23.5) |  |  | --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMS4zIiwidXBkYXRlZEluVmVyIjoiNDQuMTEuNCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
Temporary disables react compiler for the media plugin edit form, looking into how to enable it back in another session.
Version Packages
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [@sanity/mutator](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/mutator)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/@sanity%2fmutator/6.8.0/6.9.0) |  |  | | [@sanity/schema](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/schema)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/@sanity%2fschema/6.8.0/6.9.0) |  |  | | [@sanity/types](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/types)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/@sanity%2ftypes/6.8.0/6.9.0) |  |  | | [@sanity/util](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/util)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/@sanity%2futil/6.8.0/6.9.0) |  |  | | [@sanity/vision](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/@sanity/vision)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/@sanity%2fvision/6.8.0/6.9.0) |  |  | | [groq](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/groq)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/groq/6.8.0/6.9.0) |  |  | | [sanity](https://www.sanity.io/) ([source](https://redirect.github.com/sanity-io/sanity/tree/HEAD/packages/sanity)) | [`^6.8.0` → `^6.9.0`](https://renovatebot.com/diffs/npm/sanity/6.8.0/6.9.0) |  |  | --- ### Release Notes <details> <summary>sanity-io/sanity (@​sanity/mutator)</summary> ### [`v6.9.0`](https://redirect.github.com/sanity-io/sanity/releases/tag/v6.9.0) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.8.0...v6.9.0) ##### Sanity Studio v6.9.0 This release includes various improvements and bug fixes. For the complete changelog with all details, please visit: [www.sanity.io/changelog/studio-Ni44LjA](https://www.sanity.io/changelog/studio-Ni44LjA) ##### Install or upgrade Sanity Studio To upgrade to this version, run: ```bash npm install sanity@latest ``` To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on [Installing and Upgrading Sanity Studio](https://www.sanity.io/docs/upgrade). ##### 📓 Full changelog | Author | Message | Commit | | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | | [@​stipsan](https://redirect.github.com/stipsan) | refactor(ui): migrate Stack and Button space prop to gap ([#​13867](https://redirect.github.com/sanity-io/sanity/issues/13867)) | [`8343de2`](https://redirect.github.com/sanity-io/sanity/commit/8343de27072ac81a5db413eebe451a8abfee4e31) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | feat(core): query documents in the selected variant alongside the perspective stack ([#​13791](https://redirect.github.com/sanity-io/sanity/issues/13791)) | [`8989fe7`](https://redirect.github.com/sanity-io/sanity/commit/8989fe72ebe5c0b4173fa7f356235fa403639711) | | [@​shapirodaniel](https://redirect.github.com/shapirodaniel) | feat(core): unclaimed project claim intake and nudge ([#​13705](https://redirect.github.com/sanity-io/sanity/issues/13705)) | [`41dd4bf`](https://redirect.github.com/sanity-io/sanity/commit/41dd4bfaf1049146e38938e39f008f7fa5f1c95b) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | chore(structure): render doc badges even if the doc is missing ([#​13743](https://redirect.github.com/sanity-io/sanity/issues/13743)) | [`f03b8af`](https://redirect.github.com/sanity-io/sanity/commit/f03b8afff06bc614a2908c077fb3412c33201220) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | test(e2e): add tasks e2e tests for create, release scoping and resolve ([#​13754](https://redirect.github.com/sanity-io/sanity/issues/13754)) | [`de8fb79`](https://redirect.github.com/sanity-io/sanity/commit/de8fb79553b107fb3fffb2a79acdc27627fefa2e) | | [@​stipsan](https://redirect.github.com/stipsan) | fix(core): avoid native useEffectEvent in forwardRef and memo ([#​13821](https://redirect.github.com/sanity-io/sanity/issues/13821)) | [`8f84cf4`](https://redirect.github.com/sanity-io/sanity/commit/8f84cf4b0628e3b9bc8c4752f67ec793153aaaf6) | | [@​jordanl17](https://redirect.github.com/jordanl17) | fix(core): stop permission loading-flag churn on every document change ([#​13771](https://redirect.github.com/sanity-io/sanity/issues/13771)) | [`96f5819`](https://redirect.github.com/sanity-io/sanity/commit/96f5819eba54f1723adf6e29f9491ada56543643) | | [@​jordanl17](https://redirect.github.com/jordanl17) | refactor(core): consolidate array list object telemetry events ([#​13772](https://redirect.github.com/sanity-io/sanity/issues/13772)) | [`1a9dffc`](https://redirect.github.com/sanity-io/sanity/commit/1a9dffcefdec8db5e73b902dbdc2b0db6e73e3b2) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(lint): prefer function components via oxlint rule ([#​13826](https://redirect.github.com/sanity-io/sanity/issues/13826)) | [`a6b0627`](https://redirect.github.com/sanity-io/sanity/commit/a6b0627a7c3d4caa992e37eb1d658b6844ba72ce) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(structure): drop redundant incoming references comments ([#​13852](https://redirect.github.com/sanity-io/sanity/issues/13852)) | [`1542aa0`](https://redirect.github.com/sanity-io/sanity/commit/1542aa03a0fdd76af071b34a248cb444a77943e7) | | [@​stipsan](https://redirect.github.com/stipsan) | fix(dev): migrate profiling minify options from esbuild to vite ([#​13859](https://redirect.github.com/sanity-io/sanity/issues/13859)) | [`d25a51c`](https://redirect.github.com/sanity-io/sanity/commit/d25a51cbebe8fd6f309938305c202218c9db27af) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(test-dts-exports): remove ui-poc styles.css TS2882 workaround ([#​13863](https://redirect.github.com/sanity-io/sanity/issues/13863)) | [`623e18f`](https://redirect.github.com/sanity-io/sanity/commit/623e18f19a6d43f3dcf8964a788e3334f1d5a6c3) | | squiggler-app\[bot] | fix(deps): update dependency get-it to ^8.8.2 ([#​13865](https://redirect.github.com/sanity-io/sanity/issues/13865)) | [`7ea95c3`](https://redirect.github.com/sanity-io/sanity/commit/7ea95c3ff2b75203e9d83ec2a80fa2af39a19cdd) | | squiggler-app\[bot] | chore(deps): dedupe pnpm-lock.yaml ([#​13864](https://redirect.github.com/sanity-io/sanity/issues/13864)) | [`5d36c67`](https://redirect.github.com/sanity-io/sanity/commit/5d36c67b4def9768a7c1a018a4cd542606f50537) | | [@​jordanl17](https://redirect.github.com/jordanl17) | perf(sanity): batch connector geometry updates with rAF and bail on unchanged connectors ([#​13763](https://redirect.github.com/sanity-io/sanity/issues/13763)) | [`24a033e`](https://redirect.github.com/sanity-io/sanity/commit/24a033eacb13ce373f844ec77cfc6e0209741118) | | squiggler-app\[bot] | fix(deps): update playwright monorepo to v1.62.1 ([#​13855](https://redirect.github.com/sanity-io/sanity/issues/13855)) | [`40c0ab5`](https://redirect.github.com/sanity-io/sanity/commit/40c0ab538d70e95153794d1b23298f24be5538f4) | | squiggler-app\[bot] | chore(deps): update dependency oxlint to ^1.76.0 ([#​13844](https://redirect.github.com/sanity-io/sanity/issues/13844)) | [`9eb219e`](https://redirect.github.com/sanity-io/sanity/commit/9eb219e749339cf8846ba8bb2103880a33caab14) | | squiggler-app\[bot] | fix(deps): update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.16.0 ([#​13858](https://redirect.github.com/sanity-io/sanity/issues/13858)) | [`1c690fd`](https://redirect.github.com/sanity-io/sanity/commit/1c690fd165eadff4b187d4247059bf450cb4fec9) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(test-studio): add vitejs devtools integration packages ([#​13850](https://redirect.github.com/sanity-io/sanity/issues/13850)) | [`027245f`](https://redirect.github.com/sanity-io/sanity/commit/027245f04b370b81b956ecc20711d300c8c6dd47) | | squiggler-app\[bot] | fix(deps): update dependency [@​sanity/client](https://redirect.github.com/sanity/client) to ^7.26.0 ([#​13848](https://redirect.github.com/sanity-io/sanity/issues/13848)) | [`8458e48`](https://redirect.github.com/sanity-io/sanity/commit/8458e48d62fb079d4340ce29325b44312f128b41) | | squiggler-app\[bot] | chore(deps): dedupe pnpm-lock.yaml ([#​13853](https://redirect.github.com/sanity-io/sanity/issues/13853)) | [`be95af4`](https://redirect.github.com/sanity-io/sanity/commit/be95af4917c498fefe0fdffde1f9c814da32567b) | | squiggler-app\[bot] | chore(deps): update dependency [@​sanity/tsdown-config](https://redirect.github.com/sanity/tsdown-config) to ^0.21.3 ([#​13862](https://redirect.github.com/sanity-io/sanity/issues/13862)) | [`f7d1c45`](https://redirect.github.com/sanity-io/sanity/commit/f7d1c45f9bcc74e643516a49c96185f772952c46) | | squiggler-app\[bot] | chore(lint): fix linter issues 🤖 ✨ ([#​13860](https://redirect.github.com/sanity-io/sanity/issues/13860)) | [`32c9c66`](https://redirect.github.com/sanity-io/sanity/commit/32c9c66394721fa228318acfe5a151f7d2978b3b) | | squiggler-app\[bot] | fix(deps): update portabletext ([#​13842](https://redirect.github.com/sanity-io/sanity/issues/13842)) | [`9320439`](https://redirect.github.com/sanity-io/sanity/commit/9320439714fefd700256787b4529798411eb19e6) | | squiggler-app\[bot] | fix(deps): update dev-non-major ([#​13834](https://redirect.github.com/sanity-io/sanity/issues/13834)) | [`cfd0b3b`](https://redirect.github.com/sanity-io/sanity/commit/cfd0b3ba26c60d82aee9a7907374c2322f28f330) | | squiggler-app\[bot] | fix(deps): update dependency motion to ^12.43.0 ([#​13849](https://redirect.github.com/sanity-io/sanity/issues/13849)) | [`64f1aa1`](https://redirect.github.com/sanity-io/sanity/commit/64f1aa177218ad125c33567630c2d30dcde0910f) | | squiggler-app\[bot] | chore(deps): update dependency knip to ^6.31.0 ([#​13843](https://redirect.github.com/sanity-io/sanity/issues/13843)) | [`853e4a1`](https://redirect.github.com/sanity-io/sanity/commit/853e4a13ca6b67081c138b0b2ee39d0b41434724) | | squiggler-app\[bot] | fix(deps): update dependency get-it to ^8.8.1 ([#​13841](https://redirect.github.com/sanity-io/sanity/issues/13841)) | [`a4d8244`](https://redirect.github.com/sanity-io/sanity/commit/a4d82442b3f74beb5004d557bf8b9f17ca14ccf9) | | squiggler-app\[bot] | fix(deps): update react monorepo ([#​13856](https://redirect.github.com/sanity-io/sanity/issues/13856)) | [`cdd01d3`](https://redirect.github.com/sanity-io/sanity/commit/cdd01d305e70a66a563d95d3f30ef01398be0ec0) | | squiggler-app\[bot] | chore(deps): update dependency oxfmt to ^0.62.0 ([#​13857](https://redirect.github.com/sanity-io/sanity/issues/13857)) | [`e386003`](https://redirect.github.com/sanity-io/sanity/commit/e3860036325d5090eb99df4a5924bddf0fc4cd77) | | squiggler-app\[bot] | chore(deps): update dependency [@​sanity/ui](https://redirect.github.com/sanity/ui) to ^3.5.1 ([#​13818](https://redirect.github.com/sanity-io/sanity/issues/13818)) | [`ed699ed`](https://redirect.github.com/sanity-io/sanity/commit/ed699edfc11578625ce214ae805a77e212315690) | | squiggler-app\[bot] | chore(deps): update dependency [@​vanilla-extract/css](https://redirect.github.com/vanilla-extract/css) to ^1.21.2 ([#​13854](https://redirect.github.com/sanity-io/sanity/issues/13854)) | [`41d79dd`](https://redirect.github.com/sanity-io/sanity/commit/41d79dd45355c278ba3ad469a4dd725d84c505ef) | | squiggler-app\[bot] | chore(deps): update dependency vite to ^8.2.0 ([#​13846](https://redirect.github.com/sanity-io/sanity/issues/13846)) | [`f88be20`](https://redirect.github.com/sanity-io/sanity/commit/f88be20f8358c0d9c3ff33edca60b5ec9f200331) | | squiggler-app\[bot] | chore(deps): update dependency [@​vitejs/plugin-react](https://redirect.github.com/vitejs/plugin-react) to ^6.0.5 ([#​13840](https://redirect.github.com/sanity-io/sanity/issues/13840)) | [`204dc7d`](https://redirect.github.com/sanity-io/sanity/commit/204dc7dfa4b04ea160e45b53b9aa1a8eba019629) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(structure): incoming references shouldn't self refer ([#​13851](https://redirect.github.com/sanity-io/sanity/issues/13851)) | [`367be3f`](https://redirect.github.com/sanity-io/sanity/commit/367be3f9a4fc0bb999278f77944209b3aa2bc48f) | | [@​stipsan](https://redirect.github.com/stipsan) | fix(structure): keep inspector crashes inside the inspector panel ([#​13845](https://redirect.github.com/sanity-io/sanity/issues/13845)) | [`cba5181`](https://redirect.github.com/sanity-io/sanity/commit/cba51818c90f87311031fdc9ae03bb071ca30f77) | | [@​stipsan](https://redirect.github.com/stipsan) | perf(sanity): defer non-controlled useObservable subscriptions ([#​13799](https://redirect.github.com/sanity-io/sanity/issues/13799)) | [`2958d75`](https://redirect.github.com/sanity-io/sanity/commit/2958d75de93601e987f640b0ff02f3827db3d4ec) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(deps): bump react-rx to v5 and adopt useSyncObservable ([#​13814](https://redirect.github.com/sanity-io/sanity/issues/13814)) | [`d66f505`](https://redirect.github.com/sanity-io/sanity/commit/d66f50562917e1d8ebf4d0ed01104332814d84bc) | | [@​stipsan](https://redirect.github.com/stipsan) | refactor(sanity): adopt useObservablePromise for data loading states ([#​13828](https://redirect.github.com/sanity-io/sanity/issues/13828)) | [`2d7be6a`](https://redirect.github.com/sanity-io/sanity/commit/2d7be6accd75ebf874894de43253efbaf0b1f2f5) | | squiggler-app\[bot] | chore(tests): generate dts tests 🤖 ✨ ([#​13839](https://redirect.github.com/sanity-io/sanity/issues/13839)) | [`01339c4`](https://redirect.github.com/sanity-io/sanity/commit/01339c43f7703e3929b5ffe18741401c0211dd90) | | [@​codythatsme](https://redirect.github.com/codythatsme) | fix(types): preserve supplied schema helper properties ([#​13237](https://redirect.github.com/sanity-io/sanity/issues/13237)) | [`38002e4`](https://redirect.github.com/sanity-io/sanity/commit/38002e4432aff0f917eee7461897c23bba35886e) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(lint): migrate eslint-plugin-boundaries config to v7 ([#​13710](https://redirect.github.com/sanity-io/sanity/issues/13710)) | [`f8fa390`](https://redirect.github.com/sanity-io/sanity/commit/f8fa3907e6a649027d32423761b12ae2185c1e31) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(core): allow creating draft variants from published variant sibling ([#​13741](https://redirect.github.com/sanity-io/sanity/issues/13741)) | [`cf5a7da`](https://redirect.github.com/sanity-io/sanity/commit/cf5a7da78f0f4d42a7c21106749b439a007efdf3) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | fix(core): update copying variants to different releases from context menu. ([#​13800](https://redirect.github.com/sanity-io/sanity/issues/13800)) | [`3086936`](https://redirect.github.com/sanity-io/sanity/commit/3086936c9a450730e9ea2cd59ce86c007ccd4578) | | [@​stipsan](https://redirect.github.com/stipsan) | docs(agents): adopt useful patterns from plugins AGENTS.md ([#​13764](https://redirect.github.com/sanity-io/sanity/issues/13764)) | [`4794716`](https://redirect.github.com/sanity-io/sanity/commit/4794716394e5d210f23b1c8ab556630b24341f4e) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | chore(structure): useDocumentTitle, use document pane provider value ([#​13742](https://redirect.github.com/sanity-io/sanity/issues/13742)) | [`6f46b8d`](https://redirect.github.com/sanity-io/sanity/commit/6f46b8d6421c54d87e60d90eab1423e79d849992) | | [@​joshuaellis](https://redirect.github.com/joshuaellis) | feat(workbench): export AssetSource types from sanity/workbench ([#​13827](https://redirect.github.com/sanity-io/sanity/issues/13827)) | [`458ca4a`](https://redirect.github.com/sanity-io/sanity/commit/458ca4a6cb0863db236a695d15b295974c2162a2) | | [@​stipsan](https://redirect.github.com/stipsan) | chore(oxlint): add typescript/no-deprecated rule ([#​13829](https://redirect.github.com/sanity-io/sanity/issues/13829)) | [`bd7b4b1`](https://redirect.github.com/sanity-io/sanity/commit/bd7b4b1b610d561ff51c996594bfdf72c9e91366) | | claude\[bot] | fix(ci): wait for published packages to be installable before post-publish steps ([#​13823](https://redirect.github.com/sanity-io/sanity/issues/13823)) | [`5307277`](https://redirect.github.com/sanity-io/sanity/commit/53072772f79e41e488d2ea4f21d714362c65ffc3) | | [@​stipsan](https://redirect.github.com/stipsan) | refactor(sanity): replace useState useEffect observable subscriptions with useObservable ([#​13788](https://redirect.github.com/sanity-io/sanity/issues/13788)) | [`ae2fb78`](https://redirect.github.com/sanity-io/sanity/commit/ae2fb782c12834c907e4af1477f642fc323ea9fb) | | [@​laurenashpole](https://redirect.github.com/laurenashpole) | chore(core): updates [@​sanity-labs/ui-poc](https://redirect.github.com/sanity-labs/ui-poc) to 0.0.1-alpha.25 ([#​13832](https://redirect.github.com/sanity-io/sanity/issues/13832)) | [`30ec805`](https://redirect.github.com/sanity-io/sanity/commit/30ec805b59156e53c729b231ab6c77dad3122145) | | [@​pedrobonamin](https://redirect.github.com/pedrobonamin) | chore(core): versions context menu use documentGroupId and versionId ([#​13820](https://redirect.github.com/sanity-io/sanity/issues/13820)) | [`950c5a5`](https://redirect.github.com/sanity-io/sanity/commit/950c5a5e502dcb8e66eb36ec7535cd8badb87c03) | </details> <details> <summary>sanity-io/sanity (@​sanity/schema)</summary> ### [`v6.9.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/@​sanity/schema/CHANGELOG.md#690-2026-08-04) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.8.0...v6.9.0) ##### Bug Fixes - **deps:** update dependency get-it to ^8.8.1 ([#​13841](https://redirect.github.com/sanity-io/sanity/issues/13841)) ([a4d8244](https://redirect.github.com/sanity-io/sanity/commit/a4d82442b3f74beb5004d557bf8b9f17ca14ccf9)) - **deps:** update dependency get-it to ^8.8.2 ([#​13865](https://redirect.github.com/sanity-io/sanity/issues/13865)) ([7ea95c3](https://redirect.github.com/sanity-io/sanity/commit/7ea95c3ff2b75203e9d83ec2a80fa2af39a19cdd)) </details> <details> <summary>sanity-io/sanity (@​sanity/types)</summary> ### [`v6.9.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/@​sanity/types/CHANGELOG.md#690-2026-08-04) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.8.0...v6.9.0) ##### Bug Fixes - **core:** allow creating draft variants from published variant sibling ([#​13741](https://redirect.github.com/sanity-io/sanity/issues/13741)) ([cf5a7da](https://redirect.github.com/sanity-io/sanity/commit/cf5a7da78f0f4d42a7c21106749b439a007efdf3)) - **types:** preserve supplied schema helper properties ([#​13237](https://redirect.github.com/sanity-io/sanity/issues/13237)) ([38002e4](https://redirect.github.com/sanity-io/sanity/commit/38002e4432aff0f917eee7461897c23bba35886e)) </details> <details> <summary>sanity-io/sanity (@​sanity/vision)</summary> ### [`v6.9.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/@​sanity/vision/CHANGELOG.md#690-2026-08-04) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.8.0...v6.9.0) ##### Bug Fixes - **core:** avoid native useEffectEvent in forwardRef and memo ([#​13821](https://redirect.github.com/sanity-io/sanity/issues/13821)) ([8f84cf4](https://redirect.github.com/sanity-io/sanity/commit/8f84cf4b0628e3b9bc8c4752f67ec793153aaaf6)) ##### Performance Improvements - **sanity:** defer non-controlled useObservable subscriptions ([#​13799](https://redirect.github.com/sanity-io/sanity/issues/13799)) ([2958d75](https://redirect.github.com/sanity-io/sanity/commit/2958d75de93601e987f640b0ff02f3827db3d4ec)) </details> <details> <summary>sanity-io/sanity (sanity)</summary> ### [`v6.9.0`](https://redirect.github.com/sanity-io/sanity/blob/HEAD/packages/sanity/CHANGELOG.md#690-2026-08-04) [Compare Source](https://redirect.github.com/sanity-io/sanity/compare/v6.8.0...v6.9.0) ##### Features - **core:** query documents in the selected variant alongside the perspective stack ([#​13791](https://redirect.github.com/sanity-io/sanity/issues/13791)) ([8989fe7](https://redirect.github.com/sanity-io/sanity/commit/8989fe72ebe5c0b4173fa7f356235fa403639711)) - **core:** unclaimed project claim intake and nudge ([#​13705](https://redirect.github.com/sanity-io/sanity/issues/13705)) ([41dd4bf](https://redirect.github.com/sanity-io/sanity/commit/41dd4bfaf1049146e38938e39f008f7fa5f1c95b)) - **workbench:** export AssetSource types from sanity/workbench ([#​13827](https://redirect.github.com/sanity-io/sanity/issues/13827)) ([458ca4a](https://redirect.github.com/sanity-io/sanity/commit/458ca4a6cb0863db236a695d15b295974c2162a2)) ##### Bug Fixes - **core:** allow creating draft variants from published variant sibling ([#​13741](https://redirect.github.com/sanity-io/sanity/issues/13741)) ([cf5a7da](https://redirect.github.com/sanity-io/sanity/commit/cf5a7da78f0f4d42a7c21106749b439a007efdf3)) - **core:** avoid native useEffectEvent in forwardRef and memo ([#​13821](https://redirect.github.com/sanity-io/sanity/issues/13821)) ([8f84cf4](https://redirect.github.com/sanity-io/sanity/commit/8f84cf4b0628e3b9bc8c4752f67ec793153aaaf6)) - **core:** stop permission loading-flag churn on every document change ([#​13771](https://redirect.github.com/sanity-io/sanity/issues/13771)) ([96f5819](https://redirect.github.com/sanity-io/sanity/commit/96f5819eba54f1723adf6e29f9491ada56543643)) - **core:** update copying variants to different releases from context menu. ([#​13800](https://redirect.github.com/sanity-io/sanity/issues/13800)) ([3086936](https://redirect.github.com/sanity-io/sanity/commit/3086936c9a450730e9ea2cd59ce86c007ccd4578)) - **deps:** update dependency [@​sanity/cli](https://redirect.github.com/sanity/cli) to ^7.16.0 ([#​13858](https://redirect.github.com/sanity-io/sanity/issues/13858)) ([1c690fd](https://redirect.github.com/sanity-io/sanity/commit/1c690fd165eadff4b187d4247059bf450cb4fec9)) - **deps:** update dependency motion to ^12.43.0 ([#​13849](https://redirect.github.com/sanity-io/sanity/issues/13849)) ([64f1aa1](https://redirect.github.com/sanity-io/sanity/commit/64f1aa177218ad125c33567630c2d30dcde0910f)) - **deps:** update portabletext ([#​13842](https://redirect.github.com/sanity-io/sanity/issues/13842)) ([9320439](https://redirect.github.com/sanity-io/sanity/commit/9320439714fefd700256787b4529798411eb19e6)) - **structure:** incoming references shouldn't self refer ([#​13851](https://redirect.github.com/sanity-io/sanity/issues/13851)) ([367be3f](https://redirect.github.com/sanity-io/sanity/commit/367be3f9a4fc0bb999278f77944209b3aa2bc48f)) - **structure:** keep inspector crashes inside the inspector panel ([#​13845](https://redirect.github.com/sanity-io/sanity/issues/13845)) ([cba5181](https://redirect.github.com/sanity-io/sanity/commit/cba51818c90f87311031fdc9ae03bb071ca30f77)) - **types:** preserve supplied schema helper properties ([#​13237](https://redirect.github.com/sanity-io/sanity/issues/13237)) ([38002e4](https://redirect.github.com/sanity-io/sanity/commit/38002e4432aff0f917eee7461897c23bba35886e)) ##### Performance Improvements - **sanity:** batch connector geometry updates with rAF and bail on unchanged connectors ([#​13763](https://redirect.github.com/sanity-io/sanity/issues/13763)) ([24a033e](https://redirect.github.com/sanity-io/sanity/commit/24a033eacb13ce373f844ec77cfc6e0209741118)) - **sanity:** defer non-controlled useObservable subscriptions ([#​13799](https://redirect.github.com/sanity-io/sanity/issues/13799)) ([2958d75](https://redirect.github.com/sanity-io/sanity/commit/2958d75de93601e987f640b0ff02f3827db3d4ec)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/renovate/) using a [curated preset](https://redirect.github.com/sanity-io/renovate-config#readme) maintained by [<picture><source media="(prefers-color-scheme: dark)" srcset="https://www.sanity.io/static/images/logo_white.svg?v=3"><img alt="Sanity" src="https://www.sanity.io/static/images/logo_black.svg?v=3" height="22" align="top"></picture>](https://www.sanity.io/?utm_source=github&utm_medium=referral&utm_campaign=ecosystem-renovate-preset). View repository job log [here](https://developer.mend.io/github/sanity-io/plugins) <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMS40IiwidXBkYXRlZEluVmVyIjoiNDQuMTMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsi8J+TpiBkZXBzIiwi8J+kliBib3QiXX0=--> Co-authored-by: squiggler-app[bot] <265501495+squiggler-app[bot]@users.noreply.github.com>
|
@copilot rebase the branch |
Co-authored-by: pedrobonamin <46196328+pedrobonamin@users.noreply.github.com>
Co-authored-by: pedrobonamin <46196328+pedrobonamin@users.noreply.github.com>
Done — I rebased the branch onto the latest |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 4 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 9f6978a. Configure here.
| issues: | ||
| types: | ||
| - closed | ||
| - opened |
There was a problem hiding this comment.
Automatic issue triage no longer runs
Medium Severity
Removing the opened and labeled triggers means new issues and issues labeled needs-triage never invoke automatic triage. Only closure archival and manual dispatch remain.
Reviewed by Cursor Bugbot for commit 9f6978a. Configure here.
| if [ "$result" != "success" ] && [ "$result" != "skipped" ]; then | ||
| echo "E2E test matrix failed with status: $result" | ||
| exit 1 | ||
| fi |
There was a problem hiding this comment.
E2E aggregate masks prerequisite failures
Medium Severity
E2E Status accepts a skipped test matrix and ignores report status. Setup, deployment, or reporting failures can therefore leave the aggregate required check green even though no E2E tests completed successfully.
Reviewed by Cursor Bugbot for commit 9f6978a. Configure here.
|
|
||
| on: | ||
| pull_request: | ||
| push: |
There was a problem hiding this comment.
E2E always fails for forked pull requests
Medium Severity
The workflow runs on every pull request but requires repository secrets and write access. Fork pull requests receive neither, so the comment or secret-validation steps fail before any E2E tests run.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 9f6978a. Configure here.
| script: | | ||
| const COMMENT_MARKER = '<!-- changeset-pr-npmdiff-links -->' | ||
| const PACKAGE_JSON_PATTERN = | ||
| /^(?:plugins\/(?:@sanity\/[^/]+|sanity-plugin-[^/]+)|packages\/@sanity\/plugin-kit)\/package\.json$/ |
There was a problem hiding this comment.
Package diff regex omits published packages
Low Severity
PACKAGE_JSON_PATTERN only accepts unscoped names beginning with sanity-plugin-. Published packages sanity-naive-html-serializer and sanity-translations-tab are silently excluded from release diff comments.
Reviewed by Cursor Bugbot for commit 9f6978a. Configure here.


This updates the
sanity-plugin-google-translateport to resolve all comments in review thread#pullrequestreview-4378573434. The fixes target translation flow correctness, locale normalization, schema typing ergonomics, and README usage accuracy.Translation flow/state handling (
GoogleTranslateInput.tsx)isTranslatingfrom getting stuck on early return when source and target resolve to the same language.Locale normalization for API targets (
GoogleTranslateInput.tsx)extractLanguageFromCode(...)before:targetquery param sent to Google TranslateSanity schema option typing (
types.ts)translate?: booleanapiKey?: string@ts-expect-errorin test-studio usage.Docs correctness (
README.md)defineConfig+export defaultusage.Focused type coverage (
types.test.ts)ObjectOptionsextends plugin-specific options.Note
Medium Risk
CI and GitHub Actions changes (e2e deploy, secrets, sharded tests, Renovate bot tokens) can break merges or leak misconfigured jobs; product runtime risk is low because this diff is mostly docs, skills, and workflows rather than published plugin logic.
Overview
Large monorepo hygiene and tooling PR—not the google-translate plugin fixes described in the PR metadata (those paths are absent from this diff).
Agent / contributor guidance: New skills for styled-components → vanilla-extract migration, plugin test coverage (Vitest + Playwright), and sanity-plugin-best-practices (styling, refs).
plugin-transferis expanded (README cleanup, knip/lint, changesetauthor:credits, no styling migration during transfer).test-studio-script-runnernow documents thehomeworkspace and folder-based script layout.CI & quality: Vitest runs in four shards with blob coverage merge on PRs; new E2E workflow (ephemeral datasets, Vercel preview deploy, chromium/firefox matrix, PR comments, periodic cleanup). Adds zizmor workflow audit, changeset release npmdiff PR comments, bumps actions/checkout and related bot-token permissions, and refreshes Renovate scheduling/config.
pnpm knipis now part of the documented pre-PR suite.Dev experience: New
dev/e2e-studiobare-bones studio for plugin e2e wiring; AGENTS.md / README / CONTRIBUTING updated (pnpm v11, catalog peers, Vite DevTools, e2e auth, plugin table). Root.oxlintrc.json/.oxfmtrc.jsonremoved in favor of@sanity/plugin-kitshared configs; CODEOWNERS adds SFCC, personalization, and mux-input.Reviewed by Cursor Bugbot for commit 9f6978a. Bugbot is set up for automated code reviews on this repo. Configure here.