close
Skip to content

UI: Update @base-ui/react to 1.5.0#78448

Merged
ciampo merged 9 commits into
trunkfrom
update/base-ui-react-1.5.0
Jun 5, 2026
Merged

UI: Update @base-ui/react to 1.5.0#78448
ciampo merged 9 commits into
trunkfrom
update/base-ui-react-1.5.0

Conversation

@ciampo

@ciampo ciampo commented May 19, 2026

Copy link
Copy Markdown
Contributor

What?

Updates @base-ui/react from 1.4.1 to 1.5.0 in @wordpress/ui, and adapts Tabs tests to the one consumer-visible behavior change.

Why?

Pulls in 1.5.0's bug fixes, accessibility improvements, and performance work. The only behavior change that surfaces through our wrappers is in Tabs: onValueChange now fires for automatic tab selection (closes the long-standing mui/base-ui#2097 we filed). The only breaking change in the upstream release (OTP Field sanitizeValue()normalizeValue()) is on a component we don't wrap, so no migration is required.

How?

  • Bump @base-ui/react to ^1.5.0 in packages/ui/package.json and refresh the lockfile (also bumps the transitive @base-ui/utils 0.2.8 → 0.2.9 and, as a consequence, reselect 5.1.1 → 5.2.0).
  • Update the Tabs test suite to assert the new onValueChange timing in uncontrolled mode (when a selected tab is removed/disabled, selection now falls back and fires the callback). Controlled-mode assertions are unchanged.
  • Re-enable the previously skipped Tabs test assertions that were gated on mui/base-ui#2097, scoped to the truly-automatic selection paths the upstream fix covers. Convert the remaining 2097 TODOs (where the consumer supplies defaultValue/value matching a real tab — not "automatic") into explicit expect( mockOnValueChange ).not.toHaveBeenCalled() checks to lock in the actual behavior.
  • Add the entries to packages/ui/CHANGELOG.md.
Component-by-component review of the 1.5.0 release notes

The Base UI subpackages actually imported by @wordpress/ui are: alert-dialog, autocomplete, button, collapsible, dialog, direction-provider, drawer, field, fieldset, input, menu (story-only), popover, select, tabs, tooltip. Not imported (so those release-note sections are irrelevant): combobox, checkbox, number-field, otp-field, preview-card, scroll-area, toast, navigation-menu, form.

Tabs — #4704 (Fire onValueChange() for automatic tab selection)

The only consumer-visible change. Closes mui/base-ui#2097. In uncontrolled mode, when Tabs picks a tab itself (initial mount with no defaultValue, fallback to the first enabled tab when the first tab is disabled, fallback when the currently selected tab is removed or becomes disabled), onValueChange now fires with the new value. Controlled behavior is unchanged. Six Tabs tests were updated to assert the new timing; two previously-skipped assertions were re-enabled.

OTP Field — #4717 (breaking: sanitizeValue()normalizeValue())

Not used. grep sanitizeValue and grep -i "otp" packages/ui/src return nothing meaningful.

Alert Dialog — #4834 (fix handle defaults)

The fix targets AlertDialog.Handle paths. grep -E "AlertDialog\.Handle|alertDialogHandle" in packages/ui/src returns nothing — our wrapper uses actionsRef, not Handle. Transparent.

Autocomplete — #4725 (popup-input FormData)

Targets the case where Autocomplete.Input is rendered inside Autocomplete.Popup. All our stories and shipped code render Autocomplete.Input as a sibling of Autocomplete.Popup, not inside it. Transparent.

Dialog / Popover / Tooltip / Menu / Preview Card — #4712 (consider controlled open)

Internal fix to Base UI's shared popup trigger state derivation (uses openProp ?? open instead of raw open). Our Dialog.Root, Popover.Root, Tooltip.Root are pure pass-throughs. Transparent.

Popover — #4741 (preserve active trigger on close press)

Aligns Popover with Dialog behavior. Pass-through wrapper. Transparent.

Drawer — #4841 (Forward style to Drawer.Viewport)

drawer/popup.tsx only passes className to _Drawer.Viewport — no style prop, no workaround code to remove. Transparent.

Field / Form — #4685 (Avoid flushSync during validation)

field/control.tsx is a pure pass-through. grep flushSync packages/ui/src returns nothing. Our useScheduleValidation utility is unrelated (dev-only Tabs/Dialog title validation). Transparent.

Select — #4683, #4671, #4699, #4810, #4820

  • #4683 (clear stale item text ref): transparent.
  • #4671 (data-popup-side on trigger): purely additive — Base UI now sets data-popup-side on Select.Trigger. Our selectTriggerStyles does not target it. Could be useful for future trigger styling tied to popup direction; out of scope for this PR.
  • #4699 (mouse selection without highlight): strict improvement — clicks that start on an item now reliably commit even when [data-highlighted] is missing. Transparent.
  • #4810 (ignore hidden-input changes while readonly/disabled): we forward disabled / readOnly to _Select.Root as-is. Transparent.
  • #4820 (nested Select dismissal): we don't have an explicit Select-inside-Popover composition or tests, but the fix is strictly more correct. Transparent.

Tooltip — #4501 (no flicker when nesting tooltip inside another tooltip's trigger)

We don't intentionally nest tooltip triggers, but this is a strict improvement. Transparent.

General fixes — #4775, #4655, #4695, #4661, #4662, #4693, #4732

  • #4775 (don't steal initial focus if focus already moved inside the floating element): our useDeprioritizedInitialFocus returns a callback that picks the initial-focus target; Base UI's FloatingFocusManager is what schedules the focus and now applies the new guard. Our hook is unaffected.
  • #4655 (return focus when reference disconnects): improves the "open dialog from a menu item" pattern (which our AlertDialog stories demonstrate). Transparent.
  • #4695, #4661, #4662, #4693, #4732: browser host fix / perf / internal.

Components we don't import — Combobox, Checkbox, Number Field, Toast, Navigation Menu, Preview Card, Scroll Area, Form

All release-notes items for these surfaces are not reachable through @wordpress/ui today.

Testing Instructions

How to verify locally
npm install
npm run test:unit -- packages/ui            # 37 suites, 389 tests
npx tsc --build packages/ui/tsconfig.json   # clean

Optional Storybook smoke test: npm run storybook:dev and exercise the Tabs, Dialog, Drawer, Popover, Tooltip, Select, Autocomplete, and AlertDialog stories.

Testing Instructions for Keyboard

No UI changes are introduced by this PR. Keyboard interaction surfaces follow @base-ui/react@1.5.0's upstream behavior — the existing Tabs keyboard navigation tests cover arrow-key navigation, focus management, and the new uncontrolled fallback paths.

Screenshots or screencast

N/A — dependency bump with no visual changes.

Use of AI Tools

This PR was authored with the assistance of Cursor's coding agent. The author has reviewed all changes and is responsible for the contents.

@github-actions github-actions Bot added the [Package] UI /packages/ui label May 19, 2026
@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown

Size Change: +4.49 kB (+0.05%)

Total Size: 8.21 MB

📦 View Changed
Filename Size Change
build/modules/boot/index.min.js 52.5 kB +757 B (+1.46%)
build/modules/content-types/index.min.js 158 kB +173 B (+0.11%)
build/scripts/block-directory/index.min.js 43.6 kB +707 B (+1.65%)
build/scripts/block-editor/index.min.js 380 kB +550 B (+0.15%)
build/scripts/edit-post/index.min.js 52.6 kB +702 B (+1.35%)
build/scripts/edit-site/index.min.js 296 kB +473 B (+0.16%)
build/scripts/editor/index.min.js 464 kB +394 B (+0.09%)
build/scripts/media-utils/index.min.js 113 kB +731 B (+0.65%)

compressed-size-action

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The TL;DR here is that Tabs now fires onValueChange but only for automatic tab selection:

  • Uncontrolled with no defaultValue: fires with the first enabled tab.
  • Uncontrolled with no defaultValue and the first tab disabled: fires with the first non-disabled tab.
  • Auto-fallback when the currently-selected tab is removed or becomes disabled (already covered by the earlier commit's tests).

It does not fire when the consumer supplies an explicit defaultValue / value that already matches an existing enabled tab (ie controlled)

@ciampo ciampo self-assigned this May 19, 2026
@ciampo ciampo added the [Type] Enhancement A suggestion for improvement. label May 19, 2026
@ciampo

ciampo commented May 19, 2026

Copy link
Copy Markdown
Contributor Author

cc @WordPress/gutenberg-components — given the experience with release 1.4.0, we can also wait to merge this PR until next week, to make sure the latest release doesn't introduce any major regressions

@ciampo ciampo marked this pull request as ready for review May 19, 2026 16:52
@ciampo ciampo requested a review from a team as a code owner May 19, 2026 16:52
@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: ciampo <mciampini@git.wordpress.org>
Co-authored-by: aduth <aduth@git.wordpress.org>
Co-authored-by: michaldudak <michaldudak@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown

Flaky tests detected in 647f6f1.
Some tests passed with failed attempts. The failures may not be related to this commit but are still reported for visibility. See the documentation for more information.

🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/26546359738
📝 Reported issues:

@ciampo ciampo force-pushed the update/base-ui-react-1.5.0 branch from b2e5d83 to 647f6f1 Compare May 28, 2026 00:10
@ciampo ciampo requested a review from Copilot May 28, 2026 08:10

This comment was marked as resolved.

@aduth

aduth commented Jun 1, 2026

Copy link
Copy Markdown
Member

There doesn't appear to be many issues which might be related to the latest release, and there hasn't been a bug-fix related release in the time since.

I did do an AI-assisted analysis of pull requests opened with the bug label since the release affecting components we use, as a signal of possible regressions. Sharing here now but I'll plan to give a closer look in the morning if any of these are blocker-worthy:

PR Status Affected component(s) Fix / relation / impact to our usage
mui/base-ui#4866 Merged, not in 1.5.0 Select, Combobox, Autocomplete, Tabs, Popover, Tooltip, Dialog (all store-based) Touches store/useStore.ts. From 1.5.0's memoization removal: useStoreFast returns a stale value in production builds only (StrictMode masks it in dev). Repro is live on base-ui.com (MenuTrigger aria-expanded not updating). Highest priority: production-only, broad, and undetectable by our dev testing.
mui/base-ui#4925 Merged, not in 1.5.0 Popover, Tooltip, Select, Combobox, Autocomplete, Dialog Touches the new *Store.ts and *Viewport.tsx. Fixes keep-mounted/custom-anchor positioning, preventUnmountOnClose reopen, and active-trigger open-state, all introduced by the 1.5.0 store/viewport split. Broad popup-positioning regression.
mui/base-ui#4893 Merged, not in 1.5.0 Popover, Tooltip Touches useHoverFloatingInteraction.ts (a split-interaction hook from #4661). Controlled/default-open popups wrongly close on pointer-leave. Relevant if we open popovers/tooltips programmatically or default-open.
mui/base-ui#4934 Merged, not in 1.5.0 Select Touches select/store.ts + SelectScrollArrow. Only the store/transition parts are likely regressions: data-selected drift when controlled value changes while open, and scroll-arrow transition mounting. (The autofill matching is a new enhancement, not a regression.)
mui/base-ui#4884 Open Tooltip Touches the split hover hooks (useHoverFloatingInteraction/useHoverShared). Focus-opened tooltip wrongly closes on hover-leave while trigger is still focused. Keyboard-a11y regression, still unfixed in any release.
mui/base-ui#4885 Open Tooltip (+ any popup using the API) Touches the new popupStoreUtils.ts. preventUnmountOnClose() latches permanently, positioner stuck mounted. Still unfixed.
mui/base-ui#4886 Open Tooltip Touches popupStoreUtils.ts + TooltipRoot. Tooltip doesn't close when its active trigger unmounts (conditional/virtualized triggers). Still unfixed.

@aduth

aduth commented Jun 2, 2026

Copy link
Copy Markdown
Member

mui/base-ui#4866: Touches store/useStore.ts. From 1.5.0's memoization removal: useStoreFast returns a stale value in production builds only (StrictMode masks it in dev). Repro is live on base-ui.com (MenuTrigger aria-expanded not updating). Highest priority: production-only, broad, and undetectable by our dev testing.

I could reproduce this on BaseUI's Menu documentation, which is the component for which there's an associated issue (mui/base-ui#4956), but I could not reproduce it for the other claimed affected components in BaseUI. I validated that our components that would have similar triggers like CollapsibleCard don't have this issue and furthermore have tests checking expanded state (although, as noted, this apparently only surfaces in production builds).

mui/base-ui#4925: Touches the new *Store.ts and *Viewport.tsx. Fixes keep-mounted/custom-anchor positioning, preventUnmountOnClose reopen, and active-trigger open-state, all introduced by the 1.5.0 store/viewport split. Broad popup-positioning regression.

My understanding is we're not using any of these affected behaviors (e.g. custom anchor, preventUnmountOnClose, etc.).

mui/base-ui#4893: Touches useHoverFloatingInteraction.ts (a split-interaction hook from mui/base-ui#4661). Controlled/default-open popups wrongly close on pointer-leave. Relevant if we open popovers/tooltips programmatically or default-open.

Tested and could not reproduce on Popover with controlled open. We don't currently expose open on Tooltip.

mui/base-ui#4934: Touches select/store.ts + SelectScrollArrow. Only the store/transition parts are likely regressions: data-selected drift when controlled value changes while open, and scroll-arrow transition mounting. (The autofill matching is a new enhancement, not a regression.)

There might be some rare edges around the data-selected drift where checked item might show incorrectly if changed while the select is opened. Feels like an edge case.

mui/base-ui#4884: Touches the split hover hooks (useHoverFloatingInteraction/useHoverShared). Focus-opened tooltip wrongly closes on hover-leave while trigger is still focused. Keyboard-a11y regression, still unfixed in any release.

I don't get the impression this is specifically related to 1.5.0.

mui/base-ui#4885: Touches the new popupStoreUtils.ts. preventUnmountOnClose() latches permanently, positioner stuck mounted. Still unfixed.

We don't use preventUnmountOnClose. Could affect downstream usage if used, but the impact seems pretty small (leftover DOM elements).

mui/base-ui#4886: Touches popupStoreUtils.ts + TooltipRoot. Tooltip doesn't close when its active trigger unmounts (conditional/virtualized triggers). Still unfixed.

Also not clear this is specific to / caused by 1.5.0.

@aduth aduth left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍 Also did a spot check locally of every component.

Comment on lines +2036 to +2038
}

if ( mode === 'Controlled' ) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Since we're checking values which are mutually exclusive, this could probably be else if rather than a separate condition. Or a switch, but that's probably overkill. (Same note applies for code below)

@aduth

aduth commented Jun 4, 2026

Copy link
Copy Markdown
Member

Might also be worth incorporating this change of your other draft pull request as code we no longer need as of (technically earlier) updates?

ciampo added 5 commits June 5, 2026 23:48
Brings in upstream fixes and behavior improvements from
https://github.com/mui/base-ui/releases/tag/v1.5.0.

Notably, in `Tabs`, `onValueChange` now fires for automatic tab
selection. In uncontrolled mode, removing or disabling the currently
selected tab now moves selection to the first available tab and
reports the change through the callback. Tests for these scenarios
are updated to match the new behavior; the controlled-mode flow is
unchanged.
Now that `@base-ui/react@1.5.0` ships the fix for
mui/base-ui#2097, re-enable the test
assertions that were skipped while that upstream bug was open.

The 1.5.0 fix only fires `onValueChange` for *automatic* tab
selection, not for consumer-supplied initial values. Re-enable the
two test paths that match that contract (uncontrolled `Tabs` with no
`defaultValue`, with and without a disabled first tab) and replace
the remaining stale TODOs — where the consumer does supply
`defaultValue` / `value` — with an explicit
`expect(mockOnValueChange).not.toHaveBeenCalled()` to lock in the
actual behavior.
Remove the test-only changelog line and add the PR link to the
remaining Tabs and dependency entries.
Trunk released `0.14.0` while this PR was open. The rebase three-way
merge placed the new entries inside the now-released `0.14.0` block;
move them back to the `Unreleased` section.
Drops the `[data-wpds-theme-provider-id]:has(> .popup) { display: block }`
escape hatch that worked around mui/base-ui#4622. The upstream regression
was fixed in `@base-ui/react@1.4.1`, so the rule is no longer needed.

Spotted by @aduth during review.
@ciampo ciampo force-pushed the update/base-ui-react-1.5.0 branch from 647f6f1 to 4e24e91 Compare June 5, 2026 21:50
ciampo added 4 commits June 5, 2026 23:53
Per @aduth's review nit: the `Uncontrolled` / `Controlled` mode branches
inside the parameterized tests are mutually exclusive, so the second
condition can be chained as `else if` instead of opening a new `if`. No
behavior change; just clarifies intent and matches the test's
two-mode-only contract.
Restore the original Code Quality / Bug Fixes / Enhancements order from
trunk and only append new entries in place. The previous version
needlessly shuffled existing sections, inflating the PR diff.
The change has no observable effect for consumers — it's a pure internal
cleanup. Keep it out of the CHANGELOG.
The conflict resolution during the earlier rebase ran `npm install`
against trunk's lockfile, which (with `prefer-dedupe = true`) hoisted
several unrelated transitive deps (`@testing-library/dom` 9.3.4 → 10.4.1,
`@types/react` 18.3.27 → 18.3.30, `aria-query` 5.1.3 → 5.3.0, etc.) and
removed previously-nested copies — adding ~1.9k lines of churn that had
nothing to do with this PR.

Reset the lockfile to trunk and apply only the changes required by the
`@base-ui/react@1.5.0` bump: the two `@base-ui/*` entries and the
`packages/ui` workspace dependency declaration. Net diff is now 8/8.

`reselect` (a transitive of `@base-ui/utils`) stays at 5.1.1, which
still satisfies the package's `^5.1.1` constraint.
@ciampo ciampo enabled auto-merge (squash) June 5, 2026 22:08
@ciampo ciampo merged commit e7f7f56 into trunk Jun 5, 2026
44 checks passed
@ciampo ciampo deleted the update/base-ui-react-1.5.0 branch June 5, 2026 22:37
@github-actions github-actions Bot added this to the Gutenberg 23.4 milestone Jun 5, 2026
markjaquith pushed a commit to WordPress/WordPress that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.
Built from https://develop.svn.wordpress.org/trunk@62584


git-svn-id: http://core.svn.wordpress.org/trunk@61864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
hubot pushed a commit to nacin/wp-develop that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
KhushalSainS pushed a commit to KhushalSainS/wordpress-develop that referenced this pull request Jul 1, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
SteelWagstaff pushed a commit to SteelWagstaff/wordpress-develop that referenced this pull request Jul 2, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Package] UI /packages/ui [Type] Enhancement A suggestion for improvement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[tabs] onValueChange does not fire when the initially selected tab is picked by the Tabs component

3 participants