From d24e717a31c46ac6e7c5130953262ed7fed871ae Mon Sep 17 00:00:00 2001 From: Mario Santos Date: Tue, 16 May 2023 13:58:27 +0200 Subject: [PATCH 1/5] Remove unnecessary `async` in `effects` --- packages/block-library/src/navigation/interactivity.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/block-library/src/navigation/interactivity.js b/packages/block-library/src/navigation/interactivity.js index bf537ceb803a4d..1768f88bb7374c 100644 --- a/packages/block-library/src/navigation/interactivity.js +++ b/packages/block-library/src/navigation/interactivity.js @@ -21,7 +21,7 @@ store( { effects: { core: { navigation: { - initModal: async ( { context, ref } ) => { + initModal: ( { context, ref } ) => { if ( context.core.navigation.isMenuOpen ) { const focusableElements = ref.querySelectorAll( focusableSelectors ); @@ -32,7 +32,7 @@ store( { focusableElements[ focusableElements.length - 1 ]; } }, - focusFirstElement: async ( { context, ref } ) => { + focusFirstElement: ( { context, ref } ) => { if ( context.core.navigation.isMenuOpen ) { ref.querySelector( '.wp-block-navigation-item > *:first-child' From e47f3cbf46c9691509ea4c0b66b66373b6da5352 Mon Sep 17 00:00:00 2001 From: Mario Santos Date: Tue, 16 May 2023 14:01:23 +0200 Subject: [PATCH 2/5] Fix page list block and multiple submenus --- .../navigation-block-interactivity.php | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/lib/experimental/interactivity-api/navigation-block-interactivity.php b/lib/experimental/interactivity-api/navigation-block-interactivity.php index 21e1e0381b70ed..76531cc517fba3 100644 --- a/lib/experimental/interactivity-api/navigation-block-interactivity.php +++ b/lib/experimental/interactivity-api/navigation-block-interactivity.php @@ -25,7 +25,7 @@ * data-wp-class.is-menu-open="context.core.navigation.isMenuOpen" * data-wp-bind.aria-hidden="!context.core.navigation.isMenuOpen" * data-wp-effect="effects.core.navigation.initModal" - * data-wp-on.keydow="actions.core.navigation.handleMenuKeydown" + * data-wp-on.keydown="actions.core.navigation.handleMenuKeydown" * data-wp-on.focusout="actions.core.navigation.handleMenuFocusout" * tabindex="-1" * > @@ -74,21 +74,6 @@ function gutenberg_block_core_navigation_add_directives_to_markup( $block_conten // If the open modal button not found, we handle submenus immediately. $w = new WP_HTML_Tag_Processor( $w->get_updated_html() ); - // Add directives to the menu container. - if ( $w->next_tag( - array( - 'tag_name' => 'UL', - 'class_name' => 'wp-block-navigation__container', - ) - ) ) { - $w->set_attribute( 'data-wp-class.is-menu-open', 'context.core.navigation.isMenuOpen' ); - $w->set_attribute( 'data-wp-bind.aria-hidden', '!context.core.navigation.isMenuOpen' ); - $w->set_attribute( 'data-wp-effect', 'effects.core.navigation.initModal' ); - $w->set_attribute( 'data-wp-on.keydown', 'actions.core.navigation.handleMenuKeydown' ); - $w->set_attribute( 'data-wp-on.focusout', 'actions.core.navigation.handleMenuFocusout' ); - $w->set_attribute( 'tabindex', '-1' ); - }; - gutenberg_block_core_navigation_add_directives_to_submenu( $w ); return $w->get_updated_html(); From 519470cba965b500a7c1923a7c72148f696bcc9a Mon Sep 17 00:00:00 2001 From: Mario Santos Date: Tue, 16 May 2023 14:45:49 +0200 Subject: [PATCH 3/5] Use `requestUtils.createPage` in Page list tests --- test/e2e/specs/editor/blocks/navigation.spec.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/test/e2e/specs/editor/blocks/navigation.spec.js b/test/e2e/specs/editor/blocks/navigation.spec.js index dc303141957310..1cb562eb646a16 100644 --- a/test/e2e/specs/editor/blocks/navigation.spec.js +++ b/test/e2e/specs/editor/blocks/navigation.spec.js @@ -1208,11 +1208,10 @@ test.describe( 'Navigation block - Frontend interactivity', () => { test.describe( 'Page list block', () => { test.beforeEach( async ( { admin, editor, page, requestUtils } ) => { // Create parent page. - await admin.createNewPost( { - postType: 'page', + await requestUtils.createPage( { title: 'Parent Page', + status: 'publish', } ); - await editor.publishPost(); // Create subpage. await admin.createNewPost( { From 0ce72a818dc3252be365566e00c2b9f8c0556fb0 Mon Sep 17 00:00:00 2001 From: Mario Santos Date: Tue, 16 May 2023 16:14:55 +0200 Subject: [PATCH 4/5] Rename effect to `initMenu` --- .../navigation-block-interactivity.php | 10 +++++----- packages/block-library/src/navigation/interactivity.js | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/experimental/interactivity-api/navigation-block-interactivity.php b/lib/experimental/interactivity-api/navigation-block-interactivity.php index 76531cc517fba3..36a4964ba8ee95 100644 --- a/lib/experimental/interactivity-api/navigation-block-interactivity.php +++ b/lib/experimental/interactivity-api/navigation-block-interactivity.php @@ -24,8 +24,8 @@ * data-wp-class.has-modal-open="context.core.navigation.isMenuOpen" * data-wp-class.is-menu-open="context.core.navigation.isMenuOpen" * data-wp-bind.aria-hidden="!context.core.navigation.isMenuOpen" - * data-wp-effect="effects.core.navigation.initModal" - * data-wp-on.keydown="actions.core.navigation.handleMenuKeydown" + * data-wp-effect="effects.core.navigation.initMenu" + * data-wp-on.keydow="actions.core.navigation.handleMenuKeydown" * data-wp-on.focusout="actions.core.navigation.handleMenuFocusout" * tabindex="-1" * > @@ -89,7 +89,7 @@ function gutenberg_block_core_navigation_add_directives_to_markup( $block_conten $w->set_attribute( 'data-wp-class.has-modal-open', 'context.core.navigation.isMenuOpen' ); $w->set_attribute( 'data-wp-class.is-menu-open', 'context.core.navigation.isMenuOpen' ); $w->set_attribute( 'data-wp-bind.aria-hidden', '!context.core.navigation.isMenuOpen' ); - $w->set_attribute( 'data-wp-effect', 'effects.core.navigation.initModal' ); + $w->set_attribute( 'data-wp-effect', 'effects.core.navigation.initMenu' ); $w->set_attribute( 'data-wp-on.keydown', 'actions.core.navigation.handleMenuKeydown' ); $w->set_attribute( 'data-wp-on.focusout', 'actions.core.navigation.handleMenuFocusout' ); $w->set_attribute( 'tabindex', '-1' ); @@ -153,7 +153,7 @@ function gutenberg_block_core_navigation_add_directives_to_markup( $block_conten * Title *
    @@ -195,7 +195,7 @@ function gutenberg_block_core_navigation_add_directives_to_submenu( $w ) { 'class_name' => 'wp-block-navigation__submenu-container', ) ) ) { - $w->set_attribute( 'data-wp-effect', 'effects.core.navigation.initModal' ); + $w->set_attribute( 'data-wp-effect', 'effects.core.navigation.initMenu' ); $w->set_attribute( 'data-wp-on.focusout', 'actions.core.navigation.handleMenuFocusout' ); $w->set_attribute( 'data-wp-on.keydown', 'actions.core.navigation.handleMenuKeydown' ); }; diff --git a/packages/block-library/src/navigation/interactivity.js b/packages/block-library/src/navigation/interactivity.js index 1768f88bb7374c..b147d651d032bf 100644 --- a/packages/block-library/src/navigation/interactivity.js +++ b/packages/block-library/src/navigation/interactivity.js @@ -21,7 +21,7 @@ store( { effects: { core: { navigation: { - initModal: ( { context, ref } ) => { + initMenu: ( { context, ref } ) => { if ( context.core.navigation.isMenuOpen ) { const focusableElements = ref.querySelectorAll( focusableSelectors ); From 34906720c9cea433cdff0e54c3f143ac1698962d Mon Sep 17 00:00:00 2001 From: Mario Santos Date: Tue, 16 May 2023 16:16:45 +0200 Subject: [PATCH 5/5] Fix typo --- .../interactivity-api/navigation-block-interactivity.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/experimental/interactivity-api/navigation-block-interactivity.php b/lib/experimental/interactivity-api/navigation-block-interactivity.php index 36a4964ba8ee95..fd024d0c923490 100644 --- a/lib/experimental/interactivity-api/navigation-block-interactivity.php +++ b/lib/experimental/interactivity-api/navigation-block-interactivity.php @@ -25,7 +25,7 @@ * data-wp-class.is-menu-open="context.core.navigation.isMenuOpen" * data-wp-bind.aria-hidden="!context.core.navigation.isMenuOpen" * data-wp-effect="effects.core.navigation.initMenu" - * data-wp-on.keydow="actions.core.navigation.handleMenuKeydown" + * data-wp-on.keydown="actions.core.navigation.handleMenuKeydown" * data-wp-on.focusout="actions.core.navigation.handleMenuFocusout" * tabindex="-1" * >