@wordpress/block-library 8.30.0 → 8.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/block/edit.js +17 -8
  3. package/build/block/edit.js.map +1 -1
  4. package/build/code/save.js +3 -1
  5. package/build/code/save.js.map +1 -1
  6. package/build/cover/edit/index.js +2 -1
  7. package/build/cover/edit/index.js.map +1 -1
  8. package/build/details/edit.js +1 -0
  9. package/build/details/edit.js.map +1 -1
  10. package/build/file/edit.js +2 -0
  11. package/build/file/edit.js.map +1 -1
  12. package/build/heading/index.js +4 -3
  13. package/build/heading/index.js.map +1 -1
  14. package/build/media-text/edit.js +33 -9
  15. package/build/media-text/edit.js.map +1 -1
  16. package/build/media-text/index.js +5 -0
  17. package/build/media-text/index.js.map +1 -1
  18. package/build/media-text/media-container.js +30 -11
  19. package/build/media-text/media-container.js.map +1 -1
  20. package/build/media-text/save.js +2 -2
  21. package/build/media-text/save.js.map +1 -1
  22. package/build/navigation/edit/index.js +23 -29
  23. package/build/navigation/edit/index.js.map +1 -1
  24. package/build/navigation/edit/navigation-menu-delete-control.js +12 -20
  25. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  26. package/build/navigation/edit/navigation-menu-selector.js +24 -23
  27. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  28. package/build/navigation/edit/placeholder/index.js +4 -4
  29. package/build/navigation/edit/placeholder/index.js.map +1 -1
  30. package/build/navigation/use-navigation-menu.js +15 -12
  31. package/build/navigation/use-navigation-menu.js.map +1 -1
  32. package/build/navigation-link/edit.js +12 -10
  33. package/build/navigation-link/edit.js.map +1 -1
  34. package/build/navigation-submenu/edit.js +4 -0
  35. package/build/navigation-submenu/edit.js.map +1 -1
  36. package/build/post-author/edit.js +1 -0
  37. package/build/post-author/edit.js.map +1 -1
  38. package/build/post-excerpt/edit.js +1 -0
  39. package/build/post-excerpt/edit.js.map +1 -1
  40. package/build/post-featured-image/edit.js +4 -1
  41. package/build/post-featured-image/edit.js.map +1 -1
  42. package/build/post-featured-image/index.js +6 -0
  43. package/build/post-featured-image/index.js.map +1 -1
  44. package/build/post-navigation-link/edit.js +1 -0
  45. package/build/post-navigation-link/edit.js.map +1 -1
  46. package/build/post-terms/edit.js +2 -0
  47. package/build/post-terms/edit.js.map +1 -1
  48. package/build/quote/edit.js +2 -2
  49. package/build/quote/edit.js.map +1 -1
  50. package/build/read-more/edit.js +1 -0
  51. package/build/read-more/edit.js.map +1 -1
  52. package/build/search/edit.js +2 -0
  53. package/build/search/edit.js.map +1 -1
  54. package/build/search/edit.native.js +2 -2
  55. package/build/search/edit.native.js.map +1 -1
  56. package/build/social-link/edit.js +1 -1
  57. package/build/social-link/edit.js.map +1 -1
  58. package/build/social-link/icons/medium.js +1 -1
  59. package/build/social-link/icons/medium.js.map +1 -1
  60. package/build/social-link/icons/reddit.js +1 -1
  61. package/build/social-link/icons/reddit.js.map +1 -1
  62. package/build/table/deprecated.js +285 -175
  63. package/build/table/deprecated.js.map +1 -1
  64. package/build/table/index.js +1 -1
  65. package/build/template-part/edit/index.js +1 -1
  66. package/build/template-part/edit/index.js.map +1 -1
  67. package/build/video/edit.native.js +1 -1
  68. package/build/video/edit.native.js.map +1 -1
  69. package/build-module/block/edit.js +18 -9
  70. package/build-module/block/edit.js.map +1 -1
  71. package/build-module/code/save.js +3 -1
  72. package/build-module/code/save.js.map +1 -1
  73. package/build-module/cover/edit/index.js +2 -1
  74. package/build-module/cover/edit/index.js.map +1 -1
  75. package/build-module/details/edit.js +1 -0
  76. package/build-module/details/edit.js.map +1 -1
  77. package/build-module/file/edit.js +2 -0
  78. package/build-module/file/edit.js.map +1 -1
  79. package/build-module/heading/index.js +4 -3
  80. package/build-module/heading/index.js.map +1 -1
  81. package/build-module/media-text/edit.js +34 -10
  82. package/build-module/media-text/edit.js.map +1 -1
  83. package/build-module/media-text/index.js +5 -0
  84. package/build-module/media-text/index.js.map +1 -1
  85. package/build-module/media-text/media-container.js +31 -12
  86. package/build-module/media-text/media-container.js.map +1 -1
  87. package/build-module/media-text/save.js +2 -2
  88. package/build-module/media-text/save.js.map +1 -1
  89. package/build-module/navigation/edit/index.js +24 -30
  90. package/build-module/navigation/edit/index.js.map +1 -1
  91. package/build-module/navigation/edit/navigation-menu-delete-control.js +15 -23
  92. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  93. package/build-module/navigation/edit/navigation-menu-selector.js +24 -23
  94. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  95. package/build-module/navigation/edit/placeholder/index.js +4 -4
  96. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  97. package/build-module/navigation/use-navigation-menu.js +15 -12
  98. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  99. package/build-module/navigation-link/edit.js +13 -11
  100. package/build-module/navigation-link/edit.js.map +1 -1
  101. package/build-module/navigation-submenu/edit.js +4 -0
  102. package/build-module/navigation-submenu/edit.js.map +1 -1
  103. package/build-module/post-author/edit.js +1 -0
  104. package/build-module/post-author/edit.js.map +1 -1
  105. package/build-module/post-excerpt/edit.js +1 -0
  106. package/build-module/post-excerpt/edit.js.map +1 -1
  107. package/build-module/post-featured-image/edit.js +5 -2
  108. package/build-module/post-featured-image/edit.js.map +1 -1
  109. package/build-module/post-featured-image/index.js +6 -0
  110. package/build-module/post-featured-image/index.js.map +1 -1
  111. package/build-module/post-navigation-link/edit.js +1 -0
  112. package/build-module/post-navigation-link/edit.js.map +1 -1
  113. package/build-module/post-terms/edit.js +2 -0
  114. package/build-module/post-terms/edit.js.map +1 -1
  115. package/build-module/quote/edit.js +2 -2
  116. package/build-module/quote/edit.js.map +1 -1
  117. package/build-module/read-more/edit.js +1 -0
  118. package/build-module/read-more/edit.js.map +1 -1
  119. package/build-module/search/edit.js +2 -0
  120. package/build-module/search/edit.js.map +1 -1
  121. package/build-module/search/edit.native.js +2 -2
  122. package/build-module/search/edit.native.js.map +1 -1
  123. package/build-module/social-link/edit.js +1 -1
  124. package/build-module/social-link/edit.js.map +1 -1
  125. package/build-module/social-link/icons/medium.js +1 -1
  126. package/build-module/social-link/icons/medium.js.map +1 -1
  127. package/build-module/social-link/icons/reddit.js +1 -1
  128. package/build-module/social-link/icons/reddit.js.map +1 -1
  129. package/build-module/table/deprecated.js +286 -176
  130. package/build-module/table/deprecated.js.map +1 -1
  131. package/build-module/table/index.js +1 -1
  132. package/build-module/template-part/edit/index.js +1 -1
  133. package/build-module/template-part/edit/index.js.map +1 -1
  134. package/build-module/video/edit.native.js +1 -1
  135. package/build-module/video/edit.native.js.map +1 -1
  136. package/build-style/editor-rtl.css +10 -4
  137. package/build-style/editor.css +10 -4
  138. package/build-style/file/editor-rtl.css +3 -0
  139. package/build-style/file/editor.css +3 -0
  140. package/build-style/image/editor-rtl.css +0 -3
  141. package/build-style/image/editor.css +0 -3
  142. package/build-style/media-text/editor-rtl.css +7 -1
  143. package/build-style/media-text/editor.css +7 -1
  144. package/build-style/social-links/style-rtl.css +2 -2
  145. package/build-style/social-links/style.css +2 -2
  146. package/build-style/style-rtl.css +2 -2
  147. package/build-style/style.css +2 -2
  148. package/package.json +34 -34
  149. package/src/archives/index.php +4 -0
  150. package/src/avatar/index.php +6 -0
  151. package/src/block/edit.js +38 -15
  152. package/src/block/index.php +4 -0
  153. package/src/block/test/edit.native.js +67 -0
  154. package/src/calendar/index.php +12 -0
  155. package/src/categories/index.php +6 -0
  156. package/src/code/save.js +7 -1
  157. package/src/comment-author-name/index.php +4 -0
  158. package/src/comment-content/index.php +4 -0
  159. package/src/comment-date/index.php +4 -0
  160. package/src/comment-edit-link/index.php +4 -0
  161. package/src/comment-reply-link/index.php +4 -0
  162. package/src/comment-template/index.php +4 -0
  163. package/src/comments/index.php +10 -0
  164. package/src/comments-pagination/index.php +4 -0
  165. package/src/comments-pagination-next/index.php +4 -0
  166. package/src/comments-pagination-numbers/index.php +4 -0
  167. package/src/comments-pagination-previous/index.php +4 -0
  168. package/src/comments-title/index.php +4 -0
  169. package/src/cover/edit/index.js +4 -1
  170. package/src/cover/index.php +4 -0
  171. package/src/details/edit.js +1 -0
  172. package/src/file/edit.js +2 -0
  173. package/src/file/editor.scss +3 -0
  174. package/src/file/index.php +4 -0
  175. package/src/gallery/index.php +6 -0
  176. package/src/heading/index.js +4 -3
  177. package/src/heading/index.php +4 -0
  178. package/src/home-link/index.php +10 -0
  179. package/src/image/editor.scss +0 -5
  180. package/src/image/index.php +12 -1
  181. package/src/latest-comments/index.php +4 -0
  182. package/src/latest-posts/index.php +8 -0
  183. package/src/loginout/index.php +4 -0
  184. package/src/media-text/block.json +5 -0
  185. package/src/media-text/edit.js +70 -19
  186. package/src/media-text/editor.scss +7 -1
  187. package/src/media-text/index.php +70 -0
  188. package/src/media-text/media-container.js +49 -9
  189. package/src/media-text/save.js +2 -2
  190. package/src/navigation/edit/index.js +67 -71
  191. package/src/navigation/edit/navigation-menu-delete-control.js +22 -49
  192. package/src/navigation/edit/navigation-menu-selector.js +39 -21
  193. package/src/navigation/edit/placeholder/index.js +4 -4
  194. package/src/navigation/edit/test/navigation-menu-selector.js +75 -53
  195. package/src/navigation/index.php +101 -26
  196. package/src/navigation/test/use-navigation-menu.js +21 -21
  197. package/src/navigation/use-navigation-menu.js +23 -9
  198. package/src/navigation-link/edit.js +12 -13
  199. package/src/navigation-link/index.php +14 -0
  200. package/src/navigation-submenu/edit.js +4 -0
  201. package/src/navigation-submenu/index.php +8 -0
  202. package/src/page-list/index.php +12 -0
  203. package/src/page-list-item/index.php +2 -0
  204. package/src/pattern/index.php +2 -0
  205. package/src/post-author/edit.js +1 -0
  206. package/src/post-author/index.php +4 -0
  207. package/src/post-author-biography/index.php +4 -0
  208. package/src/post-author-name/index.php +4 -0
  209. package/src/post-comments-form/index.php +6 -0
  210. package/src/post-content/index.php +4 -0
  211. package/src/post-date/index.php +4 -0
  212. package/src/post-excerpt/edit.js +1 -0
  213. package/src/post-excerpt/index.php +4 -0
  214. package/src/post-featured-image/block.json +6 -0
  215. package/src/post-featured-image/edit.js +4 -0
  216. package/src/post-featured-image/index.php +15 -0
  217. package/src/post-navigation-link/edit.js +1 -0
  218. package/src/post-navigation-link/index.php +4 -0
  219. package/src/post-template/index.php +4 -0
  220. package/src/post-terms/edit.js +2 -0
  221. package/src/post-terms/index.php +6 -0
  222. package/src/post-title/index.php +2 -0
  223. package/src/query/index.php +2 -0
  224. package/src/query-no-results/index.php +4 -0
  225. package/src/query-pagination/index.php +4 -0
  226. package/src/query-pagination-next/index.php +4 -0
  227. package/src/query-pagination-numbers/index.php +4 -0
  228. package/src/query-pagination-previous/index.php +4 -0
  229. package/src/query-title/index.php +4 -0
  230. package/src/quote/edit.js +11 -5
  231. package/src/read-more/edit.js +1 -0
  232. package/src/read-more/index.php +4 -0
  233. package/src/rss/index.php +4 -0
  234. package/src/search/edit.js +2 -0
  235. package/src/search/edit.native.js +2 -2
  236. package/src/search/index.php +19 -1
  237. package/src/shortcode/index.php +4 -0
  238. package/src/site-logo/index.php +20 -0
  239. package/src/site-tagline/index.php +4 -0
  240. package/src/site-title/index.php +4 -0
  241. package/src/social-link/edit.js +1 -1
  242. package/src/social-link/icons/medium.js +1 -1
  243. package/src/social-link/icons/reddit.js +1 -1
  244. package/src/social-link/index.php +22 -9
  245. package/src/social-link/socials-with-bg.scss +1 -1
  246. package/src/social-link/socials-without-bg.scss +1 -1
  247. package/src/table/block.json +1 -1
  248. package/src/table/deprecated.js +308 -175
  249. package/src/tag-cloud/index.php +4 -0
  250. package/src/template-part/edit/index.js +1 -1
  251. package/src/template-part/index.php +10 -0
  252. package/src/term-description/index.php +4 -0
  253. package/src/video/edit.native.js +2 -0
  254. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","useCallback","useState","useEffect","useRef","Platform","InspectorControls","useBlockProps","RecursionProvider","useHasRecursion","store","blockEditorStore","withColors","ContrastChecker","getColorClassName","Warning","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","useBlockEditingMode","EntityProvider","coreStore","useDispatch","useSelect","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","Button","Spinner","Notice","__","sprintf","speak","close","Icon","useInstanceId","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","OverlayMenuPreview","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","useInnerBlocks","detectColors","ManageMenusButton","MenuInspectorControls","DeletedNavigationWarning","AccessibleDescription","AccessibleMenuDescription","unlock","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","blockEditingMode","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","navigationFallbackId","navRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","color","class","slug","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","navMenu","id","onSelectNavigationMenu","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","colorGradientSettings","stylingInspectorControls","createElement","Fragment","title","onClick","hidden","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","checked","disabled","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","PlaceholderComponent","onCreateEmpty","kind","type","uniqueId","onDelete","deletedMenuTitle","hasCustomPlaceholder"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableHasActiveBlockOverlayActive(\n\t\t\t\tclientId\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\n\t\t),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t}, [\n\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName\n\t\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t! isPlaceholder\n\t\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","useCallback","useState","useEffect","useRef","Platform","InspectorControls","useBlockProps","RecursionProvider","useHasRecursion","store","blockEditorStore","withColors","ContrastChecker","getColorClassName","Warning","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","useBlockEditingMode","EntityProvider","coreStore","useDispatch","useSelect","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","Button","Spinner","Notice","__","speak","close","Icon","useInstanceId","useNavigationMenu","useNavigationEntities","Placeholder","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","OverlayMenuIcon","OverlayMenuPreview","useConvertClassicToBlockMenu","CLASSIC_MENU_CONVERSION_ERROR","CLASSIC_MENU_CONVERSION_PENDING","CLASSIC_MENU_CONVERSION_SUCCESS","useCreateNavigationMenu","useInnerBlocks","detectColors","ManageMenusButton","MenuInspectorControls","DeletedNavigationWarning","AccessibleDescription","AccessibleMenuDescription","unlock","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","blockEditingMode","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","hasResolvedCanUserCreateNavigationMenus","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","navigationFallbackId","navRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","select","__unstableHasActiveBlockOverlayActive","isResponsive","blockProps","color","class","slug","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","id","onSelectNavigationMenu","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","colorGradientSettings","stylingInspectorControls","createElement","Fragment","title","onClick","hidden","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","checked","disabled","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","PlaceholderComponent","onCreateEmpty","kind","type","uniqueId","onDelete","hasCustomPlaceholder"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = async () => {\n\t\tawait createNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\tisResolvingCanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableHasActiveBlockOverlayActive(\n\t\t\t\tclientId\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\n\t\t),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\treturn convertClassicMenu( classicMenu.id, classicMenu.name, 'draft' );\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t\tcreateNavigationMenuPost?.id,\n\t\thandleUpdateMenu,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t}, [\n\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenus &&\n\t\t\t\t! canUserCreateNavigationMenus\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenus,\n\t\thasResolvedCanUserCreateNavigationMenus,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenus || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenus={\n\t\t\t\t\t\tcanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenus={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenus\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t! isPlaceholder && ! isLoading\n\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\t\toverlayBackgroundColor={\n\t\t\t\t\t\t\t\t\toverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</TagName>\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SACCC,WAAW,EACXC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACNC,QAAQ,QACF,oBAAoB;AAC3B,SACCC,iBAAiB,EACjBC,aAAa,EACbC,iBAAiB,EACjBC,eAAe,EACfC,KAAK,IAAIC,gBAAgB,EACzBC,UAAU,EACVC,eAAe,EACfC,iBAAiB,EACjBC,OAAO,EACPC,2CAA2C,IAAIC,6BAA6B,EAC5EC,iDAAiD,IAAIC,mCAAmC,EACxFC,mBAAmB,QACb,yBAAyB;AAChC,SAASC,cAAc,EAAEX,KAAK,IAAIY,SAAS,QAAQ,sBAAsB;AAEzE,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SACCC,SAAS,EACTC,aAAa,EACbC,gCAAgC,IAAIC,kBAAkB,EACtDC,sCAAsC,IAAIC,wBAAwB,EAClEC,MAAM,EACNC,OAAO,EACPC,MAAM,QACA,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,QAAQ,iBAAiB;AACvC,SAASC,KAAK,EAAEC,IAAI,QAAQ,kBAAkB;AAC9C,SAASC,aAAa,QAAQ,oBAAoB;;AAElD;AACA;AACA;AACA,OAAOC,iBAAiB,MAAM,wBAAwB;AACtD,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,WAAW,MAAM,eAAe;AACvC,OAAOC,iBAAiB,MAAM,sBAAsB;AACpD,OAAOC,qBAAqB,MAAM,gBAAgB;AAClD,OAAOC,yBAAyB,MAAM,gCAAgC;AACtE,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,OAAOC,2BAA2B,MAAM,kCAAkC;AAC1E,OAAOC,mBAAmB,MAAM,yBAAyB;AACzD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,OAAOC,4BAA4B,IAClCC,6BAA6B,EAC7BC,+BAA+B,EAC/BC,+BAA+B,QACzB,0CAA0C;AACjD,OAAOC,uBAAuB,MAAM,8BAA8B;AAClE,SAASC,cAAc,QAAQ,oBAAoB;AACnD,SAASC,YAAY,QAAQ,SAAS;AACtC,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,OAAOC,qBAAqB,MAAM,2BAA2B;AAC7D,OAAOC,wBAAwB,MAAM,8BAA8B;AACnE,OAAOC,qBAAqB,MAAM,0BAA0B;AAC5D,OAAOC,yBAAyB,MAAM,+BAA+B;AACrE,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,SAASC,UAAUA,CAAE;EACpBC,UAAU;EACVC,aAAa;EACbC,QAAQ;EACRC,UAAU;EACVC,SAAS;EACTC,eAAe;EACfC,kBAAkB;EAClBC,SAAS;EACTC,YAAY;EACZC,sBAAsB;EACtBC,yBAAyB;EACzBC,gBAAgB;EAChBC,mBAAmB;EAEnB;EACA;EACAC,0BAA0B,GAAG,IAAI;EACjCC,iBAAiB,EAAEC,iBAAiB,GAAG,IAAI;EAC3CC,0BAA0B,EAAEC;AAC7B,CAAC,EAAG;EACH,MAAM;IACLC,mBAAmB;IACnBC,WAAW;IACXC,eAAe;IACfC,YAAY;IACZC,MAAM,EAAE;MACPC,cAAc;MACdC,WAAW,GAAG,YAAY;MAC1BC,QAAQ,GAAG;IACZ,CAAC,GAAG,CAAC,CAAC;IACNC,OAAO;IACPC,IAAI,GAAG;EACR,CAAC,GAAG3B,UAAU;EAEd,MAAM4B,GAAG,GAAG5B,UAAU,CAAC4B,GAAG;EAE1B,MAAMC,MAAM,GAAG5F,WAAW,CACvB6F,MAAM,IAAM;IACb7B,aAAa,CAAE;MAAE2B,GAAG,EAAEE;IAAO,CAAE,CAAC;EACjC,CAAC,EACD,CAAE7B,aAAa,CAChB,CAAC;EAED,MAAM8B,WAAW,GAAI,kBAAkBH,GAAK,EAAC;EAC7C,MAAMI,kBAAkB,GAAGvF,eAAe,CAAEsF,WAAY,CAAC;EAEzD,MAAME,gBAAgB,GAAG7E,mBAAmB,CAAC,CAAC;;EAE9C;EACA;EACA,MAAM;IAAE8E,KAAK,EAAEC;EAAa,CAAC,GAAG3D,qBAAqB,CAAC,CAAC;EAEvD,MAAM,CAAE4D,8BAA8B,EAAEC,8BAA8B,CAAE,GACvEtD,mBAAmB,CAAE;IACpBuD,IAAI,EAAE;EACP,CAAE,CAAC;EAEJ,MAAM,CAAEC,+BAA+B,EAAEC,+BAA+B,CAAE,GACzEzD,mBAAmB,CAAE;IACpBuD,IAAI,EAAE;EACP,CAAE,CAAC;EAEJ,MAAM,CACLG,mCAAmC,EACnCC,mCAAmC,CACnC,GAAG3D,mBAAmB,CAAE;IACxBuD,IAAI,EAAE;EACP,CAAE,CAAC;EAEH,MAAM;IACLK,MAAM,EAAEC,oBAAoB;IAC5BC,MAAM,EAAEC,0BAA0B;IAClCC,KAAK,EAAEC,yBAAyB;IAChCC,KAAK,EAAEC,wBAAwB;IAC/BC,SAAS,EAAEC,wBAAwB;IACnCC,SAAS,EAAEC,6BAA6B;IACxCC,OAAO,EAAEC;EACV,CAAC,GAAGlE,uBAAuB,CAAEY,QAAS,CAAC;EAEvC,MAAMuD,iCAAiC,GAAG,MAAAA,CAAA,KAAY;IACrD,MAAMb,oBAAoB,CAAE,EAAG,CAAC;EACjC,CAAC;EAED,MAAM;IACLc,0BAA0B;IAC1BC,uBAAuB;IACvBC,oBAAoB;IACpBC;EACD,CAAC,GAAGtE,cAAc,CAAEW,QAAS,CAAC;EAE9B,MAAM4D,WAAW,GAAG,CAAC,CAAED,WAAW,CAACE,IAAI,CACpCC,KAAK,IAAMA,KAAK,CAAC1B,IAAI,KAAK,yBAC7B,CAAC;EAED,MAAM;IACL2B,kBAAkB;IAClBC,WAAW;IACXC;EACD,CAAC,GAAG5G,WAAW,CAAEZ,gBAAiB,CAAC;EAEnC,MAAM,CAAEyH,oBAAoB,EAAEC,2BAA2B,CAAE,GAC1DnI,QAAQ,CAAE,KAAM,CAAC;EAElB,MAAM,CAAEoI,kBAAkB,EAAEC,qBAAqB,CAAE,GAAGrI,QAAQ,CAAE,KAAM,CAAC;EAEvE,MAAM;IACLsI,0BAA0B;IAC1BC,wBAAwB;IACxBC,uBAAuB;IACvBC,2BAA2B;IAC3BC,sCAAsC;IACtCC,2BAA2B;IAC3BC,sCAAsC;IACtCC,4BAA4B;IAC5BC,uCAAuC;IACvCC;EACD,CAAC,GAAG1G,iBAAiB,CAAEqD,GAAI,CAAC;EAE5B,MAAMsD,yBAAyB,GAC9BV,0BAA0B,IAAIE,uBAAuB;EAEtD,MAAM;IACLS,OAAO,EAAEC,kBAAkB;IAC3BvC,MAAM,EAAEwC,2BAA2B;IACnCtC,KAAK,EAAEuC;EACR,CAAC,GAAGpG,4BAA4B,CAAE0D,oBAAqB,CAAC;EAExD,MAAM2C,uBAAuB,GAC5BF,2BAA2B,KAAKjG,+BAA+B;EAEhE,MAAMoG,gBAAgB,GAAGvJ,WAAW,CACnC,CAAEwJ,MAAM,EAAEC,OAAO,GAAG;IAAEC,oBAAoB,EAAE;EAAM,CAAC,KAAM;IACxD,MAAM;MAAEA;IAAqB,CAAC,GAAGD,OAAO;IACxC7D,MAAM,CAAE4D,MAAO,CAAC;IAChB,IAAKE,oBAAoB,EAAG;MAC3BzB,WAAW,CAAEhE,QAAS,CAAC;IACxB;EACD,CAAC,EACD,CAAEgE,WAAW,EAAEhE,QAAQ,EAAE2B,MAAM,CAChC,CAAC;EAED,MAAM+D,iBAAiB,GACtB,CAAElB,uBAAuB,IAAID,wBAAwB;;EAEtD;EACA;EACA;EACA;EACA;EACA;EACA,MAAMoB,gBAAgB,GAAGnC,0BAA0B,IAAI,CAAEkC,iBAAiB;EAE1E,MAAM;IAAEE;EAAwB,CAAC,GAAGhG,MAAM,CAAEtC,SAAS,CAAEF,SAAU,CAAE,CAAC;EAEpE,MAAMyI,oBAAoB,GAAG,EAAInE,GAAG,IAAIiE,gBAAgB,CAAE,GACvDC,uBAAuB,CAAC,CAAC,GACzB,IAAI;EAEP3J,SAAS,CAAE,MAAM;IAChB;IACA;IACA;IACA;IACA,IAAKyF,GAAG,IAAIiE,gBAAgB,IAAI,CAAEE,oBAAoB,EAAG;MACxD;IACD;;IAEA;AACF;AACA;AACA;AACA;;IAEE5B,uCAAuC,CAAC,CAAC;IACzCtC,MAAM,CAAEkE,oBAAqB,CAAC;EAC/B,CAAC,EAAE,CACFnE,GAAG,EACHC,MAAM,EACNgE,gBAAgB,EAChBE,oBAAoB,EACpB5B,uCAAuC,CACtC,CAAC;EAEH,MAAM6B,MAAM,GAAG5J,MAAM,CAAC,CAAC;;EAEvB;EACA,MAAM6J,OAAO,GAAG,KAAK;;EAErB;EACA;EACA;EACA;EACA;EACA,MAAMC,aAAa,GAClB,CAAEtE,GAAG,IACL,CAAEwB,wBAAwB,IAC1B,CAAEmC,uBAAuB,IACzBf,0BAA0B,IAC1BrC,YAAY,EAAEgE,MAAM,KAAK,CAAC,IAC1B,CAAEzC,0BAA0B;;EAE7B;EACA;EACA;EACA;EACA;EACA;EACA,MAAM0C,SAAS,GACd,CAAE5B,0BAA0B,IAC5BpB,wBAAwB,IACxBmC,uBAAuB,IACvB,CAAC,EAAI3D,GAAG,IAAI,CAAEgE,iBAAiB,IAAI,CAAEL,uBAAuB,CAAE;EAE/D,MAAMc,cAAc,GAAGrG,UAAU,CAACsG,KAAK,EAAEC,UAAU,EAAEF,cAAc;EAEnE,MAAMG,eAAe,GAAGhJ,SAAS,CAC9BiJ,MAAM,IACPA,MAAM,CAAE9J,gBAAiB,CAAC,CAAC+J,qCAAqC,CAC/DxG,QACD,CAAC,EACF,CAAEA,QAAQ,CACX,CAAC;EACD,MAAMyG,YAAY,GAAG,OAAO,KAAKxF,WAAW;EAC5C,MAAMyF,UAAU,GAAGrK,aAAa,CAAE;IACjCqF,GAAG,EAAEoE,MAAM;IACX5F,SAAS,EAAEpE,UAAU,CACpBoE,SAAS,EACT;MACC,uBAAuB,EAAEmB,cAAc,KAAK,OAAO;MACnD,+BAA+B,EAC9BA,cAAc,KAAK,eAAe;MACnC,sBAAsB,EAAEA,cAAc,KAAK,MAAM;MACjD,wBAAwB,EAAEA,cAAc,KAAK,QAAQ;MACrD,aAAa,EAAEC,WAAW,KAAK,UAAU;MACzC,SAAS,EAAEC,QAAQ,KAAK,QAAQ;MAChC,eAAe,EAAEkF,YAAY;MAC7B,gBAAgB,EAAE,CAAC,CAAEpG,SAAS,CAACsG,KAAK,IAAI,CAAC,CAAEtG,SAAS,EAAEuG,KAAK;MAC3D,CAAEhK,iBAAiB,CAAE,OAAO,EAAEyD,SAAS,EAAEwG,IAAK,CAAC,GAC9C,CAAC,CAAExG,SAAS,EAAEwG,IAAI;MACnB,gBAAgB,EACf,CAAC,CAAE1G,eAAe,CAACwG,KAAK,IAAIxG,eAAe,CAACyG,KAAK;MAClD,CAAEhK,iBAAiB,CAClB,kBAAkB,EAClBuD,eAAe,EAAE0G,IAClB,CAAC,GAAI,CAAC,CAAE1G,eAAe,EAAE0G,IAAI;MAC7B,CAAG,uBAAuBV,cAAgB,EAAC,GAAIA,cAAc;MAC7D,oCAAoC,EAAEG;IACvC,CAAC,EACDvF,gBACD,CAAC;IACDqF,KAAK,EAAE;MACNO,KAAK,EAAE,CAAEtG,SAAS,EAAEwG,IAAI,IAAIxG,SAAS,EAAEsG,KAAK;MAC5CxG,eAAe,EAAE,CAAEA,eAAe,EAAE0G,IAAI,IAAI1G,eAAe,EAAEwG;IAC9D;EACD,CAAE,CAAC;;EAEH;EACA,MAAMG,sBAAsB,GAAG3K,QAAQ,CAAC4K,EAAE,KAAK,KAAK;EAEpD,MAAM,CAAEC,uBAAuB,EAAEC,0BAA0B,CAAE,GAAGjL,QAAQ,CAAC,CAAC;EAC1E,MAAM,CAAEkL,aAAa,EAAEC,gBAAgB,CAAE,GAAGnL,QAAQ,CAAC,CAAC;EACtD,MAAM,CACLoL,8BAA8B,EAC9BC,iCAAiC,CACjC,GAAGrL,QAAQ,CAAC,CAAC;EACd,MAAM,CAAEsL,oBAAoB,EAAEC,uBAAuB,CAAE,GAAGvL,QAAQ,CAAC,CAAC;EAEpE,MAAMwL,mBAAmB,GAAG,MAAQC,WAAW,IAAM;IACpD,OAAOvC,kBAAkB,CAAEuC,WAAW,CAACC,EAAE,EAAED,WAAW,CAACrF,IAAI,EAAE,OAAQ,CAAC;EACvE,CAAC;EAED,MAAMuF,sBAAsB,GAAKpC,MAAM,IAAM;IAC5CD,gBAAgB,CAAEC,MAAO,CAAC;EAC3B,CAAC;EAEDtJ,SAAS,CAAE,MAAM;IAChBkG,8BAA8B,CAAC,CAAC;IAEhC,IAAKe,wBAAwB,EAAG;MAC/BjF,KAAK,CAAED,EAAE,CAAG,2BAA2B,CAAE,CAAC;IAC3C;IAEA,IAAKoF,6BAA6B,EAAG;MACpCkC,gBAAgB,CAAEtC,wBAAwB,EAAE0E,EAAE,EAAE;QAC/CjC,oBAAoB,EAAE;MACvB,CAAE,CAAC;MAEHvD,8BAA8B,CAC7BlE,EAAE,CAAG,uCAAuC,CAC7C,CAAC;IACF;IAEA,IAAKsF,2BAA2B,EAAG;MAClCpB,8BAA8B,CAC7BlE,EAAE,CAAE,mCAAoC,CACzC,CAAC;IACF;EACD,CAAC,EAAE,CACF4E,0BAA0B,EAC1BE,yBAAyB,EACzBE,wBAAwB,EAAE0E,EAAE,EAC5BpE,2BAA2B,EAC3BF,6BAA6B,EAC7BF,wBAAwB,EACxBoC,gBAAgB,EAChBnD,8BAA8B,EAC9BD,8BAA8B,CAC7B,CAAC;EAEHjG,SAAS,CAAE,MAAM;IAChBqG,+BAA+B,CAAC,CAAC;IACjC,IAAK6C,2BAA2B,KAAKjG,+BAA+B,EAAG;MACtEjB,KAAK,CAAED,EAAE,CAAE,yBAA0B,CAAE,CAAC;IACzC;IAEA,IAAKmH,2BAA2B,KAAKhG,+BAA+B,EAAG;MACtEkD,+BAA+B,CAC9BrE,EAAE,CAAE,qCAAsC,CAC3C,CAAC;MACDsH,gBAAgB,CAAEtC,wBAAwB,EAAE0E,EAAE,EAAE;QAC/CjC,oBAAoB,EAAE;MACvB,CAAE,CAAC;IACJ;IAEA,IAAKN,2BAA2B,KAAKlG,6BAA6B,EAAG;MACpEoD,+BAA+B,CAC9BrE,EAAE,CAAE,6BAA8B,CACnC,CAAC;IACF;EACD,CAAC,EAAE,CACFmH,2BAA2B,EAC3BC,0BAA0B,EAC1B9C,+BAA+B,EAC/BD,+BAA+B,EAC/BW,wBAAwB,EAAE0E,EAAE,EAC5BpC,gBAAgB,CACf,CAAC;EAEHrJ,SAAS,CAAE,MAAM;IAChB,IAAK,CAAE6K,sBAAsB,EAAG;MAC/B;IACD;IACAxH,YAAY,CACXwG,MAAM,CAAC8B,OAAO,EACdT,gBAAgB,EAChBF,0BACD,CAAC;IAED,MAAMY,cAAc,GAAG/B,MAAM,CAAC8B,OAAO,EAAEE,aAAa,CACnD,0EACD,CAAC;IAED,IAAK,CAAED,cAAc,EAAG;MACvB;IACD;;IAEA;IACA;IACA;IACA,IAAKpH,gBAAgB,CAACkG,KAAK,IAAIpG,sBAAsB,CAACoG,KAAK,EAAG;MAC7DrH,YAAY,CACXuI,cAAc,EACdN,uBAAuB,EACvBF,iCACD,CAAC;IACF;EACD,CAAC,EAAE,CACFP,sBAAsB,EACtBrG,gBAAgB,CAACkG,KAAK,EACtBpG,sBAAsB,CAACoG,KAAK,CAC3B,CAAC;EAEH1K,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEgE,UAAU,IAAI,CAAEyD,oBAAoB,EAAG;MAC7ClB,mCAAmC,CAAC,CAAC;IACtC;IAEA,IAAKvC,UAAU,IAAIyD,oBAAoB,EAAG;MACzC,IACChC,GAAG,IACH,CAAEsD,yBAAyB,IAC3BN,sCAAsC,IACtC,CAAED,2BAA2B,EAC5B;QACDlC,mCAAmC,CAClCvE,EAAE,CACD,mFACD,CACD,CAAC;MACF;MAEA,IACC,CAAE0D,GAAG,IACLqD,uCAAuC,IACvC,CAAEF,4BAA4B,EAC7B;QACDtC,mCAAmC,CAClCvE,EAAE,CACD,wDACD,CACD,CAAC;MACF;IACD;EACD,CAAC,EAAE,CACFiC,UAAU,EACVyD,oBAAoB,EACpBe,2BAA2B,EAC3BC,sCAAsC,EACtCG,4BAA4B,EAC5BE,uCAAuC,EACvCrD,GAAG,EACHc,mCAAmC,EACnCD,mCAAmC,EACnCyC,yBAAyB,CACxB,CAAC;EAEH,MAAM+C,oBAAoB,GACzBlD,4BAA4B,IAAIJ,2BAA2B;EAE5D,MAAMuD,yBAAyB,GAAGlM,UAAU,CAC3C,2CAA2C,EAC3C;IAAEmM,IAAI,EAAE7D;EAAmB,CAC5B,CAAC;EAED,MAAM8D,0BAA0B,GAC/B,CAAEhH,eAAe,IAAI,CAAEF,mBAAmB,GACvChD,EAAE,CACF,kOACA,CAAC,GACD,EAAE;EAEN,MAAMmK,aAAa,GAAGjM,MAAM,CAAE,IAAK,CAAC,CAAC,CAAC;EACtCD,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEkM,aAAa,CAACP,OAAO,IAAIM,0BAA0B,EAAG;MAC5DjK,KAAK,CAAEiK,0BAA2B,CAAC;IACpC;IACAC,aAAa,CAACP,OAAO,GAAG,KAAK;EAC9B,CAAC,EAAE,CAAEM,0BAA0B,CAAG,CAAC;EAEnC,MAAME,oBAAoB,GAAGhK,aAAa,CACzCW,kBAAkB,EACjB,sBACF,CAAC;EAED,MAAMsJ,qBAAqB,GAAGpL,mCAAmC,CAAC,CAAC;EACnE,MAAMqL,wBAAwB,GAC7BC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACnM,iBAAiB,QACfuE,0BAA0B,IAC3B4H,aAAA,CAAChL,SAAS;IAACkL,KAAK,EAAGzK,EAAE,CAAE,SAAU;EAAG,GACjCyI,YAAY,IACb8B,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAC1K,MAAM;IACNqC,SAAS,EAAG8H,yBAA2B;IACvCU,OAAO,EAAGA,CAAA,KAAM;MACfrE,qBAAqB,CACpB,CAAED,kBACH,CAAC;IACF,CAAG;IACH,cAAapG,EAAE,CAAE,uBAAwB,CAAG;IAC5C,iBAAgBoK,oBAAsB;IACtC,iBAAgBhE;EAAoB,GAElC5C,OAAO,IACR+G,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACzJ,eAAe;IAAC2C,IAAI,EAAGA;EAAM,CAAE,CAAC,EACjC8G,aAAA,CAACpK,IAAI;IAACsD,IAAI,EAAGvD;EAAO,CAAE,CACrB,CACF,EACC,CAAEsD,OAAO,IACV+G,aAAA,CAAAC,QAAA,QACCD,aAAA,eAAQvK,EAAE,CAAE,MAAO,CAAS,CAAC,EAC7BuK,aAAA,eAAQvK,EAAE,CAAE,OAAQ,CAAS,CAC5B,CAEI,CAAC,EACTuK,aAAA;IAAKb,EAAE,EAAGU;EAAsB,GAC7BhE,kBAAkB,IACnBmE,aAAA,CAACxJ,kBAAkB;IAClBgB,aAAa,EAAGA,aAAe;IAC/ByB,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbkH,MAAM,EAAG,CAAEvE;EAAoB,CAC/B,CAEE,CACJ,CACF,EACDmE,aAAA,aAAMvK,EAAE,CAAE,cAAe,CAAO,CAAC,EACjCuK,aAAA,CAAC7K,kBAAkB;IAClBkL,uBAAuB;IACvBC,KAAK,EAAG7K,EAAE,CAAE,wBAAyB,CAAG;IACxC+E,KAAK,EAAG9B,WAAa;IACrB6H,IAAI,EAAG9K,EAAE,CACR,qEACD,CAAG;IACH+K,QAAQ,EAAKhG,KAAK,IACjBhD,aAAa,CAAE;MAAEkB,WAAW,EAAE8B;IAAM,CAAE,CACtC;IACDiG,OAAO;IACPC,mBAAmB;EAAA,GAEnBV,aAAA,CAAC3K,wBAAwB;IACxBmF,KAAK,EAAC,OAAO;IACb8F,KAAK,EAAG7K,EAAE,CAAE,KAAM;EAAG,CACrB,CAAC,EACFuK,aAAA,CAAC3K,wBAAwB;IACxBmF,KAAK,EAAC,QAAQ;IACd8F,KAAK,EAAG7K,EAAE,CAAE,QAAS;EAAG,CACxB,CAAC,EACFuK,aAAA,CAAC3K,wBAAwB;IACxBmF,KAAK,EAAC,QAAQ;IACd8F,KAAK,EAAG7K,EAAE,CAAE,QAAS;EAAG,CACxB,CACkB,CAAC,EACnB4F,WAAW,IACZ2E,aAAA,CAAAC,QAAA,QACCD,aAAA,aAAMvK,EAAE,CAAE,UAAW,CAAO,CAAC,EAC7BuK,aAAA,CAAC/K,aAAa;IACboL,uBAAuB;IACvBM,OAAO,EAAGlI,mBAAqB;IAC/B+H,QAAQ,EAAKhG,KAAK,IAAM;MACvBhD,aAAa,CAAE;QACdiB,mBAAmB,EAAE+B,KAAK;QAC1B,IAAKA,KAAK,IAAI;UACb7B,eAAe,EAAE;QAClB,CAAC,CAAE,CAAE;MACN,CAAE,CAAC;IACJ,CAAG;IACH2H,KAAK,EAAG7K,EAAE,CAAE,eAAgB;EAAG,CAC/B,CAAC,EAEFuK,aAAA,CAAC/K,aAAa;IACboL,uBAAuB;IACvBM,OAAO,EAAGhI,eAAiB;IAC3B6H,QAAQ,EAAKhG,KAAK,IAAM;MACvBhD,aAAa,CAAE;QACdmB,eAAe,EAAE6B;MAClB,CAAE,CAAC;IACJ,CAAG;IACHoG,QAAQ,EAAGrJ,UAAU,CAACkB,mBAAqB;IAC3C6H,KAAK,EAAG7K,EAAE,CAAE,YAAa;EAAG,CAC5B,CAAC,EAEAkK,0BAA0B,IAC3BK,aAAA,cACCA,aAAA,CAACxK,MAAM;IACNqL,aAAa,EAAG,IAAM;IACtBzG,MAAM,EAAC,SAAS;IAChB0G,aAAa,EAAG;EAAO,GAErBnB,0BACK,CACJ,CAEL,CAEO,CAEM,CAAC,EAClBG,qBAAqB,CAACiB,oBAAoB,IAC3Cf,aAAA,CAACnM,iBAAiB;IAACmN,KAAK,EAAC;EAAO,GAC/BhB,aAAA,CAACxL,6BAA6B;IAC7ByM,iCAAiC;IACjCC,QAAQ,EAAG,CACV;MACCC,UAAU,EAAErJ,SAAS,CAACsG,KAAK;MAC3BkC,KAAK,EAAE7K,EAAE,CAAE,MAAO,CAAC;MACnB2L,aAAa,EAAErJ,YAAY;MAC3BsJ,cAAc,EAAEA,CAAA,KAAMtJ,YAAY,CAAC;IACpC,CAAC,EACD;MACCoJ,UAAU,EAAEvJ,eAAe,CAACwG,KAAK;MACjCkC,KAAK,EAAE7K,EAAE,CAAE,YAAa,CAAC;MACzB2L,aAAa,EAAEvJ,kBAAkB;MACjCwJ,cAAc,EAAEA,CAAA,KAAMxJ,kBAAkB,CAAC;IAC1C,CAAC,EACD;MACCsJ,UAAU,EAAEjJ,gBAAgB,CAACkG,KAAK;MAClCkC,KAAK,EAAE7K,EAAE,CAAE,wBAAyB,CAAC;MACrC2L,aAAa,EAAEjJ,mBAAmB;MAClCkJ,cAAc,EAAEA,CAAA,KAAMlJ,mBAAmB,CAAC;IAC3C,CAAC,EACD;MACCgJ,UAAU,EAAEnJ,sBAAsB,CAACoG,KAAK;MACxCkC,KAAK,EAAE7K,EAAE,CAAE,8BAA+B,CAAC;MAC3C2L,aAAa,EAAEnJ,yBAAyB;MACxCoJ,cAAc,EAAEA,CAAA,KACfpJ,yBAAyB,CAAC;IAC5B,CAAC,CACC;IACHqJ,OAAO,EAAG7J,QAAU;IAAA,GACfqI,qBAAqB;IAC1ByB,SAAS,EAAG,EAAI;IAChBC,sBAAsB;EAAA,CACtB,CAAC,EACAjD,sBAAsB,IACvByB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAC5L,eAAe;IACfwD,eAAe,EAAG6G,uBAAyB;IAC3C3G,SAAS,EAAG6G;EAAe,CAC3B,CAAC,EACFqB,aAAA,CAAC5L,eAAe;IACfwD,eAAe,EACdiH,8BACA;IACD/G,SAAS,EAAGiH;EAAsB,CAClC,CACA,CAEe,CAEnB,CACF;EAED,MAAM0C,uBAAuB,GAAI,GAAGhK,QAAU,OAAM;EAEpD,MAAMiK,2BAA2B,GAChC,CAAElC,oBAAoB,IAAI,CAAEzD,0BAA0B;EAEvD,IAAKqB,gBAAgB,IAAI,CAAEzC,wBAAwB,EAAG;IACrD,OACCqF,aAAA,CAACxC,OAAO;MAAA,GACFW,UAAU;MACf,oBACC,CAAEV,aAAa,GAAGgE,uBAAuB,GAAGE;IAC5C,GAED3B,aAAA,CAAC7I,qBAAqB;MAACgI,EAAE,EAAGsC;IAAyB,GAClDhM,EAAE,CAAE,0BAA2B,CACX,CAAC,EAExBuK,aAAA,CAAC/I,qBAAqB;MACrBQ,QAAQ,EAAGA,QAAU;MACrBoD,6BAA6B,EAC5BA,6BACA;MACDE,2BAA2B,EAAGA,2BAA6B;MAC3D6G,aAAa,EAAGzI,GAAK;MACrB8C,uBAAuB,EAAGA,uBAAyB;MACnDyF,2BAA2B,EAAGA,2BAA6B;MAC3DG,WAAW,EAAG7G,iCAAmC;MACjDiE,mBAAmB,EAAGA,mBAAqB;MAC3CG,sBAAsB,EAAGA,sBAAwB;MACjDzB,SAAS,EAAGA,SAAW;MACvBnE,gBAAgB,EAAGA;IAAkB,CACrC,CAAC,EACAA,gBAAgB,KAAK,SAAS,IAAIuG,wBAAwB,EAC5DC,aAAA,CAAC/J,iBAAiB;MACjBkJ,EAAE,EAAG1H,QAAU;MACfqK,QAAQ,EAAGlG,2BAA6B;MACxCmG,MAAM,EAAGpG,oBAAsB;MAC/B1C,OAAO,EAAGA,OAAS;MACnBC,IAAI,EAAGA,IAAM;MACbgF,YAAY,EAAGA,YAAc;MAC7B8D,iBAAiB,EAAG,QAAQ,KAAKtJ,WAAa;MAC9CV,sBAAsB,EAAGA,sBAAwB;MACjDE,gBAAgB,EAAGA;IAAkB,GAErC8H,aAAA,CAAC5J,kBAAkB;MAClB+D,oBAAoB,EAAGA,oBAAsB;MAC7C8H,MAAM,EAAG/G,uBAAyB;MAClCgH,YAAY,EAAGxK,UAAU,IAAIyD;IAAsB,CACnD,CACiB,CACX,CAAC;EAEZ;;EAEA;EACA;EACA,IAAKhC,GAAG,IAAI8C,uBAAuB,EAAG;IACrC,OACC+D,aAAA,CAACxC,OAAO;MAAA,GAAMW;IAAU,GACvB6B,aAAA,CAAC/I,qBAAqB;MACrBQ,QAAQ,EAAGA,QAAU;MACrBoD,6BAA6B,EAC5BA,6BACA;MACDE,2BAA2B,EAAGA,2BAA6B;MAC3D6G,aAAa,EAAGzI,GAAK;MACrB8C,uBAAuB,EAAGA,uBAAyB;MACnDyF,2BAA2B,EAAGA,2BAA6B;MAC3DG,WAAW,EAAG7G,iCAAmC;MACjDiE,mBAAmB,EAAGA,mBAAqB;MAC3CG,sBAAsB,EAAGA,sBAAwB;MACjDzB,SAAS,EAAGA,SAAW;MACvBnE,gBAAgB,EAAGA;IAAkB,CACrC,CAAC,EACFwG,aAAA,CAAC9I,wBAAwB;MACxB2K,WAAW,EAAG7G;IAAmC,CACjD,CACO,CAAC;EAEZ;EAEA,IAAKmC,iBAAiB,IAAI5D,kBAAkB,EAAG;IAC9C,OACCyG,aAAA;MAAA,GAAU7B;IAAU,GACnB6B,aAAA,CAAC1L,OAAO,QACLmB,EAAE,CAAE,yCAA0C,CACxC,CACL,CAAC;EAER;EAEA,MAAM0M,oBAAoB,GAAG7J,iBAAiB,GAC3CA,iBAAiB,GACjBtC,WAAW;;EAEd;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAEC,IAAKyH,aAAa,IAAInF,iBAAiB,EAAG;IACzC,OACC0H,aAAA,CAACxC,OAAO;MAAA,GAAMW;IAAU,GACvB6B,aAAA,CAACmC,oBAAoB;MACpBzK,UAAU,EAAGA,UAAY;MACzBkK,aAAa,EAAGzI,GAAK;MACrB1B,QAAQ,EAAGA,QAAU;MACrB6E,4BAA4B,EAC3BA,4BACA;MACDC,uCAAuC,EACtCA,uCACA;MACD6C,sBAAsB,EAAGA,sBAAwB;MACjDH,mBAAmB,EAAGA,mBAAqB;MAC3CmD,aAAa,EAAGpH;IAAmC,CACnD,CACO,CAAC;EAEZ;EAEA,OACCgF,aAAA,CAACpL,cAAc;IAACyN,IAAI,EAAC,UAAU;IAACC,IAAI,EAAC,eAAe;IAACnD,EAAE,EAAGhG;EAAK,GAC9D6G,aAAA,CAACjM,iBAAiB;IAACwO,QAAQ,EAAGjJ;EAAa,GAC1C0G,aAAA,CAAC/I,qBAAqB;IACrBQ,QAAQ,EAAGA,QAAU;IACrBoD,6BAA6B,EAC5BA,6BACA;IACDE,2BAA2B,EAAGA,2BAA6B;IAC3D6G,aAAa,EAAGzI,GAAK;IACrB8C,uBAAuB,EAAGA,uBAAyB;IACnDyF,2BAA2B,EAAGA,2BAA6B;IAC3DG,WAAW,EAAG7G,iCAAmC;IACjDiE,mBAAmB,EAAGA,mBAAqB;IAC3CG,sBAAsB,EAAGA,sBAAwB;IACjDzB,SAAS,EAAGA,SAAW;IACvBnE,gBAAgB,EAAGA;EAAkB,CACrC,CAAC,EACAA,gBAAgB,KAAK,SAAS,IAAIuG,wBAAwB,EAC1DvG,gBAAgB,KAAK,SAAS,IAAI2D,iBAAiB,IACpD6C,aAAA,CAACnM,iBAAiB;IAACmN,KAAK,EAAC;EAAU,GAChC7E,sCAAsC,IACvCD,2BAA2B,IAC1B8D,aAAA,CAAC7J,yBAAyB,MAAE,CAC5B,EACAkG,sCAAsC,IACvCD,2BAA2B,IAC1B4D,aAAA,CAAC3J,2BAA2B;IAC3BmM,QAAQ,EAAGA,CAAA,KAAM;MAChBhH,kBAAkB,CAAE/D,QAAQ,EAAE,EAAG,CAAC;MAClCkC,8BAA8B,CAC7BlE,EAAE,CACD,uCACD,CACD,CAAC;IACF;EAAG,CACH,CACD,EACFuK,aAAA,CAAChJ,iBAAiB;IACjB4J,QAAQ,EAAGc,2BAA6B;IACxC/J,SAAS,EAAC;EAAyC,CACnD,CACiB,CACnB,EAEDqI,aAAA,CAACxC,OAAO;IAAA,GACFW,UAAU;IACf,oBACC,CAAEV,aAAa,IAAI,CAAEE,SAAS,GAC3B8D,uBAAuB,GACvBE;EACH,GAEChE,SAAS,IACVqC,aAAA;IAAKrI,SAAS,EAAC;EAAkD,GAChEqI,aAAA,CAACzK,OAAO;IAACoC,SAAS,EAAC;EAAwC,CAAE,CACzD,CACL,EAEC,CAAEgG,SAAS,IACZqC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAC5I,yBAAyB;IACzB+H,EAAE,EAAGsC;EAAyB,CAC9B,CAAC,EACFzB,aAAA,CAAC/J,iBAAiB;IACjBkJ,EAAE,EAAG1H,QAAU;IACfqK,QAAQ,EAAGlG,2BAA6B;IACxC3C,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACb6I,MAAM,EAAGpG,oBAAsB;IAC/BuC,YAAY,EAAGA,YAAc;IAC7B8D,iBAAiB,EAAG,QAAQ,KAAKtJ,WAAa;IAC9CV,sBAAsB,EACrBA,sBACA;IACDE,gBAAgB,EAAGA;EAAkB,GAEnCiF,iBAAiB,IAClB6C,aAAA,CAAC9J,qBAAqB;IACrBuB,QAAQ,EAAGA,QAAU;IACrBgL,oBAAoB,EACnB,CAAC,CAAEnK,iBACH;IACDM,YAAY,EAAGA,YAAc;IAC7BG,WAAW,EAAGA;EAAa,CAC3B,CAEgB,CAClB,CAEK,CACS,CACJ,CAAC;AAEnB;AAEA,eAAe5E,UAAU,CACxB;EAAE2D,SAAS,EAAE;AAAQ,CAAC,EACtB;EAAEF,eAAe,EAAE;AAAQ,CAAC,EAC5B;EAAEI,sBAAsB,EAAE;AAAQ,CAAC,EACnC;EAAEE,gBAAgB,EAAE;AAAQ,CAC7B,CAAC,CAAEZ,UAAW,CAAC"}
@@ -2,17 +2,16 @@ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { Button, Modal, __experimentalHStack as HStack } from '@wordpress/components';
6
- import { store as coreStore, useEntityId, useEntityProp } from '@wordpress/core-data';
5
+ import { Button, __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';
6
+ import { store as coreStore, useEntityId } from '@wordpress/core-data';
7
7
  import { useDispatch } from '@wordpress/data';
8
8
  import { useState } from '@wordpress/element';
9
- import { __, sprintf } from '@wordpress/i18n';
9
+ import { __ } from '@wordpress/i18n';
10
10
  export default function NavigationMenuDeleteControl({
11
11
  onDelete
12
12
  }) {
13
- const [isConfirmModalVisible, setIsConfirmModalVisible] = useState(false);
13
+ const [isConfirmDialogVisible, setIsConfirmDialogVisible] = useState(false);
14
14
  const id = useEntityId('postType', 'wp_navigation');
15
- const [title] = useEntityProp('postType', 'wp_navigation', 'title');
16
15
  const {
17
16
  deleteEntityRecord
18
17
  } = useDispatch(coreStore);
@@ -21,27 +20,20 @@ export default function NavigationMenuDeleteControl({
21
20
  variant: "secondary",
22
21
  isDestructive: true,
23
22
  onClick: () => {
24
- setIsConfirmModalVisible(true);
23
+ setIsConfirmDialogVisible(true);
25
24
  }
26
- }, __('Delete menu')), isConfirmModalVisible && createElement(Modal, {
27
- title: sprintf( /* translators: %s: the name of a menu to delete */
28
- __('Delete %s'), title),
29
- onRequestClose: () => setIsConfirmModalVisible(false)
30
- }, createElement("p", null, __('Are you sure you want to delete this navigation menu?')), createElement(HStack, {
31
- justify: "right"
32
- }, createElement(Button, {
33
- variant: "tertiary",
34
- onClick: () => {
35
- setIsConfirmModalVisible(false);
36
- }
37
- }, __('Cancel')), createElement(Button, {
38
- variant: "primary",
39
- onClick: () => {
25
+ }, __('Delete menu')), isConfirmDialogVisible && createElement(ConfirmDialog, {
26
+ isOpen: true,
27
+ onConfirm: () => {
40
28
  deleteEntityRecord('postType', 'wp_navigation', id, {
41
29
  force: true
42
30
  });
43
- onDelete(title);
44
- }
45
- }, __('Confirm')))));
31
+ onDelete();
32
+ },
33
+ onCancel: () => {
34
+ setIsConfirmDialogVisible(false);
35
+ },
36
+ confirmButtonText: __('Delete')
37
+ }, __('Are you sure you want to delete this Navigation menu?')));
46
38
  }
47
39
  //# sourceMappingURL=navigation-menu-delete-control.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Button","Modal","__experimentalHStack","HStack","store","coreStore","useEntityId","useEntityProp","useDispatch","useState","__","sprintf","NavigationMenuDeleteControl","onDelete","isConfirmModalVisible","setIsConfirmModalVisible","id","title","deleteEntityRecord","createElement","Fragment","className","variant","isDestructive","onClick","onRequestClose","justify","force"],"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-delete-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport {\n\tstore as coreStore,\n\tuseEntityId,\n\tuseEntityProp,\n} from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\nexport default function NavigationMenuDeleteControl( { onDelete } ) {\n\tconst [ isConfirmModalVisible, setIsConfirmModalVisible ] =\n\t\tuseState( false );\n\tconst id = useEntityId( 'postType', 'wp_navigation' );\n\tconst [ title ] = useEntityProp( 'postType', 'wp_navigation', 'title' );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tclassName=\"wp-block-navigation-delete-menu-button\"\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\tisDestructive\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsConfirmModalVisible( true );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Delete menu' ) }\n\t\t\t</Button>\n\t\t\t{ isConfirmModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t/* translators: %s: the name of a menu to delete */\n\t\t\t\t\t\t__( 'Delete %s' ),\n\t\t\t\t\t\ttitle\n\t\t\t\t\t) }\n\t\t\t\t\tonRequestClose={ () => setIsConfirmModalVisible( false ) }\n\t\t\t\t>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Are you sure you want to delete this navigation menu?'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetIsConfirmModalVisible( false );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tdeleteEntityRecord(\n\t\t\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t\t\t'wp_navigation',\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\t{ force: true }\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tonDelete( title );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Confirm' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,KAAK,EACLC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SACCC,KAAK,IAAIC,SAAS,EAClBC,WAAW,EACXC,aAAa,QACP,sBAAsB;AAC7B,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAE7C,eAAe,SAASC,2BAA2BA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACnE,MAAM,CAAEC,qBAAqB,EAAEC,wBAAwB,CAAE,GACxDN,QAAQ,CAAE,KAAM,CAAC;EAClB,MAAMO,EAAE,GAAGV,WAAW,CAAE,UAAU,EAAE,eAAgB,CAAC;EACrD,MAAM,CAAEW,KAAK,CAAE,GAAGV,aAAa,CAAE,UAAU,EAAE,eAAe,EAAE,OAAQ,CAAC;EACvE,MAAM;IAAEW;EAAmB,CAAC,GAAGV,WAAW,CAAEH,SAAU,CAAC;EAEvD,OACCc,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACnB,MAAM;IACNqB,SAAS,EAAC,wCAAwC;IAClDC,OAAO,EAAC,WAAW;IACnBC,aAAa;IACbC,OAAO,EAAGA,CAAA,KAAM;MACfT,wBAAwB,CAAE,IAAK,CAAC;IACjC;EAAG,GAEDL,EAAE,CAAE,aAAc,CACb,CAAC,EACPI,qBAAqB,IACtBK,aAAA,CAAClB,KAAK;IACLgB,KAAK,EAAGN,OAAO,EACd;IACAD,EAAE,CAAE,WAAY,CAAC,EACjBO,KACD,CAAG;IACHQ,cAAc,EAAGA,CAAA,KAAMV,wBAAwB,CAAE,KAAM;EAAG,GAE1DI,aAAA,YACGT,EAAE,CACH,uDACD,CACE,CAAC,EACJS,aAAA,CAAChB,MAAM;IAACuB,OAAO,EAAC;EAAO,GACtBP,aAAA,CAACnB,MAAM;IACNsB,OAAO,EAAC,UAAU;IAClBE,OAAO,EAAGA,CAAA,KAAM;MACfT,wBAAwB,CAAE,KAAM,CAAC;IAClC;EAAG,GAEDL,EAAE,CAAE,QAAS,CACR,CAAC,EACTS,aAAA,CAACnB,MAAM;IACNsB,OAAO,EAAC,SAAS;IACjBE,OAAO,EAAGA,CAAA,KAAM;MACfN,kBAAkB,CACjB,UAAU,EACV,eAAe,EACfF,EAAE,EACF;QAAEW,KAAK,EAAE;MAAK,CACf,CAAC;MACDd,QAAQ,CAAEI,KAAM,CAAC;IAClB;EAAG,GAEDP,EAAE,CAAE,SAAU,CACT,CACD,CACF,CAEP,CAAC;AAEL"}
1
+ {"version":3,"names":["Button","__experimentalConfirmDialog","ConfirmDialog","store","coreStore","useEntityId","useDispatch","useState","__","NavigationMenuDeleteControl","onDelete","isConfirmDialogVisible","setIsConfirmDialogVisible","id","deleteEntityRecord","createElement","Fragment","className","variant","isDestructive","onClick","isOpen","onConfirm","force","onCancel","confirmButtonText"],"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-delete-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { store as coreStore, useEntityId } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\nexport default function NavigationMenuDeleteControl( { onDelete } ) {\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst id = useEntityId( 'postType', 'wp_navigation' );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tclassName=\"wp-block-navigation-delete-menu-button\"\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\tisDestructive\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsConfirmDialogVisible( true );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Delete menu' ) }\n\t\t\t</Button>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\tdeleteEntityRecord( 'postType', 'wp_navigation', id, {\n\t\t\t\t\t\t\tforce: true,\n\t\t\t\t\t\t} );\n\t\t\t\t\t\tonDelete();\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to delete this Navigation menu?'\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,2BAA2B,IAAIC,aAAa,QACtC,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,SAAS,EAAEC,WAAW,QAAQ,sBAAsB;AACtE,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,eAAe,SAASC,2BAA2BA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACnE,MAAM,CAAEC,sBAAsB,EAAEC,yBAAyB,CAAE,GAC1DL,QAAQ,CAAE,KAAM,CAAC;EAClB,MAAMM,EAAE,GAAGR,WAAW,CAAE,UAAU,EAAE,eAAgB,CAAC;EACrD,MAAM;IAAES;EAAmB,CAAC,GAAGR,WAAW,CAAEF,SAAU,CAAC;EAEvD,OACCW,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACf,MAAM;IACNiB,SAAS,EAAC,wCAAwC;IAClDC,OAAO,EAAC,WAAW;IACnBC,aAAa;IACbC,OAAO,EAAGA,CAAA,KAAM;MACfR,yBAAyB,CAAE,IAAK,CAAC;IAClC;EAAG,GAEDJ,EAAE,CAAE,aAAc,CACb,CAAC,EACPG,sBAAsB,IACvBI,aAAA,CAACb,aAAa;IACbmB,MAAM;IACNC,SAAS,EAAGA,CAAA,KAAM;MACjBR,kBAAkB,CAAE,UAAU,EAAE,eAAe,EAAED,EAAE,EAAE;QACpDU,KAAK,EAAE;MACR,CAAE,CAAC;MACHb,QAAQ,CAAC,CAAC;IACX,CAAG;IACHc,QAAQ,EAAGA,CAAA,KAAM;MAChBZ,yBAAyB,CAAE,KAAM,CAAC;IACnC,CAAG;IACHa,iBAAiB,EAAGjB,EAAE,CAAE,QAAS;EAAG,GAElCA,EAAE,CACH,uDACD,CACc,CAEf,CAAC;AAEL"}
@@ -37,7 +37,7 @@ function NavigationMenuSelector({
37
37
  }) {
38
38
  /* translators: %s: The name of a menu. */
39
39
  const createActionLabel = __("Create from '%s'");
40
- const [isCreatingMenu, setIsCreatingMenu] = useState(false);
40
+ const [isUpdatingMenuRef, setIsUpdatingMenuRef] = useState(false);
41
41
  actionLabel = actionLabel || createActionLabel;
42
42
  const {
43
43
  menus: classicMenus
@@ -46,7 +46,7 @@ function NavigationMenuSelector({
46
46
  navigationMenus,
47
47
  isResolvingNavigationMenus,
48
48
  hasResolvedNavigationMenus,
49
- canUserCreateNavigationMenu,
49
+ canUserCreateNavigationMenus,
50
50
  canSwitchNavigationMenu
51
51
  } = useNavigationMenu();
52
52
  const [currentTitle] = useEntityProp('postType', 'wp_navigation', 'title');
@@ -60,19 +60,20 @@ function NavigationMenuSelector({
60
60
  return {
61
61
  value: id,
62
62
  label,
63
- ariaLabel: sprintf(actionLabel, label)
63
+ ariaLabel: sprintf(actionLabel, label),
64
+ disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus
64
65
  };
65
66
  }) || [];
66
- }, [navigationMenus, actionLabel]);
67
+ }, [navigationMenus, actionLabel, isResolvingNavigationMenus, hasResolvedNavigationMenus, isUpdatingMenuRef]);
67
68
  const hasNavigationMenus = !!navigationMenus?.length;
68
69
  const hasClassicMenus = !!classicMenus?.length;
69
70
  const showNavigationMenus = !!canSwitchNavigationMenu;
70
- const showClassicMenus = !!canUserCreateNavigationMenu;
71
+ const showClassicMenus = !!canUserCreateNavigationMenus;
71
72
  const noMenuSelected = hasNavigationMenus && !currentMenuId;
72
73
  const noBlockMenus = !hasNavigationMenus && hasResolvedNavigationMenus;
73
74
  const menuUnavailable = hasResolvedNavigationMenus && currentMenuId === null;
74
75
  let selectorLabel = '';
75
- if (isCreatingMenu || isResolvingNavigationMenus) {
76
+ if (isResolvingNavigationMenus) {
76
77
  selectorLabel = __('Loading…');
77
78
  } else if (noMenuSelected || noBlockMenus || menuUnavailable) {
78
79
  // Note: classic Menus may be available.
@@ -82,15 +83,15 @@ function NavigationMenuSelector({
82
83
  selectorLabel = currentTitle;
83
84
  }
84
85
  useEffect(() => {
85
- if (isCreatingMenu && (createNavigationMenuIsSuccess || createNavigationMenuIsError)) {
86
- setIsCreatingMenu(false);
86
+ if (isUpdatingMenuRef && (createNavigationMenuIsSuccess || createNavigationMenuIsError)) {
87
+ setIsUpdatingMenuRef(false);
87
88
  }
88
- }, [hasResolvedNavigationMenus, createNavigationMenuIsSuccess, canUserCreateNavigationMenu, createNavigationMenuIsError, isCreatingMenu, menuUnavailable, noBlockMenus, noMenuSelected]);
89
+ }, [hasResolvedNavigationMenus, createNavigationMenuIsSuccess, canUserCreateNavigationMenus, createNavigationMenuIsError, isUpdatingMenuRef, menuUnavailable, noBlockMenus, noMenuSelected]);
89
90
  const NavigationMenuSelectorDropdown = createElement(DropdownMenu, {
90
91
  label: selectorLabel,
91
92
  icon: moreVertical,
92
93
  toggleProps: {
93
- isSmall: true
94
+ size: 'small'
94
95
  }
95
96
  }, ({
96
97
  onClose
@@ -99,35 +100,35 @@ function NavigationMenuSelector({
99
100
  }, createElement(MenuItemsChoice, {
100
101
  value: currentMenuId,
101
102
  onSelect: menuId => {
102
- setIsCreatingMenu(true);
103
103
  onSelectNavigationMenu(menuId);
104
104
  onClose();
105
105
  },
106
- choices: menuChoices,
107
- disabled: isCreatingMenu
106
+ choices: menuChoices
108
107
  })), showClassicMenus && hasClassicMenus && createElement(MenuGroup, {
109
108
  label: __('Import Classic Menus')
110
109
  }, classicMenus?.map(menu => {
111
110
  const label = decodeEntities(menu.name);
112
111
  return createElement(MenuItem, {
113
- onClick: () => {
114
- setIsCreatingMenu(true);
115
- onSelectClassicMenu(menu);
112
+ onClick: async () => {
113
+ setIsUpdatingMenuRef(true);
114
+ await onSelectClassicMenu(menu);
115
+ setIsUpdatingMenuRef(false);
116
116
  onClose();
117
117
  },
118
118
  key: menu.id,
119
119
  "aria-label": sprintf(createActionLabel, label),
120
- disabled: isCreatingMenu
120
+ disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus
121
121
  }, label);
122
- })), canUserCreateNavigationMenu && createElement(MenuGroup, {
122
+ })), canUserCreateNavigationMenus && createElement(MenuGroup, {
123
123
  label: __('Tools')
124
124
  }, createElement(MenuItem, {
125
- disabled: isCreatingMenu,
126
- onClick: () => {
125
+ onClick: async () => {
126
+ setIsUpdatingMenuRef(true);
127
+ await onCreateNew();
128
+ setIsUpdatingMenuRef(false);
127
129
  onClose();
128
- onCreateNew();
129
- setIsCreatingMenu(true);
130
- }
130
+ },
131
+ disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus
131
132
  }, __('Create new menu')))));
132
133
  return NavigationMenuSelectorDropdown;
133
134
  }
@@ -1 +1 @@
1
- {"version":3,"names":["MenuGroup","MenuItem","MenuItemsChoice","DropdownMenu","moreVertical","__","sprintf","decodeEntities","useEffect","useMemo","useState","useEntityProp","useNavigationMenu","useNavigationEntities","buildMenuLabel","title","id","status","NavigationMenuSelector","currentMenuId","onSelectNavigationMenu","onSelectClassicMenu","onCreateNew","actionLabel","createNavigationMenuIsSuccess","createNavigationMenuIsError","createActionLabel","isCreatingMenu","setIsCreatingMenu","menus","classicMenus","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","canUserCreateNavigationMenu","canSwitchNavigationMenu","currentTitle","menuChoices","map","index","label","rendered","value","ariaLabel","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","noMenuSelected","noBlockMenus","menuUnavailable","selectorLabel","NavigationMenuSelectorDropdown","createElement","icon","toggleProps","isSmall","onClose","Fragment","onSelect","menuId","choices","disabled","menu","name","onClick","key"],"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tDropdownMenu,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useEffect, useMemo, useState } from '@wordpress/element';\nimport { useEntityProp } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nfunction buildMenuLabel( title, id, status ) {\n\tif ( ! title ) {\n\t\t/* translators: %s is the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title );\n\t}\n\n\treturn sprintf(\n\t\t// translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).\n\t\t__( '%1$s (%2$s)' ),\n\t\tdecodeEntities( title ),\n\t\tstatus\n\t);\n}\n\nfunction NavigationMenuSelector( {\n\tcurrentMenuId,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateNew,\n\tactionLabel,\n\tcreateNavigationMenuIsSuccess,\n\tcreateNavigationMenuIsError,\n} ) {\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tconst [ isCreatingMenu, setIsCreatingMenu ] = useState( false );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\tisResolvingNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tcanUserCreateNavigationMenu,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst [ currentTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t'title'\n\t);\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title, status }, index ) => {\n\t\t\t\tconst label = buildMenuLabel(\n\t\t\t\t\ttitle?.rendered,\n\t\t\t\t\tindex + 1,\n\t\t\t\t\tstatus\n\t\t\t\t);\n\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, actionLabel ] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenu;\n\n\tconst noMenuSelected = hasNavigationMenus && ! currentMenuId;\n\tconst noBlockMenus = ! hasNavigationMenus && hasResolvedNavigationMenus;\n\tconst menuUnavailable =\n\t\thasResolvedNavigationMenus && currentMenuId === null;\n\n\tlet selectorLabel = '';\n\n\tif ( isCreatingMenu || isResolvingNavigationMenus ) {\n\t\tselectorLabel = __( 'Loading…' );\n\t} else if ( noMenuSelected || noBlockMenus || menuUnavailable ) {\n\t\t// Note: classic Menus may be available.\n\t\tselectorLabel = __( 'Choose or create a Navigation menu' );\n\t} else {\n\t\t// Current Menu's title.\n\t\tselectorLabel = currentTitle;\n\t}\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisCreatingMenu &&\n\t\t\t( createNavigationMenuIsSuccess || createNavigationMenuIsError )\n\t\t) {\n\t\t\tsetIsCreatingMenu( false );\n\t\t}\n\t}, [\n\t\thasResolvedNavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tcanUserCreateNavigationMenu,\n\t\tcreateNavigationMenuIsError,\n\t\tisCreatingMenu,\n\t\tmenuUnavailable,\n\t\tnoBlockMenus,\n\t\tnoMenuSelected,\n\t] );\n\n\tconst NavigationMenuSelectorDropdown = (\n\t\t<DropdownMenu\n\t\t\tlabel={ selectorLabel }\n\t\t\ticon={ moreVertical }\n\t\t\ttoggleProps={ { isSmall: true } }\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={ ( menuId ) => {\n\t\t\t\t\t\t\t\t\tsetIsCreatingMenu( true );\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu( menuId );\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchoices={ menuChoices }\n\t\t\t\t\t\t\t\tdisabled={ isCreatingMenu }\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={ __( 'Import 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={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetIsCreatingMenu( true );\n\t\t\t\t\t\t\t\t\t\t\tonSelectClassicMenu( menu );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\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\tdisabled={ isCreatingMenu }\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{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tdisabled={ isCreatingMenu }\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\tonCreateNew();\n\t\t\t\t\t\t\t\t\tsetIsCreatingMenu( true );\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{ __( 'Create new menu' ) }\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</DropdownMenu>\n\t);\n\n\treturn NavigationMenuSelectorDropdown;\n}\n\nexport default NavigationMenuSelector;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,SAAS,EACTC,QAAQ,EACRC,eAAe,EACfC,YAAY,QACN,uBAAuB;AAC9B,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,oBAAoB;AACjE,SAASC,aAAa,QAAQ,sBAAsB;;AAEpD;AACA;AACA;AACA,OAAOC,iBAAiB,MAAM,wBAAwB;AACtD,OAAOC,qBAAqB,MAAM,4BAA4B;AAE9D,SAASC,cAAcA,CAAEC,KAAK,EAAEC,EAAE,EAAEC,MAAM,EAAG;EAC5C,IAAK,CAAEF,KAAK,EAAG;IACd;IACA,OAAOT,OAAO,CAAED,EAAE,CAAE,eAAgB,CAAC,EAAEW,EAAG,CAAC;EAC5C;EAEA,IAAKC,MAAM,KAAK,SAAS,EAAG;IAC3B,OAAOV,cAAc,CAAEQ,KAAM,CAAC;EAC/B;EAEA,OAAOT,OAAO;EACb;EACAD,EAAE,CAAE,aAAc,CAAC,EACnBE,cAAc,CAAEQ,KAAM,CAAC,EACvBE,MACD,CAAC;AACF;AAEA,SAASC,sBAAsBA,CAAE;EAChCC,aAAa;EACbC,sBAAsB;EACtBC,mBAAmB;EACnBC,WAAW;EACXC,WAAW;EACXC,6BAA6B;EAC7BC;AACD,CAAC,EAAG;EACH;EACA,MAAMC,iBAAiB,GAAGrB,EAAE,CAAE,kBAAmB,CAAC;EAElD,MAAM,CAAEsB,cAAc,EAAEC,iBAAiB,CAAE,GAAGlB,QAAQ,CAAE,KAAM,CAAC;EAE/Da,WAAW,GAAGA,WAAW,IAAIG,iBAAiB;EAE9C,MAAM;IAAEG,KAAK,EAAEC;EAAa,CAAC,GAAGjB,qBAAqB,CAAC,CAAC;EAEvD,MAAM;IACLkB,eAAe;IACfC,0BAA0B;IAC1BC,0BAA0B;IAC1BC,2BAA2B;IAC3BC;EACD,CAAC,GAAGvB,iBAAiB,CAAC,CAAC;EAEvB,MAAM,CAAEwB,YAAY,CAAE,GAAGzB,aAAa,CACrC,UAAU,EACV,eAAe,EACf,OACD,CAAC;EAED,MAAM0B,WAAW,GAAG5B,OAAO,CAAE,MAAM;IAClC,OACCsB,eAAe,EAAEO,GAAG,CAAE,CAAE;MAAEtB,EAAE;MAAED,KAAK;MAAEE;IAAO,CAAC,EAAEsB,KAAK,KAAM;MACzD,MAAMC,KAAK,GAAG1B,cAAc,CAC3BC,KAAK,EAAE0B,QAAQ,EACfF,KAAK,GAAG,CAAC,EACTtB,MACD,CAAC;MAED,OAAO;QACNyB,KAAK,EAAE1B,EAAE;QACTwB,KAAK;QACLG,SAAS,EAAErC,OAAO,CAAEiB,WAAW,EAAEiB,KAAM;MACxC,CAAC;IACF,CAAE,CAAC,IAAI,EAAE;EAEX,CAAC,EAAE,CAAET,eAAe,EAAER,WAAW,CAAG,CAAC;EAErC,MAAMqB,kBAAkB,GAAG,CAAC,CAAEb,eAAe,EAAEc,MAAM;EACrD,MAAMC,eAAe,GAAG,CAAC,CAAEhB,YAAY,EAAEe,MAAM;EAC/C,MAAME,mBAAmB,GAAG,CAAC,CAAEZ,uBAAuB;EACtD,MAAMa,gBAAgB,GAAG,CAAC,CAAEd,2BAA2B;EAEvD,MAAMe,cAAc,GAAGL,kBAAkB,IAAI,CAAEzB,aAAa;EAC5D,MAAM+B,YAAY,GAAG,CAAEN,kBAAkB,IAAIX,0BAA0B;EACvE,MAAMkB,eAAe,GACpBlB,0BAA0B,IAAId,aAAa,KAAK,IAAI;EAErD,IAAIiC,aAAa,GAAG,EAAE;EAEtB,IAAKzB,cAAc,IAAIK,0BAA0B,EAAG;IACnDoB,aAAa,GAAG/C,EAAE,CAAE,UAAW,CAAC;EACjC,CAAC,MAAM,IAAK4C,cAAc,IAAIC,YAAY,IAAIC,eAAe,EAAG;IAC/D;IACAC,aAAa,GAAG/C,EAAE,CAAE,oCAAqC,CAAC;EAC3D,CAAC,MAAM;IACN;IACA+C,aAAa,GAAGhB,YAAY;EAC7B;EAEA5B,SAAS,CAAE,MAAM;IAChB,IACCmB,cAAc,KACZH,6BAA6B,IAAIC,2BAA2B,CAAE,EAC/D;MACDG,iBAAiB,CAAE,KAAM,CAAC;IAC3B;EACD,CAAC,EAAE,CACFK,0BAA0B,EAC1BT,6BAA6B,EAC7BU,2BAA2B,EAC3BT,2BAA2B,EAC3BE,cAAc,EACdwB,eAAe,EACfD,YAAY,EACZD,cAAc,CACb,CAAC;EAEH,MAAMI,8BAA8B,GACnCC,aAAA,CAACnD,YAAY;IACZqC,KAAK,EAAGY,aAAe;IACvBG,IAAI,EAAGnD,YAAc;IACrBoD,WAAW,EAAG;MAAEC,OAAO,EAAE;IAAK;EAAG,GAE/B,CAAE;IAAEC;EAAQ,CAAC,KACdJ,aAAA,CAAAK,QAAA,QACGZ,mBAAmB,IAAIH,kBAAkB,IAC1CU,aAAA,CAACtD,SAAS;IAACwC,KAAK,EAAGnC,EAAE,CAAE,OAAQ;EAAG,GACjCiD,aAAA,CAACpD,eAAe;IACfwC,KAAK,EAAGvB,aAAe;IACvByC,QAAQ,EAAKC,MAAM,IAAM;MACxBjC,iBAAiB,CAAE,IAAK,CAAC;MACzBR,sBAAsB,CAAEyC,MAAO,CAAC;MAChCH,OAAO,CAAC,CAAC;IACV,CAAG;IACHI,OAAO,EAAGzB,WAAa;IACvB0B,QAAQ,EAAGpC;EAAgB,CAC3B,CACS,CACX,EACCqB,gBAAgB,IAAIF,eAAe,IACpCQ,aAAA,CAACtD,SAAS;IAACwC,KAAK,EAAGnC,EAAE,CAAE,sBAAuB;EAAG,GAC9CyB,YAAY,EAAEQ,GAAG,CAAI0B,IAAI,IAAM;IAChC,MAAMxB,KAAK,GAAGjC,cAAc,CAAEyD,IAAI,CAACC,IAAK,CAAC;IACzC,OACCX,aAAA,CAACrD,QAAQ;MACRiE,OAAO,EAAGA,CAAA,KAAM;QACftC,iBAAiB,CAAE,IAAK,CAAC;QACzBP,mBAAmB,CAAE2C,IAAK,CAAC;QAC3BN,OAAO,CAAC,CAAC;MACV,CAAG;MACHS,GAAG,EAAGH,IAAI,CAAChD,EAAI;MACf,cAAaV,OAAO,CACnBoB,iBAAiB,EACjBc,KACD,CAAG;MACHuB,QAAQ,EAAGpC;IAAgB,GAEzBa,KACO,CAAC;EAEb,CAAE,CACQ,CACX,EAECN,2BAA2B,IAC5BoB,aAAA,CAACtD,SAAS;IAACwC,KAAK,EAAGnC,EAAE,CAAE,OAAQ;EAAG,GACjCiD,aAAA,CAACrD,QAAQ;IACR8D,QAAQ,EAAGpC,cAAgB;IAC3BuC,OAAO,EAAGA,CAAA,KAAM;MACfR,OAAO,CAAC,CAAC;MACTpC,WAAW,CAAC,CAAC;MACbM,iBAAiB,CAAE,IAAK,CAAC;IAC1B;EAAG,GAEDvB,EAAE,CAAE,iBAAkB,CACf,CACA,CAEX,CAEU,CACd;EAED,OAAOgD,8BAA8B;AACtC;AAEA,eAAenC,sBAAsB"}
1
+ {"version":3,"names":["MenuGroup","MenuItem","MenuItemsChoice","DropdownMenu","moreVertical","__","sprintf","decodeEntities","useEffect","useMemo","useState","useEntityProp","useNavigationMenu","useNavigationEntities","buildMenuLabel","title","id","status","NavigationMenuSelector","currentMenuId","onSelectNavigationMenu","onSelectClassicMenu","onCreateNew","actionLabel","createNavigationMenuIsSuccess","createNavigationMenuIsError","createActionLabel","isUpdatingMenuRef","setIsUpdatingMenuRef","menus","classicMenus","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","canUserCreateNavigationMenus","canSwitchNavigationMenu","currentTitle","menuChoices","map","index","label","rendered","value","ariaLabel","disabled","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","noMenuSelected","noBlockMenus","menuUnavailable","selectorLabel","NavigationMenuSelectorDropdown","createElement","icon","toggleProps","size","onClose","Fragment","onSelect","menuId","choices","menu","name","onClick","key"],"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tDropdownMenu,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useEffect, useMemo, useState } from '@wordpress/element';\nimport { useEntityProp } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nfunction buildMenuLabel( title, id, status ) {\n\tif ( ! title ) {\n\t\t/* translators: %s is the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title );\n\t}\n\n\treturn sprintf(\n\t\t// translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).\n\t\t__( '%1$s (%2$s)' ),\n\t\tdecodeEntities( title ),\n\t\tstatus\n\t);\n}\n\nfunction NavigationMenuSelector( {\n\tcurrentMenuId,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateNew,\n\tactionLabel,\n\tcreateNavigationMenuIsSuccess,\n\tcreateNavigationMenuIsError,\n} ) {\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tconst [ isUpdatingMenuRef, setIsUpdatingMenuRef ] = useState( false );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\tisResolvingNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tcanUserCreateNavigationMenus,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst [ currentTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t'title'\n\t);\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title, status }, index ) => {\n\t\t\t\tconst label = buildMenuLabel(\n\t\t\t\t\ttitle?.rendered,\n\t\t\t\t\tindex + 1,\n\t\t\t\t\tstatus\n\t\t\t\t);\n\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\tdisabled:\n\t\t\t\t\t\tisUpdatingMenuRef ||\n\t\t\t\t\t\tisResolvingNavigationMenus ||\n\t\t\t\t\t\t! hasResolvedNavigationMenus,\n\t\t\t\t};\n\t\t\t} ) || []\n\t\t);\n\t}, [\n\t\tnavigationMenus,\n\t\tactionLabel,\n\t\tisResolvingNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tisUpdatingMenuRef,\n\t] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenus;\n\n\tconst noMenuSelected = hasNavigationMenus && ! currentMenuId;\n\tconst noBlockMenus = ! hasNavigationMenus && hasResolvedNavigationMenus;\n\tconst menuUnavailable =\n\t\thasResolvedNavigationMenus && currentMenuId === null;\n\n\tlet selectorLabel = '';\n\n\tif ( isResolvingNavigationMenus ) {\n\t\tselectorLabel = __( 'Loading…' );\n\t} else if ( noMenuSelected || noBlockMenus || menuUnavailable ) {\n\t\t// Note: classic Menus may be available.\n\t\tselectorLabel = __( 'Choose or create a Navigation menu' );\n\t} else {\n\t\t// Current Menu's title.\n\t\tselectorLabel = currentTitle;\n\t}\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisUpdatingMenuRef &&\n\t\t\t( createNavigationMenuIsSuccess || createNavigationMenuIsError )\n\t\t) {\n\t\t\tsetIsUpdatingMenuRef( false );\n\t\t}\n\t}, [\n\t\thasResolvedNavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tcanUserCreateNavigationMenus,\n\t\tcreateNavigationMenuIsError,\n\t\tisUpdatingMenuRef,\n\t\tmenuUnavailable,\n\t\tnoBlockMenus,\n\t\tnoMenuSelected,\n\t] );\n\n\tconst NavigationMenuSelectorDropdown = (\n\t\t<DropdownMenu\n\t\t\tlabel={ selectorLabel }\n\t\t\ticon={ moreVertical }\n\t\t\ttoggleProps={ { size: 'small' } }\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={ ( menuId ) => {\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu( menuId );\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\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={ __( 'Import 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={ async () => {\n\t\t\t\t\t\t\t\t\t\t\tsetIsUpdatingMenuRef( true );\n\t\t\t\t\t\t\t\t\t\t\tawait onSelectClassicMenu( menu );\n\t\t\t\t\t\t\t\t\t\t\tsetIsUpdatingMenuRef( false );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\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\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tisUpdatingMenuRef ||\n\t\t\t\t\t\t\t\t\t\t\tisResolvingNavigationMenus ||\n\t\t\t\t\t\t\t\t\t\t\t! hasResolvedNavigationMenus\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{ canUserCreateNavigationMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ async () => {\n\t\t\t\t\t\t\t\t\tsetIsUpdatingMenuRef( true );\n\t\t\t\t\t\t\t\t\tawait onCreateNew();\n\t\t\t\t\t\t\t\t\tsetIsUpdatingMenuRef( false );\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\tisUpdatingMenuRef ||\n\t\t\t\t\t\t\t\t\tisResolvingNavigationMenus ||\n\t\t\t\t\t\t\t\t\t! hasResolvedNavigationMenus\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{ __( 'Create new menu' ) }\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</DropdownMenu>\n\t);\n\n\treturn NavigationMenuSelectorDropdown;\n}\n\nexport default NavigationMenuSelector;\n"],"mappings":"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"}
@@ -18,8 +18,8 @@ export default function NavigationPlaceholder({
18
18
  isSelected,
19
19
  currentMenuId,
20
20
  clientId,
21
- canUserCreateNavigationMenu = false,
22
- isResolvingCanUserCreateNavigationMenu,
21
+ canUserCreateNavigationMenus = false,
22
+ isResolvingCanUserCreateNavigationMenus,
23
23
  onSelectNavigationMenu,
24
24
  onSelectClassicMenu,
25
25
  onCreateEmpty
@@ -39,7 +39,7 @@ export default function NavigationPlaceholder({
39
39
  speak(__('Navigation block setup options ready.'));
40
40
  }
41
41
  }, [hasResolvedMenus, isResolvingMenus, isSelected]);
42
- const isResolvingActions = isResolvingMenus && isResolvingCanUserCreateNavigationMenu;
42
+ const isResolvingActions = isResolvingMenus && isResolvingCanUserCreateNavigationMenus;
43
43
  return createElement(Fragment, null, createElement(Placeholder, {
44
44
  className: "wp-block-navigation-placeholder"
45
45
  }, createElement(PlaceholderPreview, {
@@ -58,7 +58,7 @@ export default function NavigationPlaceholder({
58
58
  clientId: clientId,
59
59
  onSelectNavigationMenu: onSelectNavigationMenu,
60
60
  onSelectClassicMenu: onSelectClassicMenu
61
- }), createElement("hr", null), canUserCreateNavigationMenu && createElement(Button, {
61
+ }), createElement("hr", null), canUserCreateNavigationMenus && createElement(Button, {
62
62
  variant: "tertiary",
63
63
  onClick: onCreateEmpty
64
64
  }, __('Start empty'))))));
@@ -1 +1 @@
1
- {"version":3,"names":["Placeholder","Button","Spinner","__","navigation","Icon","speak","useEffect","useNavigationEntities","PlaceholderPreview","NavigationMenuSelector","NavigationPlaceholder","isSelected","currentMenuId","clientId","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","onSelectNavigationMenu","onSelectClassicMenu","onCreateEmpty","isResolvingMenus","hasResolvedMenus","isResolvingActions","createElement","Fragment","className","isVisible","undefined","icon","variant","onClick"],"sources":["@wordpress/block-library/src/navigation/edit/placeholder/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { navigation, Icon } from '@wordpress/icons';\nimport { speak } from '@wordpress/a11y';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationEntities from '../../use-navigation-entities';\nimport PlaceholderPreview from './placeholder-preview';\nimport NavigationMenuSelector from '../navigation-menu-selector';\n\nexport default function NavigationPlaceholder( {\n\tisSelected,\n\tcurrentMenuId,\n\tclientId,\n\tcanUserCreateNavigationMenu = false,\n\tisResolvingCanUserCreateNavigationMenu,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateEmpty,\n} ) {\n\tconst { isResolvingMenus, hasResolvedMenus } = useNavigationEntities();\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isResolvingMenus ) {\n\t\t\tspeak( __( 'Loading navigation block setup options…' ) );\n\t\t}\n\n\t\tif ( hasResolvedMenus ) {\n\t\t\tspeak( __( 'Navigation block setup options ready.' ) );\n\t\t}\n\t}, [ hasResolvedMenus, isResolvingMenus, isSelected ] );\n\n\tconst isResolvingActions =\n\t\tisResolvingMenus && isResolvingCanUserCreateNavigationMenu;\n\n\treturn (\n\t\t<>\n\t\t\t<Placeholder className=\"wp-block-navigation-placeholder\">\n\t\t\t\t{\n\t\t\t\t\t// The <PlaceholderPreview> component is displayed conditionally via CSS depending on\n\t\t\t\t\t// whether the block is selected or not. This is achieved via CSS to avoid\n\t\t\t\t\t// component re-renders\n\t\t\t\t }\n\t\t\t\t<PlaceholderPreview isVisible={ ! isSelected } />\n\t\t\t\t<div\n\t\t\t\t\taria-hidden={ ! isSelected ? true : undefined }\n\t\t\t\t\tclassName=\"wp-block-navigation-placeholder__controls\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions\">\n\t\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions__indicator\">\n\t\t\t\t\t\t\t<Icon icon={ navigation } /> { __( 'Navigation' ) }\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ isResolvingActions && <Spinner /> }\n\n\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ onCreateEmpty }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Start empty' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Placeholder>\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,MAAM,EAAEC,OAAO,QAAQ,uBAAuB;AACpE,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,EAAEC,IAAI,QAAQ,kBAAkB;AACnD,SAASC,KAAK,QAAQ,iBAAiB;AACvC,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,+BAA+B;AACjE,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,sBAAsB,MAAM,6BAA6B;AAEhE,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,UAAU;EACVC,aAAa;EACbC,QAAQ;EACRC,2BAA2B,GAAG,KAAK;EACnCC,sCAAsC;EACtCC,sBAAsB;EACtBC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGb,qBAAqB,CAAC,CAAC;EAEtED,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEK,UAAU,EAAG;MACnB;IACD;IAEA,IAAKQ,gBAAgB,EAAG;MACvBd,KAAK,CAAEH,EAAE,CAAE,yCAA0C,CAAE,CAAC;IACzD;IAEA,IAAKkB,gBAAgB,EAAG;MACvBf,KAAK,CAAEH,EAAE,CAAE,uCAAwC,CAAE,CAAC;IACvD;EACD,CAAC,EAAE,CAAEkB,gBAAgB,EAAED,gBAAgB,EAAER,UAAU,CAAG,CAAC;EAEvD,MAAMU,kBAAkB,GACvBF,gBAAgB,IAAIJ,sCAAsC;EAE3D,OACCO,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvB,WAAW;IAACyB,SAAS,EAAC;EAAiC,GAMvDF,aAAA,CAACd,kBAAkB;IAACiB,SAAS,EAAG,CAAEd;EAAY,CAAE,CAAC,EACjDW,aAAA;IACC,eAAc,CAAEX,UAAU,GAAG,IAAI,GAAGe,SAAW;IAC/CF,SAAS,EAAC;EAA2C,GAErDF,aAAA;IAAKE,SAAS,EAAC;EAA0C,GACxDF,aAAA;IAAKE,SAAS,EAAC;EAAqD,GACnEF,aAAA,CAAClB,IAAI;IAACuB,IAAI,EAAGxB;EAAY,CAAE,CAAC,KAAC,EAAED,EAAE,CAAE,YAAa,CAC5C,CAAC,EAENoB,aAAA,WAAK,CAAC,EAEJD,kBAAkB,IAAIC,aAAA,CAACrB,OAAO,MAAE,CAAC,EAEnCqB,aAAA,CAACb,sBAAsB;IACtBG,aAAa,EAAGA,aAAe;IAC/BC,QAAQ,EAAGA,QAAU;IACrBG,sBAAsB,EAAGA,sBAAwB;IACjDC,mBAAmB,EAAGA;EAAqB,CAC3C,CAAC,EAEFK,aAAA,WAAK,CAAC,EAEJR,2BAA2B,IAC5BQ,aAAA,CAACtB,MAAM;IACN4B,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGX;EAAe,GAEvBhB,EAAE,CAAE,aAAc,CACb,CAEL,CACD,CACO,CACZ,CAAC;AAEL"}
1
+ {"version":3,"names":["Placeholder","Button","Spinner","__","navigation","Icon","speak","useEffect","useNavigationEntities","PlaceholderPreview","NavigationMenuSelector","NavigationPlaceholder","isSelected","currentMenuId","clientId","canUserCreateNavigationMenus","isResolvingCanUserCreateNavigationMenus","onSelectNavigationMenu","onSelectClassicMenu","onCreateEmpty","isResolvingMenus","hasResolvedMenus","isResolvingActions","createElement","Fragment","className","isVisible","undefined","icon","variant","onClick"],"sources":["@wordpress/block-library/src/navigation/edit/placeholder/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { navigation, Icon } from '@wordpress/icons';\nimport { speak } from '@wordpress/a11y';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationEntities from '../../use-navigation-entities';\nimport PlaceholderPreview from './placeholder-preview';\nimport NavigationMenuSelector from '../navigation-menu-selector';\n\nexport default function NavigationPlaceholder( {\n\tisSelected,\n\tcurrentMenuId,\n\tclientId,\n\tcanUserCreateNavigationMenus = false,\n\tisResolvingCanUserCreateNavigationMenus,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateEmpty,\n} ) {\n\tconst { isResolvingMenus, hasResolvedMenus } = useNavigationEntities();\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isResolvingMenus ) {\n\t\t\tspeak( __( 'Loading navigation block setup options…' ) );\n\t\t}\n\n\t\tif ( hasResolvedMenus ) {\n\t\t\tspeak( __( 'Navigation block setup options ready.' ) );\n\t\t}\n\t}, [ hasResolvedMenus, isResolvingMenus, isSelected ] );\n\n\tconst isResolvingActions =\n\t\tisResolvingMenus && isResolvingCanUserCreateNavigationMenus;\n\n\treturn (\n\t\t<>\n\t\t\t<Placeholder className=\"wp-block-navigation-placeholder\">\n\t\t\t\t{\n\t\t\t\t\t// The <PlaceholderPreview> component is displayed conditionally via CSS depending on\n\t\t\t\t\t// whether the block is selected or not. This is achieved via CSS to avoid\n\t\t\t\t\t// component re-renders\n\t\t\t\t }\n\t\t\t\t<PlaceholderPreview isVisible={ ! isSelected } />\n\t\t\t\t<div\n\t\t\t\t\taria-hidden={ ! isSelected ? true : undefined }\n\t\t\t\t\tclassName=\"wp-block-navigation-placeholder__controls\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions\">\n\t\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions__indicator\">\n\t\t\t\t\t\t\t<Icon icon={ navigation } /> { __( 'Navigation' ) }\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ isResolvingActions && <Spinner /> }\n\n\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ canUserCreateNavigationMenus && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ onCreateEmpty }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Start empty' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Placeholder>\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,MAAM,EAAEC,OAAO,QAAQ,uBAAuB;AACpE,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,EAAEC,IAAI,QAAQ,kBAAkB;AACnD,SAASC,KAAK,QAAQ,iBAAiB;AACvC,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,+BAA+B;AACjE,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,sBAAsB,MAAM,6BAA6B;AAEhE,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,UAAU;EACVC,aAAa;EACbC,QAAQ;EACRC,4BAA4B,GAAG,KAAK;EACpCC,uCAAuC;EACvCC,sBAAsB;EACtBC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGb,qBAAqB,CAAC,CAAC;EAEtED,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEK,UAAU,EAAG;MACnB;IACD;IAEA,IAAKQ,gBAAgB,EAAG;MACvBd,KAAK,CAAEH,EAAE,CAAE,yCAA0C,CAAE,CAAC;IACzD;IAEA,IAAKkB,gBAAgB,EAAG;MACvBf,KAAK,CAAEH,EAAE,CAAE,uCAAwC,CAAE,CAAC;IACvD;EACD,CAAC,EAAE,CAAEkB,gBAAgB,EAAED,gBAAgB,EAAER,UAAU,CAAG,CAAC;EAEvD,MAAMU,kBAAkB,GACvBF,gBAAgB,IAAIJ,uCAAuC;EAE5D,OACCO,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvB,WAAW;IAACyB,SAAS,EAAC;EAAiC,GAMvDF,aAAA,CAACd,kBAAkB;IAACiB,SAAS,EAAG,CAAEd;EAAY,CAAE,CAAC,EACjDW,aAAA;IACC,eAAc,CAAEX,UAAU,GAAG,IAAI,GAAGe,SAAW;IAC/CF,SAAS,EAAC;EAA2C,GAErDF,aAAA;IAAKE,SAAS,EAAC;EAA0C,GACxDF,aAAA;IAAKE,SAAS,EAAC;EAAqD,GACnEF,aAAA,CAAClB,IAAI;IAACuB,IAAI,EAAGxB;EAAY,CAAE,CAAC,KAAC,EAAED,EAAE,CAAE,YAAa,CAC5C,CAAC,EAENoB,aAAA,WAAK,CAAC,EAEJD,kBAAkB,IAAIC,aAAA,CAACrB,OAAO,MAAE,CAAC,EAEnCqB,aAAA,CAACb,sBAAsB;IACtBG,aAAa,EAAGA,aAAe;IAC/BC,QAAQ,EAAGA,QAAU;IACrBG,sBAAsB,EAAGA,sBAAwB;IACjDC,mBAAmB,EAAGA;EAAqB,CAC3C,CAAC,EAEFK,aAAA,WAAK,CAAC,EAEJR,4BAA4B,IAC7BQ,aAAA,CAACtB,MAAM;IACN4B,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGX;EAAe,GAEvBhB,EAAE,CAAE,aAAc,CACb,CAEL,CACD,CACO,CACZ,CAAC;AAEL"}