Site Editor > Templates: move config to the server#76622
Conversation
|
Size Change: +90 B (0%) Total Size: 7.66 MB
ℹ️ View Unchanged
|
|
Flaky tests detected in 015e3dd. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/23534338310
|
d8724eb to
05d6187
Compare
da48b75 to
9cd9fa5
Compare
|
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 If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
|
There are 4 template screens and 3 sidebars for templates — accounting for the "site editor extensibility" and "template activation" experiments. This PR only migrates the main screen. Additionally, the main screen (no experiments enabled) contents for sidebar and stage are called "legacy", so it's all a bit disorientating. Noted the other ones as follow-ups at #76544 |
| const authorSourceMap = useSelect( ( select ) => { | ||
| const templates = select( coreStore ).getEntityRecords( | ||
| 'postType', | ||
| TEMPLATE_POST_TYPE, | ||
| { per_page: -1 } | ||
| ); | ||
| }, [ records ] ); | ||
| if ( ! templates ) { | ||
| return {}; | ||
| } | ||
| const map = {}; | ||
| for ( const template of templates ) { | ||
| if ( | ||
| template.author_text && | ||
| template.original_source && | ||
| ! map[ template.author_text ] | ||
| ) { | ||
| map[ template.author_text ] = template.original_source; | ||
| } | ||
| } | ||
| return map; | ||
| }, [] ); |
There was a problem hiding this comment.
Like the pages PR, this PR adds the icons client-side. The situation here is different, in that the icon is derived from the source of the view (is the template from an user? from a theme? from a plugin?).
| user: commentAuthorAvatar, | ||
| theme: layout, | ||
| plugin: pluginIcon, | ||
| site: globe, |
There was a problem hiding this comment.
This is using the same icons as useAddedBy hook.
| /** | ||
| * Returns the original source of a template. | ||
| * | ||
| * @param WP_Block_Template $template_object Template instance. | ||
| * @return string The original source ('theme', 'plugin', 'site', or 'user'). | ||
| */ | ||
| private static function get_template_original_source( $template_object ) { | ||
| if ( 'wp_template' === $template_object->type || 'wp_template_part' === $template_object->type ) { | ||
| if ( $template_object->has_theme_file && | ||
| ( 'theme' === $template_object->origin || ( | ||
| empty( $template_object->origin ) && in_array( | ||
| $template_object->source, | ||
| array( | ||
| 'theme', | ||
| 'custom', | ||
| ), | ||
| true | ||
| ) ) | ||
| ) | ||
| ) { | ||
| return 'theme'; | ||
| } | ||
|
|
||
| if ( 'plugin' === $template_object->origin ) { | ||
| return 'plugin'; | ||
| } | ||
|
|
||
| if ( empty( $template_object->has_theme_file ) && 'custom' === $template_object->source && empty( $template_object->author ) ) { | ||
| return 'site'; | ||
| } | ||
| } | ||
|
|
||
| return 'user'; | ||
| } | ||
|
|
||
| /** | ||
| * Returns a human readable text for the author of a template. | ||
| * | ||
| * @param WP_Block_Template $template_object Template instance. | ||
| * @param string $original_source The original source of the template. | ||
| * @return string Human readable text for the author. | ||
| */ | ||
| private static function get_template_author_text( $template_object, $original_source ) { | ||
| switch ( $original_source ) { | ||
| case 'theme': | ||
| $theme_name = wp_get_theme( $template_object->theme )->get( 'Name' ); | ||
| return empty( $theme_name ) ? $template_object->theme : $theme_name; | ||
| case 'plugin': | ||
| if ( ! function_exists( 'get_plugins' ) ) { | ||
| require_once ABSPATH . 'wp-admin/includes/plugin.php'; | ||
| } | ||
| if ( isset( $template_object->plugin ) ) { | ||
| $plugins = wp_get_active_and_valid_plugins(); | ||
|
|
||
| foreach ( $plugins as $plugin_file ) { | ||
| $plugin_basename = plugin_basename( $plugin_file ); | ||
| list( $plugin_slug, ) = explode( '/', $plugin_basename ); | ||
|
|
||
| if ( $plugin_slug === $template_object->plugin ) { | ||
| $plugin_data = get_plugin_data( $plugin_file ); | ||
|
|
||
| if ( ! empty( $plugin_data['Name'] ) ) { | ||
| return $plugin_data['Name']; | ||
| } | ||
|
|
||
| break; | ||
| } | ||
| } | ||
| } | ||
|
|
||
| $plugins = get_plugins(); | ||
| $plugin_basename = plugin_basename( sanitize_text_field( $template_object->theme . '.php' ) ); | ||
| if ( isset( $plugins[ $plugin_basename ] ) && isset( $plugins[ $plugin_basename ]['Name'] ) ) { | ||
| return $plugins[ $plugin_basename ]['Name']; | ||
| } | ||
| return $template_object->plugin ?? $template_object->theme; | ||
| case 'site': | ||
| return get_bloginfo( 'name' ); | ||
| case 'user': | ||
| $author = get_user_by( 'id', $template_object->author ); | ||
| if ( ! $author ) { | ||
| return __( 'Unknown author', 'gutenberg' ); | ||
| } | ||
| return $author->get( 'display_name' ); | ||
| } | ||
|
|
||
| return ''; | ||
| } |
There was a problem hiding this comment.
These utilities have been copied from the existing templates REST endpoint. It seems this info may need a better way to be encapsulated.
There was a problem hiding this comment.
I believe it would be fine to make get_wp_templates_author_text_field function private and since it's static, call it to get the value without duplicating anything.
There was a problem hiding this comment.
I'm not comfortable making them public since I'm not sure this is the best API.
9ca365a to
d4cf7db
Compare
Co-authored-by: oandregal <[email protected]> Co-authored-by: ntsekouras <[email protected]>
Co-authored-by: oandregal <[email protected]> Co-authored-by: ntsekouras <[email protected]>
Co-authored-by: oandregal <[email protected]> Co-authored-by: ntsekouras <[email protected]>
Introduces a server-side, filterable API for the default DataViews view
configuration of an entity, plus a REST endpoint that exposes it.
- `wp_get_entity_view_config( $kind, $name )` (new src/wp-includes/view-config.php)
builds the shared defaults (default view, layouts, view list, form) and
runs them through a dynamic `get_entity_view_config_{$kind}_{$name}` filter
so core and plugins can provide per-entity configuration.
- Core registers default providers for the `page`, `post`, `wp_block`,
`wp_template_part`, and `wp_template` post types as filter callbacks on
`init` (`_wp_get_entity_view_config_post_type_*`).
- `WP_REST_View_Config_Controller` exposes the config at
`GET /wp/v2/view-config?kind=…&name=…`, delegating to the API and handling
REST concerns (schema, `edit_posts` permission, empty-object serialization).
- Adds PHPUnit coverage for both the API and the controller.
Backports the following Gutenberg pull requests:
* WordPress/gutenberg#76573
* WordPress/gutenberg#76734
* WordPress/gutenberg#76622
* WordPress/gutenberg#76823
* WordPress/gutenberg#76953
* WordPress/gutenberg#76903
* WordPress/gutenberg#77290
* WordPress/gutenberg#78977
* WordPress/gutenberg#79195
* WordPress/gutenberg#76934
* WordPress/gutenberg#79347
AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 4.8
Used for: Porting the code and tests from Gutenberg and adapting them to
core conventions; all changes reviewed and tested by me.
Introduces a server-side, filterable API for the default DataViews view
configuration of an entity, plus a REST endpoint that exposes it.
- `wp_get_entity_view_config( $kind, $name )` (new src/wp-includes/view-config.php)
builds the shared defaults (default view, layouts, view list, form) and
runs them through a dynamic `get_entity_view_config_{$kind}_{$name}` filter
so core and plugins can provide per-entity configuration.
- Core registers default providers for the `page`, `post`, `wp_block`,
`wp_template_part`, and `wp_template` post types as filter callbacks on
`init` (`_wp_get_entity_view_config_post_type_*`).
- `WP_REST_View_Config_Controller` exposes the config at
`GET /wp/v2/view-config?kind=…&name=…`, delegating to the API and handling
REST concerns (schema, `edit_posts` permission, empty-object serialization).
- Adds PHPUnit coverage for both the API and the controller.
Backports the following Gutenberg pull requests:
* WordPress/gutenberg#76573
* WordPress/gutenberg#76734
* WordPress/gutenberg#76622
* WordPress/gutenberg#76823
* WordPress/gutenberg#76953
* WordPress/gutenberg#76903
* WordPress/gutenberg#77290
* WordPress/gutenberg#78977
* WordPress/gutenberg#79195
* WordPress/gutenberg#76934
* WordPress/gutenberg#79347
AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 4.8
Used for: Porting the code and tests from Gutenberg and adapting them to
core conventions; all changes reviewed and tested by me.
This updates the pinned commit hash of the Gutenberg repository from `3166ad3c587b4091f77b0e16affeed5762e193f1` (version `22.8.0`) to `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`). A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.8.0..v22.9.0. The following commits are included: - Real Time Collaboration: Introduce filters for the polling intervals. (WordPress/gutenberg#76518) - UI: Update @base-ui/react from 1.2.0 to 1.3.0 (WordPress/gutenberg#76603) - Card: Use Text component for Title typography (WordPress/gutenberg#76642) - Add TypeScript parser tests for shouldSkipReference (WordPress/gutenberg#76611) - Update changelog link for pull request 11276 (WordPress/gutenberg#76638) - ThemeProvider: Add `cursor` prop (WordPress/gutenberg#76410) - RTC: Fix RichTextData deserialization (WordPress/gutenberg#76607) - Cross Origin Isolation: Remove `img` from the list of elements that get mutated (WordPress/gutenberg#76618) - RTC: Scroll to collaborator on click (WordPress/gutenberg#76561) - Fix backport changelog filename (WordPress/gutenberg#76651) - Build: Skip non-minified build for WASM-inlined workers (WordPress/gutenberg#76615) - Improvements to dataviews infinite scroll (WordPress/gutenberg#74378) - Image/Site Logo: hide crop toolbar when editMediaEntity is unavailable (WordPress/gutenberg#76626) - Bump lodash from 4.17.21 to 4.17.23 in /platform-docs (WordPress/gutenberg#74829) - RTC: Change RTC option name (WordPress/gutenberg#76643) - Change from PR WordPress/gutenberg#11276 to WordPress/gutenberg#11234 with with different approach (WordPress/gutenberg#76661) - Build: Fix vips worker 404 when SCRIPT_DEBUG is true (WordPress/gutenberg#76657) - Build: Remove unused JXL WASM module from vips worker (WordPress/gutenberg#76639) - Storybook: disabled autodocs for Icon library (WordPress/gutenberg#76620) - Connectors: fix button size (WordPress/gutenberg#76582) - Revisions: Add Meta fields diff panel to document sidebar (WordPress/gutenberg#76341) - Reduce the added halo for selected block. (WordPress/gutenberg#76619) - Site Editor > Pages: move view config to the server (WordPress/gutenberg#76573) - ui/Tabs: add runtime validation for tab/panel mismatches (WordPress/gutenberg#75170) - Fix Color Picker Angle Reset on Gradient Type Change (WordPress/gutenberg#76595) - ESLint: Add `no-unmerged-classname` rule (WordPress/gutenberg#76458) - RTC: Backport race condition fix (WordPress/gutenberg#76649) - ui/Card: Add overflow: clip to root container (WordPress/gutenberg#76678) - Storybook: Make "introduction" top level (WordPress/gutenberg#76671) - Fix navigation block rendering unit test (WordPress/gutenberg#76685) - Hide Additional CSS controls when block is inside contentOnly editing mode (WordPress/gutenberg#76512) - RTC: Increase polling intervals, increase polling on primary room only (WordPress/gutenberg#76704) - Navigation: Avoid List View changing position when navigation block saves (WordPress/gutenberg#76659) - Fix navigation block unit test and e2e test (WordPress/gutenberg#76692) - Stretchy Text: Fix focus loss (WordPress/gutenberg#75092) - Fix locked content when switching to a different template without exiting 'Edit pattern' (WordPress/gutenberg#76710) - Guidelines: Improvements to the UX (WordPress/gutenberg#76383) - Fix: Create custom template modal content width (WordPress/gutenberg#76713) - Core Data: Optimize getRawEntityRecord selector (WordPress/gutenberg#76632) - Metabox: Fix checkbox style in sidebar (WordPress/gutenberg#76718) - Stop keeping stale controlled blocks after reset (WordPress/gutenberg#76591) - Gate client-side media processing as plugin-only (WordPress/gutenberg#76700) - Storybook: Add redirect for moved introduction page (WordPress/gutenberg#76701) - InputControl: Add to @wordpress/ui (WordPress/gutenberg#76653) - UI Tooltip: Improve documentation to cover intended accessibility practices (WordPress/gutenberg#76705) - Add EmptyState component to @wordpress/ui (WordPress/gutenberg#74719) - RTC: Use activation hook to enable RTC by default (WordPress/gutenberg#76736) - Forms Block: Add hidden input field variation (WordPress/gutenberg#74131) - Guidelines: Refactor components and improve TypeScript typing (WordPress/gutenberg#76394) - Connectors: Align client-side registration API with server-side (WordPress/gutenberg#76737) - Properly resolve `getTemplateId` for hybrid themes (WordPress/gutenberg#76532) - Changelog: Add missing label-to-feature mappings (WordPress/gutenberg#76646) - Connectors: Support non-AI provider types and add JS extensibility e2e test (WordPress/gutenberg#76722) - Experimental: Add `template` panel to include the existing template actions (WordPress/gutenberg#76539) - RadioControl: Add `role="radiogroup"` to fieldset (WordPress/gutenberg#76745) - wp-build: Hash transformed CSS for `data-wp-hash` dedupe key (WordPress/gutenberg#76743) - Button: restore specificity of high-contrast mode focus ring (WordPress/gutenberg#76719) - Updating versions in WordPress ahead of 7.0 (WordPress/gutenberg#76723) - Bump the github-actions group across 2 directories with 1 update (WordPress/gutenberg#76681) - Admin UI: Add CSS files to sideEffects array (WordPress/gutenberg#76609) - RTC: Add E2E "stress test" with complex interactions (WordPress/gutenberg#76055) - Connectors: Improve AI plugin button (WordPress/gutenberg#76759) - Login/out block: Add button block class names to the submit button (WordPress/gutenberg#76746) - Commands: Add sections to command palette and introduce Recently used functionality (WordPress/gutenberg#75691) - RTC: Use prepared queries instead of `*_post_meta` functions (WordPress/gutenberg#76779) - Core Abilities: fix sideEffects flag (WordPress/gutenberg#76763) - Site Editor > Patterns: move config to the server (WordPress/gutenberg#76734) - Docs: Remove Puppeteer references and update to Playwright (WordPress/gutenberg#76766) - Site Editor > Templates: move config to the server (WordPress/gutenberg#76622) - Core Data: Remove 'isRawAttribute' internal util (WordPress/gutenberg#76806) - Reset blockEditingModes on RESET_BLOCKS (WordPress/gutenberg#76529) - Refactor: Use null coalescing operator for improved readability (WordPress/gutenberg#76777) - ui/CollapsibleCard: do not animate focus ring (WordPress/gutenberg#76682) - admin-ui / Breadcrumbs: stricter `items[].to` prop types (WordPress/gutenberg#76493) - RTC: Remove stale wp_enable_real_time_collaboration option check (WordPress/gutenberg#76810) - Storybook: Try changing to collapsed folders (WordPress/gutenberg#76361) - @wordpress/dataviews: migrate card layout to @wordpress/ui (WordPress/gutenberg#76282) - RTC: Fix editor freeze when replacing code editor content (WordPress/gutenberg#76815) - Preferences: Hide collaboration options when RTC is not enabled (WordPress/gutenberg#76819) - Cherry-pick: Set milestone on PRs after cherry-picking to release branch (WordPress/gutenberg#76652) - Site Tagline: Fix block error when migrating deprecated textAlign attribute (WordPress/gutenberg#76821) - Commands: Fix unstable `useSelect` return value for `recentlyUsedNames` (WordPress/gutenberg#76822) - `ControlWithError`: Connect validation messages to controls via `aria-describedby` (WordPress/gutenberg#76742) - Block Editor: Deprecate '__unstableSaveReusableBlock' action (WordPress/gutenberg#76807) - Editor: Fix template revisions using 'modified' date field instead of 'date' (WordPress/gutenberg#76760) - UI: Clarify public APIs and component naming, remove NoticeIntent typings (WordPress/gutenberg#76791) - fix(date): Recover WP timezone after third-party moment-timezone reload (WordPress/gutenberg#75831) - Admin UI: Update Page background color (WordPress/gutenberg#76548) - Snackbar: Use surface-width design token for max-width (WordPress/gutenberg#76592) - iAPI Docs: Add client-side navigation compatibility guide (WordPress/gutenberg#76242) - Enhance block registration by using blocks-manifest for improved performance (WordPress/gutenberg#76317) - docs(create-block-interactive-template): document available variants in README (WordPress/gutenberg#76831) - Build: detect version and generate asset.php for vendor scripts (WordPress/gutenberg#76811) - Site Editor > Patterns & Parts: generate sidebar from view config (WordPress/gutenberg#76823) - Interactivity API: mention `client-side-navigation` scaffold variant in getting-started guide (WordPress/gutenberg#76543) - Fields: Add `excerpt` field (WordPress/gutenberg#76829) - Update PHP_CodeSniffer repository link and schema URL (WordPress/gutenberg#76816) - docs: Fix markdown links and PHP code block in client-side navigation compatibility guide (WordPress/gutenberg#76856) - Experimental: Add `revisions` panel (WordPress/gutenberg#76735) - WordPress/gutenberg#76478 Boot: Fix black area below content when sidebar is taller than page c… (WordPress/gutenberg#76764) - Style Book: Fix missing styles for classic themes in stylebook route (WordPress/gutenberg#76843) - UI/Dialog: Expose initialFocus and finalFocus on Dialog.Popup (WordPress/gutenberg#76860) - compose/useDialog: add `stopPropagation()` to Escape handler (WordPress/gutenberg#76861) - RTC: Add e2e block gauntlet (WordPress/gutenberg#76849) - UI: Add AlertDialog primitive (WordPress/gutenberg#76847) - RTC: Fix stuck "Join" link in post list when lock expires (WordPress/gutenberg#76795) - Site Editor: simplify sidebar for Pages & Templates (WordPress/gutenberg#76868) - Site Editor v2: Add missing menu items to navigation leaf more menu (WordPress/gutenberg#76804) - Navigation: Add a shared helper for font sizes in Navigation Link and Navigation Submenu blocks (WordPress/gutenberg#74855) - Reduce specificity of nav link default padding so global styles are applied (WordPress/gutenberg#76876) - Icon: Fix center alignment in the editor for classic themes (WordPress/gutenberg#76878) - RTC: Fix notes not syncing between collaborative editors (WordPress/gutenberg#76873) - List Item: Disable edit as HTML support (WordPress/gutenberg#76897) - Block Library: Show fallback label in MediaControl when filename is empty (WordPress/gutenberg#76888) - Image block media placeholder: remove duotone (WordPress/gutenberg#76721) - Latest Comments: Fix v1 deprecated block missing supports (WordPress/gutenberg#76877) - VIPS: ensure single instance (WordPress/gutenberg#76780) - React vendor script: avoid warning on createRoot (WordPress/gutenberg#76825) - Connectors: Add Akismet as a default connector (WordPress/gutenberg#76828) - Core Data: remove offset param from stableKey, use pagination logic (WordPress/gutenberg#76808) - Button: hide focus outline on :active for click feedback in forced-colors mode (WordPress/gutenberg#76833) - Restore with compaction update (WordPress/gutenberg#76872) - Theme: Change default control cursor to `pointer` (WordPress/gutenberg#76762) - E2E Tests: Enable client-side media processing for site editor image test (WordPress/gutenberg#76648) - ComboboxControl: Fix accessible association of `help` text (WordPress/gutenberg#76761) - Add backport for WP_ALLOW_COLLABORATION (WordPress/gutenberg#76716) - DataForm: Add `compact` configuration option to the `datetime` control (WordPress/gutenberg#76905) - Admin UI: Fix Page Header not rendering with only actions and add stories (WordPress/gutenberg#76695) - Improve JSDoc for abilities API (WordPress/gutenberg#76824) - DOM: Document class wildcard matcher for 'cleanNodeList' (WordPress/gutenberg#76920) - e2e: Add e2e tests for template and template part revisions (WordPress/gutenberg#76923) - react-dom vendor script: remove __esModule flag (WordPress/gutenberg#76925) - Site Editor: Fix unsupported theme flash on direct URL navigation (WordPress/gutenberg#76465) - Icons: Enforce strict name validation in `register` method (WordPress/gutenberg#76079) - ToggleGroupControl: Fix accessible association of `help` text (WordPress/gutenberg#76740) - Connectors: Replace plugin.slug with plugin.file (WordPress/gutenberg#76909) - UI/Dialog: deprioritize close icon for initial focus (WordPress/gutenberg#76910) - Block visibility badge: use canvas iframe for viewport detection (WordPress/gutenberg#76889) - Fields: Add `sticky` field (WordPress/gutenberg#76922) - DOM: Prefer standard `caretPositionFromPoint` over deprecated `caretRangeFromPoint` (WordPress/gutenberg#76921) - Block Supports: Add background gradient support that can combine with background images (WordPress/gutenberg#75859) - Tab Block: Remove anchor from save function (WordPress/gutenberg#76511) - CollapsibleCard: Add HeaderDescription subcomponent (WordPress/gutenberg#76867) - element: Make createInterpolateElement TS/type smart (WordPress/gutenberg#71513) - admin-ui: Update README to clarify purpose and distinguish from ui package (WordPress/gutenberg#76943) - Site Editor > Quick Edit: add form config to endpoint (WordPress/gutenberg#76953) - Fields: Tweak `excerpt` field (WordPress/gutenberg#76903) - Fix: Flaky RichText format e2e test (WordPress/gutenberg#76958) Props adamsilverstein, jorbin, westonruter, wildworks. Fixes #65556. git-svn-id: https://develop.svn.wordpress.org/trunk@62578 602fd350-edb4-49c9-b593-d223f7449a82
This updates the pinned commit hash of the Gutenberg repository from `3166ad3c587b4091f77b0e16affeed5762e193f1` (version `22.8.0`) to `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`). A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.8.0..v22.9.0. The following commits are included: - Real Time Collaboration: Introduce filters for the polling intervals. (WordPress/gutenberg#76518) - UI: Update @base-ui/react from 1.2.0 to 1.3.0 (WordPress/gutenberg#76603) - Card: Use Text component for Title typography (WordPress/gutenberg#76642) - Add TypeScript parser tests for shouldSkipReference (WordPress/gutenberg#76611) - Update changelog link for pull request 11276 (WordPress/gutenberg#76638) - ThemeProvider: Add `cursor` prop (WordPress/gutenberg#76410) - RTC: Fix RichTextData deserialization (WordPress/gutenberg#76607) - Cross Origin Isolation: Remove `img` from the list of elements that get mutated (WordPress/gutenberg#76618) - RTC: Scroll to collaborator on click (WordPress/gutenberg#76561) - Fix backport changelog filename (WordPress/gutenberg#76651) - Build: Skip non-minified build for WASM-inlined workers (WordPress/gutenberg#76615) - Improvements to dataviews infinite scroll (WordPress/gutenberg#74378) - Image/Site Logo: hide crop toolbar when editMediaEntity is unavailable (WordPress/gutenberg#76626) - Bump lodash from 4.17.21 to 4.17.23 in /platform-docs (WordPress/gutenberg#74829) - RTC: Change RTC option name (WordPress/gutenberg#76643) - Change from PR WordPress/gutenberg#11276 to WordPress/gutenberg#11234 with with different approach (WordPress/gutenberg#76661) - Build: Fix vips worker 404 when SCRIPT_DEBUG is true (WordPress/gutenberg#76657) - Build: Remove unused JXL WASM module from vips worker (WordPress/gutenberg#76639) - Storybook: disabled autodocs for Icon library (WordPress/gutenberg#76620) - Connectors: fix button size (WordPress/gutenberg#76582) - Revisions: Add Meta fields diff panel to document sidebar (WordPress/gutenberg#76341) - Reduce the added halo for selected block. (WordPress/gutenberg#76619) - Site Editor > Pages: move view config to the server (WordPress/gutenberg#76573) - ui/Tabs: add runtime validation for tab/panel mismatches (WordPress/gutenberg#75170) - Fix Color Picker Angle Reset on Gradient Type Change (WordPress/gutenberg#76595) - ESLint: Add `no-unmerged-classname` rule (WordPress/gutenberg#76458) - RTC: Backport race condition fix (WordPress/gutenberg#76649) - ui/Card: Add overflow: clip to root container (WordPress/gutenberg#76678) - Storybook: Make "introduction" top level (WordPress/gutenberg#76671) - Fix navigation block rendering unit test (WordPress/gutenberg#76685) - Hide Additional CSS controls when block is inside contentOnly editing mode (WordPress/gutenberg#76512) - RTC: Increase polling intervals, increase polling on primary room only (WordPress/gutenberg#76704) - Navigation: Avoid List View changing position when navigation block saves (WordPress/gutenberg#76659) - Fix navigation block unit test and e2e test (WordPress/gutenberg#76692) - Stretchy Text: Fix focus loss (WordPress/gutenberg#75092) - Fix locked content when switching to a different template without exiting 'Edit pattern' (WordPress/gutenberg#76710) - Guidelines: Improvements to the UX (WordPress/gutenberg#76383) - Fix: Create custom template modal content width (WordPress/gutenberg#76713) - Core Data: Optimize getRawEntityRecord selector (WordPress/gutenberg#76632) - Metabox: Fix checkbox style in sidebar (WordPress/gutenberg#76718) - Stop keeping stale controlled blocks after reset (WordPress/gutenberg#76591) - Gate client-side media processing as plugin-only (WordPress/gutenberg#76700) - Storybook: Add redirect for moved introduction page (WordPress/gutenberg#76701) - InputControl: Add to @wordpress/ui (WordPress/gutenberg#76653) - UI Tooltip: Improve documentation to cover intended accessibility practices (WordPress/gutenberg#76705) - Add EmptyState component to @wordpress/ui (WordPress/gutenberg#74719) - RTC: Use activation hook to enable RTC by default (WordPress/gutenberg#76736) - Forms Block: Add hidden input field variation (WordPress/gutenberg#74131) - Guidelines: Refactor components and improve TypeScript typing (WordPress/gutenberg#76394) - Connectors: Align client-side registration API with server-side (WordPress/gutenberg#76737) - Properly resolve `getTemplateId` for hybrid themes (WordPress/gutenberg#76532) - Changelog: Add missing label-to-feature mappings (WordPress/gutenberg#76646) - Connectors: Support non-AI provider types and add JS extensibility e2e test (WordPress/gutenberg#76722) - Experimental: Add `template` panel to include the existing template actions (WordPress/gutenberg#76539) - RadioControl: Add `role="radiogroup"` to fieldset (WordPress/gutenberg#76745) - wp-build: Hash transformed CSS for `data-wp-hash` dedupe key (WordPress/gutenberg#76743) - Button: restore specificity of high-contrast mode focus ring (WordPress/gutenberg#76719) - Updating versions in WordPress ahead of 7.0 (WordPress/gutenberg#76723) - Bump the github-actions group across 2 directories with 1 update (WordPress/gutenberg#76681) - Admin UI: Add CSS files to sideEffects array (WordPress/gutenberg#76609) - RTC: Add E2E "stress test" with complex interactions (WordPress/gutenberg#76055) - Connectors: Improve AI plugin button (WordPress/gutenberg#76759) - Login/out block: Add button block class names to the submit button (WordPress/gutenberg#76746) - Commands: Add sections to command palette and introduce Recently used functionality (WordPress/gutenberg#75691) - RTC: Use prepared queries instead of `*_post_meta` functions (WordPress/gutenberg#76779) - Core Abilities: fix sideEffects flag (WordPress/gutenberg#76763) - Site Editor > Patterns: move config to the server (WordPress/gutenberg#76734) - Docs: Remove Puppeteer references and update to Playwright (WordPress/gutenberg#76766) - Site Editor > Templates: move config to the server (WordPress/gutenberg#76622) - Core Data: Remove 'isRawAttribute' internal util (WordPress/gutenberg#76806) - Reset blockEditingModes on RESET_BLOCKS (WordPress/gutenberg#76529) - Refactor: Use null coalescing operator for improved readability (WordPress/gutenberg#76777) - ui/CollapsibleCard: do not animate focus ring (WordPress/gutenberg#76682) - admin-ui / Breadcrumbs: stricter `items[].to` prop types (WordPress/gutenberg#76493) - RTC: Remove stale wp_enable_real_time_collaboration option check (WordPress/gutenberg#76810) - Storybook: Try changing to collapsed folders (WordPress/gutenberg#76361) - @wordpress/dataviews: migrate card layout to @wordpress/ui (WordPress/gutenberg#76282) - RTC: Fix editor freeze when replacing code editor content (WordPress/gutenberg#76815) - Preferences: Hide collaboration options when RTC is not enabled (WordPress/gutenberg#76819) - Cherry-pick: Set milestone on PRs after cherry-picking to release branch (WordPress/gutenberg#76652) - Site Tagline: Fix block error when migrating deprecated textAlign attribute (WordPress/gutenberg#76821) - Commands: Fix unstable `useSelect` return value for `recentlyUsedNames` (WordPress/gutenberg#76822) - `ControlWithError`: Connect validation messages to controls via `aria-describedby` (WordPress/gutenberg#76742) - Block Editor: Deprecate '__unstableSaveReusableBlock' action (WordPress/gutenberg#76807) - Editor: Fix template revisions using 'modified' date field instead of 'date' (WordPress/gutenberg#76760) - UI: Clarify public APIs and component naming, remove NoticeIntent typings (WordPress/gutenberg#76791) - fix(date): Recover WP timezone after third-party moment-timezone reload (WordPress/gutenberg#75831) - Admin UI: Update Page background color (WordPress/gutenberg#76548) - Snackbar: Use surface-width design token for max-width (WordPress/gutenberg#76592) - iAPI Docs: Add client-side navigation compatibility guide (WordPress/gutenberg#76242) - Enhance block registration by using blocks-manifest for improved performance (WordPress/gutenberg#76317) - docs(create-block-interactive-template): document available variants in README (WordPress/gutenberg#76831) - Build: detect version and generate asset.php for vendor scripts (WordPress/gutenberg#76811) - Site Editor > Patterns & Parts: generate sidebar from view config (WordPress/gutenberg#76823) - Interactivity API: mention `client-side-navigation` scaffold variant in getting-started guide (WordPress/gutenberg#76543) - Fields: Add `excerpt` field (WordPress/gutenberg#76829) - Update PHP_CodeSniffer repository link and schema URL (WordPress/gutenberg#76816) - docs: Fix markdown links and PHP code block in client-side navigation compatibility guide (WordPress/gutenberg#76856) - Experimental: Add `revisions` panel (WordPress/gutenberg#76735) - WordPress/gutenberg#76478 Boot: Fix black area below content when sidebar is taller than page c… (WordPress/gutenberg#76764) - Style Book: Fix missing styles for classic themes in stylebook route (WordPress/gutenberg#76843) - UI/Dialog: Expose initialFocus and finalFocus on Dialog.Popup (WordPress/gutenberg#76860) - compose/useDialog: add `stopPropagation()` to Escape handler (WordPress/gutenberg#76861) - RTC: Add e2e block gauntlet (WordPress/gutenberg#76849) - UI: Add AlertDialog primitive (WordPress/gutenberg#76847) - RTC: Fix stuck "Join" link in post list when lock expires (WordPress/gutenberg#76795) - Site Editor: simplify sidebar for Pages & Templates (WordPress/gutenberg#76868) - Site Editor v2: Add missing menu items to navigation leaf more menu (WordPress/gutenberg#76804) - Navigation: Add a shared helper for font sizes in Navigation Link and Navigation Submenu blocks (WordPress/gutenberg#74855) - Reduce specificity of nav link default padding so global styles are applied (WordPress/gutenberg#76876) - Icon: Fix center alignment in the editor for classic themes (WordPress/gutenberg#76878) - RTC: Fix notes not syncing between collaborative editors (WordPress/gutenberg#76873) - List Item: Disable edit as HTML support (WordPress/gutenberg#76897) - Block Library: Show fallback label in MediaControl when filename is empty (WordPress/gutenberg#76888) - Image block media placeholder: remove duotone (WordPress/gutenberg#76721) - Latest Comments: Fix v1 deprecated block missing supports (WordPress/gutenberg#76877) - VIPS: ensure single instance (WordPress/gutenberg#76780) - React vendor script: avoid warning on createRoot (WordPress/gutenberg#76825) - Connectors: Add Akismet as a default connector (WordPress/gutenberg#76828) - Core Data: remove offset param from stableKey, use pagination logic (WordPress/gutenberg#76808) - Button: hide focus outline on :active for click feedback in forced-colors mode (WordPress/gutenberg#76833) - Restore with compaction update (WordPress/gutenberg#76872) - Theme: Change default control cursor to `pointer` (WordPress/gutenberg#76762) - E2E Tests: Enable client-side media processing for site editor image test (WordPress/gutenberg#76648) - ComboboxControl: Fix accessible association of `help` text (WordPress/gutenberg#76761) - Add backport for WP_ALLOW_COLLABORATION (WordPress/gutenberg#76716) - DataForm: Add `compact` configuration option to the `datetime` control (WordPress/gutenberg#76905) - Admin UI: Fix Page Header not rendering with only actions and add stories (WordPress/gutenberg#76695) - Improve JSDoc for abilities API (WordPress/gutenberg#76824) - DOM: Document class wildcard matcher for 'cleanNodeList' (WordPress/gutenberg#76920) - e2e: Add e2e tests for template and template part revisions (WordPress/gutenberg#76923) - react-dom vendor script: remove __esModule flag (WordPress/gutenberg#76925) - Site Editor: Fix unsupported theme flash on direct URL navigation (WordPress/gutenberg#76465) - Icons: Enforce strict name validation in `register` method (WordPress/gutenberg#76079) - ToggleGroupControl: Fix accessible association of `help` text (WordPress/gutenberg#76740) - Connectors: Replace plugin.slug with plugin.file (WordPress/gutenberg#76909) - UI/Dialog: deprioritize close icon for initial focus (WordPress/gutenberg#76910) - Block visibility badge: use canvas iframe for viewport detection (WordPress/gutenberg#76889) - Fields: Add `sticky` field (WordPress/gutenberg#76922) - DOM: Prefer standard `caretPositionFromPoint` over deprecated `caretRangeFromPoint` (WordPress/gutenberg#76921) - Block Supports: Add background gradient support that can combine with background images (WordPress/gutenberg#75859) - Tab Block: Remove anchor from save function (WordPress/gutenberg#76511) - CollapsibleCard: Add HeaderDescription subcomponent (WordPress/gutenberg#76867) - element: Make createInterpolateElement TS/type smart (WordPress/gutenberg#71513) - admin-ui: Update README to clarify purpose and distinguish from ui package (WordPress/gutenberg#76943) - Site Editor > Quick Edit: add form config to endpoint (WordPress/gutenberg#76953) - Fields: Tweak `excerpt` field (WordPress/gutenberg#76903) - Fix: Flaky RichText format e2e test (WordPress/gutenberg#76958) Props adamsilverstein, jorbin, westonruter, wildworks. Fixes #65556. Built from https://develop.svn.wordpress.org/trunk@62578 git-svn-id: http://core.svn.wordpress.org/trunk@61858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This updates the pinned commit hash of the Gutenberg repository from `3166ad3c587b4091f77b0e16affeed5762e193f1` (version `22.8.0`) to `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`). A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.8.0..v22.9.0. The following commits are included: - Real Time Collaboration: Introduce filters for the polling intervals. (WordPress/gutenberg#76518) - UI: Update @base-ui/react from 1.2.0 to 1.3.0 (WordPress/gutenberg#76603) - Card: Use Text component for Title typography (WordPress/gutenberg#76642) - Add TypeScript parser tests for shouldSkipReference (WordPress/gutenberg#76611) - Update changelog link for pull request 11276 (WordPress/gutenberg#76638) - ThemeProvider: Add `cursor` prop (WordPress/gutenberg#76410) - RTC: Fix RichTextData deserialization (WordPress/gutenberg#76607) - Cross Origin Isolation: Remove `img` from the list of elements that get mutated (WordPress/gutenberg#76618) - RTC: Scroll to collaborator on click (WordPress/gutenberg#76561) - Fix backport changelog filename (WordPress/gutenberg#76651) - Build: Skip non-minified build for WASM-inlined workers (WordPress/gutenberg#76615) - Improvements to dataviews infinite scroll (WordPress/gutenberg#74378) - Image/Site Logo: hide crop toolbar when editMediaEntity is unavailable (WordPress/gutenberg#76626) - Bump lodash from 4.17.21 to 4.17.23 in /platform-docs (WordPress/gutenberg#74829) - RTC: Change RTC option name (WordPress/gutenberg#76643) - Change from PR WordPress/gutenberg#11276 to WordPress/gutenberg#11234 with with different approach (WordPress/gutenberg#76661) - Build: Fix vips worker 404 when SCRIPT_DEBUG is true (WordPress/gutenberg#76657) - Build: Remove unused JXL WASM module from vips worker (WordPress/gutenberg#76639) - Storybook: disabled autodocs for Icon library (WordPress/gutenberg#76620) - Connectors: fix button size (WordPress/gutenberg#76582) - Revisions: Add Meta fields diff panel to document sidebar (WordPress/gutenberg#76341) - Reduce the added halo for selected block. (WordPress/gutenberg#76619) - Site Editor > Pages: move view config to the server (WordPress/gutenberg#76573) - ui/Tabs: add runtime validation for tab/panel mismatches (WordPress/gutenberg#75170) - Fix Color Picker Angle Reset on Gradient Type Change (WordPress/gutenberg#76595) - ESLint: Add `no-unmerged-classname` rule (WordPress/gutenberg#76458) - RTC: Backport race condition fix (WordPress/gutenberg#76649) - ui/Card: Add overflow: clip to root container (WordPress/gutenberg#76678) - Storybook: Make "introduction" top level (WordPress/gutenberg#76671) - Fix navigation block rendering unit test (WordPress/gutenberg#76685) - Hide Additional CSS controls when block is inside contentOnly editing mode (WordPress/gutenberg#76512) - RTC: Increase polling intervals, increase polling on primary room only (WordPress/gutenberg#76704) - Navigation: Avoid List View changing position when navigation block saves (WordPress/gutenberg#76659) - Fix navigation block unit test and e2e test (WordPress/gutenberg#76692) - Stretchy Text: Fix focus loss (WordPress/gutenberg#75092) - Fix locked content when switching to a different template without exiting 'Edit pattern' (WordPress/gutenberg#76710) - Guidelines: Improvements to the UX (WordPress/gutenberg#76383) - Fix: Create custom template modal content width (WordPress/gutenberg#76713) - Core Data: Optimize getRawEntityRecord selector (WordPress/gutenberg#76632) - Metabox: Fix checkbox style in sidebar (WordPress/gutenberg#76718) - Stop keeping stale controlled blocks after reset (WordPress/gutenberg#76591) - Gate client-side media processing as plugin-only (WordPress/gutenberg#76700) - Storybook: Add redirect for moved introduction page (WordPress/gutenberg#76701) - InputControl: Add to @wordpress/ui (WordPress/gutenberg#76653) - UI Tooltip: Improve documentation to cover intended accessibility practices (WordPress/gutenberg#76705) - Add EmptyState component to @wordpress/ui (WordPress/gutenberg#74719) - RTC: Use activation hook to enable RTC by default (WordPress/gutenberg#76736) - Forms Block: Add hidden input field variation (WordPress/gutenberg#74131) - Guidelines: Refactor components and improve TypeScript typing (WordPress/gutenberg#76394) - Connectors: Align client-side registration API with server-side (WordPress/gutenberg#76737) - Properly resolve `getTemplateId` for hybrid themes (WordPress/gutenberg#76532) - Changelog: Add missing label-to-feature mappings (WordPress/gutenberg#76646) - Connectors: Support non-AI provider types and add JS extensibility e2e test (WordPress/gutenberg#76722) - Experimental: Add `template` panel to include the existing template actions (WordPress/gutenberg#76539) - RadioControl: Add `role="radiogroup"` to fieldset (WordPress/gutenberg#76745) - wp-build: Hash transformed CSS for `data-wp-hash` dedupe key (WordPress/gutenberg#76743) - Button: restore specificity of high-contrast mode focus ring (WordPress/gutenberg#76719) - Updating versions in WordPress ahead of 7.0 (WordPress/gutenberg#76723) - Bump the github-actions group across 2 directories with 1 update (WordPress/gutenberg#76681) - Admin UI: Add CSS files to sideEffects array (WordPress/gutenberg#76609) - RTC: Add E2E "stress test" with complex interactions (WordPress/gutenberg#76055) - Connectors: Improve AI plugin button (WordPress/gutenberg#76759) - Login/out block: Add button block class names to the submit button (WordPress/gutenberg#76746) - Commands: Add sections to command palette and introduce Recently used functionality (WordPress/gutenberg#75691) - RTC: Use prepared queries instead of `*_post_meta` functions (WordPress/gutenberg#76779) - Core Abilities: fix sideEffects flag (WordPress/gutenberg#76763) - Site Editor > Patterns: move config to the server (WordPress/gutenberg#76734) - Docs: Remove Puppeteer references and update to Playwright (WordPress/gutenberg#76766) - Site Editor > Templates: move config to the server (WordPress/gutenberg#76622) - Core Data: Remove 'isRawAttribute' internal util (WordPress/gutenberg#76806) - Reset blockEditingModes on RESET_BLOCKS (WordPress/gutenberg#76529) - Refactor: Use null coalescing operator for improved readability (WordPress/gutenberg#76777) - ui/CollapsibleCard: do not animate focus ring (WordPress/gutenberg#76682) - admin-ui / Breadcrumbs: stricter `items[].to` prop types (WordPress/gutenberg#76493) - RTC: Remove stale wp_enable_real_time_collaboration option check (WordPress/gutenberg#76810) - Storybook: Try changing to collapsed folders (WordPress/gutenberg#76361) - @wordpress/dataviews: migrate card layout to @wordpress/ui (WordPress/gutenberg#76282) - RTC: Fix editor freeze when replacing code editor content (WordPress/gutenberg#76815) - Preferences: Hide collaboration options when RTC is not enabled (WordPress/gutenberg#76819) - Cherry-pick: Set milestone on PRs after cherry-picking to release branch (WordPress/gutenberg#76652) - Site Tagline: Fix block error when migrating deprecated textAlign attribute (WordPress/gutenberg#76821) - Commands: Fix unstable `useSelect` return value for `recentlyUsedNames` (WordPress/gutenberg#76822) - `ControlWithError`: Connect validation messages to controls via `aria-describedby` (WordPress/gutenberg#76742) - Block Editor: Deprecate '__unstableSaveReusableBlock' action (WordPress/gutenberg#76807) - Editor: Fix template revisions using 'modified' date field instead of 'date' (WordPress/gutenberg#76760) - UI: Clarify public APIs and component naming, remove NoticeIntent typings (WordPress/gutenberg#76791) - fix(date): Recover WP timezone after third-party moment-timezone reload (WordPress/gutenberg#75831) - Admin UI: Update Page background color (WordPress/gutenberg#76548) - Snackbar: Use surface-width design token for max-width (WordPress/gutenberg#76592) - iAPI Docs: Add client-side navigation compatibility guide (WordPress/gutenberg#76242) - Enhance block registration by using blocks-manifest for improved performance (WordPress/gutenberg#76317) - docs(create-block-interactive-template): document available variants in README (WordPress/gutenberg#76831) - Build: detect version and generate asset.php for vendor scripts (WordPress/gutenberg#76811) - Site Editor > Patterns & Parts: generate sidebar from view config (WordPress/gutenberg#76823) - Interactivity API: mention `client-side-navigation` scaffold variant in getting-started guide (WordPress/gutenberg#76543) - Fields: Add `excerpt` field (WordPress/gutenberg#76829) - Update PHP_CodeSniffer repository link and schema URL (WordPress/gutenberg#76816) - docs: Fix markdown links and PHP code block in client-side navigation compatibility guide (WordPress/gutenberg#76856) - Experimental: Add `revisions` panel (WordPress/gutenberg#76735) - WordPress/gutenberg#76478 Boot: Fix black area below content when sidebar is taller than page c… (WordPress/gutenberg#76764) - Style Book: Fix missing styles for classic themes in stylebook route (WordPress/gutenberg#76843) - UI/Dialog: Expose initialFocus and finalFocus on Dialog.Popup (WordPress/gutenberg#76860) - compose/useDialog: add `stopPropagation()` to Escape handler (WordPress/gutenberg#76861) - RTC: Add e2e block gauntlet (WordPress/gutenberg#76849) - UI: Add AlertDialog primitive (WordPress/gutenberg#76847) - RTC: Fix stuck "Join" link in post list when lock expires (WordPress/gutenberg#76795) - Site Editor: simplify sidebar for Pages & Templates (WordPress/gutenberg#76868) - Site Editor v2: Add missing menu items to navigation leaf more menu (WordPress/gutenberg#76804) - Navigation: Add a shared helper for font sizes in Navigation Link and Navigation Submenu blocks (WordPress/gutenberg#74855) - Reduce specificity of nav link default padding so global styles are applied (WordPress/gutenberg#76876) - Icon: Fix center alignment in the editor for classic themes (WordPress/gutenberg#76878) - RTC: Fix notes not syncing between collaborative editors (WordPress/gutenberg#76873) - List Item: Disable edit as HTML support (WordPress/gutenberg#76897) - Block Library: Show fallback label in MediaControl when filename is empty (WordPress/gutenberg#76888) - Image block media placeholder: remove duotone (WordPress/gutenberg#76721) - Latest Comments: Fix v1 deprecated block missing supports (WordPress/gutenberg#76877) - VIPS: ensure single instance (WordPress/gutenberg#76780) - React vendor script: avoid warning on createRoot (WordPress/gutenberg#76825) - Connectors: Add Akismet as a default connector (WordPress/gutenberg#76828) - Core Data: remove offset param from stableKey, use pagination logic (WordPress/gutenberg#76808) - Button: hide focus outline on :active for click feedback in forced-colors mode (WordPress/gutenberg#76833) - Restore with compaction update (WordPress/gutenberg#76872) - Theme: Change default control cursor to `pointer` (WordPress/gutenberg#76762) - E2E Tests: Enable client-side media processing for site editor image test (WordPress/gutenberg#76648) - ComboboxControl: Fix accessible association of `help` text (WordPress/gutenberg#76761) - Add backport for WP_ALLOW_COLLABORATION (WordPress/gutenberg#76716) - DataForm: Add `compact` configuration option to the `datetime` control (WordPress/gutenberg#76905) - Admin UI: Fix Page Header not rendering with only actions and add stories (WordPress/gutenberg#76695) - Improve JSDoc for abilities API (WordPress/gutenberg#76824) - DOM: Document class wildcard matcher for 'cleanNodeList' (WordPress/gutenberg#76920) - e2e: Add e2e tests for template and template part revisions (WordPress/gutenberg#76923) - react-dom vendor script: remove __esModule flag (WordPress/gutenberg#76925) - Site Editor: Fix unsupported theme flash on direct URL navigation (WordPress/gutenberg#76465) - Icons: Enforce strict name validation in `register` method (WordPress/gutenberg#76079) - ToggleGroupControl: Fix accessible association of `help` text (WordPress/gutenberg#76740) - Connectors: Replace plugin.slug with plugin.file (WordPress/gutenberg#76909) - UI/Dialog: deprioritize close icon for initial focus (WordPress/gutenberg#76910) - Block visibility badge: use canvas iframe for viewport detection (WordPress/gutenberg#76889) - Fields: Add `sticky` field (WordPress/gutenberg#76922) - DOM: Prefer standard `caretPositionFromPoint` over deprecated `caretRangeFromPoint` (WordPress/gutenberg#76921) - Block Supports: Add background gradient support that can combine with background images (WordPress/gutenberg#75859) - Tab Block: Remove anchor from save function (WordPress/gutenberg#76511) - CollapsibleCard: Add HeaderDescription subcomponent (WordPress/gutenberg#76867) - element: Make createInterpolateElement TS/type smart (WordPress/gutenberg#71513) - admin-ui: Update README to clarify purpose and distinguish from ui package (WordPress/gutenberg#76943) - Site Editor > Quick Edit: add form config to endpoint (WordPress/gutenberg#76953) - Fields: Tweak `excerpt` field (WordPress/gutenberg#76903) - Fix: Flaky RichText format e2e test (WordPress/gutenberg#76958) Props adamsilverstein, jorbin, westonruter, wildworks. Fixes #65556. git-svn-id: https://develop.svn.wordpress.org/trunk@62578 602fd350-edb4-49c9-b593-d223f7449a82
This updates the pinned commit hash of the Gutenberg repository from `3166ad3c587b4091f77b0e16affeed5762e193f1` (version `22.8.0`) to `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`). A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.8.0..v22.9.0. The following commits are included: - Real Time Collaboration: Introduce filters for the polling intervals. (WordPress/gutenberg#76518) - UI: Update @base-ui/react from 1.2.0 to 1.3.0 (WordPress/gutenberg#76603) - Card: Use Text component for Title typography (WordPress/gutenberg#76642) - Add TypeScript parser tests for shouldSkipReference (WordPress/gutenberg#76611) - Update changelog link for pull request 11276 (WordPress/gutenberg#76638) - ThemeProvider: Add `cursor` prop (WordPress/gutenberg#76410) - RTC: Fix RichTextData deserialization (WordPress/gutenberg#76607) - Cross Origin Isolation: Remove `img` from the list of elements that get mutated (WordPress/gutenberg#76618) - RTC: Scroll to collaborator on click (WordPress/gutenberg#76561) - Fix backport changelog filename (WordPress/gutenberg#76651) - Build: Skip non-minified build for WASM-inlined workers (WordPress/gutenberg#76615) - Improvements to dataviews infinite scroll (WordPress/gutenberg#74378) - Image/Site Logo: hide crop toolbar when editMediaEntity is unavailable (WordPress/gutenberg#76626) - Bump lodash from 4.17.21 to 4.17.23 in /platform-docs (WordPress/gutenberg#74829) - RTC: Change RTC option name (WordPress/gutenberg#76643) - Change from PR WordPress/gutenberg#11276 to WordPress/gutenberg#11234 with with different approach (WordPress/gutenberg#76661) - Build: Fix vips worker 404 when SCRIPT_DEBUG is true (WordPress/gutenberg#76657) - Build: Remove unused JXL WASM module from vips worker (WordPress/gutenberg#76639) - Storybook: disabled autodocs for Icon library (WordPress/gutenberg#76620) - Connectors: fix button size (WordPress/gutenberg#76582) - Revisions: Add Meta fields diff panel to document sidebar (WordPress/gutenberg#76341) - Reduce the added halo for selected block. (WordPress/gutenberg#76619) - Site Editor > Pages: move view config to the server (WordPress/gutenberg#76573) - ui/Tabs: add runtime validation for tab/panel mismatches (WordPress/gutenberg#75170) - Fix Color Picker Angle Reset on Gradient Type Change (WordPress/gutenberg#76595) - ESLint: Add `no-unmerged-classname` rule (WordPress/gutenberg#76458) - RTC: Backport race condition fix (WordPress/gutenberg#76649) - ui/Card: Add overflow: clip to root container (WordPress/gutenberg#76678) - Storybook: Make "introduction" top level (WordPress/gutenberg#76671) - Fix navigation block rendering unit test (WordPress/gutenberg#76685) - Hide Additional CSS controls when block is inside contentOnly editing mode (WordPress/gutenberg#76512) - RTC: Increase polling intervals, increase polling on primary room only (WordPress/gutenberg#76704) - Navigation: Avoid List View changing position when navigation block saves (WordPress/gutenberg#76659) - Fix navigation block unit test and e2e test (WordPress/gutenberg#76692) - Stretchy Text: Fix focus loss (WordPress/gutenberg#75092) - Fix locked content when switching to a different template without exiting 'Edit pattern' (WordPress/gutenberg#76710) - Guidelines: Improvements to the UX (WordPress/gutenberg#76383) - Fix: Create custom template modal content width (WordPress/gutenberg#76713) - Core Data: Optimize getRawEntityRecord selector (WordPress/gutenberg#76632) - Metabox: Fix checkbox style in sidebar (WordPress/gutenberg#76718) - Stop keeping stale controlled blocks after reset (WordPress/gutenberg#76591) - Gate client-side media processing as plugin-only (WordPress/gutenberg#76700) - Storybook: Add redirect for moved introduction page (WordPress/gutenberg#76701) - InputControl: Add to @wordpress/ui (WordPress/gutenberg#76653) - UI Tooltip: Improve documentation to cover intended accessibility practices (WordPress/gutenberg#76705) - Add EmptyState component to @wordpress/ui (WordPress/gutenberg#74719) - RTC: Use activation hook to enable RTC by default (WordPress/gutenberg#76736) - Forms Block: Add hidden input field variation (WordPress/gutenberg#74131) - Guidelines: Refactor components and improve TypeScript typing (WordPress/gutenberg#76394) - Connectors: Align client-side registration API with server-side (WordPress/gutenberg#76737) - Properly resolve `getTemplateId` for hybrid themes (WordPress/gutenberg#76532) - Changelog: Add missing label-to-feature mappings (WordPress/gutenberg#76646) - Connectors: Support non-AI provider types and add JS extensibility e2e test (WordPress/gutenberg#76722) - Experimental: Add `template` panel to include the existing template actions (WordPress/gutenberg#76539) - RadioControl: Add `role="radiogroup"` to fieldset (WordPress/gutenberg#76745) - wp-build: Hash transformed CSS for `data-wp-hash` dedupe key (WordPress/gutenberg#76743) - Button: restore specificity of high-contrast mode focus ring (WordPress/gutenberg#76719) - Updating versions in WordPress ahead of 7.0 (WordPress/gutenberg#76723) - Bump the github-actions group across 2 directories with 1 update (WordPress/gutenberg#76681) - Admin UI: Add CSS files to sideEffects array (WordPress/gutenberg#76609) - RTC: Add E2E "stress test" with complex interactions (WordPress/gutenberg#76055) - Connectors: Improve AI plugin button (WordPress/gutenberg#76759) - Login/out block: Add button block class names to the submit button (WordPress/gutenberg#76746) - Commands: Add sections to command palette and introduce Recently used functionality (WordPress/gutenberg#75691) - RTC: Use prepared queries instead of `*_post_meta` functions (WordPress/gutenberg#76779) - Core Abilities: fix sideEffects flag (WordPress/gutenberg#76763) - Site Editor > Patterns: move config to the server (WordPress/gutenberg#76734) - Docs: Remove Puppeteer references and update to Playwright (WordPress/gutenberg#76766) - Site Editor > Templates: move config to the server (WordPress/gutenberg#76622) - Core Data: Remove 'isRawAttribute' internal util (WordPress/gutenberg#76806) - Reset blockEditingModes on RESET_BLOCKS (WordPress/gutenberg#76529) - Refactor: Use null coalescing operator for improved readability (WordPress/gutenberg#76777) - ui/CollapsibleCard: do not animate focus ring (WordPress/gutenberg#76682) - admin-ui / Breadcrumbs: stricter `items[].to` prop types (WordPress/gutenberg#76493) - RTC: Remove stale wp_enable_real_time_collaboration option check (WordPress/gutenberg#76810) - Storybook: Try changing to collapsed folders (WordPress/gutenberg#76361) - @wordpress/dataviews: migrate card layout to @wordpress/ui (WordPress/gutenberg#76282) - RTC: Fix editor freeze when replacing code editor content (WordPress/gutenberg#76815) - Preferences: Hide collaboration options when RTC is not enabled (WordPress/gutenberg#76819) - Cherry-pick: Set milestone on PRs after cherry-picking to release branch (WordPress/gutenberg#76652) - Site Tagline: Fix block error when migrating deprecated textAlign attribute (WordPress/gutenberg#76821) - Commands: Fix unstable `useSelect` return value for `recentlyUsedNames` (WordPress/gutenberg#76822) - `ControlWithError`: Connect validation messages to controls via `aria-describedby` (WordPress/gutenberg#76742) - Block Editor: Deprecate '__unstableSaveReusableBlock' action (WordPress/gutenberg#76807) - Editor: Fix template revisions using 'modified' date field instead of 'date' (WordPress/gutenberg#76760) - UI: Clarify public APIs and component naming, remove NoticeIntent typings (WordPress/gutenberg#76791) - fix(date): Recover WP timezone after third-party moment-timezone reload (WordPress/gutenberg#75831) - Admin UI: Update Page background color (WordPress/gutenberg#76548) - Snackbar: Use surface-width design token for max-width (WordPress/gutenberg#76592) - iAPI Docs: Add client-side navigation compatibility guide (WordPress/gutenberg#76242) - Enhance block registration by using blocks-manifest for improved performance (WordPress/gutenberg#76317) - docs(create-block-interactive-template): document available variants in README (WordPress/gutenberg#76831) - Build: detect version and generate asset.php for vendor scripts (WordPress/gutenberg#76811) - Site Editor > Patterns & Parts: generate sidebar from view config (WordPress/gutenberg#76823) - Interactivity API: mention `client-side-navigation` scaffold variant in getting-started guide (WordPress/gutenberg#76543) - Fields: Add `excerpt` field (WordPress/gutenberg#76829) - Update PHP_CodeSniffer repository link and schema URL (WordPress/gutenberg#76816) - docs: Fix markdown links and PHP code block in client-side navigation compatibility guide (WordPress/gutenberg#76856) - Experimental: Add `revisions` panel (WordPress/gutenberg#76735) - WordPress/gutenberg#76478 Boot: Fix black area below content when sidebar is taller than page c… (WordPress/gutenberg#76764) - Style Book: Fix missing styles for classic themes in stylebook route (WordPress/gutenberg#76843) - UI/Dialog: Expose initialFocus and finalFocus on Dialog.Popup (WordPress/gutenberg#76860) - compose/useDialog: add `stopPropagation()` to Escape handler (WordPress/gutenberg#76861) - RTC: Add e2e block gauntlet (WordPress/gutenberg#76849) - UI: Add AlertDialog primitive (WordPress/gutenberg#76847) - RTC: Fix stuck "Join" link in post list when lock expires (WordPress/gutenberg#76795) - Site Editor: simplify sidebar for Pages & Templates (WordPress/gutenberg#76868) - Site Editor v2: Add missing menu items to navigation leaf more menu (WordPress/gutenberg#76804) - Navigation: Add a shared helper for font sizes in Navigation Link and Navigation Submenu blocks (WordPress/gutenberg#74855) - Reduce specificity of nav link default padding so global styles are applied (WordPress/gutenberg#76876) - Icon: Fix center alignment in the editor for classic themes (WordPress/gutenberg#76878) - RTC: Fix notes not syncing between collaborative editors (WordPress/gutenberg#76873) - List Item: Disable edit as HTML support (WordPress/gutenberg#76897) - Block Library: Show fallback label in MediaControl when filename is empty (WordPress/gutenberg#76888) - Image block media placeholder: remove duotone (WordPress/gutenberg#76721) - Latest Comments: Fix v1 deprecated block missing supports (WordPress/gutenberg#76877) - VIPS: ensure single instance (WordPress/gutenberg#76780) - React vendor script: avoid warning on createRoot (WordPress/gutenberg#76825) - Connectors: Add Akismet as a default connector (WordPress/gutenberg#76828) - Core Data: remove offset param from stableKey, use pagination logic (WordPress/gutenberg#76808) - Button: hide focus outline on :active for click feedback in forced-colors mode (WordPress/gutenberg#76833) - Restore with compaction update (WordPress/gutenberg#76872) - Theme: Change default control cursor to `pointer` (WordPress/gutenberg#76762) - E2E Tests: Enable client-side media processing for site editor image test (WordPress/gutenberg#76648) - ComboboxControl: Fix accessible association of `help` text (WordPress/gutenberg#76761) - Add backport for WP_ALLOW_COLLABORATION (WordPress/gutenberg#76716) - DataForm: Add `compact` configuration option to the `datetime` control (WordPress/gutenberg#76905) - Admin UI: Fix Page Header not rendering with only actions and add stories (WordPress/gutenberg#76695) - Improve JSDoc for abilities API (WordPress/gutenberg#76824) - DOM: Document class wildcard matcher for 'cleanNodeList' (WordPress/gutenberg#76920) - e2e: Add e2e tests for template and template part revisions (WordPress/gutenberg#76923) - react-dom vendor script: remove __esModule flag (WordPress/gutenberg#76925) - Site Editor: Fix unsupported theme flash on direct URL navigation (WordPress/gutenberg#76465) - Icons: Enforce strict name validation in `register` method (WordPress/gutenberg#76079) - ToggleGroupControl: Fix accessible association of `help` text (WordPress/gutenberg#76740) - Connectors: Replace plugin.slug with plugin.file (WordPress/gutenberg#76909) - UI/Dialog: deprioritize close icon for initial focus (WordPress/gutenberg#76910) - Block visibility badge: use canvas iframe for viewport detection (WordPress/gutenberg#76889) - Fields: Add `sticky` field (WordPress/gutenberg#76922) - DOM: Prefer standard `caretPositionFromPoint` over deprecated `caretRangeFromPoint` (WordPress/gutenberg#76921) - Block Supports: Add background gradient support that can combine with background images (WordPress/gutenberg#75859) - Tab Block: Remove anchor from save function (WordPress/gutenberg#76511) - CollapsibleCard: Add HeaderDescription subcomponent (WordPress/gutenberg#76867) - element: Make createInterpolateElement TS/type smart (WordPress/gutenberg#71513) - admin-ui: Update README to clarify purpose and distinguish from ui package (WordPress/gutenberg#76943) - Site Editor > Quick Edit: add form config to endpoint (WordPress/gutenberg#76953) - Fields: Tweak `excerpt` field (WordPress/gutenberg#76903) - Fix: Flaky RichText format e2e test (WordPress/gutenberg#76958) Props adamsilverstein, jorbin, westonruter, wildworks. Fixes #65556. git-svn-id: https://develop.svn.wordpress.org/trunk@62578 602fd350-edb4-49c9-b593-d223f7449a82
Part of #76544
Backported at WordPress/wordpress-develop#11272
What?
Moves the template view configuration (default view, layouts, and view list) from client-side JavaScript (page-templates/view-utils.js) to the server-side REST endpoint (/wp/v2/view-config), continuing the pattern established for pages in #76573
Why?
See #76544
This is part of an ongoing effort to centralize view configuration on the server so that it can be managed, extended, and overridden consistently across entity types.
How?
useViewConfighook.Testing Instructions
Test the Site Editor > Templates screen.
Use of AI Tools
This PR was authored with Claude Code (Claude Opus 4.6).