diff --git a/packages/icons/CHANGELOG.md b/packages/icons/CHANGELOG.md
index b8dc6a14d1f79a..6530efff5233ce 100644
--- a/packages/icons/CHANGELOG.md
+++ b/packages/icons/CHANGELOG.md
@@ -6,13 +6,19 @@
- A further 236 icons are now stroke-based. Use CSS `color` rather than `fill` to recolor them. ([#82540](https://github.com/WordPress/gutenberg/pull/82540), [#82754](https://github.com/WordPress/gutenberg/pull/82754))
+### New Features
+
+- Add the `fullscreenExit`, `justifySpaceEvenly` and `reaction` icons ([#83338](https://github.com/WordPress/gutenberg/pull/83338)).
+
### Enhancements
- Redraw a further 236 icons as stroke-based for variable stroke-width support, following the convention introduced in [#78808](https://github.com/WordPress/gutenberg/pull/78808), and refine the already stroke-based `image` and `commentAuthorAvatar` drawings. Most retain their original footprint; the table icons, `capturePhoto`, and `image` are slightly smaller, and several drawings in the final batch change by design. ([#82540](https://github.com/WordPress/gutenberg/pull/82540), [#82754](https://github.com/WordPress/gutenberg/pull/82754))
- `manifest.json`: The `public` property is now a tri-state. Omitting it keeps an icon in the JS library only; `true` ships it to WordPress Core and exposes it through the icons REST API, making it selectable in the Icon block; `false` ships it and registers it in the `core` collection for server-side use via `wp_get_icon()`, while hiding it from the REST API and the Icon block. ([#82634](https://github.com/WordPress/gutenberg/pull/82634))
-- The `brush`, `dashboard`, `link`, `media`, `page`, `pin`, `plugins`, `sites`, `tool`, `update` and `wordpress` icons now ship to WordPress Core as non-public icons: they are registered in the `core` collection and stay available to server-side code via `wp_get_icon()`, but are not exposed through the icons REST API and are not selectable in the Icon block. ([#82634](https://github.com/WordPress/gutenberg/pull/82634), [#79451](https://github.com/WordPress/gutenberg/pull/79451))
- `manifest.json`: The `public` field now only controls whether an icon ships to WordPress Core ([#83277](https://github.com/WordPress/gutenberg/pull/83277)).
+- The `brush`, `dashboard`, `link`, `media`, `page`, `pin`, `plugins`, `sites`, `tool`, `update` and `wordpress` icons now ship to WordPress Core as non-public icons: they are registered in the `core` collection and stay available to server-side code via `wp_get_icon()`, but are not exposed through the icons REST API and are not selectable in the Icon block. ([#82634](https://github.com/WordPress/gutenberg/pull/82634), [#79451](https://github.com/WordPress/gutenberg/pull/79451))
- `manifest.json`: New `collections` property, listing the collections an icon is registered in once it ships to WordPress Core. It replaces the `public` property and introduces the `core-admin` collection, which is not public and holds the icons the WordPress admin interface renders. ([#83261](https://github.com/WordPress/gutenberg/pull/83261), [#79451](https://github.com/WordPress/gutenberg/pull/79451))
+- `comment` and `plugins`: redraw for better optical balance ([#83338](https://github.com/WordPress/gutenberg/pull/83338)).
+- `brush` and `media`: redraw. `brush` becomes a wide paintbrush rather than a pencil, which the existing `pencil` icon already covers, and `media` becomes a camera with music notes so it is no longer easily confused with `image` ([#83338](https://github.com/WordPress/gutenberg/pull/83338)).
### Bug Fixes
diff --git a/packages/icons/src/library/brush.svg b/packages/icons/src/library/brush.svg
index baf04b633034ec..8920a58b75fddc 100644
--- a/packages/icons/src/library/brush.svg
+++ b/packages/icons/src/library/brush.svg
@@ -1,5 +1,3 @@
diff --git a/packages/icons/src/library/comment.svg b/packages/icons/src/library/comment.svg
index c1ce55d97e4c5a..8af9615203e250 100644
--- a/packages/icons/src/library/comment.svg
+++ b/packages/icons/src/library/comment.svg
@@ -1,3 +1,3 @@
diff --git a/packages/icons/src/library/fullscreen-exit.svg b/packages/icons/src/library/fullscreen-exit.svg
new file mode 100644
index 00000000000000..8961e3ad07ec34
--- /dev/null
+++ b/packages/icons/src/library/fullscreen-exit.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/icons/src/library/justify-space-evenly.svg b/packages/icons/src/library/justify-space-evenly.svg
new file mode 100644
index 00000000000000..03c0cb1cfeed1a
--- /dev/null
+++ b/packages/icons/src/library/justify-space-evenly.svg
@@ -0,0 +1,5 @@
+
diff --git a/packages/icons/src/library/media.svg b/packages/icons/src/library/media.svg
index a8d3736071c765..bd44218535f242 100644
--- a/packages/icons/src/library/media.svg
+++ b/packages/icons/src/library/media.svg
@@ -1,4 +1,8 @@
diff --git a/packages/icons/src/library/plugins.svg b/packages/icons/src/library/plugins.svg
index 8813e1c1888b79..83d4ca92353d3f 100644
--- a/packages/icons/src/library/plugins.svg
+++ b/packages/icons/src/library/plugins.svg
@@ -1,3 +1,3 @@
diff --git a/packages/icons/src/library/reaction.svg b/packages/icons/src/library/reaction.svg
new file mode 100644
index 00000000000000..51142f035992fb
--- /dev/null
+++ b/packages/icons/src/library/reaction.svg
@@ -0,0 +1,6 @@
+
diff --git a/packages/icons/src/manifest.json b/packages/icons/src/manifest.json
index 4dcf35ca04a24a..2e74b85191de9d 100644
--- a/packages/icons/src/manifest.json
+++ b/packages/icons/src/manifest.json
@@ -59,6 +59,12 @@
"label": "Archive",
"filePath": "library/archive.svg"
},
+ {
+ "slug": "arrow-down",
+ "label": "Arrow Down",
+ "filePath": "library/arrow-down.svg",
+ "collections": [ "core" ]
+ },
{
"slug": "arrow-down-left",
"label": "Arrow Down Left",
@@ -71,12 +77,6 @@
"filePath": "library/arrow-down-right.svg",
"collections": [ "core" ]
},
- {
- "slug": "arrow-down",
- "label": "Arrow Down",
- "filePath": "library/arrow-down.svg",
- "collections": [ "core" ]
- },
{
"slug": "arrow-left",
"label": "Arrow Left",
@@ -89,6 +89,12 @@
"filePath": "library/arrow-right.svg",
"collections": [ "core" ]
},
+ {
+ "slug": "arrow-up",
+ "label": "Arrow Up",
+ "filePath": "library/arrow-up.svg",
+ "collections": [ "core" ]
+ },
{
"slug": "arrow-up-left",
"label": "Arrow Up Left",
@@ -101,12 +107,6 @@
"filePath": "library/arrow-up-right.svg",
"collections": [ "core" ]
},
- {
- "slug": "arrow-up",
- "label": "Arrow Up",
- "filePath": "library/arrow-up.svg",
- "collections": [ "core" ]
- },
{
"slug": "aspect-ratio",
"label": "Aspect Ratio",
@@ -407,6 +407,11 @@
"label": "Connection",
"filePath": "library/connection.svg"
},
+ {
+ "slug": "contents",
+ "label": "Contents",
+ "filePath": "library/contents.svg"
+ },
{
"slug": "copy",
"label": "Copy",
@@ -454,11 +459,6 @@
"filePath": "library/create.svg",
"collections": [ "core" ]
},
- {
- "slug": "contents",
- "label": "Contents",
- "filePath": "library/contents.svg"
- },
{
"slug": "crop",
"label": "Crop",
@@ -673,6 +673,11 @@
"label": "Fullscreen",
"filePath": "library/fullscreen.svg"
},
+ {
+ "slug": "fullscreen-exit",
+ "label": "Fullscreen Exit",
+ "filePath": "library/fullscreen-exit.svg"
+ },
{
"slug": "funnel",
"label": "Funnel",
@@ -850,6 +855,11 @@
"label": "Justify Space Between Vertical",
"filePath": "library/justify-space-between-vertical.svg"
},
+ {
+ "slug": "justify-space-evenly",
+ "label": "Justify Space Evenly",
+ "filePath": "library/justify-space-evenly.svg"
+ },
{
"slug": "justify-stretch",
"label": "Justify Stretch",
@@ -1136,12 +1146,6 @@
"label": "Pin Small",
"filePath": "library/pin-small.svg"
},
- {
- "slug": "plugins",
- "label": "Plugins",
- "filePath": "library/plugins.svg",
- "collections": [ "core-admin" ]
- },
{
"slug": "play",
"label": "Play",
@@ -1157,6 +1161,12 @@
"label": "Playlist Track",
"filePath": "library/playlist-track.svg"
},
+ {
+ "slug": "plugins",
+ "label": "Plugins",
+ "filePath": "library/plugins.svg",
+ "collections": [ "core-admin" ]
+ },
{
"slug": "plus",
"label": "Plus",
@@ -1307,6 +1317,11 @@
"filePath": "library/quote.svg",
"collections": [ "core" ]
},
+ {
+ "slug": "reaction",
+ "label": "Reaction",
+ "filePath": "library/reaction.svg"
+ },
{
"slug": "receipt",
"label": "Receipt",
@@ -1328,11 +1343,6 @@
"label": "Remove Submenu",
"filePath": "library/remove-submenu.svg"
},
- {
- "slug": "replace",
- "label": "Replace",
- "filePath": "library/replace.svg"
- },
{
"slug": "repeat",
"label": "Repeat",
@@ -1343,6 +1353,11 @@
"label": "Repeat All",
"filePath": "library/repeat-all.svg"
},
+ {
+ "slug": "replace",
+ "label": "Replace",
+ "filePath": "library/replace.svg"
+ },
{
"slug": "replay",
"label": "Replay",
@@ -1496,16 +1511,6 @@
"label": "Sides Vertical",
"filePath": "library/sides-vertical.svg"
},
- {
- "slug": "skip-back",
- "label": "Skip Back",
- "filePath": "library/skip-back.svg"
- },
- {
- "slug": "skip-forward",
- "label": "Skip Forward",
- "filePath": "library/skip-forward.svg"
- },
{
"slug": "site-logo",
"label": "Site Logo",
@@ -1517,6 +1522,16 @@
"filePath": "library/sites.svg",
"collections": [ "core-admin" ]
},
+ {
+ "slug": "skip-back",
+ "label": "Skip Back",
+ "filePath": "library/skip-back.svg"
+ },
+ {
+ "slug": "skip-forward",
+ "label": "Skip Forward",
+ "filePath": "library/skip-forward.svg"
+ },
{
"slug": "square",
"label": "Square",
@@ -1594,6 +1609,16 @@
"filePath": "library/symbol-filled.svg",
"collections": [ "core" ]
},
+ {
+ "slug": "tab-list",
+ "label": "Tab List",
+ "filePath": "library/tab-list.svg"
+ },
+ {
+ "slug": "tab-panel",
+ "label": "Tab Panel",
+ "filePath": "library/tab-panel.svg"
+ },
{
"slug": "table",
"label": "Table",
@@ -1641,16 +1666,6 @@
"filePath": "library/tablet.svg",
"collections": [ "core" ]
},
- {
- "slug": "tab-list",
- "label": "Tab List",
- "filePath": "library/tab-list.svg"
- },
- {
- "slug": "tab-panel",
- "label": "Tab Panel",
- "filePath": "library/tab-panel.svg"
- },
{
"slug": "tabs",
"label": "Tabs",
diff --git a/packages/icons/src/manifest.php b/packages/icons/src/manifest.php
index df4940954b8346..7436c9eb513bde 100644
--- a/packages/icons/src/manifest.php
+++ b/packages/icons/src/manifest.php
@@ -5,6 +5,11 @@
}
return array(
+ 'arrow-down' => array(
+ 'label' => _x( 'Arrow Down', 'icon label', 'gutenberg' ),
+ 'filePath' => 'library/arrow-down.svg',
+ 'collections' => array( 'core' ),
+ ),
'arrow-down-left' => array(
'label' => _x( 'Arrow Down Left', 'icon label', 'gutenberg' ),
'filePath' => 'library/arrow-down-left.svg',
@@ -15,11 +20,6 @@
'filePath' => 'library/arrow-down-right.svg',
'collections' => array( 'core' ),
),
- 'arrow-down' => array(
- 'label' => _x( 'Arrow Down', 'icon label', 'gutenberg' ),
- 'filePath' => 'library/arrow-down.svg',
- 'collections' => array( 'core' ),
- ),
'arrow-left' => array(
'label' => _x( 'Arrow Left', 'icon label', 'gutenberg' ),
'filePath' => 'library/arrow-left.svg',
@@ -30,6 +30,11 @@
'filePath' => 'library/arrow-right.svg',
'collections' => array( 'core' ),
),
+ 'arrow-up' => array(
+ 'label' => _x( 'Arrow Up', 'icon label', 'gutenberg' ),
+ 'filePath' => 'library/arrow-up.svg',
+ 'collections' => array( 'core' ),
+ ),
'arrow-up-left' => array(
'label' => _x( 'Arrow Up Left', 'icon label', 'gutenberg' ),
'filePath' => 'library/arrow-up-left.svg',
@@ -40,11 +45,6 @@
'filePath' => 'library/arrow-up-right.svg',
'collections' => array( 'core' ),
),
- 'arrow-up' => array(
- 'label' => _x( 'Arrow Up', 'icon label', 'gutenberg' ),
- 'filePath' => 'library/arrow-up.svg',
- 'collections' => array( 'core' ),
- ),
'at-symbol' => array(
'label' => _x( 'At Symbol (@)', 'icon label', 'gutenberg' ),
'filePath' => 'library/at-symbol.svg',