@wordpress/block-library 7.3.0 → 7.3.3

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.
Files changed (140) hide show
  1. package/build/audio/edit.js +1 -1
  2. package/build/audio/edit.js.map +1 -1
  3. package/build/comment-template/edit.js +3 -1
  4. package/build/comment-template/edit.js.map +1 -1
  5. package/build/comment-template/hooks.js +14 -4
  6. package/build/comment-template/hooks.js.map +1 -1
  7. package/build/comments-pagination/edit.js +18 -1
  8. package/build/comments-pagination/edit.js.map +1 -1
  9. package/build/comments-query-loop/edit.js +2 -2
  10. package/build/comments-query-loop/edit.js.map +1 -1
  11. package/build/comments-title/edit.js +149 -0
  12. package/build/comments-title/edit.js.map +1 -0
  13. package/build/comments-title/index.js +101 -0
  14. package/build/comments-title/index.js.map +1 -0
  15. package/build/cover/transforms.js +33 -32
  16. package/build/cover/transforms.js.map +1 -1
  17. package/build/index.js +6 -4
  18. package/build/index.js.map +1 -1
  19. package/build/list/index.js +13 -2
  20. package/build/list/index.js.map +1 -1
  21. package/build/navigation/edit/index.js +17 -1
  22. package/build/navigation/edit/index.js.map +1 -1
  23. package/build/navigation/edit/navigation-menu-selector.js +7 -2
  24. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  25. package/build/post-comments/edit.js +141 -35
  26. package/build/post-comments/edit.js.map +1 -1
  27. package/build/post-comments/index.js +6 -4
  28. package/build/post-comments/index.js.map +1 -1
  29. package/build/post-comments-form/edit.js +22 -1
  30. package/build/post-comments-form/edit.js.map +1 -1
  31. package/build/post-comments-form/index.js +1 -0
  32. package/build/post-comments-form/index.js.map +1 -1
  33. package/build/post-featured-image/edit.js +19 -7
  34. package/build/post-featured-image/edit.js.map +1 -1
  35. package/build/query/edit/index.js +84 -22
  36. package/build/query/edit/index.js.map +1 -1
  37. package/build/query/edit/query-placeholder.js +7 -14
  38. package/build/query/edit/query-placeholder.js.map +1 -1
  39. package/build/query/edit/query-toolbar.js +6 -1
  40. package/build/query/edit/query-toolbar.js.map +1 -1
  41. package/build/query-no-results/edit.js +1 -1
  42. package/build/query-no-results/edit.js.map +1 -1
  43. package/build/quote/index.js +13 -2
  44. package/build/quote/index.js.map +1 -1
  45. package/build-module/audio/edit.js +1 -1
  46. package/build-module/audio/edit.js.map +1 -1
  47. package/build-module/comment-template/edit.js +3 -1
  48. package/build-module/comment-template/edit.js.map +1 -1
  49. package/build-module/comment-template/hooks.js +14 -4
  50. package/build-module/comment-template/hooks.js.map +1 -1
  51. package/build-module/comments-pagination/edit.js +19 -2
  52. package/build-module/comments-pagination/edit.js.map +1 -1
  53. package/build-module/comments-query-loop/edit.js +2 -2
  54. package/build-module/comments-query-loop/edit.js.map +1 -1
  55. package/build-module/comments-title/edit.js +133 -0
  56. package/build-module/comments-title/edit.js.map +1 -0
  57. package/build-module/comments-title/index.js +88 -0
  58. package/build-module/comments-title/index.js.map +1 -0
  59. package/build-module/cover/transforms.js +33 -32
  60. package/build-module/cover/transforms.js.map +1 -1
  61. package/build-module/index.js +5 -4
  62. package/build-module/index.js.map +1 -1
  63. package/build-module/list/index.js +9 -3
  64. package/build-module/list/index.js.map +1 -1
  65. package/build-module/navigation/edit/index.js +17 -1
  66. package/build-module/navigation/edit/index.js.map +1 -1
  67. package/build-module/navigation/edit/navigation-menu-selector.js +6 -2
  68. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  69. package/build-module/post-comments/edit.js +143 -38
  70. package/build-module/post-comments/edit.js.map +1 -1
  71. package/build-module/post-comments/index.js +6 -4
  72. package/build-module/post-comments/index.js.map +1 -1
  73. package/build-module/post-comments-form/edit.js +21 -1
  74. package/build-module/post-comments-form/edit.js.map +1 -1
  75. package/build-module/post-comments-form/index.js +1 -0
  76. package/build-module/post-comments-form/index.js.map +1 -1
  77. package/build-module/post-featured-image/edit.js +19 -7
  78. package/build-module/post-featured-image/edit.js.map +1 -1
  79. package/build-module/query/edit/index.js +87 -26
  80. package/build-module/query/edit/index.js.map +1 -1
  81. package/build-module/query/edit/query-placeholder.js +8 -15
  82. package/build-module/query/edit/query-placeholder.js.map +1 -1
  83. package/build-module/query/edit/query-toolbar.js +6 -1
  84. package/build-module/query/edit/query-toolbar.js.map +1 -1
  85. package/build-module/query-no-results/edit.js +1 -1
  86. package/build-module/query-no-results/edit.js.map +1 -1
  87. package/build-module/quote/index.js +9 -3
  88. package/build-module/quote/index.js.map +1 -1
  89. package/build-style/comments-title/editor-rtl.css +79 -0
  90. package/build-style/comments-title/editor.css +79 -0
  91. package/build-style/editor-rtl.css +51 -0
  92. package/build-style/editor.css +51 -0
  93. package/build-style/post-comments/editor-rtl.css +79 -0
  94. package/build-style/post-comments/editor.css +79 -0
  95. package/build-style/post-comments/style-rtl.css +1 -3
  96. package/build-style/post-comments/style.css +1 -3
  97. package/build-style/post-comments-form/editor-rtl.css +79 -0
  98. package/build-style/post-comments-form/editor.css +79 -0
  99. package/build-style/post-comments-form/style-rtl.css +9 -0
  100. package/build-style/post-comments-form/style.css +9 -0
  101. package/build-style/query/editor-rtl.css +39 -0
  102. package/build-style/query/editor.css +39 -0
  103. package/build-style/style-rtl.css +10 -3
  104. package/build-style/style.css +10 -3
  105. package/package.json +28 -28
  106. package/src/audio/edit.js +1 -1
  107. package/src/comment-edit-link/index.php +1 -4
  108. package/src/comment-reply-link/index.php +1 -4
  109. package/src/comment-template/edit.js +5 -2
  110. package/src/comment-template/hooks.js +15 -2
  111. package/src/comment-template/index.php +23 -2
  112. package/src/comments-pagination/edit.js +23 -0
  113. package/src/comments-query-loop/edit.js +2 -0
  114. package/src/comments-title/block.json +70 -0
  115. package/src/comments-title/edit.js +197 -0
  116. package/src/comments-title/editor.scss +4 -0
  117. package/src/comments-title/index.js +18 -0
  118. package/src/comments-title/index.php +68 -0
  119. package/src/cover/transforms.js +51 -28
  120. package/src/editor.scss +3 -0
  121. package/src/index.js +8 -2
  122. package/src/list/index.js +7 -3
  123. package/src/navigation/edit/index.js +24 -0
  124. package/src/navigation/edit/navigation-menu-selector.js +15 -9
  125. package/src/post-comments/block.json +6 -4
  126. package/src/post-comments/edit.js +204 -44
  127. package/src/post-comments/editor.scss +3 -0
  128. package/src/post-comments/style.scss +1 -5
  129. package/src/post-comments-form/block.json +1 -0
  130. package/src/post-comments-form/edit.js +39 -2
  131. package/src/post-comments-form/editor.scss +3 -0
  132. package/src/post-comments-form/index.php +12 -4
  133. package/src/post-comments-form/style.scss +11 -0
  134. package/src/post-featured-image/edit.js +24 -12
  135. package/src/query/edit/index.js +125 -26
  136. package/src/query/edit/query-placeholder.js +3 -13
  137. package/src/query/edit/query-toolbar.js +6 -0
  138. package/src/query/editor.scss +38 -0
  139. package/src/query-no-results/edit.js +1 -1
  140. package/src/quote/index.js +7 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["classnames","noop","useState","useEffect","useRef","useCallback","Platform","InspectorControls","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","store","blockEditorStore","withColors","PanelColorSettings","ContrastChecker","getColorClassName","Warning","EntityProvider","useEntityProp","useDispatch","useSelect","useRegistry","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToolbarGroup","Button","Spinner","__","sprintf","speak","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuSelector","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","CREATE_NAVIGATION_MENU_ERROR","CREATE_NAVIGATION_MENU_PENDING","CREATE_NAVIGATION_MENU_SUCCESS","EMPTY_ARRAY","getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","flexWrap","hasIcon","areaMenu","setAreaMenu","process","env","IS_GUTENBERG_PLUGIN","navigationAreaMenu","undefined","ref","registry","setRef","postId","hasAlreadyRendered","RecursionProvider","showNavigationMenuDeleteNotice","name","showNavigationMenuCreateNotice","hideNavigationMenuCreateNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isCreatingNavigationMenu","id","selectBlock","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","hasSubmenus","select","getBlock","getBlocks","hasSelectedInnerBlock","_uncontrolledInnerBlocks","innerBlocks","_hasUncontrolledInnerBlocks","length","_controlledInnerBlocks","find","block","replaceInnerBlocks","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","navigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navRef","isDraftNavigationMenu","convert","classicMenuConversionStatus","classicMenuConversionError","classicMenuConversionResult","isConvertingClassicMenu","TagName","isPlaceholder","isEntityAvailable","isLoading","textDecoration","style","typography","blockProps","class","slug","overlayClassnames","overlayStyles","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","showClassicMenuConversionErrorNotice","hideClassicMenuConversionErrorNotice","handleUpdateMenu","menuId","current","subMenuElement","querySelector","showCantEditNotice","hideCantEditNotice","message","showCantCreateNotice","hideCantCreateNotice","handleSelectNavigation","navPostOrClassicMenu","isClassicMenu","hasOwnProperty","resetToEmptyBlock","batch","hasUnsavedBlocks","post","PlaceholderComponent","isResponsive","overlayMenuPreviewClasses","open","onChange","label","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\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 NavigationMenuSelector from './navigation-menu-selector';\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 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, {\n\tCREATE_NAVIGATION_MENU_ERROR,\n\tCREATE_NAVIGATION_MENU_PENDING,\n\tCREATE_NAVIGATION_MENU_SUCCESS,\n} from './use-create-navigation-menu';\n\nconst EMPTY_ARRAY = [];\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\tcontext: { navigationArea },\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\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} = attributes;\n\n\tlet areaMenu,\n\t\tsetAreaMenu = noop;\n\t// Navigation areas are deprecated and on their way out. Let's not perform\n\t// the request unless we're in an environment where the endpoint exists.\n\tif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\t\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\t\t[ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t\t'root',\n\t\t\t'navigationArea',\n\t\t\t'navigation',\n\t\t\tnavigationArea\n\t\t);\n\t}\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst registry = useRegistry();\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tuseNavigationEntities();\n\n\tconst [ showNavigationMenuDeleteNotice ] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/delete',\n\t} );\n\n\tconst [\n\t\tshowNavigationMenuCreateNotice,\n\t\thideNavigationMenuCreateNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/create',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst isCreatingNavigationMenu =\n\t\tcreateNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING;\n\n\tuseEffect( () => {\n\t\thideNavigationMenuCreateNotice();\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_SUCCESS ) {\n\t\t\tsetRef( createNavigationMenuPost.id );\n\t\t\tselectBlock( clientId );\n\n\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_ERROR ) {\n\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenu,\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost,\n\t] );\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\thasSubmenus,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\t// This relies on the fact that `getBlock` won't return controlled\n\t\t\t// inner blocks, while `getBlocks` does. It might be more stable to\n\t\t\t// introduce a selector like `getUncontrolledInnerBlocks`, just in\n\t\t\t// case `getBlock` is fixed.\n\t\t\tconst _uncontrolledInnerBlocks = getBlock( clientId ).innerBlocks;\n\t\t\tconst _hasUncontrolledInnerBlocks = !! _uncontrolledInnerBlocks?.length;\n\t\t\tconst _controlledInnerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? EMPTY_ARRAY\n\t\t\t\t: getBlocks( clientId );\n\t\t\tconst innerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? _uncontrolledInnerBlocks\n\t\t\t\t: _controlledInnerBlocks;\n\n\t\t\treturn {\n\t\t\t\thasSubmenus: !! innerBlocks.find(\n\t\t\t\t\t( block ) => block.name === 'core/navigation-submenu'\n\t\t\t\t),\n\t\t\t\thasUncontrolledInnerBlocks: _hasUncontrolledInnerBlocks,\n\t\t\t\tuncontrolledInnerBlocks: _uncontrolledInnerBlocks,\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = !! navigationArea && ! ref;\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\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\t// Attempt to retrieve and prioritize any existing navigation menu unless\n\t// a specific ref is allocated or the user is explicitly creating a new menu. The aim is\n\t// for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! navigationMenus?.length ||\n\t\t\tnavigationMenus?.length > 1\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetRef( navigationMenus[ 0 ].id );\n\t}, [ navigationMenus ] );\n\n\tconst navRef = useRef();\n\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst {\n\t\tconvert,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t\tvalue: classicMenuConversionResult,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\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\t// - (legacy) there is a Navigation Area without a ref attribute pointing to a Navigation Post.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\t( ! hasUncontrolledInnerBlocks || isWithinUnassignedArea );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\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 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': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\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 [\n\t\tshowClassicMenuConversionErrorNotice,\n\t\thideClassicMenuConversionErrorNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/classic-menu-conversion/error',\n\t} );\n\n\tfunction handleUpdateMenu( menuId ) {\n\t\tsetRef( menuId );\n\t\tselectBlock( clientId );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif (\n\t\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS &&\n\t\t\tclassicMenuConversionResult\n\t\t) {\n\t\t\thandleUpdateMenu( classicMenuConversionResult?.id );\n\t\t\thideClassicMenuConversionErrorNotice();\n\t\t\tspeak( __( 'Classic menu imported successfully.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionErrorNotice( classicMenuConversionError );\n\t\t\tspeak( __( 'Classic menu import failed.' ) );\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionResult,\n\t\tclassicMenuConversionError,\n\t] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\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\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\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\n\tconst [ showCantEditNotice, hideCantEditNotice ] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t\tmessage: __(\n\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t),\n\t} );\n\n\tconst [ showCantCreateNotice, hideCantCreateNotice ] = useNavigationNotice(\n\t\t{\n\t\t\tname: 'block-library/core/navigation/permissions/create',\n\t\t\tmessage: __(\n\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t),\n\t\t}\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideCantEditNotice();\n\t\t\thideCantCreateNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowCantEditNotice();\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\tshowCantCreateNotice();\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] );\n\n\tconst handleSelectNavigation = useCallback(\n\t\t( navPostOrClassicMenu ) => {\n\t\t\tif ( ! navPostOrClassicMenu ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst isClassicMenu = navPostOrClassicMenu.hasOwnProperty(\n\t\t\t\t'auto_add'\n\t\t\t);\n\n\t\t\tif ( isClassicMenu ) {\n\t\t\t\tconvert( navPostOrClassicMenu.id, navPostOrClassicMenu.name );\n\t\t\t} else {\n\t\t\t\thandleUpdateMenu( navPostOrClassicMenu.id );\n\t\t\t}\n\t\t},\n\t\t[ convert, handleUpdateMenu ]\n\t);\n\n\tconst resetToEmptyBlock = useCallback( () => {\n\t\tregistry.batch( () => {\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( 0 );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tref: undefined,\n\t\t\t} );\n\t\t\tif ( ! ref ) {\n\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t}\n\t\t} );\n\t}, [ clientId, ref ] );\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\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\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\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\tstyles={ overlayStyles }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t\thasSavedUnsavedInnerBlocks={\n\t\t\t\t\t\t\thasSavedUnsavedInnerBlocks\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\t\t\t// Set some state used as a guard to prevent the creation of multiple posts.\n\t\t\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\t\t\tsetRef( post.id );\n\n\t\t\t\t\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t\t\t\t\t__( `New Navigation Menu created.` )\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</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<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button onClick={ resetToEmptyBlock } variant=\"link\">\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</div>\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\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tif ( isPlaceholder ) {\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\tonFinish={ handleSelectNavigation }\n\t\t\t\t\tonCreateEmpty={ () => createNavigationMenu( '', [] ) }\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>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup className=\"wp-block-navigation__toolbar-menu-selector\">\n\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\tonSelect={ handleSelectNavigation }\n\t\t\t\t\t\t\t\tonCreateNew={ resetToEmptyBlock }\n\t\t\t\t\t\t\t\t/* translators: %s: The name of a menu. */\n\t\t\t\t\t\t\t\tactionLabel={ __( \"Switch to '%s'\" ) }\n\t\t\t\t\t\t\t\tshowManageActions\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t{ isResponsive && (\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>\n\t\t\t\t\t\t\t\t\t{ hasIcon && <OverlayMenuIcon /> }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\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) }\n\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { hasIcon: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tchecked={ hasIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\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\t\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\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\t\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\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\t\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"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\tresetToEmptyBlock();\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuDeleteNotice(\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</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<Spinner className=\"wp-block-navigation__loading-indicator\" />\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 { ...blockProps }>\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\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\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\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\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"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["classnames","noop","useState","useEffect","useRef","useCallback","Platform","InspectorControls","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","store","blockEditorStore","withColors","PanelColorSettings","ContrastChecker","getColorClassName","Warning","EntityProvider","useEntityProp","useDispatch","useSelect","useRegistry","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToolbarGroup","Button","Spinner","__","sprintf","speak","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuSelector","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","CREATE_NAVIGATION_MENU_ERROR","CREATE_NAVIGATION_MENU_PENDING","CREATE_NAVIGATION_MENU_SUCCESS","EMPTY_ARRAY","getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","flexWrap","hasIcon","areaMenu","setAreaMenu","process","env","IS_GUTENBERG_PLUGIN","navigationAreaMenu","undefined","ref","registry","setRef","postId","hasAlreadyRendered","RecursionProvider","showNavigationMenuDeleteNotice","name","showNavigationMenuCreateNotice","hideNavigationMenuCreateNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isCreatingNavigationMenu","id","selectBlock","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","hasSubmenus","select","getBlock","getBlocks","hasSelectedInnerBlock","_uncontrolledInnerBlocks","innerBlocks","_hasUncontrolledInnerBlocks","length","_controlledInnerBlocks","find","block","replaceInnerBlocks","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","navigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navRef","isDraftNavigationMenu","convert","classicMenuConversionStatus","classicMenuConversionError","classicMenuConversionResult","isConvertingClassicMenu","TagName","isPlaceholder","isEntityAvailable","isLoading","textDecoration","style","typography","blockProps","class","slug","overlayClassnames","overlayStyles","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","showClassicMenuConversionErrorNotice","hideClassicMenuConversionErrorNotice","handleUpdateMenu","menuId","current","subMenuElement","querySelector","showCantEditNotice","hideCantEditNotice","message","showCantCreateNotice","hideCantCreateNotice","navigationSelectorRef","shouldFocusNavigationSelector","setShouldFocusNavigationSelector","handleSelectNavigation","navPostOrClassicMenu","isClassicMenu","hasOwnProperty","focus","resetToEmptyBlock","batch","hasUnsavedBlocks","post","PlaceholderComponent","isResponsive","overlayMenuPreviewClasses","open","onChange","label","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\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 NavigationMenuSelector from './navigation-menu-selector';\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 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, {\n\tCREATE_NAVIGATION_MENU_ERROR,\n\tCREATE_NAVIGATION_MENU_PENDING,\n\tCREATE_NAVIGATION_MENU_SUCCESS,\n} from './use-create-navigation-menu';\n\nconst EMPTY_ARRAY = [];\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\tcontext: { navigationArea },\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\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} = attributes;\n\n\tlet areaMenu,\n\t\tsetAreaMenu = noop;\n\t// Navigation areas are deprecated and on their way out. Let's not perform\n\t// the request unless we're in an environment where the endpoint exists.\n\tif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\t\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\t\t[ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t\t'root',\n\t\t\t'navigationArea',\n\t\t\t'navigation',\n\t\t\tnavigationArea\n\t\t);\n\t}\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst registry = useRegistry();\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tuseNavigationEntities();\n\n\tconst [ showNavigationMenuDeleteNotice ] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/delete',\n\t} );\n\n\tconst [\n\t\tshowNavigationMenuCreateNotice,\n\t\thideNavigationMenuCreateNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/create',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst isCreatingNavigationMenu =\n\t\tcreateNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING;\n\n\tuseEffect( () => {\n\t\thideNavigationMenuCreateNotice();\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_SUCCESS ) {\n\t\t\tsetRef( createNavigationMenuPost.id );\n\t\t\tselectBlock( clientId );\n\n\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_ERROR ) {\n\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenu,\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost,\n\t] );\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\thasSubmenus,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\t// This relies on the fact that `getBlock` won't return controlled\n\t\t\t// inner blocks, while `getBlocks` does. It might be more stable to\n\t\t\t// introduce a selector like `getUncontrolledInnerBlocks`, just in\n\t\t\t// case `getBlock` is fixed.\n\t\t\tconst _uncontrolledInnerBlocks = getBlock( clientId ).innerBlocks;\n\t\t\tconst _hasUncontrolledInnerBlocks = !! _uncontrolledInnerBlocks?.length;\n\t\t\tconst _controlledInnerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? EMPTY_ARRAY\n\t\t\t\t: getBlocks( clientId );\n\t\t\tconst innerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? _uncontrolledInnerBlocks\n\t\t\t\t: _controlledInnerBlocks;\n\n\t\t\treturn {\n\t\t\t\thasSubmenus: !! innerBlocks.find(\n\t\t\t\t\t( block ) => block.name === 'core/navigation-submenu'\n\t\t\t\t),\n\t\t\t\thasUncontrolledInnerBlocks: _hasUncontrolledInnerBlocks,\n\t\t\t\tuncontrolledInnerBlocks: _uncontrolledInnerBlocks,\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = !! navigationArea && ! ref;\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\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\t// Attempt to retrieve and prioritize any existing navigation menu unless\n\t// a specific ref is allocated or the user is explicitly creating a new menu. The aim is\n\t// for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! navigationMenus?.length ||\n\t\t\tnavigationMenus?.length > 1\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetRef( navigationMenus[ 0 ].id );\n\t}, [ navigationMenus ] );\n\n\tconst navRef = useRef();\n\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst {\n\t\tconvert,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t\tvalue: classicMenuConversionResult,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\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\t// - (legacy) there is a Navigation Area without a ref attribute pointing to a Navigation Post.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\t( ! hasUncontrolledInnerBlocks || isWithinUnassignedArea );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\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 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': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\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 [\n\t\tshowClassicMenuConversionErrorNotice,\n\t\thideClassicMenuConversionErrorNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/classic-menu-conversion/error',\n\t} );\n\n\tfunction handleUpdateMenu( menuId ) {\n\t\tsetRef( menuId );\n\t\tselectBlock( clientId );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif (\n\t\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS &&\n\t\t\tclassicMenuConversionResult\n\t\t) {\n\t\t\thandleUpdateMenu( classicMenuConversionResult?.id );\n\t\t\thideClassicMenuConversionErrorNotice();\n\t\t\tspeak( __( 'Classic menu imported successfully.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionErrorNotice( classicMenuConversionError );\n\t\t\tspeak( __( 'Classic menu import failed.' ) );\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionResult,\n\t\tclassicMenuConversionError,\n\t] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\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\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\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\n\tconst [ showCantEditNotice, hideCantEditNotice ] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t\tmessage: __(\n\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t),\n\t} );\n\n\tconst [ showCantCreateNotice, hideCantCreateNotice ] = useNavigationNotice(\n\t\t{\n\t\t\tname: 'block-library/core/navigation/permissions/create',\n\t\t\tmessage: __(\n\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t),\n\t\t}\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideCantEditNotice();\n\t\t\thideCantCreateNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowCantEditNotice();\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\tshowCantCreateNotice();\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] );\n\n\tconst navigationSelectorRef = useRef();\n\tconst [\n\t\tshouldFocusNavigationSelector,\n\t\tsetShouldFocusNavigationSelector,\n\t] = useState( false );\n\tconst handleSelectNavigation = useCallback(\n\t\t( navPostOrClassicMenu ) => {\n\t\t\tif ( ! navPostOrClassicMenu ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst isClassicMenu = navPostOrClassicMenu.hasOwnProperty(\n\t\t\t\t'auto_add'\n\t\t\t);\n\n\t\t\tif ( isClassicMenu ) {\n\t\t\t\tconvert( navPostOrClassicMenu.id, navPostOrClassicMenu.name );\n\t\t\t} else {\n\t\t\t\thandleUpdateMenu( navPostOrClassicMenu.id );\n\t\t\t}\n\t\t\tsetShouldFocusNavigationSelector( true );\n\t\t},\n\t\t[ convert, handleUpdateMenu ]\n\t);\n\n\t// Focus support after menu selection.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisDraftNavigationMenu ||\n\t\t\t! isEntityAvailable ||\n\t\t\t! shouldFocusNavigationSelector\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tnavigationSelectorRef?.current?.focus();\n\t\tsetShouldFocusNavigationSelector( false );\n\t}, [\n\t\tisDraftNavigationMenu,\n\t\tisEntityAvailable,\n\t\tshouldFocusNavigationSelector,\n\t] );\n\n\tconst resetToEmptyBlock = useCallback( () => {\n\t\tregistry.batch( () => {\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( 0 );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tref: undefined,\n\t\t\t} );\n\t\t\tif ( ! ref ) {\n\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t}\n\t\t} );\n\t}, [ clientId, ref ] );\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\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\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\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\tstyles={ overlayStyles }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t\thasSavedUnsavedInnerBlocks={\n\t\t\t\t\t\t\thasSavedUnsavedInnerBlocks\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\t\t\t// Set some state used as a guard to prevent the creation of multiple posts.\n\t\t\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\t\t\tsetRef( post.id );\n\n\t\t\t\t\t\t\tshowNavigationMenuCreateNotice(\n\t\t\t\t\t\t\t\t__( `New Navigation Menu created.` )\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</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<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button onClick={ resetToEmptyBlock } variant=\"link\">\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</div>\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\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tif ( isPlaceholder ) {\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\tonFinish={ handleSelectNavigation }\n\t\t\t\t\tonCreateEmpty={ () => createNavigationMenu( '', [] ) }\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>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup className=\"wp-block-navigation__toolbar-menu-selector\">\n\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\tref={ navigationSelectorRef }\n\t\t\t\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\tonSelect={ handleSelectNavigation }\n\t\t\t\t\t\t\t\tonCreateNew={ resetToEmptyBlock }\n\t\t\t\t\t\t\t\t/* translators: %s: The name of a menu. */\n\t\t\t\t\t\t\t\tactionLabel={ __( \"Switch to '%s'\" ) }\n\t\t\t\t\t\t\t\tshowManageActions\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t{ isResponsive && (\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>\n\t\t\t\t\t\t\t\t\t{ hasIcon && <OverlayMenuIcon /> }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\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) }\n\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { hasIcon: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tchecked={ hasIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\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\t\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\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\t\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\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\t\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"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\tresetToEmptyBlock();\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuDeleteNotice(\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</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<Spinner className=\"wp-block-navigation__loading-indicator\" />\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 { ...blockProps }>\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\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\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\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\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"]}
@@ -7,14 +7,15 @@ import { MenuGroup, MenuItem, MenuItemsChoice, ToolbarDropdownMenu } from '@word
7
7
  import { __, sprintf } from '@wordpress/i18n';
8
8
  import { decodeEntities } from '@wordpress/html-entities';
9
9
  import { addQueryArgs } from '@wordpress/url';
10
- import { useCallback, useMemo } from '@wordpress/element';
10
+ import { forwardRef, useCallback, useMemo } from '@wordpress/element';
11
11
  /**
12
12
  * Internal dependencies
13
13
  */
14
14
 
15
15
  import useNavigationMenu from '../use-navigation-menu';
16
16
  import useNavigationEntities from '../use-navigation-entities';
17
- export default function NavigationMenuSelector(_ref) {
17
+
18
+ function NavigationMenuSelector(_ref, forwardedRef) {
18
19
  let {
19
20
  currentMenuId,
20
21
  onSelect,
@@ -76,6 +77,7 @@ export default function NavigationMenuSelector(_ref) {
76
77
  }
77
78
 
78
79
  return createElement(ToolbarDropdownMenu, {
80
+ ref: forwardedRef,
79
81
  label: __('Select Menu'),
80
82
  text: __('Select Menu'),
81
83
  icon: null,
@@ -110,4 +112,6 @@ export default function NavigationMenuSelector(_ref) {
110
112
  }, __('Manage menus'))));
111
113
  });
112
114
  }
115
+
116
+ export default forwardRef(NavigationMenuSelector);
113
117
  //# sourceMappingURL=navigation-menu-selector.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["MenuGroup","MenuItem","MenuItemsChoice","ToolbarDropdownMenu","__","sprintf","decodeEntities","addQueryArgs","useCallback","useMemo","useNavigationMenu","useNavigationEntities","NavigationMenuSelector","currentMenuId","onSelect","onCreateNew","showManageActions","actionLabel","toggleProps","createActionLabel","menus","classicMenus","navigationMenus","canUserCreateNavigationMenu","canUserUpdateNavigationMenu","canSwitchNavigationMenu","handleSelect","_onClose","selectedId","find","post","id","handleSelectClassic","menu","menuChoices","map","title","label","rendered","value","ariaLabel","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","hasManagePermissions","showSelectMenus","onClose","name","post_type"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nexport default function NavigationMenuSelector( {\n\tcurrentMenuId,\n\tonSelect,\n\tonCreateNew,\n\tshowManageActions = false,\n\tactionLabel,\n\ttoggleProps = {},\n} ) {\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\tcanUserCreateNavigationMenu,\n\t\tcanUserUpdateNavigationMenu,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst handleSelect = useCallback(\n\t\t( _onClose ) => ( selectedId ) => {\n\t\t\t_onClose();\n\t\t\tonSelect(\n\t\t\t\tnavigationMenus?.find( ( post ) => post.id === selectedId )\n\t\t\t);\n\t\t},\n\t\t[ navigationMenus ]\n\t);\n\n\tconst handleSelectClassic = useCallback(\n\t\t( _onClose, menu ) => () => {\n\t\t\t_onClose();\n\t\t\tonSelect( menu );\n\t\t},\n\t\t[]\n\t);\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title } ) => {\n\t\t\t\tconst label = decodeEntities( title.rendered );\n\t\t\t\treturn {\n\t\t\t\t\tvalue: id,\n\t\t\t\t\tlabel,\n\t\t\t\t\tariaLabel: sprintf( actionLabel, label ),\n\t\t\t\t};\n\t\t\t} ) || []\n\t\t);\n\t}, [ navigationMenus ] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenu;\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\t// Show the selector if:\n\t// - has switch or create permissions and there are block or classic menus.\n\t// - user has create or update permisisons and component should show the menu actions.\n\tconst showSelectMenus =\n\t\t( ( canSwitchNavigationMenu || canUserCreateNavigationMenu ) &&\n\t\t\t( hasNavigationMenus || hasClassicMenus ) ) ||\n\t\t( hasManagePermissions && showManageActions );\n\n\tif ( ! showSelectMenus ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarDropdownMenu\n\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\ticon={ null }\n\t\t\ttoggleProps={ toggleProps }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ showNavigationMenus && hasNavigationMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Menus' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tvalue={ currentMenuId }\n\t\t\t\t\t\t\t\tonSelect={ handleSelect( onClose ) }\n\t\t\t\t\t\t\t\tchoices={ menuChoices }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showClassicMenus && hasClassicMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Classic Menus' ) }>\n\t\t\t\t\t\t\t{ classicMenus?.map( ( menu ) => {\n\t\t\t\t\t\t\t\tconst label = decodeEntities( menu.name );\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tonClick={ handleSelectClassic(\n\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\tmenu\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t\t\t\tcreateActionLabel,\n\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ showManageActions && hasManagePermissions && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ onCreateNew }>\n\t\t\t\t\t\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\thref={ addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\t\t\tpost_type: 'wp_navigation',\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Manage menus' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</ToolbarDropdownMenu>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["MenuGroup","MenuItem","MenuItemsChoice","ToolbarDropdownMenu","__","sprintf","decodeEntities","addQueryArgs","forwardRef","useCallback","useMemo","useNavigationMenu","useNavigationEntities","NavigationMenuSelector","forwardedRef","currentMenuId","onSelect","onCreateNew","showManageActions","actionLabel","toggleProps","createActionLabel","menus","classicMenus","navigationMenus","canUserCreateNavigationMenu","canUserUpdateNavigationMenu","canSwitchNavigationMenu","handleSelect","_onClose","selectedId","find","post","id","handleSelectClassic","menu","menuChoices","map","title","label","rendered","value","ariaLabel","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","hasManagePermissions","showSelectMenus","onClose","name","post_type"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { addQueryArgs } from '@wordpress/url';\nimport { forwardRef, useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nfunction NavigationMenuSelector(\n\t{\n\t\tcurrentMenuId,\n\t\tonSelect,\n\t\tonCreateNew,\n\t\tshowManageActions = false,\n\t\tactionLabel,\n\t\ttoggleProps = {},\n\t},\n\tforwardedRef\n) {\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\tcanUserCreateNavigationMenu,\n\t\tcanUserUpdateNavigationMenu,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst handleSelect = useCallback(\n\t\t( _onClose ) => ( selectedId ) => {\n\t\t\t_onClose();\n\t\t\tonSelect(\n\t\t\t\tnavigationMenus?.find( ( post ) => post.id === selectedId )\n\t\t\t);\n\t\t},\n\t\t[ navigationMenus ]\n\t);\n\n\tconst handleSelectClassic = useCallback(\n\t\t( _onClose, menu ) => () => {\n\t\t\t_onClose();\n\t\t\tonSelect( menu );\n\t\t},\n\t\t[]\n\t);\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title } ) => {\n\t\t\t\tconst label = decodeEntities( title.rendered );\n\t\t\t\treturn {\n\t\t\t\t\tvalue: id,\n\t\t\t\t\tlabel,\n\t\t\t\t\tariaLabel: sprintf( actionLabel, label ),\n\t\t\t\t};\n\t\t\t} ) || []\n\t\t);\n\t}, [ navigationMenus ] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenu;\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\t// Show the selector if:\n\t// - has switch or create permissions and there are block or classic menus.\n\t// - user has create or update permisisons and component should show the menu actions.\n\tconst showSelectMenus =\n\t\t( ( canSwitchNavigationMenu || canUserCreateNavigationMenu ) &&\n\t\t\t( hasNavigationMenus || hasClassicMenus ) ) ||\n\t\t( hasManagePermissions && showManageActions );\n\n\tif ( ! showSelectMenus ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarDropdownMenu\n\t\t\tref={ forwardedRef }\n\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\ticon={ null }\n\t\t\ttoggleProps={ toggleProps }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ showNavigationMenus && hasNavigationMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Menus' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tvalue={ currentMenuId }\n\t\t\t\t\t\t\t\tonSelect={ handleSelect( onClose ) }\n\t\t\t\t\t\t\t\tchoices={ menuChoices }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showClassicMenus && hasClassicMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Classic Menus' ) }>\n\t\t\t\t\t\t\t{ classicMenus?.map( ( menu ) => {\n\t\t\t\t\t\t\t\tconst label = decodeEntities( menu.name );\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tonClick={ handleSelectClassic(\n\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\tmenu\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t\t\t\tcreateActionLabel,\n\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ showManageActions && hasManagePermissions && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ onCreateNew }>\n\t\t\t\t\t\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\thref={ addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\t\t\tpost_type: 'wp_navigation',\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Manage menus' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</ToolbarDropdownMenu>\n\t);\n}\n\nexport default forwardRef( NavigationMenuSelector );\n"]}
@@ -8,51 +8,64 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
+ import { AlignmentControl, BlockControls, Warning, useBlockProps, store as blockEditorStore } from '@wordpress/block-editor';
12
+ import { __, sprintf } from '@wordpress/i18n';
11
13
  import { useSelect } from '@wordpress/data';
12
- import { AlignmentControl, BlockControls, Warning, useBlockProps } from '@wordpress/block-editor';
13
- import { __ } from '@wordpress/i18n';
14
- import { RawHTML } from '@wordpress/element';
15
- import { store as coreStore } from '@wordpress/core-data';
16
-
17
- function PostCommentsDisplay(_ref) {
14
+ import { useEntityProp, store as coreStore } from '@wordpress/core-data';
15
+ import { __experimentalUseDisabled as useDisabled, useInstanceId } from '@wordpress/compose';
16
+ export default function PostCommentsEdit(_ref) {
18
17
  let {
19
- postId
18
+ attributes: {
19
+ textAlign
20
+ },
21
+ setAttributes,
22
+ context: {
23
+ postType,
24
+ postId
25
+ }
20
26
  } = _ref;
21
- return useSelect(select => {
22
- const comments = select(coreStore).getEntityRecords('root', 'comment', {
23
- post: postId
24
- }); // TODO: "No Comments" placeholder should be editable.
27
+ let [postTitle] = useEntityProp('postType', postType, 'title', postId);
28
+ postTitle = postTitle || __('Post Title');
29
+ const [commentStatus] = useEntityProp('postType', postType, 'comment_status', postId);
30
+ const {
31
+ avatarURL,
32
+ defaultCommentStatus
33
+ } = useSelect(select => select(blockEditorStore).getSettings().__experimentalDiscussionSettings);
34
+ const isSiteEditor = postType === undefined || postId === undefined;
35
+ const postTypeSupportsComments = useSelect(select => {
36
+ var _select$getPostType;
25
37
 
26
- return comments && comments.length ? comments.map(comment => createElement(RawHTML, {
27
- className: "wp-block-post-comments__comment",
28
- key: comment.id
29
- }, comment.content.rendered)) : __('No comments.');
30
- }, [postId]);
31
- }
38
+ return postType ? !!((_select$getPostType = select(coreStore).getPostType(postType)) !== null && _select$getPostType !== void 0 && _select$getPostType.supports.comments) : false;
39
+ });
40
+
41
+ let warning = __('Post Comments block: This is just a placeholder, not a real comment. The final styling may differ because it also depends on the current theme. For better compatibility with the Block Editor, please consider replacing this block with the "Comments Query Loop" block.');
42
+
43
+ let showPlacholder = true;
44
+
45
+ if (!isSiteEditor && 'open' !== commentStatus) {
46
+ if ('closed' === commentStatus) {
47
+ warning = sprintf(
48
+ /* translators: 1: Post type (i.e. "post", "page") */
49
+ __('Post Comments block: Comments to this %s are not allowed.'), postType);
50
+ showPlacholder = false;
51
+ } else if (!postTypeSupportsComments) {
52
+ warning = sprintf(
53
+ /* translators: 1: Post type (i.e. "post", "page") */
54
+ __('Post Comments block: Comments for this post type (%s) are not enabled.'), postType);
55
+ showPlacholder = false;
56
+ } else if ('open' !== defaultCommentStatus) {
57
+ warning = __('Post Comments block: Comments are not enabled.');
58
+ showPlacholder = false;
59
+ }
60
+ }
32
61
 
33
- export default function PostCommentsEdit(_ref2) {
34
- let {
35
- attributes,
36
- setAttributes,
37
- context
38
- } = _ref2;
39
- const {
40
- postType,
41
- postId
42
- } = context;
43
- const {
44
- textAlign
45
- } = attributes;
46
62
  const blockProps = useBlockProps({
47
63
  className: classnames({
48
64
  [`has-text-align-${textAlign}`]: textAlign
49
65
  })
50
66
  });
51
-
52
- if (!postType || !postId) {
53
- return createElement("div", blockProps, createElement(Warning, null, __('Post comments block: no post found.')));
54
- }
55
-
67
+ const disabledRef = useDisabled();
68
+ const textareaId = useInstanceId(PostCommentsEdit);
56
69
  return createElement(Fragment, null, createElement(BlockControls, {
57
70
  group: "block"
58
71
  }, createElement(AlignmentControl, {
@@ -62,8 +75,100 @@ export default function PostCommentsEdit(_ref2) {
62
75
  textAlign: nextAlign
63
76
  });
64
77
  }
65
- })), createElement("div", blockProps, createElement(PostCommentsDisplay, {
66
- postId: postId
67
- })));
78
+ })), createElement("div", blockProps, createElement(Warning, null, warning), showPlacholder && createElement("div", {
79
+ className: "wp-block-post-comments__placeholder",
80
+ ref: disabledRef
81
+ }, createElement("h3", null, __('One response to'), " \u201C", postTitle, "\u201D"), createElement("div", {
82
+ className: "navigation"
83
+ }, createElement("div", {
84
+ className: "alignleft"
85
+ }, createElement("a", {
86
+ href: "#top"
87
+ }, "\xAB ", __('Older Comments'))), createElement("div", {
88
+ className: "alignright"
89
+ }, createElement("a", {
90
+ href: "#top"
91
+ }, __('Newer Comments'), " \xBB"))), createElement("ol", {
92
+ className: "commentlist"
93
+ }, createElement("li", {
94
+ className: "comment even thread-even depth-1"
95
+ }, createElement("article", {
96
+ className: "comment-body"
97
+ }, createElement("footer", {
98
+ className: "comment-meta"
99
+ }, createElement("div", {
100
+ className: "comment-author vcard"
101
+ }, createElement("img", {
102
+ alt: "Commenter Avatar",
103
+ src: avatarURL,
104
+ className: "avatar avatar-32 photo",
105
+ height: "32",
106
+ width: "32",
107
+ loading: "lazy"
108
+ }), createElement("b", {
109
+ className: "fn"
110
+ }, createElement("a", {
111
+ href: "#top",
112
+ className: "url"
113
+ }, __('A WordPress Commenter'))), ' ', createElement("span", {
114
+ className: "says"
115
+ }, __('says'), ":")), createElement("div", {
116
+ className: "comment-metadata"
117
+ }, createElement("a", {
118
+ href: "#top"
119
+ }, createElement("time", {
120
+ dateTime: "2000-01-01T00:00:00+00:00"
121
+ }, __('January 1, 2000 at 00:00 am'))), ' ', createElement("span", {
122
+ className: "edit-link"
123
+ }, createElement("a", {
124
+ className: "comment-edit-link",
125
+ href: "#top"
126
+ }, __('Edit'))))), createElement("div", {
127
+ className: "comment-content"
128
+ }, createElement("p", null, __('Hi, this is a comment.'), createElement("br", null), __('To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'), createElement("br", null), __('Commenter avatars come from'), ' ', createElement("a", {
129
+ href: "https://gravatar.com/"
130
+ }, "Gravatar"), ".")), createElement("div", {
131
+ className: "reply"
132
+ }, createElement("a", {
133
+ className: "comment-reply-link",
134
+ href: "#top",
135
+ "aria-label": "Reply to A WordPress Commenter"
136
+ }, __('Reply')))))), createElement("div", {
137
+ className: "navigation"
138
+ }, createElement("div", {
139
+ className: "alignleft"
140
+ }, createElement("a", {
141
+ href: "#top"
142
+ }, "\xAB ", __('Older Comments'))), createElement("div", {
143
+ className: "alignright"
144
+ }, createElement("a", {
145
+ href: "#top"
146
+ }, __('Newer Comments'), " \xBB"))), createElement("div", {
147
+ className: "comment-respond"
148
+ }, createElement("h3", {
149
+ className: "comment-reply-title"
150
+ }, __('Leave a Reply')), createElement("form", {
151
+ className: "comment-form",
152
+ noValidate: true
153
+ }, createElement("p", {
154
+ className: "comment-form-comment"
155
+ }, createElement("label", {
156
+ htmlFor: `comment-${textareaId}`
157
+ }, __('Comment'), ' ', createElement("span", {
158
+ className: "required"
159
+ }, "*")), createElement("textarea", {
160
+ id: `comment-${textareaId}`,
161
+ name: "comment",
162
+ cols: "45",
163
+ rows: "8",
164
+ required: true
165
+ })), createElement("p", {
166
+ className: "form-submit wp-block-button"
167
+ }, createElement("input", {
168
+ name: "submit",
169
+ type: "submit",
170
+ className: "submit wp-block-button__link",
171
+ value: __('Post Comment')
172
+ })))))));
68
173
  }
69
174
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-comments/edit.js"],"names":["classnames","useSelect","AlignmentControl","BlockControls","Warning","useBlockProps","__","RawHTML","store","coreStore","PostCommentsDisplay","postId","select","comments","getEntityRecords","post","length","map","comment","id","content","rendered","PostCommentsEdit","attributes","setAttributes","context","postType","textAlign","blockProps","className","nextAlign"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,OAHD,EAICC,aAJD,QAKO,yBALP;AAMA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;;AAEA,SAASC,mBAAT,OAA2C;AAAA,MAAb;AAAEC,IAAAA;AAAF,GAAa;AAC1C,SAAOV,SAAS,CACbW,MAAF,IAAc;AACb,UAAMC,QAAQ,GAAGD,MAAM,CAAEH,SAAF,CAAN,CAAoBK,gBAApB,CAChB,MADgB,EAEhB,SAFgB,EAGhB;AACCC,MAAAA,IAAI,EAAEJ;AADP,KAHgB,CAAjB,CADa,CAQb;;AACA,WAAOE,QAAQ,IAAIA,QAAQ,CAACG,MAArB,GACJH,QAAQ,CAACI,GAAT,CAAgBC,OAAF,IACd,cAAC,OAAD;AACC,MAAA,SAAS,EAAC,iCADX;AAEC,MAAA,GAAG,EAAGA,OAAO,CAACC;AAFf,OAIGD,OAAO,CAACE,OAAR,CAAgBC,QAJnB,CADA,CADI,GASJf,EAAE,CAAE,cAAF,CATL;AAUA,GApBc,EAqBf,CAAEK,MAAF,CArBe,CAAhB;AAuBA;;AAED,eAAe,SAASW,gBAAT,QAIX;AAAA,MAJsC;AACzCC,IAAAA,UADyC;AAEzCC,IAAAA,aAFyC;AAGzCC,IAAAA;AAHyC,GAItC;AACH,QAAM;AAAEC,IAAAA,QAAF;AAAYf,IAAAA;AAAZ,MAAuBc,OAA7B;AACA,QAAM;AAAEE,IAAAA;AAAF,MAAgBJ,UAAtB;AACA,QAAMK,UAAU,GAAGvB,aAAa,CAAE;AACjCwB,IAAAA,SAAS,EAAE7B,UAAU,CAAE;AACtB,OAAG,kBAAkB2B,SAAW,EAAhC,GAAqCA;AADf,KAAF;AADY,GAAF,CAAhC;;AAMA,MAAK,CAAED,QAAF,IAAc,CAAEf,MAArB,EAA8B;AAC7B,WACC,qBAAUiB,UAAV,EACC,cAAC,OAAD,QACGtB,EAAE,CAAE,qCAAF,CADL,CADD,CADD;AAOA;;AAED,SACC,8BACC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGqB,SADT;AAEC,IAAA,QAAQ,EAAKG,SAAF,IAAiB;AAC3BN,MAAAA,aAAa,CAAE;AAAEG,QAAAA,SAAS,EAAEG;AAAb,OAAF,CAAb;AACA;AAJF,IADD,CADD,EAUC,qBAAUF,UAAV,EACC,cAAC,mBAAD;AAAqB,IAAA,MAAM,EAAGjB;AAA9B,IADD,CAVD,CADD;AAgBA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tWarning,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { RawHTML } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\nfunction PostCommentsDisplay( { postId } ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst comments = select( coreStore ).getEntityRecords(\n\t\t\t\t'root',\n\t\t\t\t'comment',\n\t\t\t\t{\n\t\t\t\t\tpost: postId,\n\t\t\t\t}\n\t\t\t);\n\t\t\t// TODO: \"No Comments\" placeholder should be editable.\n\t\t\treturn comments && comments.length\n\t\t\t\t? comments.map( ( comment ) => (\n\t\t\t\t\t\t<RawHTML\n\t\t\t\t\t\t\tclassName=\"wp-block-post-comments__comment\"\n\t\t\t\t\t\t\tkey={ comment.id }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ comment.content.rendered }\n\t\t\t\t\t\t</RawHTML>\n\t\t\t\t ) )\n\t\t\t\t: __( 'No comments.' );\n\t\t},\n\t\t[ postId ]\n\t);\n}\n\nexport default function PostCommentsEdit( {\n\tattributes,\n\tsetAttributes,\n\tcontext,\n} ) {\n\tconst { postType, postId } = context;\n\tconst { textAlign } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! postType || ! postId ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Post comments block: no post found.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<PostCommentsDisplay postId={ postId } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-comments/edit.js"],"names":["classnames","AlignmentControl","BlockControls","Warning","useBlockProps","store","blockEditorStore","__","sprintf","useSelect","useEntityProp","coreStore","__experimentalUseDisabled","useDisabled","useInstanceId","PostCommentsEdit","attributes","textAlign","setAttributes","context","postType","postId","postTitle","commentStatus","avatarURL","defaultCommentStatus","select","getSettings","__experimentalDiscussionSettings","isSiteEditor","undefined","postTypeSupportsComments","getPostType","supports","comments","warning","showPlacholder","blockProps","className","disabledRef","textareaId","nextAlign"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tWarning,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport {\n\t__experimentalUseDisabled as useDisabled,\n\tuseInstanceId,\n} from '@wordpress/compose';\n\nexport default function PostCommentsEdit( {\n\tattributes: { textAlign },\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tlet [ postTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tpostTitle = postTitle || __( 'Post Title' );\n\n\tconst [ commentStatus ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'comment_status',\n\t\tpostId\n\t);\n\n\tconst { avatarURL, defaultCommentStatus } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\tconst isSiteEditor = postType === undefined || postId === undefined;\n\n\tconst postTypeSupportsComments = useSelect( ( select ) =>\n\t\tpostType\n\t\t\t? !! select( coreStore ).getPostType( postType )?.supports.comments\n\t\t\t: false\n\t);\n\n\tlet warning = __(\n\t\t'Post Comments block: This is just a placeholder, not a real comment. The final styling may differ because it also depends on the current theme. For better compatibility with the Block Editor, please consider replacing this block with the \"Comments Query Loop\" block.'\n\t);\n\tlet showPlacholder = true;\n\n\tif ( ! isSiteEditor && 'open' !== commentStatus ) {\n\t\tif ( 'closed' === commentStatus ) {\n\t\t\twarning = sprintf(\n\t\t\t\t/* translators: 1: Post type (i.e. \"post\", \"page\") */\n\t\t\t\t__(\n\t\t\t\t\t'Post Comments block: Comments to this %s are not allowed.'\n\t\t\t\t),\n\t\t\t\tpostType\n\t\t\t);\n\t\t\tshowPlacholder = false;\n\t\t} else if ( ! postTypeSupportsComments ) {\n\t\t\twarning = sprintf(\n\t\t\t\t/* translators: 1: Post type (i.e. \"post\", \"page\") */\n\t\t\t\t__(\n\t\t\t\t\t'Post Comments block: Comments for this post type (%s) are not enabled.'\n\t\t\t\t),\n\t\t\t\tpostType\n\t\t\t);\n\t\t\tshowPlacholder = false;\n\t\t} else if ( 'open' !== defaultCommentStatus ) {\n\t\t\twarning = __( 'Post Comments block: Comments are not enabled.' );\n\t\t\tshowPlacholder = false;\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst disabledRef = useDisabled();\n\n\tconst textareaId = useInstanceId( PostCommentsEdit );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ warning }</Warning>\n\n\t\t\t\t{ showPlacholder && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"wp-block-post-comments__placeholder\"\n\t\t\t\t\t\tref={ disabledRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t<h3>\n\t\t\t\t\t\t\t{ __( 'One response to' ) } “{ postTitle }”\n\t\t\t\t\t\t</h3>\n\n\t\t\t\t\t\t<div className=\"navigation\">\n\t\t\t\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<ol className=\"commentlist\">\n\t\t\t\t\t\t\t<li className=\"comment even thread-even depth-1\">\n\t\t\t\t\t\t\t\t<article className=\"comment-body\">\n\t\t\t\t\t\t\t\t\t<footer className=\"comment-meta\">\n\t\t\t\t\t\t\t\t\t\t<div className=\"comment-author vcard\">\n\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\talt=\"Commenter Avatar\"\n\t\t\t\t\t\t\t\t\t\t\t\tsrc={ avatarURL }\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"avatar avatar-32 photo\"\n\t\t\t\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t<b className=\"fn\">\n\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"#top\" className=\"url\">\n\t\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\t'A WordPress Commenter'\n\t\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</a>\n\t\t\t\t\t\t\t\t\t\t\t</b>{ ' ' }\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"says\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'says' ) }:\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\t\t<div className=\"comment-metadata\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#top\">\n\t\t\t\t\t\t\t\t\t\t\t\t<time dateTime=\"2000-01-01T00:00:00+00:00\">\n\t\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\t'January 1, 2000 at 00:00 am'\n\t\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</time>\n\t\t\t\t\t\t\t\t\t\t\t</a>{ ' ' }\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"edit-link\">\n\t\t\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"comment-edit-link\"\n\t\t\t\t\t\t\t\t\t\t\t\t\thref=\"#top\"\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{ __( 'Edit' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</footer>\n\n\t\t\t\t\t\t\t\t\t<div className=\"comment-content\">\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Hi, this is a comment.' ) }\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'To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'\n\t\t\t\t\t\t\t\t\t\t\t) }\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'Commenter avatars come from'\n\t\t\t\t\t\t\t\t\t\t\t) }{ ' ' }\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https://gravatar.com/\">\n\t\t\t\t\t\t\t\t\t\t\t\tGravatar\n\t\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\t<div className=\"reply\">\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"comment-reply-link\"\n\t\t\t\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\t\t\t\taria-label=\"Reply to A WordPress Commenter\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Reply' ) }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</article>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ol>\n\n\t\t\t\t\t\t<div className=\"navigation\">\n\t\t\t\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"comment-respond\">\n\t\t\t\t\t\t\t<h3 className=\"comment-reply-title\">\n\t\t\t\t\t\t\t\t{ __( 'Leave a Reply' ) }\n\t\t\t\t\t\t\t</h3>\n\n\t\t\t\t\t\t\t<form className=\"comment-form\" noValidate>\n\t\t\t\t\t\t\t\t<p className=\"comment-form-comment\">\n\t\t\t\t\t\t\t\t\t<label\n\t\t\t\t\t\t\t\t\t\thtmlFor={ `comment-${ textareaId }` }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Comment' ) }{ ' ' }\n\t\t\t\t\t\t\t\t\t\t<span className=\"required\">*</span>\n\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t<textarea\n\t\t\t\t\t\t\t\t\t\tid={ `comment-${ textareaId }` }\n\t\t\t\t\t\t\t\t\t\tname=\"comment\"\n\t\t\t\t\t\t\t\t\t\tcols=\"45\"\n\t\t\t\t\t\t\t\t\t\trows=\"8\"\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t<p className=\"form-submit wp-block-button\">\n\t\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\t\tname=\"submit\"\n\t\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"submit wp-block-button__link\"\n\t\t\t\t\t\t\t\t\t\tvalue={ __( 'Post Comment' ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -10,9 +10,9 @@ const metadata = {
10
10
  $schema: "https://schemas.wp.org/trunk/block.json",
11
11
  apiVersion: 2,
12
12
  name: "core/post-comments",
13
- title: "Post Comments",
13
+ title: "Post Comments (deprecated)",
14
14
  category: "theme",
15
- description: "Display a post's comments.",
15
+ description: "This block is deprecated. Please use the Comments Query Loop block instead.",
16
16
  textdomain: "default",
17
17
  attributes: {
18
18
  textAlign: {
@@ -41,9 +41,11 @@ const metadata = {
41
41
  background: true,
42
42
  text: true
43
43
  }
44
- }
44
+ },
45
+ inserter: false
45
46
  },
46
- style: ["wp-block-post-comments", "wp-block-buttons", "wp-block-button"]
47
+ style: ["wp-block-post-comments", "wp-block-buttons", "wp-block-button"],
48
+ editorStyle: "wp-block-post-comments-editor"
47
49
  };
48
50
  import edit from './edit';
49
51
  const {