@wordpress/block-library 9.30.1-next.836ecdcae.0 → 9.30.1-next.a730c9c8c.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/button/edit.js +6 -1
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/buttons/index.js +2 -1
- package/build/buttons/index.js.map +1 -1
- package/build/categories/edit.js +3 -1
- package/build/categories/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -1
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +5 -8
- package/build/image/image.js.map +1 -1
- package/build/image/save.js +6 -2
- package/build/image/save.js.map +1 -1
- package/build/index.js +4 -0
- package/build/index.js.map +1 -1
- package/build/navigation/edit/index.js +0 -1
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation-link/block-inserter.js +69 -0
- package/build/navigation-link/block-inserter.js.map +1 -0
- package/build/navigation-link/dialog-wrapper.js +80 -0
- package/build/navigation-link/dialog-wrapper.js.map +1 -0
- package/build/navigation-link/link-ui.js +34 -82
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-link/page-creator.js +12 -18
- package/build/navigation-link/page-creator.js.map +1 -1
- package/build/post-date/edit.js +2 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +7 -2
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-title/edit.js +8 -2
- package/build/post-title/edit.js.map +1 -1
- package/build/query/edit/pattern-selection.js +9 -1
- package/build/query/edit/pattern-selection.js.map +1 -1
- package/build/query/index.js +2 -1
- package/build/query/index.js.map +1 -1
- package/build/rss/edit.js +6 -1
- package/build/rss/edit.js.map +1 -1
- package/build/site-tagline/index.js +1 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/social-link/edit.js +6 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/index.js +2 -1
- package/build/social-links/index.js.map +1 -1
- package/build/spacer/edit.js +2 -1
- package/build/spacer/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +33 -9
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/index.js +4 -0
- package/build/table-of-contents/index.js.map +1 -1
- package/build/table-of-contents/list.js +6 -3
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/save.js +6 -3
- package/build/table-of-contents/save.js.map +1 -1
- package/build/term-template/edit.js +318 -0
- package/build/term-template/edit.js.map +1 -0
- package/build/term-template/index.js +109 -0
- package/build/term-template/index.js.map +1 -0
- package/build/term-template/save.js +16 -0
- package/build/term-template/save.js.map +1 -0
- package/build/term-template/variations.js +83 -0
- package/build/term-template/variations.js.map +1 -0
- package/build/terms-query/edit.js +20 -0
- package/build/terms-query/edit.js.map +1 -0
- package/build/terms-query/index.js +83 -0
- package/build/terms-query/index.js.map +1 -0
- package/build/terms-query/inspector-controls.js +231 -0
- package/build/terms-query/inspector-controls.js.map +1 -0
- package/build/terms-query/save.js +24 -0
- package/build/terms-query/save.js.map +1 -0
- package/build/terms-query/terms-query-content.js +71 -0
- package/build/terms-query/terms-query-content.js.map +1 -0
- package/build/utils/hooks.js +3 -0
- package/build/utils/hooks.js.map +1 -1
- package/build-module/button/edit.js +7 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js +1 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/buttons/index.js +2 -1
- package/build-module/buttons/index.js.map +1 -1
- package/build-module/categories/edit.js +3 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/image/edit.native.js +1 -1
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +5 -8
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/save.js +6 -2
- package/build-module/image/save.js.map +1 -1
- package/build-module/index.js +4 -0
- package/build-module/index.js.map +1 -1
- package/build-module/navigation/edit/index.js +0 -1
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation-link/block-inserter.js +61 -0
- package/build-module/navigation-link/block-inserter.js.map +1 -0
- package/build-module/navigation-link/dialog-wrapper.js +75 -0
- package/build-module/navigation-link/dialog-wrapper.js.map +1 -0
- package/build-module/navigation-link/link-ui.js +37 -85
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-link/page-creator.js +12 -19
- package/build-module/navigation-link/page-creator.js.map +1 -1
- package/build-module/post-date/edit.js +3 -2
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +9 -4
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-title/edit.js +9 -3
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/query/edit/pattern-selection.js +9 -1
- package/build-module/query/edit/pattern-selection.js.map +1 -1
- package/build-module/query/index.js +2 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/rss/edit.js +8 -3
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +1 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/social-link/edit.js +8 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/index.js +2 -1
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/spacer/edit.js +3 -2
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +35 -11
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/index.js +4 -0
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/table-of-contents/list.js +6 -3
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/save.js +6 -3
- package/build-module/table-of-contents/save.js.map +1 -1
- package/build-module/term-template/edit.js +310 -0
- package/build-module/term-template/edit.js.map +1 -0
- package/build-module/term-template/index.js +102 -0
- package/build-module/term-template/index.js.map +1 -0
- package/build-module/term-template/save.js +9 -0
- package/build-module/term-template/save.js.map +1 -0
- package/build-module/term-template/variations.js +76 -0
- package/build-module/term-template/variations.js.map +1 -0
- package/build-module/terms-query/edit.js +12 -0
- package/build-module/terms-query/edit.js.map +1 -0
- package/build-module/terms-query/index.js +76 -0
- package/build-module/terms-query/index.js.map +1 -0
- package/build-module/terms-query/inspector-controls.js +224 -0
- package/build-module/terms-query/inspector-controls.js.map +1 -0
- package/build-module/terms-query/save.js +17 -0
- package/build-module/terms-query/save.js.map +1 -0
- package/build-module/terms-query/terms-query-content.js +63 -0
- package/build-module/terms-query/terms-query-content.js.map +1 -0
- package/build-module/utils/hooks.js +3 -0
- package/build-module/utils/hooks.js.map +1 -1
- package/build-style/editor-rtl.css +24 -0
- package/build-style/editor.css +24 -0
- package/build-style/style-rtl.css +16 -0
- package/build-style/style.css +16 -0
- package/build-style/term-template/editor-rtl.css +160 -0
- package/build-style/term-template/editor.css +160 -0
- package/build-style/term-template/style-rtl.css +146 -0
- package/build-style/term-template/style.css +146 -0
- package/build-style/terms-query/style-rtl.css +140 -0
- package/build-style/terms-query/style.css +140 -0
- package/build-types/table-of-contents/list.d.ts +2 -1
- package/build-types/table-of-contents/list.d.ts.map +1 -1
- package/package.json +35 -35
- package/src/button/edit.js +12 -1
- package/src/button/edit.native.js +1 -1
- package/src/buttons/block.json +2 -1
- package/src/categories/edit.js +2 -1
- package/src/editor.scss +1 -0
- package/src/image/edit.native.js +1 -1
- package/src/image/image.js +5 -8
- package/src/image/save.js +7 -1
- package/src/index.js +4 -0
- package/src/navigation/edit/index.js +0 -1
- package/src/navigation-link/block-inserter.js +65 -0
- package/src/navigation-link/dialog-wrapper.js +74 -0
- package/src/navigation-link/link-ui.js +32 -95
- package/src/navigation-link/page-creator.js +13 -20
- package/src/post-date/edit.js +64 -53
- package/src/post-date/index.php +5 -13
- package/src/post-featured-image/edit.js +19 -3
- package/src/post-title/edit.js +14 -2
- package/src/query/block.json +2 -1
- package/src/query/edit/pattern-selection.js +10 -1
- package/src/rss/edit.js +13 -2
- package/src/site-tagline/block.json +1 -0
- package/src/social-link/edit.js +13 -2
- package/src/social-links/block.json +2 -1
- package/src/spacer/edit.js +5 -1
- package/src/style.scss +2 -0
- package/src/table-of-contents/block.json +4 -0
- package/src/table-of-contents/edit.js +58 -21
- package/src/table-of-contents/list.tsx +7 -2
- package/src/table-of-contents/save.js +7 -3
- package/src/term-template/block.json +73 -0
- package/src/term-template/edit.js +391 -0
- package/src/term-template/editor.scss +26 -0
- package/src/term-template/index.js +26 -0
- package/src/term-template/index.php +224 -0
- package/src/term-template/save.js +8 -0
- package/src/term-template/style.scss +12 -0
- package/src/term-template/variations.js +87 -0
- package/src/terms-query/block.json +49 -0
- package/src/terms-query/edit.js +10 -0
- package/src/terms-query/index.js +24 -0
- package/src/terms-query/index.php +44 -0
- package/src/terms-query/inspector-controls.js +239 -0
- package/src/terms-query/save.js +10 -0
- package/src/terms-query/style.scss +6 -0
- package/src/terms-query/terms-query-content.js +74 -0
- package/src/utils/hooks.js +4 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","useCallback","useState","useEffect","useRef","Platform","InspectorControls","useBlockProps","RecursionProvider","useHasRecursion","store","blockEditorStore","withColors","ContrastChecker","getColorClassName","Warning","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","useBlockEditingMode","BlockControls","EntityProvider","coreStore","useDispatch","useSelect","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalVStack","VStack","ToggleControl","Button","Spinner","Notice","ToolbarButton","ToolbarGroup","__","speak","close","Icon","page","createBlock","useInstanceId","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","OverlayMenuPreview","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","useInnerBlocks","detectColors","ManageMenusButton","MenuInspectorControls","DeletedNavigationWarning","AccessibleDescription","AccessibleMenuDescription","unlock","useToolsPanelDropdownMenuProps","DEFAULT_BLOCK","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","NavigationAddPageButton","clientId","insertBlock","getBlockCount","onAddPage","blockCount","newBlock","name","kind","attributes","type","children","icon","title","onClick","ColorTools","textColor","setTextColor","backgroundColor","setBackgroundColor","overlayTextColor","setOverlayTextColor","overlayBackgroundColor","setOverlayBackgroundColor","navRef","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","enableContrastChecking","OS","current","subMenuElement","querySelector","color","colorGradientSettings","hasColorsOrGradients","__experimentalIsRenderedInSidebar","settings","colorValue","label","onColorChange","resetAllFilter","clearable","enableAlpha","panelId","gradients","disableCustomGradients","Navigation","setAttributes","isSelected","className","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","ref","setRef","postId","recursionId","hasAlreadyRendered","blockEditingMode","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","hasResolvedCanUserCreateNavigationMenus","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","navigationFallbackId","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","class","slug","onSelectClassicMenu","classicMenu","id","onSelectNavigationMenu","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","dropdownMenuProps","stylingInspectorControls","resetAll","__next40pxDefaultSize","spacing","gridColumn","hidden","hasValue","onDeselect","isShownByDefault","__nextHasNoMarginBottom","help","onChange","isBlock","checked","isDisabled","disabled","spokenMessage","isDismissible","group","accessibleDescriptionId","isHiddenByDefault","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","blocks","hasSelection","PlaceholderComponent","onCreateEmpty","uniqueId","onDelete","hasCustomPlaceholder"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalVStack as VStack,\n\tToggleControl,\n\tButton,\n\tSpinner,\n\tNotice,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon, page } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\nimport { useToolsPanelDropdownMenuProps } from '../../utils/hooks';\nimport { DEFAULT_BLOCK } from '../constants';\n\n/**\n * Component that renders the Add page button for the Navigation block.\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId Block client ID.\n * @return {JSX.Element|null} The Add page button component or null if not applicable.\n */\nfunction NavigationAddPageButton( { clientId } ) {\n\tconst { insertBlock } = useDispatch( blockEditorStore );\n\tconst { getBlockCount } = useSelect( blockEditorStore );\n\n\tconst onAddPage = useCallback( () => {\n\t\t// Get the current number of blocks to insert at the end\n\t\tconst blockCount = getBlockCount( clientId );\n\n\t\t// Create a new navigation link block (default block)\n\t\tconst newBlock = createBlock( DEFAULT_BLOCK.name, {\n\t\t\tkind: DEFAULT_BLOCK.attributes.kind,\n\t\t\ttype: DEFAULT_BLOCK.attributes.type,\n\t\t} );\n\n\t\t// Insert the block at the end of the navigation\n\t\tinsertBlock( newBlock, blockCount, clientId );\n\t}, [ clientId, insertBlock, getBlockCount ] );\n\n\treturn (\n\t\t<BlockControls>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tname=\"add-page\"\n\t\t\t\t\ticon={ page }\n\t\t\t\t\ttitle={ __( 'Add page' ) }\n\t\t\t\t\tonClick={ onAddPage }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add page' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n}\n\nfunction ColorTools( {\n\ttextColor,\n\tsetTextColor,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\tclientId,\n\tnavRef,\n} ) {\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t}, [\n\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t\tnavRef,\n\t] );\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tif ( ! colorGradientSettings.hasColorsOrGradients ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\tsettings={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\tresetAllFilter: () => setOverlayBackgroundColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tpanelId={ clientId }\n\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\tgradients={ [] }\n\t\t\t\tdisableCustomGradients\n\t\t\t/>\n\t\t\t{ enableContrastChecking && (\n\t\t\t\t<>\n\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\tbackgroundColor={ detectedOverlayBackgroundColor }\n\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = async () => {\n\t\tawait createNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\tisResolvingCanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableHasActiveBlockOverlayActive(\n\t\t\t\tclientId\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: clsx(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\n\t\t),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\treturn convertClassicMenu( classicMenu.id, classicMenu.name, 'draft' );\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t\tcreateNavigationMenuPost?.id,\n\t\thandleUpdateMenu,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenus &&\n\t\t\t\t! canUserCreateNavigationMenus\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenus || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = clsx(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Display' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\topenSubmenusOnClick: false,\n\t\t\t\t\t\t\t\toverlayMenu: 'mobile',\n\t\t\t\t\t\t\t\thasIcon: true,\n\t\t\t\t\t\t\t\ticon: 'handle',\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<VStack\n\t\t\t\t\t\t\t\t\t\tid={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\tgridColumn: 'span 2',\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => overlayMenu !== 'mobile' }\n\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: 'mobile' } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\t\taria-label={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3 className=\"wp-block-navigation__submenu-header\">\n\t\t\t\t\t\t\t\t\t{ __( 'Submenus' ) }\n\t\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: false,\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => ! showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisDisabled={\n\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation__submenu-accessibility-notice\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t{ /*\n\t\t\t\t * Avoid useMultipleOriginColorsAndGradients and detectColors\n\t\t\t\t * on block mount. InspectorControls only mounts this component\n\t\t\t\t * when the block is selected.\n\t\t\t\t * */ }\n\t\t\t\t<ColorTools\n\t\t\t\t\ttextColor={ textColor }\n\t\t\t\t\tsetTextColor={ setTextColor }\n\t\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\t\tsetBackgroundColor={ setBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\tsetOverlayTextColor={ setOverlayTextColor }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\tsetOverlayBackgroundColor={ setOverlayBackgroundColor }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tnavRef={ navRef }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\tconst isHiddenByDefault = 'always' === overlayMenu;\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ isHiddenByDefault }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenus={\n\t\t\t\t\t\tcanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenus={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'contentOnly' && isEntityAvailable && (\n\t\t\t\t\t<NavigationAddPageButton clientId={ clientId } />\n\t\t\t\t) }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation Menu successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t! isPlaceholder && ! isLoading\n\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isLoading && ! isHiddenByDefault && (\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ( ! isLoading || isHiddenByDefault ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\t\tisHiddenByDefault={ isHiddenByDefault }\n\t\t\t\t\t\t\t\toverlayBackgroundColor={\n\t\t\t\t\t\t\t\t\toverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</TagName>\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","useCallback","useState","useEffect","useRef","Platform","InspectorControls","useBlockProps","RecursionProvider","useHasRecursion","store","blockEditorStore","withColors","ContrastChecker","getColorClassName","Warning","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","useBlockEditingMode","BlockControls","EntityProvider","coreStore","useDispatch","useSelect","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalVStack","VStack","ToggleControl","Button","Spinner","Notice","ToolbarButton","ToolbarGroup","__","speak","close","Icon","page","createBlock","useInstanceId","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","OverlayMenuPreview","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","useInnerBlocks","detectColors","ManageMenusButton","MenuInspectorControls","DeletedNavigationWarning","AccessibleDescription","AccessibleMenuDescription","unlock","useToolsPanelDropdownMenuProps","DEFAULT_BLOCK","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","NavigationAddPageButton","clientId","insertBlock","getBlockCount","onAddPage","blockCount","newBlock","name","kind","attributes","type","children","icon","onClick","ColorTools","textColor","setTextColor","backgroundColor","setBackgroundColor","overlayTextColor","setOverlayTextColor","overlayBackgroundColor","setOverlayBackgroundColor","navRef","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","enableContrastChecking","OS","current","subMenuElement","querySelector","color","colorGradientSettings","hasColorsOrGradients","__experimentalIsRenderedInSidebar","settings","colorValue","label","onColorChange","resetAllFilter","clearable","enableAlpha","panelId","gradients","disableCustomGradients","Navigation","setAttributes","isSelected","className","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","ref","setRef","postId","recursionId","hasAlreadyRendered","blockEditingMode","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","hasResolvedCanUserCreateNavigationMenus","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","navigationFallbackId","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","class","slug","onSelectClassicMenu","classicMenu","id","onSelectNavigationMenu","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","dropdownMenuProps","stylingInspectorControls","resetAll","__next40pxDefaultSize","spacing","gridColumn","hidden","hasValue","onDeselect","isShownByDefault","__nextHasNoMarginBottom","help","onChange","isBlock","checked","isDisabled","disabled","spokenMessage","isDismissible","group","accessibleDescriptionId","isHiddenByDefault","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","blocks","hasSelection","PlaceholderComponent","onCreateEmpty","uniqueId","onDelete","hasCustomPlaceholder"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalVStack as VStack,\n\tToggleControl,\n\tButton,\n\tSpinner,\n\tNotice,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon, page } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\nimport { useToolsPanelDropdownMenuProps } from '../../utils/hooks';\nimport { DEFAULT_BLOCK } from '../constants';\n\n/**\n * Component that renders the Add page button for the Navigation block.\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId Block client ID.\n * @return {JSX.Element|null} The Add page button component or null if not applicable.\n */\nfunction NavigationAddPageButton( { clientId } ) {\n\tconst { insertBlock } = useDispatch( blockEditorStore );\n\tconst { getBlockCount } = useSelect( blockEditorStore );\n\n\tconst onAddPage = useCallback( () => {\n\t\t// Get the current number of blocks to insert at the end\n\t\tconst blockCount = getBlockCount( clientId );\n\n\t\t// Create a new navigation link block (default block)\n\t\tconst newBlock = createBlock( DEFAULT_BLOCK.name, {\n\t\t\tkind: DEFAULT_BLOCK.attributes.kind,\n\t\t\ttype: DEFAULT_BLOCK.attributes.type,\n\t\t} );\n\n\t\t// Insert the block at the end of the navigation\n\t\tinsertBlock( newBlock, blockCount, clientId );\n\t}, [ clientId, insertBlock, getBlockCount ] );\n\n\treturn (\n\t\t<BlockControls>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tname=\"add-page\"\n\t\t\t\t\ticon={ page }\n\t\t\t\t\tonClick={ onAddPage }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add page' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n}\n\nfunction ColorTools( {\n\ttextColor,\n\tsetTextColor,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\tclientId,\n\tnavRef,\n} ) {\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t}, [\n\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t\tnavRef,\n\t] );\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tif ( ! colorGradientSettings.hasColorsOrGradients ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\tsettings={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\tresetAllFilter: () => setOverlayBackgroundColor(),\n\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\tenableAlpha: true,\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tpanelId={ clientId }\n\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\tgradients={ [] }\n\t\t\t\tdisableCustomGradients\n\t\t\t/>\n\t\t\t{ enableContrastChecking && (\n\t\t\t\t<>\n\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\tbackgroundColor={ detectedOverlayBackgroundColor }\n\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = async () => {\n\t\tawait createNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\tisResolvingCanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableHasActiveBlockOverlayActive(\n\t\t\t\tclientId\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: clsx(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\n\t\t),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\treturn convertClassicMenu( classicMenu.id, classicMenu.name, 'draft' );\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t\tcreateNavigationMenuPost?.id,\n\t\thandleUpdateMenu,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenus &&\n\t\t\t\t! canUserCreateNavigationMenus\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenus || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = clsx(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Display' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\topenSubmenusOnClick: false,\n\t\t\t\t\t\t\t\toverlayMenu: 'mobile',\n\t\t\t\t\t\t\t\thasIcon: true,\n\t\t\t\t\t\t\t\ticon: 'handle',\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<VStack\n\t\t\t\t\t\t\t\t\t\tid={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\tgridColumn: 'span 2',\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => overlayMenu !== 'mobile' }\n\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: 'mobile' } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\t\taria-label={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3 className=\"wp-block-navigation__submenu-header\">\n\t\t\t\t\t\t\t\t\t{ __( 'Submenus' ) }\n\t\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: false,\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => ! showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisDisabled={\n\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation__submenu-accessibility-notice\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t{ /*\n\t\t\t\t * Avoid useMultipleOriginColorsAndGradients and detectColors\n\t\t\t\t * on block mount. InspectorControls only mounts this component\n\t\t\t\t * when the block is selected.\n\t\t\t\t * */ }\n\t\t\t\t<ColorTools\n\t\t\t\t\ttextColor={ textColor }\n\t\t\t\t\tsetTextColor={ setTextColor }\n\t\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\t\tsetBackgroundColor={ setBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\tsetOverlayTextColor={ setOverlayTextColor }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\tsetOverlayBackgroundColor={ setOverlayBackgroundColor }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tnavRef={ navRef }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\tconst isHiddenByDefault = 'always' === overlayMenu;\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ isHiddenByDefault }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenus={\n\t\t\t\t\t\tcanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenus={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'contentOnly' && isEntityAvailable && (\n\t\t\t\t\t<NavigationAddPageButton clientId={ clientId } />\n\t\t\t\t) }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation Menu successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t! isPlaceholder && ! isLoading\n\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isLoading && ! isHiddenByDefault && (\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ( ! isLoading || isHiddenByDefault ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\t\tisHiddenByDefault={ isHiddenByDefault }\n\t\t\t\t\t\t\t\toverlayBackgroundColor={\n\t\t\t\t\t\t\t\t\toverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</TagName>\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as blockEditorStore, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Internal dependencies
|
|
10
|
+
*/
|
|
11
|
+
import DialogWrapper from './dialog-wrapper';
|
|
12
|
+
import { unlock } from '../lock-unlock';
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
const {
|
|
15
|
+
PrivateQuickInserter: QuickInserter
|
|
16
|
+
} = unlock(blockEditorPrivateApis);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Component for inserting blocks within the Navigation Link UI.
|
|
20
|
+
*
|
|
21
|
+
* @param {Object} props Component props.
|
|
22
|
+
* @param {string} props.clientId Client ID of the navigation link block.
|
|
23
|
+
* @param {Function} props.onBack Callback when user wants to go back.
|
|
24
|
+
* @param {Function} props.onBlockInsert Callback when a block is inserted.
|
|
25
|
+
*/
|
|
26
|
+
function LinkUIBlockInserter({
|
|
27
|
+
clientId,
|
|
28
|
+
onBack,
|
|
29
|
+
onBlockInsert
|
|
30
|
+
}) {
|
|
31
|
+
const {
|
|
32
|
+
rootBlockClientId
|
|
33
|
+
} = useSelect(select => {
|
|
34
|
+
const {
|
|
35
|
+
getBlockRootClientId
|
|
36
|
+
} = select(blockEditorStore);
|
|
37
|
+
return {
|
|
38
|
+
rootBlockClientId: getBlockRootClientId(clientId)
|
|
39
|
+
};
|
|
40
|
+
}, [clientId]);
|
|
41
|
+
if (!clientId) {
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
return /*#__PURE__*/_jsx(DialogWrapper, {
|
|
45
|
+
className: "link-ui-block-inserter",
|
|
46
|
+
title: __('Add block'),
|
|
47
|
+
description: __('Choose a block to add to your Navigation.'),
|
|
48
|
+
onBack: onBack,
|
|
49
|
+
children: /*#__PURE__*/_jsx(QuickInserter, {
|
|
50
|
+
rootClientId: rootBlockClientId,
|
|
51
|
+
clientId: clientId,
|
|
52
|
+
isAppender: false,
|
|
53
|
+
prioritizePatterns: false,
|
|
54
|
+
selectBlockOnInsert: !onBlockInsert,
|
|
55
|
+
onSelect: onBlockInsert ? onBlockInsert : undefined,
|
|
56
|
+
hasSearch: false
|
|
57
|
+
})
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
export default LinkUIBlockInserter;
|
|
61
|
+
//# sourceMappingURL=block-inserter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__","useSelect","store","blockEditorStore","privateApis","blockEditorPrivateApis","DialogWrapper","unlock","jsx","_jsx","PrivateQuickInserter","QuickInserter","LinkUIBlockInserter","clientId","onBack","onBlockInsert","rootBlockClientId","select","getBlockRootClientId","className","title","description","children","rootClientId","isAppender","prioritizePatterns","selectBlockOnInsert","onSelect","undefined","hasSearch"],"sources":["@wordpress/block-library/src/navigation-link/block-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DialogWrapper from './dialog-wrapper';\nimport { unlock } from '../lock-unlock';\n\nconst { PrivateQuickInserter: QuickInserter } = unlock(\n\tblockEditorPrivateApis\n);\n\n/**\n * Component for inserting blocks within the Navigation Link UI.\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId Client ID of the navigation link block.\n * @param {Function} props.onBack Callback when user wants to go back.\n * @param {Function} props.onBlockInsert Callback when a block is inserted.\n */\nfunction LinkUIBlockInserter( { clientId, onBack, onBlockInsert } ) {\n\tconst { rootBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\trootBlockClientId: getBlockRootClientId( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tif ( ! clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DialogWrapper\n\t\t\tclassName=\"link-ui-block-inserter\"\n\t\t\ttitle={ __( 'Add block' ) }\n\t\t\tdescription={ __( 'Choose a block to add to your Navigation.' ) }\n\t\t\tonBack={ onBack }\n\t\t>\n\t\t\t<QuickInserter\n\t\t\t\trootClientId={ rootBlockClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ false }\n\t\t\t\tprioritizePatterns={ false }\n\t\t\t\tselectBlockOnInsert={ ! onBlockInsert }\n\t\t\t\tonSelect={ onBlockInsert ? onBlockInsert : undefined }\n\t\t\t\thasSearch={ false }\n\t\t\t/>\n\t\t</DialogWrapper>\n\t);\n}\n\nexport default LinkUIBlockInserter;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,KAAK,IAAIC,gBAAgB,EACzBC,WAAW,IAAIC,sBAAsB,QAC/B,yBAAyB;;AAEhC;AACA;AACA;AACA,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,SAASC,MAAM,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExC,MAAM;EAAEC,oBAAoB,EAAEC;AAAc,CAAC,GAAGJ,MAAM,CACrDF,sBACD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASO,mBAAmBA,CAAE;EAAEC,QAAQ;EAAEC,MAAM;EAAEC;AAAc,CAAC,EAAG;EACnE,MAAM;IAAEC;EAAkB,CAAC,GAAGf,SAAS,CACpCgB,MAAM,IAAM;IACb,MAAM;MAAEC;IAAqB,CAAC,GAAGD,MAAM,CAAEd,gBAAiB,CAAC;IAE3D,OAAO;MACNa,iBAAiB,EAAEE,oBAAoB,CAAEL,QAAS;IACnD,CAAC;EACF,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EAED,IAAK,CAAEA,QAAQ,EAAG;IACjB,OAAO,IAAI;EACZ;EAEA,oBACCJ,IAAA,CAACH,aAAa;IACba,SAAS,EAAC,wBAAwB;IAClCC,KAAK,EAAGpB,EAAE,CAAE,WAAY,CAAG;IAC3BqB,WAAW,EAAGrB,EAAE,CAAE,2CAA4C,CAAG;IACjEc,MAAM,EAAGA,MAAQ;IAAAQ,QAAA,eAEjBb,IAAA,CAACE,aAAa;MACbY,YAAY,EAAGP,iBAAmB;MAClCH,QAAQ,EAAGA,QAAU;MACrBW,UAAU,EAAG,KAAO;MACpBC,kBAAkB,EAAG,KAAO;MAC5BC,mBAAmB,EAAG,CAAEX,aAAe;MACvCY,QAAQ,EAAGZ,aAAa,GAAGA,aAAa,GAAGa,SAAW;MACtDC,SAAS,EAAG;IAAO,CACnB;EAAC,CACY,CAAC;AAElB;AAEA,eAAejB,mBAAmB","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { Button, VisuallyHidden } from '@wordpress/components';
|
|
5
|
+
import { __, isRTL } from '@wordpress/i18n';
|
|
6
|
+
import { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';
|
|
7
|
+
import { useInstanceId, useFocusOnMount } from '@wordpress/compose';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Shared BackButton component for consistent navigation across LinkUI sub-components.
|
|
11
|
+
*
|
|
12
|
+
* @param {Object} props Component props.
|
|
13
|
+
* @param {string} props.className CSS class name for the button.
|
|
14
|
+
* @param {Function} props.onBack Callback when user wants to go back.
|
|
15
|
+
*/
|
|
16
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
|
+
function BackButton({
|
|
18
|
+
className,
|
|
19
|
+
onBack
|
|
20
|
+
}) {
|
|
21
|
+
return /*#__PURE__*/_jsx(Button, {
|
|
22
|
+
className: className,
|
|
23
|
+
icon: isRTL() ? chevronRightSmall : chevronLeftSmall,
|
|
24
|
+
onClick: e => {
|
|
25
|
+
e.preventDefault();
|
|
26
|
+
onBack();
|
|
27
|
+
},
|
|
28
|
+
size: "small",
|
|
29
|
+
children: __('Back')
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Shared DialogWrapper component for consistent dialog structure across LinkUI sub-components.
|
|
35
|
+
*
|
|
36
|
+
* @param {Object} props Component props.
|
|
37
|
+
* @param {string} props.className CSS class name for the dialog container.
|
|
38
|
+
* @param {string} props.title Dialog title for accessibility.
|
|
39
|
+
* @param {string} props.description Dialog description for accessibility.
|
|
40
|
+
* @param {Function} props.onBack Callback when user wants to go back.
|
|
41
|
+
* @param {Object} props.children Child components to render inside the dialog.
|
|
42
|
+
*/
|
|
43
|
+
function DialogWrapper({
|
|
44
|
+
className,
|
|
45
|
+
title,
|
|
46
|
+
description,
|
|
47
|
+
onBack,
|
|
48
|
+
children
|
|
49
|
+
}) {
|
|
50
|
+
const dialogTitleId = useInstanceId(DialogWrapper, 'link-ui-dialog-title');
|
|
51
|
+
const dialogDescriptionId = useInstanceId(DialogWrapper, 'link-ui-dialog-description');
|
|
52
|
+
const focusOnMountRef = useFocusOnMount('firstElement');
|
|
53
|
+
const backButtonClassName = `${className}__back`;
|
|
54
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
55
|
+
className: className,
|
|
56
|
+
role: "dialog",
|
|
57
|
+
"aria-labelledby": dialogTitleId,
|
|
58
|
+
"aria-describedby": dialogDescriptionId,
|
|
59
|
+
ref: focusOnMountRef,
|
|
60
|
+
children: [/*#__PURE__*/_jsxs(VisuallyHidden, {
|
|
61
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
62
|
+
id: dialogTitleId,
|
|
63
|
+
children: title
|
|
64
|
+
}), /*#__PURE__*/_jsx("p", {
|
|
65
|
+
id: dialogDescriptionId,
|
|
66
|
+
children: description
|
|
67
|
+
})]
|
|
68
|
+
}), /*#__PURE__*/_jsx(BackButton, {
|
|
69
|
+
className: backButtonClassName,
|
|
70
|
+
onBack: onBack
|
|
71
|
+
}), children]
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
export default DialogWrapper;
|
|
75
|
+
//# sourceMappingURL=dialog-wrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Button","VisuallyHidden","__","isRTL","chevronLeftSmall","chevronRightSmall","useInstanceId","useFocusOnMount","jsx","_jsx","jsxs","_jsxs","BackButton","className","onBack","icon","onClick","e","preventDefault","size","children","DialogWrapper","title","description","dialogTitleId","dialogDescriptionId","focusOnMountRef","backButtonClassName","role","ref","id"],"sources":["@wordpress/block-library/src/navigation-link/dialog-wrapper.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { useInstanceId, useFocusOnMount } from '@wordpress/compose';\n\n/**\n * Shared BackButton component for consistent navigation across LinkUI sub-components.\n *\n * @param {Object} props Component props.\n * @param {string} props.className CSS class name for the button.\n * @param {Function} props.onBack Callback when user wants to go back.\n */\nfunction BackButton( { className, onBack } ) {\n\treturn (\n\t\t<Button\n\t\t\tclassName={ className }\n\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\tonClick={ ( e ) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tonBack();\n\t\t\t} }\n\t\t\tsize=\"small\"\n\t\t>\n\t\t\t{ __( 'Back' ) }\n\t\t</Button>\n\t);\n}\n\n/**\n * Shared DialogWrapper component for consistent dialog structure across LinkUI sub-components.\n *\n * @param {Object} props Component props.\n * @param {string} props.className CSS class name for the dialog container.\n * @param {string} props.title Dialog title for accessibility.\n * @param {string} props.description Dialog description for accessibility.\n * @param {Function} props.onBack Callback when user wants to go back.\n * @param {Object} props.children Child components to render inside the dialog.\n */\nfunction DialogWrapper( { className, title, description, onBack, children } ) {\n\tconst dialogTitleId = useInstanceId(\n\t\tDialogWrapper,\n\t\t'link-ui-dialog-title'\n\t);\n\tconst dialogDescriptionId = useInstanceId(\n\t\tDialogWrapper,\n\t\t'link-ui-dialog-description'\n\t);\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst backButtonClassName = `${ className }__back`;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ className }\n\t\t\trole=\"dialog\"\n\t\t\taria-labelledby={ dialogTitleId }\n\t\t\taria-describedby={ dialogDescriptionId }\n\t\t\tref={ focusOnMountRef }\n\t\t>\n\t\t\t<VisuallyHidden>\n\t\t\t\t<h2 id={ dialogTitleId }>{ title }</h2>\n\t\t\t\t<p id={ dialogDescriptionId }>{ description }</p>\n\t\t\t</VisuallyHidden>\n\n\t\t\t<BackButton className={ backButtonClassName } onBack={ onBack } />\n\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n\nexport default DialogWrapper;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,EAAE,EAAEC,KAAK,QAAQ,iBAAiB;AAC3C,SAASC,gBAAgB,EAAEC,iBAAiB,QAAQ,kBAAkB;AACtE,SAASC,aAAa,EAAEC,eAAe,QAAQ,oBAAoB;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AANA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAOA,SAASC,UAAUA,CAAE;EAAEC,SAAS;EAAEC;AAAO,CAAC,EAAG;EAC5C,oBACCL,IAAA,CAACT,MAAM;IACNa,SAAS,EAAGA,SAAW;IACvBE,IAAI,EAAGZ,KAAK,CAAC,CAAC,GAAGE,iBAAiB,GAAGD,gBAAkB;IACvDY,OAAO,EAAKC,CAAC,IAAM;MAClBA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBJ,MAAM,CAAC,CAAC;IACT,CAAG;IACHK,IAAI,EAAC,OAAO;IAAAC,QAAA,EAEVlB,EAAE,CAAE,MAAO;EAAC,CACP,CAAC;AAEX;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASmB,aAAaA,CAAE;EAAER,SAAS;EAAES,KAAK;EAAEC,WAAW;EAAET,MAAM;EAAEM;AAAS,CAAC,EAAG;EAC7E,MAAMI,aAAa,GAAGlB,aAAa,CAClCe,aAAa,EACb,sBACD,CAAC;EACD,MAAMI,mBAAmB,GAAGnB,aAAa,CACxCe,aAAa,EACb,4BACD,CAAC;EACD,MAAMK,eAAe,GAAGnB,eAAe,CAAE,cAAe,CAAC;EACzD,MAAMoB,mBAAmB,GAAG,GAAId,SAAS,QAAS;EAElD,oBACCF,KAAA;IACCE,SAAS,EAAGA,SAAW;IACvBe,IAAI,EAAC,QAAQ;IACb,mBAAkBJ,aAAe;IACjC,oBAAmBC,mBAAqB;IACxCI,GAAG,EAAGH,eAAiB;IAAAN,QAAA,gBAEvBT,KAAA,CAACV,cAAc;MAAAmB,QAAA,gBACdX,IAAA;QAAIqB,EAAE,EAAGN,aAAe;QAAAJ,QAAA,EAAGE;MAAK,CAAM,CAAC,eACvCb,IAAA;QAAGqB,EAAE,EAAGL,mBAAqB;QAAAL,QAAA,EAAGG;MAAW,CAAK,CAAC;IAAA,CAClC,CAAC,eAEjBd,IAAA,CAACG,UAAU;MAACC,SAAS,EAAGc,mBAAqB;MAACb,MAAM,EAAGA;IAAQ,CAAE,CAAC,EAEhEM,QAAQ;EAAA,CACN,CAAC;AAER;AAEA,eAAeC,aAAa","ignoreList":[]}
|