diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 687975e193782..f2ecffae0705a 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -158,7 +158,6 @@ jobs: - name: Docker debug information run: | docker -v - docker-compose -v - name: General debug information run: | diff --git a/changelog.txt b/changelog.txt index e86e1129ecb9e..8ca20b7f166a1 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,293 @@ == Changelog == += 18.1.0-rc.1 = + + +## Changelog + +### Enhancements + +- Block Previews: Update shadows in different contexts. ([60161](https://github.com/WordPress/gutenberg/pull/60161)) +- Data views: Make trash a quick action again. ([60165](https://github.com/WordPress/gutenberg/pull/60165)) +- Router: Update history package to 5.3.0, fix query string generation. ([60271](https://github.com/WordPress/gutenberg/pull/60271)) +- Summary: Polish featured image. ([60110](https://github.com/WordPress/gutenberg/pull/60110)) +- Template Parts: Remove pattern title from sidebar. ([60160](https://github.com/WordPress/gutenberg/pull/60160)) +- Template Parts: Update replace flow to separate template parts from patterns. ([60203](https://github.com/WordPress/gutenberg/pull/60203)) +- Template Parts: Update the 'Replace' label to 'Design'. ([60156](https://github.com/WordPress/gutenberg/pull/60156)) +- Try: Show copy shortcut in block options. ([60339](https://github.com/WordPress/gutenberg/pull/60339)) +- Update image role description text to fix spacing. ([60338](https://github.com/WordPress/gutenberg/pull/60338)) +- Update: Move post actions to the editor package. ([60092](https://github.com/WordPress/gutenberg/pull/60092)) +- Zoom out: Invoke zoom out mode when opening the patterns tab, and move the code to do so to a shared hook. ([59775](https://github.com/WordPress/gutenberg/pull/59775)) +- Create block: Add new namespacePascalCase template variable. ([60223](https://github.com/WordPress/gutenberg/pull/60223)) + +#### Site Editor +- Add rename page action. ([60230](https://github.com/WordPress/gutenberg/pull/60230)) +- Center the document title. ([59134](https://github.com/WordPress/gutenberg/pull/59134)) +- Consolidate when showing revisions link or action. ([60194](https://github.com/WordPress/gutenberg/pull/60194)) +- Editor: Update hover color of editor document title. ([60113](https://github.com/WordPress/gutenberg/pull/60113)) +- Improve the frame animation. ([60363](https://github.com/WordPress/gutenberg/pull/60363)) +- Try selecting closest editable block when clicking on a disabled block. ([60016](https://github.com/WordPress/gutenberg/pull/60016)) +- Update index view for pages. ([59950](https://github.com/WordPress/gutenberg/pull/59950)) + +#### Patterns +- Add content schema to pattern editing view. ([59977](https://github.com/WordPress/gutenberg/pull/59977)) +- Close inspector on pattern category select. ([60004](https://github.com/WordPress/gutenberg/pull/60004)) +- Focus block selection button only in navigation mode. ([60207](https://github.com/WordPress/gutenberg/pull/60207)) +- Pattern Shuffling: Make the results deterministic. ([60074](https://github.com/WordPress/gutenberg/pull/60074)) +- Patterns page: Enable table layout. ([60337](https://github.com/WordPress/gutenberg/pull/60337)) +- Prevent reordering of header and footer template parts when zoomed out. ([60054](https://github.com/WordPress/gutenberg/pull/60054)) +- Remove manage all of my patterns link. ([60345](https://github.com/WordPress/gutenberg/pull/60345)) + +#### Block Library +- Add __next40pxDefaultSize to Image block Title Attribute. ([60117](https://github.com/WordPress/gutenberg/pull/60117)) +- Add support "HTML Element" to Site Tagline. ([59654](https://github.com/WordPress/gutenberg/pull/59654)) +- Image: Remove temporary image check for rendering controls. ([60212](https://github.com/WordPress/gutenberg/pull/60212)) +- Quote block: Button for cite add/remove. ([59073](https://github.com/WordPress/gutenberg/pull/59073)) +- Quote block: Remove appender. ([60307](https://github.com/WordPress/gutenberg/pull/60307)) +- Reduce specificity of block library styles conflicting with block supports. ([59457](https://github.com/WordPress/gutenberg/pull/59457)) +- Update navigation blocks to use consistent link UI labels and field sizes. ([60116](https://github.com/WordPress/gutenberg/pull/60116)) + +#### Post Editor +- Block Editor: Deprecate '__experimentalGetReusableBlockTitle' selector. ([60278](https://github.com/WordPress/gutenberg/pull/60278)) +- Editor: Move PluginPostPublishPanel and PluginPrePublishPanel to editor package. ([60344](https://github.com/WordPress/gutenberg/pull/60344)) +- Editor: Move publish panel handling to `editor` store. ([60340](https://github.com/WordPress/gutenberg/pull/60340)) +- [Editor]: Unify publish sidebar preference. ([60334](https://github.com/WordPress/gutenberg/pull/60334)) + +#### Global Styles +- Add background to global styles changes output. ([60229](https://github.com/WordPress/gutenberg/pull/60229)) +- Background UI controls. ([59454](https://github.com/WordPress/gutenberg/pull/59454)) +- Follow up design tweaks for global styles presets. ([60031](https://github.com/WordPress/gutenberg/pull/60031)) +- Try reducing specificity of global styles selectors only. ([60106](https://github.com/WordPress/gutenberg/pull/60106)) + +#### Data Views +- DataViews: Add a utility to share filtering, sorting and pagination logic. ([59897](https://github.com/WordPress/gutenberg/pull/59897)) +- DataViews: Remove the `enumeration` type as redundant. ([60084](https://github.com/WordPress/gutenberg/pull/60084)) +- Update template actions. ([60075](https://github.com/WordPress/gutenberg/pull/60075)) +- [Data Views]: Add confirmation modal for clearing customizations in templates. ([60119](https://github.com/WordPress/gutenberg/pull/60119)) + +#### List View +- Add keyboard shortcut to collapse list view items other than the focused item. ([59978](https://github.com/WordPress/gutenberg/pull/59978)) +- Adjust the List View close icon to resemble the Inspector close icon. ([59999](https://github.com/WordPress/gutenberg/pull/59999)) +- Update "Actions" string to "Options" in List View. ([60136](https://github.com/WordPress/gutenberg/pull/60136)) + +#### Template Editor +- Add filter to allow extending the list of post content blocks. ([60068](https://github.com/WordPress/gutenberg/pull/60068)) +- Render non-editable preview of template part when user does not have capability to edit template part. ([60326](https://github.com/WordPress/gutenberg/pull/60326)) + +#### Zoom Out +- Add a delete control to toolbar on zoom-out mode. ([60214](https://github.com/WordPress/gutenberg/pull/60214)) +- Media dialog push content in zoomed out mode. ([60170](https://github.com/WordPress/gutenberg/pull/60170)) + +#### Components +- Popover / ToggleGroupControl: Use `useReducedMotion()` from `@wordpress/compose`. ([60168](https://github.com/WordPress/gutenberg/pull/60168)) +- date-fns: Bump to v3.6. ([60163](https://github.com/WordPress/gutenberg/pull/60163)) + +#### REST API +- Allow view access of template rest endpoint to anyone with the `edit_post` capability. ([60317](https://github.com/WordPress/gutenberg/pull/60317)) + +#### Commands +- Polish Command Palette. ([60134](https://github.com/WordPress/gutenberg/pull/60134)) + +#### Page Content Focus +- Allow selecting template parts in page content focus mode. ([60010](https://github.com/WordPress/gutenberg/pull/60010)) + +#### Inspector Controls +- Add: PostCardPanel component. ([59870](https://github.com/WordPress/gutenberg/pull/59870)) + + +### New APIs + +#### Extensibility +- Extensibiltiy: Support PluginBlockSettingsMenuItem in the site editor. ([60033](https://github.com/WordPress/gutenberg/pull/60033)) + + +### Bug Fixes + +- Columns block: Fix arrow up into it. ([55197](https://github.com/WordPress/gutenberg/pull/55197)) +- DOM: Fix return types of focus.tabbable methods. ([60274](https://github.com/WordPress/gutenberg/pull/60274)) +- Fix block toolbar dropdown separator color. ([60336](https://github.com/WordPress/gutenberg/pull/60336)) +- Global Styles: Make strings translatable. ([60127](https://github.com/WordPress/gutenberg/pull/60127)) +- Shadow: Revert shadow default presets opt-in to opt-out. ([60204](https://github.com/WordPress/gutenberg/pull/60204)) +- URL: Return early in getFilename where URL argument is falsy. ([60265](https://github.com/WordPress/gutenberg/pull/60265)) + +#### Block Library +- Fix enqueuing block theme styles when separate asset loading is enabled. ([60098](https://github.com/WordPress/gutenberg/pull/60098)) +- Fix lightbox UI disallow editing. ([59890](https://github.com/WordPress/gutenberg/pull/59890)) +- Fix navigation link ui close focus management. ([59925](https://github.com/WordPress/gutenberg/pull/59925)) +- Removed pointer-events none inline style due it blocking crop action. ([60305](https://github.com/WordPress/gutenberg/pull/60305)) +- Search Block: Apply font-related style inheritance to input field. ([60321](https://github.com/WordPress/gutenberg/pull/60321)) + +#### Site Editor +- Fix rendering PluginTemplateSettingPanel when we're editing a template. ([60215](https://github.com/WordPress/gutenberg/pull/60215)) +- Fix: Use `viewportWidth` in pattern preview data view. ([60315](https://github.com/WordPress/gutenberg/pull/60315)) +- Templates: Fix deferred rendering. ([60361](https://github.com/WordPress/gutenberg/pull/60361)) +- [Site Editor]: Consolidate save button functionality. ([60077](https://github.com/WordPress/gutenberg/pull/60077)) + +#### Block Editor +- Make sure the CSS class is-dark-theme is added to the editor iframe body. ([60300](https://github.com/WordPress/gutenberg/pull/60300)) +- Raw handling: Preserve class. ([60331](https://github.com/WordPress/gutenberg/pull/60331)) +- Raw handling: Preserve empty paragraphs. ([59476](https://github.com/WordPress/gutenberg/pull/59476)) +- Wiriting flow: Backspace at beginning of first paragraph block prevents block from being deleted. ([56329](https://github.com/WordPress/gutenberg/pull/56329)) + +#### Components +- CustomSelectControlV2: Fix hint behavior in legacy. ([60183](https://github.com/WordPress/gutenberg/pull/60183)) +- InputControl: Ignore IME events when `isPressEnterToChange`. ([60090](https://github.com/WordPress/gutenberg/pull/60090)) +- TextControl: Apply zero margin to input element. ([60282](https://github.com/WordPress/gutenberg/pull/60282)) + +#### Global Styles +- Fix missing class for Global Styles > Colors. ([60094](https://github.com/WordPress/gutenberg/pull/60094)) +- Reset specificity of body selector when processing with postcss. ([60266](https://github.com/WordPress/gutenberg/pull/60266)) + +#### Zoom Out +- Fix zoom out mode toggling between pattern category selection. ([60225](https://github.com/WordPress/gutenberg/pull/60225)) + +#### Data Views +- Fix focus outline visibility and truncation in data view record titles. ([60191](https://github.com/WordPress/gutenberg/pull/60191)) + +#### Layout +- Fix horizontal flex layout in classic themes. ([60154](https://github.com/WordPress/gutenberg/pull/60154)) + +#### Post Editor +- Editor: Memoize 'getInsertionPoint' selector. ([60015](https://github.com/WordPress/gutenberg/pull/60015)) + + +### Accessibility + +#### Data Views +- Add click-to-select behavior on table rows. ([59803](https://github.com/WordPress/gutenberg/pull/59803)) +- Data views list layout: Apply focus styles to items on `focus-visible` rather than `focus`. ([60253](https://github.com/WordPress/gutenberg/pull/60253)) +- Update field display in grid layout. ([60083](https://github.com/WordPress/gutenberg/pull/60083)) +- [Data Views] Updating keyboard navigation in list layouts. ([59637](https://github.com/WordPress/gutenberg/pull/59637)) + +#### Site Editor +- Restore Style book close button tooltip. ([60177](https://github.com/WordPress/gutenberg/pull/60177)) + +#### Block Library +- Remove CSS order property from social icons placeholder UI. ([60032](https://github.com/WordPress/gutenberg/pull/60032)) + +### Performance + +- Avoid fetching ALL reusable blocks (user patterns) on post/site editor load. ([58239](https://github.com/WordPress/gutenberg/pull/58239)) +- Block editor: Optimize hasSelectedInnerBlock selector. ([60330](https://github.com/WordPress/gutenberg/pull/60330)) +- Templates perf: Resolve patterns server side. ([60349](https://github.com/WordPress/gutenberg/pull/60349)) + +#### Block Library +- Template part: Avoid pattern fetch on mount. ([60297](https://github.com/WordPress/gutenberg/pull/60297)) + +#### Block Editor +- Inserter: Cache search normalization results. ([60080](https://github.com/WordPress/gutenberg/pull/60080)) + +### Experiments + +#### Site Editor +- Zoom-out view: Disable canvas resizing. ([60104](https://github.com/WordPress/gutenberg/pull/60104)) + + +### Documentation + +- Add auto generated API documentation for `editor` package. ([60356](https://github.com/WordPress/gutenberg/pull/60356)) +- Add component props documentation. ([60350](https://github.com/WordPress/gutenberg/pull/60350)) +- Add php @global documentation. ([59931](https://github.com/WordPress/gutenberg/pull/59931)) +- Change heading level on troubleshooting section. ([60233](https://github.com/WordPress/gutenberg/pull/60233)) +- CustomSelectControlV2: Match v1 stories to test legacy component. ([60182](https://github.com/WordPress/gutenberg/pull/60182)) +- Docs: Fix some typos. ([60260](https://github.com/WordPress/gutenberg/pull/60260)) +- Fix @todo tags to follow standards in WordPress comments. ([60148](https://github.com/WordPress/gutenberg/pull/60148)) +- Fix Font Collection JSON schema definition. ([60285](https://github.com/WordPress/gutenberg/pull/60285)) +- Fix: Invalid documentation link to load JavaScript. ([60181](https://github.com/WordPress/gutenberg/pull/60181)) +- Fix: Invalid links to the block supports api. ([60199](https://github.com/WordPress/gutenberg/pull/60199)) +- Fix: Non existent link to submitting to the block directory. ([60389](https://github.com/WordPress/gutenberg/pull/60389)) +- Interactivity API: Variable name correction in the documentation. ([60056](https://github.com/WordPress/gutenberg/pull/60056)) +- [Create Block] Update external template documentation to include variants. ([60095](https://github.com/WordPress/gutenberg/pull/60095)) + + +### Code Quality + +- Fix editor canvas overflow on search results with position: Relative. ([60287](https://github.com/WordPress/gutenberg/pull/60287)) +- Editor: Move template areas to editor package. ([60179](https://github.com/WordPress/gutenberg/pull/60179)) +- Style Engine: Continue get_classnames loop after adding the default classname. ([60153](https://github.com/WordPress/gutenberg/pull/60153)) +- Update: Use getPostIcon selector on document bar. ([60128](https://github.com/WordPress/gutenberg/pull/60128)) + +#### Block Editor +- Add comment for unmemoized context. ([60272](https://github.com/WordPress/gutenberg/pull/60272)) +- Fix ESLint warning in BlockListBlock component. ([60064](https://github.com/WordPress/gutenberg/pull/60064)) +- RichText: Switch from disableEditing to standard html readonly attribute. ([60327](https://github.com/WordPress/gutenberg/pull/60327)) +- Site Editor: Reuse inserter search term normalization. ([60218](https://github.com/WordPress/gutenberg/pull/60218)) +- canInsertBlockType: Extract helper for selector dependants. ([60235](https://github.com/WordPress/gutenberg/pull/60235)) + +#### Components +- CustomSelectControlV2: Rename for consistency. ([60178](https://github.com/WordPress/gutenberg/pull/60178)) +- Navigator: Fix two nits. ([60273](https://github.com/WordPress/gutenberg/pull/60273)) +- NavigatorProvider: Move all state management to one reducer. ([60190](https://github.com/WordPress/gutenberg/pull/60190)) +- Components: Try obviating Popover pointer event trap. ([59449](https://github.com/WordPress/gutenberg/pull/59449)) + +#### Post Editor +- Memoize the getTemplateInfo selector. ([60200](https://github.com/WordPress/gutenberg/pull/60200)) +- Update: Remove template summary component. ([60351](https://github.com/WordPress/gutenberg/pull/60351)) + +#### Global Styles +- Additional CSS: Add code comments contextualising tranformStyles for clarity. ([60267](https://github.com/WordPress/gutenberg/pull/60267)) +- Global styles: output `:root` selector for CSS custom properties. ([42084](https://github.com/WordPress/gutenberg/pull/42084)) + +#### Font Library +- Add test for Font Library and Theme Style Variations. ([60250](https://github.com/WordPress/gutenberg/pull/60250)) +- Update google fonts font collection data URL to the latest version available. ([60079](https://github.com/WordPress/gutenberg/pull/60079)) + +#### Block Library +- Image: Use the new 'useUploadMediaFromBlobURL' hook. ([60208](https://github.com/WordPress/gutenberg/pull/60208)) +- Navigation Block: Add test coverage to check that post content is not removed. ([60189](https://github.com/WordPress/gutenberg/pull/60189)) + +#### Site Editor +- DataViews: Don't memoize every callback 'PagePages' component. ([60103](https://github.com/WordPress/gutenberg/pull/60103)) +- History: Simplify the push and replace methods. ([60112](https://github.com/WordPress/gutenberg/pull/60112)) + +#### Rich Text +- RichText: Separate fallback instance ID for selection retrieval. ([60277](https://github.com/WordPress/gutenberg/pull/60277)) + +#### Block Locking +- E2E: Test BlockSwitcher availability in l-post-ul-group CPT. ([60254](https://github.com/WordPress/gutenberg/pull/60254)) + +#### Data Views +- DataViews: Fix react warning error in list layout. ([60101](https://github.com/WordPress/gutenberg/pull/60101)) + + +### Tools + +#### Testing +- Automated Testing: Remove Puppeteer CI Job. ([59311](https://github.com/WordPress/gutenberg/pull/59311)) +- CustomSelectControlV2: Stabilize tests. ([60133](https://github.com/WordPress/gutenberg/pull/60133)) +- E2E: Fix flaky Site Editor pages end-to-end test. ([60109](https://github.com/WordPress/gutenberg/pull/60109)) +- Font Library: Add upload font test. ([60221](https://github.com/WordPress/gutenberg/pull/60221)) + +#### Build Tooling +- Blocks: Fix double `gutenberg_` prefix in built dynamic blocks PHP. ([60288](https://github.com/WordPress/gutenberg/pull/60288)) + + +### Various + +- Backport r57868 (Editor: Prevent font folder naive filtering causing infinite loops) from WordPress-Develop. ([60141](https://github.com/WordPress/gutenberg/pull/60141)) +- Format library: Improve unknown format performance. ([48761](https://github.com/WordPress/gutenberg/pull/48761)) + +#### Post Editor +- Distraction free: Remove unwanted space from string. ([60108](https://github.com/WordPress/gutenberg/pull/60108)) + + +## First time contributors + +The following PRs were merged by first time contributors 🎉 : + +- @interdevel: Fix `@todo` tags to follow standards in WordPress comments. ([60148](https://github.com/WordPress/gutenberg/pull/60148)) +- @mikeybinns: Add component props documentation. ([60350](https://github.com/WordPress/gutenberg/pull/60350)) +- @nirav7707: Editor: Update hover color of editor document title. ([60113](https://github.com/WordPress/gutenberg/pull/60113)) +- @steveariss: Interactivity API: Variable name correction in the documentation. ([60056](https://github.com/WordPress/gutenberg/pull/60056)) + + +## Contributors + +The following contributors merged PRs in this release: + +@aaronrobertshaw @afercia @andrewhayward @andrewserong @artemiomorales @bph @draganescu @ellatrix @fabiankaegy @geriux @getdave @glendaviesnz @interdevel @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @madhusudhand @MaggieCabrera @Mamaduka @matiasbenedetto @mcsf @mikachan @mikeybinns @mirka @mujuonly @n2erjo00 @nirav7707 @noisysocks @ntsekouras @oandregal @ockham @pedro-mendonca @peterwilsoncc @ramonjd @richtabor @ryanwelcher @scruffian @shail-mehta @Soean @steveariss @stokesman @t-hamano @talldan @tellthemachines @torounit @tyxla @youknowriad + + = 18.0.0 = ## Changelog diff --git a/docs/reference-guides/block-api/block-metadata.md b/docs/reference-guides/block-api/block-metadata.md index 09ab571ba6847..95b1107babee6 100644 --- a/docs/reference-guides/block-api/block-metadata.md +++ b/docs/reference-guides/block-api/block-metadata.md @@ -70,7 +70,7 @@ From a performance perspective, when themes support lazy loading assets, blocks Furthermore, because the [Block Type REST API Endpoint](https://developer.wordpress.org/rest-api/reference/block-types/) can only list blocks registered on the server, registering blocks server-side is recommended; using the `block.json` file simplifies this registration. -The [WordPress Plugins Directory](https://wordpress.org/plugins/) can detect `block.json` files, highlight blocks included in plugins, and extract their metadata. If you wish to [submit your block(s) to the Block Directory](/docs/getting-started/create-block/submitting-to-block-directory.md), all blocks contained in your plugin must have a `block.json` file for the Block Directory to recognize them. +The [WordPress Plugins Directory](https://wordpress.org/plugins/) can detect `block.json` files, highlight blocks included in plugins, and extract their metadata. If you wish to submit your block(s) to the Block Directory all blocks contained in your plugin must have a `block.json` file for the Block Directory to recognize them. Development is improved by using a defined schema definition file. Supported editors can provide help like tooltips, autocomplete, and schema validation. To use the schema, add the following to the top of the `block.json`. diff --git a/gutenberg.php b/gutenberg.php index 2ed00ead6c3eb..f21aed1c5fc34 100644 --- a/gutenberg.php +++ b/gutenberg.php @@ -5,7 +5,7 @@ * Description: Printing since 1440. This is the development plugin for the block editor, site editor, and other future WordPress core functionality. * Requires at least: 6.3 * Requires PHP: 7.0 - * Version: 18.0.0 + * Version: 18.1.0-rc.1 * Author: Gutenberg Team * Text Domain: gutenberg * diff --git a/lib/compat/wordpress-6.6/resolve-patterns.php b/lib/compat/wordpress-6.6/resolve-patterns.php new file mode 100644 index 0000000000000..f9d9cd675987d --- /dev/null +++ b/lib/compat/wordpress-6.6/resolve-patterns.php @@ -0,0 +1,97 @@ +get_registered( $slug ); + $blocks_to_insert = parse_blocks( $pattern['content'] ); + $seen_refs[ $slug ] = true; + $blocks_to_insert = gutenberg_replace_pattern_blocks( $blocks_to_insert ); + unset( $seen_refs[ $slug ] ); + array_splice( $blocks, $i, 1, $blocks_to_insert ); + + // If we have inner content, we need to insert nulls in the + // inner content array, otherwise serialize_blocks will skip + // blocks. + if ( $inner_content ) { + $null_indices = array_keys( $inner_content, null, true ); + $content_index = $null_indices[ $i ]; + $nulls = array_fill( 0, count( $blocks_to_insert ), null ); + array_splice( $inner_content, $content_index, 1, $nulls ); + } + + // Skip inserted blocks. + $i += count( $blocks_to_insert ); + } else { + if ( ! empty( $blocks[ $i ]['innerBlocks'] ) ) { + $blocks[ $i ]['innerBlocks'] = gutenberg_replace_pattern_blocks( + $blocks[ $i ]['innerBlocks'], + $blocks[ $i ]['innerContent'] + ); + } + ++$i; + } + } + return $blocks; +} + +function gutenberg_replace_pattern_blocks_get_block_templates( $templates ) { + foreach ( $templates as $template ) { + $blocks = parse_blocks( $template->content ); + $blocks = gutenberg_replace_pattern_blocks( $blocks ); + $template->content = serialize_blocks( $blocks ); + } + return $templates; +} + +function gutenberg_replace_pattern_blocks_get_block_template( $template ) { + $blocks = parse_blocks( $template->content ); + $blocks = gutenberg_replace_pattern_blocks( $blocks ); + $template->content = serialize_blocks( $blocks ); + return $template; +} + +function gutenberg_replace_pattern_blocks_patterns_endpoint( $result, $server, $request ) { + if ( $request->get_route() !== '/wp/v2/block-patterns/patterns' ) { + return $result; + } + + $data = $result->get_data(); + + foreach ( $data as $index => $pattern ) { + $blocks = parse_blocks( $pattern['content'] ); + $blocks = gutenberg_replace_pattern_blocks( $blocks ); + $data[ $index ]['content'] = serialize_blocks( $blocks ); + } + + $result->set_data( $data ); + + return $result; +} + +// For core merge, we should avoid the double parse and replace the patterns in templates here: +// https://github.com/WordPress/wordpress-develop/blob/02fb53498f1ce7e63d807b9bafc47a7dba19d169/src/wp-includes/block-template-utils.php#L558 +add_filter( 'get_block_templates', 'gutenberg_replace_pattern_blocks_get_block_templates' ); +add_filter( 'get_block_template', 'gutenberg_replace_pattern_blocks_get_block_template' ); +// Similarly, for patterns, we can avoid the double parse here: +// https://github.com/WordPress/wordpress-develop/blob/02fb53498f1ce7e63d807b9bafc47a7dba19d169/src/wp-includes/class-wp-block-patterns-registry.php#L175 +add_filter( 'rest_post_dispatch', 'gutenberg_replace_pattern_blocks_patterns_endpoint', 10, 3 ); diff --git a/lib/load.php b/lib/load.php index d6c705790d970..8f03f59db8ab4 100644 --- a/lib/load.php +++ b/lib/load.php @@ -125,6 +125,7 @@ function gutenberg_is_experiment_enabled( $name ) { require __DIR__ . '/compat/wordpress-6.5/script-loader.php'; // WordPress 6.6 compat. +require __DIR__ . '/compat/wordpress-6.6/resolve-patterns.php'; require __DIR__ . '/compat/wordpress-6.6/block-bindings/pattern-overrides.php'; require __DIR__ . '/compat/wordpress-6.6/option.php'; require __DIR__ . '/compat/wordpress-6.6/class-gutenberg-rest-templates-controller-6-6.php'; diff --git a/package-lock.json b/package-lock.json index 53e989c1b1bd5..9066ae3524d61 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gutenberg", - "version": "18.0.0", + "version": "18.1.0-rc.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "gutenberg", - "version": "18.0.0", + "version": "18.1.0-rc.1", "hasInstallScript": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54657,7 +54657,7 @@ }, "packages/a11y": { "name": "@wordpress/a11y", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54670,7 +54670,7 @@ }, "packages/annotations": { "name": "@wordpress/annotations", - "version": "2.54.0", + "version": "2.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54678,7 +54678,6 @@ "@wordpress/hooks": "file:../hooks", "@wordpress/i18n": "file:../i18n", "@wordpress/rich-text": "file:../rich-text", - "rememo": "^4.0.2", "uuid": "^9.0.1" }, "engines": { @@ -54698,7 +54697,7 @@ }, "packages/api-fetch": { "name": "@wordpress/api-fetch", - "version": "6.51.0", + "version": "6.52.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54711,7 +54710,7 @@ }, "packages/autop": { "name": "@wordpress/autop", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -54722,7 +54721,7 @@ }, "packages/babel-plugin-import-jsx-pragma": { "name": "@wordpress/babel-plugin-import-jsx-pragma", - "version": "4.37.0", + "version": "4.38.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -54734,7 +54733,7 @@ }, "packages/babel-plugin-makepot": { "name": "@wordpress/babel-plugin-makepot", - "version": "5.38.0", + "version": "5.39.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54751,7 +54750,7 @@ }, "packages/babel-preset-default": { "name": "@wordpress/babel-preset-default", - "version": "7.38.0", + "version": "7.39.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54774,13 +54773,13 @@ }, "packages/base-styles": { "name": "@wordpress/base-styles", - "version": "4.45.0", + "version": "4.46.0", "dev": true, "license": "GPL-2.0-or-later" }, "packages/blob": { "name": "@wordpress/blob", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -54791,7 +54790,7 @@ }, "packages/block-directory": { "name": "@wordpress/block-directory", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54826,7 +54825,7 @@ }, "packages/block-editor": { "name": "@wordpress/block-editor", - "version": "12.22.0", + "version": "12.23.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54874,7 +54873,6 @@ "postcss-urlrebase": "^1.0.0", "react-autosize-textarea": "^7.1.0", "react-easy-crop": "^4.5.1", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" }, "engines": { @@ -54922,7 +54920,7 @@ }, "packages/block-library": { "name": "@wordpress/block-library", - "version": "8.31.0", + "version": "8.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54986,7 +54984,7 @@ }, "packages/block-serialization-default-parser": { "name": "@wordpress/block-serialization-default-parser", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -54997,7 +54995,7 @@ }, "packages/block-serialization-spec-parser": { "name": "@wordpress/block-serialization-spec-parser", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "pegjs": "^0.10.0", @@ -55009,7 +55007,7 @@ }, "packages/blocks": { "name": "@wordpress/blocks", - "version": "12.31.0", + "version": "12.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55035,7 +55033,6 @@ "is-plain-object": "^5.0.0", "memize": "^2.1.0", "react-is": "^18.2.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0", "showdown": "^1.9.1", "simple-html-tokenizer": "^0.5.7", @@ -55063,7 +55060,7 @@ }, "packages/browserslist-config": { "name": "@wordpress/browserslist-config", - "version": "5.37.0", + "version": "5.38.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -55072,7 +55069,7 @@ }, "packages/commands": { "name": "@wordpress/commands", - "version": "0.25.0", + "version": "0.26.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55084,8 +55081,7 @@ "@wordpress/keyboard-shortcuts": "file:../keyboard-shortcuts", "@wordpress/private-apis": "file:../private-apis", "classnames": "^2.3.1", - "cmdk": "^0.2.0", - "rememo": "^4.0.2" + "cmdk": "^0.2.0" }, "engines": { "node": ">=12" @@ -55097,7 +55093,7 @@ }, "packages/components": { "name": "@wordpress/components", - "version": "27.2.0", + "version": "27.3.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.3.12", @@ -55200,7 +55196,7 @@ }, "packages/compose": { "name": "@wordpress/compose", - "version": "6.31.0", + "version": "6.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55236,7 +55232,7 @@ }, "packages/core-commands": { "name": "@wordpress/core-commands", - "version": "0.23.0", + "version": "0.24.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55262,7 +55258,7 @@ }, "packages/core-data": { "name": "@wordpress/core-data", - "version": "6.31.0", + "version": "6.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55285,7 +55281,6 @@ "equivalent-key-map": "^0.2.2", "fast-deep-equal": "^3.1.3", "memize": "^2.1.0", - "rememo": "^4.0.2", "uuid": "^9.0.1" }, "engines": { @@ -55306,7 +55301,7 @@ }, "packages/create-block": { "name": "@wordpress/create-block", - "version": "4.38.0", + "version": "4.39.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55334,13 +55329,13 @@ }, "packages/create-block-tutorial-template": { "name": "@wordpress/create-block-tutorial-template", - "version": "3.8.0", + "version": "3.9.0", "dev": true, "license": "GPL-2.0-or-later" }, "packages/customize-widgets": { "name": "@wordpress/customize-widgets", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55377,7 +55372,7 @@ }, "packages/data": { "name": "@wordpress/data", - "version": "9.24.0", + "version": "9.25.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55405,7 +55400,7 @@ }, "packages/data-controls": { "name": "@wordpress/data-controls", - "version": "3.23.0", + "version": "3.24.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55422,7 +55417,7 @@ }, "packages/dataviews": { "name": "@wordpress/dataviews", - "version": "0.8.0", + "version": "0.9.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.3.12", @@ -55483,7 +55478,7 @@ }, "packages/date": { "name": "@wordpress/date", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55497,7 +55492,7 @@ }, "packages/dependency-extraction-webpack-plugin": { "name": "@wordpress/dependency-extraction-webpack-plugin", - "version": "5.5.0", + "version": "5.6.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55512,7 +55507,7 @@ }, "packages/deprecated": { "name": "@wordpress/deprecated", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55524,7 +55519,7 @@ }, "packages/docgen": { "name": "@wordpress/docgen", - "version": "1.63.0", + "version": "1.64.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55542,7 +55537,7 @@ }, "packages/dom": { "name": "@wordpress/dom", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55554,7 +55549,7 @@ }, "packages/dom-ready": { "name": "@wordpress/dom-ready", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -55565,7 +55560,7 @@ }, "packages/e2e-test-utils": { "name": "@wordpress/e2e-test-utils", - "version": "10.25.0", + "version": "10.26.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55587,7 +55582,7 @@ }, "packages/e2e-test-utils-playwright": { "name": "@wordpress/e2e-test-utils-playwright", - "version": "0.22.0", + "version": "0.23.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55610,7 +55605,7 @@ }, "packages/e2e-tests": { "name": "@wordpress/e2e-tests", - "version": "7.25.0", + "version": "7.26.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -55649,7 +55644,7 @@ }, "packages/edit-post": { "name": "@wordpress/edit-post", - "version": "7.31.0", + "version": "7.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55684,8 +55679,7 @@ "@wordpress/warning": "file:../warning", "@wordpress/widgets": "file:../widgets", "classnames": "^2.3.1", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" }, "engines": { "node": ">=12" @@ -55697,10 +55691,11 @@ }, "packages/edit-site": { "name": "@wordpress/edit-site", - "version": "5.31.0", + "version": "5.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", + "@react-spring/web": "^9.4.5", "@wordpress/a11y": "file:../a11y", "@wordpress/api-fetch": "file:../api-fetch", "@wordpress/blob": "file:../blob", @@ -55749,8 +55744,7 @@ "fast-deep-equal": "^3.1.3", "is-plain-object": "^5.0.0", "memize": "^2.1.0", - "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2" + "react-autosize-textarea": "^7.1.0" }, "engines": { "node": ">=12" @@ -55762,7 +55756,7 @@ }, "packages/edit-widgets": { "name": "@wordpress/edit-widgets", - "version": "5.31.0", + "version": "5.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55792,8 +55786,7 @@ "@wordpress/reusable-blocks": "file:../reusable-blocks", "@wordpress/url": "file:../url", "@wordpress/widgets": "file:../widgets", - "classnames": "^2.3.1", - "rememo": "^4.0.2" + "classnames": "^2.3.1" }, "engines": { "node": ">=12" @@ -55805,7 +55798,7 @@ }, "packages/editor": { "name": "@wordpress/editor", - "version": "13.31.0", + "version": "13.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55845,7 +55838,6 @@ "date-fns": "^3.6.0", "memize": "^2.1.0", "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" }, "engines": { @@ -55858,7 +55850,7 @@ }, "packages/element": { "name": "@wordpress/element", - "version": "5.31.0", + "version": "5.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55876,7 +55868,7 @@ }, "packages/env": { "name": "@wordpress/env", - "version": "9.6.0", + "version": "9.7.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56013,7 +56005,7 @@ }, "packages/escape-html": { "name": "@wordpress/escape-html", - "version": "2.54.0", + "version": "2.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -56024,7 +56016,7 @@ }, "packages/eslint-plugin": { "name": "@wordpress/eslint-plugin", - "version": "17.11.0", + "version": "17.12.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56067,7 +56059,7 @@ }, "packages/format-library": { "name": "@wordpress/format-library", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56094,7 +56086,7 @@ }, "packages/hooks": { "name": "@wordpress/hooks", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -56105,7 +56097,7 @@ }, "packages/html-entities": { "name": "@wordpress/html-entities", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -56116,7 +56108,7 @@ }, "packages/i18n": { "name": "@wordpress/i18n", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56135,7 +56127,7 @@ }, "packages/icons": { "name": "@wordpress/icons", - "version": "9.45.0", + "version": "9.46.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56148,7 +56140,7 @@ }, "packages/interactivity": { "name": "@wordpress/interactivity", - "version": "5.3.0", + "version": "5.4.0", "license": "GPL-2.0-or-later", "dependencies": { "@preact/signals": "^1.2.2", @@ -56161,7 +56153,7 @@ }, "packages/interactivity-router": { "name": "@wordpress/interactivity-router", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/interactivity": "file:../interactivity" @@ -56221,7 +56213,7 @@ }, "packages/interface": { "name": "@wordpress/interface", - "version": "5.31.0", + "version": "5.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56249,7 +56241,7 @@ }, "packages/is-shallow-equal": { "name": "@wordpress/is-shallow-equal", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -56260,7 +56252,7 @@ }, "packages/jest-console": { "name": "@wordpress/jest-console", - "version": "7.25.0", + "version": "7.26.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56276,7 +56268,7 @@ }, "packages/jest-preset-default": { "name": "@wordpress/jest-preset-default", - "version": "11.25.0", + "version": "11.26.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56293,7 +56285,7 @@ }, "packages/jest-puppeteer-axe": { "name": "@wordpress/jest-puppeteer-axe", - "version": "6.25.0", + "version": "6.26.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56315,14 +56307,13 @@ }, "packages/keyboard-shortcuts": { "name": "@wordpress/keyboard-shortcuts", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "@wordpress/data": "file:../data", "@wordpress/element": "file:../element", - "@wordpress/keycodes": "file:../keycodes", - "rememo": "^4.0.2" + "@wordpress/keycodes": "file:../keycodes" }, "engines": { "node": ">=12" @@ -56333,7 +56324,7 @@ }, "packages/keycodes": { "name": "@wordpress/keycodes", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56345,7 +56336,7 @@ }, "packages/lazy-import": { "name": "@wordpress/lazy-import", - "version": "1.41.0", + "version": "1.42.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56359,7 +56350,7 @@ }, "packages/list-reusable-blocks": { "name": "@wordpress/list-reusable-blocks", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56381,7 +56372,7 @@ }, "packages/media-utils": { "name": "@wordpress/media-utils", - "version": "4.45.0", + "version": "4.46.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56396,7 +56387,7 @@ }, "packages/notices": { "name": "@wordpress/notices", - "version": "4.22.0", + "version": "4.23.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56412,7 +56403,7 @@ }, "packages/npm-package-json-lint-config": { "name": "@wordpress/npm-package-json-lint-config", - "version": "4.39.0", + "version": "4.40.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -56424,7 +56415,7 @@ }, "packages/nux": { "name": "@wordpress/nux", - "version": "8.16.0", + "version": "8.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56434,8 +56425,7 @@ "@wordpress/deprecated": "file:../deprecated", "@wordpress/element": "file:../element", "@wordpress/i18n": "file:../i18n", - "@wordpress/icons": "file:../icons", - "rememo": "^4.0.2" + "@wordpress/icons": "file:../icons" }, "engines": { "node": ">=12" @@ -56447,7 +56437,7 @@ }, "packages/patterns": { "name": "@wordpress/patterns", - "version": "1.15.0", + "version": "1.16.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56476,7 +56466,7 @@ }, "packages/plugins": { "name": "@wordpress/plugins", - "version": "6.22.0", + "version": "6.23.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56498,7 +56488,7 @@ }, "packages/postcss-plugins-preset": { "name": "@wordpress/postcss-plugins-preset", - "version": "4.38.0", + "version": "4.39.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56514,7 +56504,7 @@ }, "packages/postcss-themes": { "name": "@wordpress/postcss-themes", - "version": "5.37.0", + "version": "5.38.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -56526,7 +56516,7 @@ }, "packages/preferences": { "name": "@wordpress/preferences", - "version": "3.31.0", + "version": "3.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56551,7 +56541,7 @@ }, "packages/preferences-persistence": { "name": "@wordpress/preferences-persistence", - "version": "1.46.0", + "version": "1.47.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56563,7 +56553,7 @@ }, "packages/prettier-config": { "name": "@wordpress/prettier-config", - "version": "3.11.0", + "version": "3.12.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -56575,7 +56565,7 @@ }, "packages/primitives": { "name": "@wordpress/primitives", - "version": "3.52.0", + "version": "3.53.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56588,7 +56578,7 @@ }, "packages/priority-queue": { "name": "@wordpress/priority-queue", - "version": "2.54.0", + "version": "2.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56600,7 +56590,7 @@ }, "packages/private-apis": { "name": "@wordpress/private-apis", - "version": "0.36.0", + "version": "0.37.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -56611,7 +56601,7 @@ }, "packages/project-management-automation": { "name": "@wordpress/project-management-automation", - "version": "1.53.0", + "version": "1.54.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -56624,7 +56614,7 @@ }, "packages/react-i18n": { "name": "@wordpress/react-i18n", - "version": "3.52.0", + "version": "3.53.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56771,7 +56761,7 @@ }, "packages/readable-js-assets-webpack-plugin": { "name": "@wordpress/readable-js-assets-webpack-plugin", - "version": "2.37.0", + "version": "2.38.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -56783,7 +56773,7 @@ }, "packages/redux-routine": { "name": "@wordpress/redux-routine", - "version": "4.54.0", + "version": "4.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56827,7 +56817,7 @@ }, "packages/reusable-blocks": { "name": "@wordpress/reusable-blocks", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56853,7 +56843,7 @@ }, "packages/rich-text": { "name": "@wordpress/rich-text", - "version": "6.31.0", + "version": "6.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56865,8 +56855,7 @@ "@wordpress/escape-html": "file:../escape-html", "@wordpress/i18n": "file:../i18n", "@wordpress/keycodes": "file:../keycodes", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" }, "engines": { "node": ">=12" @@ -56877,7 +56866,7 @@ }, "packages/router": { "name": "@wordpress/router", - "version": "0.23.0", + "version": "0.24.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -56895,7 +56884,7 @@ }, "packages/scripts": { "name": "@wordpress/scripts", - "version": "27.5.0", + "version": "27.6.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -57104,7 +57093,7 @@ }, "packages/server-side-render": { "name": "@wordpress/server-side-render", - "version": "4.31.0", + "version": "4.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57129,7 +57118,7 @@ }, "packages/shortcode": { "name": "@wordpress/shortcode", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57141,7 +57130,7 @@ }, "packages/style-engine": { "name": "@wordpress/style-engine", - "version": "1.37.0", + "version": "1.38.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57153,7 +57142,7 @@ }, "packages/stylelint-config": { "name": "@wordpress/stylelint-config", - "version": "21.37.0", + "version": "21.38.0", "dev": true, "license": "MIT", "dependencies": { @@ -57169,7 +57158,7 @@ }, "packages/sync": { "name": "@wordpress/sync", - "version": "0.16.0", + "version": "0.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57189,7 +57178,7 @@ }, "packages/token-list": { "name": "@wordpress/token-list", - "version": "2.54.0", + "version": "2.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -57200,7 +57189,7 @@ }, "packages/undo-manager": { "name": "@wordpress/undo-manager", - "version": "0.14.0", + "version": "0.15.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57212,7 +57201,7 @@ }, "packages/url": { "name": "@wordpress/url", - "version": "3.55.0", + "version": "3.56.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57224,7 +57213,7 @@ }, "packages/viewport": { "name": "@wordpress/viewport", - "version": "5.31.0", + "version": "5.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57241,7 +57230,7 @@ }, "packages/warning": { "name": "@wordpress/warning", - "version": "2.54.0", + "version": "2.55.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=12" @@ -57249,7 +57238,7 @@ }, "packages/widgets": { "name": "@wordpress/widgets", - "version": "3.31.0", + "version": "3.32.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -57273,7 +57262,7 @@ }, "packages/wordcount": { "name": "@wordpress/wordcount", - "version": "3.54.0", + "version": "3.55.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -70763,7 +70752,6 @@ "@wordpress/hooks": "file:../hooks", "@wordpress/i18n": "file:../i18n", "@wordpress/rich-text": "file:../rich-text", - "rememo": "^4.0.2", "uuid": "^9.0.1" }, "dependencies": { @@ -70898,7 +70886,6 @@ "postcss-urlrebase": "^1.0.0", "react-autosize-textarea": "^7.1.0", "react-easy-crop": "^4.5.1", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" }, "dependencies": { @@ -71011,7 +70998,6 @@ "is-plain-object": "^5.0.0", "memize": "^2.1.0", "react-is": "^18.2.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0", "showdown": "^1.9.1", "simple-html-tokenizer": "^0.5.7", @@ -71044,8 +71030,7 @@ "@wordpress/keyboard-shortcuts": "file:../keyboard-shortcuts", "@wordpress/private-apis": "file:../private-apis", "classnames": "^2.3.1", - "cmdk": "^0.2.0", - "rememo": "^4.0.2" + "cmdk": "^0.2.0" } }, "@wordpress/components": { @@ -71203,7 +71188,6 @@ "equivalent-key-map": "^0.2.2", "fast-deep-equal": "^3.1.3", "memize": "^2.1.0", - "rememo": "^4.0.2", "uuid": "^9.0.1" }, "dependencies": { @@ -71466,14 +71450,14 @@ "@wordpress/warning": "file:../warning", "@wordpress/widgets": "file:../widgets", "classnames": "^2.3.1", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" } }, "@wordpress/edit-site": { "version": "file:packages/edit-site", "requires": { "@babel/runtime": "^7.16.0", + "@react-spring/web": "^9.4.5", "@wordpress/a11y": "file:../a11y", "@wordpress/api-fetch": "file:../api-fetch", "@wordpress/blob": "file:../blob", @@ -71522,8 +71506,7 @@ "fast-deep-equal": "^3.1.3", "is-plain-object": "^5.0.0", "memize": "^2.1.0", - "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2" + "react-autosize-textarea": "^7.1.0" } }, "@wordpress/edit-widgets": { @@ -71556,8 +71539,7 @@ "@wordpress/reusable-blocks": "file:../reusable-blocks", "@wordpress/url": "file:../url", "@wordpress/widgets": "file:../widgets", - "classnames": "^2.3.1", - "rememo": "^4.0.2" + "classnames": "^2.3.1" } }, "@wordpress/editor": { @@ -71600,7 +71582,6 @@ "date-fns": "^3.6.0", "memize": "^2.1.0", "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" } }, @@ -71885,8 +71866,7 @@ "@babel/runtime": "^7.16.0", "@wordpress/data": "file:../data", "@wordpress/element": "file:../element", - "@wordpress/keycodes": "file:../keycodes", - "rememo": "^4.0.2" + "@wordpress/keycodes": "file:../keycodes" } }, "@wordpress/keycodes": { @@ -71948,8 +71928,7 @@ "@wordpress/deprecated": "file:../deprecated", "@wordpress/element": "file:../element", "@wordpress/i18n": "file:../i18n", - "@wordpress/icons": "file:../icons", - "rememo": "^4.0.2" + "@wordpress/icons": "file:../icons" } }, "@wordpress/patterns": { @@ -72218,8 +72197,7 @@ "@wordpress/escape-html": "file:../escape-html", "@wordpress/i18n": "file:../i18n", "@wordpress/keycodes": "file:../keycodes", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" } }, "@wordpress/router": { diff --git a/package.json b/package.json index fcb742cb379fd..e8cbeb8829052 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gutenberg", - "version": "18.0.0", + "version": "18.1.0-rc.1", "private": true, "description": "A new WordPress editor experience.", "author": "The WordPress Contributors", diff --git a/packages/a11y/CHANGELOG.md b/packages/a11y/CHANGELOG.md index 46feca496f670..f9eb9aedf15b4 100644 --- a/packages/a11y/CHANGELOG.md +++ b/packages/a11y/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/a11y/package.json b/packages/a11y/package.json index ec108d1c959db..80375c5519f7e 100644 --- a/packages/a11y/package.json +++ b/packages/a11y/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/a11y", - "version": "3.54.0", + "version": "3.55.0", "description": "Accessibility (a11y) utilities for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/annotations/CHANGELOG.md b/packages/annotations/CHANGELOG.md index 7329278fe788d..21117c194d2a5 100644 --- a/packages/annotations/CHANGELOG.md +++ b/packages/annotations/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.55.0 (2024-04-03) + ## 2.54.0 (2024-03-21) ## 2.53.0 (2024-03-06) diff --git a/packages/annotations/package.json b/packages/annotations/package.json index 0b94b411c2ceb..571be01d55046 100644 --- a/packages/annotations/package.json +++ b/packages/annotations/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/annotations", - "version": "2.54.0", + "version": "2.55.0", "description": "Annotate content in the Gutenberg editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -30,7 +30,6 @@ "@wordpress/hooks": "file:../hooks", "@wordpress/i18n": "file:../i18n", "@wordpress/rich-text": "file:../rich-text", - "rememo": "^4.0.2", "uuid": "^9.0.1" }, "peerDependencies": { diff --git a/packages/annotations/src/store/selectors.js b/packages/annotations/src/store/selectors.js index 8ec24e0541e6f..463c00439e77e 100644 --- a/packages/annotations/src/store/selectors.js +++ b/packages/annotations/src/store/selectors.js @@ -1,7 +1,7 @@ /** - * External dependencies + * WordPress dependencies */ -import createSelector from 'rememo'; +import { createSelector } from '@wordpress/data'; /** * Shared reference to an empty array for cases where it is important to avoid diff --git a/packages/api-fetch/CHANGELOG.md b/packages/api-fetch/CHANGELOG.md index 80a1b7f945063..048023e03d9a1 100644 --- a/packages/api-fetch/CHANGELOG.md +++ b/packages/api-fetch/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.52.0 (2024-04-03) + ## 6.51.0 (2024-03-21) ## 6.50.0 (2024-03-06) diff --git a/packages/api-fetch/package.json b/packages/api-fetch/package.json index 9630d718df707..09431da66bbe0 100644 --- a/packages/api-fetch/package.json +++ b/packages/api-fetch/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/api-fetch", - "version": "6.51.0", + "version": "6.52.0", "description": "Utility to make WordPress REST API requests.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/autop/CHANGELOG.md b/packages/autop/CHANGELOG.md index 6fc198cb9faa4..8459618c4df4f 100644 --- a/packages/autop/CHANGELOG.md +++ b/packages/autop/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/autop/package.json b/packages/autop/package.json index 8741a2f2d6a88..de808d270ff36 100644 --- a/packages/autop/package.json +++ b/packages/autop/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/autop", - "version": "3.54.0", + "version": "3.55.0", "description": "WordPress's automatic paragraph functions `autop` and `removep`.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md b/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md index 5a5cb8859f3cb..4a0d59cf95bd5 100644 --- a/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md +++ b/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.38.0 (2024-04-03) + ## 4.37.0 (2024-03-21) ## 4.36.0 (2024-03-06) diff --git a/packages/babel-plugin-import-jsx-pragma/package.json b/packages/babel-plugin-import-jsx-pragma/package.json index 7b9d8f527ee87..efa45964304e3 100644 --- a/packages/babel-plugin-import-jsx-pragma/package.json +++ b/packages/babel-plugin-import-jsx-pragma/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/babel-plugin-import-jsx-pragma", - "version": "4.37.0", + "version": "4.38.0", "description": "Babel transform plugin for automatically injecting an import to be used as the pragma for the React JSX Transform plugin.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/babel-plugin-makepot/CHANGELOG.md b/packages/babel-plugin-makepot/CHANGELOG.md index b84362858d4a6..66b8bdf881e22 100644 --- a/packages/babel-plugin-makepot/CHANGELOG.md +++ b/packages/babel-plugin-makepot/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.39.0 (2024-04-03) + ## 5.38.0 (2024-03-21) ## 5.37.0 (2024-03-06) diff --git a/packages/babel-plugin-makepot/package.json b/packages/babel-plugin-makepot/package.json index 9c5066d428b2c..78256f730ba49 100644 --- a/packages/babel-plugin-makepot/package.json +++ b/packages/babel-plugin-makepot/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/babel-plugin-makepot", - "version": "5.38.0", + "version": "5.39.0", "description": "WordPress Babel internationalization (i18n) plugin.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/babel-preset-default/CHANGELOG.md b/packages/babel-preset-default/CHANGELOG.md index e3ba4518ecaea..586ea36a9f341 100644 --- a/packages/babel-preset-default/CHANGELOG.md +++ b/packages/babel-preset-default/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.39.0 (2024-04-03) + ## 7.38.0 (2024-03-21) ## 7.37.0 (2024-03-06) diff --git a/packages/babel-preset-default/package.json b/packages/babel-preset-default/package.json index afd381d9a3270..ffd759abfcd48 100644 --- a/packages/babel-preset-default/package.json +++ b/packages/babel-preset-default/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/babel-preset-default", - "version": "7.38.0", + "version": "7.39.0", "description": "Default Babel preset for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/base-styles/CHANGELOG.md b/packages/base-styles/CHANGELOG.md index 78045affc6ac4..193e8781b6cc6 100644 --- a/packages/base-styles/CHANGELOG.md +++ b/packages/base-styles/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.46.0 (2024-04-03) + ## 4.45.0 (2024-03-21) ## 4.44.0 (2024-03-06) diff --git a/packages/base-styles/package.json b/packages/base-styles/package.json index cbecbbf0ae67c..e333ec49de511 100644 --- a/packages/base-styles/package.json +++ b/packages/base-styles/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/base-styles", - "version": "4.45.0", + "version": "4.46.0", "description": "Base SCSS utilities and variables for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/blob/CHANGELOG.md b/packages/blob/CHANGELOG.md index 0f047ec191fd6..fd1bf5a5ad127 100644 --- a/packages/blob/CHANGELOG.md +++ b/packages/blob/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/blob/package.json b/packages/blob/package.json index 789825f0f19e7..28a33bd18fac4 100644 --- a/packages/blob/package.json +++ b/packages/blob/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/blob", - "version": "3.54.0", + "version": "3.55.0", "description": "Blob utilities for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-directory/CHANGELOG.md b/packages/block-directory/CHANGELOG.md index 546dfd7f9e637..2d15643bbb32a 100644 --- a/packages/block-directory/CHANGELOG.md +++ b/packages/block-directory/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/block-directory/package.json b/packages/block-directory/package.json index 3b8e57eabde3f..5f50ec3ebe667 100644 --- a/packages/block-directory/package.json +++ b/packages/block-directory/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-directory", - "version": "4.31.0", + "version": "4.32.0", "description": "Extend editor with block directory features to search, download and install blocks.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-editor/CHANGELOG.md b/packages/block-editor/CHANGELOG.md index b605aefa9e21f..c471eb84ace9a 100644 --- a/packages/block-editor/CHANGELOG.md +++ b/packages/block-editor/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 12.23.0 (2024-04-03) + ## 12.22.0 (2024-03-21) ## 12.21.0 (2024-03-06) diff --git a/packages/block-editor/package.json b/packages/block-editor/package.json index 498eee0c93601..dd4a58f1c91e3 100644 --- a/packages/block-editor/package.json +++ b/packages/block-editor/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-editor", - "version": "12.22.0", + "version": "12.23.0", "description": "Generic block editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -76,7 +76,6 @@ "postcss-urlrebase": "^1.0.0", "react-autosize-textarea": "^7.1.0", "react-easy-crop": "^4.5.1", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" }, "peerDependencies": { diff --git a/packages/block-editor/src/components/block-tools/block-selection-button.js b/packages/block-editor/src/components/block-tools/block-selection-button.js index f0e46a9497c0c..f1673a9c4656a 100644 --- a/packages/block-editor/src/components/block-tools/block-selection-button.js +++ b/packages/block-editor/src/components/block-tools/block-selection-button.js @@ -63,6 +63,7 @@ function BlockSelectionButton( { clientId, rootClientId } ) { getNextBlockClientId, getPreviousBlockClientId, canRemoveBlock, + canMoveBlock, } = select( blockEditorStore ); const { getActiveBlockVariation, getBlockType } = select( blocksStore ); @@ -107,6 +108,7 @@ function BlockSelectionButton( { clientId, rootClientId } ) { isNextBlockTemplatePart, isPrevBlockTemplatePart, canRemove: canRemoveBlock( clientId, rootClientId ), + canMove: canMoveBlock( clientId, rootClientId ), }; }, [ clientId, rootClientId ] @@ -120,6 +122,7 @@ function BlockSelectionButton( { clientId, rootClientId } ) { isNextBlockTemplatePart, isPrevBlockTemplatePart, canRemove, + canMove, } = selected; const { setNavigationMode, removeBlock } = useDispatch( blockEditorStore ); const ref = useRef(); @@ -318,7 +321,7 @@ function BlockSelectionButton( { clientId, rootClientId } ) { ) } - { editorMode === 'zoom-out' && ( + { canMove && canRemove && editorMode === 'zoom-out' && ( ) } { canRemove && diff --git a/packages/block-editor/src/store/private-selectors.js b/packages/block-editor/src/store/private-selectors.js index 75163273008c4..bc4a3ba1a797c 100644 --- a/packages/block-editor/src/store/private-selectors.js +++ b/packages/block-editor/src/store/private-selectors.js @@ -1,12 +1,7 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ -import { createRegistrySelector } from '@wordpress/data'; +import { createSelector, createRegistrySelector } from '@wordpress/data'; /** * Internal dependencies diff --git a/packages/block-editor/src/store/selectors.js b/packages/block-editor/src/store/selectors.js index 0e8b1d62f48d6..05138464409c1 100644 --- a/packages/block-editor/src/store/selectors.js +++ b/packages/block-editor/src/store/selectors.js @@ -1,8 +1,3 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ @@ -21,7 +16,7 @@ import { applyFilters } from '@wordpress/hooks'; import { symbol } from '@wordpress/icons'; import { create, remove, toHTMLString } from '@wordpress/rich-text'; import deprecated from '@wordpress/deprecated'; -import { createRegistrySelector } from '@wordpress/data'; +import { createSelector, createRegistrySelector } from '@wordpress/data'; /** * Internal dependencies diff --git a/packages/block-library/CHANGELOG.md b/packages/block-library/CHANGELOG.md index 949e08ff9ce88..c3153990e2f0e 100644 --- a/packages/block-library/CHANGELOG.md +++ b/packages/block-library/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.32.0 (2024-04-03) + ## 8.31.0 (2024-03-21) ## 8.30.0 (2024-03-06) diff --git a/packages/block-library/package.json b/packages/block-library/package.json index 0a024f3a5f422..d9bb73400d79c 100644 --- a/packages/block-library/package.json +++ b/packages/block-library/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-library", - "version": "8.31.0", + "version": "8.32.0", "description": "Block library for the WordPress editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-library/src/image/image.js b/packages/block-library/src/image/image.js index 9c010fb7b4210..9fd7d625fb143 100644 --- a/packages/block-library/src/image/image.js +++ b/packages/block-library/src/image/image.js @@ -83,8 +83,7 @@ const ImageWrapper = ( { href, children } ) => { // When the Image block is linked, // it's wrapped with a disabled tag. // Restore cursor style so it doesn't appear 'clickable' - // and remove pointer events. Safari needs the display property. - pointerEvents: 'none', + // Safari needs the display property. cursor: 'default', display: 'inline', } } diff --git a/packages/block-library/src/search/style.scss b/packages/block-library/src/search/style.scss index 1434f29de7681..eb8e3051bada8 100644 --- a/packages/block-library/src/search/style.scss +++ b/packages/block-library/src/search/style.scss @@ -97,6 +97,17 @@ $button-spacing-y: math.div($grid-unit-15, 2); // 6px } } +// We are lowering the specificity so that the input element can override the rule for the input element inside the search block. +:where(.wp-block-search__input) { + font-family: inherit; + font-weight: inherit; + font-size: inherit; + line-height: inherit; + letter-spacing: inherit; + text-transform: inherit; + font-style: inherit; +} + // We are lowering the specificity so that the button element can override the rule for the button inside the search block. :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) { padding: $grid-unit-05; diff --git a/packages/block-serialization-default-parser/CHANGELOG.md b/packages/block-serialization-default-parser/CHANGELOG.md index 14b8d8007d3d7..ad157d376ee18 100644 --- a/packages/block-serialization-default-parser/CHANGELOG.md +++ b/packages/block-serialization-default-parser/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/block-serialization-default-parser/package.json b/packages/block-serialization-default-parser/package.json index c25048bd36fda..439e19053cba9 100644 --- a/packages/block-serialization-default-parser/package.json +++ b/packages/block-serialization-default-parser/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-serialization-default-parser", - "version": "4.54.0", + "version": "4.55.0", "description": "Block serialization specification parser for WordPress posts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-serialization-spec-parser/CHANGELOG.md b/packages/block-serialization-spec-parser/CHANGELOG.md index 12faacac8ed89..38ddefdb14daf 100644 --- a/packages/block-serialization-spec-parser/CHANGELOG.md +++ b/packages/block-serialization-spec-parser/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/block-serialization-spec-parser/package.json b/packages/block-serialization-spec-parser/package.json index 0f139e2e41569..5fd617e1212c3 100644 --- a/packages/block-serialization-spec-parser/package.json +++ b/packages/block-serialization-spec-parser/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-serialization-spec-parser", - "version": "4.54.0", + "version": "4.55.0", "description": "Block serialization specification parser for WordPress posts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/blocks/CHANGELOG.md b/packages/blocks/CHANGELOG.md index 7b884f1d957b0..88175ff1caa3d 100644 --- a/packages/blocks/CHANGELOG.md +++ b/packages/blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 12.32.0 (2024-04-03) + ## 12.31.0 (2024-03-21) ## 12.30.0 (2024-03-06) diff --git a/packages/blocks/package.json b/packages/blocks/package.json index e837db26f761b..6609c1ec208e6 100644 --- a/packages/blocks/package.json +++ b/packages/blocks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/blocks", - "version": "12.31.0", + "version": "12.32.0", "description": "Block API for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -51,7 +51,6 @@ "is-plain-object": "^5.0.0", "memize": "^2.1.0", "react-is": "^18.2.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0", "showdown": "^1.9.1", "simple-html-tokenizer": "^0.5.7", diff --git a/packages/blocks/src/api/raw-handling/ms-list-ignore.js b/packages/blocks/src/api/raw-handling/ms-list-ignore.js index d1ed421e3b76c..88a940337130b 100644 --- a/packages/blocks/src/api/raw-handling/ms-list-ignore.js +++ b/packages/blocks/src/api/raw-handling/ms-list-ignore.js @@ -17,7 +17,10 @@ export default function msListIgnore( node ) { const rules = style.split( ';' ).reduce( ( acc, rule ) => { const [ key, value ] = rule.split( ':' ); - acc[ key.trim().toLowerCase() ] = value.trim().toLowerCase(); + + if ( key && value ) { + acc[ key.trim().toLowerCase() ] = value.trim().toLowerCase(); + } return acc; }, {} ); diff --git a/packages/blocks/src/store/private-selectors.js b/packages/blocks/src/store/private-selectors.js index e6eac8be42146..4cded8268ae97 100644 --- a/packages/blocks/src/store/private-selectors.js +++ b/packages/blocks/src/store/private-selectors.js @@ -1,7 +1,7 @@ /** - * External dependencies + * WordPress dependencies */ -import createSelector from 'rememo'; +import { createSelector } from '@wordpress/data'; /** * Internal dependencies diff --git a/packages/blocks/src/store/selectors.js b/packages/blocks/src/store/selectors.js index b2b8ab8106f09..a69879809ab1a 100644 --- a/packages/blocks/src/store/selectors.js +++ b/packages/blocks/src/store/selectors.js @@ -1,13 +1,13 @@ /** * External dependencies */ -import createSelector from 'rememo'; import removeAccents from 'remove-accents'; /** * WordPress dependencies */ import { pipe } from '@wordpress/compose'; +import { createSelector } from '@wordpress/data'; /** * Internal dependencies diff --git a/packages/browserslist-config/CHANGELOG.md b/packages/browserslist-config/CHANGELOG.md index 19dd45404033b..6aa4230ab920a 100644 --- a/packages/browserslist-config/CHANGELOG.md +++ b/packages/browserslist-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.38.0 (2024-04-03) + ## 5.37.0 (2024-03-21) ## 5.36.0 (2024-03-06) diff --git a/packages/browserslist-config/package.json b/packages/browserslist-config/package.json index 3c2e3e85c9ecf..979d09608d5c7 100644 --- a/packages/browserslist-config/package.json +++ b/packages/browserslist-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/browserslist-config", - "version": "5.37.0", + "version": "5.38.0", "description": "WordPress Browserslist shared configuration.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/commands/CHANGELOG.md b/packages/commands/CHANGELOG.md index 6f9f441fa00c0..97fb8999300b8 100644 --- a/packages/commands/CHANGELOG.md +++ b/packages/commands/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.26.0 (2024-04-03) + ## 0.25.0 (2024-03-21) ## 0.24.0 (2024-03-06) diff --git a/packages/commands/package.json b/packages/commands/package.json index 88c7319fd2bb0..c3f7d3ead0f46 100644 --- a/packages/commands/package.json +++ b/packages/commands/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/commands", - "version": "0.25.0", + "version": "0.26.0", "description": "Handles the commands menu.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -35,8 +35,7 @@ "@wordpress/keyboard-shortcuts": "file:../keyboard-shortcuts", "@wordpress/private-apis": "file:../private-apis", "classnames": "^2.3.1", - "cmdk": "^0.2.0", - "rememo": "^4.0.2" + "cmdk": "^0.2.0" }, "peerDependencies": { "react": "^18.0.0", diff --git a/packages/commands/src/store/selectors.js b/packages/commands/src/store/selectors.js index 426151464131a..69646c479d506 100644 --- a/packages/commands/src/store/selectors.js +++ b/packages/commands/src/store/selectors.js @@ -1,7 +1,7 @@ /** - * External dependencies + * WordPress dependencies */ -import createSelector from 'rememo'; +import { createSelector } from '@wordpress/data'; /** * Returns the registered static commands. diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index 4f031708c649a..0717a162cdfa0 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -6,6 +6,8 @@ - `ExternalLink`: Use unicode arrow instead of svg icon ([#60255](https://github.com/WordPress/gutenberg/pull/60255)). +## 27.3.0 (2024-04-03) + ### Bug Fix - `Dropdown`: Fix bug with separator styling. ([#60336](https://github.com/WordPress/gutenberg/pull/60336)). diff --git a/packages/components/README.md b/packages/components/README.md index f3e4399fe3d51..df92e8db57be4 100644 --- a/packages/components/README.md +++ b/packages/components/README.md @@ -57,6 +57,19 @@ const Example = () => { }; ``` +### TypeScript + +This package exposes its own types for the components it exports, however it doesn't export its own types for component props. If you need to extract the props type, please use `React.ComponentProps` to get the types from the element. + +```tsx +import type { ComponentProps } from 'react'; +import { Button } from '@wordpress/components'; + +export default function MyButton( props: ComponentProps< typeof Button > ) { + return ; +} +``` + ## Docs & examples You can browse the components docs and examples at [https://wordpress.github.io/gutenberg/](https://wordpress.github.io/gutenberg/) diff --git a/packages/components/package.json b/packages/components/package.json index 138c409e2e10b..188e214e79bd4 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/components", - "version": "27.2.0", + "version": "27.3.0", "description": "UI components for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/components/src/mobile/bottom-sheet-select-control/index.native.js b/packages/components/src/mobile/bottom-sheet-select-control/index.native.js index 91883384d616f..8c3a29b85453d 100644 --- a/packages/components/src/mobile/bottom-sheet-select-control/index.native.js +++ b/packages/components/src/mobile/bottom-sheet-select-control/index.native.js @@ -16,6 +16,10 @@ import { BottomSheet } from '@wordpress/components'; */ import styles from './style.scss'; +const EMPTY_OPTION = { + label: '', +}; + const BottomSheetSelectControl = ( { label, icon, @@ -34,9 +38,9 @@ const BottomSheetSelectControl = ( { }; }; - const selectedOption = items.find( - ( option ) => option.value === selectedValue - ); + const selectedOption = + items.find( ( option ) => option.value === selectedValue ) ?? + EMPTY_OPTION; const goBack = () => { setShowSubSheet( false ); diff --git a/packages/components/src/snackbar/index.tsx b/packages/components/src/snackbar/index.tsx index c7a5a046a5e92..73f9d9d71a3b1 100644 --- a/packages/components/src/snackbar/index.tsx +++ b/packages/components/src/snackbar/index.tsx @@ -168,7 +168,7 @@ function UnforwardedSnackbar( { explicitDismiss && ( } State */ diff --git a/packages/data/src/test/registry-selectors.js b/packages/data/src/test/registry-selectors.js index edcadef8356c6..b9e8e61a90a64 100644 --- a/packages/data/src/test/registry-selectors.js +++ b/packages/data/src/test/registry-selectors.js @@ -1,13 +1,9 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * Internal dependencies */ import { createRegistry } from '../registry'; import { createRegistrySelector } from '../factory'; +import { createSelector } from '..'; import createReduxStore from '../redux-store'; const getElementCount = createRegistrySelector( ( select ) => () => { diff --git a/packages/dataviews/CHANGELOG.md b/packages/dataviews/CHANGELOG.md index 5ac7c2adbab91..3fbb7a27319a2 100644 --- a/packages/dataviews/CHANGELOG.md +++ b/packages/dataviews/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +### Breaking changes + +- Removed the `onDetailsChange` event only available for the list layout. We are looking into adding actions to the list layout, including primary ones. + +## 0.9.0 (2024-04-03) + ### Enhancement - The `enumeration` type has been removed and we'll introduce new field types soon. The existing filters will still work as before given they checked for field.elements, which is still a condition filters should have. diff --git a/packages/dataviews/README.md b/packages/dataviews/README.md index efe7a8d3be8b5..59d5b5306a60d 100644 --- a/packages/dataviews/README.md +++ b/packages/dataviews/README.md @@ -283,10 +283,6 @@ Whether the items should be rendered asynchronously. Useful when there's a field Callback that signals the user selected one of more items, and takes them as parameter. So far, only the `list` view implements it. -### `onDetailsChange`: `function` - -Callback that signals the user triggered the details for one of more items, and takes them as paremeter. So far, only the `list` view implements it. - ## Types ### Layouts diff --git a/packages/dataviews/package.json b/packages/dataviews/package.json index e7e68de1a548f..cb89d15f78738 100644 --- a/packages/dataviews/package.json +++ b/packages/dataviews/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dataviews", - "version": "0.8.0", + "version": "0.9.0", "description": "DataViews is a component that provides an API to render datasets using different types of layouts (table, grid, list, etc.).", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/dataviews/src/dataviews.js b/packages/dataviews/src/dataviews.js index 8b7d3f4819c8f..7e9a9482eec5a 100644 --- a/packages/dataviews/src/dataviews.js +++ b/packages/dataviews/src/dataviews.js @@ -41,7 +41,6 @@ export default function DataViews( { paginationInfo, supportedLayouts, onSelectionChange = defaultOnSelectionChange, - onDetailsChange = null, deferredRendering = false, } ) { const [ selection, setSelection ] = useState( [] ); @@ -136,7 +135,6 @@ export default function DataViews( { getItemId={ getItemId } isLoading={ isLoading } onSelectionChange={ onSetSelection } - onDetailsChange={ onDetailsChange } selection={ selection } deferredRendering={ deferredRendering } setOpenedFilter={ setOpenedFilter } diff --git a/packages/dataviews/src/style.scss b/packages/dataviews/src/style.scss index 92a096384dc19..127a3182ba95b 100644 --- a/packages/dataviews/src/style.scss +++ b/packages/dataviews/src/style.scss @@ -492,26 +492,6 @@ justify-content: space-between; } - .dataviews-view-list__details-button { - align-self: center; - opacity: 0; - } - - li.is-selected, - li:hover, - li:focus-within { - .dataviews-view-list__details-button { - opacity: 1; - } - } - - li.is-selected { - .dataviews-view-list__details-button { - &:focus { - box-shadow: 0 0 0 var(--wp-admin-border-width-focus) currentColor; - } - } - } } .dataviews-action-modal { diff --git a/packages/dataviews/src/view-list.js b/packages/dataviews/src/view-list.js index 7d4b322579a54..2fdff99574758 100644 --- a/packages/dataviews/src/view-list.js +++ b/packages/dataviews/src/view-list.js @@ -11,12 +11,10 @@ import { __experimentalHStack as HStack, __experimentalVStack as VStack, privateApis as componentsPrivateApis, - Button, Spinner, VisuallyHidden, } from '@wordpress/components'; import { useCallback, useEffect, useRef } from '@wordpress/element'; -import { info } from '@wordpress/icons'; import { __ } from '@wordpress/i18n'; /** @@ -36,7 +34,6 @@ function ListItem( { item, isSelected, onSelect, - onDetailsChange, mediaField, primaryField, visibleFields, @@ -118,18 +115,6 @@ function ListItem( { - { onDetailsChange && ( -
- } - className="dataviews-view-list__details-button" - onClick={ () => onDetailsChange( [ item ] ) } - icon={ info } - label={ __( 'View details' ) } - size="compact" - /> -
- ) } ); @@ -142,7 +127,6 @@ export default function ViewList( { isLoading, getItemId, onSelectionChange, - onDetailsChange, selection, deferredRendering, id: preferredId, @@ -215,7 +199,6 @@ export default function ViewList( { item={ item } isSelected={ item === selectedItem } onSelect={ onSelect } - onDetailsChange={ onDetailsChange } mediaField={ mediaField } primaryField={ primaryField } visibleFields={ visibleFields } diff --git a/packages/date/CHANGELOG.md b/packages/date/CHANGELOG.md index faefed7ca326b..9c3f87fc47b90 100644 --- a/packages/date/CHANGELOG.md +++ b/packages/date/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/date/package.json b/packages/date/package.json index 295e86eee2c7a..bb8e2b093d5fd 100644 --- a/packages/date/package.json +++ b/packages/date/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/date", - "version": "4.54.0", + "version": "4.55.0", "description": "Date module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/dependency-extraction-webpack-plugin/CHANGELOG.md b/packages/dependency-extraction-webpack-plugin/CHANGELOG.md index caaac3e235a8c..d40214548c691 100644 --- a/packages/dependency-extraction-webpack-plugin/CHANGELOG.md +++ b/packages/dependency-extraction-webpack-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.6.0 (2024-04-03) + ## 5.5.0 (2024-03-21) ## 5.4.0 (2024-03-06) diff --git a/packages/dependency-extraction-webpack-plugin/package.json b/packages/dependency-extraction-webpack-plugin/package.json index 8cb7fbd789296..b3d80de66cbb0 100644 --- a/packages/dependency-extraction-webpack-plugin/package.json +++ b/packages/dependency-extraction-webpack-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dependency-extraction-webpack-plugin", - "version": "5.5.0", + "version": "5.6.0", "description": "Extract WordPress script dependencies from webpack bundles.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/deprecated/CHANGELOG.md b/packages/deprecated/CHANGELOG.md index 9593fcba15b13..dd2e5c5f1e603 100644 --- a/packages/deprecated/CHANGELOG.md +++ b/packages/deprecated/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/deprecated/package.json b/packages/deprecated/package.json index 866e4060f0e6d..8dcf5a7f46155 100644 --- a/packages/deprecated/package.json +++ b/packages/deprecated/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/deprecated", - "version": "3.54.0", + "version": "3.55.0", "description": "Deprecation utility for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/docgen/CHANGELOG.md b/packages/docgen/CHANGELOG.md index 53fc62d7ba236..3f6bffe41b839 100644 --- a/packages/docgen/CHANGELOG.md +++ b/packages/docgen/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.64.0 (2024-04-03) + ## 1.63.0 (2024-03-21) ## 1.62.0 (2024-03-06) diff --git a/packages/docgen/package.json b/packages/docgen/package.json index 5dae56fdbb710..ea6c2352b45ad 100644 --- a/packages/docgen/package.json +++ b/packages/docgen/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/docgen", - "version": "1.63.0", + "version": "1.64.0", "description": "Autogenerate public API documentation from exports and JSDoc comments.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/dom-ready/CHANGELOG.md b/packages/dom-ready/CHANGELOG.md index 46e9ac58be96e..90867e2c69d0e 100644 --- a/packages/dom-ready/CHANGELOG.md +++ b/packages/dom-ready/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/dom-ready/package.json b/packages/dom-ready/package.json index fb05972660ecb..2dcaaca29d72c 100644 --- a/packages/dom-ready/package.json +++ b/packages/dom-ready/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dom-ready", - "version": "3.54.0", + "version": "3.55.0", "description": "Execute callback after the DOM is loaded.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/dom/CHANGELOG.md b/packages/dom/CHANGELOG.md index 27f08a230a746..c35332bd7196a 100644 --- a/packages/dom/CHANGELOG.md +++ b/packages/dom/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + - fix return types of `focus.tabbable` methods to be `HTMLElement` instead of `Element`. ## 3.54.0 (2024-03-21) diff --git a/packages/dom/package.json b/packages/dom/package.json index df55ae17de7c3..fc96b5eec383e 100644 --- a/packages/dom/package.json +++ b/packages/dom/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dom", - "version": "3.54.0", + "version": "3.55.0", "description": "DOM utilities module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/e2e-test-utils-playwright/CHANGELOG.md b/packages/e2e-test-utils-playwright/CHANGELOG.md index 35905303a6722..19fe80aa4f749 100644 --- a/packages/e2e-test-utils-playwright/CHANGELOG.md +++ b/packages/e2e-test-utils-playwright/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.23.0 (2024-04-03) + ## 0.22.0 (2024-03-21) ## 0.21.0 (2024-03-06) diff --git a/packages/e2e-test-utils-playwright/package.json b/packages/e2e-test-utils-playwright/package.json index d2a09fae68031..22cdf228b407b 100644 --- a/packages/e2e-test-utils-playwright/package.json +++ b/packages/e2e-test-utils-playwright/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/e2e-test-utils-playwright", - "version": "0.22.0", + "version": "0.23.0", "description": "End-To-End (E2E) test utils for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/e2e-test-utils/CHANGELOG.md b/packages/e2e-test-utils/CHANGELOG.md index 6e22d32b71529..3a7b47f9d7e72 100644 --- a/packages/e2e-test-utils/CHANGELOG.md +++ b/packages/e2e-test-utils/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 10.26.0 (2024-04-03) + ## 10.25.0 (2024-03-21) ## 10.24.0 (2024-03-06) diff --git a/packages/e2e-test-utils/package.json b/packages/e2e-test-utils/package.json index 4d2d044798a4d..ead20fee3fd2c 100644 --- a/packages/e2e-test-utils/package.json +++ b/packages/e2e-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/e2e-test-utils", - "version": "10.25.0", + "version": "10.26.0", "description": "End-To-End (E2E) test utils for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/e2e-tests/CHANGELOG.md b/packages/e2e-tests/CHANGELOG.md index 9d7f29e62d0be..7ab7c2c20bf55 100644 --- a/packages/e2e-tests/CHANGELOG.md +++ b/packages/e2e-tests/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.26.0 (2024-04-03) + ## 7.25.0 (2024-03-21) ## 7.24.0 (2024-03-06) diff --git a/packages/e2e-tests/package.json b/packages/e2e-tests/package.json index 69f3312655cab..85ffb990cc260 100644 --- a/packages/e2e-tests/package.json +++ b/packages/e2e-tests/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/e2e-tests", - "version": "7.25.0", + "version": "7.26.0", "description": "End-To-End (E2E) tests for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/edit-post/CHANGELOG.md b/packages/edit-post/CHANGELOG.md index cb9c3aa7df32d..ca044bea78139 100644 --- a/packages/edit-post/CHANGELOG.md +++ b/packages/edit-post/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.32.0 (2024-04-03) + ## 7.31.0 (2024-03-21) ## 7.30.0 (2024-03-06) diff --git a/packages/edit-post/package.json b/packages/edit-post/package.json index 5d8e6efec03cf..2de988fa00d6c 100644 --- a/packages/edit-post/package.json +++ b/packages/edit-post/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/edit-post", - "version": "7.31.0", + "version": "7.32.0", "description": "Edit Post module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -58,8 +58,7 @@ "@wordpress/warning": "file:../warning", "@wordpress/widgets": "file:../widgets", "classnames": "^2.3.1", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" }, "peerDependencies": { "react": "^18.0.0", diff --git a/packages/edit-post/src/store/selectors.js b/packages/edit-post/src/store/selectors.js index af22848dd1b9d..7110750c2034d 100644 --- a/packages/edit-post/src/store/selectors.js +++ b/packages/edit-post/src/store/selectors.js @@ -1,12 +1,7 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ -import { createRegistrySelector } from '@wordpress/data'; +import { createSelector, createRegistrySelector } from '@wordpress/data'; import { store as interfaceStore } from '@wordpress/interface'; import { store as preferencesStore } from '@wordpress/preferences'; import { store as coreStore } from '@wordpress/core-data'; diff --git a/packages/edit-site/CHANGELOG.md b/packages/edit-site/CHANGELOG.md index b8f8fa68623bf..d49faa82e2e01 100644 --- a/packages/edit-site/CHANGELOG.md +++ b/packages/edit-site/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.32.0 (2024-04-03) + ## 5.31.0 (2024-03-21) ## 5.30.0 (2024-03-06) diff --git a/packages/edit-site/package.json b/packages/edit-site/package.json index c467435407d82..9834d63b7f3f0 100644 --- a/packages/edit-site/package.json +++ b/packages/edit-site/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/edit-site", - "version": "5.31.0", + "version": "5.32.0", "description": "Edit Site Page module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -27,6 +27,7 @@ "react-native": "src/index", "dependencies": { "@babel/runtime": "^7.16.0", + "@react-spring/web": "^9.4.5", "@wordpress/a11y": "file:../a11y", "@wordpress/api-fetch": "file:../api-fetch", "@wordpress/blob": "file:../blob", @@ -75,8 +76,7 @@ "fast-deep-equal": "^3.1.3", "is-plain-object": "^5.0.0", "memize": "^2.1.0", - "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2" + "react-autosize-textarea": "^7.1.0" }, "peerDependencies": { "react": "^18.0.0", diff --git a/packages/edit-site/src/components/layout/animation.js b/packages/edit-site/src/components/layout/animation.js new file mode 100644 index 0000000000000..6de490cf9852f --- /dev/null +++ b/packages/edit-site/src/components/layout/animation.js @@ -0,0 +1,122 @@ +/** + * External dependencies + */ +import { Controller } from '@react-spring/web'; + +/** + * WordPress dependencies + */ +import { useLayoutEffect, useMemo, useRef } from '@wordpress/element'; + +function getAbsolutePosition( element ) { + return { + top: element.offsetTop, + left: element.offsetLeft, + }; +} + +const ANIMATION_DURATION = 300; + +/** + * Hook used to compute the styles required to move a div into a new position. + * + * The way this animation works is the following: + * - It first renders the element as if there was no animation. + * - It takes a snapshot of the position of the block to use it + * as a destination point for the animation. + * - It restores the element to the previous position using a CSS transform + * - It uses the "resetAnimation" flag to reset the animation + * from the beginning in order to animate to the new destination point. + * + * @param {Object} $1 Options + * @param {*} $1.triggerAnimationOnChange Variable used to trigger the animation if it changes. + */ +function useMovingAnimation( { triggerAnimationOnChange } ) { + const ref = useRef(); + + // Whenever the trigger changes, we need to take a snapshot of the current + // position of the block to use it as a destination point for the animation. + const { previous, prevRect } = useMemo( + () => ( { + previous: ref.current && getAbsolutePosition( ref.current ), + prevRect: ref.current && ref.current.getBoundingClientRect(), + } ), + // eslint-disable-next-line react-hooks/exhaustive-deps + [ triggerAnimationOnChange ] + ); + + useLayoutEffect( () => { + if ( ! previous || ! ref.current ) { + return; + } + + // We disable the animation if the user has a preference for reduced + // motion. + const disableAnimation = window.matchMedia( + '(prefers-reduced-motion: reduce)' + ).matches; + + if ( disableAnimation ) { + return; + } + + const controller = new Controller( { + x: 0, + y: 0, + width: prevRect.width, + height: prevRect.height, + config: { duration: ANIMATION_DURATION }, + onChange( { value } ) { + if ( ! ref.current ) { + return; + } + let { x, y, width, height } = value; + x = Math.round( x ); + y = Math.round( y ); + width = Math.round( width ); + height = Math.round( height ); + const finishedMoving = x === 0 && y === 0; + ref.current.style.transformOrigin = 'center center'; + ref.current.style.transform = finishedMoving + ? null // Set to `null` to explicitly remove the transform. + : `translate3d(${ x }px,${ y }px,0)`; + ref.current.style.width = finishedMoving + ? null + : `${ width }px`; + ref.current.style.height = finishedMoving + ? null + : `${ height }px`; + }, + } ); + + ref.current.style.transform = undefined; + const destination = ref.current.getBoundingClientRect(); + + const x = Math.round( prevRect.left - destination.left ); + const y = Math.round( prevRect.top - destination.top ); + const width = destination.width; + const height = destination.height; + + controller.start( { + x: 0, + y: 0, + width, + height, + from: { x, y, width: prevRect.width, height: prevRect.height }, + } ); + + return () => { + controller.stop(); + controller.set( { + x: 0, + y: 0, + width: prevRect.width, + height: prevRect.height, + } ); + }; + }, [ previous, prevRect ] ); + + return ref; +} + +export default useMovingAnimation; diff --git a/packages/edit-site/src/components/layout/index.js b/packages/edit-site/src/components/layout/index.js index d15be016173b0..d95f9d597db43 100644 --- a/packages/edit-site/src/components/layout/index.js +++ b/packages/edit-site/src/components/layout/index.js @@ -51,12 +51,13 @@ import { useCommonCommands } from '../../hooks/commands/use-common-commands'; import { useEditModeCommands } from '../../hooks/commands/use-edit-mode-commands'; import { useIsSiteEditorLoading } from './hooks'; import useLayoutAreas from './router'; +import useMovingAnimation from './animation'; const { useCommands } = unlock( coreCommandsPrivateApis ); const { useCommandContext } = unlock( commandsPrivateApis ); const { useGlobalStyle } = unlock( blockEditorPrivateApis ); -const ANIMATION_DURATION = 0.5; +const ANIMATION_DURATION = 0.3; export default function Layout() { // This ensures the edited entity id and type are initialized properly. @@ -114,7 +115,10 @@ export default function Layout() { const isEditorLoading = useIsSiteEditorLoading(); const [ isResizableFrameOversized, setIsResizableFrameOversized ] = useState( false ); - const { areas, widths } = useLayoutAreas(); + const { key: routeKey, areas, widths } = useLayoutAreas(); + const animationRef = useMovingAnimation( { + triggerAnimationOnChange: canvasMode + '__' + routeKey, + } ); // This determines which animation variant should apply to the header. // There is also a `isDistractionFreeHovering` state that gets priority @@ -239,7 +243,9 @@ export default function Layout() { } } transition={ { type: 'tween', - duration: disableMotion ? 0 : 0.2, + duration: disableMotion + ? 0 + : ANIMATION_DURATION, ease: 'easeOut', } } > @@ -315,22 +321,7 @@ export default function Layout() {
{ canvasResizer } { !! canvasSize.width && ( - - +
) } ) } diff --git a/packages/edit-site/src/components/layout/router.js b/packages/edit-site/src/components/layout/router.js index b137963fc0053..2b783ce895927 100644 --- a/packages/edit-site/src/components/layout/router.js +++ b/packages/edit-site/src/components/layout/router.js @@ -33,6 +33,7 @@ export default function useLayoutAreas() { if ( path === '/page' ) { const isListLayout = layout === 'list' || ! layout; return { + key: 'pages-list', areas: { content: , preview: isListLayout && ( @@ -62,6 +63,7 @@ export default function useLayoutAreas() { // Regular other post types if ( postType && postId ) { return { + key: 'page', areas: { preview: , mobile: @@ -76,6 +78,7 @@ export default function useLayoutAreas() { if ( path === '/wp_template' ) { const isListLayout = isCustom !== 'true' && layout === 'list'; return { + key: 'templates-list', areas: { content: ( , mobile: , @@ -134,6 +139,7 @@ export default function useLayoutAreas() { // Fallback shows the home page preview return { + key: 'default', areas: { preview: , mobile: diff --git a/packages/edit-site/src/components/layout/style.scss b/packages/edit-site/src/components/layout/style.scss index ad33768989a81..ede76dba5390a 100644 --- a/packages/edit-site/src/components/layout/style.scss +++ b/packages/edit-site/src/components/layout/style.scss @@ -93,6 +93,8 @@ position: relative; flex-grow: 1; z-index: z-index(".edit-site-layout__canvas-container"); + // When animating the frame size can exceed its container size. + overflow: visible; &.is-resizing::after { // This covers the whole content which ensures mouse up triggers diff --git a/packages/edit-site/src/components/page-patterns/use-patterns.js b/packages/edit-site/src/components/page-patterns/use-patterns.js index 606ac59a02d98..b16fddbf81034 100644 --- a/packages/edit-site/src/components/page-patterns/use-patterns.js +++ b/packages/edit-site/src/components/page-patterns/use-patterns.js @@ -1,13 +1,8 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ import { parse } from '@wordpress/blocks'; -import { useSelect } from '@wordpress/data'; +import { useSelect, createSelector } from '@wordpress/data'; import { store as coreStore } from '@wordpress/core-data'; import { store as editorStore } from '@wordpress/editor'; import { decodeEntities } from '@wordpress/html-entities'; diff --git a/packages/edit-site/src/components/sidebar-dataviews/default-views.js b/packages/edit-site/src/components/sidebar-dataviews/default-views.js index 2240b6bf76b5b..7610adb006509 100644 --- a/packages/edit-site/src/components/sidebar-dataviews/default-views.js +++ b/packages/edit-site/src/components/sidebar-dataviews/default-views.js @@ -42,7 +42,7 @@ const DEFAULT_PAGE_BASE = { // better to keep track of the hidden ones. hiddenFields: [ 'date', 'featured-image' ], layout: { - ...DEFAULT_CONFIG_PER_VIEW_TYPE[ LAYOUT_TABLE ], + ...DEFAULT_CONFIG_PER_VIEW_TYPE[ LAYOUT_LIST ], }, }; diff --git a/packages/edit-widgets/CHANGELOG.md b/packages/edit-widgets/CHANGELOG.md index c761d542ca2ac..570cbeebc3d7a 100644 --- a/packages/edit-widgets/CHANGELOG.md +++ b/packages/edit-widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.32.0 (2024-04-03) + ## 5.31.0 (2024-03-21) ## 5.30.0 (2024-03-06) diff --git a/packages/edit-widgets/package.json b/packages/edit-widgets/package.json index ad28183151cae..ad69c29b26af2 100644 --- a/packages/edit-widgets/package.json +++ b/packages/edit-widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/edit-widgets", - "version": "5.31.0", + "version": "5.32.0", "description": "Widgets Page module for WordPress..", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -53,8 +53,7 @@ "@wordpress/reusable-blocks": "file:../reusable-blocks", "@wordpress/url": "file:../url", "@wordpress/widgets": "file:../widgets", - "classnames": "^2.3.1", - "rememo": "^4.0.2" + "classnames": "^2.3.1" }, "peerDependencies": { "react": "^18.0.0", diff --git a/packages/editor/CHANGELOG.md b/packages/editor/CHANGELOG.md index 71ef77165bd27..3ab47ec1ebbf8 100644 --- a/packages/editor/CHANGELOG.md +++ b/packages/editor/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 13.32.0 (2024-04-03) + ## 13.31.0 (2024-03-21) ## 13.30.0 (2024-03-06) diff --git a/packages/editor/package.json b/packages/editor/package.json index 7e34872964801..09fef01dea30c 100644 --- a/packages/editor/package.json +++ b/packages/editor/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/editor", - "version": "13.31.0", + "version": "13.32.0", "description": "Enhanced block editor for WordPress posts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -67,7 +67,6 @@ "date-fns": "^3.6.0", "memize": "^2.1.0", "react-autosize-textarea": "^7.1.0", - "rememo": "^4.0.2", "remove-accents": "^0.5.0" }, "peerDependencies": { diff --git a/packages/editor/src/components/post-trash/check.js b/packages/editor/src/components/post-trash/check.js index ecc0d63c9436b..b86cdf2e3d4d7 100644 --- a/packages/editor/src/components/post-trash/check.js +++ b/packages/editor/src/components/post-trash/check.js @@ -1,7 +1,7 @@ /** * WordPress dependencies */ -import { withSelect } from '@wordpress/data'; +import { useSelect } from '@wordpress/data'; import { store as coreStore } from '@wordpress/core-data'; /** @@ -9,26 +9,26 @@ import { store as coreStore } from '@wordpress/core-data'; */ import { store as editorStore } from '../../store'; -function PostTrashCheck( { isNew, postId, canUserDelete, children } ) { - if ( isNew || ! postId || ! canUserDelete ) { +export default function PostTrashCheck( { children } ) { + const { canTrashPost } = useSelect( ( select ) => { + const { isEditedPostNew, getCurrentPostId, getCurrentPostType } = + select( editorStore ); + const { getPostType, canUser } = select( coreStore ); + const postType = getPostType( getCurrentPostType() ); + const postId = getCurrentPostId(); + const isNew = isEditedPostNew(); + const resource = postType?.rest_base || ''; // eslint-disable-line camelcase + const canUserDelete = + postId && resource ? canUser( 'delete', resource, postId ) : false; + + return { + canTrashPost: ( ! isNew || postId ) && canUserDelete, + }; + }, [] ); + + if ( ! canTrashPost ) { return null; } return children; } - -export default withSelect( ( select ) => { - const { isEditedPostNew, getCurrentPostId, getCurrentPostType } = - select( editorStore ); - const { getPostType, canUser } = select( coreStore ); - const postId = getCurrentPostId(); - const postType = getPostType( getCurrentPostType() ); - const resource = postType?.rest_base || ''; // eslint-disable-line camelcase - - return { - isNew: isEditedPostNew(), - postId, - canUserDelete: - postId && resource ? canUser( 'delete', resource, postId ) : false, - }; -} )( PostTrashCheck ); diff --git a/packages/editor/src/components/template-validation-notice/index.js b/packages/editor/src/components/template-validation-notice/index.js index 64e2227e30feb..4aa1faac4bd9c 100644 --- a/packages/editor/src/components/template-validation-notice/index.js +++ b/packages/editor/src/components/template-validation-notice/index.js @@ -1,63 +1,61 @@ /** * WordPress dependencies */ -import { Notice } from '@wordpress/components'; +import { + Notice, + __experimentalConfirmDialog as ConfirmDialog, +} from '@wordpress/components'; import { __ } from '@wordpress/i18n'; -import { withSelect, withDispatch } from '@wordpress/data'; -import { compose } from '@wordpress/compose'; +import { useDispatch, useSelect } from '@wordpress/data'; +import { useState } from '@wordpress/element'; import { store as blockEditorStore } from '@wordpress/block-editor'; -function TemplateValidationNotice( { isValid, ...props } ) { +export default function TemplateValidationNotice() { + const [ showConfirmDialog, setShowConfirmDialog ] = useState( false ); + const isValid = useSelect( ( select ) => { + return select( blockEditorStore ).isValidTemplate(); + }, [] ); + const { setTemplateValidity, synchronizeTemplate } = + useDispatch( blockEditorStore ); + if ( isValid ) { return null; } - const confirmSynchronization = () => { - if ( - // eslint-disable-next-line no-alert - window.confirm( - __( - 'Resetting the template may result in loss of content, do you want to continue?' - ) - ) - ) { - props.synchronizeTemplate(); - } - }; - return ( - - { __( - 'The content of your post doesn’t match the template assigned to your post type.' - ) } - + <> + setTemplateValidity( true ), + }, + { + label: __( 'Reset the template' ), + onClick: () => setShowConfirmDialog( true ), + }, + ] } + > + { __( + 'The content of your post doesn’t match the template assigned to your post type.' + ) } + + { + setShowConfirmDialog( false ); + synchronizeTemplate(); + } } + onCancel={ () => setShowConfirmDialog( false ) } + > + { __( + 'Resetting the template may result in loss of content, do you want to continue?' + ) } + + ); } - -export default compose( [ - withSelect( ( select ) => ( { - isValid: select( blockEditorStore ).isValidTemplate(), - } ) ), - withDispatch( ( dispatch ) => { - const { setTemplateValidity, synchronizeTemplate } = - dispatch( blockEditorStore ); - return { - resetTemplateValidity: () => setTemplateValidity( true ), - synchronizeTemplate, - }; - } ), -] )( TemplateValidationNotice ); diff --git a/packages/editor/src/components/template-validation-notice/style.scss b/packages/editor/src/components/template-validation-notice/style.scss deleted file mode 100644 index dde63f7e36b14..0000000000000 --- a/packages/editor/src/components/template-validation-notice/style.scss +++ /dev/null @@ -1,9 +0,0 @@ -.editor-template-validation-notice { - display: flex; - justify-content: space-between; - align-items: center; - - .components-button { - margin-left: 5px; - } -} diff --git a/packages/editor/src/store/private-selectors.js b/packages/editor/src/store/private-selectors.js index 0dc802e34394e..5abd72f13713b 100644 --- a/packages/editor/src/store/private-selectors.js +++ b/packages/editor/src/store/private-selectors.js @@ -1,13 +1,8 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ import { store as blockEditorStore } from '@wordpress/block-editor'; -import { createRegistrySelector } from '@wordpress/data'; +import { createSelector, createRegistrySelector } from '@wordpress/data'; import { layout, symbol, diff --git a/packages/editor/src/store/selectors.js b/packages/editor/src/store/selectors.js index 80761f3c7b2c7..d5848ed8f08e9 100644 --- a/packages/editor/src/store/selectors.js +++ b/packages/editor/src/store/selectors.js @@ -1,8 +1,3 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ @@ -14,7 +9,7 @@ import { } from '@wordpress/blocks'; import { isInTheFuture, getDate } from '@wordpress/date'; import { addQueryArgs, cleanForSlug } from '@wordpress/url'; -import { createRegistrySelector } from '@wordpress/data'; +import { createSelector, createRegistrySelector } from '@wordpress/data'; import deprecated from '@wordpress/deprecated'; import { Platform } from '@wordpress/element'; import { layout } from '@wordpress/icons'; diff --git a/packages/editor/src/style.scss b/packages/editor/src/style.scss index f0593f4bee268..fd8f5821392c6 100644 --- a/packages/editor/src/style.scss +++ b/packages/editor/src/style.scss @@ -31,4 +31,3 @@ @import "./components/preview-dropdown/style.scss"; @import "./components/table-of-contents/style.scss"; @import "./components/template-areas/style.scss"; -@import "./components/template-validation-notice/style.scss"; diff --git a/packages/element/CHANGELOG.md b/packages/element/CHANGELOG.md index 9051a38f5935f..9f550034ac18e 100644 --- a/packages/element/CHANGELOG.md +++ b/packages/element/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.32.0 (2024-04-03) + ## 5.31.0 (2024-03-21) ## 5.30.0 (2024-03-06) diff --git a/packages/element/package.json b/packages/element/package.json index 3d33fcd0e7f7b..7ff8337e40fbf 100644 --- a/packages/element/package.json +++ b/packages/element/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/element", - "version": "5.31.0", + "version": "5.32.0", "description": "Element React module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/env/CHANGELOG.md b/packages/env/CHANGELOG.md index d0ba0d764ba40..2d7f8021e74b2 100644 --- a/packages/env/CHANGELOG.md +++ b/packages/env/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.7.0 (2024-04-03) + ## 9.6.0 (2024-03-21) ## 9.5.0 (2024-03-06) diff --git a/packages/env/package.json b/packages/env/package.json index ebefbdc7702a5..8ec27779f8a1c 100644 --- a/packages/env/package.json +++ b/packages/env/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/env", - "version": "9.6.0", + "version": "9.7.0", "description": "A zero-config, self contained local WordPress environment for development and testing.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/escape-html/CHANGELOG.md b/packages/escape-html/CHANGELOG.md index a6a2cb7442c90..f787e7786d981 100644 --- a/packages/escape-html/CHANGELOG.md +++ b/packages/escape-html/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.55.0 (2024-04-03) + ## 2.54.0 (2024-03-21) ## 2.53.0 (2024-03-06) diff --git a/packages/escape-html/package.json b/packages/escape-html/package.json index 4a0b22fe7d5c5..e17a058b7a6ee 100644 --- a/packages/escape-html/package.json +++ b/packages/escape-html/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/escape-html", - "version": "2.54.0", + "version": "2.55.0", "description": "Escape HTML utils.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/eslint-plugin/CHANGELOG.md b/packages/eslint-plugin/CHANGELOG.md index 84a16bb1d115a..9c664cded072d 100644 --- a/packages/eslint-plugin/CHANGELOG.md +++ b/packages/eslint-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 17.12.0 (2024-04-03) + ## 17.11.0 (2024-03-21) ## 17.10.0 (2024-03-06) diff --git a/packages/eslint-plugin/package.json b/packages/eslint-plugin/package.json index 6a5d92d07034f..f0d39009fd662 100644 --- a/packages/eslint-plugin/package.json +++ b/packages/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/eslint-plugin", - "version": "17.11.0", + "version": "17.12.0", "description": "ESLint plugin for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/format-library/CHANGELOG.md b/packages/format-library/CHANGELOG.md index 648d3345a5559..504e4bca51527 100644 --- a/packages/format-library/CHANGELOG.md +++ b/packages/format-library/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/format-library/package.json b/packages/format-library/package.json index 7c50c822ee4c4..46caea9c00b41 100644 --- a/packages/format-library/package.json +++ b/packages/format-library/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/format-library", - "version": "4.31.0", + "version": "4.32.0", "description": "Format library for the WordPress editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/hooks/CHANGELOG.md b/packages/hooks/CHANGELOG.md index 090edd1e2c150..7c184927d3bd8 100644 --- a/packages/hooks/CHANGELOG.md +++ b/packages/hooks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/hooks/package.json b/packages/hooks/package.json index 89fb6afd300fe..8455a0fc274ae 100644 --- a/packages/hooks/package.json +++ b/packages/hooks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/hooks", - "version": "3.54.0", + "version": "3.55.0", "description": "WordPress hooks library.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/html-entities/CHANGELOG.md b/packages/html-entities/CHANGELOG.md index a52c7c799d325..f7b0a1d3b362f 100644 --- a/packages/html-entities/CHANGELOG.md +++ b/packages/html-entities/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/html-entities/package.json b/packages/html-entities/package.json index e7f4861fc03b6..daae7f99ee7da 100644 --- a/packages/html-entities/package.json +++ b/packages/html-entities/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/html-entities", - "version": "3.54.0", + "version": "3.55.0", "description": "HTML entity utilities for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/i18n/CHANGELOG.md b/packages/i18n/CHANGELOG.md index 6786d223940e3..0b5b96d6275aa 100644 --- a/packages/i18n/CHANGELOG.md +++ b/packages/i18n/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/i18n/package.json b/packages/i18n/package.json index 6230875619594..ba8a216536791 100644 --- a/packages/i18n/package.json +++ b/packages/i18n/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/i18n", - "version": "4.54.0", + "version": "4.55.0", "description": "WordPress internationalization (i18n) library.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/icons/CHANGELOG.md b/packages/icons/CHANGELOG.md index 3f942aff1d486..59e754bec29cf 100644 --- a/packages/icons/CHANGELOG.md +++ b/packages/icons/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.46.0 (2024-04-03) + ## 9.45.0 (2024-03-21) ## 9.44.0 (2024-03-06) diff --git a/packages/icons/package.json b/packages/icons/package.json index 39a8db99276cc..135bc4e63622d 100644 --- a/packages/icons/package.json +++ b/packages/icons/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/icons", - "version": "9.45.0", + "version": "9.46.0", "description": "WordPress Icons package, based on dashicon.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/interactivity-router/CHANGELOG.md b/packages/interactivity-router/CHANGELOG.md index 6cf208f1edf88..b184b5af56f09 100644 --- a/packages/interactivity-router/CHANGELOG.md +++ b/packages/interactivity-router/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.5.0 (2024-04-03) + ## 1.4.0 (2024-03-21) ## 1.3.0 (2024-03-06) diff --git a/packages/interactivity-router/package.json b/packages/interactivity-router/package.json index e1ba6cc677362..95642c6e4331d 100644 --- a/packages/interactivity-router/package.json +++ b/packages/interactivity-router/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interactivity-router", - "version": "1.4.0", + "version": "1.5.0", "description": "Package that exposes state and actions from the `core/router` store, part of the Interactivity API.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/interactivity/CHANGELOG.md b/packages/interactivity/CHANGELOG.md index 42630b0862c75..7f4dd9296facc 100644 --- a/packages/interactivity/CHANGELOG.md +++ b/packages/interactivity/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.4.0 (2024-04-03) + ## 5.3.0 (2024-03-21) ### Bug Fixes diff --git a/packages/interactivity/package.json b/packages/interactivity/package.json index 155791ec826ca..c65ae931a366e 100644 --- a/packages/interactivity/package.json +++ b/packages/interactivity/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interactivity", - "version": "5.3.0", + "version": "5.4.0", "description": "Package that provides a standard and simple way to handle the frontend interactivity of Gutenberg blocks.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/interface/CHANGELOG.md b/packages/interface/CHANGELOG.md index e880d7331d2a2..785c331ece13f 100644 --- a/packages/interface/CHANGELOG.md +++ b/packages/interface/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.32.0 (2024-04-03) + ## 5.31.0 (2024-03-21) ## 5.30.0 (2024-03-06) diff --git a/packages/interface/package.json b/packages/interface/package.json index 54a5a70d8c3ec..9444ef3a34237 100644 --- a/packages/interface/package.json +++ b/packages/interface/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interface", - "version": "5.31.0", + "version": "5.32.0", "description": "Interface module for WordPress. The package contains shared functionality across the modern JavaScript-based WordPress screens.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/is-shallow-equal/CHANGELOG.md b/packages/is-shallow-equal/CHANGELOG.md index 6606517301267..8f3036556a09f 100644 --- a/packages/is-shallow-equal/CHANGELOG.md +++ b/packages/is-shallow-equal/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/is-shallow-equal/package.json b/packages/is-shallow-equal/package.json index 7f43e79e3cf77..f41f55ec3ed91 100644 --- a/packages/is-shallow-equal/package.json +++ b/packages/is-shallow-equal/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/is-shallow-equal", - "version": "4.54.0", + "version": "4.55.0", "description": "Test for shallow equality between two objects or arrays.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/jest-console/CHANGELOG.md b/packages/jest-console/CHANGELOG.md index 173a94c756964..56f9ea2fa64c9 100644 --- a/packages/jest-console/CHANGELOG.md +++ b/packages/jest-console/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.26.0 (2024-04-03) + ## 7.25.0 (2024-03-21) ## 7.24.0 (2024-03-06) diff --git a/packages/jest-console/package.json b/packages/jest-console/package.json index 10e52780fece9..6cd4805cb9ae9 100644 --- a/packages/jest-console/package.json +++ b/packages/jest-console/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/jest-console", - "version": "7.25.0", + "version": "7.26.0", "description": "Custom Jest matchers for the Console object.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/jest-preset-default/CHANGELOG.md b/packages/jest-preset-default/CHANGELOG.md index 81acd7621b250..cc507b0155648 100644 --- a/packages/jest-preset-default/CHANGELOG.md +++ b/packages/jest-preset-default/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 11.26.0 (2024-04-03) + ## 11.25.0 (2024-03-21) ## 11.24.0 (2024-03-06) diff --git a/packages/jest-preset-default/package.json b/packages/jest-preset-default/package.json index 3e2383ebe0499..cf2543468ee06 100644 --- a/packages/jest-preset-default/package.json +++ b/packages/jest-preset-default/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/jest-preset-default", - "version": "11.25.0", + "version": "11.26.0", "description": "Default Jest preset for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/jest-puppeteer-axe/CHANGELOG.md b/packages/jest-puppeteer-axe/CHANGELOG.md index 9893111d7cfe3..55b46371ef457 100644 --- a/packages/jest-puppeteer-axe/CHANGELOG.md +++ b/packages/jest-puppeteer-axe/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.26.0 (2024-04-03) + ## 6.25.0 (2024-03-21) ## 6.24.0 (2024-03-06) diff --git a/packages/jest-puppeteer-axe/package.json b/packages/jest-puppeteer-axe/package.json index b4845c6b5a60b..a2ad2143d8e4b 100644 --- a/packages/jest-puppeteer-axe/package.json +++ b/packages/jest-puppeteer-axe/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/jest-puppeteer-axe", - "version": "6.25.0", + "version": "6.26.0", "description": "Axe API integration with Jest and Puppeteer.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/keyboard-shortcuts/CHANGELOG.md b/packages/keyboard-shortcuts/CHANGELOG.md index e3ca51c3fc6b7..8e85dac2f56dc 100644 --- a/packages/keyboard-shortcuts/CHANGELOG.md +++ b/packages/keyboard-shortcuts/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/keyboard-shortcuts/package.json b/packages/keyboard-shortcuts/package.json index 2ed8d3ef94426..44e35fa72f62c 100644 --- a/packages/keyboard-shortcuts/package.json +++ b/packages/keyboard-shortcuts/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/keyboard-shortcuts", - "version": "4.31.0", + "version": "4.32.0", "description": "Handling keyboard shortcuts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -28,8 +28,7 @@ "@babel/runtime": "^7.16.0", "@wordpress/data": "file:../data", "@wordpress/element": "file:../element", - "@wordpress/keycodes": "file:../keycodes", - "rememo": "^4.0.2" + "@wordpress/keycodes": "file:../keycodes" }, "peerDependencies": { "react": "^18.0.0" diff --git a/packages/keyboard-shortcuts/src/store/selectors.js b/packages/keyboard-shortcuts/src/store/selectors.js index 2d4f5976247b0..d27bcc9d32ff9 100644 --- a/packages/keyboard-shortcuts/src/store/selectors.js +++ b/packages/keyboard-shortcuts/src/store/selectors.js @@ -1,11 +1,7 @@ -/** - * External dependencies - */ -import createSelector from 'rememo'; - /** * WordPress dependencies */ +import { createSelector } from '@wordpress/data'; import { displayShortcut, shortcutAriaLabel, diff --git a/packages/keycodes/CHANGELOG.md b/packages/keycodes/CHANGELOG.md index dcb0f3e7861a7..0422c3a00d016 100644 --- a/packages/keycodes/CHANGELOG.md +++ b/packages/keycodes/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/keycodes/package.json b/packages/keycodes/package.json index ce93c3c2d2a7e..1b6e9387bca20 100644 --- a/packages/keycodes/package.json +++ b/packages/keycodes/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/keycodes", - "version": "3.54.0", + "version": "3.55.0", "description": "Keycodes utilities for WordPress. Used to check for keyboard events across browsers/operating systems.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/lazy-import/CHANGELOG.md b/packages/lazy-import/CHANGELOG.md index 027c94d881a7a..54991e2279feb 100644 --- a/packages/lazy-import/CHANGELOG.md +++ b/packages/lazy-import/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.42.0 (2024-04-03) + ## 1.41.0 (2024-03-21) ## 1.40.0 (2024-03-06) diff --git a/packages/lazy-import/package.json b/packages/lazy-import/package.json index 3355429775850..3b8eaef59219f 100644 --- a/packages/lazy-import/package.json +++ b/packages/lazy-import/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/lazy-import", - "version": "1.41.0", + "version": "1.42.0", "description": "Lazily import a module, installing it automatically if missing.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/list-reusable-blocks/CHANGELOG.md b/packages/list-reusable-blocks/CHANGELOG.md index dc2a24f523ce6..4c30aad5d7808 100644 --- a/packages/list-reusable-blocks/CHANGELOG.md +++ b/packages/list-reusable-blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/list-reusable-blocks/package.json b/packages/list-reusable-blocks/package.json index e94910ed56713..8177a936be029 100644 --- a/packages/list-reusable-blocks/package.json +++ b/packages/list-reusable-blocks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/list-reusable-blocks", - "version": "4.31.0", + "version": "4.32.0", "description": "Adding Export/Import support to the reusable blocks listing.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/media-utils/CHANGELOG.md b/packages/media-utils/CHANGELOG.md index 04594fd713396..518619ba06125 100644 --- a/packages/media-utils/CHANGELOG.md +++ b/packages/media-utils/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.46.0 (2024-04-03) + ## 4.45.0 (2024-03-21) ## 4.44.0 (2024-03-06) diff --git a/packages/media-utils/package.json b/packages/media-utils/package.json index 8affe9efb2bf4..a60ec6093f41b 100644 --- a/packages/media-utils/package.json +++ b/packages/media-utils/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/media-utils", - "version": "4.45.0", + "version": "4.46.0", "description": "WordPress Media Upload Utils.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/notices/CHANGELOG.md b/packages/notices/CHANGELOG.md index 124dd957d946a..2a9c606f282ca 100644 --- a/packages/notices/CHANGELOG.md +++ b/packages/notices/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.23.0 (2024-04-03) + ## 4.22.0 (2024-03-21) ## 4.21.0 (2024-03-06) diff --git a/packages/notices/package.json b/packages/notices/package.json index 25c280a2c48b2..b6f3fa0afa3fd 100644 --- a/packages/notices/package.json +++ b/packages/notices/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/notices", - "version": "4.22.0", + "version": "4.23.0", "description": "State management for notices.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/npm-package-json-lint-config/CHANGELOG.md b/packages/npm-package-json-lint-config/CHANGELOG.md index 62218ec73b281..d6fb9b8ff9062 100644 --- a/packages/npm-package-json-lint-config/CHANGELOG.md +++ b/packages/npm-package-json-lint-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.40.0 (2024-04-03) + ## 4.39.0 (2024-03-21) ## 4.38.0 (2024-03-06) diff --git a/packages/npm-package-json-lint-config/package.json b/packages/npm-package-json-lint-config/package.json index 81c234cf61743..7a072b1b1bdc9 100644 --- a/packages/npm-package-json-lint-config/package.json +++ b/packages/npm-package-json-lint-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/npm-package-json-lint-config", - "version": "4.39.0", + "version": "4.40.0", "description": "WordPress npm-package-json-lint shareable configuration.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/nux/CHANGELOG.md b/packages/nux/CHANGELOG.md index 35abff89bb8cb..7860edd0d010a 100644 --- a/packages/nux/CHANGELOG.md +++ b/packages/nux/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.17.0 (2024-04-03) + ## 8.16.0 (2024-03-21) ## 8.15.0 (2024-03-06) diff --git a/packages/nux/package.json b/packages/nux/package.json index 2066134fe2519..acc129e6f2c6f 100644 --- a/packages/nux/package.json +++ b/packages/nux/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/nux", - "version": "8.16.0", + "version": "8.17.0", "description": "NUX (New User eXperience) module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -37,8 +37,7 @@ "@wordpress/deprecated": "file:../deprecated", "@wordpress/element": "file:../element", "@wordpress/i18n": "file:../i18n", - "@wordpress/icons": "file:../icons", - "rememo": "^4.0.2" + "@wordpress/icons": "file:../icons" }, "peerDependencies": { "react": "^18.0.0", diff --git a/packages/nux/src/store/selectors.js b/packages/nux/src/store/selectors.js index e87cf688a1ba3..44b2d7321f1f7 100644 --- a/packages/nux/src/store/selectors.js +++ b/packages/nux/src/store/selectors.js @@ -1,7 +1,7 @@ /** - * External dependencies + * WordPress dependencies */ -import createSelector from 'rememo'; +import { createSelector } from '@wordpress/data'; /** * An object containing information about a guide. diff --git a/packages/patterns/CHANGELOG.md b/packages/patterns/CHANGELOG.md index 38d7a41c2f152..bb23c22e67416 100644 --- a/packages/patterns/CHANGELOG.md +++ b/packages/patterns/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.16.0 (2024-04-03) + ## 1.15.0 (2024-03-21) ## 1.14.0 (2024-03-06) diff --git a/packages/patterns/package.json b/packages/patterns/package.json index 19edc4df3fb80..1aafdab5fece4 100644 --- a/packages/patterns/package.json +++ b/packages/patterns/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/patterns", - "version": "1.15.0", + "version": "1.16.0", "description": "Management of user pattern editing.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/plugins/CHANGELOG.md b/packages/plugins/CHANGELOG.md index 2b731e80cfcc6..0a828779a8d58 100644 --- a/packages/plugins/CHANGELOG.md +++ b/packages/plugins/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.23.0 (2024-04-03) + ## 6.22.0 (2024-03-21) ## 6.21.0 (2024-03-06) diff --git a/packages/plugins/package.json b/packages/plugins/package.json index 23b86be21c3bb..6a9adb3b3f0a8 100644 --- a/packages/plugins/package.json +++ b/packages/plugins/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/plugins", - "version": "6.22.0", + "version": "6.23.0", "description": "Plugins module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/postcss-plugins-preset/CHANGELOG.md b/packages/postcss-plugins-preset/CHANGELOG.md index 5f7ea4fab9b7a..411d7a758e91c 100644 --- a/packages/postcss-plugins-preset/CHANGELOG.md +++ b/packages/postcss-plugins-preset/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.39.0 (2024-04-03) + ## 4.38.0 (2024-03-21) ## 4.37.0 (2024-03-06) diff --git a/packages/postcss-plugins-preset/package.json b/packages/postcss-plugins-preset/package.json index a7baab486e870..761c576ca25dd 100644 --- a/packages/postcss-plugins-preset/package.json +++ b/packages/postcss-plugins-preset/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/postcss-plugins-preset", - "version": "4.38.0", + "version": "4.39.0", "description": "PostCSS sharable plugins preset for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/postcss-themes/CHANGELOG.md b/packages/postcss-themes/CHANGELOG.md index ec482b6ac998e..cf84f5fb542ee 100644 --- a/packages/postcss-themes/CHANGELOG.md +++ b/packages/postcss-themes/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.38.0 (2024-04-03) + ## 5.37.0 (2024-03-21) ## 5.36.0 (2024-03-06) diff --git a/packages/postcss-themes/package.json b/packages/postcss-themes/package.json index 6002659a16738..3fb854e47a328 100644 --- a/packages/postcss-themes/package.json +++ b/packages/postcss-themes/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/postcss-themes", - "version": "5.37.0", + "version": "5.38.0", "description": "PostCSS plugin to generate theme colors.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/preferences-persistence/CHANGELOG.md b/packages/preferences-persistence/CHANGELOG.md index eb75e928b5a19..a7a72f9ae21ea 100644 --- a/packages/preferences-persistence/CHANGELOG.md +++ b/packages/preferences-persistence/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.47.0 (2024-04-03) + ## 1.46.0 (2024-03-21) ## 1.45.0 (2024-03-06) diff --git a/packages/preferences-persistence/package.json b/packages/preferences-persistence/package.json index 492ce2a9468ed..b90b33d072609 100644 --- a/packages/preferences-persistence/package.json +++ b/packages/preferences-persistence/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/preferences-persistence", - "version": "1.46.0", + "version": "1.47.0", "description": "Persistence utilities for `wordpress/preferences`.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/preferences/CHANGELOG.md b/packages/preferences/CHANGELOG.md index b54f53b8daca5..db8a13bf8890d 100644 --- a/packages/preferences/CHANGELOG.md +++ b/packages/preferences/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.32.0 (2024-04-03) + ## 3.31.0 (2024-03-21) ## 3.30.0 (2024-03-06) diff --git a/packages/preferences/package.json b/packages/preferences/package.json index bcdb1805110e1..2f4a8ccbd16b4 100644 --- a/packages/preferences/package.json +++ b/packages/preferences/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/preferences", - "version": "3.31.0", + "version": "3.32.0", "description": "Utilities for managing WordPress preferences.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/prettier-config/CHANGELOG.md b/packages/prettier-config/CHANGELOG.md index 62d648a5fa605..56244a832dc4c 100644 --- a/packages/prettier-config/CHANGELOG.md +++ b/packages/prettier-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.12.0 (2024-04-03) + ## 3.11.0 (2024-03-21) ## 3.10.0 (2024-03-06) diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index 56d44512eea07..c4e4db7bffe33 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/prettier-config", - "version": "3.11.0", + "version": "3.12.0", "description": "WordPress Prettier shared configuration.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/primitives/CHANGELOG.md b/packages/primitives/CHANGELOG.md index 1a1a2e078ec7d..69f75efe2a72f 100644 --- a/packages/primitives/CHANGELOG.md +++ b/packages/primitives/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.53.0 (2024-04-03) + ## 3.52.0 (2024-03-21) ## 3.51.0 (2024-03-06) diff --git a/packages/primitives/package.json b/packages/primitives/package.json index 2982cfb4c1d20..6ed1adf3d7fc8 100644 --- a/packages/primitives/package.json +++ b/packages/primitives/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/primitives", - "version": "3.52.0", + "version": "3.53.0", "description": "WordPress cross-platform primitives.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/priority-queue/CHANGELOG.md b/packages/priority-queue/CHANGELOG.md index 691f6ec9f844b..7b9fe860dbe0e 100644 --- a/packages/priority-queue/CHANGELOG.md +++ b/packages/priority-queue/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.55.0 (2024-04-03) + ## 2.54.0 (2024-03-21) ## 2.53.0 (2024-03-06) diff --git a/packages/priority-queue/package.json b/packages/priority-queue/package.json index d9d270935e1f2..25366e59aa29e 100644 --- a/packages/priority-queue/package.json +++ b/packages/priority-queue/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/priority-queue", - "version": "2.54.0", + "version": "2.55.0", "description": "Generic browser priority queue.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/private-apis/CHANGELOG.md b/packages/private-apis/CHANGELOG.md index d360becd6dbec..7a9c92f102d99 100644 --- a/packages/private-apis/CHANGELOG.md +++ b/packages/private-apis/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.37.0 (2024-04-03) + ## 0.36.0 (2024-03-21) ## 0.35.0 (2024-03-06) diff --git a/packages/private-apis/package.json b/packages/private-apis/package.json index c6aea8eda192f..94361a7dc80af 100644 --- a/packages/private-apis/package.json +++ b/packages/private-apis/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/private-apis", - "version": "0.36.0", + "version": "0.37.0", "description": "Internal experimental APIs for WordPress core.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/project-management-automation/CHANGELOG.md b/packages/project-management-automation/CHANGELOG.md index 5d627a729bb6b..46139f1621f6b 100644 --- a/packages/project-management-automation/CHANGELOG.md +++ b/packages/project-management-automation/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.54.0 (2024-04-03) + ## 1.53.0 (2024-03-21) ## 1.52.0 (2024-03-06) diff --git a/packages/project-management-automation/package.json b/packages/project-management-automation/package.json index 4ed061b14dcd1..831ae3cbfad32 100644 --- a/packages/project-management-automation/package.json +++ b/packages/project-management-automation/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/project-management-automation", - "version": "1.53.0", + "version": "1.54.0", "description": "GitHub Action that implements various automation to assist with managing the Gutenberg GitHub repository.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/react-i18n/CHANGELOG.md b/packages/react-i18n/CHANGELOG.md index b911709cb56fd..3d3f93ffe3828 100644 --- a/packages/react-i18n/CHANGELOG.md +++ b/packages/react-i18n/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.53.0 (2024-04-03) + ## 3.52.0 (2024-03-21) ## 3.51.0 (2024-03-06) diff --git a/packages/react-i18n/package.json b/packages/react-i18n/package.json index 27de673c5a0ff..e16e8bb115bbb 100644 --- a/packages/react-i18n/package.json +++ b/packages/react-i18n/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/react-i18n", - "version": "3.52.0", + "version": "3.53.0", "description": "React bindings for @wordpress/i18n.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/react-native-editor/CHANGELOG.md b/packages/react-native-editor/CHANGELOG.md index 5ad91131d6d9c..91f115a41da6b 100644 --- a/packages/react-native-editor/CHANGELOG.md +++ b/packages/react-native-editor/CHANGELOG.md @@ -10,6 +10,7 @@ For each user feature we should also add a importance categorization label to i --> ## Unreleased +- [*] Add empty fallback option for the BottomSheetSelectControl component ## 1.116.0 - [**] Highlight color formatting style improvements [#57650] diff --git a/packages/readable-js-assets-webpack-plugin/CHANGELOG.md b/packages/readable-js-assets-webpack-plugin/CHANGELOG.md index c5f9e22bf7ca8..a70eaf257edc8 100644 --- a/packages/readable-js-assets-webpack-plugin/CHANGELOG.md +++ b/packages/readable-js-assets-webpack-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.38.0 (2024-04-03) + ## 2.37.0 (2024-03-21) ## 2.36.0 (2024-03-06) diff --git a/packages/readable-js-assets-webpack-plugin/package.json b/packages/readable-js-assets-webpack-plugin/package.json index 2591335bfb8df..3667574f79466 100644 --- a/packages/readable-js-assets-webpack-plugin/package.json +++ b/packages/readable-js-assets-webpack-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/readable-js-assets-webpack-plugin", - "version": "2.37.0", + "version": "2.38.0", "description": "Generate a readable JS file for each JS asset.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/redux-routine/CHANGELOG.md b/packages/redux-routine/CHANGELOG.md index e8bcb1730878c..adf7b594f04a7 100644 --- a/packages/redux-routine/CHANGELOG.md +++ b/packages/redux-routine/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.55.0 (2024-04-03) + ## 4.54.0 (2024-03-21) ## 4.53.0 (2024-03-06) diff --git a/packages/redux-routine/package.json b/packages/redux-routine/package.json index 6ff0db272fab6..79a77d0459bc0 100644 --- a/packages/redux-routine/package.json +++ b/packages/redux-routine/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/redux-routine", - "version": "4.54.0", + "version": "4.55.0", "description": "Redux middleware for generator coroutines.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/reusable-blocks/CHANGELOG.md b/packages/reusable-blocks/CHANGELOG.md index 90d7137584861..0d668c2aeaa4e 100644 --- a/packages/reusable-blocks/CHANGELOG.md +++ b/packages/reusable-blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/reusable-blocks/package.json b/packages/reusable-blocks/package.json index 89ddf25d261fd..0dfea26589936 100644 --- a/packages/reusable-blocks/package.json +++ b/packages/reusable-blocks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/reusable-blocks", - "version": "4.31.0", + "version": "4.32.0", "description": "Reusable blocks utilities.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/rich-text/CHANGELOG.md b/packages/rich-text/CHANGELOG.md index 90c5848701b9c..740977f65a584 100644 --- a/packages/rich-text/CHANGELOG.md +++ b/packages/rich-text/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.32.0 (2024-04-03) + ## 6.31.0 (2024-03-21) ## 6.30.0 (2024-03-06) diff --git a/packages/rich-text/package.json b/packages/rich-text/package.json index 3ce0e694b811e..12017280cd9ee 100644 --- a/packages/rich-text/package.json +++ b/packages/rich-text/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/rich-text", - "version": "6.31.0", + "version": "6.32.0", "description": "Rich text value and manipulation API.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", @@ -39,8 +39,7 @@ "@wordpress/escape-html": "file:../escape-html", "@wordpress/i18n": "file:../i18n", "@wordpress/keycodes": "file:../keycodes", - "memize": "^2.1.0", - "rememo": "^4.0.2" + "memize": "^2.1.0" }, "peerDependencies": { "react": "^18.0.0" diff --git a/packages/rich-text/src/store/selectors.js b/packages/rich-text/src/store/selectors.js index cdc597aee0d99..df87c6a99211a 100644 --- a/packages/rich-text/src/store/selectors.js +++ b/packages/rich-text/src/store/selectors.js @@ -1,7 +1,7 @@ /** - * External dependencies + * WordPress dependencies */ -import createSelector from 'rememo'; +import { createSelector } from '@wordpress/data'; /** * Returns all the available format types. diff --git a/packages/router/CHANGELOG.md b/packages/router/CHANGELOG.md index 0b10fdca92d1d..7a6d69812f937 100644 --- a/packages/router/CHANGELOG.md +++ b/packages/router/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.24.0 (2024-04-03) + ## 0.23.0 (2024-03-21) ## 0.22.0 (2024-03-06) diff --git a/packages/router/package.json b/packages/router/package.json index ff1c13acce9bc..2e21fd204cf7d 100644 --- a/packages/router/package.json +++ b/packages/router/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/router", - "version": "0.23.0", + "version": "0.24.0", "description": "Router API for WordPress pages.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/scripts/CHANGELOG.md b/packages/scripts/CHANGELOG.md index f71f8d79a066b..a43dc8a3d0ba6 100644 --- a/packages/scripts/CHANGELOG.md +++ b/packages/scripts/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 27.6.0 (2024-04-03) + ## 27.5.0 (2024-03-21) ## 27.4.0 (2024-03-06) diff --git a/packages/scripts/package.json b/packages/scripts/package.json index bc25c487bc864..a97d80578dc3c 100644 --- a/packages/scripts/package.json +++ b/packages/scripts/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/scripts", - "version": "27.5.0", + "version": "27.6.0", "description": "Collection of reusable scripts for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/server-side-render/CHANGELOG.md b/packages/server-side-render/CHANGELOG.md index ceb6c1362f9c4..c66a6be10de31 100644 --- a/packages/server-side-render/CHANGELOG.md +++ b/packages/server-side-render/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.32.0 (2024-04-03) + ## 4.31.0 (2024-03-21) ## 4.30.0 (2024-03-06) diff --git a/packages/server-side-render/package.json b/packages/server-side-render/package.json index 7a5cc91cd358d..c91cda42efa31 100644 --- a/packages/server-side-render/package.json +++ b/packages/server-side-render/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/server-side-render", - "version": "4.31.0", + "version": "4.32.0", "description": "The component used with WordPress to server-side render a preview of dynamic blocks to display in the editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/shortcode/CHANGELOG.md b/packages/shortcode/CHANGELOG.md index cb40a92168d4b..9b8b9adddb9de 100644 --- a/packages/shortcode/CHANGELOG.md +++ b/packages/shortcode/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/shortcode/package.json b/packages/shortcode/package.json index d05a0874b210f..a3c3ce78a4edf 100644 --- a/packages/shortcode/package.json +++ b/packages/shortcode/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/shortcode", - "version": "3.54.0", + "version": "3.55.0", "description": "Shortcode module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/style-engine/CHANGELOG.md b/packages/style-engine/CHANGELOG.md index 41d9aea3d4fcb..e62e99da56c78 100644 --- a/packages/style-engine/CHANGELOG.md +++ b/packages/style-engine/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.38.0 (2024-04-03) + ## 1.37.0 (2024-03-21) ## 1.36.0 (2024-03-06) diff --git a/packages/style-engine/package.json b/packages/style-engine/package.json index cd726edcfc02e..8cd0c0ac74c8f 100644 --- a/packages/style-engine/package.json +++ b/packages/style-engine/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/style-engine", - "version": "1.37.0", + "version": "1.38.0", "description": "A suite of parsers and compilers for WordPress styles.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/stylelint-config/CHANGELOG.md b/packages/stylelint-config/CHANGELOG.md index c4310f080d80a..5cb5f01d19087 100644 --- a/packages/stylelint-config/CHANGELOG.md +++ b/packages/stylelint-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 21.38.0 (2024-04-03) + ## 21.37.0 (2024-03-21) ## 21.36.0 (2024-03-06) diff --git a/packages/stylelint-config/package.json b/packages/stylelint-config/package.json index 260b295a64404..66634231dfbc2 100644 --- a/packages/stylelint-config/package.json +++ b/packages/stylelint-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/stylelint-config", - "version": "21.37.0", + "version": "21.38.0", "description": "stylelint config for WordPress development.", "author": "The WordPress Contributors", "license": "MIT", diff --git a/packages/sync/CHANGELOG.md b/packages/sync/CHANGELOG.md index 2fc1c9f681bab..b344ebc08cbfb 100644 --- a/packages/sync/CHANGELOG.md +++ b/packages/sync/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.17.0 (2024-04-03) + ## 0.16.0 (2024-03-21) ## 0.15.0 (2024-03-06) diff --git a/packages/sync/package.json b/packages/sync/package.json index 32dab33ec18e3..388d23c7af672 100644 --- a/packages/sync/package.json +++ b/packages/sync/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/sync", - "version": "0.16.0", + "version": "0.17.0", "description": "Sync Data.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/token-list/CHANGELOG.md b/packages/token-list/CHANGELOG.md index 1077c7eb42541..fad6d790fd5ab 100644 --- a/packages/token-list/CHANGELOG.md +++ b/packages/token-list/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.55.0 (2024-04-03) + ## 2.54.0 (2024-03-21) ## 2.53.0 (2024-03-06) diff --git a/packages/token-list/package.json b/packages/token-list/package.json index 6c07b79df6c02..5b3085ebae685 100644 --- a/packages/token-list/package.json +++ b/packages/token-list/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/token-list", - "version": "2.54.0", + "version": "2.55.0", "description": "Constructable, plain JavaScript DOMTokenList implementation, supporting non-browser runtimes.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/undo-manager/CHANGELOG.md b/packages/undo-manager/CHANGELOG.md index aeb6e697c9a51..eb3c582eea3d2 100644 --- a/packages/undo-manager/CHANGELOG.md +++ b/packages/undo-manager/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.15.0 (2024-04-03) + ## 0.14.0 (2024-03-21) ## 0.13.0 (2024-03-06) diff --git a/packages/undo-manager/package.json b/packages/undo-manager/package.json index 5a2ec36330e36..3d2a4aaeea99b 100644 --- a/packages/undo-manager/package.json +++ b/packages/undo-manager/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/undo-manager", - "version": "0.14.0", + "version": "0.15.0", "description": "A small package to manage undo/redo.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/url/CHANGELOG.md b/packages/url/CHANGELOG.md index 2c960354a30ab..c56c16c0e8645 100644 --- a/packages/url/CHANGELOG.md +++ b/packages/url/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.56.0 (2024-04-03) + ## 3.55.0 (2024-03-21) ## 3.54.0 (2024-03-06) diff --git a/packages/url/package.json b/packages/url/package.json index f4c762ccce443..0f585ceb44ab1 100644 --- a/packages/url/package.json +++ b/packages/url/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/url", - "version": "3.55.0", + "version": "3.56.0", "description": "WordPress URL utilities.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/viewport/CHANGELOG.md b/packages/viewport/CHANGELOG.md index 6353350b6d738..b2a9506bf04fc 100644 --- a/packages/viewport/CHANGELOG.md +++ b/packages/viewport/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.32.0 (2024-04-03) + ## 5.31.0 (2024-03-21) ## 5.30.0 (2024-03-06) diff --git a/packages/viewport/package.json b/packages/viewport/package.json index 65ecd31883917..ff082d42d9fa1 100644 --- a/packages/viewport/package.json +++ b/packages/viewport/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/viewport", - "version": "5.31.0", + "version": "5.32.0", "description": "Viewport module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/warning/CHANGELOG.md b/packages/warning/CHANGELOG.md index 0fc58018105ec..f984c4920e1cf 100644 --- a/packages/warning/CHANGELOG.md +++ b/packages/warning/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.55.0 (2024-04-03) + ## 2.54.0 (2024-03-21) ## 2.53.0 (2024-03-06) diff --git a/packages/warning/package.json b/packages/warning/package.json index 727b37b8c6840..ecc2cfff82255 100644 --- a/packages/warning/package.json +++ b/packages/warning/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/warning", - "version": "2.54.0", + "version": "2.55.0", "description": "Warning utility for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/widgets/CHANGELOG.md b/packages/widgets/CHANGELOG.md index 5fb456fce6e83..2c371c0a60b44 100644 --- a/packages/widgets/CHANGELOG.md +++ b/packages/widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.32.0 (2024-04-03) + ## 3.31.0 (2024-03-21) ## 3.30.0 (2024-03-06) diff --git a/packages/widgets/package.json b/packages/widgets/package.json index e9b3d860e7e66..2a93c8874c8b2 100644 --- a/packages/widgets/package.json +++ b/packages/widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/widgets", - "version": "3.31.0", + "version": "3.32.0", "description": "Functionality used by the widgets block editor in the Widgets screen and the Customizer.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/wordcount/CHANGELOG.md b/packages/wordcount/CHANGELOG.md index 7cff4cb11fc67..e1ec477337626 100644 --- a/packages/wordcount/CHANGELOG.md +++ b/packages/wordcount/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.55.0 (2024-04-03) + ## 3.54.0 (2024-03-21) ## 3.53.0 (2024-03-06) diff --git a/packages/wordcount/package.json b/packages/wordcount/package.json index 86068dd3dcbee..0cd3b24a57e9e 100644 --- a/packages/wordcount/package.json +++ b/packages/wordcount/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/wordcount", - "version": "3.54.0", + "version": "3.55.0", "description": "WordPress word count utility.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/schemas/json/font-collection.json b/schemas/json/font-collection.json index 627fdf978c050..e52455b220cdb 100644 --- a/schemas/json/font-collection.json +++ b/schemas/json/font-collection.json @@ -4,7 +4,7 @@ "type": "object", "definitions": { "fontFace": { - "description": "Font face theme.json settings, with added preview property.", + "description": "Font face settings, with added preview property.", "type": "object", "properties": { "preview": { @@ -107,7 +107,7 @@ "type": "object", "properties": { "font_family_settings": { - "description": "Font family theme.json settings, with added preview property.", + "description": "Font family settings, with added preview property.", "type": "object", "properties": { "name": { @@ -138,6 +138,7 @@ } } }, + "required": [ "name", "fontFamily", "slug" ], "additionalProperties": false }, "categories": { @@ -154,5 +155,5 @@ } }, "additionalProperties": false, - "required": [ "$schema", "slug", "name", "font_families" ] + "required": [ "font_families" ] } diff --git a/test/e2e/specs/editor/plugins/pattern-recursion.spec.js b/test/e2e/specs/editor/plugins/pattern-recursion.spec.js index 72498bcdf9914..069f33d671d68 100644 --- a/test/e2e/specs/editor/plugins/pattern-recursion.spec.js +++ b/test/e2e/specs/editor/plugins/pattern-recursion.spec.js @@ -3,7 +3,42 @@ */ const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); -test.describe( 'Preventing Pattern Recursion', () => { +test.describe( 'Preventing Pattern Recursion (client)', () => { + test.beforeEach( async ( { admin, editor, page } ) => { + await admin.createNewPost(); + await editor.canvas + .locator( 'role=button[name="Add default block"i]' ) + .click(); + await page.evaluate( () => { + window.wp.data.dispatch( 'core/block-editor' ).updateSettings( { + __experimentalBlockPatterns: [ + { + name: 'evil/recursive', + title: 'Evil recursive', + description: 'Evil recursive', + content: + '

Hello

', + }, + ], + } ); + } ); + } ); + + test( 'prevents infinite loops due to recursive patterns', async ( { + editor, + } ) => { + await editor.insertBlock( { + name: 'core/pattern', + attributes: { slug: 'evil/recursive' }, + } ); + const warning = editor.canvas.getByText( + 'Pattern "evil/recursive" cannot be rendered inside itself' + ); + await expect( warning ).toBeVisible(); + } ); +} ); + +test.describe( 'Preventing Pattern Recursion (server)', () => { test.beforeAll( async ( { requestUtils } ) => { await requestUtils.activatePlugin( 'gutenberg-test-protection-against-recursive-patterns' @@ -21,15 +56,30 @@ test.describe( 'Preventing Pattern Recursion', () => { } ); test( 'prevents infinite loops due to recursive patterns', async ( { + page, editor, } ) => { - await editor.insertBlock( { - name: 'core/pattern', - attributes: { slug: 'evil/recursive' }, - } ); - const warning = editor.canvas.getByText( - 'Pattern "evil/recursive" cannot be rendered inside itself' - ); - await expect( warning ).toBeVisible(); + // Click the Toggle block inserter button + await page + .getByRole( 'button', { name: 'Toggle block inserter' } ) + .click(); + // Click the Patterns tab + await page.getByRole( 'tab', { name: 'Patterns' } ).click(); + // Click the Uncategorized tab + await page.getByRole( 'button', { name: 'Uncategorized' } ).click(); + // Click the Evil recursive pattern + await page.getByRole( 'option', { name: 'Evil recursive' } ).click(); + // By simply checking the editor content, we know that the pattern + // endpoint did not crash. + expect( await editor.getBlocks() ).toMatchObject( [ + { + name: 'core/paragraph', + attributes: { content: 'Hello' }, + }, + { + name: 'core/paragraph', + attributes: { content: 'Hello' }, + }, + ] ); } ); } ); diff --git a/tools/webpack/blocks.js b/tools/webpack/blocks.js index 080ee2e01242b..36329d39c1212 100644 --- a/tools/webpack/blocks.js +++ b/tools/webpack/blocks.js @@ -188,7 +188,8 @@ module.exports = [ // other core prefix (e.g. "wp_"). return result.replace( new RegExp( - functionName, + functionName + + '(?![a-zA-Z0-9_])', 'g' ), ( match ) =>