NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm
An icon is a symbol representing a command, device, directory, or common action.
Last release 6 days ago
29 Sep 2026
Ships on a steady schedule
a new release about every 1 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
427 releases · first in 2017
Updated the oldName value in metadata-core and metadata-utility to contain an array of legacy icon IDs, generated from the information in the migratio
4fdcfc2b65ce0 - -
Added experimental new variants of the new icon components with legacy fallbacks built in. These
are available at core/migration and utility/migration and are generated based on a new
migration mapping, available at @atlaskit/icon/UNSAFE_migration-map.
oldName value in metadata-core and metadata-utility to contain an array of
legacy icon IDs, generated from the information in the migration map.### Patch Changes - #113646 `01c04f5a4e85a` - Update experimental new icons to support link tokens as colors - Updated dependencies
One column per quarter.
01c04f5a4e85a -
Update experimental new icons to support link tokens as colors### Minor Changes - #110670 `c733254a2dd6e` - Explicitly set jsxRuntime to classic via pragma comments in order to avoid issues where jsxRuntime is im
c733254a2dd6e -
Explicitly set jsxRuntime to classic via pragma comments in order to avoid issues where jsxRuntime
is implicitly set to automatic.### Patch Changes - #93481 `c826eb17b113e` - Remove examples of the logos that have been deprecated by the '@atlaskit/logo' package.
c826eb17b113e -
Remove examples of the logos that have been deprecated by the '@atlaskit/logo' package.### Patch Changes - #104222 `cabed929cdde` - Fix bug where utility icons incorrectly allowed the 'spacing' prop to be set. Utility icons only support
cabed929cdde -
Fix bug where utility icons incorrectly allowed the 'spacing' prop to be set. Utility icons only
support 'none' spacing and the prop type has been removed"These new components are experimental, and subject to change or removal in minor or patch releases.
#95202
80507e249e92 -
Adds new experimental icons at the entrypoints @atlaskit/icon/core/* and
@atlaskit/icon/utility/*, as well as a new IconTile component (compatible with global icons).
These new components are experimental, and subject to change or removal in minor or patch releases.
### Minor Changes - #98193 `d34711ffc0a5` - Add support for React 18 in non-strict mode.
d34711ffc0a5 -
Add support for React 18 in non-strict mode.### Patch Changes - #74633 `fc09be1a0b9e` - Fix bug where archive, arrow-left, mobile, editor/file-preview and editor/remove-emoji rendered with a 1%
fc09be1a0b9e -
Fix bug where archive, arrow-left, mobile, editor/file-preview and editor/remove-emoji rendered
with a 1% opacity white rectangle behind the glyph### Minor Changes - #74631 `3e6dcb8e92d6` - Adds new teams icon
3e6dcb8e92d6 -
Adds new teams icon### Patch Changes - #64934 `532734a858a1` - Update to internal metadata order, following update of @atlaskit/icon-build-process
532734a858a1 -
Update to internal metadata order, following update of @atlaskit/icon-build-process### Patch Changes - #72130 `b037e5451037` - Update new button text color fallback for default theme (non-token) to match that of old button current te
b037e5451037 -
Update new button text color fallback for default theme (non-token) to match that of old button
current text color### Major Changes - #41812 `48b3b440f51` - Removed all remaining legacy theming logic from the Icon and ProgressIndicator components.
48b3b440f51 - Removed
all remaining legacy theming logic from the Icon and ProgressIndicator components.### Patch Changes - #42106 `f4b2c484864` - Improve typing and prop naming in icon explorer utility.
f4b2c484864 - Improve
typing and prop naming in icon explorer utility.### Patch Changes - #38199 `8a5ce2c105e` - This package is now onboarded onto the product push model.Th
8a5ce2c105e - This
package is now onboarded onto the product push model.Th### Patch Changes - #36754 `4ae083a7e66` - Use @af/accessibility-testing for default jest-axe config and jest-axe import in accessibility testing.
4ae083a7e66 - Use
@af/accessibility-testing for default jest-axe config and jest-axe import in accessibility
testing.### Patch Changes - #35441 `599bfe90ee3` - Internal change to use shape tokens. There is no expected visual change.
599bfe90ee3 - Internal
change to use shape tokens. There is no expected visual change.### Patch Changes - #33652 `e7ea6832ad2` - Bans the use of React.FC/React.FunctionComponent type in ADS components as part of the React 18 migration w
e7ea6832ad2 - Bans the
use of React.FC/React.FunctionComponent type in ADS components as part of the React 18 migration
work. The change is internal only and should not introduce any changes for the component
consumers.### Patch Changes - #32935 `b1bdec7cce2` - Internal change to enforce token usage for spacing properties. There is no expected visual or behaviour cha
b1bdec7cce2 - Internal
change to enforce token usage for spacing properties. There is no expected visual or behaviour
change.### Patch Changes - #33793 `9d00501a414` - Ensure legacy types are published for TS 4.5-4.8
9d00501a414 - Ensure
legacy types are published for TS 4.5-4.8### Patch Changes - #33649 `41fae2c6f68` - Upgrade Typescript from 4.5.5 to 4.9.5
41fae2c6f68 - Upgrade
Typescript from 4.5.5 to 4.9.5### Minor Changes - #33258 `56507598609` - Skip minor dependency bump ### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
`15d704e3090` - For an SVG icon, do not render a aria-label when empty.
88a34a8c2dd - Remove
redundant role=presentation on wrapping @atlaskit/icon and @atlaskit/logo spans.15d704e3090 - For an
SVG icon, do not render a aria-label when empty.### Minor Changes - #24710 `a3973745679` - Updates @emotion/core to @emotion/react; v10 to v11. There is no expected behavior change.
a3973745679 - Updates
@emotion/core to @emotion/react; v10 to v11. There is no expected behavior change.### Patch Changes - #24874 `8cc2f888c83` - Upgrade Typescript from 4.3.5 to 4.5.5
8cc2f888c83 - Upgrade
Typescript from 4.3.5 to 4.5.5### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - Updated dependencies
### Patch Changes - #16752 `58884c2f6c1` - Internal code change turning on a new linting rule.
58884c2f6c1 - Internal
code change turning on a new linting rule.`19d72473dfb` - Updates usage of deprecated token names so they're aligned with the latest naming conventions. No UI or visual changes
19d72473dfb - Updates
usage of deprecated token names so they're aligned with the latest naming conventions. No UI or
visual changes### Patch Changes - Updated dependencies
CETI-16 added remove emoji icon so that it appears in mobilekit too
#17576
1c835620aa5 -
Note: It is a re-release of the wrongly patched version 21.9.2 that should have been a
minor release.
CETI-16 added remove emoji icon so that it appears in mobilekit too
### Patch Changes - #17475 `c55c736ecea` - Patch VULN AFP-3486 AFP-3487 AFP-3488 AFP-3489
c55c736ecea - Patch
VULN AFP-3486 AFP-3487 AFP-3488 AFP-3489_WRONG RELEASE TYPE - DON'T USE_
WRONG RELEASE TYPE - DON'T USE
229177bb85d - CETI-16
added remove emoji icon so that it appears in mobilekit toof460cc7c411 - Builds
for this package now pass through a tokens babel plugin, removing runtime invocations of the
tokens() function and improving bundle size.### Patch Changes - Updated dependencies
### Minor Changes - #14319 `cf853e39278` - [ux] add single layout support for layout ### Patch Changes - Updated dependencies
cf853e39278 - [ux] add
single layout support for layout### Patch Changes - Updated dependencies
Legacy dark mode users should expect no visual or breaking changes.
#13864
22b8dd3f590 -
Instrumented Icon with the new theming package, @atlaskit/tokens.
New tokens will be visible only in applications configured to use the new Tokens API (currently in alpha). These changes are intended to be interoperable with the legacy theme implementation. Legacy dark mode users should expect no visual or breaking changes.
88ff832bd2b - Add
@atlaskit/icon/glyph/editor/file-preview to atlaskit/icon package for media group toolbar
### Patch Changes - #13302 `af4bca32ad4` - Internal changes to supress eslint rules.
af4bca32ad4 - Internal
changes to supress eslint rules.`8279380176b` - Internal code changes.
0d0ecc6e790 - Corrects
eslint supressions.8279380176b - Internal
code changes.9a84a3ceb82 - Internal
code changes.### Patch Changes - #13102 `0c0c4315085` - [ux] Fixed a regression where Icons used static colors in High Contrast Mode when they should actually dyna
0c0c4315085 - [ux]
Fixed a regression where Icons used static colors in High Contrast Mode when they should actually
dynamically respond to changes to the primaryColor and secondaryColor props.### Patch Changes - #12880 `378d1cef00f` - Bump @atlaskit/theme to version ^11.3.0.
378d1cef00f - Bump
@atlaskit/theme to version ^11.3.0.`2368dfabe46` - fix Icon appearance in windows high contrast mode
662739d8c28 - Icon now
uses internal techstack "design-system: v1" and "styling: emotion".2368dfabe46 - fix Icon
appearance in windows high contrast mode54b0730475e - Fixed an
a11y bug associated with the role of the SVGIcon component. The role now correctly adapts to
whether a user provides a label or not.### Patch Changes - #11649 `9f5d6ed95f0` - Added aria-hidden to icon wrapper when there is no label provided
9f5d6ed95f0 - Added
aria-hidden to icon wrapper when there is no label provided### Minor Changes - #11113 `b9c78813d40` - Use named export of base icon instead of default in icon glyphs
b9c78813d40 - Use
named export of base icon instead of default in icon glyphs### Patch Changes - #10522 `72ef8bafec9` - Add "./glyph" entry point.
72ef8bafec9 - Add
"./glyph" entry point.`4203387aa43` - Internal changes to the way Icon styles are generated. Additional types have also been exposed to match the glyph component.
017587eca78 - Icon now
exposes an additional component SVG which can be used to for custom icon use cases.4203387aa43 - Internal
changes to the way Icon styles are generated. Additional types have also been exposed to match the
glyph component.469f36d9629 - Icon
build tooling has been updated.d6580503ce9 - Internal
refactor for JSDoc annotated modules.3de10e7652e -
Documentation updates and fixes to types for all icon packages.d98f1bb1169 - Local
build tooling improvements.`79c23df6340` - Use injected package name and version for analytics instead of version.json.
2f1a299688b - The
sizeOpts type has been renamed to Size, available in both the ./ and ./types entrypoints.79c23df6340 - Use
injected package name and version for analytics instead of version.json.f922302ad53 - Icons no
longer ship with the focusable attribute in their glyph exports. This attribute was only
required for IE11 support. This is purely a build change and has no effect on user API.`83944ca2cf2` - Icon now ships with cjs, esm, and es2019 bundles for components and utils exported in the icon package. Glyphs unfortunately aren't in
#8178
b9265389fa0 - Icon now
exposes a base icon via the @atlaskit/icon/base entrypoint. This is used in all generated glyphs
inside the icon package.
83944ca2cf2 - Icon now
ships with cjs, esm, and es2019 bundles for components and utils exported in the icon package.
Glyphs unfortunately aren't included and still only export cjs bundles.
6ef8824baee - - Icon
now uses React.memo() to stop unnecessary re-renders.
This change also includes a number of quality of life fixes as part of lite mode.
insertDynamicGradientId has been removed from the runtimeTests that rely on enzyme may have issues with this update. We've mostly seen issues with one of
the following cases.
Because icon is now wrapped in memo you won't be able to easily find it. This code will fail:
import BookIcon from '@atlaskit/icon/glyph/book';
<BookIcon />;
wrapper.find('BookIcon');
As a fix you can add memo to the target:
wrapper.find('Memo(BookIcon)');
Even better, use the test id.
<BookIcon testId="book-icon" />;
wrapper.find('[data-testid="book-icon"]');
Icon hasn't had an onClick handler since many major versions. This code will fail:
const Example = () => <Button testId="test-id" iconBefore={<SomeGlyph />} />;
// in some teat
wrapper.find(SomeGlyph).click();
// OR
wrapper.find('SomeGlyph').click();
As a fix you can target the button instead:
wrapper.find('[data-testid="test-id"]').click();
0741b1556f6 - All icon
glpyhs are now built without inline extends helpers, reducing their bundlesize.8d6c79b9055 - Typedefs
of glyphs have been updated to reflect an API change that occured in version 15. For context,
onClick was removed as a functional prop but it was still supported by the types. This may have
resulted in a confusing developer experience although the fundamental behaviour has been
consistent since version 15.### Patch Changes - #7762 `37afe4a0fd5` - [ux] Update Dropbox icon and arrow-left icon
37afe4a0fd5 - [ux]
Update Dropbox icon and arrow-left icon### Patch Changes - #7425 `b9f0d16300` - Re-generated icons using a newer version of the build process
b9f0d16300 -
Re-generated icons using a newer version of the build processOtherwise it would run prettier which can lead to some invalid syntax outputted in edge cases. This is likely due to an issue in either codemod-cli or
#7589
c65f28c058 - Change
codemod to return raw source if it is not transforming a file.
Otherwise it would run prettier which can lead to some invalid syntax outputted in edge cases.
This is likely due to an issue in either codemod-cli or jscodeshift.
To run the codemod: You first need to have the latest version installed before you can run the codemod
#7458
bc896a20b0 - Add a
missing codemod for the entrypoint change in 21.2.0
Running the codemod cli
To run the codemod: You first need to have the latest version installed before you can run the codemod
yarn upgrade @atlaskit/PACKAGE@^VERSION
Once upgraded, use the Atlaskit codemod-cli;
npx @atlaskit/codemod-cli --parser [PARSER] --extensions [FILE_EXTENSIONS] [TARGET_PATH]
Or run npx @atlaskit/codemod-cli -h for more details on usage. For Atlassians, refer to
this doc for more details
on the codemod CLI.
### Minor Changes - #7170 `fbdf356800` - Remove undocumented metadata export from main entry point. To import metadata instead do it from the /metadat
fbdf356800 - Remove
undocumented metadata export from main entry point. To import metadata instead do it from the
/metadata entrypoint.### Patch Changes - #5497 `5f58283e1f` - Export types using Typescript's new "export type" syntax to satisfy Typescript's --isolatedModules compiler o
5f58283e1f - Export
types using Typescript's new "export type" syntax to satisfy Typescript's --isolatedModules
compiler option. This requires version 3.8 of Typescript, read more about how we handle Typescript
versions here: https://atlaskit.atlassian.com/get-started Also add typescript to
devDependencies to denote version that the package was built with.### Patch Changes - Updated dependencies
Your coding agent can read these notes before it upgrades. Set up the MCP server →