WordPress / gutenberg

The Block Editor project for WordPress and beyond. Plugin is available from the official repository.
https://wordpress.org/gutenberg/
Other
10.4k stars 4.16k forks source link

Tracking Issue: More core blocks and new `store()` API #53740

Closed luisherranz closed 10 months ago

luisherranz commented 1 year ago

In Expose the full Interactivity API in @wordpress/interactivity, we exposed a publicly testable version of the Interactivity API so people can start experimenting with it.

For the next iteration of the Interactivity API, we want to focus on four projects, including 3 core blocks (Comments Form, Query and Search blocks) and a major overhaul of the Store API. We'll update the list of tasks as we progress on the different projects.


Please subscribe to keep track of the progress.

luisherranz commented 1 year ago

I've opened PRs for the enhanced ux of the Query block and Comments block:

We'll work on them as we progress through these tasks.

luisherranz commented 1 year ago

I've opened a PR to add support for data-wp-key:

luisherranz commented 1 year ago

I've added "Merge new SSR context on client-side navigation" because we need it for the Query block. I'll start working on it:

luisherranz commented 1 year ago

I've opened a PR to address the previous task:

luisherranz commented 1 year ago

I had to add a small fix for the previous PR:

luisherranz commented 1 year ago

The enhanced pagination of the Query block is ready for review:

luisherranz commented 1 year ago

There are still a couple of details regarding the movement of the form when a reply link is clicked, but otherwise, the enhanced comment form submission is ready for review:

luisherranz commented 1 year ago

We added support for data-wp-slot and data-wp-fill in the https://github.com/WordPress/gutenberg/pull/53737 PR, but we'll move it to its own PR:

DAreRodz commented 1 year ago

The PR for the new router with region-based, client-side navigation is merged:

DAreRodz commented 1 year ago

I just recently merged these PRs:

Just so you know, I left the JSDocs and documentation of the region-based router and the Slot and Fill directives for subsequent PRs. I'll add the task to the opening post.

DAreRodz commented 1 year ago

The enhanced pagination for the Query Block has been merged. 🚀

Poliuk commented 1 year ago

I've opened a couple of requests for the Query Loop that need to be included in the original Tracking Issue (I don't have the permissions):

DAreRodz commented 1 year ago

As mentioned in https://github.com/WordPress/gutenberg/pull/53737#issuecomment-1706624654, we have paused the development of the Comments Form submission with client-side navigation until we develop a robust system to handle new styles, scripts, and other assets.

luisherranz commented 1 year ago

I've opened a discussion to talk about a mechanism to detect blocks that are compatible with the Interactivity API so we can improve the reliability of the enhanced pagination of the Query block:

DAreRodz commented 1 year ago

I just opened a PR for moving the "Enhanced pagination" toggle and updating its help message.

DAreRodz commented 1 year ago

This PR makes navigate() calls to be canceled when another starts. Ready for review.

luisherranz commented 1 year ago

David opened the PR to add a timeout to the client navigation:

luisherranz commented 1 year ago

A small update:

Last week, we focused on preparing a private version of the Interactivity API for the WP 6.4 release, which needs to ship Core blocks already using it. This version will remain private and subject to change, as explained in this tracking issue:

Even though there was a bit of overlap with this tracking issue, we opened a new one because there are some tasks unrelated to the Interactivity API itself, but once those are finished, we'll get back to this one to continue our work.

luisherranz commented 1 year ago

Now that WP 6.4 Beta 1 is out, we've closed the WP 6.4 Tracking Issue and we got back to this one.

In particular, we've begun developing the new store() API, but our plan is first to test it in Woo to ensure that we don't find any significant issues there. If all goes well, we'll do the same in Gutenberg to see if there are any issues here. We'll use this Tracking Issue again once we move the development back to Gutenberg.

In the meantime, if you want to follow closely this development, please follow:

luisherranz commented 11 months ago

We've completed all the tasks of the migration to the new store() API successfully in Woo.

I've updated the description to include the next steps:

luisherranz commented 11 months ago

I've opened a couple of PRs to fix problems with wp_unique_id and the enhanced pagination:

I've also added two more additional tasks to the list:

DAreRodz commented 11 months ago

I created a PR for testing the new store() API.

The runtime currently works fine, although we have probably broken the PHP part. I'll take a look later. 🙂

DAreRodz commented 11 months ago

I created a PR for disallowing core blocks that can render third-party blocks and be edited outside of the Query Loop context, e.g., Content, Template Part and Patterns.

luisherranz commented 11 months ago

@c4rl0sbr4v0 made this PR:

cbravobernal commented 11 months ago

PR with a fix for the position of some accesibility markup in the enhanced Query Loop has been merged:

luisherranz commented 10 months ago

Most of the progress in the last weeks has been done in the migration to the new store() API PR:

That PR contains both the new runtime and the migration of the Core blocks because everything needs to be merged at the same time.

It's already almost finished, awaiting final details and reviews.

DAreRodz commented 10 months ago

The PR for migrating to the new store() API is complete. I've also marked all related tasks as done and added new ones for the remaining work.

DAreRodz commented 10 months ago

The create-block-interactive-template package was migrated to the new store() API here:

luisherranz commented 10 months ago

Now that the new store() API has been merged, let's see what we need to do before the 17.2 release next Wednesday:

Does anything else need to be completed before the release?

DAreRodz commented 10 months ago

Does anything else need to be completed before the release?

@luisherranz, maybe we should add and update JSDocs & TSDocs? 🤔

luisherranz commented 10 months ago

Perfect, yes.

DAreRodz commented 10 months ago

I've recently created a PR to update TSDocs/JSDocs for the new store() API. Ready for review.

In addition, last week, I opened a PR draft with the ongoing work to implement wp_initial_state.

luisherranz commented 10 months ago

I've started the PR with the updated docs:

luisherranz commented 10 months ago

Now that the new store() API has been merged, let's close this Tracking Issue as completed and start a new one to track the work to prepare the public 1.0 version.

luisherranz commented 9 months ago

I've published the migration guide for the new store() API: