@wordpress/block-library 8.19.3 → 8.19.4
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/CHANGELOG.md +7 -0
- package/build/cover/edit/inspector-controls.js +1 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/embed/edit.js +17 -0
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +17 -0
- package/build/embed/edit.native.js.map +1 -1
- package/build/image/image.js +1 -1
- package/build/image/image.js.map +1 -1
- package/build/image/view.js +14 -4
- package/build/image/view.js.map +1 -1
- package/build/latest-posts/edit.js +6 -2
- package/build/latest-posts/edit.js.map +1 -1
- package/build/media-text/edit.js +1 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +6 -4
- package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build/navigation/edit/index.js +3 -2
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +2 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +1 -1
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/embed/edit.js +17 -0
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +17 -0
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/image/image.js +1 -1
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/view.js +14 -4
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-posts/edit.js +6 -2
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/media-text/edit.js +1 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +7 -4
- package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build-module/navigation/edit/index.js +3 -2
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-style/image/style-rtl.css +17 -2
- package/build-style/image/style.css +17 -2
- package/build-style/post-featured-image/style-rtl.css +3 -0
- package/build-style/post-featured-image/style.css +3 -0
- package/build-style/post-template/style-rtl.css +25 -0
- package/build-style/post-template/style.css +25 -0
- package/build-style/style-rtl.css +46 -2
- package/build-style/style.css +46 -2
- package/package.json +32 -32
- package/src/cover/edit/inspector-controls.js +1 -1
- package/src/embed/edit.js +15 -0
- package/src/embed/edit.native.js +15 -0
- package/src/image/image.js +1 -1
- package/src/image/index.php +64 -46
- package/src/image/style.scss +23 -2
- package/src/image/view.js +14 -4
- package/src/latest-posts/edit.js +10 -2
- package/src/latest-posts/index.php +18 -8
- package/src/media-text/edit.js +1 -1
- package/src/navigation/edit/deleted-navigation-warning.js +9 -4
- package/src/navigation/edit/index.js +26 -17
- package/src/navigation/edit/inner-blocks.js +1 -0
- package/src/post-featured-image/style.scss +4 -0
- package/src/post-template/style.scss +20 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_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","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","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","useState","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","useEffect","navRef","useRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","useBlockOverlayActive","isResponsive","blockProps","useBlockProps","classnames","color","class","getColorClassName","slug","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","navMenu","id","onSelectNavigationMenu","speak","__","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","detectColors","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","colorGradientSettings","useMultipleOriginColorsAndGradients","stylingInspectorControls","createElement","Fragment","InspectorControls","PanelBody","title","Button","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","__experimentalRecursionProvider","uniqueId","onDelete","deletedMenuTitle","sprintf","Spinner","hasCustomPlaceholder","_default","withColors","exports"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\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\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\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 { __, sprintf } 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 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} ) {\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 = () => {\n\t\tcreateNavigationMenu( '' );\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\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\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 = useBlockOverlayActive( clientId );\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t'is-responsive': isResponsive,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t!! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor?.slug ) ]:\n\t\t\t\t!! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\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\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\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\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\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}\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] );\n\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] );\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\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\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\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\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 colorGradientSettings = useMultipleOriginColorsAndGradients();\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\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<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( '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\thideLabelFromVision\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{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\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={ 'always' === overlayMenu }\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\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\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={ ( deletedMenuTitle = '' ) => {\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\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\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{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\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</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName\n\t\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t! isPlaceholder\n\t\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\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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"}
|
|
1
|
+
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_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","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","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","useState","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","useEffect","navRef","useRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","useBlockOverlayActive","isResponsive","blockProps","useBlockProps","classnames","color","class","getColorClassName","slug","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","navMenu","id","onSelectNavigationMenu","speak","__","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","detectColors","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","colorGradientSettings","useMultipleOriginColorsAndGradients","stylingInspectorControls","createElement","Fragment","InspectorControls","PanelBody","title","Button","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","__experimentalRecursionProvider","uniqueId","onDelete","deletedMenuTitle","sprintf","Spinner","hasCustomPlaceholder","_default","withColors","exports"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\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\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\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 { __, sprintf } 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 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 = () => {\n\t\tcreateNavigationMenu( '' );\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\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\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 = useBlockOverlayActive( clientId );\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames(\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\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\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\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\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}\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] );\n\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] );\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\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\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\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\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 colorGradientSettings = useMultipleOriginColorsAndGradients();\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\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<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( '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\thideLabelFromVision\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{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\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={ 'always' === overlayMenu }\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\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\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={ ( deletedMenuTitle = '' ) => {\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\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\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{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\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</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName\n\t\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t! isPlaceholder\n\t\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\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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"}
|
|
@@ -82,7 +82,8 @@ function NavigationInnerBlocks({
|
|
|
82
82
|
// Show the appender while dragging to allow inserting element between item and the appender.
|
|
83
83
|
parentOrChildHasSelection ? _blockEditor.InnerBlocks.ButtonBlockAppender : false,
|
|
84
84
|
placeholder: showPlaceholder ? placeholder : undefined,
|
|
85
|
-
__experimentalCaptureToolbars: true
|
|
85
|
+
__experimentalCaptureToolbars: true,
|
|
86
|
+
__unstableDisableLayoutClassNames: true
|
|
86
87
|
});
|
|
87
88
|
return (0, _element.createElement)("div", {
|
|
88
89
|
...innerBlocksProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_coreData","_blockEditor","_data","_placeholderPreview","_interopRequireDefault","_constants","NavigationInnerBlocks","clientId","hasCustomPlaceholder","orientation","templateLock","isImmediateParentOfSelectedBlock","selectedBlockHasChildren","isSelected","useSelect","select","getBlockCount","hasSelectedInnerBlock","getSelectedBlockClientId","blockEditorStore","selectedBlockId","blocks","onInput","onChange","useEntityBlockEditor","shouldDirectInsert","useMemo","every","name","parentOrChildHasSelection","placeholder","createElement","default","hasMenuItems","length","showPlaceholder","innerBlocksProps","useInnerBlocksProps","className","value","allowedBlocks","ALLOWED_BLOCKS","prioritizedInserterBlocks","PRIORITIZED_INSERTER_BLOCKS","defaultBlock","DEFAULT_BLOCK","directInsert","renderAppender","InnerBlocks","ButtonBlockAppender","undefined","__experimentalCaptureToolbars"],"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tuseInnerBlocksProps,\n\tInnerBlocks,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport {\n\tDEFAULT_BLOCK,\n\tALLOWED_BLOCKS,\n\tPRIORITIZED_INSERTER_BLOCKS,\n} from '../constants';\n\nexport default function NavigationInnerBlocks( {\n\tclientId,\n\thasCustomPlaceholder,\n\torientation,\n\ttemplateLock,\n} ) {\n\tconst {\n\t\tisImmediateParentOfSelectedBlock,\n\t\tselectedBlockHasChildren,\n\t\tisSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tisImmediateParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\tselectedBlockHasChildren: !! getBlockCount( selectedBlockId ),\n\n\t\t\t\t// This prop is already available but computing it here ensures it's\n\t\t\t\t// fresh compared to isImmediateParentOfSelectedBlock.\n\t\t\t\tisSelected: selectedBlockId === clientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation'\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// When the block is selected itself or has a top level item selected that\n\t// doesn't itself have children, show the standard appender. Else show no\n\t// appender.\n\tconst parentOrChildHasSelection =\n\t\tisSelected ||\n\t\t( isImmediateParentOfSelectedBlock && ! selectedBlockHasChildren );\n\n\tconst placeholder = useMemo( () => <PlaceholderPreview />, [] );\n\n\tconst hasMenuItems = !! blocks?.length;\n\n\t// If there is a `ref` attribute pointing to a `wp_navigation` but\n\t// that menu has no **items** (i.e. empty) then show a placeholder.\n\t// The block must also be selected else the placeholder will display\n\t// alongside the appender.\n\tconst showPlaceholder =\n\t\t! hasCustomPlaceholder && ! hasMenuItems && ! isSelected;\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\tprioritizedInserterBlocks: PRIORITIZED_INSERTER_BLOCKS,\n\t\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\t\tdirectInsert: shouldDirectInsert,\n\t\t\torientation,\n\t\t\ttemplateLock,\n\n\t\t\t// As an exception to other blocks which feature nesting, show\n\t\t\t// the block appender even when a child block is selected.\n\t\t\t// This should be a temporary fix, to be replaced by improvements to\n\t\t\t// the sibling inserter.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/37572.\n\t\t\trenderAppender:\n\t\t\t\tisSelected ||\n\t\t\t\t( isImmediateParentOfSelectedBlock &&\n\t\t\t\t\t! selectedBlockHasChildren ) ||\n\t\t\t\t// Show the appender while dragging to allow inserting element between item and the appender.\n\t\t\t\tparentOrChildHasSelection\n\t\t\t\t\t? InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t: false,\n\t\t\tplaceholder: showPlaceholder ? placeholder : undefined,\n\t\t\t__experimentalCaptureToolbars: true,\n\t\t}\n\t);\n\n\treturn <div { ...innerBlocksProps } />;\n}\n"],"mappings":";;;;;;;AAUA,IAAAA,QAAA,GAAAC,OAAA;AAPA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AAMA,IAAAI,mBAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAhBA;AACA;AACA;;AAUA;AACA;AACA;;AAQe,SAASO,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,oBAAoB;EACpBC,WAAW;EACXC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,gCAAgC;IAChCC,wBAAwB;IACxBC;EACD,CAAC,GAAG,IAAAC,eAAS,EACVC,MAAM,IAAM;IACb,MAAM;MACLC,aAAa;MACbC,qBAAqB;MACrBC;IACD,CAAC,GAAGH,MAAM,CAAEI,kBAAiB,CAAC;IAC9B,MAAMC,eAAe,GAAGF,wBAAwB,CAAC,CAAC;IAElD,OAAO;MACNP,gCAAgC,EAAEM,qBAAqB,CACtDV,QAAQ,EACR,KACD,CAAC;MACDK,wBAAwB,EAAE,CAAC,CAAEI,aAAa,CAAEI,eAAgB,CAAC;MAE7D;MACA;MACAP,UAAU,EAAEO,eAAe,KAAKb;IACjC,CAAC;EACF,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EAED,MAAM,CAAEc,MAAM,EAAEC,OAAO,EAAEC,QAAQ,CAAE,GAAG,IAAAC,8BAAoB,EACzD,UAAU,EACV,eACD,CAAC;EAED,MAAMC,kBAAkB,GAAG,IAAAC,gBAAO,EACjC,MACCL,MAAM,CAACM,KAAK,CACX,CAAE;IAAEC;EAAK,CAAC,KACTA,IAAI,KAAK,sBAAsB,IAC/BA,IAAI,KAAK,yBAAyB,IAClCA,IAAI,KAAK,gBACX,CAAC,EACF,CAAEP,MAAM,CACT,CAAC;;EAED;EACA;EACA;EACA,MAAMQ,yBAAyB,GAC9BhB,UAAU,IACRF,gCAAgC,IAAI,CAAEC,wBAA0B;EAEnE,MAAMkB,WAAW,GAAG,IAAAJ,gBAAO,EAAE,MAAM,IAAA5B,QAAA,CAAAiC,aAAA,EAAC5B,mBAAA,CAAA6B,OAAkB,MAAE,CAAC,EAAE,EAAG,CAAC;EAE/D,MAAMC,YAAY,GAAG,CAAC,CAAEZ,MAAM,EAAEa,MAAM;;EAEtC;EACA;EACA;EACA;EACA,MAAMC,eAAe,GACpB,CAAE3B,oBAAoB,IAAI,CAAEyB,YAAY,IAAI,CAAEpB,UAAU;EAEzD,MAAMuB,gBAAgB,GAAG,IAAAC,gCAAmB,EAC3C;IACCC,SAAS,EAAE;EACZ,CAAC,EACD;IACCC,KAAK,EAAElB,MAAM;IACbC,OAAO;IACPC,QAAQ;IACRiB,aAAa,EAAEC,yBAAc;IAC7BC,yBAAyB,EAAEC,sCAA2B;IACtDC,YAAY,EAAEC,wBAAa;IAC3BC,YAAY,EAAErB,kBAAkB;IAChChB,WAAW;IACXC,YAAY;IAEZ;IACA;IACA;IACA;IACA;IACAqC,cAAc,EACblC,UAAU,IACRF,gCAAgC,IACjC,CAAEC,wBAA0B;IAC7B;IACAiB,yBAAyB,GACtBmB,wBAAW,CAACC,mBAAmB,GAC/B,KAAK;IACTnB,WAAW,EAAEK,eAAe,GAAGL,WAAW,GAAGoB,SAAS;IACtDC,6BAA6B,EAAE;
|
|
1
|
+
{"version":3,"names":["_element","require","_coreData","_blockEditor","_data","_placeholderPreview","_interopRequireDefault","_constants","NavigationInnerBlocks","clientId","hasCustomPlaceholder","orientation","templateLock","isImmediateParentOfSelectedBlock","selectedBlockHasChildren","isSelected","useSelect","select","getBlockCount","hasSelectedInnerBlock","getSelectedBlockClientId","blockEditorStore","selectedBlockId","blocks","onInput","onChange","useEntityBlockEditor","shouldDirectInsert","useMemo","every","name","parentOrChildHasSelection","placeholder","createElement","default","hasMenuItems","length","showPlaceholder","innerBlocksProps","useInnerBlocksProps","className","value","allowedBlocks","ALLOWED_BLOCKS","prioritizedInserterBlocks","PRIORITIZED_INSERTER_BLOCKS","defaultBlock","DEFAULT_BLOCK","directInsert","renderAppender","InnerBlocks","ButtonBlockAppender","undefined","__experimentalCaptureToolbars","__unstableDisableLayoutClassNames"],"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tuseInnerBlocksProps,\n\tInnerBlocks,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport {\n\tDEFAULT_BLOCK,\n\tALLOWED_BLOCKS,\n\tPRIORITIZED_INSERTER_BLOCKS,\n} from '../constants';\n\nexport default function NavigationInnerBlocks( {\n\tclientId,\n\thasCustomPlaceholder,\n\torientation,\n\ttemplateLock,\n} ) {\n\tconst {\n\t\tisImmediateParentOfSelectedBlock,\n\t\tselectedBlockHasChildren,\n\t\tisSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tisImmediateParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\tselectedBlockHasChildren: !! getBlockCount( selectedBlockId ),\n\n\t\t\t\t// This prop is already available but computing it here ensures it's\n\t\t\t\t// fresh compared to isImmediateParentOfSelectedBlock.\n\t\t\t\tisSelected: selectedBlockId === clientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation'\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// When the block is selected itself or has a top level item selected that\n\t// doesn't itself have children, show the standard appender. Else show no\n\t// appender.\n\tconst parentOrChildHasSelection =\n\t\tisSelected ||\n\t\t( isImmediateParentOfSelectedBlock && ! selectedBlockHasChildren );\n\n\tconst placeholder = useMemo( () => <PlaceholderPreview />, [] );\n\n\tconst hasMenuItems = !! blocks?.length;\n\n\t// If there is a `ref` attribute pointing to a `wp_navigation` but\n\t// that menu has no **items** (i.e. empty) then show a placeholder.\n\t// The block must also be selected else the placeholder will display\n\t// alongside the appender.\n\tconst showPlaceholder =\n\t\t! hasCustomPlaceholder && ! hasMenuItems && ! isSelected;\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\tprioritizedInserterBlocks: PRIORITIZED_INSERTER_BLOCKS,\n\t\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\t\tdirectInsert: shouldDirectInsert,\n\t\t\torientation,\n\t\t\ttemplateLock,\n\n\t\t\t// As an exception to other blocks which feature nesting, show\n\t\t\t// the block appender even when a child block is selected.\n\t\t\t// This should be a temporary fix, to be replaced by improvements to\n\t\t\t// the sibling inserter.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/37572.\n\t\t\trenderAppender:\n\t\t\t\tisSelected ||\n\t\t\t\t( isImmediateParentOfSelectedBlock &&\n\t\t\t\t\t! selectedBlockHasChildren ) ||\n\t\t\t\t// Show the appender while dragging to allow inserting element between item and the appender.\n\t\t\t\tparentOrChildHasSelection\n\t\t\t\t\t? InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t: false,\n\t\t\tplaceholder: showPlaceholder ? placeholder : undefined,\n\t\t\t__experimentalCaptureToolbars: true,\n\t\t\t__unstableDisableLayoutClassNames: true,\n\t\t}\n\t);\n\n\treturn <div { ...innerBlocksProps } />;\n}\n"],"mappings":";;;;;;;AAUA,IAAAA,QAAA,GAAAC,OAAA;AAPA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AAMA,IAAAI,mBAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAhBA;AACA;AACA;;AAUA;AACA;AACA;;AAQe,SAASO,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,oBAAoB;EACpBC,WAAW;EACXC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,gCAAgC;IAChCC,wBAAwB;IACxBC;EACD,CAAC,GAAG,IAAAC,eAAS,EACVC,MAAM,IAAM;IACb,MAAM;MACLC,aAAa;MACbC,qBAAqB;MACrBC;IACD,CAAC,GAAGH,MAAM,CAAEI,kBAAiB,CAAC;IAC9B,MAAMC,eAAe,GAAGF,wBAAwB,CAAC,CAAC;IAElD,OAAO;MACNP,gCAAgC,EAAEM,qBAAqB,CACtDV,QAAQ,EACR,KACD,CAAC;MACDK,wBAAwB,EAAE,CAAC,CAAEI,aAAa,CAAEI,eAAgB,CAAC;MAE7D;MACA;MACAP,UAAU,EAAEO,eAAe,KAAKb;IACjC,CAAC;EACF,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EAED,MAAM,CAAEc,MAAM,EAAEC,OAAO,EAAEC,QAAQ,CAAE,GAAG,IAAAC,8BAAoB,EACzD,UAAU,EACV,eACD,CAAC;EAED,MAAMC,kBAAkB,GAAG,IAAAC,gBAAO,EACjC,MACCL,MAAM,CAACM,KAAK,CACX,CAAE;IAAEC;EAAK,CAAC,KACTA,IAAI,KAAK,sBAAsB,IAC/BA,IAAI,KAAK,yBAAyB,IAClCA,IAAI,KAAK,gBACX,CAAC,EACF,CAAEP,MAAM,CACT,CAAC;;EAED;EACA;EACA;EACA,MAAMQ,yBAAyB,GAC9BhB,UAAU,IACRF,gCAAgC,IAAI,CAAEC,wBAA0B;EAEnE,MAAMkB,WAAW,GAAG,IAAAJ,gBAAO,EAAE,MAAM,IAAA5B,QAAA,CAAAiC,aAAA,EAAC5B,mBAAA,CAAA6B,OAAkB,MAAE,CAAC,EAAE,EAAG,CAAC;EAE/D,MAAMC,YAAY,GAAG,CAAC,CAAEZ,MAAM,EAAEa,MAAM;;EAEtC;EACA;EACA;EACA;EACA,MAAMC,eAAe,GACpB,CAAE3B,oBAAoB,IAAI,CAAEyB,YAAY,IAAI,CAAEpB,UAAU;EAEzD,MAAMuB,gBAAgB,GAAG,IAAAC,gCAAmB,EAC3C;IACCC,SAAS,EAAE;EACZ,CAAC,EACD;IACCC,KAAK,EAAElB,MAAM;IACbC,OAAO;IACPC,QAAQ;IACRiB,aAAa,EAAEC,yBAAc;IAC7BC,yBAAyB,EAAEC,sCAA2B;IACtDC,YAAY,EAAEC,wBAAa;IAC3BC,YAAY,EAAErB,kBAAkB;IAChChB,WAAW;IACXC,YAAY;IAEZ;IACA;IACA;IACA;IACA;IACAqC,cAAc,EACblC,UAAU,IACRF,gCAAgC,IACjC,CAAEC,wBAA0B;IAC7B;IACAiB,yBAAyB,GACtBmB,wBAAW,CAACC,mBAAmB,GAC/B,KAAK;IACTnB,WAAW,EAAEK,eAAe,GAAGL,WAAW,GAAGoB,SAAS;IACtDC,6BAA6B,EAAE,IAAI;IACnCC,iCAAiC,EAAE;EACpC,CACD,CAAC;EAED,OAAO,IAAAtD,QAAA,CAAAiC,aAAA;IAAA,GAAUK;EAAgB,CAAI,CAAC;AACvC"}
|
|
@@ -110,7 +110,7 @@ export default function CoverInspectorControls({
|
|
|
110
110
|
const colorGradientSettings = useMultipleOriginColorsAndGradients();
|
|
111
111
|
const htmlElementMessages = {
|
|
112
112
|
header: __('The <header> element should represent introductory content, typically a group of introductory or navigational aids.'),
|
|
113
|
-
main: __('The <main> element should be used for the primary content of your document only.
|
|
113
|
+
main: __('The <main> element should be used for the primary content of your document only.'),
|
|
114
114
|
section: __("The <section> element should represent a standalone portion of the document that can't be better represented by another element."),
|
|
115
115
|
article: __('The <article> element should represent a self-contained, syndicatable portion of the document.'),
|
|
116
116
|
aside: __("The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","TextareaControl","ToggleControl","SelectControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","useInstanceId","InspectorControls","useSetting","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseGradient","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","__","COVER_MIN_HEIGHT","mediaPosition","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","createElement","label","id","isResetValueOnUnitChange","__unstableInputWidth","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","onClearMedia","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","isImgElement","overlayColor","gradientValue","setGradient","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","colorGradientSettings","htmlElementMessages","header","main","section","article","aside","footer","Fragment","title","__nextHasNoMarginBottom","checked","onDragStart","onDrag","newFocalPoint","newAlt","help","href","variant","isSmall","className","onClick","hasColorsOrGradients","group","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","customOverlayColor","gradient","customGradient","panelId","hasValue","onDeselect","newDimRatio","max","step","required","__next40pxDefaultSize","newMinHeight","nextUnit","options"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSetting,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ __( 'Minimum height of cover' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\t__unstableInputWidth={ '80px' }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n\tonClearMedia,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only. '\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\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\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\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\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\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\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\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) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\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'Leave empty if decorative.'\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<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ onClearMedia }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\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\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useMemo","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","TextareaControl","ToggleControl","SelectControl","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","useInstanceId","InspectorControls","useSetting","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseGradient","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","__","COVER_MIN_HEIGHT","mediaPosition","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","createElement","label","id","isResetValueOnUnitChange","__unstableInputWidth","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","onClearMedia","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","isImgElement","overlayColor","gradientValue","setGradient","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","colorGradientSettings","htmlElementMessages","header","main","section","article","aside","footer","Fragment","title","__nextHasNoMarginBottom","checked","onDragStart","onDrag","newFocalPoint","newAlt","help","href","variant","isSmall","className","onClick","hasColorsOrGradients","group","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","customOverlayColor","gradient","customGradient","panelId","hasValue","onDeselect","newDimRatio","max","step","required","__next40pxDefaultSize","newMinHeight","nextUnit","options"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSetting,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ __( 'Minimum height of cover' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\t__unstableInputWidth={ '80px' }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n\tonClearMedia,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\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\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\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\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\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\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\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) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\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'Leave empty if decorative.'\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<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ onClearMedia }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\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\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ import { useDispatch, useSelect } from '@wordpress/data';
|
|
|
23
23
|
import { useBlockProps } from '@wordpress/block-editor';
|
|
24
24
|
import { store as coreStore } from '@wordpress/core-data';
|
|
25
25
|
import { View } from '@wordpress/primitives';
|
|
26
|
+
import { getAuthority } from '@wordpress/url';
|
|
26
27
|
const EmbedEdit = props => {
|
|
27
28
|
const {
|
|
28
29
|
attributes: {
|
|
@@ -121,6 +122,22 @@ const EmbedEdit = props => {
|
|
|
121
122
|
});
|
|
122
123
|
}, [preview?.html, attributesUrl, cannotEmbed, fetching]);
|
|
123
124
|
|
|
125
|
+
// Try a different provider in case the embed url is not supported.
|
|
126
|
+
useEffect(() => {
|
|
127
|
+
if (!cannotEmbed || fetching || !url) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// Until X provider is supported in WordPress, as a workaround we use Twitter provider.
|
|
132
|
+
if (getAuthority(url) === 'x.com') {
|
|
133
|
+
const newURL = new URL(url);
|
|
134
|
+
newURL.host = 'twitter.com';
|
|
135
|
+
setAttributes({
|
|
136
|
+
url: newURL.toString()
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
}, [url, cannotEmbed, fetching, setAttributes]);
|
|
140
|
+
|
|
124
141
|
// Handle incoming preview.
|
|
125
142
|
useEffect(() => {
|
|
126
143
|
if (preview && !isEditingURL) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createUpgradedEmbedBlock","getClassNames","removeAspectRatioClasses","fallback","getEmbedInfoByProvider","getMergedAttributesWithPreview","EmbedControls","embedContentIcon","EmbedLoading","EmbedPlaceholder","EmbedPreview","classnames","__","_x","sprintf","useState","useEffect","useDispatch","useSelect","useBlockProps","store","coreStore","View","EmbedEdit","props","attributes","providerNameSlug","previewable","responsive","url","attributesUrl","isSelected","onReplace","setAttributes","insertBlocksAfter","onFocus","defaultEmbedInfo","title","icon","setURL","isEditingURL","setIsEditingURL","invalidateResolution","preview","fetching","themeSupportsResponsive","cannotEmbed","select","getEmbedPreview","isPreviewEmbedFallback","isRequestingEmbedPreview","getThemeSupports","embedPreview","previewIsFallback","badEmbedProvider","html","type","undefined","wordpressCantEmbed","data","status","validPreview","getMergedAttributes","toggleResponsive","allowResponsive","className","newAllowResponsive","newURL","replace","mergedAttributes","upgradedBlock","blockProps","createElement","label","showEmbedPlaceholder","onSubmit","event","preventDefault","blockClass","value","onChange","target","tryAgain","caption","classFromPreview","Fragment","showEditButton","blockSupportsResponsive","switchBackToURLInput","onCaptionChange"],"sources":["@wordpress/block-library/src/embed/edit.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tcreateUpgradedEmbedBlock,\n\tgetClassNames,\n\tremoveAspectRatioClasses,\n\tfallback,\n\tgetEmbedInfoByProvider,\n\tgetMergedAttributesWithPreview,\n} from './util';\nimport EmbedControls from './embed-controls';\nimport { embedContentIcon } from './icons';\nimport EmbedLoading from './embed-loading';\nimport EmbedPlaceholder from './embed-placeholder';\nimport EmbedPreview from './embed-preview';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useBlockProps } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { View } from '@wordpress/primitives';\n\nconst EmbedEdit = ( props ) => {\n\tconst {\n\t\tattributes: {\n\t\t\tproviderNameSlug,\n\t\t\tpreviewable,\n\t\t\tresponsive,\n\t\t\turl: attributesUrl,\n\t\t},\n\t\tattributes,\n\t\tisSelected,\n\t\tonReplace,\n\t\tsetAttributes,\n\t\tinsertBlocksAfter,\n\t\tonFocus,\n\t} = props;\n\n\tconst defaultEmbedInfo = {\n\t\ttitle: _x( 'Embed', 'block title' ),\n\t\ticon: embedContentIcon,\n\t};\n\tconst { icon, title } =\n\t\tgetEmbedInfoByProvider( providerNameSlug ) || defaultEmbedInfo;\n\n\tconst [ url, setURL ] = useState( attributesUrl );\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst { invalidateResolution } = useDispatch( coreStore );\n\n\tconst { preview, fetching, themeSupportsResponsive, cannotEmbed } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetEmbedPreview,\n\t\t\t\t\tisPreviewEmbedFallback,\n\t\t\t\t\tisRequestingEmbedPreview,\n\t\t\t\t\tgetThemeSupports,\n\t\t\t\t} = select( coreStore );\n\t\t\t\tif ( ! attributesUrl ) {\n\t\t\t\t\treturn { fetching: false, cannotEmbed: false };\n\t\t\t\t}\n\n\t\t\t\tconst embedPreview = getEmbedPreview( attributesUrl );\n\t\t\t\tconst previewIsFallback =\n\t\t\t\t\tisPreviewEmbedFallback( attributesUrl );\n\n\t\t\t\t// The external oEmbed provider does not exist. We got no type info and no html.\n\t\t\t\tconst badEmbedProvider =\n\t\t\t\t\tembedPreview?.html === false &&\n\t\t\t\t\tembedPreview?.type === undefined;\n\t\t\t\t// Some WordPress URLs that can't be embedded will cause the API to return\n\t\t\t\t// a valid JSON response with no HTML and `data.status` set to 404, rather\n\t\t\t\t// than generating a fallback response as other embeds do.\n\t\t\t\tconst wordpressCantEmbed = embedPreview?.data?.status === 404;\n\t\t\t\tconst validPreview =\n\t\t\t\t\t!! embedPreview &&\n\t\t\t\t\t! badEmbedProvider &&\n\t\t\t\t\t! wordpressCantEmbed;\n\t\t\t\treturn {\n\t\t\t\t\tpreview: validPreview ? embedPreview : undefined,\n\t\t\t\t\tfetching: isRequestingEmbedPreview( attributesUrl ),\n\t\t\t\t\tthemeSupportsResponsive:\n\t\t\t\t\t\tgetThemeSupports()[ 'responsive-embeds' ],\n\t\t\t\t\tcannotEmbed: ! validPreview || previewIsFallback,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ attributesUrl ]\n\t\t);\n\n\t/**\n\t * Returns the attributes derived from the preview, merged with the current attributes.\n\t *\n\t * @return {Object} Merged attributes.\n\t */\n\tconst getMergedAttributes = () =>\n\t\tgetMergedAttributesWithPreview(\n\t\t\tattributes,\n\t\t\tpreview,\n\t\t\ttitle,\n\t\t\tresponsive\n\t\t);\n\n\tconst toggleResponsive = () => {\n\t\tconst { allowResponsive, className } = attributes;\n\t\tconst { html } = preview;\n\t\tconst newAllowResponsive = ! allowResponsive;\n\n\t\tsetAttributes( {\n\t\t\tallowResponsive: newAllowResponsive,\n\t\t\tclassName: getClassNames(\n\t\t\t\thtml,\n\t\t\t\tclassName,\n\t\t\t\tresponsive && newAllowResponsive\n\t\t\t),\n\t\t} );\n\t};\n\n\tuseEffect( () => {\n\t\tif ( ! preview?.html || ! cannotEmbed || fetching ) {\n\t\t\treturn;\n\t\t}\n\t\t// At this stage, we're not fetching the preview and know it can't be embedded,\n\t\t// so try removing any trailing slash, and resubmit.\n\t\tconst newURL = attributesUrl.replace( /\\/$/, '' );\n\t\tsetURL( newURL );\n\t\tsetIsEditingURL( false );\n\t\tsetAttributes( { url: newURL } );\n\t}, [ preview?.html, attributesUrl, cannotEmbed, fetching ] );\n\n\t// Handle incoming preview.\n\tuseEffect( () => {\n\t\tif ( preview && ! isEditingURL ) {\n\t\t\t// When obtaining an incoming preview,\n\t\t\t// we set the attributes derived from the preview data.\n\t\t\tconst mergedAttributes = getMergedAttributes();\n\t\t\tsetAttributes( mergedAttributes );\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst upgradedBlock = createUpgradedEmbedBlock(\n\t\t\t\t\tprops,\n\t\t\t\t\tmergedAttributes\n\t\t\t\t);\n\n\t\t\t\tif ( upgradedBlock ) {\n\t\t\t\t\tonReplace( upgradedBlock );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, [ preview, isEditingURL ] );\n\n\tconst blockProps = useBlockProps();\n\n\tif ( fetching ) {\n\t\treturn (\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedLoading />\n\t\t\t</View>\n\t\t);\n\t}\n\n\t// translators: %s: type of embed e.g: \"YouTube\", \"Twitter\", etc. \"Embed\" is used when no specific type exists\n\tconst label = sprintf( __( '%s URL' ), title );\n\n\t// No preview, or we can't embed the current URL, or we've clicked the edit button.\n\tconst showEmbedPlaceholder = ! preview || cannotEmbed || isEditingURL;\n\n\tif ( showEmbedPlaceholder ) {\n\t\treturn (\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedPlaceholder\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\tif ( event ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// If the embed URL was changed, we need to reset the aspect ratio class.\n\t\t\t\t\t\t// To do this we have to remove the existing ratio class so it can be recalculated.\n\t\t\t\t\t\tconst blockClass = removeAspectRatioClasses(\n\t\t\t\t\t\t\tattributes.className\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\tsetAttributes( { url, className: blockClass } );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ url }\n\t\t\t\t\tcannotEmbed={ cannotEmbed }\n\t\t\t\t\tonChange={ ( event ) => setURL( event.target.value ) }\n\t\t\t\t\tfallback={ () => fallback( url, onReplace ) }\n\t\t\t\t\ttryAgain={ () => {\n\t\t\t\t\t\tinvalidateResolution( 'getEmbedPreview', [ url ] );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\t// Even though we set attributes that get derived from the preview,\n\t// we don't access them directly because for the initial render,\n\t// the `setAttributes` call will not have taken effect. If we're\n\t// rendering responsive content, setting the responsive classes\n\t// after the preview has been rendered can result in unwanted\n\t// clipping or scrollbars. The `getAttributesFromPreview` function\n\t// that `getMergedAttributes` uses is memoized so that we're not\n\t// calculating them on every render.\n\tconst {\n\t\tcaption,\n\t\ttype,\n\t\tallowResponsive,\n\t\tclassName: classFromPreview,\n\t} = getMergedAttributes();\n\tconst className = classnames( classFromPreview, props.className );\n\n\treturn (\n\t\t<>\n\t\t\t<EmbedControls\n\t\t\t\tshowEditButton={ preview && ! cannotEmbed }\n\t\t\t\tthemeSupportsResponsive={ themeSupportsResponsive }\n\t\t\t\tblockSupportsResponsive={ responsive }\n\t\t\t\tallowResponsive={ allowResponsive }\n\t\t\t\ttoggleResponsive={ toggleResponsive }\n\t\t\t\tswitchBackToURLInput={ () => setIsEditingURL( true ) }\n\t\t\t/>\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedPreview\n\t\t\t\t\tpreview={ preview }\n\t\t\t\t\tpreviewable={ previewable }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\turl={ url }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\tcaption={ caption }\n\t\t\t\t\tonCaptionChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t}\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</>\n\t);\n};\n\nexport default EmbedEdit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["createUpgradedEmbedBlock","getClassNames","removeAspectRatioClasses","fallback","getEmbedInfoByProvider","getMergedAttributesWithPreview","EmbedControls","embedContentIcon","EmbedLoading","EmbedPlaceholder","EmbedPreview","classnames","__","_x","sprintf","useState","useEffect","useDispatch","useSelect","useBlockProps","store","coreStore","View","getAuthority","EmbedEdit","props","attributes","providerNameSlug","previewable","responsive","url","attributesUrl","isSelected","onReplace","setAttributes","insertBlocksAfter","onFocus","defaultEmbedInfo","title","icon","setURL","isEditingURL","setIsEditingURL","invalidateResolution","preview","fetching","themeSupportsResponsive","cannotEmbed","select","getEmbedPreview","isPreviewEmbedFallback","isRequestingEmbedPreview","getThemeSupports","embedPreview","previewIsFallback","badEmbedProvider","html","type","undefined","wordpressCantEmbed","data","status","validPreview","getMergedAttributes","toggleResponsive","allowResponsive","className","newAllowResponsive","newURL","replace","URL","host","toString","mergedAttributes","upgradedBlock","blockProps","createElement","label","showEmbedPlaceholder","onSubmit","event","preventDefault","blockClass","value","onChange","target","tryAgain","caption","classFromPreview","Fragment","showEditButton","blockSupportsResponsive","switchBackToURLInput","onCaptionChange"],"sources":["@wordpress/block-library/src/embed/edit.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tcreateUpgradedEmbedBlock,\n\tgetClassNames,\n\tremoveAspectRatioClasses,\n\tfallback,\n\tgetEmbedInfoByProvider,\n\tgetMergedAttributesWithPreview,\n} from './util';\nimport EmbedControls from './embed-controls';\nimport { embedContentIcon } from './icons';\nimport EmbedLoading from './embed-loading';\nimport EmbedPlaceholder from './embed-placeholder';\nimport EmbedPreview from './embed-preview';\n\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useBlockProps } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { View } from '@wordpress/primitives';\nimport { getAuthority } from '@wordpress/url';\n\nconst EmbedEdit = ( props ) => {\n\tconst {\n\t\tattributes: {\n\t\t\tproviderNameSlug,\n\t\t\tpreviewable,\n\t\t\tresponsive,\n\t\t\turl: attributesUrl,\n\t\t},\n\t\tattributes,\n\t\tisSelected,\n\t\tonReplace,\n\t\tsetAttributes,\n\t\tinsertBlocksAfter,\n\t\tonFocus,\n\t} = props;\n\n\tconst defaultEmbedInfo = {\n\t\ttitle: _x( 'Embed', 'block title' ),\n\t\ticon: embedContentIcon,\n\t};\n\tconst { icon, title } =\n\t\tgetEmbedInfoByProvider( providerNameSlug ) || defaultEmbedInfo;\n\n\tconst [ url, setURL ] = useState( attributesUrl );\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst { invalidateResolution } = useDispatch( coreStore );\n\n\tconst { preview, fetching, themeSupportsResponsive, cannotEmbed } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetEmbedPreview,\n\t\t\t\t\tisPreviewEmbedFallback,\n\t\t\t\t\tisRequestingEmbedPreview,\n\t\t\t\t\tgetThemeSupports,\n\t\t\t\t} = select( coreStore );\n\t\t\t\tif ( ! attributesUrl ) {\n\t\t\t\t\treturn { fetching: false, cannotEmbed: false };\n\t\t\t\t}\n\n\t\t\t\tconst embedPreview = getEmbedPreview( attributesUrl );\n\t\t\t\tconst previewIsFallback =\n\t\t\t\t\tisPreviewEmbedFallback( attributesUrl );\n\n\t\t\t\t// The external oEmbed provider does not exist. We got no type info and no html.\n\t\t\t\tconst badEmbedProvider =\n\t\t\t\t\tembedPreview?.html === false &&\n\t\t\t\t\tembedPreview?.type === undefined;\n\t\t\t\t// Some WordPress URLs that can't be embedded will cause the API to return\n\t\t\t\t// a valid JSON response with no HTML and `data.status` set to 404, rather\n\t\t\t\t// than generating a fallback response as other embeds do.\n\t\t\t\tconst wordpressCantEmbed = embedPreview?.data?.status === 404;\n\t\t\t\tconst validPreview =\n\t\t\t\t\t!! embedPreview &&\n\t\t\t\t\t! badEmbedProvider &&\n\t\t\t\t\t! wordpressCantEmbed;\n\t\t\t\treturn {\n\t\t\t\t\tpreview: validPreview ? embedPreview : undefined,\n\t\t\t\t\tfetching: isRequestingEmbedPreview( attributesUrl ),\n\t\t\t\t\tthemeSupportsResponsive:\n\t\t\t\t\t\tgetThemeSupports()[ 'responsive-embeds' ],\n\t\t\t\t\tcannotEmbed: ! validPreview || previewIsFallback,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ attributesUrl ]\n\t\t);\n\n\t/**\n\t * Returns the attributes derived from the preview, merged with the current attributes.\n\t *\n\t * @return {Object} Merged attributes.\n\t */\n\tconst getMergedAttributes = () =>\n\t\tgetMergedAttributesWithPreview(\n\t\t\tattributes,\n\t\t\tpreview,\n\t\t\ttitle,\n\t\t\tresponsive\n\t\t);\n\n\tconst toggleResponsive = () => {\n\t\tconst { allowResponsive, className } = attributes;\n\t\tconst { html } = preview;\n\t\tconst newAllowResponsive = ! allowResponsive;\n\n\t\tsetAttributes( {\n\t\t\tallowResponsive: newAllowResponsive,\n\t\t\tclassName: getClassNames(\n\t\t\t\thtml,\n\t\t\t\tclassName,\n\t\t\t\tresponsive && newAllowResponsive\n\t\t\t),\n\t\t} );\n\t};\n\n\tuseEffect( () => {\n\t\tif ( ! preview?.html || ! cannotEmbed || fetching ) {\n\t\t\treturn;\n\t\t}\n\t\t// At this stage, we're not fetching the preview and know it can't be embedded,\n\t\t// so try removing any trailing slash, and resubmit.\n\t\tconst newURL = attributesUrl.replace( /\\/$/, '' );\n\t\tsetURL( newURL );\n\t\tsetIsEditingURL( false );\n\t\tsetAttributes( { url: newURL } );\n\t}, [ preview?.html, attributesUrl, cannotEmbed, fetching ] );\n\n\t// Try a different provider in case the embed url is not supported.\n\tuseEffect( () => {\n\t\tif ( ! cannotEmbed || fetching || ! url ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Until X provider is supported in WordPress, as a workaround we use Twitter provider.\n\t\tif ( getAuthority( url ) === 'x.com' ) {\n\t\t\tconst newURL = new URL( url );\n\t\t\tnewURL.host = 'twitter.com';\n\t\t\tsetAttributes( { url: newURL.toString() } );\n\t\t}\n\t}, [ url, cannotEmbed, fetching, setAttributes ] );\n\n\t// Handle incoming preview.\n\tuseEffect( () => {\n\t\tif ( preview && ! isEditingURL ) {\n\t\t\t// When obtaining an incoming preview,\n\t\t\t// we set the attributes derived from the preview data.\n\t\t\tconst mergedAttributes = getMergedAttributes();\n\t\t\tsetAttributes( mergedAttributes );\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst upgradedBlock = createUpgradedEmbedBlock(\n\t\t\t\t\tprops,\n\t\t\t\t\tmergedAttributes\n\t\t\t\t);\n\n\t\t\t\tif ( upgradedBlock ) {\n\t\t\t\t\tonReplace( upgradedBlock );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, [ preview, isEditingURL ] );\n\n\tconst blockProps = useBlockProps();\n\n\tif ( fetching ) {\n\t\treturn (\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedLoading />\n\t\t\t</View>\n\t\t);\n\t}\n\n\t// translators: %s: type of embed e.g: \"YouTube\", \"Twitter\", etc. \"Embed\" is used when no specific type exists\n\tconst label = sprintf( __( '%s URL' ), title );\n\n\t// No preview, or we can't embed the current URL, or we've clicked the edit button.\n\tconst showEmbedPlaceholder = ! preview || cannotEmbed || isEditingURL;\n\n\tif ( showEmbedPlaceholder ) {\n\t\treturn (\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedPlaceholder\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\tif ( event ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// If the embed URL was changed, we need to reset the aspect ratio class.\n\t\t\t\t\t\t// To do this we have to remove the existing ratio class so it can be recalculated.\n\t\t\t\t\t\tconst blockClass = removeAspectRatioClasses(\n\t\t\t\t\t\t\tattributes.className\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\tsetAttributes( { url, className: blockClass } );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ url }\n\t\t\t\t\tcannotEmbed={ cannotEmbed }\n\t\t\t\t\tonChange={ ( event ) => setURL( event.target.value ) }\n\t\t\t\t\tfallback={ () => fallback( url, onReplace ) }\n\t\t\t\t\ttryAgain={ () => {\n\t\t\t\t\t\tinvalidateResolution( 'getEmbedPreview', [ url ] );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\t// Even though we set attributes that get derived from the preview,\n\t// we don't access them directly because for the initial render,\n\t// the `setAttributes` call will not have taken effect. If we're\n\t// rendering responsive content, setting the responsive classes\n\t// after the preview has been rendered can result in unwanted\n\t// clipping or scrollbars. The `getAttributesFromPreview` function\n\t// that `getMergedAttributes` uses is memoized so that we're not\n\t// calculating them on every render.\n\tconst {\n\t\tcaption,\n\t\ttype,\n\t\tallowResponsive,\n\t\tclassName: classFromPreview,\n\t} = getMergedAttributes();\n\tconst className = classnames( classFromPreview, props.className );\n\n\treturn (\n\t\t<>\n\t\t\t<EmbedControls\n\t\t\t\tshowEditButton={ preview && ! cannotEmbed }\n\t\t\t\tthemeSupportsResponsive={ themeSupportsResponsive }\n\t\t\t\tblockSupportsResponsive={ responsive }\n\t\t\t\tallowResponsive={ allowResponsive }\n\t\t\t\ttoggleResponsive={ toggleResponsive }\n\t\t\t\tswitchBackToURLInput={ () => setIsEditingURL( true ) }\n\t\t\t/>\n\t\t\t<View { ...blockProps }>\n\t\t\t\t<EmbedPreview\n\t\t\t\t\tpreview={ preview }\n\t\t\t\t\tpreviewable={ previewable }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\turl={ url }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\tcaption={ caption }\n\t\t\t\t\tonCaptionChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t}\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</>\n\t);\n};\n\nexport default EmbedEdit;\n"],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ import { useDispatch, useSelect } from '@wordpress/data';
|
|
|
24
24
|
import { useBlockProps, store as blockEditorStore } from '@wordpress/block-editor';
|
|
25
25
|
import { store as coreStore } from '@wordpress/core-data';
|
|
26
26
|
import { View } from '@wordpress/primitives';
|
|
27
|
+
import { getAuthority } from '@wordpress/url';
|
|
27
28
|
|
|
28
29
|
// The inline preview feature will be released progressible, for this reason
|
|
29
30
|
// the embed will only be considered previewable for the following providers list.
|
|
@@ -138,6 +139,22 @@ const EmbedEdit = props => {
|
|
|
138
139
|
});
|
|
139
140
|
}, [preview?.html, url, cannotEmbed, fetching]);
|
|
140
141
|
|
|
142
|
+
// Try a different provider in case the embed url is not supported.
|
|
143
|
+
useEffect(() => {
|
|
144
|
+
if (!cannotEmbed || fetching || !url) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
// Until X provider is supported in WordPress, as a workaround we use Twitter provider.
|
|
149
|
+
if (getAuthority(url) === 'x.com') {
|
|
150
|
+
const newURL = new URL(url);
|
|
151
|
+
newURL.host = 'twitter.com';
|
|
152
|
+
setAttributes({
|
|
153
|
+
url: newURL.toString()
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
}, [url, cannotEmbed, fetching, setAttributes]);
|
|
157
|
+
|
|
141
158
|
// Handle incoming preview.
|
|
142
159
|
useEffect(() => {
|
|
143
160
|
if (preview && !isEditingURL) {
|