fix(deps): update dependency @sanity/icons to v5 - #173
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
renovate
Bot
force-pushed
the
renovate/sanity-icons-5.x
branch
from
August 3, 2026 04:14
2826813 to
4468681
Compare
renovate
Bot
force-pushed
the
renovate/sanity-icons-5.x
branch
from
August 10, 2026 05:08
4468681 to
8460e34
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^3.7.4→^5.0.0Release Notes
sanity-io/ui (@sanity/icons)
v5.2.1Patch Changes
18c0323Thanks @stipsan! -@sanity/iconsis now developed in the sanity-io/ui monorepo (packages/icons), with full git history preserved. No runtime changes.v5.2.0Minor Changes
#234
6dae460Thanks @stipsan! - Restore React 18 support.Icon components (and the
Iconwrapper) are wrapped inReact.forwardRefagain, so refs attach to the underlyingsvgelement on React 18 as well as React 19. Thereactpeer dependency range is widened from^19to^18 || ^19, and the Node.jsenginesrange from>=22.12to>=20.19 <22 || >=22.12, matching@sanity/ui.v5.1.0Minor Changes
e5657d5Thanks @stipsan! - Importing an icon from the root entry now resolves in the type system to a@deprecatednever-typed tombstone instead of failing with a bare "has no exported member" error. Since v5 removed the per-icon barrel exports,import {RocketIcon} from '@sanity/icons'was indistinguishable from the icon having been deleted; the tombstone's deprecation message now points at the subpath the icon lives on, e.g.import {RocketIcon} from '@sanity/icons/Rocket'. The tombstones are declaration-only (export declare const RocketIcon: never), so nothing changes at runtime: the root entry still ships no icon code and bundlers/Node.js still reject root icon imports.v5.0.0Major Changes
19689ccThanks @stipsan! - The deprecated per-icon barrel exports are removed:import {RocketIcon} from '@sanity/icons'no longer works, import icons from their own export path instead, e.g.import {RocketIcon} from '@sanity/icons/Rocket'. The root entry now only exposes the dynamic pieces – the<Icon>component, theiconsmap, and their types – and every entry in theiconsmap is built withReact.lazy, so importing the root entry no longer pulls the full icon set into your bundle: each icon loads as its own chunk the first time it renders.<Icon>wraps the lazy icon in a<Suspense>boundary whose fallback is an svg with the same shell (viewBox,width/heightand spread props) as the icon it is loading, so the slot reserves its final size and responds to the same styling while the chunk loads – the way an<img>with intrinsic dimensions behaves. When rendering components from theiconsmap directly, provide your own<Suspense>boundary.v4.1.0Minor Changes
e7538d4Thanks @stipsan! - Every icon is now available on its own export path, e.g.import {RocketIcon} from '@sanity/icons/Rocket', letting userland opt in to smaller bundles and faster treeshaking. Each subpath exposes the icon both as a named export (identical to the barrel export) and as the default export, soReact.lazy(() => import('@sanity/icons/Rocket'))works out of the box. Importing individual icons from the root barrel (import {RocketIcon} from '@sanity/icons') still works but is now marked@deprecated, pointing to the per-icon subpath to avoid barrel file performance issues.v4.0.0Major Changes
#200
26b9248Thanks @stipsan! - Drop CommonJS support and require Node.js>=22.12@sanity/iconsis now ESM-only. Therequireexport condition and the CommonJS build output (./dist/index.cjs) have been removed, so the package must be consumed via ESMimport. The minimum supported Node.js version has been raised to>=22.12to matchsanity.#201
01e3807Thanks @stipsan! - Drop React 18 support — React 19 is now required.Icon components no longer use
forwardRef. Refs are now accepted as a regular prop (typed viaReact.ComponentPropsWithRef), following React 19's ref-as-prop model. Thereactpeer dependency range is now^19, and the exportedIconComponenttype has changed accordingly.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.