diff --git a/.eslintrc.js b/.eslintrc.js index cb132fbb3d7ab..81408499bd34f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -295,6 +295,7 @@ module.exports = { 'FocalPointPicker', 'RangeControl', 'SearchControl', + 'SelectControl', 'TextControl', 'TextareaControl', 'ToggleControl', diff --git a/changelog.txt b/changelog.txt index b7bbdf821f374..e85895547e87d 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,373 @@ == Changelog == += 19.0.0-rc.1 = + + +## Changelog + +### Enhancements + +- Add alt edit field to the inline image in the format library ([64124](https://github.com/WordPress/gutenberg/pull/64124)) +- Update copy from "No Title" to "No title" across multiple places on the editor. ([64184](https://github.com/WordPress/gutenberg/pull/64184)) +- Update column input to be 40px by default. ([64190](https://github.com/WordPress/gutenberg/pull/64190)) + +#### Block Library +- Add anchor block support to List Items. ([48758](https://github.com/WordPress/gutenberg/pull/48758)) +- Unset the rowStart and columnStart attributes when a block inside the Grid is removed from a manual layout. ([64186](https://github.com/WordPress/gutenberg/pull/64186)) +- Update Group block example. ([63114](https://github.com/WordPress/gutenberg/pull/63114)) +- Make SiteLogoReplaceFlow always available in the Site Logo block toolbar. ([63499](https://github.com/WordPress/gutenberg/pull/63499)) +- Make Query Loop settings more intuitive with a ToggleGroup and simplified help text. ([63739](https://github.com/WordPress/gutenberg/pull/63739)) +- Move gallery link controls to the block toolbar. ([62762](https://github.com/WordPress/gutenberg/pull/62762)) +- Hide loading when the overlay menu is selected. ([64262](https://github.com/WordPress/gutenberg/pull/64262)) +- Move the Site Logo tooltip to the middle right. ([64296](https://github.com/WordPress/gutenberg/pull/64296)) +- Prevent duplicate spacing on Tag Cloud block. ([63832](https://github.com/WordPress/gutenberg/pull/63832)) +- Fix 'can user edit' Template Part check. ([64137](https://github.com/WordPress/gutenberg/pull/64137)) +- Add clearfix in Post content. ([63690](https://github.com/WordPress/gutenberg/pull/63690)) +- Tweak Tag Cloud controls and description. ([64151](https://github.com/WordPress/gutenberg/pull/64151)) +- Tweak list block. ([64025](https://github.com/WordPress/gutenberg/pull/64025)) +- Update MediaUpload button for the site logo from "Add media" to "Choose logo". ([63498](https://github.com/WordPress/gutenberg/pull/63498)) +- Update help text for sticky control in Query loop. ([63999](https://github.com/WordPress/gutenberg/pull/63999)) +- Add border support to the following blocks: + - [Time To Read](https://github.com/WordPress/gutenberg/pull/63776) + - [Categories List](https://github.com/WordPress/gutenberg/pull/63950) + - [Post Date](https://github.com/WordPress/gutenberg/pull/64023) + - [Post Excerpt](https://github.com/WordPress/gutenberg/pull/64022) + - [Post Terms](https://github.com/WordPress/gutenberg/pull/64246) + - [Post Title](https://github.com/WordPress/gutenberg/pull/64024) + - [Site Tagline](https://github.com/WordPress/gutenberg/pull/63778) + - [Site Title](https://github.com/WordPress/gutenberg/pull/63631) + - [Table of contents](https://github.com/WordPress/gutenberg/pull/63578) + +#### Extensibility +- Add an async `__unstablePreSavePost` hook; resolving with false prevents saving. ([58022](https://github.com/WordPress/gutenberg/pull/58022)) +- Enable heading level curation. ([63535](https://github.com/WordPress/gutenberg/pull/63535)) +- Addition of `levelOptions` attribute to control available heading levels in [Post Title](https://github.com/WordPress/gutenberg/pull/64106), [Query Title](https://github.com/WordPress/gutenberg/pull/64107), [Site Tagline](https://github.com/WordPress/gutenberg/pull/64113), [Site Title](https://github.com/WordPress/gutenberg/pull/64111), and [Comments Title](https://github.com/WordPress/gutenberg/pull/64103). + +#### Data Views +- Be more clear with the copy of the "hide" action. ([63047](https://github.com/WordPress/gutenberg/pull/63047)) +- Graduate data view options out of a menu to allow more design expression. ([64175](https://github.com/WordPress/gutenberg/pull/64175)) +- Move filter UI into a toggle-able panel to improve experience on narrow viewports/containers. ([63203](https://github.com/WordPress/gutenberg/pull/63203)) +- Update field line-height across grid/list layouts. ([63945](https://github.com/WordPress/gutenberg/pull/63945)) +- Update template description in table layout. ([63942](https://github.com/WordPress/gutenberg/pull/63942)) +- De-emphasise bulk actions on Grid layout. ([64209](https://github.com/WordPress/gutenberg/pull/64209)) +- Update the copy of some of the strings on dataviews actions. ([64099](https://github.com/WordPress/gutenberg/pull/64099)) + +##### Dataviews Extensibility + +- Allow unregistering of the following post actions: [permanently delete](https://github.com/WordPress/gutenberg/pull/64088), [restore post](https://github.com/WordPress/gutenberg/pull/64134), and [trash post](https://github.com/WordPress/gutenberg/pull/64087). + +#### Dataform + +- Add author to quick edit page/post list. ([63983](https://github.com/WordPress/gutenberg/pull/63983)) +- If a field of type `text` declare `elements`, render it as a `SelectControl` in `edit`. ([64251](https://github.com/WordPress/gutenberg/pull/64251)) +- Migrate order action modal and introduce form validation. ([63895](https://github.com/WordPress/gutenberg/pull/63895)) + + + +#### Components +- Add radius scale. ([64007](https://github.com/WordPress/gutenberg/pull/64007)) +- Support generic props type on CustomSelectControl. ([63985](https://github.com/WordPress/gutenberg/pull/63985)) +- Guide: Add __next40pxDefaultSize to buttons. ([64181](https://github.com/WordPress/gutenberg/pull/64181)) +- Image: Make Placeholder white when there is a on top. ([63885](https://github.com/WordPress/gutenberg/pull/63885)) +- SelectControl: Infer `value` type from `options`. ([64069](https://github.com/WordPress/gutenberg/pull/64069)) +- SelectControl: Pass through `options` props. ([64211](https://github.com/WordPress/gutenberg/pull/64211)) +- TimeInput: Expose as subcomponent of TimePicker. ([63145](https://github.com/WordPress/gutenberg/pull/63145)) +- Update radius variables in components configuration. ([64133](https://github.com/WordPress/gutenberg/pull/64133)) +- `RadioControl`: Add support for option help text. ([63751](https://github.com/WordPress/gutenberg/pull/63751)) + +#### Block Editor +- Block Autocompleter: Force icon color to text color when item is selected. ([61376](https://github.com/WordPress/gutenberg/pull/61376)) +- Don't overlap canvas with inserter panel at large screens. ([64110](https://github.com/WordPress/gutenberg/pull/64110)) +- Format Library: Polish inline image format popover. ([64016](https://github.com/WordPress/gutenberg/pull/64016)) +- LineHeightControl: Hard deprecate bottom margin. ([64281](https://github.com/WordPress/gutenberg/pull/64281)) +- New useBlockElementRef hook for storing block element into a ref. ([63799](https://github.com/WordPress/gutenberg/pull/63799)) +- Improved tabbed sidebar styles. ([61974](https://github.com/WordPress/gutenberg/pull/61974)) +- URLInput: Hard deprecate bottom margin. ([64282](https://github.com/WordPress/gutenberg/pull/64282)) + +#### Global Styles +- Add a typesets section to Typography. ([62539](https://github.com/WordPress/gutenberg/pull/62539)) +- Add tooltips to the heading level selectors. ([64039](https://github.com/WordPress/gutenberg/pull/64039)) +- Background images: Ensure appropriate default values. ([64192](https://github.com/WordPress/gutenberg/pull/64192)) +- Create new public function to make it easier to expose style variations from other themes. ([63318](https://github.com/WordPress/gutenberg/pull/63318)) +- Style Book: Clearly denote heading levels. ([64038](https://github.com/WordPress/gutenberg/pull/64038)) + +#### Design Tools +- Column: Enable border radius support. ([63924](https://github.com/WordPress/gutenberg/pull/63924)) +- Comment Template: Add Border Block Support. ([64238](https://github.com/WordPress/gutenberg/pull/64238)) +- Post Comments Form: Add Border Block Support. ([64233](https://github.com/WordPress/gutenberg/pull/64233)) + +#### Zoom Out +- Add a control to enter and leave zoom out mode. ([63870](https://github.com/WordPress/gutenberg/pull/63870)) +- Improve zoom transition. ([64179](https://github.com/WordPress/gutenberg/pull/64179)) + +#### Site Editor +- Clarify that the site icon is a back button using an animation. ([63986](https://github.com/WordPress/gutenberg/pull/63986)) +- Site Icon: Add back filter effect to make it work for all kind of site icons. ([64172](https://github.com/WordPress/gutenberg/pull/64172)) + +#### Post Editor +- Tweak Create custom template modal. ([64255](https://github.com/WordPress/gutenberg/pull/64255)) + +#### Icons +- Add new "send" icon. ([64130](https://github.com/WordPress/gutenberg/pull/64130)) + +#### Plugin +- Bump minimum required WordPress version to 6.5. ([64126](https://github.com/WordPress/gutenberg/pull/64126)) + +#### Font Library +- Include a "Select All" options for google fonts. ([63893](https://github.com/WordPress/gutenberg/pull/63893)) + +#### Block bindings +- Allow bindings bootstrap after registration. ([63797](https://github.com/WordPress/gutenberg/pull/63797)) + +#### Interactivity API +- Refactor internal proxy and signals system. ([62734](https://github.com/WordPress/gutenberg/pull/62734)) + + +### New APIs + +- Make useStyleOverride public. ([63656](https://github.com/WordPress/gutenberg/pull/63656)) + + +### Bug Fixes + +- Core Data: Fix 'getEntityRecordPermissions' memoization. ([64091](https://github.com/WordPress/gutenberg/pull/64091)) +- Document bar: Fix long title with no spaces causing layout issue. ([64092](https://github.com/WordPress/gutenberg/pull/64092)) +- Fix density slider minus to be correct. ([64185](https://github.com/WordPress/gutenberg/pull/64185)) +- Fix: Deleting a pattern throws a notice saying undefined deleted. ([64301](https://github.com/WordPress/gutenberg/pull/64301)) +- Primitives: Add missing peer dependency. ([64218](https://github.com/WordPress/gutenberg/pull/64218)) +- Site Icon: Fix position in distraction free mode. ([64261](https://github.com/WordPress/gutenberg/pull/64261)) + +#### Data Views +- Add context to trash string. ([64249](https://github.com/WordPress/gutenberg/pull/64249)) +- Conditionally shows the description field in Template Grid layout. ([64043](https://github.com/WordPress/gutenberg/pull/64043)) +- Consider layout URL parameter when loading a default/custom view. ([64306](https://github.com/WordPress/gutenberg/pull/64306)) +- Display published date for pages/posts with published status. ([64049](https://github.com/WordPress/gutenberg/pull/64049)) +- Sort author by name + allow custom sort function. ([64064](https://github.com/WordPress/gutenberg/pull/64064)) +- Don't render action modal when there are no eligible items. ([64250](https://github.com/WordPress/gutenberg/pull/64250)) +- Pages: Update `useView` logic. ([63889](https://github.com/WordPress/gutenberg/pull/63889)) +- Update template preview dimensions in table layout. ([63938](https://github.com/WordPress/gutenberg/pull/63938)) +- Update template preview dimensions in table layout. ([63938](https://github.com/WordPress/gutenberg/pull/63938)) + +#### Dataform + +- Fix SelectControl size and spacing. ([64324](https://github.com/WordPress/gutenberg/pull/64324)) +- Provide a better default for render when field has elements. ([64338](https://github.com/WordPress/gutenberg/pull/64338)) + +#### Components +- Autocompleter UI: Fix text color when hovering selected item. ([64294](https://github.com/WordPress/gutenberg/pull/64294)) +- BaseControl: change label's display: Block. ([63911](https://github.com/WordPress/gutenberg/pull/63911)) +- Button: Fix tertiary destructive hover style. ([64152](https://github.com/WordPress/gutenberg/pull/64152)) +- ColorPalette: Remove extra bottom margin when `CircularOptionPicker` is unneeded. ([63961](https://github.com/WordPress/gutenberg/pull/63961)) +- DropdownMenuV2: Break menu item help text on multiple lines for better truncation. ([63916](https://github.com/WordPress/gutenberg/pull/63916)) +- Fix modal dismissers in development mode. ([64132](https://github.com/WordPress/gutenberg/pull/64132)) +- Fix toggle help indentation. ([63903](https://github.com/WordPress/gutenberg/pull/63903)) +- Update the TextControl padding to match the rest of the controls. ([64326](https://github.com/WordPress/gutenberg/pull/64326)) + +#### Global Styles +- Fix block custom CSS pseudo element selectors. ([63980](https://github.com/WordPress/gutenberg/pull/63980)) +- Fix block library and global styles stylesheet ordering when a block style variation is active. ([63918](https://github.com/WordPress/gutenberg/pull/63918)) +- Style Book: Fix critical error when heading block is not registered. ([64047](https://github.com/WordPress/gutenberg/pull/64047)) +- TypesetButton: Check if variations exist before running logic. ([64139](https://github.com/WordPress/gutenberg/pull/64139)) + +#### Site Editor +- Centrally align entity in focused edit mode. ([64143](https://github.com/WordPress/gutenberg/pull/64143)) +- Don't trigger template ID resolution for multi-selected posts. ([64254](https://github.com/WordPress/gutenberg/pull/64254)) +- Long slugs breaking summary panel UI. ([64053](https://github.com/WordPress/gutenberg/pull/64053)) + +#### Zoom Out +- Keep top-level block selection if entering zoom out mode. ([64178](https://github.com/WordPress/gutenberg/pull/64178)) +- Use the block editor for insertion point data. ([63934](https://github.com/WordPress/gutenberg/pull/63934)) + +#### Block Library +- Fix a typo in use-image-sizes.js. ([64100](https://github.com/WordPress/gutenberg/pull/64100)) +- Template Part: Fix capability checks for inner blocks. ([64159](https://github.com/WordPress/gutenberg/pull/64159)) +- Update useTaxonomies hook to check for taxonomies for passed post type. ([64145](https://github.com/WordPress/gutenberg/pull/64145)) + +#### Design Tools +- Quote: Prevent block theme styles overriding global border and padding. ([64045](https://github.com/WordPress/gutenberg/pull/64045)) +- Spacing controls: Using CustomSelectControlV2 for >= 8 spacing sizes. ([64284](https://github.com/WordPress/gutenberg/pull/64284)) + +#### Post Editor +- Avoid errors for post types without a 'menu_icon'. ([64015](https://github.com/WordPress/gutenberg/pull/64015)) +- Post: Add a max length to the post password protected field. ([64156](https://github.com/WordPress/gutenberg/pull/64156)) + +#### Grid layout +- Fix grid resizer drag over embed. ([64098](https://github.com/WordPress/gutenberg/pull/64098)) +- Move resizer popover slot to fix display on mobile. ([63920](https://github.com/WordPress/gutenberg/pull/63920)) + +#### Block Editor +- Fix unexpected drag & rrop row/gallery creation logic. ([64241](https://github.com/WordPress/gutenberg/pull/64241)) + +#### Icons +- Remove hardcoded color from sidesAxial and sidesBottom icons. ([64174](https://github.com/WordPress/gutenberg/pull/64174)) + +#### Document Settings +- Display empty option when post author is missing. ([64165](https://github.com/WordPress/gutenberg/pull/64165)) + +#### Patterns +- Enable cross-browser support for pattern uploading. ([64123](https://github.com/WordPress/gutenberg/pull/64123)) + +#### Commands +- Fix 'Preferences' and 'Shortcuts' commands in StrictMode. ([64019](https://github.com/WordPress/gutenberg/pull/64019)) + +#### Meta Boxes +- Prevent popover from being hidden by metaboxes. ([63939](https://github.com/WordPress/gutenberg/pull/63939)) + +#### Page Content Focus +- TemplateContentPanel: Don't show content blocks that are in a Query Loop. ([63732](https://github.com/WordPress/gutenberg/pull/63732)) + +#### Font Library +- Fix item font family item height in the sidebar. ([63125](https://github.com/WordPress/gutenberg/pull/63125)) + +#### Block API +- Block categories - ensure that categories are unique by slug. ([62954](https://github.com/WordPress/gutenberg/pull/62954)) + + +### Accessibility + +- Restore focus style in dataviews grid view. ([64298](https://github.com/WordPress/gutenberg/pull/64298)) +- A11y text for site editor. ([62648](https://github.com/WordPress/gutenberg/pull/62648)) +- Accessibility issue of device preview options. ([63958](https://github.com/WordPress/gutenberg/pull/63958)) + +#### Components +- Improve the aria-disabled focus style of the Button. ([62480](https://github.com/WordPress/gutenberg/pull/62480)) +- Restore `describedBy` functionality on CustomSelectControl. ([63957](https://github.com/WordPress/gutenberg/pull/63957)) + +#### Block Library +- Fix unlabeled Spacer block controls. ([63806](https://github.com/WordPress/gutenberg/pull/63806)) +- Move Posts Per Page, Offset, and Pages controls from the block toolbar into Inspector Controls. ([58207](https://github.com/WordPress/gutenberg/pull/58207)) + +#### Font Library +- Remove notice context and add message when fonts are updated. ([64030](https://github.com/WordPress/gutenberg/pull/64030)) + + +### Performance + +- Add User Timings for the Interactivity API. ([60522](https://github.com/WordPress/gutenberg/pull/60522)) + +#### Data Views +- Optimize the patterns dataviews by extracting the fields definition. ([63927](https://github.com/WordPress/gutenberg/pull/63927)) + +#### Layout +- Avoid iterating auto grid inner blocks unless mode specifically changed. ([64194](https://github.com/WordPress/gutenberg/pull/64194)) + +#### Block bindings +- Move logic to merge `usesContext` outside the reducer. ([63941](https://github.com/WordPress/gutenberg/pull/63941)) + + +### Experiments + +- Adds experimental blocks flag. ([64121](https://github.com/WordPress/gutenberg/pull/64121)) + +#### DataForm +- Support multiple layouts and introduce the panel layout. ([64299](https://github.com/WordPress/gutenberg/pull/64299)) + +#### DataViews Extensibility +- Add a hook to allow third-party scripts to register/unregister post type actions. ([64138](https://github.com/WordPress/gutenberg/pull/64138)) + +#### Grid Interactivity +- Fix block mover layout and styles. ([64021](https://github.com/WordPress/gutenberg/pull/64021)) + +#### Block bindings +- UI for connecting bindings. ([62880](https://github.com/WordPress/gutenberg/pull/62880)) + + +### Documentation + +- .wp-env.json schema: Fix schema and add unit tests. ([63281](https://github.com/WordPress/gutenberg/pull/63281)) +- Add WP Studio to list of tools in documentation. ([64327](https://github.com/WordPress/gutenberg/pull/64327)) +- Add documentation for some dynamically generated selectors in the core-data store. ([64269](https://github.com/WordPress/gutenberg/pull/64269)) +- Block Editor: Update 'getBlocksByName' JSDoc. ([63919](https://github.com/WordPress/gutenberg/pull/63919)) +- Components: Add missing `__nextHasNoMarginBottom` documentation. ([64313](https://github.com/WordPress/gutenberg/pull/64313)) +- Corrected @deprecated doc Order in Inline Documentation. ([64013](https://github.com/WordPress/gutenberg/pull/64013)) +- Add documentation for `render_block` and `register_block_type_args` to Block Filters. ([64118](https://github.com/WordPress/gutenberg/pull/64118)) +- Fix interactivity API documentation link. ([64060](https://github.com/WordPress/gutenberg/pull/64060)) +- Fix non working link to an interactivity API example block. ([64061](https://github.com/WordPress/gutenberg/pull/64061)) +- Fix WampServer links. ([64062](https://github.com/WordPress/gutenberg/pull/64062)) +- FormToggle, ToggleControl: Fix docgen in Storybook. ([64065](https://github.com/WordPress/gutenberg/pull/64065)) +- Provide a better example for the PluginSidebar slotfill. ([64206](https://github.com/WordPress/gutenberg/pull/64206)) +- Update data-core.md to use correct headings. ([64309](https://github.com/WordPress/gutenberg/pull/64309)) + + +### Code Quality + +- Add margin-bottom lint rules ([64212](https://github.com/WordPress/gutenberg/pull/64212)),([64213](https://github.com/WordPress/gutenberg/pull/64213)) and ([63960](https://github.com/WordPress/gutenberg/pull/63960)) +- Add new useEntityRecordsWithPermissions hook. ([63857](https://github.com/WordPress/gutenberg/pull/63857)) +- Fix deprecated sass usage. ([63990](https://github.com/WordPress/gutenberg/pull/63990)) +- Remove an unnecessary wrapper component. ([63989](https://github.com/WordPress/gutenberg/pull/63989)) +- Theme JSON: Update core theme json resolver class use to Gutenberg version. ([63981](https://github.com/WordPress/gutenberg/pull/63981)) +- Zoom out: Get store action outside the loop. ([63936](https://github.com/WordPress/gutenberg/pull/63936)) +- Remove Speak from device menu selection. ([64115](https://github.com/WordPress/gutenberg/pull/64115)) + +#### Block Editor +- BlockDraggable: Remove invalid aria-hidden attribute from button. ([64228](https://github.com/WordPress/gutenberg/pull/64228)) +- FontFamilyControl: Deprecate bottom margin. ([64280](https://github.com/WordPress/gutenberg/pull/64280)) +- Remove unnecessary/incorrect `unlock` call in `setEditorMode` action. ([64073](https://github.com/WordPress/gutenberg/pull/64073)) + +#### Data Views +- Formalize text field type definition. ([64168](https://github.com/WordPress/gutenberg/pull/64168)) +- Use items with permissions and avoid hooks to register actions. ([63923](https://github.com/WordPress/gutenberg/pull/63923)) + +#### DataForm +- Centralize edit logic in field type definitions. ([64171](https://github.com/WordPress/gutenberg/pull/64171)) +- Move validation logic to the field type definition. ([64164](https://github.com/WordPress/gutenberg/pull/64164)) + +#### Global Styles +- Background image: Remove toolspanel placeholder component. ([64242](https://github.com/WordPress/gutenberg/pull/64242)) +- Consolidate theme.json ref and URI resolution. ([64182](https://github.com/WordPress/gutenberg/pull/64182)) + +#### Plugin +- Remove compat layers for WP 6.4 and 6.5. ([64096](https://github.com/WordPress/gutenberg/pull/64096)) +- Remove leftover 'WP_Rest_Customizer_Nonces' controller. ([64221](https://github.com/WordPress/gutenberg/pull/64221)) + +#### Site Editor +- Use `structuredClone` for deep cloning. ([64203](https://github.com/WordPress/gutenberg/pull/64203)) + +#### Block Library +- Add stylelint rule to prevent usage of flex-direction reverse values. ([63081](https://github.com/WordPress/gutenberg/pull/63081)) +- Image Block Lightbox: Fix warning error when resizing. ([63995](https://github.com/WordPress/gutenberg/pull/63995)) + +#### Icons +- Fix invalid prop for `homeButton` icon. ([64191](https://github.com/WordPress/gutenberg/pull/64191)) + +#### Post Editor +- Remove resolvers hack for post actions. ([64094](https://github.com/WordPress/gutenberg/pull/64094)) + +#### Components +- Upgrade Ariakit. ([64066](https://github.com/WordPress/gutenberg/pull/64066)) + +#### Page Content Focus +- Fix the 'getBlocksByName' selector call. ([63922](https://github.com/WordPress/gutenberg/pull/63922)) + + +### Tools + +#### Testing +- Components: Cleanup flaky unit test `sleep()` hacks. ([64205](https://github.com/WordPress/gutenberg/pull/64205)) +- Fix flaky DataViews list layout end-to-end tests. ([64244](https://github.com/WordPress/gutenberg/pull/64244)) +- Fix typo in 'Verify Core Backport Changelog' job title. ([64058](https://github.com/WordPress/gutenberg/pull/64058)) +- Improve `Button` matrix in visual regression test. ([64120](https://github.com/WordPress/gutenberg/pull/64120)) +- Improve theme.json test failure messages by pretty printing css for a more accurate diff. ([64077](https://github.com/WordPress/gutenberg/pull/64077)) + + +## First-time contributors + +The following PRs were merged by first-time contributors: + +- @Chrico: Block categories - ensure that categories are unique by slug. ([62954](https://github.com/WordPress/gutenberg/pull/62954)) +- @djcowan: Update api-reference.md. ([64325](https://github.com/WordPress/gutenberg/pull/64325)) +- @meteorlxy: CustomSelectControl: Support generic props type. ([63985](https://github.com/WordPress/gutenberg/pull/63985)) +- @Rishit30G: Add WP Studio to list of tools in documentation. ([64327](https://github.com/WordPress/gutenberg/pull/64327)) +- @wzieba: ([64044](https://github.com/WordPress/gutenberg/pull/64044)) + + +## Contributors + +The following contributors merged PRs in this release: + +@aaronrobertshaw @adamsilverstein @afercia @akasunil @Aljullu @amitraj2203 @andrewserong @carolinan @cbravobernal @Chrico @ciampo @creativecoder @DaniGuardiola @DAreRodz @djcowan @ellatrix @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @kebbet @kmanijak @Mamaduka @matiasbenedetto @meteorlxy @mikachan @mirka @mtias @ndiego @noisysocks @oandregal @ramonjd @richtabor @Rishit30G @ryanwelcher @SantosGuillamot @scruffian @shail-mehta @simison @stokesman @t-hamano @talldan @tomdevisser @tomjn @tyxla @up1512001 @wzieba @youknowriad + + = 18.9.0 = ## Changelog diff --git a/docs/getting-started/devenv/README.md b/docs/getting-started/devenv/README.md index 1c2b9ed9070d3..4539dacbdf504 100644 --- a/docs/getting-started/devenv/README.md +++ b/docs/getting-started/devenv/README.md @@ -54,6 +54,7 @@ Refer to the [Get started with `wp-env`](/docs/getting-started/devenv/get-starte This list is not exhaustive, but here are several additional options to choose from if you prefer not to use `wp-env`: - [Local](https://localwp.com/) +- [WP Studio](https://developer.wordpress.com/studio/) - [XAMPP](https://www.apachefriends.org/) - [MAMP](https://www.mamp.info/en/mamp/mac/) - [Varying Vagrant Vagrants](https://varyingvagrantvagrants.org/) (VVV) diff --git a/docs/how-to-guides/block-tutorial/applying-styles-with-stylesheets.md b/docs/how-to-guides/block-tutorial/applying-styles-with-stylesheets.md index 122ee3eaa0c27..85ac956ff74ba 100644 --- a/docs/how-to-guides/block-tutorial/applying-styles-with-stylesheets.md +++ b/docs/how-to-guides/block-tutorial/applying-styles-with-stylesheets.md @@ -138,6 +138,17 @@ And a `style.css` file to load on the frontend: The files will automatically be enqueued when specified in the block.json. +
+ +If you are using `@wordpress/scripts` you will need to import your stylesheet within your corresponding JavaScript file in order for `@wordpress/scripts` to process the stylesheet. + +Example: + +- In `edit.js` you would place `import './editor.scss';` +- In `index.js` you would place `import './style.scss';` +- In `view.js` you would place `import './view.scss';` (interactive block template) +
+ **Note:** If you have multiple files to include, you can use standard `wp_enqueue_style` functions like any other plugin or theme. You will want to use the following hooks for the block editor: - `enqueue_block_editor_assets` - to load only in editor view diff --git a/docs/reference-guides/interactivity-api/api-reference.md b/docs/reference-guides/interactivity-api/api-reference.md index 0003046541532..a4b400b8c0276 100644 --- a/docs/reference-guides/interactivity-api/api-reference.md +++ b/docs/reference-guides/interactivity-api/api-reference.md @@ -55,7 +55,7 @@ The `wp-interactive` directive "activates" the interactivity for the DOM element data-wp-interactive="myPlugin" data-wp-context='{ "myColor" : "red", "myBgColor": "yellow" }' > -

I'm interactive now, >and I can use directives!

+

I'm interactive now, and I can use directives!

I'm also interactive, and I can also use directives!

@@ -66,7 +66,7 @@ The `wp-interactive` directive "activates" the interactivity for the DOM element data-wp-interactive='{ "namespace": "myPlugin" }' data-wp-context='{ "myColor" : "red", "myBgColor": "yellow" }' > -

I'm interactive now, >and I can use directives!

+

I'm interactive now, and I can use directives!

I'm also interactive, and I can also use directives!

diff --git a/package-lock.json b/package-lock.json index 23f504d7cbf46..b0eccc961afb7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gutenberg", - "version": "18.9.0", + "version": "19.0.0-rc.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "gutenberg", - "version": "18.9.0", + "version": "19.0.0-rc.1", "hasInstallScript": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -52014,7 +52014,7 @@ }, "packages/a11y": { "name": "@wordpress/a11y", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52028,7 +52028,7 @@ }, "packages/annotations": { "name": "@wordpress/annotations", - "version": "3.4.0", + "version": "3.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52056,7 +52056,7 @@ }, "packages/api-fetch": { "name": "@wordpress/api-fetch", - "version": "7.4.0", + "version": "7.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52070,7 +52070,7 @@ }, "packages/autop": { "name": "@wordpress/autop", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -52082,7 +52082,7 @@ }, "packages/babel-plugin-import-jsx-pragma": { "name": "@wordpress/babel-plugin-import-jsx-pragma", - "version": "5.4.0", + "version": "5.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -52095,7 +52095,7 @@ }, "packages/babel-plugin-makepot": { "name": "@wordpress/babel-plugin-makepot", - "version": "6.4.0", + "version": "6.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -52113,7 +52113,7 @@ }, "packages/babel-preset-default": { "name": "@wordpress/babel-preset-default", - "version": "8.4.0", + "version": "8.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -52136,7 +52136,7 @@ }, "packages/base-styles": { "name": "@wordpress/base-styles", - "version": "5.4.0", + "version": "5.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -52146,7 +52146,7 @@ }, "packages/blob": { "name": "@wordpress/blob", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -52158,7 +52158,7 @@ }, "packages/block-directory": { "name": "@wordpress/block-directory", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52193,7 +52193,7 @@ }, "packages/block-editor": { "name": "@wordpress/block-editor", - "version": "13.4.0", + "version": "14.0.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52290,7 +52290,7 @@ }, "packages/block-library": { "name": "@wordpress/block-library", - "version": "9.4.0", + "version": "9.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52356,7 +52356,7 @@ }, "packages/block-serialization-default-parser": { "name": "@wordpress/block-serialization-default-parser", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -52368,7 +52368,7 @@ }, "packages/block-serialization-spec-parser": { "name": "@wordpress/block-serialization-spec-parser", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "pegjs": "^0.10.0", @@ -52381,7 +52381,7 @@ }, "packages/blocks": { "name": "@wordpress/blocks", - "version": "13.4.0", + "version": "13.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52435,7 +52435,7 @@ }, "packages/browserslist-config": { "name": "@wordpress/browserslist-config", - "version": "6.4.0", + "version": "6.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -52445,7 +52445,7 @@ }, "packages/commands": { "name": "@wordpress/commands", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52618,7 +52618,7 @@ }, "packages/components": { "name": "@wordpress/components", - "version": "28.4.0", + "version": "28.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.4.7", @@ -52744,7 +52744,7 @@ }, "packages/compose": { "name": "@wordpress/compose", - "version": "7.4.0", + "version": "7.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52781,7 +52781,7 @@ }, "packages/core-commands": { "name": "@wordpress/core-commands", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52809,7 +52809,7 @@ }, "packages/core-data": { "name": "@wordpress/core-data", - "version": "7.4.0", + "version": "7.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52854,7 +52854,7 @@ }, "packages/create-block": { "name": "@wordpress/create-block", - "version": "4.47.0", + "version": "4.48.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -52882,7 +52882,7 @@ }, "packages/create-block-tutorial-template": { "name": "@wordpress/create-block-tutorial-template", - "version": "4.4.0", + "version": "4.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -52892,7 +52892,7 @@ }, "packages/customize-widgets": { "name": "@wordpress/customize-widgets", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52930,7 +52930,7 @@ }, "packages/data": { "name": "@wordpress/data", - "version": "10.4.0", + "version": "10.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52959,7 +52959,7 @@ }, "packages/data-controls": { "name": "@wordpress/data-controls", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -52977,7 +52977,7 @@ }, "packages/dataviews": { "name": "@wordpress/dataviews", - "version": "4.0.0", + "version": "4.1.0", "license": "GPL-2.0-or-later", "dependencies": { "@ariakit/react": "^0.4.7", @@ -52990,6 +52990,7 @@ "@wordpress/icons": "file:../icons", "@wordpress/primitives": "file:../primitives", "@wordpress/private-apis": "file:../private-apis", + "@wordpress/warning": "file:../warning", "clsx": "^2.1.1", "remove-accents": "^0.5.0" }, @@ -53038,7 +53039,7 @@ }, "packages/date": { "name": "@wordpress/date", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53053,7 +53054,7 @@ }, "packages/dependency-extraction-webpack-plugin": { "name": "@wordpress/dependency-extraction-webpack-plugin", - "version": "6.4.0", + "version": "6.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53069,7 +53070,7 @@ }, "packages/deprecated": { "name": "@wordpress/deprecated", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53082,7 +53083,7 @@ }, "packages/docgen": { "name": "@wordpress/docgen", - "version": "2.4.0", + "version": "2.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53104,7 +53105,7 @@ }, "packages/dom": { "name": "@wordpress/dom", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53117,7 +53118,7 @@ }, "packages/dom-ready": { "name": "@wordpress/dom-ready", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -53129,7 +53130,7 @@ }, "packages/e2e-test-utils": { "name": "@wordpress/e2e-test-utils", - "version": "11.4.0", + "version": "11.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53152,7 +53153,7 @@ }, "packages/e2e-test-utils-playwright": { "name": "@wordpress/e2e-test-utils-playwright", - "version": "1.4.0", + "version": "1.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53180,7 +53181,7 @@ }, "packages/e2e-tests": { "name": "@wordpress/e2e-tests", - "version": "8.4.0", + "version": "8.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53220,7 +53221,7 @@ }, "packages/edit-post": { "name": "@wordpress/edit-post", - "version": "8.4.0", + "version": "8.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53267,7 +53268,7 @@ }, "packages/edit-site": { "name": "@wordpress/edit-site", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53329,7 +53330,7 @@ }, "packages/edit-widgets": { "name": "@wordpress/edit-widgets", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53372,7 +53373,7 @@ }, "packages/editor": { "name": "@wordpress/editor", - "version": "14.4.0", + "version": "14.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53433,7 +53434,7 @@ }, "packages/element": { "name": "@wordpress/element", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53452,7 +53453,7 @@ }, "packages/env": { "name": "@wordpress/env", - "version": "10.4.0", + "version": "10.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53594,7 +53595,7 @@ }, "packages/escape-html": { "name": "@wordpress/escape-html", - "version": "3.4.0", + "version": "3.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -53606,7 +53607,7 @@ }, "packages/eslint-plugin": { "name": "@wordpress/eslint-plugin", - "version": "20.1.0", + "version": "20.2.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53649,7 +53650,7 @@ }, "packages/format-library": { "name": "@wordpress/format-library", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53677,7 +53678,7 @@ }, "packages/hooks": { "name": "@wordpress/hooks", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -53689,7 +53690,7 @@ }, "packages/html-entities": { "name": "@wordpress/html-entities", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -53701,7 +53702,7 @@ }, "packages/i18n": { "name": "@wordpress/i18n", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53721,7 +53722,7 @@ }, "packages/icons": { "name": "@wordpress/icons", - "version": "10.4.0", + "version": "10.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53735,11 +53736,10 @@ }, "packages/interactivity": { "name": "@wordpress/interactivity", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@preact/signals": "^1.2.2", - "deepsignal": "^1.4.0", "preact": "^10.19.3" }, "engines": { @@ -53749,7 +53749,7 @@ }, "packages/interactivity-router": { "name": "@wordpress/interactivity-router", - "version": "2.4.0", + "version": "2.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@wordpress/interactivity": "file:../interactivity" @@ -53774,31 +53774,6 @@ "preact": "10.x" } }, - "packages/interactivity/node_modules/deepsignal": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/deepsignal/-/deepsignal-1.4.0.tgz", - "integrity": "sha512-x0XUMT48s+xQRLc2fPFfxnYLCJ46vffw47OQ5NcHFzacOjfW5eA0NrEmI0bhQHL6MgUHkBVT4TIiWTVwzTEwpg==", - "peerDependencies": { - "@preact/signals": "^1.1.4", - "@preact/signals-core": "^1.5.1", - "@preact/signals-react": "^1.3.8 || ^2.0.0", - "preact": "^10.16.0" - }, - "peerDependenciesMeta": { - "@preact/signals": { - "optional": true - }, - "@preact/signals-core": { - "optional": true - }, - "@preact/signals-react": { - "optional": true - }, - "preact": { - "optional": true - } - } - }, "packages/interactivity/node_modules/preact": { "version": "10.19.3", "resolved": "https://registry.npmjs.org/preact/-/preact-10.19.3.tgz", @@ -53810,7 +53785,7 @@ }, "packages/interface": { "name": "@wordpress/interface", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53839,7 +53814,7 @@ }, "packages/is-shallow-equal": { "name": "@wordpress/is-shallow-equal", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -53851,7 +53826,7 @@ }, "packages/jest-console": { "name": "@wordpress/jest-console", - "version": "8.4.0", + "version": "8.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53868,7 +53843,7 @@ }, "packages/jest-preset-default": { "name": "@wordpress/jest-preset-default", - "version": "12.4.0", + "version": "12.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53886,7 +53861,7 @@ }, "packages/jest-puppeteer-axe": { "name": "@wordpress/jest-puppeteer-axe", - "version": "7.4.0", + "version": "7.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53909,7 +53884,7 @@ }, "packages/keyboard-shortcuts": { "name": "@wordpress/keyboard-shortcuts", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53927,7 +53902,7 @@ }, "packages/keycodes": { "name": "@wordpress/keycodes", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53940,7 +53915,7 @@ }, "packages/lazy-import": { "name": "@wordpress/lazy-import", - "version": "2.4.0", + "version": "2.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -53955,7 +53930,7 @@ }, "packages/list-reusable-blocks": { "name": "@wordpress/list-reusable-blocks", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53978,7 +53953,7 @@ }, "packages/media-utils": { "name": "@wordpress/media-utils", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -53994,7 +53969,7 @@ }, "packages/notices": { "name": "@wordpress/notices", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54011,7 +53986,7 @@ }, "packages/npm-package-json-lint-config": { "name": "@wordpress/npm-package-json-lint-config", - "version": "5.4.0", + "version": "5.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -54024,7 +53999,7 @@ }, "packages/nux": { "name": "@wordpress/nux", - "version": "9.4.0", + "version": "9.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54047,7 +54022,7 @@ }, "packages/patterns": { "name": "@wordpress/patterns", - "version": "2.4.0", + "version": "2.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54077,7 +54052,7 @@ }, "packages/plugins": { "name": "@wordpress/plugins", - "version": "7.4.0", + "version": "7.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54100,7 +54075,7 @@ }, "packages/postcss-plugins-preset": { "name": "@wordpress/postcss-plugins-preset", - "version": "5.4.0", + "version": "5.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54117,7 +54092,7 @@ }, "packages/postcss-themes": { "name": "@wordpress/postcss-themes", - "version": "6.4.0", + "version": "6.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -54130,7 +54105,7 @@ }, "packages/preferences": { "name": "@wordpress/preferences", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54156,7 +54131,7 @@ }, "packages/preferences-persistence": { "name": "@wordpress/preferences-persistence", - "version": "2.4.0", + "version": "2.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54169,7 +54144,7 @@ }, "packages/prettier-config": { "name": "@wordpress/prettier-config", - "version": "4.4.0", + "version": "4.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -54182,7 +54157,7 @@ }, "packages/primitives": { "name": "@wordpress/primitives", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54199,7 +54174,7 @@ }, "packages/priority-queue": { "name": "@wordpress/priority-queue", - "version": "3.4.0", + "version": "3.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54212,7 +54187,7 @@ }, "packages/private-apis": { "name": "@wordpress/private-apis", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -54224,7 +54199,7 @@ }, "packages/project-management-automation": { "name": "@wordpress/project-management-automation", - "version": "2.4.0", + "version": "2.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54254,7 +54229,7 @@ }, "packages/react-i18n": { "name": "@wordpress/react-i18n", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54410,7 +54385,7 @@ }, "packages/readable-js-assets-webpack-plugin": { "name": "@wordpress/readable-js-assets-webpack-plugin", - "version": "3.4.0", + "version": "3.5.0", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -54423,7 +54398,7 @@ }, "packages/redux-routine": { "name": "@wordpress/redux-routine", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54468,7 +54443,7 @@ }, "packages/reusable-blocks": { "name": "@wordpress/reusable-blocks", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54495,7 +54470,7 @@ }, "packages/rich-text": { "name": "@wordpress/rich-text", - "version": "7.4.0", + "version": "7.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54519,7 +54494,7 @@ }, "packages/router": { "name": "@wordpress/router", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -54538,7 +54513,7 @@ }, "packages/scripts": { "name": "@wordpress/scripts", - "version": "28.4.0", + "version": "28.5.0", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -54992,7 +54967,7 @@ }, "packages/server-side-render": { "name": "@wordpress/server-side-render", - "version": "5.4.0", + "version": "5.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55018,7 +54993,7 @@ }, "packages/shortcode": { "name": "@wordpress/shortcode", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55031,7 +55006,7 @@ }, "packages/style-engine": { "name": "@wordpress/style-engine", - "version": "2.4.0", + "version": "2.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55044,7 +55019,7 @@ }, "packages/stylelint-config": { "name": "@wordpress/stylelint-config", - "version": "22.4.0", + "version": "22.5.0", "dev": true, "license": "MIT", "dependencies": { @@ -55061,7 +55036,7 @@ }, "packages/sync": { "name": "@wordpress/sync", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55082,7 +55057,7 @@ }, "packages/token-list": { "name": "@wordpress/token-list", - "version": "3.4.0", + "version": "3.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -55094,7 +55069,7 @@ }, "packages/undo-manager": { "name": "@wordpress/undo-manager", - "version": "1.4.0", + "version": "1.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55107,7 +55082,7 @@ }, "packages/url": { "name": "@wordpress/url", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55120,7 +55095,7 @@ }, "packages/viewport": { "name": "@wordpress/viewport", - "version": "6.4.0", + "version": "6.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55138,7 +55113,7 @@ }, "packages/warning": { "name": "@wordpress/warning", - "version": "3.4.0", + "version": "3.5.0", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", @@ -55147,7 +55122,7 @@ }, "packages/widgets": { "name": "@wordpress/widgets", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -55175,7 +55150,7 @@ }, "packages/wordcount": { "name": "@wordpress/wordcount", - "version": "4.4.0", + "version": "4.5.0", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" @@ -67789,6 +67764,7 @@ "@wordpress/icons": "file:../icons", "@wordpress/primitives": "file:../primitives", "@wordpress/private-apis": "file:../private-apis", + "@wordpress/warning": "file:../warning", "clsx": "^2.1.1", "remove-accents": "^0.5.0" }, @@ -68293,7 +68269,6 @@ "version": "file:packages/interactivity", "requires": { "@preact/signals": "^1.2.2", - "deepsignal": "^1.4.0", "preact": "^10.19.3" }, "dependencies": { @@ -68305,11 +68280,6 @@ "@preact/signals-core": "^1.4.0" } }, - "deepsignal": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/deepsignal/-/deepsignal-1.4.0.tgz", - "integrity": "sha512-x0XUMT48s+xQRLc2fPFfxnYLCJ46vffw47OQ5NcHFzacOjfW5eA0NrEmI0bhQHL6MgUHkBVT4TIiWTVwzTEwpg==" - }, "preact": { "version": "10.19.3", "resolved": "https://registry.npmjs.org/preact/-/preact-10.19.3.tgz", diff --git a/package.json b/package.json index 53e8d0876ed62..fac57093a852c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gutenberg", - "version": "18.9.0", + "version": "19.0.0-rc.1", "private": true, "description": "A new WordPress editor experience.", "author": "The WordPress Contributors", diff --git a/packages/a11y/CHANGELOG.md b/packages/a11y/CHANGELOG.md index 3253a926865bd..7e7a192fe2cec 100644 --- a/packages/a11y/CHANGELOG.md +++ b/packages/a11y/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.5.0 (2024-08-07) + ## 4.4.0 (2024-07-24) ## 4.3.0 (2024-07-10) diff --git a/packages/a11y/package.json b/packages/a11y/package.json index 3af093baa98c9..c9bff2d5c7375 100644 --- a/packages/a11y/package.json +++ b/packages/a11y/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/a11y", - "version": "4.4.0", + "version": "4.5.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 a8a78b900448f..4fd7575785813 100644 --- a/packages/annotations/CHANGELOG.md +++ b/packages/annotations/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 3.5.0 (2024-08-07) + ## 3.4.0 (2024-07-24) ## 3.3.0 (2024-07-10) diff --git a/packages/annotations/package.json b/packages/annotations/package.json index 147b032d25649..7706e6e0b345e 100644 --- a/packages/annotations/package.json +++ b/packages/annotations/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/annotations", - "version": "3.4.0", + "version": "3.5.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 f55dea9482a28..38185a29d5e72 100644 --- a/packages/api-fetch/CHANGELOG.md +++ b/packages/api-fetch/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.5.0 (2024-08-07) + ## 7.4.0 (2024-07-24) ## 7.3.0 (2024-07-10) diff --git a/packages/api-fetch/package.json b/packages/api-fetch/package.json index ad48bede6c202..4c5ee98edcd12 100644 --- a/packages/api-fetch/package.json +++ b/packages/api-fetch/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/api-fetch", - "version": "7.4.0", + "version": "7.5.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 a039d571429db..28c66fc53c021 100644 --- a/packages/autop/CHANGELOG.md +++ b/packages/autop/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.5.0 (2024-08-07) + ## 4.4.0 (2024-07-24) ## 4.3.0 (2024-07-10) diff --git a/packages/autop/package.json b/packages/autop/package.json index f96a7afc7887f..af8830570bd04 100644 --- a/packages/autop/package.json +++ b/packages/autop/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/autop", - "version": "4.4.0", + "version": "4.5.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 f99035b53ad4f..a8b85caf3939c 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.5.0 (2024-08-07) + ## 5.4.0 (2024-07-24) ## 5.3.0 (2024-07-10) diff --git a/packages/babel-plugin-import-jsx-pragma/package.json b/packages/babel-plugin-import-jsx-pragma/package.json index 2be402163fdff..3cec94c138f99 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.4.0", + "version": "5.5.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 4d876ac3629bc..ad77a8bda2e3c 100644 --- a/packages/babel-plugin-makepot/CHANGELOG.md +++ b/packages/babel-plugin-makepot/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 6.5.0 (2024-08-07) + ## 6.4.0 (2024-07-24) ## 6.3.0 (2024-07-10) diff --git a/packages/babel-plugin-makepot/package.json b/packages/babel-plugin-makepot/package.json index 3ce5e4ac321f9..6540cb5bf4cd7 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.4.0", + "version": "6.5.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 ed74690aef3a1..39ff7b2098ba7 100644 --- a/packages/babel-preset-default/CHANGELOG.md +++ b/packages/babel-preset-default/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 8.5.0 (2024-08-07) + ## 8.4.0 (2024-07-24) ## 8.3.0 (2024-07-10) diff --git a/packages/babel-preset-default/package.json b/packages/babel-preset-default/package.json index 10792a258407f..0ee883a0d4ee1 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.4.0", + "version": "8.5.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 48e715441a86f..c68e328b68421 100644 --- a/packages/base-styles/CHANGELOG.md +++ b/packages/base-styles/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.5.0 (2024-08-07) + ## 5.4.0 (2024-07-24) ## 5.3.0 (2024-07-10) diff --git a/packages/base-styles/package.json b/packages/base-styles/package.json index ff59ac8cf960e..9c243e87d1f2f 100644 --- a/packages/base-styles/package.json +++ b/packages/base-styles/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/base-styles", - "version": "5.4.0", + "version": "5.5.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 9963ce05042c7..56c1ee2a2554b 100644 --- a/packages/blob/CHANGELOG.md +++ b/packages/blob/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.5.0 (2024-08-07) + ## 4.4.0 (2024-07-24) ## 4.3.0 (2024-07-10) diff --git a/packages/blob/package.json b/packages/blob/package.json index ca6820770afe0..51987239c1451 100644 --- a/packages/blob/package.json +++ b/packages/blob/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/blob", - "version": "4.4.0", + "version": "4.5.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 99d27f9b06ca0..8c25a168e585c 100644 --- a/packages/block-directory/CHANGELOG.md +++ b/packages/block-directory/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.5.0 (2024-08-07) + ## 5.4.0 (2024-07-24) ## 5.3.0 (2024-07-10) diff --git a/packages/block-directory/package.json b/packages/block-directory/package.json index 20afdad09cb53..78a786b4c7d49 100644 --- a/packages/block-directory/package.json +++ b/packages/block-directory/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-directory", - "version": "5.4.0", + "version": "5.5.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 bc7d1b88bc9b0..09792d9dca5da 100644 --- a/packages/block-editor/CHANGELOG.md +++ b/packages/block-editor/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 14.0.0 (2024-08-07) + ### Breaking Changes - `URLInput`: Remove deprecated `__nextHasNoMarginBottom` prop and promote to default behavior ([#64282](https://github.com/WordPress/gutenberg/pull/64282)). diff --git a/packages/block-editor/package.json b/packages/block-editor/package.json index aadf192f3016e..8ccaee6f0a955 100644 --- a/packages/block-editor/package.json +++ b/packages/block-editor/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-editor", - "version": "13.4.0", + "version": "14.0.0", "description": "Generic block editor.", "author": "The WordPress Contributors", "license": "GPL-2.0-or-later", diff --git a/packages/block-editor/src/autocompleters/style.scss b/packages/block-editor/src/autocompleters/style.scss index 5380ddcfbe48b..43acc4efc16a5 100644 --- a/packages/block-editor/src/autocompleters/style.scss +++ b/packages/block-editor/src/autocompleters/style.scss @@ -4,6 +4,10 @@ .block-editor-block-icon { margin-right: $grid-unit-10; } + + &[aria-selected="true"] .block-editor-block-icon { + color: inherit !important; + } } .block-editor-autocompleters__link { diff --git a/packages/block-editor/src/components/inspector-controls/README.md b/packages/block-editor/src/components/inspector-controls/README.md index cc68c7cae7c78..fd4847f53472b 100644 --- a/packages/block-editor/src/components/inspector-controls/README.md +++ b/packages/block-editor/src/components/inspector-controls/README.md @@ -96,6 +96,7 @@ registerBlockType( 'my-plugin/inspector-controls-example', { { diff --git a/packages/block-editor/src/components/resolution-tool/index.js b/packages/block-editor/src/components/resolution-tool/index.js index 42fea6e8655a8..df43cb6acb096 100644 --- a/packages/block-editor/src/components/resolution-tool/index.js +++ b/packages/block-editor/src/components/resolution-tool/index.js @@ -44,6 +44,7 @@ export default function ResolutionTool( { panelId={ panelId } > { return ( <> - +

{ device.label } is used here for testing purposes to ensure we have access to details about the device. diff --git a/packages/block-editor/src/components/tabbed-sidebar/style.scss b/packages/block-editor/src/components/tabbed-sidebar/style.scss index 374a012173e23..f7fba1c000346 100644 --- a/packages/block-editor/src/components/tabbed-sidebar/style.scss +++ b/packages/block-editor/src/components/tabbed-sidebar/style.scss @@ -23,22 +23,7 @@ } .block-editor-tabbed-sidebar__tablist { - box-sizing: border-box; - flex-grow: 1; - margin-bottom: -$border-width; - width: 100%; -} - -.block-editor-tabbed-sidebar__tab { - flex-grow: 1; margin-bottom: -$border-width; - - &[id$="reusable"] { - flex-grow: inherit; - // These are to align the `reusable` icon with the search icon. - padding-left: $grid-unit-20; - padding-right: $grid-unit-20; - } } .block-editor-tabbed-sidebar__tabpanel { diff --git a/packages/block-library/CHANGELOG.md b/packages/block-library/CHANGELOG.md index 652c89fd3540e..b14275fdad398 100644 --- a/packages/block-library/CHANGELOG.md +++ b/packages/block-library/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 9.5.0 (2024-08-07) + ### New Feature - Query Loop Block: Moves per page, offset, and pages controls into Inspector Controls. ([#58207](https://github.com/WordPress/gutenberg/pull/58207)) diff --git a/packages/block-library/package.json b/packages/block-library/package.json index c1d27c8691f4f..4948fed4e65a5 100644 --- a/packages/block-library/package.json +++ b/packages/block-library/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/block-library", - "version": "9.4.0", + "version": "9.5.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/form/edit.js b/packages/block-library/src/form/edit.js index bea513a3785dc..2738644878660 100644 --- a/packages/block-library/src/form/edit.js +++ b/packages/block-library/src/form/edit.js @@ -77,8 +77,8 @@ const Edit = ( { attributes, setAttributes, clientId } ) => { { { submissionMethod === 'email' && ( onSelect( option ) } > { option.label } diff --git a/packages/components/src/autocomplete/style.scss b/packages/components/src/autocomplete/style.scss index fdb29fe577f20..75b219210f42e 100644 --- a/packages/components/src/autocomplete/style.scss +++ b/packages/components/src/autocomplete/style.scss @@ -13,10 +13,4 @@ &:focus:not(:disabled) { @include block-toolbar-button-style__focus(); } - - &.is-selected, - &:not(:disabled,[aria-disabled="true"]):active { - background: $components-color-accent; - color: $white; - } } diff --git a/packages/components/src/button/style.scss b/packages/components/src/button/style.scss index fcbd363e17c7d..7d67dcc0748b8 100644 --- a/packages/components/src/button/style.scss +++ b/packages/components/src/button/style.scss @@ -215,6 +215,16 @@ color: $gray-600; } } + + &.is-tertiary { + &:hover:not(:disabled, [aria-disabled="true"]) { + background: rgba($alert-red, 0.04); + } + + &:active:not(:disabled, [aria-disabled="true"]) { + background: rgba($alert-red, 0.08); + } + } } /** diff --git a/packages/components/src/heading/types.ts b/packages/components/src/heading/types.ts index 4767c0407d5a0..6ec3f0a82ef2e 100644 --- a/packages/components/src/heading/types.ts +++ b/packages/components/src/heading/types.ts @@ -17,10 +17,7 @@ export type HeadingSize = | '5' | '6'; -export type HeadingProps = Omit< - TextProps, - 'size' | 'isBlock' | 'color' | 'weight' -> & { +export type HeadingProps = Omit< TextProps, 'isBlock' | 'color' | 'weight' > & { /** * Passing any of the heading levels to `level` will both render the correct * typographic text size as well as the semantic element corresponding to diff --git a/packages/components/src/select-control/index.tsx b/packages/components/src/select-control/index.tsx index 8a3b6bda68a16..ca9966fc675b8 100644 --- a/packages/components/src/select-control/index.tsx +++ b/packages/components/src/select-control/index.tsx @@ -153,6 +153,7 @@ function UnforwardedSelectControl< V extends string >( * * return ( * { return ( setClassName( value ) } diff --git a/packages/components/src/text-control/index.tsx b/packages/components/src/text-control/index.tsx index e964f918c119e..1643c5bc37c34 100644 --- a/packages/components/src/text-control/index.tsx +++ b/packages/components/src/text-control/index.tsx @@ -75,6 +75,7 @@ function UnforwardedTextControl( * * return ( * setClassName( value ) } diff --git a/packages/components/src/text-control/style.scss b/packages/components/src/text-control/style.scss index 1e8477b255b9b..d6819f86b84bf 100644 --- a/packages/components/src/text-control/style.scss +++ b/packages/components/src/text-control/style.scss @@ -20,5 +20,10 @@ &.is-next-40px-default-size { height: $grid-unit-50; + + // Subtract 1px to account for the border, which isn't included on the element + // on newer components like InputControl, SelectControl, etc. + padding-left: $grid-unit-20; + padding-right: $grid-unit-20; } } diff --git a/packages/components/src/toggle-group-control/toggle-group-control-option-icon/README.md b/packages/components/src/toggle-group-control/toggle-group-control-option-icon/README.md index 8b96470e21301..a0e3a44cf7460 100644 --- a/packages/components/src/toggle-group-control/toggle-group-control-option-icon/README.md +++ b/packages/components/src/toggle-group-control/toggle-group-control-option-icon/README.md @@ -17,7 +17,7 @@ import { formatLowercase, formatUppercase } from '@wordpress/icons'; function Example() { return ( - + - * - * - * - * ); + * return ( + * + * + * + * + * ); * } * ``` */ diff --git a/packages/components/src/toggle-group-control/toggle-group-control-option/README.md b/packages/components/src/toggle-group-control/toggle-group-control-option/README.md index 7f9f4d32f29fc..2e7c55bd68836 100644 --- a/packages/components/src/toggle-group-control/toggle-group-control-option/README.md +++ b/packages/components/src/toggle-group-control/toggle-group-control-option/README.md @@ -17,7 +17,12 @@ import { function Example() { return ( - + + * * * * diff --git a/packages/components/src/toggle-group-control/toggle-group-control/README.md b/packages/components/src/toggle-group-control/toggle-group-control/README.md index 64e0489f4171b..6db7ec2054418 100644 --- a/packages/components/src/toggle-group-control/toggle-group-control/README.md +++ b/packages/components/src/toggle-group-control/toggle-group-control/README.md @@ -20,7 +20,12 @@ import { function Example() { return ( - + @@ -82,3 +87,10 @@ Callback when a segment is selected. The value of the `ToggleGroupControl`. - Required: No + +### `__nextHasNoMarginBottom`: `boolean` + +Start opting into the new margin-free styles that will become the default in a future version. + +- Required: No +- Default: `false` \ No newline at end of file diff --git a/packages/components/src/toggle-group-control/toggle-group-control/component.tsx b/packages/components/src/toggle-group-control/toggle-group-control/component.tsx index 520b2c414d70b..8138b76505fe5 100644 --- a/packages/components/src/toggle-group-control/toggle-group-control/component.tsx +++ b/packages/components/src/toggle-group-control/toggle-group-control/component.tsx @@ -115,7 +115,12 @@ function UnconnectedToggleGroupControl( * * function Example() { * return ( - * + * * * * diff --git a/packages/components/src/tree-select/index.tsx b/packages/components/src/tree-select/index.tsx index 626fb0fda3a01..599dee4402ec7 100644 --- a/packages/components/src/tree-select/index.tsx +++ b/packages/components/src/tree-select/index.tsx @@ -37,7 +37,7 @@ function getSelectOptions( * * return ( * setPage( newPage ) } @@ -73,7 +73,6 @@ function getSelectOptions( * } * ``` */ - export function TreeSelect( props: TreeSelectProps ) { const { label, diff --git a/packages/compose/CHANGELOG.md b/packages/compose/CHANGELOG.md index b5dd1d8712215..6595c9ae33685 100644 --- a/packages/compose/CHANGELOG.md +++ b/packages/compose/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.5.0 (2024-08-07) + ## 7.4.0 (2024-07-24) ## 7.3.0 (2024-07-10) diff --git a/packages/compose/package.json b/packages/compose/package.json index bc295a921bea5..2a4dcb02803c5 100644 --- a/packages/compose/package.json +++ b/packages/compose/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/compose", - "version": "7.4.0", + "version": "7.5.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 aab5f1ea832f1..fa46608d63254 100644 --- a/packages/core-commands/CHANGELOG.md +++ b/packages/core-commands/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 1.5.0 (2024-08-07) + ## 1.4.0 (2024-07-24) ## 1.3.0 (2024-07-10) diff --git a/packages/core-commands/package.json b/packages/core-commands/package.json index bb9acc0513988..d29688cfbcedf 100644 --- a/packages/core-commands/package.json +++ b/packages/core-commands/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/core-commands", - "version": "1.4.0", + "version": "1.5.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 4712b66b8797b..e3477da97811f 100644 --- a/packages/core-data/CHANGELOG.md +++ b/packages/core-data/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 7.5.0 (2024-08-07) + ## 7.4.0 (2024-07-24) ## 7.3.0 (2024-07-10) diff --git a/packages/core-data/package.json b/packages/core-data/package.json index 3f4037f290a2c..d736b2b7b1b93 100644 --- a/packages/core-data/package.json +++ b/packages/core-data/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/core-data", - "version": "7.4.0", + "version": "7.5.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/CHANGELOG.md b/packages/create-block-interactive-template/CHANGELOG.md index 9f3b063c6fe9b..769999da2d4ec 100644 --- a/packages/create-block-interactive-template/CHANGELOG.md +++ b/packages/create-block-interactive-template/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 2.5.0 (2024-08-07) + ## 2.4.0 (2024-07-24) ## 2.3.0 (2024-07-10) diff --git a/packages/create-block-interactive-template/package.json b/packages/create-block-interactive-template/package.json index 6f679fd47d90e..751243b8b8021 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.4.0", + "version": "2.5.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 a1ee507eb8016..5c5856f174b0e 100644 --- a/packages/create-block-tutorial-template/CHANGELOG.md +++ b/packages/create-block-tutorial-template/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.5.0 (2024-08-07) + ## 4.4.0 (2024-07-24) ## 4.3.0 (2024-07-10) diff --git a/packages/create-block-tutorial-template/package.json b/packages/create-block-tutorial-template/package.json index 891fda996099e..2a344a094a4b4 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.4.0", + "version": "4.5.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 3d4cd14732192..024ef7abc8c69 100644 --- a/packages/create-block/CHANGELOG.md +++ b/packages/create-block/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.48.0 (2024-08-07) + ## 4.47.0 (2024-07-24) ## 4.46.0 (2024-07-10) diff --git a/packages/create-block/package.json b/packages/create-block/package.json index adaf06606d255..f0a91d54c1496 100644 --- a/packages/create-block/package.json +++ b/packages/create-block/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/create-block", - "version": "4.47.0", + "version": "4.48.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 42bc3b04f4c0e..1065adf40e15d 100644 --- a/packages/customize-widgets/CHANGELOG.md +++ b/packages/customize-widgets/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 5.5.0 (2024-08-07) + ## 5.4.0 (2024-07-24) ## 5.3.0 (2024-07-10) diff --git a/packages/customize-widgets/package.json b/packages/customize-widgets/package.json index ce53a53ea80de..f619837ae573e 100644 --- a/packages/customize-widgets/package.json +++ b/packages/customize-widgets/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/customize-widgets", - "version": "5.4.0", + "version": "5.5.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 e01b3f59bea50..f0d753d95360c 100644 --- a/packages/data-controls/CHANGELOG.md +++ b/packages/data-controls/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.5.0 (2024-08-07) + ## 4.4.0 (2024-07-24) ## 4.3.0 (2024-07-10) diff --git a/packages/data-controls/package.json b/packages/data-controls/package.json index d3c670e5f0690..40dfbdf307d2c 100644 --- a/packages/data-controls/package.json +++ b/packages/data-controls/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/data-controls", - "version": "4.4.0", + "version": "4.5.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 9789b91dfea0e..a4686283d050c 100644 --- a/packages/data/CHANGELOG.md +++ b/packages/data/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 10.5.0 (2024-08-07) + ## 10.4.0 (2024-07-24) ## 10.3.0 (2024-07-10) diff --git a/packages/data/package.json b/packages/data/package.json index a17b3cfd4f4b2..b987476d49bd9 100644 --- a/packages/data/package.json +++ b/packages/data/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/data", - "version": "10.4.0", + "version": "10.5.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 881d666aa0613..239a69651a1f2 100644 --- a/packages/dataviews/CHANGELOG.md +++ b/packages/dataviews/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## 4.1.0 (2024-08-07) + ## Internal - Upgraded `@ariakit/react` (v0.4.7) ([#64066](https://github.com/WordPress/gutenberg/pull/64066)). @@ -13,6 +15,11 @@ - `onSelectionChange` prop has been renamed to `onChangeSelection` and its argument has been updated to be a list of ids. - `setSelection` prop has been removed. Please use `onChangeSelection` instead. - `header` field property has been renamed to `label`. +- `DataForm`'s `visibleFields` prop has been renamed to `fields`. + +### New features + +- Support multiple layouts in `DataForm` component and introduce the `panel` layout. ## 3.0.0 (2024-07-10) diff --git a/packages/dataviews/package.json b/packages/dataviews/package.json index d95192957a1a4..c86a4feb9c066 100644 --- a/packages/dataviews/package.json +++ b/packages/dataviews/package.json @@ -1,6 +1,6 @@ { "name": "@wordpress/dataviews", - "version": "4.0.0", + "version": "4.1.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", @@ -38,6 +38,7 @@ "@wordpress/icons": "file:../icons", "@wordpress/primitives": "file:../primitives", "@wordpress/private-apis": "file:../private-apis", + "@wordpress/warning": "file:../warning", "clsx": "^2.1.1", "remove-accents": "^0.5.0" }, diff --git a/packages/dataviews/src/components/dataform/index.tsx b/packages/dataviews/src/components/dataform/index.tsx index 02953b2930bd1..58f0bf06afb41 100644 --- a/packages/dataviews/src/components/dataform/index.tsx +++ b/packages/dataviews/src/components/dataform/index.tsx @@ -1,55 +1,17 @@ -/** - * External dependencies - */ -import type { Dispatch, SetStateAction } from 'react'; - -/** - * WordPress dependencies - */ -import { __experimentalVStack as VStack } from '@wordpress/components'; -import { useMemo } from '@wordpress/element'; - /** * Internal dependencies */ -import { normalizeFields } from '../../normalize-fields'; -import type { Field, Form } from '../../types'; - -type DataFormProps< Item > = { - data: Item; - fields: Field< Item >[]; - form: Form; - onChange: Dispatch< SetStateAction< Item > >; -}; +import type { DataFormProps } from '../../types'; +import { getFormLayout } from '../../dataforms-layouts'; export default function DataForm< Item >( { - data, - fields, form, - onChange, + ...props }: DataFormProps< Item > ) { - const visibleFields = useMemo( - () => - normalizeFields( - fields.filter( - ( { id } ) => !! form.visibleFields?.includes( id ) - ) - ), - [ fields, form.visibleFields ] - ); + const layout = getFormLayout( form.type ?? 'regular' ); + if ( ! layout ) { + return null; + } - return ( - - { visibleFields.map( ( field ) => { - return ( - - ); - } ) } - - ); + return ; } diff --git a/packages/dataviews/src/components/dataform/stories/index.story.tsx b/packages/dataviews/src/components/dataform/stories/index.story.tsx index 6acf0c65d9bd4..4863eb24b4ede 100644 --- a/packages/dataviews/src/components/dataform/stories/index.story.tsx +++ b/packages/dataviews/src/components/dataform/stories/index.story.tsx @@ -11,6 +11,14 @@ import DataForm from '../index'; const meta = { title: 'DataViews/DataForm', component: DataForm, + argTypes: { + type: { + control: { type: 'select' }, + description: + 'Chooses the layout of the form. "regular" is the default layout.', + options: [ 'regular', 'panel' ], + }, + }, }; export default meta; @@ -45,7 +53,7 @@ const fields = [ }, ]; -export const Default = () => { +export const Default = ( { type }: { type: 'panel' | 'regular' } ) => { const [ post, setPost ] = useState( { title: 'Hello, World!', order: 2, @@ -54,14 +62,17 @@ export const Default = () => { } ); const form = { - visibleFields: [ 'title', 'order', 'author', 'status' ], + fields: [ 'title', 'order', 'author', 'status' ], }; return ( ); diff --git a/packages/dataviews/src/components/dataviews-bulk-actions/index.tsx b/packages/dataviews/src/components/dataviews-bulk-actions/index.tsx index 2047307bd7e90..d671b8a8c62d9 100644 --- a/packages/dataviews/src/components/dataviews-bulk-actions/index.tsx +++ b/packages/dataviews/src/components/dataviews-bulk-actions/index.tsx @@ -89,6 +89,11 @@ function ActionWithModal< Item >( { const onCloseModal = useCallback( () => { setActionWithModal( undefined ); }, [ setActionWithModal ] ); + + if ( ! eligibleItems.length ) { + return null; + } + const label = typeof action.label === 'string' ? action.label diff --git a/packages/dataviews/src/components/dataviews-layout/index.tsx b/packages/dataviews/src/components/dataviews-layout/index.tsx index eac70763e143c..bae4071fe2f77 100644 --- a/packages/dataviews/src/components/dataviews-layout/index.tsx +++ b/packages/dataviews/src/components/dataviews-layout/index.tsx @@ -12,7 +12,7 @@ import { useContext } from '@wordpress/element'; * Internal dependencies */ import DataViewsContext from '../dataviews-context'; -import { VIEW_LAYOUTS } from '../../layouts'; +import { VIEW_LAYOUTS } from '../../dataviews-layouts'; import type { ViewBaseProps } from '../../types'; export default function DataViewsLayout() { diff --git a/packages/dataviews/src/components/dataviews-view-config/index.tsx b/packages/dataviews/src/components/dataviews-view-config/index.tsx index 9f0cb87fa01a2..28e151079008e 100644 --- a/packages/dataviews/src/components/dataviews-view-config/index.tsx +++ b/packages/dataviews/src/components/dataviews-view-config/index.tsx @@ -8,131 +8,92 @@ import type { ChangeEvent } from 'react'; */ import { Button, - privateApis as componentsPrivateApis, + Popover, + __experimentalToggleGroupControl as ToggleGroupControl, + __experimentalToggleGroupControlOption as ToggleGroupControlOption, + __experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon, + SelectControl, + __experimentalItemGroup as ItemGroup, + __experimentalItem as Item, + __experimentalGrid as Grid, + __experimentalVStack as VStack, __experimentalHStack as HStack, + __experimentalHeading as Heading, + __experimentalText as Text, + privateApis as componentsPrivateApis, } from '@wordpress/components'; import { __, _x } from '@wordpress/i18n'; -import { memo, useContext } from '@wordpress/element'; -import { cog } from '@wordpress/icons'; +import { memo, useContext, useState, useMemo } from '@wordpress/element'; +import { cog, seen, unseen } from '@wordpress/icons'; +import warning from '@wordpress/warning'; /** * Internal dependencies */ -import { unlock } from '../../lock-unlock'; -import { SORTING_DIRECTIONS, sortLabels } from '../../constants'; -import { VIEW_LAYOUTS, getMandatoryFields } from '../../layouts'; -import type { NormalizedField, View, SupportedLayouts } from '../../types'; +import { SORTING_DIRECTIONS, sortIcons, sortLabels } from '../../constants'; +import { VIEW_LAYOUTS, getMandatoryFields } from '../../dataviews-layouts'; +import type { SupportedLayouts } from '../../types'; import DataViewsContext from '../dataviews-context'; +import { unlock } from '../../lock-unlock'; const { DropdownMenuV2: DropdownMenu, - DropdownMenuGroupV2: DropdownMenuGroup, - DropdownMenuItemV2: DropdownMenuItem, DropdownMenuRadioItemV2: DropdownMenuRadioItem, - DropdownMenuCheckboxItemV2: DropdownMenuCheckboxItem, DropdownMenuItemLabelV2: DropdownMenuItemLabel, } = unlock( componentsPrivateApis ); interface ViewTypeMenuProps { - view: View; - onChangeView: ( view: View ) => void; - defaultLayouts?: SupportedLayouts; -} - -interface PageSizeMenuProps { - view: View; - onChangeView: ( view: View ) => void; -} - -interface FieldsVisibilityMenuProps< Item > { - view: View; - onChangeView: ( view: View ) => void; - fields: NormalizedField< Item >[]; -} - -interface SortMenuProps< Item > { - fields: NormalizedField< Item >[]; - view: View; - onChangeView: ( view: View ) => void; -} - -interface ViewActionsProps { defaultLayouts?: SupportedLayouts; } function ViewTypeMenu( { - view, - onChangeView, defaultLayouts = { list: {}, grid: {}, table: {} }, }: ViewTypeMenuProps ) { + const { view, onChangeView } = useContext( DataViewsContext ); const availableLayouts = Object.keys( defaultLayouts ); if ( availableLayouts.length <= 1 ) { return null; } - return availableLayouts.map( ( layout ) => { - const config = VIEW_LAYOUTS.find( ( v ) => v.type === layout ); - if ( ! config ) { - return null; - } - return ( - ) => { - switch ( e.target.value ) { - case 'list': - case 'grid': - case 'table': - return onChangeView( { - ...view, - type: e.target.value, - ...defaultLayouts[ e.target.value ], - } ); - } - throw new Error( 'Invalid dataview' ); - } } - > - { config.label } - - ); - } ); -} - -const PAGE_SIZE_VALUES = [ 10, 20, 50, 100 ]; -function PageSizeMenu( { view, onChangeView }: PageSizeMenuProps ) { + const activeView = VIEW_LAYOUTS.find( ( v ) => view.type === v.type ); return (

-