close
Skip to content

design-system-mcp: Update get_components to optionally support multiple names#78185

Merged
aduth merged 15 commits into
trunkfrom
update/design-system-mcp-multiple-names
May 15, 2026
Merged

design-system-mcp: Update get_components to optionally support multiple names#78185
aduth merged 15 commits into
trunkfrom
update/design-system-mcp-multiple-names

Conversation

@aduth

@aduth aduth commented May 11, 2026

Copy link
Copy Markdown
Member

What?

Updates the WordPress Design System MCP get_component_details tool to allow retrieving multiple components' details at once by passing an array of names, while still supporting individual component details by passing a string.

Why?

AI agents will often try to limit their tool use. When working on a complex user interaction that might involve several components, agents interacting with the current server implementation may only retrieve details for a few components. If there are more relevant components, it has been observed to make assumptions (often incorrect) about how a component should work, rather than make another tool call. We can anticipate and work within this tool call constraint by allowing a single tool call to retrieve information for several components at once, supporting common workflows where a developer would be arranging several design system components into a UI or component implementation.

How?

  • Updates schema to receive either a string name or array of strings
  • Handler normalizes input name to an array and loops to retrieve details
  • Returned content is joined with a markdown horizontal rule

Testing Instructions

Repeat testing instructions from #77159.

In MCP inspector tool, observe that get_components tool accepts an array of component names.

In real agent usage, provide the agent a prompt which asks it to retrieve details about several components. (Example, which covers both existing and missing components: "In the WordPress Design System, what's the difference between Button, ToggleButton, and MenuButton? When should I use each?").

Testing Instructions for Keyboard

Screenshots or screencast

Initial state:

image

Single component:

image

Multiple components:

image

Claude Desktop example prompt, showing multiple requests for components and handling missing components:

image

Use of AI Tools

Implemented using Claude Code Opus 4.7. Several rounds of iteration, particularly around input schema and test coverage approach.

@aduth aduth requested a review from a team as a code owner May 11, 2026 20:39
@github-actions

github-actions Bot commented May 11, 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: aduth <aduth@git.wordpress.org>
Co-authored-by: mirka <0mirka00@git.wordpress.org>
Co-authored-by: ciampo <mciampini@git.wordpress.org>

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

@aduth aduth added [Type] Enhancement A suggestion for improvement. [Package] Design System MCP /packages/design-system-mcp labels May 11, 2026
@github-actions

github-actions Bot commented May 11, 2026

Copy link
Copy Markdown

Size Change: 0 B

Total Size: 7.97 MB

ℹ️ View Unchanged
Filename Size
build/modules/a11y/index.min.js 355 B
build/modules/abilities/index.min.js 42.3 kB
build/modules/block-editor/utils/fit-text-frontend.min.js 617 B
build/modules/block-library/accordion/view.min.js 595 B
build/modules/block-library/file/view.min.js 346 B
build/modules/block-library/form/view.min.js 528 B
build/modules/block-library/image/view.min.js 2.64 kB
build/modules/block-library/navigation/view.min.js 1.14 kB
build/modules/block-library/playlist/view.min.js 10.9 kB
build/modules/block-library/query/view.min.js 518 B
build/modules/block-library/search/view.min.js 498 B
build/modules/block-library/tabs/view.min.js 946 B
build/modules/boot/index.min.js 19.3 kB
build/modules/connectors/index.min.js 2.05 kB
build/modules/content-types/index.min.js 156 kB
build/modules/core-abilities/index.min.js 926 B
build/modules/edit-site-init/index.min.js 1.4 kB
build/modules/interactivity-router/full-page.min.js 451 B
build/modules/interactivity-router/index.min.js 11.6 kB
build/modules/interactivity/index.min.js 15.3 kB
build/modules/latex-to-mathml/index.min.js 56.5 kB
build/modules/latex-to-mathml/loader.min.js 131 B
build/modules/lazy-editor/index.min.js 14.1 kB
build/modules/route/index.min.js 25.2 kB
build/modules/vips/loader.min.js 127 B
build/modules/vips/worker.min.js 4.56 MB
build/modules/workflow/index.min.js 19.9 kB
build/scripts/a11y/index.min.js 1.1 kB
build/scripts/annotations/index.min.js 2.53 kB
build/scripts/api-fetch/index.min.js 2.86 kB
build/scripts/autop/index.min.js 2.21 kB
build/scripts/base-styles/index.min.js 146 B
build/scripts/blob/index.min.js 665 B
build/scripts/block-directory/index.min.js 10.3 kB
build/scripts/block-editor/index.min.js 346 kB
build/scripts/block-library/index.min.js 323 kB
build/scripts/block-serialization-default-parser/index.min.js 1.2 kB
build/scripts/block-serialization-spec-parser/index.min.js 3.12 kB
build/scripts/blocks/index.min.js 57.1 kB
build/scripts/commands/index.min.js 21 kB
build/scripts/components/index.min.js 267 kB
build/scripts/compose/index.min.js 11.1 kB
build/scripts/core-commands/index.min.js 4.37 kB
build/scripts/core-data/index.min.js 31.3 kB
build/scripts/customize-widgets/index.min.js 14.6 kB
build/scripts/data-controls/index.min.js 832 B
build/scripts/data/index.min.js 9.72 kB
build/scripts/date/index.min.js 23.7 kB
build/scripts/deprecated/index.min.js 784 B
build/scripts/dom-ready/index.min.js 502 B
build/scripts/dom/index.min.js 5.04 kB
build/scripts/edit-post/index.min.js 18.8 kB
build/scripts/edit-site/index.min.js 265 kB
build/scripts/edit-widgets/index.min.js 22.2 kB
build/scripts/editor/index.min.js 430 kB
build/scripts/element/index.min.js 5.2 kB
build/scripts/escape-html/index.min.js 622 B
build/scripts/format-library/index.min.js 13.1 kB
build/scripts/hooks/index.min.js 1.86 kB
build/scripts/html-entities/index.min.js 529 B
build/scripts/i18n/index.min.js 2.5 kB
build/scripts/is-shallow-equal/index.min.js 607 B
build/scripts/keyboard-shortcuts/index.min.js 1.65 kB
build/scripts/keycodes/index.min.js 1.6 kB
build/scripts/list-reusable-blocks/index.min.js 2.53 kB
build/scripts/media-utils/index.min.js 79.9 kB
build/scripts/notices/index.min.js 1.89 kB
build/scripts/nux/index.min.js 1.92 kB
build/scripts/patterns/index.min.js 8 kB
build/scripts/plugins/index.min.js 2.18 kB
build/scripts/preferences-persistence/index.min.js 2.19 kB
build/scripts/preferences/index.min.js 3.33 kB
build/scripts/primitives/index.min.js 1.05 kB
build/scripts/priority-queue/index.min.js 1.65 kB
build/scripts/private-apis/index.min.js 1.14 kB
build/scripts/react-i18n/index.min.js 868 B
build/scripts/redux-routine/index.min.js 3.4 kB
build/scripts/reusable-blocks/index.min.js 3.14 kB
build/scripts/rich-text/index.min.js 14 kB
build/scripts/router/index.min.js 5.99 kB
build/scripts/server-side-render/index.min.js 1.94 kB
build/scripts/shortcode/index.min.js 1.62 kB
build/scripts/style-engine/index.min.js 2.45 kB
build/scripts/sync/index.min.js 39.3 kB
build/scripts/theme/index.min.js 22.3 kB
build/scripts/token-list/index.min.js 767 B
build/scripts/undo-manager/index.min.js 954 B
build/scripts/upload-media/index.min.js 11.2 kB
build/scripts/url/index.min.js 4.02 kB
build/scripts/vendors/react-dom.min.js 43.3 kB
build/scripts/vendors/react-jsx-runtime.min.js 667 B
build/scripts/vendors/react.min.js 2.77 kB
build/scripts/viewport/index.min.js 1.25 kB
build/scripts/warning/index.min.js 482 B
build/scripts/widgets/index.min.js 7.84 kB
build/scripts/wordcount/index.min.js 1.07 kB
build/styles/base-styles/admin-schemes-rtl.css 1.71 kB
build/styles/base-styles/admin-schemes-rtl.min.css 775 B
build/styles/base-styles/admin-schemes.css 1.71 kB
build/styles/base-styles/admin-schemes.min.css 775 B
build/styles/block-directory/style-rtl.css 1.97 kB
build/styles/block-directory/style-rtl.min.css 1.06 kB
build/styles/block-directory/style.css 1.98 kB
build/styles/block-directory/style.min.css 1.06 kB
build/styles/block-editor/content-rtl.css 5.44 kB
build/styles/block-editor/content-rtl.min.css 4.01 kB
build/styles/block-editor/content.css 5.44 kB
build/styles/block-editor/content.min.css 4.01 kB
build/styles/block-editor/default-editor-styles-rtl.css 697 B
build/styles/block-editor/default-editor-styles-rtl.min.css 224 B
build/styles/block-editor/default-editor-styles.css 697 B
build/styles/block-editor/default-editor-styles.min.css 224 B
build/styles/block-editor/style-rtl.css 18.7 kB
build/styles/block-editor/style-rtl.min.css 15.9 kB
build/styles/block-editor/style.css 18.7 kB
build/styles/block-editor/style.min.css 15.9 kB
build/styles/block-library/accordion-heading/style-rtl.css 346 B
build/styles/block-library/accordion-heading/style-rtl.min.css 325 B
build/styles/block-library/accordion-heading/style.css 346 B
build/styles/block-library/accordion-heading/style.min.css 325 B
build/styles/block-library/accordion-item/style-rtl.css 239 B
build/styles/block-library/accordion-item/style-rtl.min.css 180 B
build/styles/block-library/accordion-item/style.css 238 B
build/styles/block-library/accordion-item/style.min.css 180 B
build/styles/block-library/accordion-panel/style-rtl.css 110 B
build/styles/block-library/accordion-panel/style-rtl.min.css 99 B
build/styles/block-library/accordion-panel/style.css 110 B
build/styles/block-library/accordion-panel/style.min.css 99 B
build/styles/block-library/accordion/style-rtl.css 69 B
build/styles/block-library/accordion/style-rtl.min.css 62 B
build/styles/block-library/accordion/style.css 69 B
build/styles/block-library/accordion/style.min.css 62 B
build/styles/block-library/archives/style-rtl.css 101 B
build/styles/block-library/archives/style-rtl.min.css 90 B
build/styles/block-library/archives/style.css 101 B
build/styles/block-library/archives/style.min.css 90 B
build/styles/block-library/audio/editor-rtl.css 166 B
build/styles/block-library/audio/editor-rtl.min.css 149 B
build/styles/block-library/audio/editor.css 166 B
build/styles/block-library/audio/editor.min.css 151 B
build/styles/block-library/audio/style-rtl.css 945 B
build/styles/block-library/audio/style-rtl.min.css 132 B
build/styles/block-library/audio/style.css 945 B
build/styles/block-library/audio/style.min.css 132 B
build/styles/block-library/audio/theme-rtl.css 967 B
build/styles/block-library/audio/theme-rtl.min.css 134 B
build/styles/block-library/audio/theme.css 967 B
build/styles/block-library/audio/theme.min.css 134 B
build/styles/block-library/avatar/editor-rtl.css 127 B
build/styles/block-library/avatar/editor-rtl.min.css 115 B
build/styles/block-library/avatar/editor.css 127 B
build/styles/block-library/avatar/editor.min.css 115 B
build/styles/block-library/avatar/style-rtl.css 117 B
build/styles/block-library/avatar/style-rtl.min.css 104 B
build/styles/block-library/avatar/style.css 117 B
build/styles/block-library/avatar/style.min.css 104 B
build/styles/block-library/breadcrumbs/style-rtl.css 233 B
build/styles/block-library/breadcrumbs/style-rtl.min.css 203 B
build/styles/block-library/breadcrumbs/style.css 233 B
build/styles/block-library/breadcrumbs/style.min.css 203 B
build/styles/block-library/button/editor-rtl.css 306 B
build/styles/block-library/button/editor-rtl.min.css 265 B
build/styles/block-library/button/editor.css 317 B
build/styles/block-library/button/editor.min.css 265 B
build/styles/block-library/button/style-rtl.css 651 B
build/styles/block-library/button/style-rtl.min.css 596 B
build/styles/block-library/button/style.css 662 B
build/styles/block-library/button/style.min.css 596 B
build/styles/block-library/buttons/editor-rtl.css 391 B
build/styles/block-library/buttons/editor-rtl.min.css 291 B
build/styles/block-library/buttons/editor.css 391 B
build/styles/block-library/buttons/editor.min.css 291 B
build/styles/block-library/buttons/style-rtl.css 452 B
build/styles/block-library/buttons/style-rtl.min.css 349 B
build/styles/block-library/buttons/style.css 453 B
build/styles/block-library/buttons/style.min.css 349 B
build/styles/block-library/calendar/style-rtl.css 271 B
build/styles/block-library/calendar/style-rtl.min.css 239 B
build/styles/block-library/calendar/style.css 271 B
build/styles/block-library/calendar/style.min.css 239 B
build/styles/block-library/categories/editor-rtl.css 171 B
build/styles/block-library/categories/editor-rtl.min.css 132 B
build/styles/block-library/categories/editor.css 170 B
build/styles/block-library/categories/editor.min.css 131 B
build/styles/block-library/categories/style-rtl.css 226 B
build/styles/block-library/categories/style-rtl.min.css 169 B
build/styles/block-library/categories/style.css 235 B
build/styles/block-library/categories/style.min.css 169 B
build/styles/block-library/classic-rtl.css 402 B
build/styles/block-library/classic-rtl.min.css 358 B
build/styles/block-library/classic.css 402 B
build/styles/block-library/classic.min.css 358 B
build/styles/block-library/code/editor-rtl.css 59 B
build/styles/block-library/code/editor-rtl.min.css 53 B
build/styles/block-library/code/editor.css 59 B
build/styles/block-library/code/editor.min.css 53 B
build/styles/block-library/code/style-rtl.css 158 B
build/styles/block-library/code/style-rtl.min.css 140 B
build/styles/block-library/code/style.css 178 B
build/styles/block-library/code/style.min.css 140 B
build/styles/block-library/code/theme-rtl.css 135 B
build/styles/block-library/code/theme-rtl.min.css 122 B
build/styles/block-library/code/theme.css 135 B
build/styles/block-library/code/theme.min.css 122 B
build/styles/block-library/columns/editor-rtl.css 119 B
build/styles/block-library/columns/editor-rtl.min.css 108 B
build/styles/block-library/columns/editor.css 119 B
build/styles/block-library/columns/editor.min.css 108 B
build/styles/block-library/columns/style-rtl.css 1.3 kB
build/styles/block-library/columns/style-rtl.min.css 421 B
build/styles/block-library/columns/style.css 1.3 kB
build/styles/block-library/columns/style.min.css 421 B
build/styles/block-library/comment-author-avatar/editor-rtl.css 136 B
build/styles/block-library/comment-author-avatar/editor-rtl.min.css 124 B
build/styles/block-library/comment-author-avatar/editor.css 136 B
build/styles/block-library/comment-author-avatar/editor.min.css 124 B
build/styles/block-library/comment-author-name/style-rtl.css 79 B
build/styles/block-library/comment-author-name/style-rtl.min.css 72 B
build/styles/block-library/comment-author-name/style.css 79 B
build/styles/block-library/comment-author-name/style.min.css 72 B
build/styles/block-library/comment-content/style-rtl.css 137 B
build/styles/block-library/comment-content/style-rtl.min.css 120 B
build/styles/block-library/comment-content/style.css 137 B
build/styles/block-library/comment-content/style.min.css 120 B
build/styles/block-library/comment-date/style-rtl.css 72 B
build/styles/block-library/comment-date/style-rtl.min.css 65 B
build/styles/block-library/comment-date/style.css 72 B
build/styles/block-library/comment-date/style.min.css 65 B
build/styles/block-library/comment-edit-link/style-rtl.css 77 B
build/styles/block-library/comment-edit-link/style-rtl.min.css 70 B
build/styles/block-library/comment-edit-link/style.css 77 B
build/styles/block-library/comment-edit-link/style.min.css 70 B
build/styles/block-library/comment-reply-link/style-rtl.css 78 B
build/styles/block-library/comment-reply-link/style-rtl.min.css 71 B
build/styles/block-library/comment-reply-link/style.css 78 B
build/styles/block-library/comment-reply-link/style.min.css 71 B
build/styles/block-library/comment-template/style-rtl.css 213 B
build/styles/block-library/comment-template/style-rtl.min.css 191 B
build/styles/block-library/comment-template/style.css 213 B
build/styles/block-library/comment-template/style.min.css 191 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.css 135 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.min.css 122 B
build/styles/block-library/comments-pagination-numbers/editor.css 144 B
build/styles/block-library/comments-pagination-numbers/editor.min.css 121 B
build/styles/block-library/comments-pagination/editor-rtl.css 184 B
build/styles/block-library/comments-pagination/editor-rtl.min.css 168 B
build/styles/block-library/comments-pagination/editor.css 184 B
build/styles/block-library/comments-pagination/editor.min.css 168 B
build/styles/block-library/comments-pagination/style-rtl.css 224 B
build/styles/block-library/comments-pagination/style-rtl.min.css 201 B
build/styles/block-library/comments-pagination/style.css 236 B
build/styles/block-library/comments-pagination/style.min.css 201 B
build/styles/block-library/comments-title/editor-rtl.css 83 B
build/styles/block-library/comments-title/editor-rtl.min.css 75 B
build/styles/block-library/comments-title/editor.css 83 B
build/styles/block-library/comments-title/editor.min.css 75 B
build/styles/block-library/comments/editor-rtl.css 968 B
build/styles/block-library/comments/editor-rtl.min.css 842 B
build/styles/block-library/comments/editor.css 968 B
build/styles/block-library/comments/editor.min.css 842 B
build/styles/block-library/comments/style-rtl.css 754 B
build/styles/block-library/comments/style-rtl.min.css 637 B
build/styles/block-library/comments/style.css 752 B
build/styles/block-library/comments/style.min.css 637 B
build/styles/block-library/common-rtl.css 2.48 kB
build/styles/block-library/common-rtl.min.css 1.12 kB
build/styles/block-library/common.css 2.5 kB
build/styles/block-library/common.min.css 1.12 kB
build/styles/block-library/cover/editor-rtl.css 1.05 kB
build/styles/block-library/cover/editor-rtl.min.css 631 B
build/styles/block-library/cover/editor.css 1.05 kB
build/styles/block-library/cover/editor.min.css 631 B
build/styles/block-library/cover/style-rtl.css 2.5 kB
build/styles/block-library/cover/style-rtl.min.css 1.82 kB
build/styles/block-library/cover/style.css 2.51 kB
build/styles/block-library/cover/style.min.css 1.81 kB
build/styles/block-library/details/editor-rtl.css 72 B
build/styles/block-library/details/editor-rtl.min.css 65 B
build/styles/block-library/details/editor.css 72 B
build/styles/block-library/details/editor.min.css 65 B
build/styles/block-library/details/style-rtl.css 97 B
build/styles/block-library/details/style-rtl.min.css 86 B
build/styles/block-library/details/style.css 97 B
build/styles/block-library/details/style.min.css 86 B
build/styles/block-library/editor-elements-rtl.css 117 B
build/styles/block-library/editor-elements-rtl.min.css 75 B
build/styles/block-library/editor-elements.css 117 B
build/styles/block-library/editor-elements.min.css 75 B
build/styles/block-library/editor-rtl.css 12.5 kB
build/styles/block-library/editor-rtl.min.css 10.3 kB
build/styles/block-library/editor.css 12.5 kB
build/styles/block-library/editor.min.css 10.3 kB
build/styles/block-library/elements-rtl.css 84 B
build/styles/block-library/elements-rtl.min.css 54 B
build/styles/block-library/elements.css 84 B
build/styles/block-library/elements.min.css 54 B
build/styles/block-library/embed/editor-rtl.css 391 B
build/styles/block-library/embed/editor-rtl.min.css 331 B
build/styles/block-library/embed/editor.css 390 B
build/styles/block-library/embed/editor.min.css 331 B
build/styles/block-library/embed/style-rtl.css 1.29 kB
build/styles/block-library/embed/style-rtl.min.css 448 B
build/styles/block-library/embed/style.css 1.29 kB
build/styles/block-library/embed/style.min.css 448 B
build/styles/block-library/embed/theme-rtl.css 967 B
build/styles/block-library/embed/theme-rtl.min.css 133 B
build/styles/block-library/embed/theme.css 967 B
build/styles/block-library/embed/theme.min.css 133 B
build/styles/block-library/file/editor-rtl.css 352 B
build/styles/block-library/file/editor-rtl.min.css 324 B
build/styles/block-library/file/editor.css 353 B
build/styles/block-library/file/editor.min.css 324 B
build/styles/block-library/file/style-rtl.css 318 B
build/styles/block-library/file/style-rtl.min.css 278 B
build/styles/block-library/file/style.css 331 B
build/styles/block-library/file/style.min.css 278 B
build/styles/block-library/footnotes/style-rtl.css 220 B
build/styles/block-library/footnotes/style-rtl.min.css 198 B
build/styles/block-library/footnotes/style.css 219 B
build/styles/block-library/footnotes/style.min.css 197 B
build/styles/block-library/form-input/editor-rtl.css 286 B
build/styles/block-library/form-input/editor-rtl.min.css 265 B
build/styles/block-library/form-input/editor.css 285 B
build/styles/block-library/form-input/editor.min.css 264 B
build/styles/block-library/form-input/style-rtl.css 467 B
build/styles/block-library/form-input/style-rtl.min.css 366 B
build/styles/block-library/form-input/style.css 467 B
build/styles/block-library/form-input/style.min.css 366 B
build/styles/block-library/form-submission-notification/editor-rtl.css 368 B
build/styles/block-library/form-submission-notification/editor-rtl.min.css 344 B
build/styles/block-library/form-submission-notification/editor.css 368 B
build/styles/block-library/form-submission-notification/editor.min.css 341 B
build/styles/block-library/form-submit-button/style-rtl.css 77 B
build/styles/block-library/form-submit-button/style-rtl.min.css 69 B
build/styles/block-library/form-submit-button/style.css 77 B
build/styles/block-library/form-submit-button/style.min.css 69 B
build/styles/block-library/freeform/editor-rtl.css 1.12 kB
build/styles/block-library/freeform/editor-rtl.min.css 288 B
build/styles/block-library/freeform/editor.css 1.12 kB
build/styles/block-library/freeform/editor.min.css 288 B
build/styles/block-library/gallery/editor-rtl.css 1.52 kB
build/styles/block-library/gallery/editor-rtl.min.css 615 B
build/styles/block-library/gallery/editor.css 1.52 kB
build/styles/block-library/gallery/editor.min.css 616 B
build/styles/block-library/gallery/style-rtl.css 2.84 kB
build/styles/block-library/gallery/style-rtl.min.css 1.84 kB
build/styles/block-library/gallery/style.css 2.84 kB
build/styles/block-library/gallery/style.min.css 1.84 kB
build/styles/block-library/gallery/theme-rtl.css 941 B
build/styles/block-library/gallery/theme-rtl.min.css 108 B
build/styles/block-library/gallery/theme.css 941 B
build/styles/block-library/gallery/theme.min.css 108 B
build/styles/block-library/group/editor-rtl.css 772 B
build/styles/block-library/group/editor-rtl.min.css 335 B
build/styles/block-library/group/editor.css 772 B
build/styles/block-library/group/editor.min.css 335 B
build/styles/block-library/group/style-rtl.css 120 B
build/styles/block-library/group/style-rtl.min.css 103 B
build/styles/block-library/group/style.css 120 B
build/styles/block-library/group/style.min.css 103 B
build/styles/block-library/group/theme-rtl.css 468 B
build/styles/block-library/group/theme-rtl.min.css 79 B
build/styles/block-library/group/theme.css 468 B
build/styles/block-library/group/theme.min.css 79 B
build/styles/block-library/heading/style-rtl.css 604 B
build/styles/block-library/heading/style-rtl.min.css 205 B
build/styles/block-library/heading/style.css 604 B
build/styles/block-library/heading/style.min.css 205 B
build/styles/block-library/html/editor-rtl.css 1.29 kB
build/styles/block-library/html/editor-rtl.min.css 464 B
build/styles/block-library/html/editor.css 1.3 kB
build/styles/block-library/html/editor.min.css 464 B
build/styles/block-library/icon/editor-rtl.css 776 B
build/styles/block-library/icon/editor-rtl.min.css 377 B
build/styles/block-library/icon/editor.css 776 B
build/styles/block-library/icon/editor.min.css 377 B
build/styles/block-library/icon/style-rtl.css 218 B
build/styles/block-library/icon/style-rtl.min.css 154 B
build/styles/block-library/icon/style.css 218 B
build/styles/block-library/icon/style.min.css 154 B
build/styles/block-library/image/editor-rtl.css 1.64 kB
build/styles/block-library/image/editor-rtl.min.css 782 B
build/styles/block-library/image/editor.css 1.64 kB
build/styles/block-library/image/editor.min.css 780 B
build/styles/block-library/image/style-rtl.css 2.92 kB
build/styles/block-library/image/style-rtl.min.css 1.86 kB
build/styles/block-library/image/style.css 2.92 kB
build/styles/block-library/image/style.min.css 1.85 kB
build/styles/block-library/image/theme-rtl.css 971 B
build/styles/block-library/image/theme-rtl.min.css 137 B
build/styles/block-library/image/theme.css 971 B
build/styles/block-library/image/theme.min.css 137 B
build/styles/block-library/latest-comments/style-rtl.css 392 B
build/styles/block-library/latest-comments/style-rtl.min.css 352 B
build/styles/block-library/latest-comments/style.css 390 B
build/styles/block-library/latest-comments/style.min.css 352 B
build/styles/block-library/latest-posts/editor-rtl.css 154 B
build/styles/block-library/latest-posts/editor-rtl.min.css 139 B
build/styles/block-library/latest-posts/editor.css 153 B
build/styles/block-library/latest-posts/editor.min.css 138 B
build/styles/block-library/latest-posts/style-rtl.css 1.36 kB
build/styles/block-library/latest-posts/style-rtl.min.css 520 B
build/styles/block-library/latest-posts/style.css 1.37 kB
build/styles/block-library/latest-posts/style.min.css 520 B
build/styles/block-library/list/style-rtl.css 498 B
build/styles/block-library/list/style-rtl.min.css 107 B
build/styles/block-library/list/style.css 498 B
build/styles/block-library/list/style.min.css 107 B
build/styles/block-library/loginout/style-rtl.css 68 B
build/styles/block-library/loginout/style-rtl.min.css 61 B
build/styles/block-library/loginout/style.css 68 B
build/styles/block-library/loginout/style.min.css 61 B
build/styles/block-library/math/editor-rtl.css 491 B
build/styles/block-library/math/editor-rtl.min.css 105 B
build/styles/block-library/math/editor.css 502 B
build/styles/block-library/math/editor.min.css 105 B
build/styles/block-library/math/style-rtl.css 70 B
build/styles/block-library/math/style-rtl.min.css 61 B
build/styles/block-library/math/style.css 70 B
build/styles/block-library/math/style.min.css 61 B
build/styles/block-library/media-text/editor-rtl.css 389 B
build/styles/block-library/media-text/editor-rtl.min.css 321 B
build/styles/block-library/media-text/editor.css 389 B
build/styles/block-library/media-text/editor.min.css 320 B
build/styles/block-library/media-text/style-rtl.css 873 B
build/styles/block-library/media-text/style-rtl.min.css 552 B
build/styles/block-library/media-text/style.css 901 B
build/styles/block-library/media-text/style.min.css 550 B
build/styles/block-library/more/editor-rtl.css 796 B
build/styles/block-library/more/editor-rtl.min.css 393 B
build/styles/block-library/more/editor.css 798 B
build/styles/block-library/more/editor.min.css 393 B
build/styles/block-library/navigation-link/editor-rtl.css 1.28 kB
build/styles/block-library/navigation-link/editor-rtl.min.css 710 B
build/styles/block-library/navigation-link/editor.css 1.27 kB
build/styles/block-library/navigation-link/editor.min.css 713 B
build/styles/block-library/navigation-link/style-rtl.css 579 B
build/styles/block-library/navigation-link/style-rtl.min.css 190 B
build/styles/block-library/navigation-link/style.css 579 B
build/styles/block-library/navigation-link/style.min.css 188 B
build/styles/block-library/navigation-overlay-close/style-rtl.css 260 B
build/styles/block-library/navigation-overlay-close/style-rtl.min.css 237 B
build/styles/block-library/navigation-overlay-close/style.css 260 B
build/styles/block-library/navigation-overlay-close/style.min.css 237 B
build/styles/block-library/navigation-submenu/editor-rtl.css 1.12 kB
build/styles/block-library/navigation-submenu/editor-rtl.min.css 295 B
build/styles/block-library/navigation-submenu/editor.css 1.12 kB
build/styles/block-library/navigation-submenu/editor.min.css 294 B
build/styles/block-library/navigation/editor-rtl.css 3.28 kB
build/styles/block-library/navigation/editor-rtl.min.css 2.28 kB
build/styles/block-library/navigation/editor.css 3.29 kB
build/styles/block-library/navigation/editor.min.css 2.28 kB
build/styles/block-library/navigation/style-rtl.css 3.59 kB
build/styles/block-library/navigation/style-rtl.min.css 2.52 kB
build/styles/block-library/navigation/style.css 3.59 kB
build/styles/block-library/navigation/style.min.css 2.5 kB
build/styles/block-library/nextpage/editor-rtl.css 799 B
build/styles/block-library/nextpage/editor-rtl.min.css 392 B
build/styles/block-library/nextpage/editor.css 800 B
build/styles/block-library/nextpage/editor.min.css 392 B
build/styles/block-library/page-list/editor-rtl.css 1.18 kB
build/styles/block-library/page-list/editor-rtl.min.css 356 B
build/styles/block-library/page-list/editor.css 1.18 kB
build/styles/block-library/page-list/editor.min.css 356 B
build/styles/block-library/page-list/style-rtl.css 207 B
build/styles/block-library/page-list/style-rtl.min.css 192 B
build/styles/block-library/page-list/style.css 207 B
build/styles/block-library/page-list/style.min.css 192 B
build/styles/block-library/paragraph/editor-rtl.css 315 B
build/styles/block-library/paragraph/editor-rtl.min.css 292 B
build/styles/block-library/paragraph/editor.css 314 B
build/styles/block-library/paragraph/editor.min.css 292 B
build/styles/block-library/paragraph/style-rtl.css 746 B
build/styles/block-library/paragraph/style-rtl.min.css 341 B
build/styles/block-library/paragraph/style.css 752 B
build/styles/block-library/paragraph/style.min.css 340 B
build/styles/block-library/playlist-track/style-rtl.css 453 B
build/styles/block-library/playlist-track/style-rtl.min.css 420 B
build/styles/block-library/playlist-track/style.css 453 B
build/styles/block-library/playlist-track/style.min.css 420 B
build/styles/block-library/playlist/editor-rtl.css 120 B
build/styles/block-library/playlist/editor-rtl.min.css 112 B
build/styles/block-library/playlist/editor.css 120 B
build/styles/block-library/playlist/editor.min.css 112 B
build/styles/block-library/playlist/style-rtl.css 1.52 kB
build/styles/block-library/playlist/style-rtl.min.css 1.42 kB
build/styles/block-library/playlist/style.css 1.52 kB
build/styles/block-library/playlist/style.min.css 1.42 kB
build/styles/block-library/post-author-biography/style-rtl.css 96 B
build/styles/block-library/post-author-biography/style-rtl.min.css 86 B
build/styles/block-library/post-author-biography/style.css 96 B
build/styles/block-library/post-author-biography/style.min.css 86 B
build/styles/block-library/post-author-name/style-rtl.css 76 B
build/styles/block-library/post-author-name/style-rtl.min.css 69 B
build/styles/block-library/post-author-name/style.css 76 B
build/styles/block-library/post-author-name/style.min.css 69 B
build/styles/block-library/post-author/editor-rtl.css 490 B
build/styles/block-library/post-author/editor-rtl.min.css 104 B
build/styles/block-library/post-author/editor.css 490 B
build/styles/block-library/post-author/editor.min.css 104 B
build/styles/block-library/post-author/style-rtl.css 213 B
build/styles/block-library/post-author/style-rtl.min.css 188 B
build/styles/block-library/post-author/style.css 214 B
build/styles/block-library/post-author/style.min.css 189 B
build/styles/block-library/post-comments-count/style-rtl.css 79 B
build/styles/block-library/post-comments-count/style-rtl.min.css 72 B
build/styles/block-library/post-comments-count/style.css 79 B
build/styles/block-library/post-comments-count/style.min.css 72 B
build/styles/block-library/post-comments-form/editor-rtl.css 104 B
build/styles/block-library/post-comments-form/editor-rtl.min.css 96 B
build/styles/block-library/post-comments-form/editor.css 104 B
build/styles/block-library/post-comments-form/editor.min.css 96 B
build/styles/block-library/post-comments-form/style-rtl.css 585 B
build/styles/block-library/post-comments-form/style-rtl.min.css 525 B
build/styles/block-library/post-comments-form/style.css 584 B
build/styles/block-library/post-comments-form/style.min.css 525 B
build/styles/block-library/post-comments-link/style-rtl.css 78 B
build/styles/block-library/post-comments-link/style-rtl.min.css 71 B
build/styles/block-library/post-comments-link/style.css 78 B
build/styles/block-library/post-comments-link/style.min.css 71 B
build/styles/block-library/post-content/style-rtl.css 68 B
build/styles/block-library/post-content/style-rtl.min.css 61 B
build/styles/block-library/post-content/style.css 68 B
build/styles/block-library/post-content/style.min.css 61 B
build/styles/block-library/post-date/style-rtl.css 69 B
build/styles/block-library/post-date/style-rtl.min.css 62 B
build/styles/block-library/post-date/style.css 69 B
build/styles/block-library/post-date/style.min.css 62 B
build/styles/block-library/post-excerpt/editor-rtl.css 78 B
build/styles/block-library/post-excerpt/editor-rtl.min.css 71 B
build/styles/block-library/post-excerpt/editor.css 78 B
build/styles/block-library/post-excerpt/editor.min.css 71 B
build/styles/block-library/post-excerpt/style-rtl.css 171 B
build/styles/block-library/post-excerpt/style-rtl.min.css 155 B
build/styles/block-library/post-excerpt/style.css 171 B
build/styles/block-library/post-excerpt/style.min.css 155 B
build/styles/block-library/post-featured-image/editor-rtl.css 1.14 kB
build/styles/block-library/post-featured-image/editor-rtl.min.css 719 B
build/styles/block-library/post-featured-image/editor.css 1.14 kB
build/styles/block-library/post-featured-image/editor.min.css 717 B
build/styles/block-library/post-featured-image/style-rtl.css 392 B
build/styles/block-library/post-featured-image/style-rtl.min.css 347 B
build/styles/block-library/post-featured-image/style.css 392 B
build/styles/block-library/post-featured-image/style.min.css 347 B
build/styles/block-library/post-navigation-link/style-rtl.css 234 B
build/styles/block-library/post-navigation-link/style-rtl.min.css 215 B
build/styles/block-library/post-navigation-link/style.css 245 B
build/styles/block-library/post-navigation-link/style.min.css 214 B
build/styles/block-library/post-template/style-rtl.css 1.27 kB
build/styles/block-library/post-template/style-rtl.min.css 441 B
build/styles/block-library/post-template/style.css 1.27 kB
build/styles/block-library/post-template/style.min.css 441 B
build/styles/block-library/post-terms/style-rtl.css 108 B
build/styles/block-library/post-terms/style-rtl.min.css 96 B
build/styles/block-library/post-terms/style.css 108 B
build/styles/block-library/post-terms/style.min.css 96 B
build/styles/block-library/post-time-to-read/style-rtl.css 77 B
build/styles/block-library/post-time-to-read/style-rtl.min.css 70 B
build/styles/block-library/post-time-to-read/style.css 77 B
build/styles/block-library/post-time-to-read/style.min.css 70 B
build/styles/block-library/post-title/style-rtl.css 175 B
build/styles/block-library/post-title/style-rtl.min.css 162 B
build/styles/block-library/post-title/style.css 175 B
build/styles/block-library/post-title/style.min.css 162 B
build/styles/block-library/preformatted/style-rtl.css 511 B
build/styles/block-library/preformatted/style-rtl.min.css 125 B
build/styles/block-library/preformatted/style.css 511 B
build/styles/block-library/preformatted/style.min.css 125 B
build/styles/block-library/pullquote/editor-rtl.css 146 B
build/styles/block-library/pullquote/editor-rtl.min.css 133 B
build/styles/block-library/pullquote/editor.css 146 B
build/styles/block-library/pullquote/editor.min.css 133 B
build/styles/block-library/pullquote/style-rtl.css 765 B
build/styles/block-library/pullquote/style-rtl.min.css 365 B
build/styles/block-library/pullquote/style.css 764 B
build/styles/block-library/pullquote/style.min.css 365 B
build/styles/block-library/pullquote/theme-rtl.css 195 B
build/styles/block-library/pullquote/theme-rtl.min.css 176 B
build/styles/block-library/pullquote/theme.css 195 B
build/styles/block-library/pullquote/theme.min.css 176 B
build/styles/block-library/query-pagination-numbers/editor-rtl.css 134 B
build/styles/block-library/query-pagination-numbers/editor-rtl.min.css 121 B
build/styles/block-library/query-pagination-numbers/editor.css 144 B
build/styles/block-library/query-pagination-numbers/editor.min.css 118 B
build/styles/block-library/query-pagination/editor-rtl.css 168 B
build/styles/block-library/query-pagination/editor-rtl.min.css 154 B
build/styles/block-library/query-pagination/editor.css 168 B
build/styles/block-library/query-pagination/editor.min.css 154 B
build/styles/block-library/query-pagination/style-rtl.css 254 B
build/styles/block-library/query-pagination/style-rtl.min.css 237 B
build/styles/block-library/query-pagination/style.css 265 B
build/styles/block-library/query-pagination/style.min.css 237 B
build/styles/block-library/query-title/style-rtl.css 71 B
build/styles/block-library/query-title/style-rtl.min.css 64 B
build/styles/block-library/query-title/style.css 71 B
build/styles/block-library/query-title/style.min.css 64 B
build/styles/block-library/query-total/style-rtl.css 71 B
build/styles/block-library/query-total/style-rtl.min.css 64 B
build/styles/block-library/query-total/style.css 71 B
build/styles/block-library/query-total/style.min.css 64 B
build/styles/block-library/query/editor-rtl.css 1.28 kB
build/styles/block-library/query/editor-rtl.min.css 438 B
build/styles/block-library/query/editor.css 1.28 kB
build/styles/block-library/query/editor.min.css 438 B
build/styles/block-library/quote/style-rtl.css 255 B
build/styles/block-library/quote/style-rtl.min.css 238 B
build/styles/block-library/quote/style.css 256 B
build/styles/block-library/quote/style.min.css 238 B
build/styles/block-library/quote/theme-rtl.css 253 B
build/styles/block-library/quote/theme-rtl.min.css 233 B
build/styles/block-library/quote/theme.css 254 B
build/styles/block-library/quote/theme.min.css 236 B
build/styles/block-library/read-more/style-rtl.css 146 B
build/styles/block-library/read-more/style-rtl.min.css 131 B
build/styles/block-library/read-more/style.css 146 B
build/styles/block-library/read-more/style.min.css 131 B
build/styles/block-library/reset-rtl.css 936 B
build/styles/block-library/reset-rtl.min.css 467 B
build/styles/block-library/reset.css 936 B
build/styles/block-library/reset.min.css 467 B
build/styles/block-library/rss/editor-rtl.css 144 B
build/styles/block-library/rss/editor-rtl.min.css 126 B
build/styles/block-library/rss/editor.css 144 B
build/styles/block-library/rss/editor.min.css 126 B
build/styles/block-library/rss/style-rtl.css 1.11 kB
build/styles/block-library/rss/style-rtl.min.css 284 B
build/styles/block-library/rss/style.css 1.12 kB
build/styles/block-library/rss/style.min.css 283 B
build/styles/block-library/search/editor-rtl.css 217 B
build/styles/block-library/search/editor-rtl.min.css 199 B
build/styles/block-library/search/editor.css 217 B
build/styles/block-library/search/editor.min.css 199 B
build/styles/block-library/search/style-rtl.css 1.1 kB
build/styles/block-library/search/style-rtl.min.css 665 B
build/styles/block-library/search/style.css 1.1 kB
build/styles/block-library/search/style.min.css 666 B
build/styles/block-library/search/theme-rtl.css 130 B
build/styles/block-library/search/theme-rtl.min.css 113 B
build/styles/block-library/search/theme.css 130 B
build/styles/block-library/search/theme.min.css 113 B
build/styles/block-library/separator/editor-rtl.css 106 B
build/styles/block-library/separator/editor-rtl.min.css 100 B
build/styles/block-library/separator/editor.css 106 B
build/styles/block-library/separator/editor.min.css 100 B
build/styles/block-library/separator/style-rtl.css 284 B
build/styles/block-library/separator/style-rtl.min.css 248 B
build/styles/block-library/separator/style.css 297 B
build/styles/block-library/separator/style.min.css 248 B
build/styles/block-library/separator/theme-rtl.css 226 B
build/styles/block-library/separator/theme-rtl.min.css 195 B
build/styles/block-library/separator/theme.css 226 B
build/styles/block-library/separator/theme.min.css 195 B
build/styles/block-library/shortcode/editor-rtl.css 1.1 kB
build/styles/block-library/shortcode/editor-rtl.min.css 286 B
build/styles/block-library/shortcode/editor.css 1.1 kB
build/styles/block-library/shortcode/editor.min.css 286 B
build/styles/block-library/site-logo/editor-rtl.css 1.12 kB
build/styles/block-library/site-logo/editor-rtl.min.css 696 B
build/styles/block-library/site-logo/editor.css 1.12 kB
build/styles/block-library/site-logo/editor.min.css 692 B
build/styles/block-library/site-logo/style-rtl.css 239 B
build/styles/block-library/site-logo/style-rtl.min.css 218 B
build/styles/block-library/site-logo/style.css 238 B
build/styles/block-library/site-logo/style.min.css 218 B
build/styles/block-library/site-tagline/editor-rtl.css 94 B
build/styles/block-library/site-tagline/editor-rtl.min.css 87 B
build/styles/block-library/site-tagline/editor.css 94 B
build/styles/block-library/site-tagline/editor.min.css 87 B
build/styles/block-library/site-tagline/style-rtl.css 72 B
build/styles/block-library/site-tagline/style-rtl.min.css 65 B
build/styles/block-library/site-tagline/style.css 72 B
build/styles/block-library/site-tagline/style.min.css 65 B
build/styles/block-library/site-title/editor-rtl.css 93 B
build/styles/block-library/site-title/editor-rtl.min.css 85 B
build/styles/block-library/site-title/editor.css 93 B
build/styles/block-library/site-title/editor.min.css 85 B
build/styles/block-library/site-title/style-rtl.css 153 B
build/styles/block-library/site-title/style-rtl.min.css 143 B
build/styles/block-library/site-title/style.css 153 B
build/styles/block-library/site-title/style.min.css 143 B
build/styles/block-library/social-link/editor-rtl.css 346 B
build/styles/block-library/social-link/editor-rtl.min.css 314 B
build/styles/block-library/social-link/editor.css 348 B
build/styles/block-library/social-link/editor.min.css 314 B
build/styles/block-library/social-links/editor-rtl.css 737 B
build/styles/block-library/social-links/editor-rtl.min.css 339 B
build/styles/block-library/social-links/editor.css 738 B
build/styles/block-library/social-links/editor.min.css 338 B
build/styles/block-library/social-links/style-rtl.css 1.57 kB
build/styles/block-library/social-links/style-rtl.min.css 1.51 kB
build/styles/block-library/social-links/style.css 1.57 kB
build/styles/block-library/social-links/style.min.css 1.51 kB
build/styles/block-library/spacer/editor-rtl.css 774 B
build/styles/block-library/spacer/editor-rtl.min.css 346 B
build/styles/block-library/spacer/editor.css 774 B
build/styles/block-library/spacer/editor.min.css 346 B
build/styles/block-library/spacer/style-rtl.css 55 B
build/styles/block-library/spacer/style-rtl.min.css 48 B
build/styles/block-library/spacer/style.css 55 B
build/styles/block-library/spacer/style.min.css 48 B
build/styles/block-library/style-rtl.css 21.5 kB
build/styles/block-library/style-rtl.min.css 18 kB
build/styles/block-library/style.css 21.6 kB
build/styles/block-library/style.min.css 18 kB
build/styles/block-library/tab-list/editor-rtl.css 107 B
build/styles/block-library/tab-list/editor-rtl.min.css 97 B
build/styles/block-library/tab-list/editor.css 107 B
build/styles/block-library/tab-list/editor.min.css 97 B
build/styles/block-library/tab-panel/style-rtl.css 238 B
build/styles/block-library/tab-panel/style-rtl.min.css 215 B
build/styles/block-library/tab-panel/style.css 238 B
build/styles/block-library/tab-panel/style.min.css 215 B
build/styles/block-library/tab-panels/style-rtl.css 76 B
build/styles/block-library/tab-panels/style-rtl.min.css 65 B
build/styles/block-library/tab-panels/style.css 76 B
build/styles/block-library/tab-panels/style.min.css 65 B
build/styles/block-library/tab/editor-rtl.css 160 B
build/styles/block-library/tab/editor-rtl.min.css 148 B
build/styles/block-library/tab/editor.css 160 B
build/styles/block-library/tab/editor.min.css 148 B
build/styles/block-library/tab/style-rtl.css 397 B
build/styles/block-library/tab/style-rtl.min.css 352 B
build/styles/block-library/tab/style.css 398 B
build/styles/block-library/tab/style.min.css 356 B
build/styles/block-library/table-of-contents/style-rtl.css 89 B
build/styles/block-library/table-of-contents/style-rtl.min.css 83 B
build/styles/block-library/table-of-contents/style.css 89 B
build/styles/block-library/table-of-contents/style.min.css 83 B
build/styles/block-library/table/editor-rtl.css 1.25 kB
build/styles/block-library/table/editor-rtl.min.css 394 B
build/styles/block-library/table/editor.css 1.25 kB
build/styles/block-library/table/editor.min.css 394 B
build/styles/block-library/table/style-rtl.css 1.06 kB
build/styles/block-library/table/style-rtl.min.css 641 B
build/styles/block-library/table/style.css 1.06 kB
build/styles/block-library/table/style.min.css 640 B
build/styles/block-library/table/theme-rtl.css 985 B
build/styles/block-library/table/theme-rtl.min.css 152 B
build/styles/block-library/table/theme.css 985 B
build/styles/block-library/table/theme.min.css 152 B
build/styles/block-library/tabs/style-rtl.css 64 B
build/styles/block-library/tabs/style-rtl.min.css 57 B
build/styles/block-library/tabs/style.css 64 B
build/styles/block-library/tabs/style.min.css 57 B
build/styles/block-library/tag-cloud/style-rtl.css 283 B
build/styles/block-library/tag-cloud/style-rtl.min.css 248 B
build/styles/block-library/tag-cloud/style.css 283 B
build/styles/block-library/tag-cloud/style.min.css 248 B
build/styles/block-library/template-part/editor-rtl.css 1.2 kB
build/styles/block-library/template-part/editor-rtl.min.css 368 B
build/styles/block-library/template-part/editor.css 1.2 kB
build/styles/block-library/template-part/editor.min.css 368 B
build/styles/block-library/template-part/theme-rtl.css 492 B
build/styles/block-library/template-part/theme-rtl.min.css 113 B
build/styles/block-library/template-part/theme.css 492 B
build/styles/block-library/template-part/theme.min.css 113 B
build/styles/block-library/term-count/style-rtl.css 70 B
build/styles/block-library/term-count/style-rtl.min.css 63 B
build/styles/block-library/term-count/style.css 70 B
build/styles/block-library/term-count/style.min.css 63 B
build/styles/block-library/term-description/style-rtl.css 138 B
build/styles/block-library/term-description/style-rtl.min.css 126 B
build/styles/block-library/term-description/style.css 138 B
build/styles/block-library/term-description/style.min.css 126 B
build/styles/block-library/term-name/style-rtl.css 69 B
build/styles/block-library/term-name/style-rtl.min.css 62 B
build/styles/block-library/term-name/style.css 69 B
build/styles/block-library/term-name/style.min.css 62 B
build/styles/block-library/term-template/editor-rtl.css 267 B
build/styles/block-library/term-template/editor-rtl.min.css 225 B
build/styles/block-library/term-template/editor.css 267 B
build/styles/block-library/term-template/editor.min.css 225 B
build/styles/block-library/term-template/style-rtl.css 124 B
build/styles/block-library/term-template/style-rtl.min.css 114 B
build/styles/block-library/term-template/style.css 124 B
build/styles/block-library/term-template/style.min.css 114 B
build/styles/block-library/text-columns/editor-rtl.css 481 B
build/styles/block-library/text-columns/editor-rtl.min.css 95 B
build/styles/block-library/text-columns/editor.css 481 B
build/styles/block-library/text-columns/editor.min.css 95 B
build/styles/block-library/text-columns/style-rtl.css 177 B
build/styles/block-library/text-columns/style-rtl.min.css 165 B
build/styles/block-library/text-columns/style.css 177 B
build/styles/block-library/text-columns/style.min.css 165 B
build/styles/block-library/theme-rtl.css 1.59 kB
build/styles/block-library/theme-rtl.min.css 715 B
build/styles/block-library/theme.css 1.6 kB
build/styles/block-library/theme.min.css 719 B
build/styles/block-library/verse/style-rtl.css 155 B
build/styles/block-library/verse/style-rtl.min.css 137 B
build/styles/block-library/verse/style.css 155 B
build/styles/block-library/verse/style.min.css 137 B
build/styles/block-library/video/editor-rtl.css 839 B
build/styles/block-library/video/editor-rtl.min.css 428 B
build/styles/block-library/video/editor.css 840 B
build/styles/block-library/video/editor.min.css 428 B
build/styles/block-library/video/style-rtl.css 1.02 kB
build/styles/block-library/video/style-rtl.min.css 202 B
build/styles/block-library/video/style.css 1.02 kB
build/styles/block-library/video/style.min.css 202 B
build/styles/block-library/video/theme-rtl.css 967 B
build/styles/block-library/video/theme-rtl.min.css 134 B
build/styles/block-library/video/theme.css 967 B
build/styles/block-library/video/theme.min.css 134 B
build/styles/commands/style-rtl.css 2.07 kB
build/styles/commands/style-rtl.min.css 1.17 kB
build/styles/commands/style.css 2.06 kB
build/styles/commands/style.min.css 1.17 kB
build/styles/components/style-rtl.css 17.5 kB
build/styles/components/style-rtl.min.css 14.3 kB
build/styles/components/style.css 17.6 kB
build/styles/components/style.min.css 14.3 kB
build/styles/customize-widgets/style-rtl.css 2.35 kB
build/styles/customize-widgets/style-rtl.min.css 1.44 kB
build/styles/customize-widgets/style.css 2.35 kB
build/styles/customize-widgets/style.min.css 1.44 kB
build/styles/edit-post/classic-rtl.css 1.29 kB
build/styles/edit-post/classic-rtl.min.css 425 B
build/styles/edit-post/classic.css 1.31 kB
build/styles/edit-post/classic.min.css 428 B
build/styles/edit-post/style-rtl.css 3.51 kB
build/styles/edit-post/style-rtl.min.css 2.21 kB
build/styles/edit-post/style.css 3.52 kB
build/styles/edit-post/style.min.css 2.21 kB
build/styles/edit-site/style-rtl.css 21.1 kB
build/styles/edit-site/style-rtl.min.css 17.2 kB
build/styles/edit-site/style.css 21.1 kB
build/styles/edit-site/style.min.css 17.2 kB
build/styles/edit-widgets/style-rtl.css 4.85 kB
build/styles/edit-widgets/style-rtl.min.css 3.52 kB
build/styles/edit-widgets/style.css 4.85 kB
build/styles/edit-widgets/style.min.css 3.52 kB
build/styles/editor/style-rtl.css 29.4 kB
build/styles/editor/style-rtl.min.css 24.8 kB
build/styles/editor/style.css 29.4 kB
build/styles/editor/style.min.css 24.8 kB
build/styles/format-library/style-rtl.css 735 B
build/styles/format-library/style-rtl.min.css 326 B
build/styles/format-library/style.css 746 B
build/styles/format-library/style.min.css 326 B
build/styles/list-reusable-blocks/style-rtl.css 1.07 kB
build/styles/list-reusable-blocks/style-rtl.min.css 250 B
build/styles/list-reusable-blocks/style.css 1.07 kB
build/styles/list-reusable-blocks/style.min.css 249 B
build/styles/media-utils/style-rtl.css 2.08 kB
build/styles/media-utils/style-rtl.min.css 1.17 kB
build/styles/media-utils/style.css 2.08 kB
build/styles/media-utils/style.min.css 1.17 kB
build/styles/nux/style-rtl.css 1.48 kB
build/styles/nux/style-rtl.min.css 622 B
build/styles/nux/style.css 1.5 kB
build/styles/nux/style.min.css 618 B
build/styles/patterns/style-rtl.css 1.46 kB
build/styles/patterns/style-rtl.min.css 611 B
build/styles/patterns/style.css 1.46 kB
build/styles/patterns/style.min.css 611 B
build/styles/preferences/style-rtl.css 1.26 kB
build/styles/preferences/style-rtl.min.css 415 B
build/styles/preferences/style.css 1.26 kB
build/styles/preferences/style.min.css 415 B
build/styles/reusable-blocks/style-rtl.css 1.11 kB
build/styles/reusable-blocks/style-rtl.min.css 275 B
build/styles/reusable-blocks/style.css 1.11 kB
build/styles/reusable-blocks/style.min.css 275 B
build/styles/widgets/style-rtl.css 2.05 kB
build/styles/widgets/style-rtl.min.css 1.16 kB
build/styles/widgets/style.css 2.06 kB
build/styles/widgets/style.min.css 1.16 kB

compressed-size-action

@github-actions

github-actions Bot commented May 11, 2026

Copy link
Copy Markdown

Flaky tests detected in d851ecb.
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/25924368281
📝 Reported issues:

@mirka mirka 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.

Works as expected 👍

Comment thread packages/design-system-mcp/CHANGELOG.md Outdated
Comment on lines +12 to +21
function fakeDetail( name: string ): ComponentDetail {
return {
name,
description: `${ name } description.`,
packageName: '@wordpress/ui',
importStatement: `import { ${ name } } from '@wordpress/ui';`,
props: [],
stories: [],
};
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is there a chance that, since we're mocking this data, any real API response breakage won't be flagged by tests?

Maybe we could generate mock data by running a real API call?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Is there a chance that, since we're mocking this data, any real API response breakage won't be flagged by tests?

Maybe we could generate mock data by running a real API call?

Yeah, I waffled quite a bit on just how much integration testing made sense here to give us confidence. With how this is set up currently, what you're describing probably falls more in the domain of the tests for data.ts, or a separate end-to-end / integration test setup. Personally I'd be concerned about the time cost and chance for flakiness through HTTP availability.

Some other ideas we could consider to improve our confidence around the type of issue you describe:

  • If Storybook published their own TypeScript types for manifest shape, we could have TypeScript-based indicators if the object shape ever changes.
  • Similarly, we could create our own expected schema and validate that the actual manifest output matches our expected shape.
  • We could have a low-fidelity test that runs after npm run storybook:build to make sure that storybook/build/components/manifest.json exists and contains a particular property we're expecting to access.

Since the manifest we're loading is managed in the same project, this isn't really an external change outside our realm of control. The scenario you're describing would be a process failure where someone updates the manifest without updating dependencies in other parts of the same project.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Could we generate the manifest locally and validate its schema?

Alternatively, boosting our confidence via type checks (using Storybook types), that would be a nice improvement.

As a last resort, we could also consider adding some runtime validation — ie, when we receive the data payload, we analyze its shape and throw a warning / error. It won't prevent breakages, but at least it makes them obvious and allows us to fix them quickly. We could even instruct the agent to take that report and open a GH issue directly in the MCP response

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

To address this, I did a bit of both:

  • In 4c026d4, I updated to use Storybook's internal TypeScript types for the manifest object shape. This isn't complete, however, because it doesn't include the react-docgen types. And through some debugging I discovered that our current version of Storybook doesn't properly respect our use of react-docgen-typescript when generating the manifest. So it is very likely that this will in-fact break in future version upgrades (reactDocgen becoming reactDocgenTypeScript).
  • For that reason, I also added an extra check in 8f53c41 to ensure that the actual generated manifest can be parsed by the design-system-mcp package logic. This way, if the manifest shape changes (e.g. in future update) in a way that would prevent the MCP from being able to access component data, the CI build will fail.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks like the manifest validation check is failing in CI, likely because the experimentalComponentsManifest option is only enabled in production envinronment, while the CI check runs in the test environment.

Maybe we can change the check from NODE_ENV === 'production' to NODE_ENV !== 'development' ?

@aduth aduth May 14, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Yeah I think you're right. I was a bit confused because this was working locally for me, which would somehow imply that npm run storybook:build on my computer is NODE_ENV=production. I guess that's expected when the environment variable is not set. And because it's set in CI, we'll need to target both 'production' and 'test'. At that point 'development' is basically just npm run storybook:dev, which is the one place I think it'd be more important to not generate the manifests.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Although I think in newer versions Storybook now defaults componentsManifest: true (no longer experimental, default to true). We could probably remove the option when we upgrade if we're not as concerned about preventing it being generated.

@aduth aduth requested a review from desrosj as a code owner May 14, 2026 14:19
@aduth aduth marked this pull request as draft May 14, 2026 14:47
@aduth aduth force-pushed the update/design-system-mcp-multiple-names branch from fbb9953 to ac99e4b Compare May 14, 2026 14:50
@aduth aduth marked this pull request as ready for review May 14, 2026 14:54
@aduth aduth requested a review from ciampo May 14, 2026 14:54
const missing: string[] = [];

for ( const componentName of names ) {
const detail = await getComponentDetail( componentName );

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Small nit (feel free to ignore):

the await in this for loop is effectively async only for the first iteration, since from the second iteration onwards the content is cached (in the getComponentDetail implementation).

Conceptually, it could make sense to rewrite using Promise.all/map for added robustness if caching ever changes?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think I see what you're saying, that this is fine, but only because we're piercing an abstraction to know how getComponentDetail would cache, but in a closed-box situation we would want to parallelize this.

I think it makes sense to change, but after starting to dig into it, it reveals a separate problem knock-on requirement to fetchComponents and getDesignTokens: Because we only cache the value once we finish fetching it, parallelized calls could trigger multiple simultaneous fetches. We can clean this up by caching the promise and not the value, but that's a bit of a bigger refactor that might be worth doing separate from this pull request as a quick follow-on. Especially since this should work well enough as-is.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

We can clean this up by caching the promise and not the value, but that's a bit of a bigger refactor that might be worth doing separate from this pull request as a quick follow-on. Especially since this should work well enough as-is.

I created a separate pull request at #78311 with this refactor. We could either merge it into this branch or separately after this one lands.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Definitely good as a follow-up after this PR gets merged, IMO

name: z
.union( [
z.string().min( 1 ),
z.array( z.string().min( 1 ) ).min( 1 ),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should also set a max limit to protect against huge reponses?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Should also set a max limit to protect against huge reponses?

It might be a good idea. It doesn't seem like the MCP spec itself sets any constraints on maximum tool response sizes, but I feel like I've seen agents reject especially large responses. I'm not sure what a reasonable maximum would be. Maybe 10 as an arbitrary number that should be safely compact enough and sufficient to fulfill most requests?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Updated to set max of 10 component names in 7586be4.

Comment thread packages/design-system-mcp/scripts/validate-manifest.mjs Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This file is currently published in the npm release. We could move it to scripts/ or change the files glob to exclude it?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This file is currently published in the npm release. We could move it to scripts/ or change the files glob to exclude it?

Moved to scripts/ in c2ff825.

Separately, I noticed that we don't have any type-checking on these files, both bin/ and now scripts/. We'll probably want a separate config similar to what we do for the theme package, because just adding it to include causes it to produce compiled files in that folder.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Yeah agreed

Comment thread .github/workflows/storybook-check.yml
@aduth aduth marked this pull request as draft May 14, 2026 18:32
@aduth aduth marked this pull request as ready for review May 14, 2026 18:37
@aduth aduth requested a review from ciampo May 14, 2026 18:40

@ciampo ciampo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM 🚀 Feels like the PR is in a good state to merge and iterate as needed in follow-ups


export async function handler( { name }: z.infer< typeof inputSchema > ) {
const names = Array.isArray( name ) ? name : [ name ];
const sections: string[] = [];

@ciampo ciampo May 15, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Apologies in case this comment doesn't make much sense, but — seeing that sections is an array, could it ever include duplicate entries (eg [ 'Button;, 'Button' ]) ? Would it make sense to make it a Set instead?

Also, separately — how do we differentiate between components with the same name from different packages? Button, for example, exists in @wordpress/ui and @wordpress/components. Is parseComponentDetail sylently dropping cross-package duplicates?

@ciampo ciampo May 15, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

In other words, what I believe may be happening as of now:

  • calling get_component_details("Button") returns only one package's Button (the other Button is lost)
  • calling get_component_details(["Button", "Button"]) returns the same package's Button twice

Am I understanding correctly?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I had designed it as an intentional constraint that there's at most one component of any given name in the design system (i.e. one "Button"), forcing us to choose between @wordpress/components and @wordpress/ui as the one that should be used today. In other words, it's an explicit goal of the MCP to provide clear guidance. That "choosing" happens manually ahead-of-time by us applying tags: ['manifest'] to the Storybook story, and rigor to make sure that we don't apply it to more than one component of the same name. In the future hopefully we can drop this manual tagging in favor of just deferring to whatever's in the canonical set of design system packages (@wordpress/ui, excluding @wordpress/components altogether).

That being said, I've had it in my mind that the MCP could be more context-aware in ways that would reveal this kind of duplication:

  • Since many components are blocked by styling incompatibilities when used alongside @wordpress/components, it would be nice if the client could be aware and express when knowing that that constraint doesn't apply (e.g. a greenfield project or self-contained screen, like the AI experiment and Connectors screen are already doing).
  • I think it could be good to provide some context to the agent about which components are "coming soon" or explicitly deprecated, so that it can weigh that information and relay to the user accordingly (e.g. "here's what to use today, but heads-up about XYZ coming in the future"). I might imagine this would end up being surfaced as a separate section(s) of components in the listing, and then maybe combined with additional parameters on the tool, or entirely separate tools for getting the detail.

As far as duplication, I think it's technically possible, but seems both unlikely and unproblematic to preemptively address. If we start seeing agents issuing tool calls with duplicate names, I feel like that suggests a bigger problem for why it chose to do that that should be addressed at the source rather than deduplicating the responses.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thank you for the extended context 👌 I agree with everything you said.

Also, none of the above should be a blocker for this PR, anyway.

aduth added 5 commits May 15, 2026 10:47
Because we're now testing the generated manifest
Avoid running into issues where agent clients won't process large tool responses. 10 components should be sufficient for most usage and fall within most client limitations.
Avoid hard-coding specific component name. We're primarily interested that we didn't lose the ability to parse props across components.
@aduth aduth force-pushed the update/design-system-mcp-multiple-names branch from 5207ab9 to d851ecb Compare May 15, 2026 14:48
@aduth aduth merged commit 18e5ff7 into trunk May 15, 2026
41 checks passed
@aduth aduth deleted the update/design-system-mcp-multiple-names branch May 15, 2026 15:38
@github-actions github-actions Bot added this to the Gutenberg 23.3 milestone May 15, 2026
@arthur791004 arthur791004 added the [Package] Components /packages/components label May 25, 2026
pento pushed a commit to WordPress/wordpress-develop that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

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

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- 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)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

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

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 602fd350-edb4-49c9-b593-d223f7449a82
markjaquith pushed a commit to markjaquith/WordPress that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

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

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- 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)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

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


git-svn-id: http://core.svn.wordpress.org/trunk@61863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
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 `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

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

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- 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)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

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

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 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 `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

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

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- 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)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

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

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 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] Components /packages/components [Package] Design System MCP /packages/design-system-mcp [Type] Enhancement A suggestion for improvement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants