diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 69fd34d709bdc5..1a2094cce578e8 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -2,6 +2,9 @@ https://github.com/WordPress/gutenberg/blob/trunk/CONTRIBUTING.md --> ## What? + +Closes + ## Why? diff --git a/bin/generate-php-sync-issue.mjs b/bin/generate-php-sync-issue.mjs index bd627aeb65107c..9ea79c4f165e92 100644 --- a/bin/generate-php-sync-issue.mjs +++ b/bin/generate-php-sync-issue.mjs @@ -156,17 +156,6 @@ async function main() { fs.writeFileSync( nodePath.join( __dirname, 'issueContent.md' ), content ); } -/** - * Checks if the first date is after the second date. - * - * @param {string} date1 - The first date. - * @param {string} date2 - The second date. - * @return {boolean} - Returns true if the first date is after the second date, false otherwise. - */ -function isAfter( date1, date2 ) { - return new Date( date1 ) > new Date( date2 ); -} - function validateDate( sinceArg ) { const sinceDate = new Date( sinceArg ); const maxPreviousDate = new Date(); diff --git a/changelog.txt b/changelog.txt index fbc163a4859bc5..e0ff271a5b28d8 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,148 @@ == Changelog == += 20.2.0-rc.1 = + + +## Changelog + +### Enhancements + +#### Block Library +- Details block: Add name attribute for exclusive accordion. ([56971](https://github.com/WordPress/gutenberg/pull/56971)) +- Details block: Add placeholder attribute. ([68917](https://github.com/WordPress/gutenberg/pull/68917)) +- Home Link: Enable all non-interactive formats. ([68737](https://github.com/WordPress/gutenberg/pull/68737)) +- Latest Comments: Refactor settings panel to use ToolsPanel. ([67951](https://github.com/WordPress/gutenberg/pull/67951)) +- Latest Post Block: Refactor settings panel to use ToolsPanel. ([67956](https://github.com/WordPress/gutenberg/pull/67956)) +- Read More: Refactor settings panel to use ToolsPanel. ([67925](https://github.com/WordPress/gutenberg/pull/67925)) +- Search Block: Refactoring settings panel. ([67907](https://github.com/WordPress/gutenberg/pull/67907)) +- Search Results Title Block: Add dropdown menu props to Tools Panel component. ([68763](https://github.com/WordPress/gutenberg/pull/68763)) +- Spacer: Add dropdown menu props to Tools Panel component. ([68761](https://github.com/WordPress/gutenberg/pull/68761)) +- Term List Block: Refactor settings panel to use ToolsPanel. ([67955](https://github.com/WordPress/gutenberg/pull/67955)) + +#### Design Tools +- Position: Refactor "Position" controls panel to use `ToolsPanel` instead of `PanelBody`. ([67967](https://github.com/WordPress/gutenberg/pull/67967)) +- Post-content block header color support. ([67783](https://github.com/WordPress/gutenberg/pull/67783)) + +#### Block Editor +- Improve grid visualizer resize observation. ([68842](https://github.com/WordPress/gutenberg/pull/68842)) + +#### Style Book +- Navigation Submenu Block: Add example preview. ([68378](https://github.com/WordPress/gutenberg/pull/68378)) + + +### Bug Fixes + +- Fix: Invalid `_doing_it_wrong()` for `experimental-link-color`. ([68408](https://github.com/WordPress/gutenberg/pull/68408)) + +#### Block Library +- Archives Block: Fix reset button display state. ([68757](https://github.com/WordPress/gutenberg/pull/68757)) +- Fix: Add `rel="tag"` to individual anchor links in editor markup of the post terms block. ([68722](https://github.com/WordPress/gutenberg/pull/68722)) +- Fix: Linked featured image block cannot be selected correctly. ([68775](https://github.com/WordPress/gutenberg/pull/68775)) +- Page List Block: Fix empty settings panel. ([68756](https://github.com/WordPress/gutenberg/pull/68756)) +- Post Date Block: Fix reset button display state. ([68758](https://github.com/WordPress/gutenberg/pull/68758)) +- Query Page Numbers Block: Fix reset button display state. ([68759](https://github.com/WordPress/gutenberg/pull/68759)) +- Spacer block: Fix dimension control when no spacing presets are available. ([68818](https://github.com/WordPress/gutenberg/pull/68818)) +- Spacer: Fix flex layout unit reset. ([68815](https://github.com/WordPress/gutenberg/pull/68815)) +- `Spacer`: Fix changes being marked as persistent to `undo`. ([68869](https://github.com/WordPress/gutenberg/pull/68869)) + +#### Patterns +- Editor: Improve conditions for displaying new page assembler. ([68852](https://github.com/WordPress/gutenberg/pull/68852)) + +#### Style Book +- Disable the device preview button in the header. ([68841](https://github.com/WordPress/gutenberg/pull/68841)) + +#### Block Editor +- Fix block color contrast checker. ([68799](https://github.com/WordPress/gutenberg/pull/68799)) + +#### DataViews +- Fixed Incorrect Text Position issue in Dataviews. ([68767](https://github.com/WordPress/gutenberg/pull/68767)) + +#### Block Transforms +- Embed: Remove aspect ratio classes when transforming into Paragraph. ([68721](https://github.com/WordPress/gutenberg/pull/68721)) + +#### Media +- Upload Media: Fix package dependencies. ([68718](https://github.com/WordPress/gutenberg/pull/68718)) + + +### Accessibility + +#### Block Library +- Navigation Link: Improve accessibility by removing non-interactive tooltips. ([68628](https://github.com/WordPress/gutenberg/pull/68628)) +- Use the term menu instead of navigation in nav elements labels. ([68683](https://github.com/WordPress/gutenberg/pull/68683)) + +#### Post Editor +- Update text description of the "Contain text cursor inside block" preference. ([68132](https://github.com/WordPress/gutenberg/pull/68132)) + + +### Performance + +#### Block Editor +- Fix 'isBlockVisibleInTheInserter' selector helper performance. ([68898](https://github.com/WordPress/gutenberg/pull/68898)) + +#### Block Library +- Paragraph: Use CSS to hide placeholders in Zoom out mode. ([68690](https://github.com/WordPress/gutenberg/pull/68690)) + + +### Documentation + +- Block Editor: Add documentation for SpacingSizesControl component. ([68581](https://github.com/WordPress/gutenberg/pull/68581)) +- Changed Inline Documentation Order. ([68879](https://github.com/WordPress/gutenberg/pull/68879)) +- Docs: Update links to HTTPS. ([68888](https://github.com/WordPress/gutenberg/pull/68888)) +- Lint: Fix broken URL reference for `stylelint` user guide configuration. ([68706](https://github.com/WordPress/gutenberg/pull/68706)) +- Updated Typo in Constants.js. ([68765](https://github.com/WordPress/gutenberg/pull/68765)) +- Used https in main-dashboard-button.md file. ([68883](https://github.com/WordPress/gutenberg/pull/68883)) +- wp-env: Add phpMyAdmin and multisite support to the documentation. ([68125](https://github.com/WordPress/gutenberg/pull/68125)) + + +### Code Quality + +- Inline Commenting: Change the PHP compat directory. ([68846](https://github.com/WordPress/gutenberg/pull/68846)) +- Fix: Remove invalid param from wp_register_style() in gutenberg_enqueue_stored_styles(). ([68409](https://github.com/WordPress/gutenberg/pull/68409)) +- Fix: setcookie() $value must be string in Gutenberg_HTTP_Signaling_Server::Handle_read_pending_messages(). ([68411](https://github.com/WordPress/gutenberg/pull/68411)) + +#### Block Library +- Gallery: Remove unused inline menu styles. ([68776](https://github.com/WordPress/gutenberg/pull/68776)) +- Move HTML element help messages to the block library utils. ([68708](https://github.com/WordPress/gutenberg/pull/68708)) +- Navigation Submenu: Classname trailing spaces. ([68880](https://github.com/WordPress/gutenberg/pull/68880)) +- Unify block title with a strict title case. ([51912](https://github.com/WordPress/gutenberg/pull/51912)) +- Video: Fix react component warning error. ([68762](https://github.com/WordPress/gutenberg/pull/68762)) + +#### Post Editor +- Editor: Children prop to accept `ReactNode`. ([68839](https://github.com/WordPress/gutenberg/pull/68839)) +- Editor: Combine selectors in the 'Header' component. ([68697](https://github.com/WordPress/gutenberg/pull/68697)) +- Editor: Standardize reduced motion handling using media queries. ([68424](https://github.com/WordPress/gutenberg/pull/68424)) + +#### Components +- Box Control: Add Runtime Check & Conditional Types for `presets` and `presetKey` Props. ([68385](https://github.com/WordPress/gutenberg/pull/68385)) +- Remove unnecessary `Tooltip` component from linked `button`. ([68498](https://github.com/WordPress/gutenberg/pull/68498)) + +#### Block Editor +- Clean up unused utils of spacing size control. ([68794](https://github.com/WordPress/gutenberg/pull/68794)) + +#### Template Editor +- Editor: Update post-type support key for new default rendering mode. ([68745](https://github.com/WordPress/gutenberg/pull/68745)) + + +### Tools + +#### Build Tooling +- Fix Duplicate Entries for 19.7.0 in changelog.txt. ([68836](https://github.com/WordPress/gutenberg/pull/68836)) +- Release Workflow: Install Subversion. ([68837](https://github.com/WordPress/gutenberg/pull/68837)) + +#### Testing +- E2E: Fix WP Editor Meta Boxes test. ([68872](https://github.com/WordPress/gutenberg/pull/68872)) + +#### Env +- Add WP_ENV_MULTISITE envoriment variable. ([68792](https://github.com/WordPress/gutenberg/pull/68792)) + + +## Contributors + +The following contributors merged PRs in this release: + +@afercia @benazeer-ben @fabiankaegy @himanshupathak95 @im3dabasia @Infinite-Null @justlevine @karthick-murugan @Mamaduka @Mayank-Tripathi32 @SainathPoojary @shail-mehta @shimotmk @Soean @spacedmonkey @stokesman @Sukhendu2002 @t-hamano @yogeshbhutkar + + = 20.1.0 = ## Changelog diff --git a/docs/contributors/code/coding-guidelines.md b/docs/contributors/code/coding-guidelines.md index d8a5220c70ca24..e8e55921f56fae 100644 --- a/docs/contributors/code/coding-guidelines.md +++ b/docs/contributors/code/coding-guidelines.md @@ -607,7 +607,7 @@ Many third-party dependencies will distribute their own TypeScript typings. For If you use a [TypeScript integration](https://github.com/Microsoft/TypeScript/wiki/TypeScript-Editor-Support) for your editor, you can typically see that this works if the type resolves to anything other than the fallback `any` type. -For packages which do not distribute their own TypeScript types, you are welcomed to install and use the [DefinitelyTyped](http://definitelytyped.org/) community-maintained types definitions, if one exists. +For packages which do not distribute their own TypeScript types, you are welcomed to install and use the [DefinitelyTyped](https://definitelytyped.org/) community-maintained types definitions, if one exists. ### Generic types diff --git a/docs/contributors/code/testing-overview.md b/docs/contributors/code/testing-overview.md index 6afa5aed865b7d..8b487c00166350 100644 --- a/docs/contributors/code/testing-overview.md +++ b/docs/contributors/code/testing-overview.md @@ -29,7 +29,7 @@ Assuming you've followed the [instructions](/docs/contributors/code/getting-star npm test ``` -Linting is static code analysis used to enforce coding standards and to avoid potential errors. This project uses [ESLint](http://eslint.org/) and [TypeScript's JavaScript type-checking](https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html) to capture these issues. While the above `npm test` will execute both unit tests and code linting, code linting can be verified independently by running `npm run lint`. Some JavaScript issues can be fixed automatically by running `npm run lint:js:fix`. +Linting is static code analysis used to enforce coding standards and to avoid potential errors. This project uses [ESLint](https://eslint.org/) and [TypeScript's JavaScript type-checking](https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html) to capture these issues. While the above `npm test` will execute both unit tests and code linting, code linting can be verified independently by running `npm run lint`. Some JavaScript issues can be fixed automatically by running `npm run lint:js:fix`. To improve your developer workflow, you should setup an editor linting integration. See the [getting started documentation](/docs/contributors/code/getting-started-with-code-contribution.md) for additional information. diff --git a/docs/reference-guides/core-blocks.md b/docs/reference-guides/core-blocks.md index 10ceb797e28c0f..7ac8591cd19318 100644 --- a/docs/reference-guides/core-blocks.md +++ b/docs/reference-guides/core-blocks.md @@ -78,7 +78,7 @@ Display a list of all terms of a given taxonomy. ([Source](https://github.com/Wo - **Name:** core/categories - **Category:** widgets -- **Supports:** align, interactivity (clientNavigation), spacing (margin, padding), typography (fontSize, lineHeight), ~~html~~ +- **Supports:** align, color (background, gradients, link, text), interactivity (clientNavigation), spacing (margin, padding), typography (fontSize, lineHeight), ~~html~~ - **Attributes:** displayAsDropdown, label, showEmpty, showHierarchy, showLabel, showOnlyTopLevel, showPostCounts, taxonomy ## Code @@ -255,7 +255,7 @@ Hide and show additional content. ([Source](https://github.com/WordPress/gutenbe - **Name:** core/details - **Category:** text - **Supports:** align (full, wide), anchor, color (background, gradients, link, text), interactivity (clientNavigation), layout (~~allowEditing~~), spacing (blockGap, margin, padding), typography (fontSize, lineHeight), ~~html~~ -- **Attributes:** allowedBlocks, name, showContent, summary +- **Attributes:** allowedBlocks, name, placeholder, showContent, summary ## Embed diff --git a/docs/reference-guides/interactivity-api/README.md b/docs/reference-guides/interactivity-api/README.md index 3a5bbb84ff159c..5504f8fd19fafe 100644 --- a/docs/reference-guides/interactivity-api/README.md +++ b/docs/reference-guides/interactivity-api/README.md @@ -113,7 +113,7 @@ Here you have some more resources to learn/read more about the Interactivity API - [Merge announcement](https://make.wordpress.org/core/2024/02/19/merge-announcement-interactivity-api/) - [Proposal: The Interactivity API – A better developer experience in building interactive blocks](https://make.wordpress.org/core/2023/03/30/proposal-the-interactivity-api-a-better-developer-experience-in-building-interactive-blocks/) - [Interactivity API Discussions](https://github.com/WordPress/gutenberg/discussions/52882), especially the [showcase](https://github.com/WordPress/gutenberg/discussions/55642#discussioncomment-9667164) discussions. -- [wpmovies.dev](http://wpmovies.dev/) demo and its [wp-movies-demo](https://github.com/WordPress/wp-movies-demo) repo +- [wpmovies.dev](https://wpmovies.dev/) demo and its [wp-movies-demo](https://github.com/WordPress/wp-movies-demo) repo - Examples using the Interactivity API at [block-development-examples](https://github.com/WordPress/block-development-examples): - [`interactivity-api-block-833d15`](https://github.com/WordPress/block-development-examples/tree/trunk/plugins/interactivity-api-block-833d15) - [`interactivity-api-countdown-3cd73e`](https://github.com/WordPress/block-development-examples/tree/trunk/plugins/interactivity-api-countdown-3cd73e) diff --git a/gutenberg.php b/gutenberg.php index 12a7c54cb1e4b6..06152fa72876e1 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.6 * Requires PHP: 7.2 - * Version: 20.1.0 + * Version: 20.2.0-rc.1 * Author: Gutenberg Team * Text Domain: gutenberg * diff --git a/package-lock.json b/package-lock.json index ea578eb67ca0d8..8c8ec35e2c3a99 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gutenberg", - "version": "20.1.0", + "version": "20.2.0-rc.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "gutenberg", - "version": "20.1.0", + "version": "20.2.0-rc.1", "hasInstallScript": true, "license": "GPL-2.0-or-later", "workspaces": [ @@ -48711,7 +48711,7 @@ }, "packages/a11y": { "name": "@wordpress/a11y", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -48725,7 +48725,7 @@ }, "packages/annotations": { "name": "@wordpress/annotations", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -48753,7 +48753,7 @@ }, "packages/api-fetch": { "name": "@wordpress/api-fetch", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -48767,7 +48767,7 @@ }, "packages/autop": { "name": "@wordpress/autop", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -48779,7 +48779,7 @@ }, "packages/babel-plugin-import-jsx-pragma": { "name": "@wordpress/babel-plugin-import-jsx-pragma", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -48791,7 +48791,7 @@ }, "packages/babel-plugin-makepot": { "name": "@wordpress/babel-plugin-makepot", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "deepmerge": "^4.3.0", @@ -48808,7 +48808,7 @@ }, "packages/babel-preset-default": { "name": "@wordpress/babel-preset-default", - "version": "8.16.0", + "version": "8.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "7.25.7", @@ -49939,7 +49939,7 @@ }, "packages/base-styles": { "name": "@wordpress/base-styles", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -49948,7 +49948,7 @@ }, "packages/blob": { "name": "@wordpress/blob", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -49960,7 +49960,7 @@ }, "packages/block-directory": { "name": "@wordpress/block-directory", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -49996,7 +49996,7 @@ }, "packages/block-editor": { "name": "@wordpress/block-editor", - "version": "14.11.0", + "version": "14.12.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50097,7 +50097,7 @@ }, "packages/block-library": { "name": "@wordpress/block-library", - "version": "9.16.0", + "version": "9.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50163,7 +50163,7 @@ }, "packages/block-serialization-default-parser": { "name": "@wordpress/block-serialization-default-parser", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -50175,7 +50175,7 @@ }, "packages/block-serialization-spec-parser": { "name": "@wordpress/block-serialization-spec-parser", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "pegjs": "^0.10.0", @@ -50188,7 +50188,7 @@ }, "packages/blocks": { "name": "@wordpress/blocks", - "version": "14.5.0", + "version": "14.6.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50242,7 +50242,7 @@ }, "packages/browserslist-config": { "name": "@wordpress/browserslist-config", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -50251,7 +50251,7 @@ }, "packages/commands": { "name": "@wordpress/commands", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50490,7 +50490,7 @@ }, "packages/components": { "name": "@wordpress/components", - "version": "29.2.0", + "version": "29.3.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.4.15", @@ -50581,7 +50581,7 @@ }, "packages/compose": { "name": "@wordpress/compose", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50618,7 +50618,7 @@ }, "packages/core-commands": { "name": "@wordpress/core-commands", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50647,7 +50647,7 @@ }, "packages/core-data": { "name": "@wordpress/core-data", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50692,7 +50692,7 @@ }, "packages/create-block": { "name": "@wordpress/create-block", - "version": "4.59.0", + "version": "4.60.0", "license": "GPL-2.0-or-later", "dependencies": { "@inquirer/prompts": "^7.2.0", @@ -50719,7 +50719,7 @@ }, "packages/create-block-interactive-template": { "name": "@wordpress/create-block-interactive-template", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -50728,7 +50728,7 @@ }, "packages/create-block-tutorial-template": { "name": "@wordpress/create-block-tutorial-template", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -50737,7 +50737,7 @@ }, "packages/customize-widgets": { "name": "@wordpress/customize-widgets", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50775,7 +50775,7 @@ }, "packages/data": { "name": "@wordpress/data", - "version": "10.16.0", + "version": "10.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50804,7 +50804,7 @@ }, "packages/data-controls": { "name": "@wordpress/data-controls", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50822,7 +50822,7 @@ }, "packages/dataviews": { "name": "@wordpress/dataviews", - "version": "4.12.0", + "version": "4.13.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.4.15", @@ -50849,7 +50849,7 @@ }, "packages/date": { "name": "@wordpress/date", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50864,7 +50864,7 @@ }, "packages/dependency-extraction-webpack-plugin": { "name": "@wordpress/dependency-extraction-webpack-plugin", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "json2php": "^0.0.7" @@ -50879,7 +50879,7 @@ }, "packages/deprecated": { "name": "@wordpress/deprecated", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50892,7 +50892,7 @@ }, "packages/docgen": { "name": "@wordpress/docgen", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "7.25.7", @@ -50913,7 +50913,7 @@ }, "packages/dom": { "name": "@wordpress/dom", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50926,7 +50926,7 @@ }, "packages/dom-ready": { "name": "@wordpress/dom-ready", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -50938,7 +50938,7 @@ }, "packages/e2e-test-utils": { "name": "@wordpress/e2e-test-utils", - "version": "11.16.0", + "version": "11.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -50960,7 +50960,7 @@ }, "packages/e2e-test-utils-playwright": { "name": "@wordpress/e2e-test-utils-playwright", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "change-case": "^4.1.2", @@ -50986,7 +50986,7 @@ }, "packages/e2e-tests": { "name": "@wordpress/e2e-tests", - "version": "8.16.0", + "version": "8.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/e2e-test-utils": "file:../e2e-test-utils", @@ -51024,7 +51024,7 @@ }, "packages/edit-post": { "name": "@wordpress/edit-post", - "version": "8.16.0", + "version": "8.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51071,7 +51071,7 @@ }, "packages/edit-site": { "name": "@wordpress/edit-site", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51134,7 +51134,7 @@ }, "packages/edit-widgets": { "name": "@wordpress/edit-widgets", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51177,7 +51177,7 @@ }, "packages/editor": { "name": "@wordpress/editor", - "version": "14.16.0", + "version": "14.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51239,7 +51239,7 @@ }, "packages/element": { "name": "@wordpress/element", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51258,7 +51258,7 @@ }, "packages/env": { "name": "@wordpress/env", - "version": "10.16.0", + "version": "10.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@inquirer/prompts": "^7.2.0", @@ -51307,7 +51307,7 @@ }, "packages/escape-html": { "name": "@wordpress/escape-html", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -51319,7 +51319,7 @@ }, "packages/eslint-plugin": { "name": "@wordpress/eslint-plugin", - "version": "22.2.0", + "version": "22.3.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/eslint-parser": "7.25.7", @@ -51388,7 +51388,7 @@ }, "packages/fields": { "name": "@wordpress/fields", - "version": "0.8.0", + "version": "0.9.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51430,7 +51430,7 @@ }, "packages/format-library": { "name": "@wordpress/format-library", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51458,7 +51458,7 @@ }, "packages/hooks": { "name": "@wordpress/hooks", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -51470,7 +51470,7 @@ }, "packages/html-entities": { "name": "@wordpress/html-entities", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -51482,7 +51482,7 @@ }, "packages/i18n": { "name": "@wordpress/i18n", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51502,7 +51502,7 @@ }, "packages/icons": { "name": "@wordpress/icons", - "version": "10.16.0", + "version": "10.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51516,7 +51516,7 @@ }, "packages/interactivity": { "name": "@wordpress/interactivity", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@preact/signals": "^1.3.0", @@ -51529,7 +51529,7 @@ }, "packages/interactivity-router": { "name": "@wordpress/interactivity-router", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/a11y": "file:../a11y", @@ -51542,7 +51542,7 @@ }, "packages/interface": { "name": "@wordpress/interface", - "version": "9.1.0", + "version": "9.2.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51570,7 +51570,7 @@ }, "packages/is-shallow-equal": { "name": "@wordpress/is-shallow-equal", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -51582,7 +51582,7 @@ }, "packages/jest-console": { "name": "@wordpress/jest-console", - "version": "8.16.0", + "version": "8.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51598,7 +51598,7 @@ }, "packages/jest-preset-default": { "name": "@wordpress/jest-preset-default", - "version": "12.16.0", + "version": "12.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/jest-console": "file:../jest-console", @@ -51615,7 +51615,7 @@ }, "packages/jest-puppeteer-axe": { "name": "@wordpress/jest-puppeteer-axe", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@axe-core/puppeteer": "^4.0.0", @@ -51637,7 +51637,7 @@ }, "packages/keyboard-shortcuts": { "name": "@wordpress/keyboard-shortcuts", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51655,7 +51655,7 @@ }, "packages/keycodes": { "name": "@wordpress/keycodes", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51668,7 +51668,7 @@ }, "packages/lazy-import": { "name": "@wordpress/lazy-import", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "execa": "^4.0.2", @@ -51682,7 +51682,7 @@ }, "packages/list-reusable-blocks": { "name": "@wordpress/list-reusable-blocks", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51705,7 +51705,7 @@ }, "packages/media-utils": { "name": "@wordpress/media-utils", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51722,7 +51722,7 @@ }, "packages/notices": { "name": "@wordpress/notices", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51739,7 +51739,7 @@ }, "packages/npm-package-json-lint-config": { "name": "@wordpress/npm-package-json-lint-config", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -51751,7 +51751,7 @@ }, "packages/nux": { "name": "@wordpress/nux", - "version": "9.16.0", + "version": "9.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51774,7 +51774,7 @@ }, "packages/patterns": { "name": "@wordpress/patterns", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51804,7 +51804,7 @@ }, "packages/plugins": { "name": "@wordpress/plugins", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51828,7 +51828,7 @@ }, "packages/postcss-plugins-preset": { "name": "@wordpress/postcss-plugins-preset", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/base-styles": "file:../base-styles", @@ -51897,7 +51897,7 @@ }, "packages/postcss-themes": { "name": "@wordpress/postcss-themes", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -51909,7 +51909,7 @@ }, "packages/preferences": { "name": "@wordpress/preferences", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51935,7 +51935,7 @@ }, "packages/preferences-persistence": { "name": "@wordpress/preferences-persistence", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51948,7 +51948,7 @@ }, "packages/prettier-config": { "name": "@wordpress/prettier-config", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -51960,7 +51960,7 @@ }, "packages/primitives": { "name": "@wordpress/primitives", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51977,7 +51977,7 @@ }, "packages/priority-queue": { "name": "@wordpress/priority-queue", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -51990,7 +51990,7 @@ }, "packages/private-apis": { "name": "@wordpress/private-apis", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -52002,7 +52002,7 @@ }, "packages/project-management-automation": { "name": "@wordpress/project-management-automation", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@actions/core": "1.9.1", @@ -52030,7 +52030,7 @@ }, "packages/react-i18n": { "name": "@wordpress/react-i18n", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52186,7 +52186,7 @@ }, "packages/readable-js-assets-webpack-plugin": { "name": "@wordpress/readable-js-assets-webpack-plugin", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -52198,7 +52198,7 @@ }, "packages/redux-routine": { "name": "@wordpress/redux-routine", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52241,7 +52241,7 @@ }, "packages/reusable-blocks": { "name": "@wordpress/reusable-blocks", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52268,7 +52268,7 @@ }, "packages/rich-text": { "name": "@wordpress/rich-text", - "version": "7.16.0", + "version": "7.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52292,7 +52292,7 @@ }, "packages/router": { "name": "@wordpress/router", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52313,7 +52313,7 @@ }, "packages/scripts": { "name": "@wordpress/scripts", - "version": "30.9.0", + "version": "30.10.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "7.25.7", @@ -52451,7 +52451,7 @@ }, "packages/server-side-render": { "name": "@wordpress/server-side-render", - "version": "5.16.0", + "version": "5.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52477,7 +52477,7 @@ }, "packages/shortcode": { "name": "@wordpress/shortcode", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52490,7 +52490,7 @@ }, "packages/style-engine": { "name": "@wordpress/style-engine", - "version": "2.16.0", + "version": "2.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52503,7 +52503,7 @@ }, "packages/stylelint-config": { "name": "@wordpress/stylelint-config", - "version": "23.8.0", + "version": "23.9.0", "license": "MIT", "dependencies": { "@stylistic/stylelint-plugin": "^3.0.1", @@ -52614,7 +52614,7 @@ }, "packages/sync": { "name": "@wordpress/sync", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52635,7 +52635,7 @@ }, "packages/token-list": { "name": "@wordpress/token-list", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" @@ -52647,7 +52647,7 @@ }, "packages/undo-manager": { "name": "@wordpress/undo-manager", - "version": "1.16.0", + "version": "1.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52660,7 +52660,7 @@ }, "packages/upload-media": { "name": "@wordpress/upload-media", - "version": "0.1.0", + "version": "0.2.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52687,7 +52687,7 @@ }, "packages/url": { "name": "@wordpress/url", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52700,7 +52700,7 @@ }, "packages/viewport": { "name": "@wordpress/viewport", - "version": "6.16.0", + "version": "6.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52730,7 +52730,7 @@ }, "packages/warning": { "name": "@wordpress/warning", - "version": "3.16.0", + "version": "3.17.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -52739,7 +52739,7 @@ }, "packages/widgets": { "name": "@wordpress/widgets", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", @@ -52767,7 +52767,7 @@ }, "packages/wordcount": { "name": "@wordpress/wordcount", - "version": "4.16.0", + "version": "4.17.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7" diff --git a/package.json b/package.json index 7816ecb7215721..b5fd51d6edd49b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gutenberg", - "version": "20.1.0", + "version": "20.2.0-rc.1", "private": true, "description": "A new WordPress editor experience.", "author": "The WordPress Contributors", @@ -181,7 +181,7 @@ "build": "npm run build:packages && wp-scripts build", "build:analyze-bundles": "npm run build -- --webpack-bundle-analyzer", "build:package-types": "node ./bin/packages/validate-typescript-version.js && ( tsc --build || ( echo 'tsc failed. Try cleaning up first: `npm run clean:package-types`'; exit 1 ) ) && node ./bin/packages/check-build-type-declaration-files.js", - "build:profile-types": "rimraf ./ts-traces && npm run clean:package-types && node ./bin/packages/validate-typescript-version.js && ( tsc --build --extendedDiagnostics --generateTrace ./ts-traces || ( echo 'tsc failed.'; exit 1 ) ) && node ./bin/packages/check-build-type-declaration-files.js && npx --yes @typescript/analyze-trace ts-traces > ts-traces/analysis.txt && echo $'\n\nDone! Build traces saved to ts-traces/ directory.\nTrace analysis saved to ts-traces/analysis.txt.'", + "build:profile-types": "rimraf ./ts-traces && npm run clean:package-types && node ./bin/packages/validate-typescript-version.js && ( tsc --build --extendedDiagnostics --generateTrace ./ts-traces || ( echo 'tsc failed.'; exit 1 ) ) && node ./bin/packages/check-build-type-declaration-files.js && npx --yes @typescript/analyze-trace ts-traces > ts-traces/analysis.txt && node -p \"'\\n\\nDone! Build traces saved to ts-traces/ directory.\\nTrace analysis saved to ts-traces/analysis.txt.'\"", "prebuild:packages": "npm run clean:packages && npm run --if-present --workspaces build", "build:packages": "npm run --silent build:package-types && node ./bin/packages/build.js", "postbuild:packages": " npm run --if-present --workspaces build:wp", diff --git a/packages/README.md b/packages/README.md index 79f07af29382c0..9a3d077ba671b9 100644 --- a/packages/README.md +++ b/packages/README.md @@ -214,7 +214,7 @@ If you are publishing new versions of packages, note that there are versioning r ## TypeScript -The [TypeScript](http://www.typescriptlang.org/) language is a typed superset of JavaScript that compiles to plain JavaScript. +The [TypeScript](https://www.typescriptlang.org/) language is a typed superset of JavaScript that compiles to plain JavaScript. Gutenberg does not use the TypeScript language, however TypeScript has powerful tooling that can be applied to JavaScript projects. Gutenberg uses TypeScript for several reasons, including: diff --git a/packages/a11y/CHANGELOG.md b/packages/a11y/CHANGELOG.md index 036d332c5a0b0e..1d1cd67af3f9b1 100644 --- a/packages/a11y/CHANGELOG.md +++ b/packages/a11y/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/a11y/package.json b/packages/a11y/package.json index 8bc6e23a461263..a3a82f38284b3a 100644 --- a/packages/a11y/package.json +++ b/packages/a11y/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/a11y", - "version": "4.16.0", + "version": "4.17.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 6b3bc3564d58d6..fdcd5be5577ae5 100644 --- a/packages/annotations/CHANGELOG.md +++ b/packages/annotations/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/annotations/package.json b/packages/annotations/package.json index a426bfa3d6ef7a..70af684c11b3d9 100644 --- a/packages/annotations/package.json +++ b/packages/annotations/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/annotations", - "version": "3.16.0", + "version": "3.17.0", "description": "Annotate content in the Gutenberg editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/api-fetch/CHANGELOG.md b/packages/api-fetch/CHANGELOG.md index 47cfb75849ce99..9e53a807885700 100644 --- a/packages/api-fetch/CHANGELOG.md +++ b/packages/api-fetch/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/api-fetch/package.json b/packages/api-fetch/package.json index 44e5968e0b1b49..43a52dc89fe36f 100644 --- a/packages/api-fetch/package.json +++ b/packages/api-fetch/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/api-fetch", - "version": "7.16.0", + "version": "7.17.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 9b73fe7ecaaead..edba622956be3e 100644 --- a/packages/autop/CHANGELOG.md +++ b/packages/autop/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/autop/package.json b/packages/autop/package.json index b334be020f6f97..8c187d2ecedeee 100644 --- a/packages/autop/package.json +++ b/packages/autop/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/autop", - "version": "4.16.0", + "version": "4.17.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 1c4e5fa416687a..d74cc123def452 100644 --- a/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md +++ b/packages/babel-plugin-import-jsx-pragma/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/babel-plugin-import-jsx-pragma/README.md b/packages/babel-plugin-import-jsx-pragma/README.md index ebc260277b21ab..7c8ad8c6ac3168 100644 --- a/packages/babel-plugin-import-jsx-pragma/README.md +++ b/packages/babel-plugin-import-jsx-pragma/README.md @@ -1,6 +1,6 @@ # Babel Plugin Import JSX Pragma -Babel transform plugin for automatically injecting an import to be used as the pragma for the [React JSX Transform plugin](http://babeljs.io/docs/en/babel-plugin-transform-react-jsx). +Babel transform plugin for automatically injecting an import to be used as the pragma for the [React JSX Transform plugin](https://babeljs.io/docs/babel-plugin-transform-react-jsx). [JSX](https://reactjs.org/docs/jsx-in-depth.html) is merely a syntactic sugar for a function call, typically to `React.createElement` when used with [React](https://reactjs.org/). As such, it requires that the function referenced by this transform be within the scope of the file where the JSX occurs. In a typical React project, this means React must be imported in any file where JSX exists. @@ -18,9 +18,9 @@ npm install @wordpress/babel-plugin-import-jsx-pragma ## Usage -Refer to the [Babel Plugins documentation](http://babeljs.io/docs/en/plugins) if you don't yet have experience working with Babel plugins. +Refer to the [Babel Plugins documentation](https://babeljs.io/docs/plugins) if you don't yet have experience working with Babel plugins. -Include `@wordpress/babel-plugin-import-jsx-pragma` (and [@babel/plugin-transform-react-jsx](https://babeljs.io/docs/en/babel-plugin-transform-react-jsx/)) as plugins in your Babel configuration. If you don't include both you will receive errors when encountering JSX tokens. +Include `@wordpress/babel-plugin-import-jsx-pragma` (and [@babel/plugin-transform-react-jsx](https://babeljs.io/docs/babel-plugin-transform-react-jsx/)) as plugins in your Babel configuration. If you don't include both you will receive errors when encountering JSX tokens. ```js // .babelrc.js diff --git a/packages/babel-plugin-import-jsx-pragma/package.json b/packages/babel-plugin-import-jsx-pragma/package.json index f27d527c84c697..a0003205b6b6b6 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": "5.16.0", + "version": "5.17.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 73b357e78768dd..b3a1bafe646f6e 100644 --- a/packages/babel-plugin-makepot/CHANGELOG.md +++ b/packages/babel-plugin-makepot/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/babel-plugin-makepot/package.json b/packages/babel-plugin-makepot/package.json index 56dc01c4fa9ac6..20c3957796c3b5 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": "6.16.0", + "version": "6.17.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 08633f5903d957..aa827876828c52 100644 --- a/packages/babel-preset-default/CHANGELOG.md +++ b/packages/babel-preset-default/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.17.0 (2025-01-29) + ## 8.16.0 (2025-01-15) ## 8.15.0 (2025-01-02) diff --git a/packages/babel-preset-default/package.json b/packages/babel-preset-default/package.json index db0aad976eea5a..e1e43984e69f24 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": "8.16.0", + "version": "8.17.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 51a6d9500efe90..e4aceae936710d 100644 --- a/packages/base-styles/CHANGELOG.md +++ b/packages/base-styles/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/base-styles/package.json b/packages/base-styles/package.json index 2ff26eb2f475d2..63590daa9c178e 100644 --- a/packages/base-styles/package.json +++ b/packages/base-styles/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/base-styles", - "version": "5.16.0", + "version": "5.17.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 126b56cd813503..be1d924dd45760 100644 --- a/packages/blob/CHANGELOG.md +++ b/packages/blob/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/blob/package.json b/packages/blob/package.json index d2dd0c206892f7..9a0b10a416bec3 100644 --- a/packages/blob/package.json +++ b/packages/blob/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/blob", - "version": "4.16.0", + "version": "4.17.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 80b139c9a966d0..0ac19bd45c8647 100644 --- a/packages/block-directory/CHANGELOG.md +++ b/packages/block-directory/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/block-directory/package.json b/packages/block-directory/package.json index e1f4cc0cefa988..b3af341dba0f37 100644 --- a/packages/block-directory/package.json +++ b/packages/block-directory/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-directory", - "version": "5.16.0", + "version": "5.17.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 96ecfe5d0e629c..18bb4d23d0a7ab 100644 --- a/packages/block-editor/CHANGELOG.md +++ b/packages/block-editor/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 14.12.0 (2025-01-29) + ## 14.11.0 (2025-01-15) ## 14.10.0 (2025-01-02) diff --git a/packages/block-editor/package.json b/packages/block-editor/package.json index 0a5691666dc72d..bb247c1d283567 100644 --- a/packages/block-editor/package.json +++ b/packages/block-editor/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-editor", - "version": "14.11.0", + "version": "14.12.0", "description": "Generic block editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-editor/src/components/block-popover/use-popover-scroll.js b/packages/block-editor/src/components/block-popover/use-popover-scroll.js index 8aeb768e302f62..97bc4c5b299377 100644 --- a/packages/block-editor/src/components/block-popover/use-popover-scroll.js +++ b/packages/block-editor/src/components/block-popover/use-popover-scroll.js @@ -2,24 +2,29 @@ * WordPress dependencies */ import { useRefEffect } from '@wordpress/compose'; +import { getScrollContainer } from '@wordpress/dom'; + +const scrollContainerCache = new WeakMap(); /** * Allow scrolling "through" popovers over the canvas. This is only called for * as long as the pointer is over a popover. Do not use React events because it * will bubble through portals. * - * @param {Object} scrollableRef + * @param {Object} contentRef */ -function usePopoverScroll( scrollableRef ) { +function usePopoverScroll( contentRef ) { return useRefEffect( ( node ) => { - if ( ! scrollableRef ) { - return; - } - function onWheel( event ) { const { deltaX, deltaY } = event; - scrollableRef.current.scrollBy( deltaX, deltaY ); + const contentEl = contentRef.current; + let scrollContainer = scrollContainerCache.get( contentEl ); + if ( ! scrollContainer ) { + scrollContainer = getScrollContainer( contentEl ); + scrollContainerCache.set( contentEl, scrollContainer ); + } + scrollContainer.scrollBy( deltaX, deltaY ); } // Tell the browser that we do not call event.preventDefault // See https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#improving_scrolling_performance_with_passive_listeners @@ -29,7 +34,7 @@ function usePopoverScroll( scrollableRef ) { node.removeEventListener( 'wheel', onWheel, options ); }; }, - [ scrollableRef ] + [ contentRef ] ); } diff --git a/packages/block-editor/src/components/block-tools/block-toolbar-popover.js b/packages/block-editor/src/components/block-tools/block-toolbar-popover.js index c6378130b7da42..0724928cfeacb2 100644 --- a/packages/block-editor/src/components/block-tools/block-toolbar-popover.js +++ b/packages/block-editor/src/components/block-tools/block-toolbar-popover.js @@ -11,7 +11,7 @@ import { useShortcut } from '@wordpress/keyboard-shortcuts'; /** * Internal dependencies */ -import BlockPopover from '../block-popover'; +import { PrivateBlockPopover } from '../block-popover'; import useBlockToolbarPopoverProps from './use-block-toolbar-popover-props'; import useSelectedBlockToolProps from './use-selected-block-tool-props'; import { store as blockEditorStore } from '../../store'; @@ -58,7 +58,7 @@ export default function BlockToolbarPopover( { return ( ! isTyping && ( - - + ) ); } diff --git a/packages/block-editor/src/components/spacing-sizes-control/README.md b/packages/block-editor/src/components/spacing-sizes-control/README.md new file mode 100644 index 00000000000000..c8e280c6807120 --- /dev/null +++ b/packages/block-editor/src/components/spacing-sizes-control/README.md @@ -0,0 +1,93 @@ +# Spacing Sizes Control + +The SpacingSizesControl component provides a flexible user interface for controlling spacing values in blocks, allowing users to modify values for different sides. It supports three viewing modes: + +1. Single: Control one side at a time. +2. Axial: Control horizontal and vertical sides together. +3. Custom: Control each side separately. + +## Usage + +```jsx +import { __experimentalSpacingSizesControl as SpacingSizesControl } from '@wordpress/block-editor'; +import { useState } from '@wordpress/element'; + +function Example() { + const [ sides, setSides ] = useState( { + top: '0px', + right: '0px', + bottom: '0px', + left: '0px', + } ); + + return ( + + ); +} +``` + +## Props + +### `inputProps` + +- Type: `Object` +- Required: No +- Description: Additional props to pass to the input controls. + +### `label` + +- Type: `String` +- Required: Yes +- Description: Label for the control. + +### `minimumCustomValue` + +- Type: `Number` +- Default: 0 +- Description: Minimum value allowed for custom input. + +### `onChange` + +- Type: `Function` +- Required: Yes +- Description: Callback function called when spacing values change. Receives an object containing the updated values. + +### `onMouseOut` + +- Type: `Function` +- Required: No +- Description: Callback function called when mouse leaves the control. + +### `onMouseOver` + +- Type: `Function` +- Required: No +- Description: Callback function called when mouse enters the control. + +### `showSideInLabel` + +- Type: `Boolean` +- Default: true +- Description: Whether to show the side (top, right, etc.) in the control label. + +### `sides` + +- Type: `Array` +- Default: ALL_SIDES (top, right, bottom, left) +- Description: Array of sides that can be controlled. + +### `useSelect` + +- Type: `Boolean` +- Required: No +- Description: Whether to use a select control for predefined values. + +### `values` + +- Type: `Object` +- Required: No +- Description: Object containing the current spacing values for each side. diff --git a/packages/block-editor/src/components/spacing-sizes-control/index.js b/packages/block-editor/src/components/spacing-sizes-control/index.js index 458b0abee60f2e..5adbe5548556ff 100644 --- a/packages/block-editor/src/components/spacing-sizes-control/index.js +++ b/packages/block-editor/src/components/spacing-sizes-control/index.js @@ -12,11 +12,11 @@ import { _x, sprintf } from '@wordpress/i18n'; /** * Internal dependencies */ +import useSpacingSizes from './hooks/use-spacing-sizes'; import AxialInputControls from './input-controls/axial'; import SeparatedInputControls from './input-controls/separated'; import SingleInputControl from './input-controls/single'; import LinkedButton from './linked-button'; -import useSpacingSizes from './hooks/use-spacing-sizes'; import { ALL_SIDES, DEFAULT_VALUES, @@ -25,6 +25,49 @@ import { getInitialView, } from './utils'; +/** + * A flexible control for managing spacing values in the block editor. Supports single, axial, + * and separated input controls for different spacing configurations with automatic view selection + * based on current values and available sides. + * + * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/spacing-sizes-control/README.md + * + * @example + * ```jsx + * import { __experimentalSpacingSizesControl as SpacingSizesControl } from '@wordpress/block-editor'; + * import { useState } from '@wordpress/element'; + * + * function Example() { + * const [ sides, setSides ] = useState( { + * top: '0px', + * right: '0px', + * bottom: '0px', + * left: '0px', + * } ); + * + * return ( + * + * ); + * } + * ``` + * + * @param {Object} props Component props. + * @param {Object} props.inputProps Additional props for input controls. + * @param {string} props.label Label for the control. + * @param {number} props.minimumCustomValue Minimum value for custom input. + * @param {Function} props.onChange Called when spacing values change. + * @param {Function} props.onMouseOut Called when mouse leaves the control. + * @param {Function} props.onMouseOver Called when mouse enters the control. + * @param {boolean} props.showSideInLabel Show side in control label. + * @param {Array} props.sides Available sides for control. + * @param {boolean} props.useSelect Use select control for predefined values. + * @param {Object} props.values Current spacing values. + * @return {Element} Spacing sizes control component. + */ export default function SpacingSizesControl( { inputProps, label: labelProp, diff --git a/packages/block-editor/src/store/selectors.js b/packages/block-editor/src/store/selectors.js index 22d725bbcd65de..e2e2ef6b655564 100644 --- a/packages/block-editor/src/store/selectors.js +++ b/packages/block-editor/src/store/selectors.js @@ -1626,15 +1626,23 @@ const isBlockVisibleInTheInserter = ( Array.isArray( blockType.parent ) ? blockType.parent : [] ).concat( Array.isArray( blockType.ancestor ) ? blockType.ancestor : [] ); if ( parents.length > 0 ) { - const rootBlockName = getBlockName( state, rootClientId ); // This is an exception to the rule that says that all blocks are visible in the inserter. // Blocks that require a given parent or ancestor are only visible if we're within that parent. - return ( - parents.includes( 'core/post-content' ) || - parents.includes( rootBlockName ) || - getBlockParentsByBlockName( state, rootClientId, parents ).length > - 0 - ); + if ( parents.includes( 'core/post-content' ) ) { + return true; + } + + let current = rootClientId; + let hasParent = false; + do { + if ( parents.includes( getBlockName( state, current ) ) ) { + hasParent = true; + break; + } + current = state.blocks.parents.get( current ); + } while ( current ); + + return hasParent; } return true; diff --git a/packages/block-library/CHANGELOG.md b/packages/block-library/CHANGELOG.md index c819c35987ef91..0a0f9ca66f0545 100644 --- a/packages/block-library/CHANGELOG.md +++ b/packages/block-library/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.17.0 (2025-01-29) + ## 9.16.0 (2025-01-15) ## 9.15.0 (2025-01-02) diff --git a/packages/block-library/package.json b/packages/block-library/package.json index d189a95ba2e474..87f11717834538 100644 --- a/packages/block-library/package.json +++ b/packages/block-library/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-library", - "version": "9.16.0", + "version": "9.17.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/categories/block.json b/packages/block-library/src/categories/block.json index 3609bdf9ab97c0..8320fa912a175f 100644 --- a/packages/block-library/src/categories/block.json +++ b/packages/block-library/src/categories/block.json @@ -66,6 +66,15 @@ "fontSize": true } }, + "color": { + "gradients": true, + "link": true, + "__experimentalDefaultControls": { + "background": true, + "text": true, + "link": true + } + }, "interactivity": { "clientNavigation": true }, diff --git a/packages/block-library/src/details/block.json b/packages/block-library/src/details/block.json index e4fadc4a064f97..19d5c554cd26d6 100644 --- a/packages/block-library/src/details/block.json +++ b/packages/block-library/src/details/block.json @@ -25,6 +25,9 @@ }, "allowedBlocks": { "type": "array" + }, + "placeholder": { + "type": "string" } }, "supports": { diff --git a/packages/block-library/src/details/edit.js b/packages/block-library/src/details/edit.js index b7e8f815e21c06..89221c96bb8ccb 100644 --- a/packages/block-library/src/details/edit.js +++ b/packages/block-library/src/details/edit.js @@ -31,7 +31,8 @@ const TEMPLATE = [ ]; function DetailsEdit( { attributes, setAttributes } ) { - const { name, showContent, summary, allowedBlocks } = attributes; + const { name, showContent, summary, allowedBlocks, placeholder } = + attributes; const blockProps = useBlockProps(); const innerBlocksProps = useInnerBlocksProps( blockProps, { template: TEMPLATE, @@ -100,7 +101,7 @@ function DetailsEdit( { attributes, setAttributes } ) { @@ -533,9 +528,7 @@ export default function NavigationLinkEdit( { { /* eslint-enable */ } { ! url ? (
- - { missingText } - + { missingText }
) : ( <> @@ -578,27 +571,30 @@ export default function NavigationLinkEdit( { { ( isInvalid || isDraft || isLabelFieldFocused ) && ( -
- - - { - // Some attributes are stored in an escaped form. It's a legacy issue. - // Ideally they would be stored in a raw, unescaped form. - // Unescape is used here to "recover" the escaped characters - // so they display without encoding. - // See `updateAttributes` for more details. - `${ decodeEntities( label ) } ${ - isInvalid || isDraft - ? placeholderText - : '' - }`.trim() - } - - +
+ + { + // Some attributes are stored in an escaped form. It's a legacy issue. + // Ideally they would be stored in a raw, unescaped form. + // Unescape is used here to "recover" the escaped characters + // so they display without encoding. + // See `updateAttributes` for more details. + `${ decodeEntities( label ) } ${ + isInvalid || isDraft + ? placeholderText + : '' + }`.trim() + } +
) } diff --git a/packages/block-library/src/navigation-link/editor.scss b/packages/block-library/src/navigation-link/editor.scss index 84cd6f6d4ee363..b27c4520921fd4 100644 --- a/packages/block-library/src/navigation-link/editor.scss +++ b/packages/block-library/src/navigation-link/editor.scss @@ -80,24 +80,33 @@ background-image: none !important; // Draw a wavy underline. - .wp-block-navigation-link__placeholder-text span { - $blur: 10%; - $width: 6%; - $stop1: 30%; - $stop2: 64%; - - --wp-underline-color: var(--wp-admin-theme-color); - - background-image: - linear-gradient(45deg, transparent ($stop1 - $blur), var(--wp-underline-color) $stop1, var(--wp-underline-color) ($stop1 + $width), transparent ($stop1 + $width + $blur)), - linear-gradient(135deg, transparent ($stop2 - $blur), var(--wp-underline-color) $stop2, var(--wp-underline-color) ($stop2 + $width), transparent ($stop2 + $width + $blur)); - background-position: 0 100%; - background-size: 6px 3px; - background-repeat: repeat-x; - - // Since applied to a span, it doesn't change the footprint of the item, - // but it does vertically shift the underline to better align. - padding-bottom: 0.1em; + .wp-block-navigation-link__placeholder-text { + span { + $blur: 10%; + $width: 6%; + $stop1: 30%; + $stop2: 64%; + + --wp-underline-color: var(--wp-admin-theme-color); + + background-image: + linear-gradient(45deg, transparent ($stop1 - $blur), var(--wp-underline-color) $stop1, var(--wp-underline-color) ($stop1 + $width), transparent ($stop1 + $width + $blur)), + linear-gradient(135deg, transparent ($stop2 - $blur), var(--wp-underline-color) $stop2, var(--wp-underline-color) ($stop2 + $width), transparent ($stop2 + $width + $blur)); + background-position: 0 100%; + background-size: 6px 3px; + background-repeat: repeat-x; + + // Since applied to a span, it doesn't change the footprint of the item, + // but it does vertically shift the underline to better align. + padding-bottom: 0.1em; + } + + &.is-invalid, + &.is-draft { + span { + --wp-underline-color: #{$alert-red}; + } + } } // This needs extra specificity. diff --git a/packages/block-library/src/navigation/edit/use-convert-classic-menu-to-block-menu.js b/packages/block-library/src/navigation/edit/use-convert-classic-menu-to-block-menu.js index 300672fa91e8ad..0984f601959a05 100644 --- a/packages/block-library/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +++ b/packages/block-library/src/navigation/edit/use-convert-classic-menu-to-block-menu.js @@ -47,7 +47,7 @@ function useConvertClassicToBlockMenu( } catch ( err ) { throw new Error( sprintf( - // translators: %s: the name of a menu (e.g. Header navigation). + // translators: %s: The name of a menu (e.g. Header menu). __( `Unable to fetch classic menu "%s" from API.` ), menuName ), @@ -61,7 +61,7 @@ function useConvertClassicToBlockMenu( if ( classicMenuItems === null ) { throw new Error( sprintf( - // translators: %s: the name of a menu (e.g. Header navigation). + // translators: %s: The name of a menu (e.g. Header menu). __( `Unable to fetch classic menu "%s" from API.` ), menuName ) @@ -98,7 +98,7 @@ function useConvertClassicToBlockMenu( } catch ( err ) { throw new Error( sprintf( - // translators: %s: the name of a menu (e.g. Header navigation). + // translators: %s: The name of a menu (e.g. Header menu). __( `Unable to create Navigation Menu "%s".` ), menuName ), @@ -155,7 +155,7 @@ function useConvertClassicToBlockMenu( if ( throwOnError ) { throw new Error( sprintf( - // translators: %s: the name of a menu (e.g. Header navigation). + // translators: %s: The name of a menu (e.g. Header menu). __( `Unable to create Navigation Menu "%s".` ), menuName ), diff --git a/packages/block-library/src/navigation/edit/use-generate-default-navigation-title.js b/packages/block-library/src/navigation/edit/use-generate-default-navigation-title.js index 0a134a256e6646..9784a5fd75a6b4 100644 --- a/packages/block-library/src/navigation/edit/use-generate-default-navigation-title.js +++ b/packages/block-library/src/navigation/edit/use-generate-default-navigation-title.js @@ -50,12 +50,12 @@ export default function useGenerateDefaultNavigationTitle( clientId ) { const title = area ? sprintf( - // translators: %s: the name of a menu (e.g. Header navigation). - __( '%s navigation' ), + // translators: %s: the name of a menu (e.g. Header menu). + __( '%s menu' ), area ) - : // translators: 'navigation' as in website navigation. - __( 'Navigation' ); + : // translators: 'menu' as in website navigation menu. + __( 'Menu' ); // Determine how many menus start with the automatic title. const matchingMenuTitleCount = [ diff --git a/packages/block-library/src/spacer/controls.js b/packages/block-library/src/spacer/controls.js index b5f73a259419d2..8ebc2b825bee08 100644 --- a/packages/block-library/src/spacer/controls.js +++ b/packages/block-library/src/spacer/controls.js @@ -44,10 +44,6 @@ function DimensionInput( { label, onChange, isResizing, value = '' } ) { defaultValues: { px: 100, em: 10, rem: 10, vw: 10, vh: 25 }, } ); - const handleOnChange = ( unprocessedValue ) => { - onChange( unprocessedValue.all ); - }; - // Force the unit to update to `px` when the Spacer is being resized. const [ parsedQuantity, parsedUnit ] = parseQuantityAndUnitFromRawValue( value ); @@ -57,23 +53,24 @@ function DimensionInput( { label, onChange, isResizing, value = '' } ) { return ( <> - { ( ! spacingSizes || spacingSizes?.length === 0 ) && ( + { spacingSizes?.length < 2 ? ( - ) } - { spacingSizes?.length > 0 && ( + ) : ( { + onChange( all ); + } } label={ label } sides={ [ 'all' ] } units={ units } diff --git a/packages/block-library/src/spacer/edit.js b/packages/block-library/src/spacer/edit.js index af84edf7baf657..b2de69ad9a6a80 100644 --- a/packages/block-library/src/spacer/edit.js +++ b/packages/block-library/src/spacer/edit.js @@ -16,7 +16,7 @@ import { import { ResizableBox } from '@wordpress/components'; import { useState, useEffect } from '@wordpress/element'; import { View } from '@wordpress/primitives'; -import { useSelect } from '@wordpress/data'; +import { useSelect, useDispatch } from '@wordpress/data'; /** * Internal dependencies @@ -124,6 +124,9 @@ const SpacerEdit = ( { const onResizeStart = () => toggleSelection( false ); const onResizeStop = () => toggleSelection( true ); + const { __unstableMarkNextChangeAsNotPersistent } = + useDispatch( blockEditorStore ); + const handleOnVerticalResizeStop = ( newHeight ) => { onResizeStop(); @@ -256,6 +259,14 @@ const SpacerEdit = ( { }; useEffect( () => { + // To avoid interfering with undo/redo operations any changes in this + // effect must not make history and should be preceded by + // `__unstableMarkNextChangeAsNotPersistent()`. + const setAttributesCovertly = ( nextAttributes ) => { + __unstableMarkNextChangeAsNotPersistent(); + setAttributes( nextAttributes ); + }; + if ( isFlexLayout && selfStretch !== 'fill' && @@ -269,7 +280,7 @@ const SpacerEdit = ( { getCustomValueFromPreset( width, spacingSizes ) || getCustomValueFromPreset( height, spacingSizes ) || '100px'; - setAttributes( { + setAttributesCovertly( { width: '0px', style: { ...blockStyle, @@ -285,7 +296,7 @@ const SpacerEdit = ( { getCustomValueFromPreset( height, spacingSizes ) || getCustomValueFromPreset( width, spacingSizes ) || '100px'; - setAttributes( { + setAttributesCovertly( { height: '0px', style: { ...blockStyle, @@ -301,26 +312,16 @@ const SpacerEdit = ( { isFlexLayout && ( selfStretch === 'fill' || selfStretch === 'fit' ) ) { - if ( inheritedOrientation === 'horizontal' ) { - setAttributes( { - width: undefined, - } ); - } else { - setAttributes( { - height: undefined, - } ); - } + setAttributesCovertly( + inheritedOrientation === 'horizontal' + ? { width: undefined } + : { height: undefined } + ); } else if ( ! isFlexLayout && ( selfStretch || flexSize ) ) { - if ( inheritedOrientation === 'horizontal' ) { - setAttributes( { - width: flexSize, - } ); - } else { - setAttributes( { - height: flexSize, - } ); - } - setAttributes( { + setAttributesCovertly( { + ...( inheritedOrientation === 'horizontal' + ? { width: flexSize } + : { height: flexSize } ), style: { ...blockStyle, layout: { @@ -342,6 +343,7 @@ const SpacerEdit = ( { setAttributes, spacingSizes, width, + __unstableMarkNextChangeAsNotPersistent, ] ); return ( diff --git a/packages/block-serialization-default-parser/CHANGELOG.md b/packages/block-serialization-default-parser/CHANGELOG.md index e35805be07d06c..650eee5b822ba9 100644 --- a/packages/block-serialization-default-parser/CHANGELOG.md +++ b/packages/block-serialization-default-parser/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/block-serialization-default-parser/package.json b/packages/block-serialization-default-parser/package.json index 4fc3bff8afb64c..45718ca769be67 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": "5.16.0", + "version": "5.17.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 285ee69d78310a..8757648ae3549e 100644 --- a/packages/block-serialization-spec-parser/CHANGELOG.md +++ b/packages/block-serialization-spec-parser/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/block-serialization-spec-parser/package.json b/packages/block-serialization-spec-parser/package.json index e9ac344ff34a10..f188e9cd25660f 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": "5.16.0", + "version": "5.17.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 bf63c0089bb8e5..4cf4167097034a 100644 --- a/packages/blocks/CHANGELOG.md +++ b/packages/blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 14.6.0 (2025-01-29) + ## 14.5.0 (2025-01-15) ## 14.4.0 (2025-01-02) diff --git a/packages/blocks/package.json b/packages/blocks/package.json index 5940cfbeb46647..92410b54ba19a7 100644 --- a/packages/blocks/package.json +++ b/packages/blocks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/blocks", - "version": "14.5.0", + "version": "14.6.0", "description": "Block API for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/browserslist-config/CHANGELOG.md b/packages/browserslist-config/CHANGELOG.md index 82159a48650348..122123b9596786 100644 --- a/packages/browserslist-config/CHANGELOG.md +++ b/packages/browserslist-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/browserslist-config/package.json b/packages/browserslist-config/package.json index dc16330ceb4e70..1253719c4724c9 100644 --- a/packages/browserslist-config/package.json +++ b/packages/browserslist-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/browserslist-config", - "version": "6.16.0", + "version": "6.17.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 b0d765c04c3064..cd8b74233cfeba 100644 --- a/packages/commands/CHANGELOG.md +++ b/packages/commands/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/commands/package.json b/packages/commands/package.json index ce9df5b78d7dd8..5e2d57f7d92fba 100644 --- a/packages/commands/package.json +++ b/packages/commands/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/commands", - "version": "1.16.0", + "version": "1.17.0", "description": "Handles the commands menu.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index bf775a152747d0..c487b0a17a288d 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 29.3.0 (2025-01-29) + ### Enhancements - `BorderBoxControl`, `BoxControl`: Remove `Tooltip` component from linked button ([#68498](https://github.com/WordPress/gutenberg/pull/68498)). diff --git a/packages/components/package.json b/packages/components/package.json index 08707526f52118..29a62cd7c49ff7 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/components", - "version": "29.2.0", + "version": "29.3.0", "description": "UI components for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/compose/CHANGELOG.md b/packages/compose/CHANGELOG.md index 9b6d54aac474c7..99fcb659f8b0ec 100644 --- a/packages/compose/CHANGELOG.md +++ b/packages/compose/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/compose/package.json b/packages/compose/package.json index 77851f50a5823f..4e9eb19d13acb5 100644 --- a/packages/compose/package.json +++ b/packages/compose/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/compose", - "version": "7.16.0", + "version": "7.17.0", "description": "WordPress higher-order components (HOCs).", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/core-commands/CHANGELOG.md b/packages/core-commands/CHANGELOG.md index c93d3b2647d520..6fc42e7161dbc6 100644 --- a/packages/core-commands/CHANGELOG.md +++ b/packages/core-commands/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/core-commands/package.json b/packages/core-commands/package.json index bb215e46c85932..aa9fd5653c0b11 100644 --- a/packages/core-commands/package.json +++ b/packages/core-commands/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/core-commands", - "version": "1.16.0", + "version": "1.17.0", "description": "WordPress core reusable commands.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/core-data/CHANGELOG.md b/packages/core-data/CHANGELOG.md index 235d3644c46dc7..a19879790fc708 100644 --- a/packages/core-data/CHANGELOG.md +++ b/packages/core-data/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/core-data/package.json b/packages/core-data/package.json index c3d25fc183cdf5..e6f84c7bd15e3e 100644 --- a/packages/core-data/package.json +++ b/packages/core-data/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/core-data", - "version": "7.16.0", + "version": "7.17.0", "description": "Access to and manipulation of core WordPress entities.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/create-block-interactive-template/package.json b/packages/create-block-interactive-template/package.json index 62a306de6e7d93..00f3515c2e289d 100644 --- a/packages/create-block-interactive-template/package.json +++ b/packages/create-block-interactive-template/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/create-block-interactive-template", - "version": "2.16.0", + "version": "2.17.0", "description": "Template for @wordpress/create-block to create interactive blocks with the Interactivity API.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/create-block-tutorial-template/CHANGELOG.md b/packages/create-block-tutorial-template/CHANGELOG.md index f985fb3cbaea82..42d82d1a2d289f 100644 --- a/packages/create-block-tutorial-template/CHANGELOG.md +++ b/packages/create-block-tutorial-template/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/create-block-tutorial-template/package.json b/packages/create-block-tutorial-template/package.json index 0b02cb36f9c4de..8d6cd268a879b8 100644 --- a/packages/create-block-tutorial-template/package.json +++ b/packages/create-block-tutorial-template/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/create-block-tutorial-template", - "version": "4.16.0", + "version": "4.17.0", "description": "This is a template for @wordpress/create-block that creates an example 'Copyright Date' block. This block is used in the official WordPress block development Quick Start Guide.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/create-block/CHANGELOG.md b/packages/create-block/CHANGELOG.md index dd0fb85b2f0d90..9d9a3e3bce59ef 100644 --- a/packages/create-block/CHANGELOG.md +++ b/packages/create-block/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.60.0 (2025-01-29) + ## 4.59.0 (2025-01-15) ## 4.58.0 (2025-01-02) diff --git a/packages/create-block/package.json b/packages/create-block/package.json index 10a1a0b8829375..477eb0f98dd858 100644 --- a/packages/create-block/package.json +++ b/packages/create-block/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/create-block", - "version": "4.59.0", + "version": "4.60.0", "description": "Generates PHP, JS and CSS code for registering a block for a WordPress plugin.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/customize-widgets/CHANGELOG.md b/packages/customize-widgets/CHANGELOG.md index 38a9ff31781dc9..afded4c24a04f0 100644 --- a/packages/customize-widgets/CHANGELOG.md +++ b/packages/customize-widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/customize-widgets/package.json b/packages/customize-widgets/package.json index f0659343560734..b30cf8ae4db38b 100644 --- a/packages/customize-widgets/package.json +++ b/packages/customize-widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/customize-widgets", - "version": "5.16.0", + "version": "5.17.0", "description": "Widgets blocks in Customizer Module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/data-controls/CHANGELOG.md b/packages/data-controls/CHANGELOG.md index 96e2448a911ced..331beda591a484 100644 --- a/packages/data-controls/CHANGELOG.md +++ b/packages/data-controls/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/data-controls/package.json b/packages/data-controls/package.json index 5f025c5c889b57..a4045e68fa173a 100644 --- a/packages/data-controls/package.json +++ b/packages/data-controls/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/data-controls", - "version": "4.16.0", + "version": "4.17.0", "description": "A set of common controls for the @wordpress/data api.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/data/CHANGELOG.md b/packages/data/CHANGELOG.md index 6a2de21f115504..2442244b677deb 100644 --- a/packages/data/CHANGELOG.md +++ b/packages/data/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 10.17.0 (2025-01-29) + ## 10.16.0 (2025-01-15) ## 10.15.0 (2025-01-02) diff --git a/packages/data/package.json b/packages/data/package.json index 33ac259a931c81..7a90897d453bd8 100644 --- a/packages/data/package.json +++ b/packages/data/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/data", - "version": "10.16.0", + "version": "10.17.0", "description": "Data module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/dataviews/CHANGELOG.md b/packages/dataviews/CHANGELOG.md index 4342621cc74050..8c644d78a91634 100644 --- a/packages/dataviews/CHANGELOG.md +++ b/packages/dataviews/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.13.0 (2025-01-29) + ## 4.12.0 (2025-01-15) ## 4.11.0 (2025-01-02) diff --git a/packages/dataviews/package.json b/packages/dataviews/package.json index a0bb5cbf28a3ee..60161082ff10dc 100644 --- a/packages/dataviews/package.json +++ b/packages/dataviews/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dataviews", - "version": "4.12.0", + "version": "4.13.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/date/CHANGELOG.md b/packages/date/CHANGELOG.md index 810fbd5aacda66..4790ab7220debb 100644 --- a/packages/date/CHANGELOG.md +++ b/packages/date/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/date/package.json b/packages/date/package.json index d1c0a441452223..b68fd0789a11fe 100644 --- a/packages/date/package.json +++ b/packages/date/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/date", - "version": "5.16.0", + "version": "5.17.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 56952827917e2b..1003bccd93d848 100644 --- a/packages/dependency-extraction-webpack-plugin/CHANGELOG.md +++ b/packages/dependency-extraction-webpack-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/dependency-extraction-webpack-plugin/package.json b/packages/dependency-extraction-webpack-plugin/package.json index ae7cbfe9eb8690..8dee3f6a2a35e0 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": "6.16.0", + "version": "6.17.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 bb2b26071230e5..e685d814f4c0cf 100644 --- a/packages/deprecated/CHANGELOG.md +++ b/packages/deprecated/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/deprecated/package.json b/packages/deprecated/package.json index e7dbada8db22be..c1637380b22b7f 100644 --- a/packages/deprecated/package.json +++ b/packages/deprecated/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/deprecated", - "version": "4.16.0", + "version": "4.17.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 f3a514d0a10f73..5279b376fe1c54 100644 --- a/packages/docgen/CHANGELOG.md +++ b/packages/docgen/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/docgen/package.json b/packages/docgen/package.json index 2f02999eaf595f..9083dcf2e4c9ee 100644 --- a/packages/docgen/package.json +++ b/packages/docgen/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/docgen", - "version": "2.16.0", + "version": "2.17.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 33ae1124f64618..90e953a9416b73 100644 --- a/packages/dom-ready/CHANGELOG.md +++ b/packages/dom-ready/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/dom-ready/package.json b/packages/dom-ready/package.json index 94663fa6893313..9ae59ee9392605 100644 --- a/packages/dom-ready/package.json +++ b/packages/dom-ready/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dom-ready", - "version": "4.16.0", + "version": "4.17.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 cf9fffd2c60774..83931d4c6e9af0 100644 --- a/packages/dom/CHANGELOG.md +++ b/packages/dom/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/dom/package.json b/packages/dom/package.json index 0d4aacee384894..0c1d83bacbdcf3 100644 --- a/packages/dom/package.json +++ b/packages/dom/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dom", - "version": "4.16.0", + "version": "4.17.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 3d2a0f8ce10658..4df25e7f9c9e4a 100644 --- a/packages/e2e-test-utils-playwright/CHANGELOG.md +++ b/packages/e2e-test-utils-playwright/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/e2e-test-utils-playwright/package.json b/packages/e2e-test-utils-playwright/package.json index ace65501cbd5d3..010c5077aefe3c 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": "1.16.0", + "version": "1.17.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 00ccbb6fdc6ac4..2b615ef3784d0e 100644 --- a/packages/e2e-test-utils/CHANGELOG.md +++ b/packages/e2e-test-utils/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 11.17.0 (2025-01-29) + ## 11.16.0 (2025-01-15) ## 11.15.0 (2025-01-02) diff --git a/packages/e2e-test-utils/package.json b/packages/e2e-test-utils/package.json index c58be2844ba696..03b8ee6e7b8e55 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": "11.16.0", + "version": "11.17.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 ee16b4bfc26547..fdcedc5da91c38 100644 --- a/packages/e2e-tests/CHANGELOG.md +++ b/packages/e2e-tests/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.17.0 (2025-01-29) + ## 8.16.0 (2025-01-15) ## 8.15.0 (2025-01-02) diff --git a/packages/e2e-tests/package.json b/packages/e2e-tests/package.json index bc7219713cee9c..275080914f4050 100644 --- a/packages/e2e-tests/package.json +++ b/packages/e2e-tests/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/e2e-tests", - "version": "8.16.0", + "version": "8.17.0", "description": "End-To-End (E2E) tests for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/e2e-tests/plugins/interactive-blocks/router-styles-wrapper/render.php b/packages/e2e-tests/plugins/interactive-blocks/router-styles-wrapper/render.php index 6373e8e9bc235b..683db9eea5c4c7 100644 --- a/packages/e2e-tests/plugins/interactive-blocks/router-styles-wrapper/render.php +++ b/packages/e2e-tests/plugins/interactive-blocks/router-styles-wrapper/render.php @@ -7,6 +7,17 @@ * @phpcs:disable VariableAnalysis.CodeAnalysis.VariableAnalysis.UndefinedVariable */ +add_action( + 'wp_enqueue_scripts', + function () { + wp_enqueue_style( + 'wrapper-styles-from-link', + plugin_dir_url( __FILE__ ) . 'style-from-link.css', + array() + ); + } +); + $wrapper_attributes = get_block_wrapper_attributes(); ?>
> @@ -38,6 +49,12 @@

All

+ +
+ Rule order checker +

I should remain green

+
+
) } diff --git a/packages/edit-site/src/components/pagination/index.js b/packages/edit-site/src/components/pagination/index.js index 5d6ce852d5a4c4..c49182d7b0c714 100644 --- a/packages/edit-site/src/components/pagination/index.js +++ b/packages/edit-site/src/components/pagination/index.js @@ -22,7 +22,7 @@ export default function Pagination( { className, disabled = false, buttonVariant = 'tertiary', - label = __( 'Pagination Navigation' ), + label = __( 'Pagination' ), } ) { return ( ) } - { meta && ( - <> -
- { meta } -
- - ) } -
{ description && (

diff --git a/packages/edit-site/src/components/sidebar-navigation-screen/style.scss b/packages/edit-site/src/components/sidebar-navigation-screen/style.scss index 71704653b4cd89..c4ee3f26599b18 100644 --- a/packages/edit-site/src/components/sidebar-navigation-screen/style.scss +++ b/packages/edit-site/src/components/sidebar-navigation-screen/style.scss @@ -27,29 +27,6 @@ } } -.edit-site-sidebar-navigation-screen__meta { - margin: 0 0 $grid-unit-20 $grid-unit-20; - color: $gray-400; - .components-text { - color: $gray-400; - } -} - -.edit-site-sidebar-navigation-screen__page-link { - color: $gray-600; - display: inline-block; - word-break: break-word; - - &:hover, - &:focus { - color: $white; - } - - .components-external-link__icon { - margin-left: $grid-unit-05; - } -} - .edit-site-sidebar-navigation-screen__title-icon { position: sticky; top: 0; diff --git a/packages/edit-widgets/CHANGELOG.md b/packages/edit-widgets/CHANGELOG.md index bde44856bf4f23..b7b4bfa52be628 100644 --- a/packages/edit-widgets/CHANGELOG.md +++ b/packages/edit-widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/edit-widgets/package.json b/packages/edit-widgets/package.json index e06e1cf74aeb8b..f04357aab48f45 100644 --- a/packages/edit-widgets/package.json +++ b/packages/edit-widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/edit-widgets", - "version": "6.16.0", + "version": "6.17.0", "description": "Widgets Page module for WordPress..", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/editor/CHANGELOG.md b/packages/editor/CHANGELOG.md index ecad566fe77a57..35590b79c75c39 100644 --- a/packages/editor/CHANGELOG.md +++ b/packages/editor/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 14.17.0 (2025-01-29) + ## 14.16.0 (2025-01-15) ## 14.15.0 (2025-01-02) diff --git a/packages/editor/package.json b/packages/editor/package.json index d5a60f70eef5ab..bfa645fa88a74b 100644 --- a/packages/editor/package.json +++ b/packages/editor/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/editor", - "version": "14.16.0", + "version": "14.17.0", "description": "Enhanced block editor for WordPress posts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/editor/src/components/start-page-options/index.js b/packages/editor/src/components/start-page-options/index.js index d7874000ffc420..54d956ff06e7c3 100644 --- a/packages/editor/src/components/start-page-options/index.js +++ b/packages/editor/src/components/start-page-options/index.js @@ -12,13 +12,8 @@ import { store as interfaceStore } from '@wordpress/interface'; import { store as editorStore } from '../../store'; export default function StartPageOptions() { - const { postId, shouldEnable } = useSelect( ( select ) => { - const { - isEditedPostDirty, - isEditedPostEmpty, - getCurrentPostId, - getCurrentPostType, - } = select( editorStore ); + const { postId, enabled } = useSelect( ( select ) => { + const { getCurrentPostId, getCurrentPostType } = select( editorStore ); const preferencesModalActive = select( interfaceStore ).isModalActive( 'editor/preferences' ); const choosePatternModalEnabled = select( preferencesStore ).get( @@ -27,24 +22,37 @@ export default function StartPageOptions() { ); return { postId: getCurrentPostId(), - shouldEnable: + enabled: choosePatternModalEnabled && ! preferencesModalActive && - ! isEditedPostDirty() && - isEditedPostEmpty() && 'page' === getCurrentPostType(), }; }, [] ); + const { isEditedPostDirty, isEditedPostEmpty } = useSelect( editorStore ); const { setIsInserterOpened } = useDispatch( editorStore ); useEffect( () => { - if ( shouldEnable ) { + if ( ! enabled ) { + return; + } + + const isFreshPage = ! isEditedPostDirty() && isEditedPostEmpty(); + if ( isFreshPage ) { setIsInserterOpened( { tab: 'patterns', category: 'core/starter-content', } ); } - }, [ postId, shouldEnable, setIsInserterOpened ] ); + + // Note: The `postId` ensures the effect re-runs when pages are switched without remounting the component. + // Examples: changing pages in the List View, creating a new page via Command Palette. + }, [ + postId, + enabled, + setIsInserterOpened, + isEditedPostDirty, + isEditedPostEmpty, + ] ); return null; } diff --git a/packages/element/CHANGELOG.md b/packages/element/CHANGELOG.md index 5283a083658a59..5300441670dbfe 100644 --- a/packages/element/CHANGELOG.md +++ b/packages/element/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/element/package.json b/packages/element/package.json index 11473adcef65d8..d7f3e32155c678 100644 --- a/packages/element/package.json +++ b/packages/element/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/element", - "version": "6.16.0", + "version": "6.17.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 396e0167f1e921..03be7a7bbc56c7 100644 --- a/packages/env/CHANGELOG.md +++ b/packages/env/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 10.17.0 (2025-01-29) + ### Enhancements - Add a `WP_ENV_MULTISITE` environment variable to override the `multisite` option ([#68792](https://github.com/WordPress/gutenberg/pull/68792)). diff --git a/packages/env/package.json b/packages/env/package.json index f06e0c00e160c9..bdf8766aa58698 100644 --- a/packages/env/package.json +++ b/packages/env/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/env", - "version": "10.16.0", + "version": "10.17.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 a6c0b0973dd15a..3ec127fd9d5da7 100644 --- a/packages/escape-html/CHANGELOG.md +++ b/packages/escape-html/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/escape-html/package.json b/packages/escape-html/package.json index d292d6ee6f90b4..9a7555c3b32d35 100644 --- a/packages/escape-html/package.json +++ b/packages/escape-html/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/escape-html", - "version": "3.16.0", + "version": "3.17.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 12e43687c324b3..60630bae0e01f9 100644 --- a/packages/eslint-plugin/CHANGELOG.md +++ b/packages/eslint-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 22.3.0 (2025-01-29) + ## 22.2.0 (2025-01-15) ## 22.1.0 (2025-01-02) diff --git a/packages/eslint-plugin/README.md b/packages/eslint-plugin/README.md index cde410fc9c9926..dfb3f90c03b82b 100644 --- a/packages/eslint-plugin/README.md +++ b/packages/eslint-plugin/README.md @@ -22,7 +22,7 @@ To opt-in to the default configuration, extend your own project's `.eslintrc` fi } ``` -Refer to the [ESLint documentation on Shareable Configs](http://eslint.org/docs/developer-guide/shareable-configs) for more information. +Refer to the [ESLint documentation on Shareable Configs](https://eslint.org/docs/latest/extend/shareable-configs) for more information. The `recommended` preset will include rules governing an ES2015+ environment, and includes rules from the [`eslint-plugin-jsdoc`](https://github.com/gajus/eslint-plugin-jsdoc), [`eslint-plugin-jsx-a11y`](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y), [`eslint-plugin-react`](https://github.com/yannickcr/eslint-plugin-react), and other similar plugins. diff --git a/packages/eslint-plugin/docs/rules/i18n-no-collapsible-whitespace.md b/packages/eslint-plugin/docs/rules/i18n-no-collapsible-whitespace.md index 094564ab5432b3..d3a795325008d8 100644 --- a/packages/eslint-plugin/docs/rules/i18n-no-collapsible-whitespace.md +++ b/packages/eslint-plugin/docs/rules/i18n-no-collapsible-whitespace.md @@ -2,7 +2,7 @@ Using complex whitespace in translatable strings and relying on HTML to collapse it can make translation more difficult and lead to unnecessary retranslation. -Whitespace can be appropriate in longer translatable content, for example a whole blog post. These cases are unlikely to occur in the code scanned by eslint but if they do, [disable the rule with inline comments](http://eslint.org/docs/user-guide/configuring#disabling-rules-with-inline-comments. ( e.g. `// eslint-disable-line i18n-no-collapsible-whitespace` ). +Whitespace can be appropriate in longer translatable content, for example a whole blog post. These cases are unlikely to occur in the code scanned by eslint but if they do, [disable the rule with inline comments](https://eslint.org/docs/latest/use/configure/rules#disabling-rules) ( e.g. `// eslint-disable-line i18n-no-collapsible-whitespace` ). ## Rule details diff --git a/packages/eslint-plugin/package.json b/packages/eslint-plugin/package.json index dd28f372ad7dc6..c315891896fcc9 100644 --- a/packages/eslint-plugin/package.json +++ b/packages/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/eslint-plugin", - "version": "22.2.0", + "version": "22.3.0", "description": "ESLint plugin for WordPress development.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/fields/CHANGELOG.md b/packages/fields/CHANGELOG.md index 4b6515d00ea62a..8123d0f3caf11f 100644 --- a/packages/fields/CHANGELOG.md +++ b/packages/fields/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.9.0 (2025-01-29) + ## 0.8.0 (2025-01-15) ## 0.7.0 (2025-01-02) diff --git a/packages/fields/package.json b/packages/fields/package.json index 70e7d4c4edc663..adc59764b331af 100644 --- a/packages/fields/package.json +++ b/packages/fields/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/fields", - "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/format-library/CHANGELOG.md b/packages/format-library/CHANGELOG.md index 87790c5a971cec..222be010c4f1d5 100644 --- a/packages/format-library/CHANGELOG.md +++ b/packages/format-library/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/format-library/package.json b/packages/format-library/package.json index 58d84ff93522b4..33ea404cf14769 100644 --- a/packages/format-library/package.json +++ b/packages/format-library/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/format-library", - "version": "5.16.0", + "version": "5.17.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 b1a1d223d76cfd..38183ebd88b8bc 100644 --- a/packages/hooks/CHANGELOG.md +++ b/packages/hooks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/hooks/package.json b/packages/hooks/package.json index 3ff2bc1acfa317..4fe1add4725bcc 100644 --- a/packages/hooks/package.json +++ b/packages/hooks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/hooks", - "version": "4.16.0", + "version": "4.17.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 2c8c8b8adfe516..fd9f1e9f0f7bef 100644 --- a/packages/html-entities/CHANGELOG.md +++ b/packages/html-entities/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/html-entities/package.json b/packages/html-entities/package.json index 310c2c95caf891..b00d18fbf70b5e 100644 --- a/packages/html-entities/package.json +++ b/packages/html-entities/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/html-entities", - "version": "4.16.0", + "version": "4.17.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 f19f1addd8514a..cdc5a75c6f6407 100644 --- a/packages/i18n/CHANGELOG.md +++ b/packages/i18n/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/i18n/package.json b/packages/i18n/package.json index c79faf5d754137..883b75b06bd1f1 100644 --- a/packages/i18n/package.json +++ b/packages/i18n/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/i18n", - "version": "5.16.0", + "version": "5.17.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 5e0ceaf9552e5c..c07908788420e7 100644 --- a/packages/icons/CHANGELOG.md +++ b/packages/icons/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 10.17.0 (2025-01-29) + ## 10.16.0 (2025-01-15) ## 10.15.0 (2025-01-02) diff --git a/packages/icons/package.json b/packages/icons/package.json index 1452f17f600989..128dfe44490a08 100644 --- a/packages/icons/package.json +++ b/packages/icons/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/icons", - "version": "10.16.0", + "version": "10.17.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 6cdc75206658a0..5213eff2c29f40 100644 --- a/packages/interactivity-router/CHANGELOG.md +++ b/packages/interactivity-router/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +### Bug Fixes + +- Fix CSS rule order in some constructed style sheets. ([#68923](https://github.com/WordPress/gutenberg/pull/68923)) + +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/interactivity-router/package.json b/packages/interactivity-router/package.json index ebe1a30209bd0a..9962d60bd2e1de 100644 --- a/packages/interactivity-router/package.json +++ b/packages/interactivity-router/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interactivity-router", - "version": "2.16.0", + "version": "2.17.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-router/src/assets/styles.ts b/packages/interactivity-router/src/assets/styles.ts index ddb41eabc7a758..967bed5bb376d8 100644 --- a/packages/interactivity-router/src/assets/styles.ts +++ b/packages/interactivity-router/src/assets/styles.ts @@ -41,8 +41,9 @@ const sheetFromLink = async ( if ( elementSheet ) { return getCachedSheet( sheetId, () => { const sheet = new CSSStyleSheet(); - for ( const { cssText } of elementSheet.cssRules ) { - sheet.insertRule( withAbsoluteUrls( cssText, sheetUrl ) ); + for ( let i = 0; i < elementSheet.cssRules.length; i++ ) { + const { cssText } = elementSheet.cssRules[ i ]; + sheet.insertRule( withAbsoluteUrls( cssText, sheetUrl ), i ); } return Promise.resolve( sheet ); } ); diff --git a/packages/interactivity/CHANGELOG.md b/packages/interactivity/CHANGELOG.md index c38870e9ba7403..ef99d6974d6eb0 100644 --- a/packages/interactivity/CHANGELOG.md +++ b/packages/interactivity/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ### Bug Fixes diff --git a/packages/interactivity/package.json b/packages/interactivity/package.json index 5e8c17b4512419..f109c40f43305e 100644 --- a/packages/interactivity/package.json +++ b/packages/interactivity/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interactivity", - "version": "6.16.0", + "version": "6.17.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 c5bff62d90e52e..98c616216900b5 100644 --- a/packages/interface/CHANGELOG.md +++ b/packages/interface/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.2.0 (2025-01-29) + ## 9.1.0 (2025-01-15) ## 9.0.0 (2025-01-02) diff --git a/packages/interface/package.json b/packages/interface/package.json index 8e4e9485afc145..0cadb6070b9fcc 100644 --- a/packages/interface/package.json +++ b/packages/interface/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/interface", - "version": "9.1.0", + "version": "9.2.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 93829c3f9798ad..d36971b392045a 100644 --- a/packages/is-shallow-equal/CHANGELOG.md +++ b/packages/is-shallow-equal/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/is-shallow-equal/README.md b/packages/is-shallow-equal/README.md index 2908803a7804b2..80809459a9c982 100644 --- a/packages/is-shallow-equal/README.md +++ b/packages/is-shallow-equal/README.md @@ -29,7 +29,7 @@ import { isShallowEqualArrays } from '@wordpress/is-shallow-equal'; import { isShallowEqualObjects } from '@wordpress/is-shallow-equal'; ``` -Shallow comparison differs from deep comparison by the fact that it compares members from each as being strictly equal to the other, meaning that arrays and objects will be compared by their _references_, not by their values (see also [_Object Equality in JavaScript_.](http://adripofjavascript.com/blog/drips/object-equality-in-javascript.html)) In situations where nested objects must be compared by value, consider using [`fast-deep-equal`](https://github.com/epoberezkin/fast-deep-equal) instead. +Shallow comparison differs from deep comparison by the fact that it compares members from each as being strictly equal to the other, meaning that arrays and objects will be compared by their _references_, not by their values (see also [_Object Equality in JavaScript_.](https://adripofjavascript.com/blog/drips/object-equality-in-javascript.html)) In situations where nested objects must be compared by value, consider using [`fast-deep-equal`](https://github.com/epoberezkin/fast-deep-equal) instead. ```js import isShallowEqual from '@wordpress/is-shallow-equal'; diff --git a/packages/is-shallow-equal/package.json b/packages/is-shallow-equal/package.json index fe686f46745617..d8be6a2c005c25 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": "5.16.0", + "version": "5.17.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 941ba14bbed442..cb017e3a3bc67c 100644 --- a/packages/jest-console/CHANGELOG.md +++ b/packages/jest-console/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.17.0 (2025-01-29) + ## 8.16.0 (2025-01-15) ## 8.15.0 (2025-01-02) diff --git a/packages/jest-console/package.json b/packages/jest-console/package.json index aecf0cb90c04db..78492c7f74ee1d 100644 --- a/packages/jest-console/package.json +++ b/packages/jest-console/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/jest-console", - "version": "8.16.0", + "version": "8.17.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 cdf892122d9dbe..dd03a156c395af 100644 --- a/packages/jest-preset-default/CHANGELOG.md +++ b/packages/jest-preset-default/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 12.17.0 (2025-01-29) + ## 12.16.0 (2025-01-15) ## 12.15.0 (2025-01-02) diff --git a/packages/jest-preset-default/package.json b/packages/jest-preset-default/package.json index 477dea75cdafd5..b9bc50436ebc7d 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": "12.16.0", + "version": "12.17.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 9ed1991d1fffdd..31c317a2040584 100644 --- a/packages/jest-puppeteer-axe/CHANGELOG.md +++ b/packages/jest-puppeteer-axe/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/jest-puppeteer-axe/package.json b/packages/jest-puppeteer-axe/package.json index db165c661246e5..dd6ebdf841cba3 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": "7.16.0", + "version": "7.17.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 01418579c072c0..2833f565d36aa3 100644 --- a/packages/keyboard-shortcuts/CHANGELOG.md +++ b/packages/keyboard-shortcuts/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/keyboard-shortcuts/package.json b/packages/keyboard-shortcuts/package.json index 0af22fc709e56f..5aefa31c6c08bd 100644 --- a/packages/keyboard-shortcuts/package.json +++ b/packages/keyboard-shortcuts/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/keyboard-shortcuts", - "version": "5.16.0", + "version": "5.17.0", "description": "Handling keyboard shortcuts.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/keycodes/CHANGELOG.md b/packages/keycodes/CHANGELOG.md index 5f742f523c2f88..dd213737113343 100644 --- a/packages/keycodes/CHANGELOG.md +++ b/packages/keycodes/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/keycodes/package.json b/packages/keycodes/package.json index ba9374d19b33d6..a1bef731fef7fa 100644 --- a/packages/keycodes/package.json +++ b/packages/keycodes/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/keycodes", - "version": "4.16.0", + "version": "4.17.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 42e06ea6547bb0..2411e89c9cfcf4 100644 --- a/packages/lazy-import/CHANGELOG.md +++ b/packages/lazy-import/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/lazy-import/package.json b/packages/lazy-import/package.json index 2de26b9f095139..0f18de9cc0cb62 100644 --- a/packages/lazy-import/package.json +++ b/packages/lazy-import/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/lazy-import", - "version": "2.16.0", + "version": "2.17.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 66c738b571f53c..5a4bd4f9f29e4b 100644 --- a/packages/list-reusable-blocks/CHANGELOG.md +++ b/packages/list-reusable-blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/list-reusable-blocks/package.json b/packages/list-reusable-blocks/package.json index 1390430dd40aaf..92db7b36d07607 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": "5.16.0", + "version": "5.17.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 e46cad7f4a2f94..b7d27a0681c4b9 100644 --- a/packages/media-utils/CHANGELOG.md +++ b/packages/media-utils/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/media-utils/package.json b/packages/media-utils/package.json index ff5091bb0c6828..984dcea29c9f4c 100644 --- a/packages/media-utils/package.json +++ b/packages/media-utils/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/media-utils", - "version": "5.16.0", + "version": "5.17.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 4a7d7d0b75fc1e..d38828c40a4ff2 100644 --- a/packages/notices/CHANGELOG.md +++ b/packages/notices/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/notices/package.json b/packages/notices/package.json index fd8a813c3741bb..c3ca8915eb2e3f 100644 --- a/packages/notices/package.json +++ b/packages/notices/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/notices", - "version": "5.16.0", + "version": "5.17.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 dc66fa29d362be..620f409b37b5f2 100644 --- a/packages/npm-package-json-lint-config/CHANGELOG.md +++ b/packages/npm-package-json-lint-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/npm-package-json-lint-config/package.json b/packages/npm-package-json-lint-config/package.json index f27c1c4326d038..a99d198f9f0815 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": "5.16.0", + "version": "5.17.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 68fb077917be77..f4e5e988fef88f 100644 --- a/packages/nux/CHANGELOG.md +++ b/packages/nux/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.17.0 (2025-01-29) + ## 9.16.0 (2025-01-15) ## 9.15.0 (2025-01-02) diff --git a/packages/nux/package.json b/packages/nux/package.json index 139ce12c3a61fd..70d3fb5cd95fd7 100644 --- a/packages/nux/package.json +++ b/packages/nux/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/nux", - "version": "9.16.0", + "version": "9.17.0", "description": "NUX (New User eXperience) module for WordPress.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/patterns/CHANGELOG.md b/packages/patterns/CHANGELOG.md index c56c8ed041700f..8f586f1b3ae6bf 100644 --- a/packages/patterns/CHANGELOG.md +++ b/packages/patterns/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/patterns/package.json b/packages/patterns/package.json index fecf698279aed2..5300e9c0e907d6 100644 --- a/packages/patterns/package.json +++ b/packages/patterns/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/patterns", - "version": "2.16.0", + "version": "2.17.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 d0e5cb5e4f2a06..de23659ea2d064 100644 --- a/packages/plugins/CHANGELOG.md +++ b/packages/plugins/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/plugins/package.json b/packages/plugins/package.json index b99718cfcc84bd..1ca540e79f96f0 100644 --- a/packages/plugins/package.json +++ b/packages/plugins/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/plugins", - "version": "7.16.0", + "version": "7.17.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 d7bb504db29744..904557314f5f27 100644 --- a/packages/postcss-plugins-preset/CHANGELOG.md +++ b/packages/postcss-plugins-preset/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/postcss-plugins-preset/package.json b/packages/postcss-plugins-preset/package.json index 13aea6c3a5832a..9fd2ac28deebcd 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": "5.16.0", + "version": "5.17.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 2279d924c67d57..a7212372d4aa34 100644 --- a/packages/postcss-themes/CHANGELOG.md +++ b/packages/postcss-themes/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/postcss-themes/package.json b/packages/postcss-themes/package.json index 2086b420c6d7ea..2756c600a40671 100644 --- a/packages/postcss-themes/package.json +++ b/packages/postcss-themes/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/postcss-themes", - "version": "6.16.0", + "version": "6.17.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 f06253add01a1d..b2606dac7e0b87 100644 --- a/packages/preferences-persistence/CHANGELOG.md +++ b/packages/preferences-persistence/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/preferences-persistence/package.json b/packages/preferences-persistence/package.json index ec41ffe8a6c1b4..8813cad82f6d44 100644 --- a/packages/preferences-persistence/package.json +++ b/packages/preferences-persistence/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/preferences-persistence", - "version": "2.16.0", + "version": "2.17.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 ac60bd2299ab54..7136304f71f4d6 100644 --- a/packages/preferences/CHANGELOG.md +++ b/packages/preferences/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/preferences/package.json b/packages/preferences/package.json index c280e0810dbd94..56778fc4f5f45f 100644 --- a/packages/preferences/package.json +++ b/packages/preferences/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/preferences", - "version": "4.16.0", + "version": "4.17.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 bcc63a0c4c0f84..5bbed9a6ec2539 100644 --- a/packages/prettier-config/CHANGELOG.md +++ b/packages/prettier-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index 6f434a5fe4c5eb..80a617a8f2bd54 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/prettier-config", - "version": "4.16.0", + "version": "4.17.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 b79a725eafeb54..ca06f8f317ab4f 100644 --- a/packages/primitives/CHANGELOG.md +++ b/packages/primitives/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/primitives/package.json b/packages/primitives/package.json index c3fd277efd5055..24ba82c2957afe 100644 --- a/packages/primitives/package.json +++ b/packages/primitives/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/primitives", - "version": "4.16.0", + "version": "4.17.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 3cf20de9612fc4..54c266542c2a5a 100644 --- a/packages/priority-queue/CHANGELOG.md +++ b/packages/priority-queue/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/priority-queue/package.json b/packages/priority-queue/package.json index 610cc00de8c707..a7c446c7ccf7f0 100644 --- a/packages/priority-queue/package.json +++ b/packages/priority-queue/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/priority-queue", - "version": "3.16.0", + "version": "3.17.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 6dfb92821a3495..d64c9e3f07a135 100644 --- a/packages/private-apis/CHANGELOG.md +++ b/packages/private-apis/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/private-apis/package.json b/packages/private-apis/package.json index 20b0ce41e4650b..46d8e742b91837 100644 --- a/packages/private-apis/package.json +++ b/packages/private-apis/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/private-apis", - "version": "1.16.0", + "version": "1.17.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 cb6c8a493bd7c8..48ffdc4d03138b 100644 --- a/packages/project-management-automation/CHANGELOG.md +++ b/packages/project-management-automation/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/project-management-automation/package.json b/packages/project-management-automation/package.json index de027f146c439a..327df2a6036e18 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": "2.16.0", + "version": "2.17.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 aab09809845511..d5bfec54bd5f47 100644 --- a/packages/react-i18n/CHANGELOG.md +++ b/packages/react-i18n/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/react-i18n/package.json b/packages/react-i18n/package.json index 77967e49936108..54a42f88855a74 100644 --- a/packages/react-i18n/package.json +++ b/packages/react-i18n/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/react-i18n", - "version": "4.16.0", + "version": "4.17.0", "description": "React bindings for @wordpress/i18n.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/readable-js-assets-webpack-plugin/CHANGELOG.md b/packages/readable-js-assets-webpack-plugin/CHANGELOG.md index b6a6f5e78d3604..cd2b86202aad27 100644 --- a/packages/readable-js-assets-webpack-plugin/CHANGELOG.md +++ b/packages/readable-js-assets-webpack-plugin/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/readable-js-assets-webpack-plugin/package.json b/packages/readable-js-assets-webpack-plugin/package.json index 0e9971881a6e87..bfd3fb573ca2fe 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": "3.16.0", + "version": "3.17.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 532055587007d4..a0cb80b0c0e4c7 100644 --- a/packages/redux-routine/CHANGELOG.md +++ b/packages/redux-routine/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/redux-routine/package.json b/packages/redux-routine/package.json index 4f38cad4824e4b..5a75aef5c5a19f 100644 --- a/packages/redux-routine/package.json +++ b/packages/redux-routine/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/redux-routine", - "version": "5.16.0", + "version": "5.17.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 87307053262faa..7c61ee2f0256f5 100644 --- a/packages/reusable-blocks/CHANGELOG.md +++ b/packages/reusable-blocks/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/reusable-blocks/package.json b/packages/reusable-blocks/package.json index 27e3faf524d34b..e34d36dd4c8b8c 100644 --- a/packages/reusable-blocks/package.json +++ b/packages/reusable-blocks/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/reusable-blocks", - "version": "5.16.0", + "version": "5.17.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 c3174a29a081a7..137a982adce9e8 100644 --- a/packages/rich-text/CHANGELOG.md +++ b/packages/rich-text/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.17.0 (2025-01-29) + ## 7.16.0 (2025-01-15) ## 7.15.0 (2025-01-02) diff --git a/packages/rich-text/package.json b/packages/rich-text/package.json index 008f06b33f35d5..9f7a5768134561 100644 --- a/packages/rich-text/package.json +++ b/packages/rich-text/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/rich-text", - "version": "7.16.0", + "version": "7.17.0", "description": "Rich text value and manipulation API.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/router/CHANGELOG.md b/packages/router/CHANGELOG.md index c94f6d2f77d92c..36ed9891d807e1 100644 --- a/packages/router/CHANGELOG.md +++ b/packages/router/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/router/package.json b/packages/router/package.json index 20fa44db3fd0ab..9ddd8ef1ab9f2e 100644 --- a/packages/router/package.json +++ b/packages/router/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/router", - "version": "1.16.0", + "version": "1.17.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 06f2e35e831903..f5ad9b8eb34361 100644 --- a/packages/scripts/CHANGELOG.md +++ b/packages/scripts/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 30.10.0 (2025-01-29) + ## 30.9.0 (2025-01-15) ## 30.8.0 (2025-01-02) diff --git a/packages/scripts/package.json b/packages/scripts/package.json index 4d62ec66a3f7d7..675c25c0b54802 100644 --- a/packages/scripts/package.json +++ b/packages/scripts/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/scripts", - "version": "30.9.0", + "version": "30.10.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 6c02f3d295b4a0..ffb662d503db5a 100644 --- a/packages/server-side-render/CHANGELOG.md +++ b/packages/server-side-render/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.17.0 (2025-01-29) + ## 5.16.0 (2025-01-15) ## 5.15.0 (2025-01-02) diff --git a/packages/server-side-render/package.json b/packages/server-side-render/package.json index ad9db197126961..70fcfa4997807c 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": "5.16.0", + "version": "5.17.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 7cc68c61d9fb20..bd36355f277906 100644 --- a/packages/shortcode/CHANGELOG.md +++ b/packages/shortcode/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/shortcode/package.json b/packages/shortcode/package.json index 90276719432ea8..b96126f5c344b1 100644 --- a/packages/shortcode/package.json +++ b/packages/shortcode/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/shortcode", - "version": "4.16.0", + "version": "4.17.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 69065f20ee6310..d1d0fc4c950906 100644 --- a/packages/style-engine/CHANGELOG.md +++ b/packages/style-engine/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.17.0 (2025-01-29) + ## 2.16.0 (2025-01-15) ## 2.15.0 (2025-01-02) diff --git a/packages/style-engine/package.json b/packages/style-engine/package.json index 38ac5a8b90b2ac..5ce48d4e7da0f0 100644 --- a/packages/style-engine/package.json +++ b/packages/style-engine/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/style-engine", - "version": "2.16.0", + "version": "2.17.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 8af849b3496924..dc326ef3b07f79 100644 --- a/packages/stylelint-config/CHANGELOG.md +++ b/packages/stylelint-config/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 23.9.0 (2025-01-29) + ## 23.8.0 (2025-01-15) ## 23.7.0 (2025-01-02) diff --git a/packages/stylelint-config/package.json b/packages/stylelint-config/package.json index 8570b0b9d9b33b..4c6ccffcc0c533 100644 --- a/packages/stylelint-config/package.json +++ b/packages/stylelint-config/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/stylelint-config", - "version": "23.8.0", + "version": "23.9.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 761bef22b81895..bbd1aaf688db44 100644 --- a/packages/sync/CHANGELOG.md +++ b/packages/sync/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/sync/package.json b/packages/sync/package.json index 5c42b6ed998f37..45200f2068e3c2 100644 --- a/packages/sync/package.json +++ b/packages/sync/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/sync", - "version": "1.16.0", + "version": "1.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 6ccb9e49021b49..0878eb5989bc56 100644 --- a/packages/token-list/CHANGELOG.md +++ b/packages/token-list/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/token-list/package.json b/packages/token-list/package.json index 1d0c8b85c1e4b4..cb067e63ca787f 100644 --- a/packages/token-list/package.json +++ b/packages/token-list/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/token-list", - "version": "3.16.0", + "version": "3.17.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 36bce4f7524d7d..da4c45158d6512 100644 --- a/packages/undo-manager/CHANGELOG.md +++ b/packages/undo-manager/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.17.0 (2025-01-29) + ## 1.16.0 (2025-01-15) ## 1.15.0 (2025-01-02) diff --git a/packages/undo-manager/package.json b/packages/undo-manager/package.json index 518e37ad2b061c..1cd7f11fdafe2c 100644 --- a/packages/undo-manager/package.json +++ b/packages/undo-manager/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/undo-manager", - "version": "1.16.0", + "version": "1.17.0", "description": "A small package to manage undo/redo.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/upload-media/CHANGELOG.md b/packages/upload-media/CHANGELOG.md index f6f9e4317b9a26..c877455493a7ba 100644 --- a/packages/upload-media/CHANGELOG.md +++ b/packages/upload-media/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 0.2.0 (2025-01-29) + ## 0.1.0 (2025-01-15) Initial release. diff --git a/packages/upload-media/package.json b/packages/upload-media/package.json index 828ed745acdaf6..3d4e0171df1f76 100644 --- a/packages/upload-media/package.json +++ b/packages/upload-media/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/upload-media", - "version": "0.1.0", + "version": "0.2.0", "description": "Core media upload logic.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/url/CHANGELOG.md b/packages/url/CHANGELOG.md index 6544673cacd109..eb97783d31cd34 100644 --- a/packages/url/CHANGELOG.md +++ b/packages/url/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/url/package.json b/packages/url/package.json index 36221de0b8e72e..9ff808bbe1ef22 100644 --- a/packages/url/package.json +++ b/packages/url/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/url", - "version": "4.16.0", + "version": "4.17.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 1e9831981822a3..d5426d9cac7111 100644 --- a/packages/viewport/CHANGELOG.md +++ b/packages/viewport/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.17.0 (2025-01-29) + ## 6.16.0 (2025-01-15) ## 6.15.0 (2025-01-02) diff --git a/packages/viewport/package.json b/packages/viewport/package.json index 33b7c2c290db6d..8a4ae23e02a3c8 100644 --- a/packages/viewport/package.json +++ b/packages/viewport/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/viewport", - "version": "6.16.0", + "version": "6.17.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 5c629bc33745da..4d39133ca0e5a8 100644 --- a/packages/warning/CHANGELOG.md +++ b/packages/warning/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.17.0 (2025-01-29) + ## 3.16.0 (2025-01-15) ## 3.15.0 (2025-01-02) diff --git a/packages/warning/README.md b/packages/warning/README.md index 67b471d154eccf..cc082a7f214467 100644 --- a/packages/warning/README.md +++ b/packages/warning/README.md @@ -18,7 +18,7 @@ Literal strings aren't minified. Keeping them in your production bundle may incr To prevent that, you should: -1. Put `@wordpress/warning/babel-plugin` into your [babel config](https://babeljs.io/docs/en/plugins#plugin-options) or use [`@wordpress/babel-preset-default`](https://www.npmjs.com/package/@wordpress/babel-preset-default), which already includes the babel plugin. +1. Put `@wordpress/warning/babel-plugin` into your [babel config](https://babeljs.io/docs/plugins#plugin-options) or use [`@wordpress/babel-preset-default`](https://www.npmjs.com/package/@wordpress/babel-preset-default), which already includes the babel plugin. This will make sure your `warning` calls are wrapped within a condition that checks if `SCRIPT_DEBUG === true`. diff --git a/packages/warning/package.json b/packages/warning/package.json index cfc9e7127b3952..098986e2c6c035 100644 --- a/packages/warning/package.json +++ b/packages/warning/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/warning", - "version": "3.16.0", + "version": "3.17.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 403d8ec209218a..cac2955edb6b11 100644 --- a/packages/widgets/CHANGELOG.md +++ b/packages/widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/widgets/package.json b/packages/widgets/package.json index 3020b68c6f429d..782857be408984 100644 --- a/packages/widgets/package.json +++ b/packages/widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/widgets", - "version": "4.16.0", + "version": "4.17.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 0edbe6b8b21c10..03b7132ba4b39b 100644 --- a/packages/wordcount/CHANGELOG.md +++ b/packages/wordcount/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.17.0 (2025-01-29) + ## 4.16.0 (2025-01-15) ## 4.15.0 (2025-01-02) diff --git a/packages/wordcount/package.json b/packages/wordcount/package.json index c05f8ed9aee13b..5fbe5c9d20b824 100644 --- a/packages/wordcount/package.json +++ b/packages/wordcount/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/wordcount", - "version": "4.16.0", + "version": "4.17.0", "description": "WordPress word count utility.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/platform-docs/docs/basic-concepts/internationalization.md b/platform-docs/docs/basic-concepts/internationalization.md index 654d70070f1cba..ce2070119b02ca 100644 --- a/platform-docs/docs/basic-concepts/internationalization.md +++ b/platform-docs/docs/basic-concepts/internationalization.md @@ -6,7 +6,7 @@ sidebar_position: 7 The Gutenberg block editor uses the `@wordpress/i18n` package to provide internationalization support. -Translations can be provided by calling the `setLocaleData` function with a domain and a locale data object. The locale data object should be in the [Jed-formatted JSON object shape](http://messageformat.github.io/Jed/). +Translations can be provided by calling the `setLocaleData` function with a domain and a locale data object. The locale data object should be in the [Jed-formatted JSON object shape](https://messageformat.github.io/Jed/). ```js import { setLocaleData } from '@wordpress/i18n'; diff --git a/test/e2e/specs/interactivity/router-styles.spec.ts b/test/e2e/specs/interactivity/router-styles.spec.ts index 7bc575af37816c..c154b5d432d7b2 100644 --- a/test/e2e/specs/interactivity/router-styles.spec.ts +++ b/test/e2e/specs/interactivity/router-styles.spec.ts @@ -229,4 +229,33 @@ test.describe( 'Router styles', () => { await expect( blue ).toHaveCSS( 'color', COLOR_BLUE ); await expect( all ).toHaveCSS( 'color', COLOR_BLUE ); } ); + + test( 'should preserve rule order from referenced style sheets', async ( { + page, + } ) => { + const csn = page.getByTestId( 'client-side navigation' ); + const orderChecker = page.getByTestId( 'order-checker' ); + + await expect( orderChecker ).toHaveCSS( 'color', COLOR_GREEN ); + + await page.getByTestId( 'link red' ).click(); + + await expect( csn ).toBeVisible(); + await expect( orderChecker ).toHaveCSS( 'color', COLOR_GREEN ); + + await page.getByTestId( 'link green' ).click(); + + await expect( csn ).toBeVisible(); + await expect( orderChecker ).toHaveCSS( 'color', COLOR_GREEN ); + + await page.getByTestId( 'link blue' ).click(); + + await expect( csn ).toBeVisible(); + await expect( orderChecker ).toHaveCSS( 'color', COLOR_GREEN ); + + await page.getByTestId( 'link all' ).click(); + + await expect( csn ).toBeVisible(); + await expect( orderChecker ).toHaveCSS( 'color', COLOR_GREEN ); + } ); } ); diff --git a/test/e2e/specs/site-editor/user-global-styles-revisions.spec.js b/test/e2e/specs/site-editor/user-global-styles-revisions.spec.js index 1b5ab7b6cd557d..a845483023585a 100644 --- a/test/e2e/specs/site-editor/user-global-styles-revisions.spec.js +++ b/test/e2e/specs/site-editor/user-global-styles-revisions.spec.js @@ -269,9 +269,7 @@ test.describe( 'Style Revisions', () => { } await userGlobalStylesRevisions.openStylesPanel(); await page.getByRole( 'button', { name: 'Revisions' } ).click(); - const pagination = page.getByLabel( - 'Global Styles pagination navigation' - ); + const pagination = page.getByLabel( 'Global Styles pagination' ); await expect( pagination ).toContainText( '1 of 2' ); await pagination.getByRole( 'button', { name: 'Next page' } ).click(); await expect( pagination ).toContainText( '2 of 2' );