@wordpress/block-library 9.8.6 → 9.8.8
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/navigation/edit/index.js +23 -2
- package/build/navigation/edit/index.js.map +1 -1
- package/build/post-content/edit.js +29 -2
- package/build/post-content/edit.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +3 -3
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/navigation/edit/index.js +23 -2
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/post-content/edit.js +31 -3
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +3 -3
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-style/cover/style-rtl.css +5 -0
- package/build-style/cover/style.css +5 -0
- package/build-style/editor-rtl.css +1 -0
- package/build-style/editor.css +1 -0
- package/build-style/navigation/editor-rtl.css +1 -0
- package/build-style/navigation/editor.css +1 -0
- package/build-style/post-content/style-rtl.css +2 -4
- package/build-style/post-content/style.css +2 -4
- package/build-style/style-rtl.css +7 -4
- package/build-style/style.css +7 -4
- package/package.json +11 -11
- package/src/cover/index.php +38 -19
- package/src/cover/style.scss +6 -0
- package/src/image/index.php +1 -1
- package/src/navigation/edit/index.js +30 -3
- package/src/navigation/editor.scss +1 -0
- package/src/post-content/edit.js +30 -1
- package/src/post-content/style.scss +2 -4
- package/src/query/edit/inspector-controls/index.js +5 -8
|
@@ -51,6 +51,27 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
51
51
|
* Internal dependencies
|
|
52
52
|
*/
|
|
53
53
|
|
|
54
|
+
function useResponsiveMenu(navRef) {
|
|
55
|
+
const [isResponsiveMenuOpen, setResponsiveMenuVisibility] = (0, _element.useState)(false);
|
|
56
|
+
(0, _element.useEffect)(() => {
|
|
57
|
+
if (!navRef.current) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const htmlElement = navRef.current.ownerDocument.documentElement;
|
|
61
|
+
|
|
62
|
+
// Add a `has-modal-open` class to the <html> when the responsive
|
|
63
|
+
// menu is open. This reproduces the same behavior of the frontend.
|
|
64
|
+
if (isResponsiveMenuOpen) {
|
|
65
|
+
htmlElement.classList.add('has-modal-open');
|
|
66
|
+
} else {
|
|
67
|
+
htmlElement.classList.remove('has-modal-open');
|
|
68
|
+
}
|
|
69
|
+
return () => {
|
|
70
|
+
htmlElement?.classList.remove('has-modal-open');
|
|
71
|
+
};
|
|
72
|
+
}, [navRef, isResponsiveMenuOpen]);
|
|
73
|
+
return [isResponsiveMenuOpen, setResponsiveMenuVisibility];
|
|
74
|
+
}
|
|
54
75
|
function ColorTools({
|
|
55
76
|
textColor,
|
|
56
77
|
setTextColor,
|
|
@@ -210,7 +231,8 @@ function Navigation({
|
|
|
210
231
|
selectBlock,
|
|
211
232
|
__unstableMarkNextChangeAsNotPersistent
|
|
212
233
|
} = (0, _data.useDispatch)(_blockEditor.store);
|
|
213
|
-
const
|
|
234
|
+
const navRef = (0, _element.useRef)();
|
|
235
|
+
const [isResponsiveMenuOpen, setResponsiveMenuVisibility] = useResponsiveMenu(navRef);
|
|
214
236
|
const [overlayMenuPreview, setOverlayMenuPreview] = (0, _element.useState)(false);
|
|
215
237
|
const {
|
|
216
238
|
hasResolvedNavigationMenus,
|
|
@@ -273,7 +295,6 @@ function Navigation({
|
|
|
273
295
|
__unstableMarkNextChangeAsNotPersistent();
|
|
274
296
|
setRef(navigationFallbackId);
|
|
275
297
|
}, [ref, setRef, hasUnsavedBlocks, navigationFallbackId, __unstableMarkNextChangeAsNotPersistent]);
|
|
276
|
-
const navRef = (0, _element.useRef)();
|
|
277
298
|
|
|
278
299
|
// The standard HTML5 tag for the block wrapper.
|
|
279
300
|
const TagName = 'nav';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_blockEditor","_coreData","_data","_components","_i18n","_a11y","_icons","_compose","_useNavigationMenu","_useNavigationEntities","_placeholder","_responsiveWrapper","_innerBlocks","_navigationMenuNameControl","_unsavedInnerBlocks","_navigationMenuDeleteControl","_useNavigationNotice","_overlayMenuIcon","_overlayMenuPreview","_useConvertClassicMenuToBlockMenu","_interopRequireWildcard","_useCreateNavigationMenu","_useInnerBlocks","_utils","_manageMenusButton","_menuInspectorControls","_deletedNavigationWarning","_accessibleDescription","_accessibleMenuDescription","_lockUnlock","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ColorTools","textColor","setTextColor","backgroundColor","setBackgroundColor","overlayTextColor","setOverlayTextColor","overlayBackgroundColor","setOverlayBackgroundColor","clientId","navRef","detectedBackgroundColor","setDetectedBackgroundColor","useState","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","enableContrastChecking","Platform","OS","useEffect","detectColors","current","subMenuElement","querySelector","color","colorGradientSettings","useMultipleOriginColorsAndGradients","hasColorsOrGradients","jsxs","Fragment","children","jsx","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","label","__","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","Navigation","attributes","setAttributes","isSelected","className","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","useCallback","postId","recursionId","hasAlreadyRendered","useHasRecursion","blockEditingMode","useBlockEditingMode","menus","classicMenus","useNavigationEntities","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","useNavigationNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","useCreateNavigationMenu","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","useInnerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","hasResolvedCanUserCreateNavigationMenus","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","useRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","useBlockProps","clsx","class","getColorClassName","slug","onSelectClassicMenu","classicMenu","id","onSelectNavigationMenu","speak","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","stylingInspectorControls","InspectorControls","PanelBody","title","Button","__next40pxDefaultSize","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","help","onChange","isBlock","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","group","accessibleDescriptionId","isHiddenByDefault","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","RecursionProvider","uniqueId","onDelete","Spinner","hasCustomPlaceholder","_default","exports","withColors"],"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} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\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';\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},\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},\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},\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},\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 stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\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<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\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) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\taria-label={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\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) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\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>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\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} ), // Make sure arrows are shown when we toggle this on.\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\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</PanelBody>\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 === '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","_interopRequireDefault","require","_element","_blockEditor","_coreData","_data","_components","_i18n","_a11y","_icons","_compose","_useNavigationMenu","_useNavigationEntities","_placeholder","_responsiveWrapper","_innerBlocks","_navigationMenuNameControl","_unsavedInnerBlocks","_navigationMenuDeleteControl","_useNavigationNotice","_overlayMenuIcon","_overlayMenuPreview","_useConvertClassicMenuToBlockMenu","_interopRequireWildcard","_useCreateNavigationMenu","_useInnerBlocks","_utils","_manageMenusButton","_menuInspectorControls","_deletedNavigationWarning","_accessibleDescription","_accessibleMenuDescription","_lockUnlock","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useResponsiveMenu","navRef","isResponsiveMenuOpen","setResponsiveMenuVisibility","useState","useEffect","current","htmlElement","ownerDocument","documentElement","classList","add","remove","ColorTools","textColor","setTextColor","backgroundColor","setBackgroundColor","overlayTextColor","setOverlayTextColor","overlayBackgroundColor","setOverlayBackgroundColor","clientId","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","enableContrastChecking","Platform","OS","detectColors","subMenuElement","querySelector","color","colorGradientSettings","useMultipleOriginColorsAndGradients","hasColorsOrGradients","jsxs","Fragment","children","jsx","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","label","__","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","Navigation","attributes","setAttributes","isSelected","className","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","useCallback","postId","recursionId","hasAlreadyRendered","useHasRecursion","blockEditingMode","useBlockEditingMode","menus","classicMenus","useNavigationEntities","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","useNavigationNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","useCreateNavigationMenu","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","useInnerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","useRef","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","hasResolvedCanUserCreateNavigationMenus","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","useBlockProps","clsx","class","getColorClassName","slug","onSelectClassicMenu","classicMenu","id","onSelectNavigationMenu","speak","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","stylingInspectorControls","InspectorControls","PanelBody","title","Button","__next40pxDefaultSize","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","help","onChange","isBlock","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","group","accessibleDescriptionId","isHiddenByDefault","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","RecursionProvider","uniqueId","onDelete","Spinner","hasCustomPlaceholder","_default","exports","withColors"],"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} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\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';\n\nfunction useResponsiveMenu( navRef ) {\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tif ( ! navRef.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst htmlElement = navRef.current.ownerDocument.documentElement;\n\n\t\t// Add a `has-modal-open` class to the <html> when the responsive\n\t\t// menu is open. This reproduces the same behavior of the frontend.\n\t\tif ( isResponsiveMenuOpen ) {\n\t\t\thtmlElement.classList.add( 'has-modal-open' );\n\t\t} else {\n\t\t\thtmlElement.classList.remove( 'has-modal-open' );\n\t\t}\n\n\t\treturn () => {\n\t\t\thtmlElement?.classList.remove( 'has-modal-open' );\n\t\t};\n\t}, [ navRef, isResponsiveMenuOpen ] );\n\n\treturn [ isResponsiveMenuOpen, setResponsiveMenuVisibility ];\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},\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},\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},\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},\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 navRef = useRef();\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseResponsiveMenu( navRef );\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\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 stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\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<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\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) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay Menu' ) }\n\t\t\t\t\t\t\taria-label={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\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) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\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>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\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} ), // Make sure arrows are shown when we toggle this on.\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\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</PanelBody>\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 === '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":[]}
|
|
@@ -6,8 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = PostContentEdit;
|
|
7
7
|
var _i18n = require("@wordpress/i18n");
|
|
8
8
|
var _blockEditor = require("@wordpress/block-editor");
|
|
9
|
+
var _blocks = require("@wordpress/blocks");
|
|
9
10
|
var _coreData = require("@wordpress/core-data");
|
|
10
11
|
var _data = require("@wordpress/data");
|
|
12
|
+
var _element = require("@wordpress/element");
|
|
11
13
|
var _hooks = require("../utils/hooks");
|
|
12
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
15
|
/**
|
|
@@ -19,6 +21,7 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
19
21
|
*/
|
|
20
22
|
|
|
21
23
|
function ReadOnlyContent({
|
|
24
|
+
parentLayout,
|
|
22
25
|
layoutClassNames,
|
|
23
26
|
userCanEdit,
|
|
24
27
|
postType,
|
|
@@ -28,7 +31,28 @@ function ReadOnlyContent({
|
|
|
28
31
|
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
29
32
|
className: layoutClassNames
|
|
30
33
|
});
|
|
31
|
-
|
|
34
|
+
const blocks = (0, _element.useMemo)(() => {
|
|
35
|
+
return content?.raw ? (0, _blocks.parse)(content.raw) : [];
|
|
36
|
+
}, [content?.raw]);
|
|
37
|
+
const blockPreviewProps = (0, _blockEditor.__experimentalUseBlockPreview)({
|
|
38
|
+
blocks,
|
|
39
|
+
props: blockProps,
|
|
40
|
+
layout: parentLayout
|
|
41
|
+
});
|
|
42
|
+
if (userCanEdit) {
|
|
43
|
+
/*
|
|
44
|
+
* Rendering the block preview using the raw content blocks allows for
|
|
45
|
+
* block support styles to be generated and applied by the editor.
|
|
46
|
+
*
|
|
47
|
+
* The preview using the raw blocks can only be presented to users with
|
|
48
|
+
* edit permissions for the post to prevent potential exposure of private
|
|
49
|
+
* block content.
|
|
50
|
+
*/
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
52
|
+
...blockPreviewProps
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return content?.protected ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
32
56
|
...blockProps,
|
|
33
57
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.Warning, {
|
|
34
58
|
children: (0, _i18n.__)('This content is password protected.')
|
|
@@ -85,6 +109,7 @@ function Content(props) {
|
|
|
85
109
|
return isEditable ? /*#__PURE__*/(0, _jsxRuntime.jsx)(EditableContent, {
|
|
86
110
|
...props
|
|
87
111
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(ReadOnlyContent, {
|
|
112
|
+
parentLayout: props.parentLayout,
|
|
88
113
|
layoutClassNames: layoutClassNames,
|
|
89
114
|
userCanEdit: userCanEdit,
|
|
90
115
|
postType: postType,
|
|
@@ -119,7 +144,8 @@ function RecursionError() {
|
|
|
119
144
|
}
|
|
120
145
|
function PostContentEdit({
|
|
121
146
|
context,
|
|
122
|
-
__unstableLayoutClassNames: layoutClassNames
|
|
147
|
+
__unstableLayoutClassNames: layoutClassNames,
|
|
148
|
+
__unstableParentLayout: parentLayout
|
|
123
149
|
}) {
|
|
124
150
|
const {
|
|
125
151
|
postId: contextPostId,
|
|
@@ -133,6 +159,7 @@ function PostContentEdit({
|
|
|
133
159
|
uniqueId: contextPostId,
|
|
134
160
|
children: contextPostId && contextPostType ? /*#__PURE__*/(0, _jsxRuntime.jsx)(Content, {
|
|
135
161
|
context: context,
|
|
162
|
+
parentLayout: parentLayout,
|
|
136
163
|
layoutClassNames: layoutClassNames
|
|
137
164
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(Placeholder, {
|
|
138
165
|
layoutClassNames: layoutClassNames
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_blockEditor","_coreData","_data","_hooks","_jsxRuntime","ReadOnlyContent","layoutClassNames","userCanEdit","postType","postId","content","useEntityProp","blockProps","useBlockProps","className","protected","jsx","children","Warning","__","dangerouslySetInnerHTML","__html","rendered","EditableContent","context","blocks","onInput","onChange","useEntityBlockEditor","id","entityRecord","useSelect","select","coreStore","getEntityRecord","hasInnerBlocks","raw","length","initialInnerBlocks","props","useInnerBlocksProps","value","template","undefined","Content","queryId","useCanEditEntity","isDescendentOfQueryLoop","Number","isFinite","isEditable","Placeholder","jsxs","RecursionError","PostContentEdit","__unstableLayoutClassNames","contextPostId","contextPostType","hasAlreadyRendered","useHasRecursion","RecursionProvider","uniqueId"],"sources":["@wordpress/block-library/src/post-content/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tWarning,\n} from '@wordpress/block-editor';\nimport {\n\tuseEntityProp,\n\tuseEntityBlockEditor,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport { useCanEditEntity } from '../utils/hooks';\n\nfunction ReadOnlyContent( {\n\tlayoutClassNames,\n\tuserCanEdit,\n\tpostType,\n\tpostId,\n} ) {\n\tconst [ , , content ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'content',\n\t\tpostId\n\t);\n\tconst blockProps = useBlockProps( { className: layoutClassNames } );\n\treturn content?.protected && ! userCanEdit ? (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>{ __( 'This content is password protected.' ) }</Warning>\n\t\t</div>\n\t) : (\n\t\t<div\n\t\t\t{ ...blockProps }\n\t\t\tdangerouslySetInnerHTML={ { __html: content?.rendered } }\n\t\t></div>\n\t);\n}\n\nfunction EditableContent( { context = {} } ) {\n\tconst { postType, postId } = context;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\tpostType,\n\t\t{ id: postId }\n\t);\n\n\tconst entityRecord = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst hasInnerBlocks = !! entityRecord?.content?.raw || blocks?.length;\n\n\tconst initialInnerBlocks = [ [ 'core/paragraph' ] ];\n\n\tconst props = useInnerBlocksProps(\n\t\tuseBlockProps( { className: 'entry-content' } ),\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\ttemplate: ! hasInnerBlocks ? initialInnerBlocks : undefined,\n\t\t}\n\t);\n\treturn <div { ...props } />;\n}\n\nfunction Content( props ) {\n\tconst { context: { queryId, postType, postId } = {}, layoutClassNames } =\n\t\tprops;\n\tconst userCanEdit = useCanEditEntity( 'postType', postType, postId );\n\tif ( userCanEdit === undefined ) {\n\t\treturn null;\n\t}\n\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst isEditable = userCanEdit && ! isDescendentOfQueryLoop;\n\n\treturn isEditable ? (\n\t\t<EditableContent { ...props } />\n\t) : (\n\t\t<ReadOnlyContent\n\t\t\tlayoutClassNames={ layoutClassNames }\n\t\t\tuserCanEdit={ userCanEdit }\n\t\t\tpostType={ postType }\n\t\t\tpostId={ postId }\n\t\t/>\n\t);\n}\n\nfunction Placeholder( { layoutClassNames } ) {\n\tconst blockProps = useBlockProps( { className: layoutClassNames } );\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'This is the Content block, it will display all the blocks in any single post or page.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'That might be a simple arrangement like consecutive paragraphs in a blog post, or a more elaborate composition that includes image galleries, videos, tables, columns, and any other block types.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'If there are any Custom Post Types registered at your site, the Content block can display the contents of those entries as well.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t</div>\n\t);\n}\n\nfunction RecursionError() {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t</div>\n\t);\n}\n\nexport default function PostContentEdit( {\n\tcontext,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst { postId: contextPostId, postType: contextPostType } = context;\n\tconst hasAlreadyRendered = useHasRecursion( contextPostId );\n\n\tif ( contextPostId && contextPostType && hasAlreadyRendered ) {\n\t\treturn <RecursionError />;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ contextPostId }>\n\t\t\t{ contextPostId && contextPostType ? (\n\t\t\t\t<Content\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tlayoutClassNames={ layoutClassNames }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<Placeholder layoutClassNames={ layoutClassNames } />\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_blocks","_coreData","_data","_element","_hooks","_jsxRuntime","ReadOnlyContent","parentLayout","layoutClassNames","userCanEdit","postType","postId","content","useEntityProp","blockProps","useBlockProps","className","blocks","useMemo","raw","parse","blockPreviewProps","useBlockPreview","props","layout","jsx","protected","children","Warning","__","dangerouslySetInnerHTML","__html","rendered","EditableContent","context","onInput","onChange","useEntityBlockEditor","id","entityRecord","useSelect","select","coreStore","getEntityRecord","hasInnerBlocks","length","initialInnerBlocks","useInnerBlocksProps","value","template","undefined","Content","queryId","useCanEditEntity","isDescendentOfQueryLoop","Number","isFinite","isEditable","Placeholder","jsxs","RecursionError","PostContentEdit","__unstableLayoutClassNames","__unstableParentLayout","contextPostId","contextPostType","hasAlreadyRendered","useHasRecursion","RecursionProvider","uniqueId"],"sources":["@wordpress/block-library/src/post-content/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tWarning,\n\t__experimentalUseBlockPreview as useBlockPreview,\n} from '@wordpress/block-editor';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tuseEntityProp,\n\tuseEntityBlockEditor,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useCanEditEntity } from '../utils/hooks';\n\nfunction ReadOnlyContent( {\n\tparentLayout,\n\tlayoutClassNames,\n\tuserCanEdit,\n\tpostType,\n\tpostId,\n} ) {\n\tconst [ , , content ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'content',\n\t\tpostId\n\t);\n\tconst blockProps = useBlockProps( { className: layoutClassNames } );\n\tconst blocks = useMemo( () => {\n\t\treturn content?.raw ? parse( content.raw ) : [];\n\t}, [ content?.raw ] );\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: blockProps,\n\t\tlayout: parentLayout,\n\t} );\n\n\tif ( userCanEdit ) {\n\t\t/*\n\t\t * Rendering the block preview using the raw content blocks allows for\n\t\t * block support styles to be generated and applied by the editor.\n\t\t *\n\t\t * The preview using the raw blocks can only be presented to users with\n\t\t * edit permissions for the post to prevent potential exposure of private\n\t\t * block content.\n\t\t */\n\t\treturn <div { ...blockPreviewProps }></div>;\n\t}\n\n\treturn content?.protected ? (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>{ __( 'This content is password protected.' ) }</Warning>\n\t\t</div>\n\t) : (\n\t\t<div\n\t\t\t{ ...blockProps }\n\t\t\tdangerouslySetInnerHTML={ { __html: content?.rendered } }\n\t\t></div>\n\t);\n}\n\nfunction EditableContent( { context = {} } ) {\n\tconst { postType, postId } = context;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\tpostType,\n\t\t{ id: postId }\n\t);\n\n\tconst entityRecord = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst hasInnerBlocks = !! entityRecord?.content?.raw || blocks?.length;\n\n\tconst initialInnerBlocks = [ [ 'core/paragraph' ] ];\n\n\tconst props = useInnerBlocksProps(\n\t\tuseBlockProps( { className: 'entry-content' } ),\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\ttemplate: ! hasInnerBlocks ? initialInnerBlocks : undefined,\n\t\t}\n\t);\n\treturn <div { ...props } />;\n}\n\nfunction Content( props ) {\n\tconst { context: { queryId, postType, postId } = {}, layoutClassNames } =\n\t\tprops;\n\tconst userCanEdit = useCanEditEntity( 'postType', postType, postId );\n\tif ( userCanEdit === undefined ) {\n\t\treturn null;\n\t}\n\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst isEditable = userCanEdit && ! isDescendentOfQueryLoop;\n\n\treturn isEditable ? (\n\t\t<EditableContent { ...props } />\n\t) : (\n\t\t<ReadOnlyContent\n\t\t\tparentLayout={ props.parentLayout }\n\t\t\tlayoutClassNames={ layoutClassNames }\n\t\t\tuserCanEdit={ userCanEdit }\n\t\t\tpostType={ postType }\n\t\t\tpostId={ postId }\n\t\t/>\n\t);\n}\n\nfunction Placeholder( { layoutClassNames } ) {\n\tconst blockProps = useBlockProps( { className: layoutClassNames } );\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'This is the Content block, it will display all the blocks in any single post or page.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'That might be a simple arrangement like consecutive paragraphs in a blog post, or a more elaborate composition that includes image galleries, videos, tables, columns, and any other block types.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'If there are any Custom Post Types registered at your site, the Content block can display the contents of those entries as well.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t</div>\n\t);\n}\n\nfunction RecursionError() {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t</div>\n\t);\n}\n\nexport default function PostContentEdit( {\n\tcontext,\n\t__unstableLayoutClassNames: layoutClassNames,\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst { postId: contextPostId, postType: contextPostType } = context;\n\tconst hasAlreadyRendered = useHasRecursion( contextPostId );\n\n\tif ( contextPostId && contextPostType && hasAlreadyRendered ) {\n\t\treturn <RecursionError />;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ contextPostId }>\n\t\t\t{ contextPostId && contextPostType ? (\n\t\t\t\t<Content\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tparentLayout={ parentLayout }\n\t\t\t\t\tlayoutClassNames={ layoutClassNames }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<Placeholder layoutClassNames={ layoutClassNames } />\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -115,12 +115,12 @@ function QueryInspectorControls(props) {
|
|
|
115
115
|
return onChangeDebounced.cancel;
|
|
116
116
|
}, [querySearch, onChangeDebounced]);
|
|
117
117
|
const showInheritControl = isTemplate && (0, _utils.isControlAllowed)(allowedControls, 'inherit');
|
|
118
|
-
const showPostTypeControl = !inherit && (0, _utils.isControlAllowed)(allowedControls, 'postType')
|
|
118
|
+
const showPostTypeControl = !inherit && (0, _utils.isControlAllowed)(allowedControls, 'postType');
|
|
119
119
|
const postTypeControlLabel = (0, _i18n.__)('Post type');
|
|
120
120
|
const postTypeControlHelp = (0, _i18n.__)('Select the type of content to display: posts, pages, or custom post types.');
|
|
121
121
|
const showColumnsControl = false;
|
|
122
|
-
const showOrderControl = !inherit && (0, _utils.isControlAllowed)(allowedControls, 'order')
|
|
123
|
-
const showStickyControl = !inherit && showSticky && (0, _utils.isControlAllowed)(allowedControls, 'sticky')
|
|
122
|
+
const showOrderControl = !inherit && (0, _utils.isControlAllowed)(allowedControls, 'order');
|
|
123
|
+
const showStickyControl = !inherit && showSticky && (0, _utils.isControlAllowed)(allowedControls, 'sticky');
|
|
124
124
|
const showSettingsPanel = showInheritControl || showPostTypeControl || showColumnsControl || showOrderControl || showStickyControl;
|
|
125
125
|
const showTaxControl = !!taxonomies?.length && (0, _utils.isControlAllowed)(allowedControls, 'taxQuery');
|
|
126
126
|
const showAuthorControl = (0, _utils.isControlAllowed)(allowedControls, 'author');
|