From afdda86d025ab842edc87969817a6520b650f206 Mon Sep 17 00:00:00 2001 From: George Mamadashvili Date: Wed, 19 Mar 2025 17:02:01 +0400 Subject: [PATCH] Navigation Link: Optimize 'getBlockParentsByBlockName' selector call --- packages/block-library/src/navigation-link/edit.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/block-library/src/navigation-link/edit.js b/packages/block-library/src/navigation-link/edit.js index 35357e0c8a9bba..d4e8545070296b 100644 --- a/packages/block-library/src/navigation-link/edit.js +++ b/packages/block-library/src/navigation-link/edit.js @@ -44,6 +44,10 @@ import { updateAttributes } from './update-attributes'; import { getColors } from '../navigation/edit/utils'; const DEFAULT_BLOCK = { name: 'core/navigation-link' }; +const NESTING_BLOCK_NAMES = [ + 'core/navigation-link', + 'core/navigation-submenu', +]; /** * A React hook to determine if it's dragging within the target element. @@ -336,10 +340,8 @@ export default function NavigationLinkEdit( { return { isAtMaxNesting: - getBlockParentsByBlockName( clientId, [ - 'core/navigation-link', - 'core/navigation-submenu', - ] ).length >= maxNestingLevel, + getBlockParentsByBlockName( clientId, NESTING_BLOCK_NAMES ) + .length >= maxNestingLevel, isTopLevelLink: getBlockName( getBlockRootClientId( clientId ) ) === 'core/navigation',