@wordpress/edit-site 5.15.0 → 5.16.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 (229) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-pattern/index.js +2 -1
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/block-editor/use-site-editor-settings.js +29 -2
  5. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  6. package/build/components/editor/index.js +4 -4
  7. package/build/components/editor/index.js.map +1 -1
  8. package/build/components/global-styles/global-styles-provider.js +12 -7
  9. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  10. package/build/components/global-styles/screen-block.js +16 -0
  11. package/build/components/global-styles/screen-block.js.map +1 -1
  12. package/build/components/global-styles/screen-revisions/index.js +12 -5
  13. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  14. package/build/components/global-styles/screen-revisions/revisions-buttons.js +10 -22
  15. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  16. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +32 -25
  17. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  18. package/build/components/global-styles/style-variations-container.js +5 -3
  19. package/build/components/global-styles/style-variations-container.js.map +1 -1
  20. package/build/components/header-edit-mode/document-actions/index.js +4 -2
  21. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  22. package/build/components/keyboard-shortcuts/edit-mode.js +7 -5
  23. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  24. package/build/components/layout/index.js +9 -2
  25. package/build/components/layout/index.js.map +1 -1
  26. package/build/components/page/index.js +3 -3
  27. package/build/components/page/index.js.map +1 -1
  28. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +1 -1
  29. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  30. package/build/components/page-patterns/patterns-list.js +18 -4
  31. package/build/components/page-patterns/patterns-list.js.map +1 -1
  32. package/build/components/page-patterns/use-patterns.js +20 -3
  33. package/build/components/page-patterns/use-patterns.js.map +1 -1
  34. package/build/components/page-template-parts/index.js +1 -2
  35. package/build/components/page-template-parts/index.js.map +1 -1
  36. package/build/components/page-templates/index.js +1 -16
  37. package/build/components/page-templates/index.js.map +1 -1
  38. package/build/components/resizable-frame/index.js +11 -19
  39. package/build/components/resizable-frame/index.js.map +1 -1
  40. package/build/components/save-button/index.js +4 -2
  41. package/build/components/save-button/index.js.map +1 -1
  42. package/build/components/save-hub/index.js +10 -4
  43. package/build/components/save-hub/index.js.map +1 -1
  44. package/build/components/sidebar-edit-mode/template-panel/index.js +15 -8
  45. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  46. package/build/components/sidebar-navigation-screen/index.js +24 -14
  47. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  48. package/build/components/sidebar-navigation-screen-global-styles/index.js +34 -40
  49. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  50. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  51. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  52. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +4 -4
  53. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  54. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +8 -0
  55. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  56. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +1 -1
  57. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  58. package/build/components/sidebar-navigation-screen-pages/index.js +2 -0
  59. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  60. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +1 -1
  61. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  62. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +8 -1
  63. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  64. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +50 -26
  65. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  66. package/build/components/sidebar-navigation-screen-patterns/category-item.js +0 -5
  67. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  68. package/build/components/sidebar-navigation-screen-patterns/index.js +0 -9
  69. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  70. package/build/components/sidebar-navigation-screen-templates/index.js +1 -10
  71. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  72. package/build/components/sidebar-navigation-screen-templates-browse/index.js +9 -0
  73. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  74. package/build/components/site-hub/index.js +5 -2
  75. package/build/components/site-hub/index.js.map +1 -1
  76. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  77. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  78. package/build/hooks/commands/use-common-commands.js +57 -27
  79. package/build/hooks/commands/use-common-commands.js.map +1 -1
  80. package/build/hooks/commands/use-edit-mode-commands.js +65 -7
  81. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  82. package/build/hooks/push-changes-to-global-styles/index.js +84 -49
  83. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  84. package/build/store/private-actions.js +2 -1
  85. package/build/store/private-actions.js.map +1 -1
  86. package/build/utils/use-debounced-input.js +5 -7
  87. package/build/utils/use-debounced-input.js.map +1 -1
  88. package/build-module/components/add-new-pattern/index.js +2 -1
  89. package/build-module/components/add-new-pattern/index.js.map +1 -1
  90. package/build-module/components/block-editor/use-site-editor-settings.js +29 -2
  91. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  92. package/build-module/components/editor/index.js +4 -4
  93. package/build-module/components/editor/index.js.map +1 -1
  94. package/build-module/components/global-styles/global-styles-provider.js +12 -7
  95. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  96. package/build-module/components/global-styles/screen-block.js +16 -0
  97. package/build-module/components/global-styles/screen-block.js.map +1 -1
  98. package/build-module/components/global-styles/screen-revisions/index.js +13 -6
  99. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  100. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +10 -22
  101. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  102. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +28 -21
  103. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  104. package/build-module/components/global-styles/style-variations-container.js +5 -3
  105. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  106. package/build-module/components/header-edit-mode/document-actions/index.js +6 -4
  107. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  108. package/build-module/components/keyboard-shortcuts/edit-mode.js +7 -5
  109. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  110. package/build-module/components/layout/index.js +9 -2
  111. package/build-module/components/layout/index.js.map +1 -1
  112. package/build-module/components/page/index.js +3 -3
  113. package/build-module/components/page/index.js.map +1 -1
  114. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +1 -1
  115. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  116. package/build-module/components/page-patterns/patterns-list.js +19 -5
  117. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  118. package/build-module/components/page-patterns/use-patterns.js +19 -3
  119. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  120. package/build-module/components/page-template-parts/index.js +1 -2
  121. package/build-module/components/page-template-parts/index.js.map +1 -1
  122. package/build-module/components/page-templates/index.js +2 -15
  123. package/build-module/components/page-templates/index.js.map +1 -1
  124. package/build-module/components/resizable-frame/index.js +12 -20
  125. package/build-module/components/resizable-frame/index.js.map +1 -1
  126. package/build-module/components/save-button/index.js +4 -2
  127. package/build-module/components/save-button/index.js.map +1 -1
  128. package/build-module/components/save-hub/index.js +10 -4
  129. package/build-module/components/save-hub/index.js.map +1 -1
  130. package/build-module/components/sidebar-edit-mode/template-panel/index.js +15 -9
  131. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  132. package/build-module/components/sidebar-navigation-screen/index.js +21 -14
  133. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  134. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +34 -40
  135. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  136. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  137. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  138. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +4 -4
  139. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  140. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +7 -0
  141. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  142. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +2 -2
  143. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  144. package/build-module/components/sidebar-navigation-screen-pages/index.js +2 -0
  145. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  146. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +1 -1
  147. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  148. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +7 -1
  149. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  150. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +49 -26
  151. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  152. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +0 -5
  153. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  154. package/build-module/components/sidebar-navigation-screen-patterns/index.js +0 -7
  155. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  156. package/build-module/components/sidebar-navigation-screen-templates/index.js +1 -8
  157. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  158. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +7 -0
  159. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  160. package/build-module/components/site-hub/index.js +4 -2
  161. package/build-module/components/site-hub/index.js.map +1 -1
  162. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  163. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  164. package/build-module/hooks/commands/use-common-commands.js +57 -27
  165. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  166. package/build-module/hooks/commands/use-edit-mode-commands.js +65 -9
  167. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  168. package/build-module/hooks/push-changes-to-global-styles/index.js +84 -49
  169. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  170. package/build-module/store/private-actions.js +2 -1
  171. package/build-module/store/private-actions.js.map +1 -1
  172. package/build-module/utils/use-debounced-input.js +5 -7
  173. package/build-module/utils/use-debounced-input.js.map +1 -1
  174. package/build-style/style-rtl.css +67 -47
  175. package/build-style/style.css +67 -47
  176. package/package.json +39 -39
  177. package/src/components/add-new-pattern/index.js +2 -0
  178. package/src/components/block-editor/use-site-editor-settings.js +22 -2
  179. package/src/components/editor/index.js +3 -3
  180. package/src/components/global-styles/global-styles-provider.js +7 -2
  181. package/src/components/global-styles/screen-block.js +15 -0
  182. package/src/components/global-styles/screen-revisions/index.js +64 -58
  183. package/src/components/global-styles/screen-revisions/revisions-buttons.js +17 -31
  184. package/src/components/global-styles/screen-revisions/test/use-global-styles-revisions.js +14 -1
  185. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +64 -48
  186. package/src/components/global-styles/style-variations-container.js +2 -0
  187. package/src/components/header-edit-mode/document-actions/index.js +8 -4
  188. package/src/components/header-edit-mode/document-actions/style.scss +41 -28
  189. package/src/components/keyboard-shortcuts/edit-mode.js +4 -5
  190. package/src/components/layout/index.js +33 -20
  191. package/src/components/layout/style.scss +2 -2
  192. package/src/components/page/index.js +8 -8
  193. package/src/components/page/style.scss +8 -5
  194. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +1 -1
  195. package/src/components/page-patterns/patterns-list.js +25 -12
  196. package/src/components/page-patterns/style.scss +9 -8
  197. package/src/components/page-patterns/use-patterns.js +19 -3
  198. package/src/components/page-template-parts/index.js +0 -1
  199. package/src/components/page-templates/index.js +6 -19
  200. package/src/components/resizable-frame/index.js +10 -25
  201. package/src/components/save-button/index.js +2 -0
  202. package/src/components/save-hub/index.js +6 -1
  203. package/src/components/save-hub/style.scss +1 -1
  204. package/src/components/sidebar-edit-mode/template-panel/index.js +15 -11
  205. package/src/components/sidebar-navigation-screen/index.js +24 -16
  206. package/src/components/sidebar-navigation-screen/style.scss +4 -0
  207. package/src/components/sidebar-navigation-screen-details-panel/style.scss +1 -0
  208. package/src/components/sidebar-navigation-screen-global-styles/index.js +48 -44
  209. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -2
  210. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +4 -4
  211. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +27 -15
  212. package/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +1 -4
  213. package/src/components/sidebar-navigation-screen-pages/index.js +9 -4
  214. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +1 -1
  215. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +11 -1
  216. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +69 -41
  217. package/src/components/sidebar-navigation-screen-patterns/category-item.js +5 -13
  218. package/src/components/sidebar-navigation-screen-patterns/index.js +0 -8
  219. package/src/components/sidebar-navigation-screen-templates/index.js +1 -9
  220. package/src/components/sidebar-navigation-screen-templates-browse/index.js +10 -0
  221. package/src/components/site-hub/index.js +3 -1
  222. package/src/components/site-hub/style.scss +1 -2
  223. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -4
  224. package/src/components/table/style.scss +1 -0
  225. package/src/hooks/commands/use-common-commands.js +63 -23
  226. package/src/hooks/commands/use-edit-mode-commands.js +94 -23
  227. package/src/hooks/push-changes-to-global-styles/index.js +83 -46
  228. package/src/store/private-actions.js +5 -1
  229. package/src/utils/use-debounced-input.js +8 -7
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-global-styles/index.js"],"names":["noop","SidebarNavigationItemGlobalStyles","props","openGeneralSidebar","editSiteStore","setCanvasMode","createNotice","noticesStore","set","setPreference","preferencesStore","get","getPrefference","turnOffDistractionFreeMode","isDistractionFree","name","isDismissible","type","hasGlobalStyleVariations","select","coreStore","__experimentalGetCurrentThemeGlobalStylesVariations","length","SidebarNavigationItem","SidebarNavigationScreenGlobalStylesContent","storedSettings","getSettings","SidebarNavigationScreenGlobalStylesFooter","onClickRevisions","revisions","isLoading","revisionsCount","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","hasRevisions","modified","backup","fill","SidebarNavigationScreenGlobalStyles","setIsListViewOpened","isMobileViewport","setEditorCanvasContainerView","isViewMode","isStyleBookOpened","getCanvasMode","getEditorCanvasContainerView","openGlobalStyles","Promise","all","openStyleBook","openRevisions","seen","edit"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { backup, edit, seen } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\t__experimentalNavigatorButton as NavigatorButton,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { BlockEditorProvider } from '@wordpress/block-editor';\nimport { humanTimeDiff } from '@wordpress/date';\nimport { useCallback } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport StyleVariationsContainer from '../global-styles/style-variations-container';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport StyleBook from '../style-book';\nimport useGlobalStylesRevisions from '../global-styles/screen-revisions/use-global-styles-revisions';\n\nconst noop = () => {};\n\nexport function SidebarNavigationItemGlobalStyles( props ) {\n\tconst { openGeneralSidebar } = useDispatch( editSiteStore );\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst { get: getPrefference } = useSelect( preferencesStore );\n\n\tconst turnOffDistractionFreeMode = useCallback( () => {\n\t\tconst isDistractionFree = getPrefference(\n\t\t\teditSiteStore.name,\n\t\t\t'distractionFree'\n\t\t);\n\t\tif ( ! isDistractionFree ) {\n\t\t\treturn;\n\t\t}\n\t\tsetPreference( editSiteStore.name, 'distractionFree', false );\n\t\tcreateNotice( 'info', __( 'Distraction free mode turned off' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}, [ createNotice, setPreference, getPrefference ] );\n\tconst hasGlobalStyleVariations = useSelect(\n\t\t( select ) =>\n\t\t\t!! select(\n\t\t\t\tcoreStore\n\t\t\t).__experimentalGetCurrentThemeGlobalStylesVariations()?.length,\n\t\t[]\n\t);\n\tif ( hasGlobalStyleVariations ) {\n\t\treturn (\n\t\t\t<NavigatorButton\n\t\t\t\t{ ...props }\n\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\tpath=\"/wp_global_styles\"\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\t{ ...props }\n\t\t\tonClick={ () => {\n\t\t\t\tturnOffDistractionFreeMode();\n\t\t\t\t// Switch to edit mode.\n\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t// Open global styles sidebar.\n\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction SidebarNavigationScreenGlobalStylesContent() {\n\tconst { storedSettings } = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn {\n\t\t\tstoredSettings: getSettings( false ),\n\t\t};\n\t}, [] );\n\n\t// Wrap in a BlockEditorProvider to ensure that the Iframe's dependencies are\n\t// loaded. This is necessary because the Iframe component waits until\n\t// the block editor store's `__internalIsInitialized` is true before\n\t// rendering the iframe. Without this, the iframe previews will not render\n\t// in mobile viewport sizes, where the editor canvas is hidden.\n\treturn (\n\t\t<BlockEditorProvider\n\t\t\tsettings={ storedSettings }\n\t\t\tonChange={ noop }\n\t\t\tonInput={ noop }\n\t\t>\n\t\t\t<StyleVariationsContainer />\n\t\t</BlockEditorProvider>\n\t);\n}\n\nfunction SidebarNavigationScreenGlobalStylesFooter( { onClickRevisions } ) {\n\tconst { revisions, isLoading } = useGlobalStylesRevisions();\n\tconst { revisionsCount } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\trevisionsCount:\n\t\t\t\tglobalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0,\n\t\t};\n\t}, [] );\n\n\tconst hasRevisions = revisionsCount >= 2;\n\tconst modified = revisions?.[ 0 ]?.modified;\n\n\tif ( ! hasRevisions || isLoading || ! modified ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack className=\"edit-site-sidebar-navigation-screen-global-styles__footer\">\n\t\t\t<SidebarNavigationItem\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-global-styles__revisions\"\n\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\tonClick={ onClickRevisions }\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 5 }\n\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\tjustify=\"space-between\"\n\t\t\t\t>\n\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-global-styles__revisions__label\">\n\t\t\t\t\t\t{ __( 'Last modified' ) }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<time dateTime={ modified }>\n\t\t\t\t\t\t\t{ humanTimeDiff( modified ) }\n\t\t\t\t\t\t</time>\n\t\t\t\t\t</span>\n\t\t\t\t\t<Icon icon={ backup } style={ { fill: 'currentcolor' } } />\n\t\t\t\t</HStack>\n\t\t\t</SidebarNavigationItem>\n\t\t</VStack>\n\t);\n}\n\nexport default function SidebarNavigationScreenGlobalStyles() {\n\tconst { openGeneralSidebar, setIsListViewOpened } =\n\t\tuseDispatch( editSiteStore );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { setCanvasMode, setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst { get: getPrefference } = useSelect( preferencesStore );\n\tconst { isViewMode, isStyleBookOpened } = useSelect( ( select ) => {\n\t\tconst { getCanvasMode, getEditorCanvasContainerView } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\treturn {\n\t\t\tisViewMode: 'view' === getCanvasMode(),\n\t\t\tisStyleBookOpened: 'style-book' === getEditorCanvasContainerView(),\n\t\t};\n\t}, [] );\n\n\tconst turnOffDistractionFreeMode = useCallback( () => {\n\t\tconst isDistractionFree = getPrefference(\n\t\t\teditSiteStore.name,\n\t\t\t'distractionFree'\n\t\t);\n\t\tif ( ! isDistractionFree ) {\n\t\t\treturn;\n\t\t}\n\t\tsetPreference( editSiteStore.name, 'distractionFree', false );\n\t\tcreateNotice( 'info', __( 'Distraction free mode turned off' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}, [ createNotice, setPreference, getPrefference ] );\n\n\tconst openGlobalStyles = useCallback( async () => {\n\t\tturnOffDistractionFreeMode();\n\t\treturn Promise.all( [\n\t\t\tsetCanvasMode( 'edit' ),\n\t\t\topenGeneralSidebar( 'edit-site/global-styles' ),\n\t\t] );\n\t}, [ setCanvasMode, openGeneralSidebar, turnOffDistractionFreeMode ] );\n\n\tconst openStyleBook = useCallback( async () => {\n\t\tawait openGlobalStyles();\n\t\t// Open the Style Book once the canvas mode is set to edit,\n\t\t// and the global styles sidebar is open. This ensures that\n\t\t// the Style Book is not prematurely closed.\n\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\tsetIsListViewOpened( false );\n\t}, [\n\t\topenGlobalStyles,\n\t\tsetEditorCanvasContainerView,\n\t\tsetIsListViewOpened,\n\t] );\n\n\tconst openRevisions = useCallback( async () => {\n\t\tawait openGlobalStyles();\n\t\t// Open the global styles revisions once the canvas mode is set to edit,\n\t\t// and the global styles sidebar is open. The global styles UI is responsible\n\t\t// for redirecting to the revisions screen once the editor canvas container\n\t\t// has been set to 'global-styles-revisions'.\n\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t}, [ openGlobalStyles, setEditorCanvasContainerView ] );\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreen\n\t\t\t\ttitle={ __( 'Styles' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Choose a different style combination for the theme styles.'\n\t\t\t\t) }\n\t\t\t\tcontent={ <SidebarNavigationScreenGlobalStylesContent /> }\n\t\t\t\tfooter={\n\t\t\t\t\t<SidebarNavigationScreenGlobalStylesFooter\n\t\t\t\t\t\tonClickRevisions={ openRevisions }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t\t\t\t\t\t\t! isStyleBookOpened\n\t\t\t\t\t\t\t\t\t\t\t? 'style-book'\n\t\t\t\t\t\t\t\t\t\t\t: undefined\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\tisPressed={ isStyleBookOpened }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\t\tlabel={ __( 'Edit styles' ) }\n\t\t\t\t\t\t\tonClick={ async () => await openGlobalStyles() }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ isStyleBookOpened && ! isMobileViewport && isViewMode && (\n\t\t\t\t<StyleBook\n\t\t\t\t\tenableResizing={ false }\n\t\t\t\t\tisSelected={ () => false }\n\t\t\t\t\tonClick={ openStyleBook }\n\t\t\t\t\tonSelect={ openStyleBook }\n\t\t\t\t\tshowCloseButton={ false }\n\t\t\t\t\tshowTabs={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-global-styles/index.js"],"names":["noop","SidebarNavigationItemGlobalStyles","props","openGeneralSidebar","editSiteStore","setCanvasMode","createNotice","noticesStore","set","setPreference","preferencesStore","get","getPreference","turnOffDistractionFreeMode","isDistractionFree","name","isDismissible","type","hasGlobalStyleVariations","select","coreStore","__experimentalGetCurrentThemeGlobalStylesVariations","length","SidebarNavigationItem","SidebarNavigationScreenGlobalStylesContent","storedSettings","getSettings","SidebarNavigationScreenGlobalStylesFooter","modifiedDateTime","onClickRevisions","backup","fill","SidebarNavigationScreenGlobalStyles","revisions","isLoading","isLoadingRevisions","setIsListViewOpened","isMobileViewport","setEditorCanvasContainerView","isViewMode","isStyleBookOpened","revisionsCount","getCanvasMode","getEditorCanvasContainerView","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","openGlobalStyles","Promise","all","openStyleBook","openRevisions","hasRevisions","modified","shouldShowGlobalStylesFooter","seen","edit"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { backup, edit, seen } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\t__experimentalNavigatorButton as NavigatorButton,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { BlockEditorProvider } from '@wordpress/block-editor';\nimport { humanTimeDiff } from '@wordpress/date';\nimport { useCallback } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport StyleVariationsContainer from '../global-styles/style-variations-container';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport StyleBook from '../style-book';\nimport useGlobalStylesRevisions from '../global-styles/screen-revisions/use-global-styles-revisions';\n\nconst noop = () => {};\n\nexport function SidebarNavigationItemGlobalStyles( props ) {\n\tconst { openGeneralSidebar } = useDispatch( editSiteStore );\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst { get: getPreference } = useSelect( preferencesStore );\n\n\tconst turnOffDistractionFreeMode = useCallback( () => {\n\t\tconst isDistractionFree = getPreference(\n\t\t\teditSiteStore.name,\n\t\t\t'distractionFree'\n\t\t);\n\t\tif ( ! isDistractionFree ) {\n\t\t\treturn;\n\t\t}\n\t\tsetPreference( editSiteStore.name, 'distractionFree', false );\n\t\tcreateNotice( 'info', __( 'Distraction free mode turned off' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}, [ createNotice, setPreference, getPreference ] );\n\tconst hasGlobalStyleVariations = useSelect(\n\t\t( select ) =>\n\t\t\t!! select(\n\t\t\t\tcoreStore\n\t\t\t).__experimentalGetCurrentThemeGlobalStylesVariations()?.length,\n\t\t[]\n\t);\n\tif ( hasGlobalStyleVariations ) {\n\t\treturn (\n\t\t\t<NavigatorButton\n\t\t\t\t{ ...props }\n\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\tpath=\"/wp_global_styles\"\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\t{ ...props }\n\t\t\tonClick={ () => {\n\t\t\t\tturnOffDistractionFreeMode();\n\t\t\t\t// Switch to edit mode.\n\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t// Open global styles sidebar.\n\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction SidebarNavigationScreenGlobalStylesContent() {\n\tconst { storedSettings } = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn {\n\t\t\tstoredSettings: getSettings( false ),\n\t\t};\n\t}, [] );\n\n\t// Wrap in a BlockEditorProvider to ensure that the Iframe's dependencies are\n\t// loaded. This is necessary because the Iframe component waits until\n\t// the block editor store's `__internalIsInitialized` is true before\n\t// rendering the iframe. Without this, the iframe previews will not render\n\t// in mobile viewport sizes, where the editor canvas is hidden.\n\treturn (\n\t\t<BlockEditorProvider\n\t\t\tsettings={ storedSettings }\n\t\t\tonChange={ noop }\n\t\t\tonInput={ noop }\n\t\t>\n\t\t\t<StyleVariationsContainer />\n\t\t</BlockEditorProvider>\n\t);\n}\n\nfunction SidebarNavigationScreenGlobalStylesFooter( {\n\tmodifiedDateTime,\n\tonClickRevisions,\n} ) {\n\treturn (\n\t\t<VStack className=\"edit-site-sidebar-navigation-screen-global-styles__footer\">\n\t\t\t<SidebarNavigationItem\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-global-styles__revisions\"\n\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\tonClick={ onClickRevisions }\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 5 }\n\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\tjustify=\"space-between\"\n\t\t\t\t>\n\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-global-styles__revisions__label\">\n\t\t\t\t\t\t{ __( 'Last modified' ) }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<time dateTime={ modifiedDateTime }>\n\t\t\t\t\t\t\t{ humanTimeDiff( modifiedDateTime ) }\n\t\t\t\t\t\t</time>\n\t\t\t\t\t</span>\n\t\t\t\t\t<Icon icon={ backup } style={ { fill: 'currentcolor' } } />\n\t\t\t\t</HStack>\n\t\t\t</SidebarNavigationItem>\n\t\t</VStack>\n\t);\n}\n\nexport default function SidebarNavigationScreenGlobalStyles() {\n\tconst { revisions, isLoading: isLoadingRevisions } =\n\t\tuseGlobalStylesRevisions();\n\tconst { openGeneralSidebar, setIsListViewOpened } =\n\t\tuseDispatch( editSiteStore );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { setCanvasMode, setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst { get: getPreference } = useSelect( preferencesStore );\n\tconst { isViewMode, isStyleBookOpened, revisionsCount } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCanvasMode, getEditorCanvasContainerView } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\t\t\treturn {\n\t\t\t\tisViewMode: 'view' === getCanvasMode(),\n\t\t\t\tisStyleBookOpened:\n\t\t\t\t\t'style-book' === getEditorCanvasContainerView(),\n\t\t\t\trevisionsCount:\n\t\t\t\t\tglobalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count ??\n\t\t\t\t\t0,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst turnOffDistractionFreeMode = useCallback( () => {\n\t\tconst isDistractionFree = getPreference(\n\t\t\teditSiteStore.name,\n\t\t\t'distractionFree'\n\t\t);\n\t\tif ( ! isDistractionFree ) {\n\t\t\treturn;\n\t\t}\n\t\tsetPreference( editSiteStore.name, 'distractionFree', false );\n\t\tcreateNotice( 'info', __( 'Distraction free mode turned off' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}, [ createNotice, setPreference, getPreference ] );\n\n\tconst openGlobalStyles = useCallback( async () => {\n\t\tturnOffDistractionFreeMode();\n\t\treturn Promise.all( [\n\t\t\tsetCanvasMode( 'edit' ),\n\t\t\topenGeneralSidebar( 'edit-site/global-styles' ),\n\t\t] );\n\t}, [ setCanvasMode, openGeneralSidebar, turnOffDistractionFreeMode ] );\n\n\tconst openStyleBook = useCallback( async () => {\n\t\tawait openGlobalStyles();\n\t\t// Open the Style Book once the canvas mode is set to edit,\n\t\t// and the global styles sidebar is open. This ensures that\n\t\t// the Style Book is not prematurely closed.\n\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\tsetIsListViewOpened( false );\n\t}, [\n\t\topenGlobalStyles,\n\t\tsetEditorCanvasContainerView,\n\t\tsetIsListViewOpened,\n\t] );\n\n\tconst openRevisions = useCallback( async () => {\n\t\tawait openGlobalStyles();\n\t\t// Open the global styles revisions once the canvas mode is set to edit,\n\t\t// and the global styles sidebar is open. The global styles UI is responsible\n\t\t// for redirecting to the revisions screen once the editor canvas container\n\t\t// has been set to 'global-styles-revisions'.\n\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t}, [ openGlobalStyles, setEditorCanvasContainerView ] );\n\n\t// If there are no revisions, do not render a footer.\n\tconst hasRevisions = revisionsCount >= 2;\n\tconst modifiedDateTime = revisions?.[ 0 ]?.modified;\n\tconst shouldShowGlobalStylesFooter =\n\t\thasRevisions && ! isLoadingRevisions && modifiedDateTime;\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreen\n\t\t\t\ttitle={ __( 'Styles' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Choose a different style combination for the theme styles.'\n\t\t\t\t) }\n\t\t\t\tcontent={ <SidebarNavigationScreenGlobalStylesContent /> }\n\t\t\t\tfooter={\n\t\t\t\t\tshouldShowGlobalStylesFooter && (\n\t\t\t\t\t\t<SidebarNavigationScreenGlobalStylesFooter\n\t\t\t\t\t\t\tmodifiedDateTime={ modifiedDateTime }\n\t\t\t\t\t\t\tonClickRevisions={ openRevisions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t\t\t\t\t\t\t! isStyleBookOpened\n\t\t\t\t\t\t\t\t\t\t\t? 'style-book'\n\t\t\t\t\t\t\t\t\t\t\t: undefined\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\tisPressed={ isStyleBookOpened }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\t\tlabel={ __( 'Edit styles' ) }\n\t\t\t\t\t\t\tonClick={ async () => await openGlobalStyles() }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ isStyleBookOpened && ! isMobileViewport && isViewMode && (\n\t\t\t\t<StyleBook\n\t\t\t\t\tenableResizing={ false }\n\t\t\t\t\tisSelected={ () => false }\n\t\t\t\t\tonClick={ openStyleBook }\n\t\t\t\t\tonSelect={ openStyleBook }\n\t\t\t\t\tshowCloseButton={ false }\n\t\t\t\t\tshowTabs={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -127,7 +127,7 @@ function useDuplicateNavigationMenu() {
127
127
  } = (0, _data.useDispatch)(_notices.store);
128
128
 
129
129
  const handleDuplicate = async navigationMenu => {
130
- const menuTitle = navigationMenu?.title?.rendered || navigationMenu?.slug;
130
+ const menuTitle = navigationMenu?.title || navigationMenu?.slug;
131
131
 
132
132
  try {
133
133
  const savedRecord = await saveEntityRecord('postType', _.postType, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js"],"names":["useDeleteNavigationMenu","goTo","deleteEntityRecord","coreStore","createSuccessNotice","createErrorNotice","noticesStore","handleDelete","navigationMenu","postId","id","postType","force","throwOnError","type","error","message","useSaveNavigationMenu","getEditedEntityRecord","select","getEditedEntityRecordSelector","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","handleSave","edits","originalRecord","recordPropertiesToSave","Object","keys","useDuplicateNavigationMenu","saveEntityRecord","handleDuplicate","menuTitle","title","rendered","slug","savedRecord","content","raw","status","useNavigationMenuHandlers"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalUseNavigator as useNavigator } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n/**\n * Internal dependencies\n */\nimport { postType } from '.';\n\nfunction useDeleteNavigationMenu() {\n\tconst { goTo } = useNavigator();\n\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDelete = async ( navigationMenu ) => {\n\t\tconst postId = navigationMenu?.id;\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\t{\n\t\t\t\t\tforce: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Deleted Navigation menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\tgoTo( '/navigation' );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to delete Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDelete;\n}\n\nfunction useSaveNavigationMenu() {\n\tconst { getEditedEntityRecord } = useSelect( ( select ) => {\n\t\tconst { getEditedEntityRecord: getEditedEntityRecordSelector } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tgetEditedEntityRecord: getEditedEntityRecordSelector,\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleSave = async ( navigationMenu, edits ) => {\n\t\tif ( ! edits ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst postId = navigationMenu?.id;\n\t\t// Prepare for revert in case of error.\n\t\tconst originalRecord = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tpostId\n\t\t);\n\n\t\t// Apply the edits.\n\t\teditEntityRecord( 'postType', postType, postId, edits );\n\n\t\tconst recordPropertiesToSave = Object.keys( edits );\n\n\t\t// Attempt to persist.\n\t\ttry {\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\trecordPropertiesToSave,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Renamed Navigation menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\t// Revert to original in case of error.\n\t\t\teditEntityRecord( 'postType', postType, postId, originalRecord );\n\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be renamed. */\n\t\t\t\t\t__( `Unable to rename Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleSave;\n}\n\nfunction useDuplicateNavigationMenu() {\n\tconst { goTo } = useNavigator();\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDuplicate = async ( navigationMenu ) => {\n\t\tconst menuTitle =\n\t\t\tnavigationMenu?.title?.rendered || navigationMenu?.slug;\n\n\t\ttry {\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t/* translators: %s: Navigation menu title */\n\t\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\t\tmenuTitle\n\t\t\t\t\t),\n\t\t\t\t\tcontent: navigationMenu?.content?.raw,\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( savedRecord ) {\n\t\t\t\tcreateSuccessNotice( __( 'Duplicated Navigation menu' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t\tgoTo( `/navigation/${ postType }/${ savedRecord.id }` );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to duplicate Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDuplicate;\n}\n\nexport default function useNavigationMenuHandlers() {\n\treturn {\n\t\thandleDelete: useDeleteNavigationMenu(),\n\t\thandleSave: useSaveNavigationMenu(),\n\t\thandleDuplicate: useDuplicateNavigationMenu(),\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js"],"names":["useDeleteNavigationMenu","goTo","deleteEntityRecord","coreStore","createSuccessNotice","createErrorNotice","noticesStore","handleDelete","navigationMenu","postId","id","postType","force","throwOnError","type","error","message","useSaveNavigationMenu","getEditedEntityRecord","select","getEditedEntityRecordSelector","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","handleSave","edits","originalRecord","recordPropertiesToSave","Object","keys","useDuplicateNavigationMenu","saveEntityRecord","handleDuplicate","menuTitle","title","slug","savedRecord","content","raw","status","useNavigationMenuHandlers"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalUseNavigator as useNavigator } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n/**\n * Internal dependencies\n */\nimport { postType } from '.';\n\nfunction useDeleteNavigationMenu() {\n\tconst { goTo } = useNavigator();\n\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDelete = async ( navigationMenu ) => {\n\t\tconst postId = navigationMenu?.id;\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\t{\n\t\t\t\t\tforce: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Deleted Navigation menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\tgoTo( '/navigation' );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to delete Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDelete;\n}\n\nfunction useSaveNavigationMenu() {\n\tconst { getEditedEntityRecord } = useSelect( ( select ) => {\n\t\tconst { getEditedEntityRecord: getEditedEntityRecordSelector } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tgetEditedEntityRecord: getEditedEntityRecordSelector,\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleSave = async ( navigationMenu, edits ) => {\n\t\tif ( ! edits ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst postId = navigationMenu?.id;\n\t\t// Prepare for revert in case of error.\n\t\tconst originalRecord = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tpostId\n\t\t);\n\n\t\t// Apply the edits.\n\t\teditEntityRecord( 'postType', postType, postId, edits );\n\n\t\tconst recordPropertiesToSave = Object.keys( edits );\n\n\t\t// Attempt to persist.\n\t\ttry {\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\trecordPropertiesToSave,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Renamed Navigation menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\t// Revert to original in case of error.\n\t\t\teditEntityRecord( 'postType', postType, postId, originalRecord );\n\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be renamed. */\n\t\t\t\t\t__( `Unable to rename Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleSave;\n}\n\nfunction useDuplicateNavigationMenu() {\n\tconst { goTo } = useNavigator();\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDuplicate = async ( navigationMenu ) => {\n\t\tconst menuTitle = navigationMenu?.title || navigationMenu?.slug;\n\n\t\ttry {\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t/* translators: %s: Navigation menu title */\n\t\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\t\tmenuTitle\n\t\t\t\t\t),\n\t\t\t\t\tcontent: navigationMenu?.content?.raw,\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( savedRecord ) {\n\t\t\t\tcreateSuccessNotice( __( 'Duplicated Navigation menu' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t\tgoTo( `/navigation/${ postType }/${ savedRecord.id }` );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to duplicate Navigation menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDuplicate;\n}\n\nexport default function useNavigationMenuHandlers() {\n\treturn {\n\t\thandleDelete: useDeleteNavigationMenu(),\n\t\thandleSave: useSaveNavigationMenu(),\n\t\thandleDuplicate: useDuplicateNavigationMenu(),\n\t};\n}\n"]}
@@ -45,17 +45,17 @@ var _lockUnlock = require("../../lock-unlock");
45
45
  */
46
46
  // Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.
47
47
  function buildMenuLabel(title, id, status) {
48
- if (!title?.rendered) {
48
+ if (!title) {
49
49
  /* translators: %s is the index of the menu in the list of menus. */
50
50
  return (0, _i18n.sprintf)((0, _i18n.__)('(no title %s)'), id);
51
51
  }
52
52
 
53
53
  if (status === 'publish') {
54
- return (0, _htmlEntities.decodeEntities)(title?.rendered);
54
+ return (0, _htmlEntities.decodeEntities)(title);
55
55
  }
56
56
 
57
57
  return (0, _i18n.sprintf)( // translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).
58
- (0, _i18n.__)('%1$s (%2$s)'), (0, _htmlEntities.decodeEntities)(title?.rendered), status);
58
+ (0, _i18n.__)('%1$s (%2$s)'), (0, _htmlEntities.decodeEntities)(title), status);
59
59
  } // Save a boolean to prevent us creating a fallback more than once per session.
60
60
 
61
61
 
@@ -121,7 +121,7 @@ function SidebarNavigationScreenNavigationMenus() {
121
121
  key: id,
122
122
  withChevron: true,
123
123
  icon: _icons.navigation
124
- }, buildMenuLabel(title, index + 1, status)))));
124
+ }, buildMenuLabel(title?.rendered, index + 1, status)))));
125
125
  }
126
126
 
127
127
  function SidebarNavigationScreenWrapper({
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/index.js"],"names":["buildMenuLabel","title","id","status","rendered","hasCreatedFallback","SidebarNavigationScreenNavigationMenus","records","navigationMenus","isResolving","isResolvingNavigationMenus","hasResolved","hasResolvedNavigationMenus","PRELOADED_NAVIGATION_MENUS_QUERY","isLoading","getNavigationFallbackId","coreStore","firstNavigationMenu","handleSave","handleDelete","handleDuplicate","hasNavigationMenus","length","edits","map","index","navigation","SidebarNavigationScreenWrapper","children","actions","description","NavMenuItem","postId","props","linkInfo","postType"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tSpinner,\n} from '@wordpress/components';\nimport { navigation } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { PRELOADED_NAVIGATION_MENUS_QUERY } from './constants';\nimport { useLink } from '../routes/link';\nimport SingleNavigationMenu from '../sidebar-navigation-screen-navigation-menu/single-navigation-menu';\nimport useNavigationMenuHandlers from '../sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers';\nimport { unlock } from '../../lock-unlock';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\nfunction buildMenuLabel( title, id, status ) {\n\tif ( ! title?.rendered ) {\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?.rendered );\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?.rendered ),\n\t\tstatus\n\t);\n}\n\n// Save a boolean to prevent us creating a fallback more than once per session.\nlet hasCreatedFallback = false;\n\nexport default function SidebarNavigationScreenNavigationMenus() {\n\tconst {\n\t\trecords: navigationMenus,\n\t\tisResolving: isResolvingNavigationMenus,\n\t\thasResolved: hasResolvedNavigationMenus,\n\t} = useEntityRecords(\n\t\t'postType',\n\t\t`wp_navigation`,\n\t\tPRELOADED_NAVIGATION_MENUS_QUERY\n\t);\n\n\tconst isLoading =\n\t\tisResolvingNavigationMenus && ! hasResolvedNavigationMenus;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst firstNavigationMenu = navigationMenus?.[ 0 ];\n\n\t// Save a boolean to prevent us creating a fallback more than once per session.\n\tif ( firstNavigationMenu ) {\n\t\thasCreatedFallback = true;\n\t}\n\n\t// If there is no navigation menu found\n\t// then trigger fallback algorithm to create one.\n\tif (\n\t\t! firstNavigationMenu &&\n\t\t! isResolvingNavigationMenus &&\n\t\thasResolvedNavigationMenus &&\n\t\t! hasCreatedFallback\n\t) {\n\t\tgetNavigationFallbackId();\n\t}\n\n\tconst { handleSave, handleDelete, handleDuplicate } =\n\t\tuseNavigationMenuHandlers();\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\tif ( isLoading ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper>\n\t\t\t\t<Spinner className=\"edit-site-sidebar-navigation-screen-navigation-menus__loading\" />\n\t\t\t</SidebarNavigationScreenWrapper>\n\t\t);\n\t}\n\n\tif ( ! isLoading && ! hasNavigationMenus ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper\n\t\t\t\tdescription={ __( 'No Navigation Menus found.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// if single menu then render it\n\tif ( navigationMenus?.length === 1 ) {\n\t\treturn (\n\t\t\t<SingleNavigationMenu\n\t\t\t\tnavigationMenu={ firstNavigationMenu }\n\t\t\t\thandleDelete={ () => handleDelete( firstNavigationMenu ) }\n\t\t\t\thandleDuplicate={ () => handleDuplicate( firstNavigationMenu ) }\n\t\t\t\thandleSave={ ( edits ) =>\n\t\t\t\t\thandleSave( firstNavigationMenu, edits )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreenWrapper>\n\t\t\t<ItemGroup>\n\t\t\t\t{ navigationMenus?.map( ( { id, title, status }, index ) => (\n\t\t\t\t\t<NavMenuItem\n\t\t\t\t\t\tpostId={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ navigation }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ buildMenuLabel( title, index + 1, status ) }\n\t\t\t\t\t</NavMenuItem>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</SidebarNavigationScreenWrapper>\n\t);\n}\n\nexport function SidebarNavigationScreenWrapper( {\n\tchildren,\n\tactions,\n\ttitle,\n\tdescription,\n} ) {\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title || __( 'Navigation' ) }\n\t\t\tactions={ actions }\n\t\t\tdescription={ description || __( 'Manage your Navigation menus.' ) }\n\t\t\tcontent={ children }\n\t\t/>\n\t);\n}\n\nconst NavMenuItem = ( { postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostId,\n\t\tpostType: 'wp_navigation',\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/index.js"],"names":["buildMenuLabel","title","id","status","hasCreatedFallback","SidebarNavigationScreenNavigationMenus","records","navigationMenus","isResolving","isResolvingNavigationMenus","hasResolved","hasResolvedNavigationMenus","PRELOADED_NAVIGATION_MENUS_QUERY","isLoading","getNavigationFallbackId","coreStore","firstNavigationMenu","handleSave","handleDelete","handleDuplicate","hasNavigationMenus","length","edits","map","index","navigation","rendered","SidebarNavigationScreenWrapper","children","actions","description","NavMenuItem","postId","props","linkInfo","postType"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tSpinner,\n} from '@wordpress/components';\nimport { navigation } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { PRELOADED_NAVIGATION_MENUS_QUERY } from './constants';\nimport { useLink } from '../routes/link';\nimport SingleNavigationMenu from '../sidebar-navigation-screen-navigation-menu/single-navigation-menu';\nimport useNavigationMenuHandlers from '../sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers';\nimport { unlock } from '../../lock-unlock';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\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\n// Save a boolean to prevent us creating a fallback more than once per session.\nlet hasCreatedFallback = false;\n\nexport default function SidebarNavigationScreenNavigationMenus() {\n\tconst {\n\t\trecords: navigationMenus,\n\t\tisResolving: isResolvingNavigationMenus,\n\t\thasResolved: hasResolvedNavigationMenus,\n\t} = useEntityRecords(\n\t\t'postType',\n\t\t`wp_navigation`,\n\t\tPRELOADED_NAVIGATION_MENUS_QUERY\n\t);\n\n\tconst isLoading =\n\t\tisResolvingNavigationMenus && ! hasResolvedNavigationMenus;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst firstNavigationMenu = navigationMenus?.[ 0 ];\n\n\t// Save a boolean to prevent us creating a fallback more than once per session.\n\tif ( firstNavigationMenu ) {\n\t\thasCreatedFallback = true;\n\t}\n\n\t// If there is no navigation menu found\n\t// then trigger fallback algorithm to create one.\n\tif (\n\t\t! firstNavigationMenu &&\n\t\t! isResolvingNavigationMenus &&\n\t\thasResolvedNavigationMenus &&\n\t\t! hasCreatedFallback\n\t) {\n\t\tgetNavigationFallbackId();\n\t}\n\n\tconst { handleSave, handleDelete, handleDuplicate } =\n\t\tuseNavigationMenuHandlers();\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\tif ( isLoading ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper>\n\t\t\t\t<Spinner className=\"edit-site-sidebar-navigation-screen-navigation-menus__loading\" />\n\t\t\t</SidebarNavigationScreenWrapper>\n\t\t);\n\t}\n\n\tif ( ! isLoading && ! hasNavigationMenus ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper\n\t\t\t\tdescription={ __( 'No Navigation Menus found.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// if single menu then render it\n\tif ( navigationMenus?.length === 1 ) {\n\t\treturn (\n\t\t\t<SingleNavigationMenu\n\t\t\t\tnavigationMenu={ firstNavigationMenu }\n\t\t\t\thandleDelete={ () => handleDelete( firstNavigationMenu ) }\n\t\t\t\thandleDuplicate={ () => handleDuplicate( firstNavigationMenu ) }\n\t\t\t\thandleSave={ ( edits ) =>\n\t\t\t\t\thandleSave( firstNavigationMenu, edits )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreenWrapper>\n\t\t\t<ItemGroup>\n\t\t\t\t{ navigationMenus?.map( ( { id, title, status }, index ) => (\n\t\t\t\t\t<NavMenuItem\n\t\t\t\t\t\tpostId={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ navigation }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ buildMenuLabel( title?.rendered, index + 1, status ) }\n\t\t\t\t\t</NavMenuItem>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</SidebarNavigationScreenWrapper>\n\t);\n}\n\nexport function SidebarNavigationScreenWrapper( {\n\tchildren,\n\tactions,\n\ttitle,\n\tdescription,\n} ) {\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title || __( 'Navigation' ) }\n\t\t\tactions={ actions }\n\t\t\tdescription={ description || __( 'Manage your Navigation menus.' ) }\n\t\t\tcontent={ children }\n\t\t/>\n\t);\n}\n\nconst NavMenuItem = ( { postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostId,\n\t\tpostType: 'wp_navigation',\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n"]}
@@ -23,6 +23,8 @@ var _isPreviewingTheme = require("../../utils/is-previewing-theme");
23
23
 
24
24
  var _lockUnlock = require("../../lock-unlock");
25
25
 
26
+ var _useSyncPathWithUrl = require("../sync-state-with-url/use-sync-path-with-url");
27
+
26
28
  /**
27
29
  * WordPress dependencies
28
30
  */
@@ -35,10 +37,12 @@ const POPOVER_PROPS = {
35
37
  */
36
38
 
37
39
  const {
40
+ useLocation,
38
41
  useHistory
39
42
  } = (0, _lockUnlock.unlock)(_router.privateApis);
40
43
 
41
44
  function LeafMoreMenu(props) {
45
+ const location = useLocation();
42
46
  const history = useHistory();
43
47
  const {
44
48
  block
@@ -82,6 +86,8 @@ function LeafMoreMenu(props) {
82
86
  ...((0, _isPreviewingTheme.isPreviewingTheme)() && {
83
87
  wp_theme_preview: (0, _isPreviewingTheme.currentlyPreviewingTheme)()
84
88
  })
89
+ }, {
90
+ backPath: (0, _useSyncPathWithUrl.getPathFromURL)(location.params)
85
91
  });
86
92
  }
87
93
 
@@ -92,6 +98,8 @@ function LeafMoreMenu(props) {
92
98
  ...((0, _isPreviewingTheme.isPreviewingTheme)() && {
93
99
  wp_theme_preview: (0, _isPreviewingTheme.currentlyPreviewingTheme)()
94
100
  })
101
+ }, {
102
+ backPath: (0, _useSyncPathWithUrl.getPathFromURL)(location.params)
95
103
  });
96
104
  }
97
105
  }, [history]);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js"],"names":["POPOVER_PROPS","className","placement","useHistory","routerPrivateApis","LeafMoreMenu","props","history","block","clientId","moveBlocksDown","moveBlocksUp","removeBlocks","blockEditorStore","removeLabel","maximumLength","goToLabel","rootClientId","select","getBlockRootClientId","onGoToPage","selectedBlock","attributes","name","kind","id","type","push","postType","postId","wp_theme_preview","moreVertical","onClose","chevronUp","chevronDown"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport { chevronUp, chevronDown, moreVertical } from '@wordpress/icons';\nimport { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { BlockTitle, store as blockEditorStore } from '@wordpress/block-editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\n/**\n * Internal dependencies\n */\nimport {\n\tisPreviewingTheme,\n\tcurrentlyPreviewingTheme,\n} from '../../utils/is-previewing-theme';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function LeafMoreMenu( props ) {\n\tconst history = useHistory();\n\tconst { block } = props;\n\tconst { clientId } = block;\n\tconst { moveBlocksDown, moveBlocksUp, removeBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst removeLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Remove %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst goToLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Go to %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst rootClientId = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn getBlockRootClientId( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst onGoToPage = useCallback(\n\t\t( selectedBlock ) => {\n\t\t\tconst { attributes, name } = selectedBlock;\n\t\t\tif (\n\t\t\t\tattributes.kind === 'post-type' &&\n\t\t\t\tattributes.id &&\n\t\t\t\tattributes.type &&\n\t\t\t\thistory\n\t\t\t) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostType: attributes.type,\n\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t} ),\n\t\t\t\t} );\n\t\t\t}\n\t\t\tif ( name === 'core/page-list-item' && attributes.id && history ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostType: 'page',\n\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t} ),\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\ticon={ moreVertical }\n\t\t\tlabel={ __( 'Options' ) }\n\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\tnoIcons\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronUp }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksUp( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move up' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksDown( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move down' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t{ block.attributes?.id && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonGoToPage( block );\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>\n\t\t\t\t\t\t\t\t{ goToLabel }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tremoveBlocks( [ clientId ], false );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ removeLabel }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js"],"names":["POPOVER_PROPS","className","placement","useLocation","useHistory","routerPrivateApis","LeafMoreMenu","props","location","history","block","clientId","moveBlocksDown","moveBlocksUp","removeBlocks","blockEditorStore","removeLabel","maximumLength","goToLabel","rootClientId","select","getBlockRootClientId","onGoToPage","selectedBlock","attributes","name","kind","id","type","push","postType","postId","wp_theme_preview","backPath","params","moreVertical","onClose","chevronUp","chevronDown"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport { chevronUp, chevronDown, moreVertical } from '@wordpress/icons';\nimport { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { BlockTitle, store as blockEditorStore } from '@wordpress/block-editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\n/**\n * Internal dependencies\n */\nimport {\n\tisPreviewingTheme,\n\tcurrentlyPreviewingTheme,\n} from '../../utils/is-previewing-theme';\nimport { unlock } from '../../lock-unlock';\nimport { getPathFromURL } from '../sync-state-with-url/use-sync-path-with-url';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function LeafMoreMenu( props ) {\n\tconst location = useLocation();\n\tconst history = useHistory();\n\tconst { block } = props;\n\tconst { clientId } = block;\n\tconst { moveBlocksDown, moveBlocksUp, removeBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst removeLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Remove %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst goToLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Go to %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst rootClientId = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn getBlockRootClientId( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst onGoToPage = useCallback(\n\t\t( selectedBlock ) => {\n\t\t\tconst { attributes, name } = selectedBlock;\n\t\t\tif (\n\t\t\t\tattributes.kind === 'post-type' &&\n\t\t\t\tattributes.id &&\n\t\t\t\tattributes.type &&\n\t\t\t\thistory\n\t\t\t) {\n\t\t\t\thistory.push(\n\t\t\t\t\t{\n\t\t\t\t\t\tpostType: attributes.type,\n\t\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tbackPath: getPathFromURL( location.params ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t\tif ( name === 'core/page-list-item' && attributes.id && history ) {\n\t\t\t\thistory.push(\n\t\t\t\t\t{\n\t\t\t\t\t\tpostType: 'page',\n\t\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tbackPath: getPathFromURL( location.params ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\ticon={ moreVertical }\n\t\t\tlabel={ __( 'Options' ) }\n\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\tnoIcons\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronUp }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksUp( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move up' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksDown( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move down' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t{ block.attributes?.id && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonGoToPage( block );\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>\n\t\t\t\t\t\t\t\t{ goToLabel }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tremoveBlocks( [ clientId ], false );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ removeLabel }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n"]}
@@ -90,6 +90,6 @@ function NavigationMenuContent({
90
90
  showAppender: false
91
91
  }), (0, _element.createElement)("div", {
92
92
  className: "edit-site-sidebar-navigation-screen-navigation-menus__helper-block-editor"
93
- }, (0, _element.createElement)(_blockEditor.BlockTools, null, (0, _element.createElement)(_blockEditor.BlockList, null))));
93
+ }, (0, _element.createElement)(_blockEditor.BlockList, null)));
94
94
  }
95
95
  //# sourceMappingURL=navigation-menu-content.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js"],"names":["PrivateListView","blockEditorPrivateApis","MAX_PAGE_COUNT","PAGES_QUERY","per_page","_fields","orderby","order","NavigationMenuContent","rootClientId","listViewRootClientId","isLoading","select","areInnerBlocksControlled","getBlockName","getBlockCount","getBlockOrder","blockEditorStore","isResolving","coreStore","blockClientIds","hasOnlyPageListBlock","length","pageListHasBlocks","isLoadingPages","replaceBlock","__unstableMarkNextChangeAsNotPersistent","offCanvasOnselect","block","name","attributes","url","clientId","LeafMoreMenu"],"mappings":";;;;;;;;;AAWA;;AARA;;AAMA;;AACA;;AAEA;;AAKA;;AACA;;AAlBA;AACA;AACA;;AAYA;AACA;AACA;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAsB,wBAAQC,wBAAR,CAA5B,C,CAEA;;AACA,MAAMC,cAAc,GAAG,GAAvB;AACA,MAAMC,WAAW,GAAG,CACnB,UADmB,EAEnB,MAFmB,EAGnB;AACCC,EAAAA,QAAQ,EAAEF,cADX;AAECG,EAAAA,OAAO,EAAE,CAAE,IAAF,EAAQ,MAAR,EAAgB,YAAhB,EAA8B,QAA9B,EAAwC,OAAxC,EAAiD,MAAjD,CAFV;AAGC;AACA;AACA;AACAC,EAAAA,OAAO,EAAE,YANV;AAOCC,EAAAA,KAAK,EAAE;AAPR,CAHmB,CAApB;;AAce,SAASC,qBAAT,CAAgC;AAAEC,EAAAA;AAAF,CAAhC,EAAmD;AACjE,QAAM;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB,MAAsC,qBACzCC,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,wBADK;AAELC,MAAAA,YAFK;AAGLC,MAAAA,aAHK;AAILC,MAAAA;AAJK,QAKFJ,MAAM,CAAEK,kBAAF,CALV;AAMA,UAAM;AAAEC,MAAAA;AAAF,QAAkBN,MAAM,CAAEO,eAAF,CAA9B;AAEA,UAAMC,cAAc,GAAGJ,aAAa,CAAEP,YAAF,CAApC;AAEA,UAAMY,oBAAoB,GACzBD,cAAc,CAACE,MAAf,KAA0B,CAA1B,IACAR,YAAY,CAAEM,cAAc,CAAE,CAAF,CAAhB,CAAZ,KAAwC,gBAFzC;AAGA,UAAMG,iBAAiB,GACtBF,oBAAoB,IACpBN,aAAa,CAAEK,cAAc,CAAE,CAAF,CAAhB,CAAb,GAAuC,CAFxC;AAIA,UAAMI,cAAc,GAAGN,WAAW,CACjC,kBADiC,EAEjCf,WAFiC,CAAlC;AAKA,WAAO;AACNO,MAAAA,oBAAoB,EAAEa,iBAAiB,GACpCH,cAAc,CAAE,CAAF,CADsB,GAEpCX,YAHG;AAIN;AACA;AACAE,MAAAA,SAAS,EACR,CAAEE,wBAAwB,CAAEJ,YAAF,CAA1B,IACAe;AARK,KAAP;AAUA,GAlC0C,EAmC3C,CAAEf,YAAF,CAnC2C,CAA5C;AAqCA,QAAM;AAAEgB,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MACL,uBAAaT,kBAAb,CADD;AAGA,QAAMU,iBAAiB,GAAG,0BACvBC,KAAF,IAAa;AACZ,QACCA,KAAK,CAACC,IAAN,KAAe,sBAAf,IACA,CAAED,KAAK,CAACE,UAAN,CAAiBC,GAFpB,EAGE;AACDL,MAAAA,uCAAuC;;AACvCD,MAAAA,YAAY,CACXG,KAAK,CAACI,QADK,EAEX,yBAAa,sBAAb,EAAqCJ,KAAK,CAACE,UAA3C,CAFW,CAAZ;AAIA;AACD,GAZwB,EAazB,CAAEJ,uCAAF,EAA2CD,YAA3C,CAbyB,CAA1B,CAzCiE,CAyDjE;AACA;;AACA,SACC,qDACG,CAAEd,SAAF,IACD,4BAAC,eAAD;AACC,IAAA,YAAY,EAAGD,oBADhB;AAEC,IAAA,QAAQ,EAAGiB,iBAFZ;AAGC,IAAA,iBAAiB,EAAGM,qBAHrB;AAIC,IAAA,YAAY,EAAG;AAJhB,IAFF,EASC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,uBAAD,QACC,4BAAC,sBAAD,OADD,CADD,CATD,CADD;AAiBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockList,\n\tBlockTools,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport LeafMoreMenu from './leaf-more-menu';\n\nconst { PrivateListView } = unlock( blockEditorPrivateApis );\n\n// Needs to be kept in sync with the query used at packages/block-library/src/page-list/edit.js.\nconst MAX_PAGE_COUNT = 100;\nconst PAGES_QUERY = [\n\t'postType',\n\t'page',\n\t{\n\t\tper_page: MAX_PAGE_COUNT,\n\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t// sort.\n\t\torderby: 'menu_order',\n\t\torder: 'asc',\n\t},\n];\n\nexport default function NavigationMenuContent( { rootClientId } ) {\n\tconst { listViewRootClientId, isLoading } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tareInnerBlocksControlled,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isResolving } = select( coreStore );\n\n\t\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\n\t\t\tconst hasOnlyPageListBlock =\n\t\t\t\tblockClientIds.length === 1 &&\n\t\t\t\tgetBlockName( blockClientIds[ 0 ] ) === 'core/page-list';\n\t\t\tconst pageListHasBlocks =\n\t\t\t\thasOnlyPageListBlock &&\n\t\t\t\tgetBlockCount( blockClientIds[ 0 ] ) > 0;\n\n\t\t\tconst isLoadingPages = isResolving(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tPAGES_QUERY\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlistViewRootClientId: pageListHasBlocks\n\t\t\t\t\t? blockClientIds[ 0 ]\n\t\t\t\t\t: rootClientId,\n\t\t\t\t// This is a small hack to wait for the navigation block\n\t\t\t\t// to actually load its inner blocks.\n\t\t\t\tisLoading:\n\t\t\t\t\t! areInnerBlocksControlled( rootClientId ) ||\n\t\t\t\t\tisLoadingPages,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst offCanvasOnselect = useCallback(\n\t\t( block ) => {\n\t\t\tif (\n\t\t\t\tblock.name === 'core/navigation-link' &&\n\t\t\t\t! block.attributes.url\n\t\t\t) {\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceBlock(\n\t\t\t\t\tblock.clientId,\n\t\t\t\t\tcreateBlock( 'core/navigation-link', block.attributes )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ __unstableMarkNextChangeAsNotPersistent, replaceBlock ]\n\t);\n\n\t// The hidden block is needed because it makes block edit side effects trigger.\n\t// For example a navigation page list load its items has an effect on edit to load its items.\n\treturn (\n\t\t<>\n\t\t\t{ ! isLoading && (\n\t\t\t\t<PrivateListView\n\t\t\t\t\trootClientId={ listViewRootClientId }\n\t\t\t\t\tonSelect={ offCanvasOnselect }\n\t\t\t\t\tblockSettingsMenu={ LeafMoreMenu }\n\t\t\t\t\tshowAppender={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-navigation-menus__helper-block-editor\">\n\t\t\t\t<BlockTools>\n\t\t\t\t\t<BlockList />\n\t\t\t\t</BlockTools>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js"],"names":["PrivateListView","blockEditorPrivateApis","MAX_PAGE_COUNT","PAGES_QUERY","per_page","_fields","orderby","order","NavigationMenuContent","rootClientId","listViewRootClientId","isLoading","select","areInnerBlocksControlled","getBlockName","getBlockCount","getBlockOrder","blockEditorStore","isResolving","coreStore","blockClientIds","hasOnlyPageListBlock","length","pageListHasBlocks","isLoadingPages","replaceBlock","__unstableMarkNextChangeAsNotPersistent","offCanvasOnselect","block","name","attributes","url","clientId","LeafMoreMenu"],"mappings":";;;;;;;;;AAUA;;AAPA;;AAKA;;AACA;;AAEA;;AAKA;;AACA;;AAjBA;AACA;AACA;;AAWA;AACA;AACA;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAsB,wBAAQC,wBAAR,CAA5B,C,CAEA;;AACA,MAAMC,cAAc,GAAG,GAAvB;AACA,MAAMC,WAAW,GAAG,CACnB,UADmB,EAEnB,MAFmB,EAGnB;AACCC,EAAAA,QAAQ,EAAEF,cADX;AAECG,EAAAA,OAAO,EAAE,CAAE,IAAF,EAAQ,MAAR,EAAgB,YAAhB,EAA8B,QAA9B,EAAwC,OAAxC,EAAiD,MAAjD,CAFV;AAGC;AACA;AACA;AACAC,EAAAA,OAAO,EAAE,YANV;AAOCC,EAAAA,KAAK,EAAE;AAPR,CAHmB,CAApB;;AAce,SAASC,qBAAT,CAAgC;AAAEC,EAAAA;AAAF,CAAhC,EAAmD;AACjE,QAAM;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB,MAAsC,qBACzCC,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,wBADK;AAELC,MAAAA,YAFK;AAGLC,MAAAA,aAHK;AAILC,MAAAA;AAJK,QAKFJ,MAAM,CAAEK,kBAAF,CALV;AAMA,UAAM;AAAEC,MAAAA;AAAF,QAAkBN,MAAM,CAAEO,eAAF,CAA9B;AAEA,UAAMC,cAAc,GAAGJ,aAAa,CAAEP,YAAF,CAApC;AAEA,UAAMY,oBAAoB,GACzBD,cAAc,CAACE,MAAf,KAA0B,CAA1B,IACAR,YAAY,CAAEM,cAAc,CAAE,CAAF,CAAhB,CAAZ,KAAwC,gBAFzC;AAGA,UAAMG,iBAAiB,GACtBF,oBAAoB,IACpBN,aAAa,CAAEK,cAAc,CAAE,CAAF,CAAhB,CAAb,GAAuC,CAFxC;AAIA,UAAMI,cAAc,GAAGN,WAAW,CACjC,kBADiC,EAEjCf,WAFiC,CAAlC;AAKA,WAAO;AACNO,MAAAA,oBAAoB,EAAEa,iBAAiB,GACpCH,cAAc,CAAE,CAAF,CADsB,GAEpCX,YAHG;AAIN;AACA;AACAE,MAAAA,SAAS,EACR,CAAEE,wBAAwB,CAAEJ,YAAF,CAA1B,IACAe;AARK,KAAP;AAUA,GAlC0C,EAmC3C,CAAEf,YAAF,CAnC2C,CAA5C;AAqCA,QAAM;AAAEgB,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MACL,uBAAaT,kBAAb,CADD;AAGA,QAAMU,iBAAiB,GAAG,0BACvBC,KAAF,IAAa;AACZ,QACCA,KAAK,CAACC,IAAN,KAAe,sBAAf,IACA,CAAED,KAAK,CAACE,UAAN,CAAiBC,GAFpB,EAGE;AACDL,MAAAA,uCAAuC;;AACvCD,MAAAA,YAAY,CACXG,KAAK,CAACI,QADK,EAEX,yBAAa,sBAAb,EAAqCJ,KAAK,CAACE,UAA3C,CAFW,CAAZ;AAIA;AACD,GAZwB,EAazB,CAAEJ,uCAAF,EAA2CD,YAA3C,CAbyB,CAA1B,CAzCiE,CAyDjE;AACA;;AACA,SACC,qDACG,CAAEd,SAAF,IACD,4BAAC,eAAD;AACC,IAAA,YAAY,EAAGD,oBADhB;AAEC,IAAA,QAAQ,EAAGiB,iBAFZ;AAGC,IAAA,iBAAiB,EAAGM,qBAHrB;AAIC,IAAA,YAAY,EAAG;AAJhB,IAFF,EASC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,sBAAD,OADD,CATD,CADD;AAeA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockList,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport LeafMoreMenu from './leaf-more-menu';\n\nconst { PrivateListView } = unlock( blockEditorPrivateApis );\n\n// Needs to be kept in sync with the query used at packages/block-library/src/page-list/edit.js.\nconst MAX_PAGE_COUNT = 100;\nconst PAGES_QUERY = [\n\t'postType',\n\t'page',\n\t{\n\t\tper_page: MAX_PAGE_COUNT,\n\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t// sort.\n\t\torderby: 'menu_order',\n\t\torder: 'asc',\n\t},\n];\n\nexport default function NavigationMenuContent( { rootClientId } ) {\n\tconst { listViewRootClientId, isLoading } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tareInnerBlocksControlled,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isResolving } = select( coreStore );\n\n\t\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\n\t\t\tconst hasOnlyPageListBlock =\n\t\t\t\tblockClientIds.length === 1 &&\n\t\t\t\tgetBlockName( blockClientIds[ 0 ] ) === 'core/page-list';\n\t\t\tconst pageListHasBlocks =\n\t\t\t\thasOnlyPageListBlock &&\n\t\t\t\tgetBlockCount( blockClientIds[ 0 ] ) > 0;\n\n\t\t\tconst isLoadingPages = isResolving(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tPAGES_QUERY\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlistViewRootClientId: pageListHasBlocks\n\t\t\t\t\t? blockClientIds[ 0 ]\n\t\t\t\t\t: rootClientId,\n\t\t\t\t// This is a small hack to wait for the navigation block\n\t\t\t\t// to actually load its inner blocks.\n\t\t\t\tisLoading:\n\t\t\t\t\t! areInnerBlocksControlled( rootClientId ) ||\n\t\t\t\t\tisLoadingPages,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst offCanvasOnselect = useCallback(\n\t\t( block ) => {\n\t\t\tif (\n\t\t\t\tblock.name === 'core/navigation-link' &&\n\t\t\t\t! block.attributes.url\n\t\t\t) {\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceBlock(\n\t\t\t\t\tblock.clientId,\n\t\t\t\t\tcreateBlock( 'core/navigation-link', block.attributes )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ __unstableMarkNextChangeAsNotPersistent, replaceBlock ]\n\t);\n\n\t// The hidden block is needed because it makes block edit side effects trigger.\n\t// For example a navigation page list load its items has an effect on edit to load its items.\n\treturn (\n\t\t<>\n\t\t\t{ ! isLoading && (\n\t\t\t\t<PrivateListView\n\t\t\t\t\trootClientId={ listViewRootClientId }\n\t\t\t\t\tonSelect={ offCanvasOnselect }\n\t\t\t\t\tblockSettingsMenu={ LeafMoreMenu }\n\t\t\t\t\tshowAppender={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-navigation-menus__helper-block-editor\">\n\t\t\t\t<BlockList />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -54,6 +54,8 @@ const PageItem = ({
54
54
  const linkInfo = (0, _link.useLink)({
55
55
  postType,
56
56
  postId
57
+ }, {
58
+ backPath: '/page'
57
59
  });
58
60
  return (0, _element.createElement)(_sidebarNavigationItem.default, { ...linkInfo,
59
61
  ...props
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pages/index.js"],"names":["useHistory","routerPrivateApis","PageItem","postType","postId","props","linkInfo","SidebarNavigationScreenPages","records","pages","isResolving","isLoadingPages","status","per_page","templates","isLoadingTemplates","dynamicPageTemplates","filter","slug","includes","homeTemplate","find","template","getPostsPageTemplate","pagesAndTemplates","concat","frontPage","postsPage","select","getEntityRecord","coreStore","siteSettings","page_on_front","page_for_posts","isHomePageBlog","reorderedPages","length","homePageIndex","findIndex","item","id","homePage","splice","postsPageIndex","blogPage","showAddPage","setShowAddPage","history","handleNewPage","type","push","canvas","getPageProps","itemIcon","page","postsPageTemplateId","home","verse","icon","plus","title","rendered","map","layout","document","location"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalTruncate as Truncate,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { layout, page, home, verse, plus } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarButton from '../sidebar-button';\nimport AddNewPageModal from '../add-new-page';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst PageItem = ( { postType = 'page', postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostType,\n\t\tpostId,\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n\nexport default function SidebarNavigationScreenPages() {\n\tconst { records: pages, isResolving: isLoadingPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tstatus: 'any',\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst { records: templates, isResolving: isLoadingTemplates } =\n\t\tuseEntityRecords( 'postType', 'wp_template', {\n\t\t\tper_page: -1,\n\t\t} );\n\n\tconst dynamicPageTemplates = templates?.filter( ( { slug } ) =>\n\t\t[ '404', 'search' ].includes( slug )\n\t);\n\n\tconst homeTemplate =\n\t\ttemplates?.find( ( template ) => template.slug === 'front-page' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'home' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'index' );\n\n\tconst getPostsPageTemplate = () =>\n\t\ttemplates?.find( ( template ) => template.slug === 'home' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'index' );\n\n\tconst pagesAndTemplates = pages?.concat( dynamicPageTemplates, [\n\t\thomeTemplate,\n\t] );\n\n\tconst { frontPage, postsPage } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\treturn {\n\t\t\tfrontPage: siteSettings?.page_on_front,\n\t\t\tpostsPage: siteSettings?.page_for_posts,\n\t\t};\n\t}, [] );\n\n\tconst isHomePageBlog = frontPage === postsPage;\n\n\tconst reorderedPages = pages && [ ...pages ];\n\n\tif ( ! isHomePageBlog && reorderedPages?.length ) {\n\t\tconst homePageIndex = reorderedPages.findIndex(\n\t\t\t( item ) => item.id === frontPage\n\t\t);\n\t\tconst homePage = reorderedPages.splice( homePageIndex, 1 );\n\t\treorderedPages?.splice( 0, 0, ...homePage );\n\n\t\tconst postsPageIndex = reorderedPages.findIndex(\n\t\t\t( item ) => item.id === postsPage\n\t\t);\n\n\t\tconst blogPage = reorderedPages.splice( postsPageIndex, 1 );\n\n\t\treorderedPages.splice( 1, 0, ...blogPage );\n\t}\n\n\tconst [ showAddPage, setShowAddPage ] = useState( false );\n\n\tconst history = useHistory();\n\n\tconst handleNewPage = ( { type, id } ) => {\n\t\t// Navigate to the created template editor.\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tsetShowAddPage( false );\n\t};\n\n\tconst getPageProps = ( id ) => {\n\t\tlet itemIcon = page;\n\t\tconst postsPageTemplateId =\n\t\t\tpostsPage && postsPage === id ? getPostsPageTemplate()?.id : null;\n\n\t\tswitch ( id ) {\n\t\t\tcase frontPage:\n\t\t\t\titemIcon = home;\n\t\t\t\tbreak;\n\t\t\tcase postsPage:\n\t\t\t\titemIcon = verse;\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn {\n\t\t\ticon: itemIcon,\n\t\t\tpostType: postsPageTemplateId ? 'wp_template' : 'page',\n\t\t\tpostId: postsPageTemplateId || id,\n\t\t};\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ showAddPage && (\n\t\t\t\t<AddNewPageModal\n\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\tonClose={ () => setShowAddPage( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<SidebarNavigationScreen\n\t\t\t\ttitle={ __( 'Pages' ) }\n\t\t\t\tdescription={ __( 'Browse and edit pages on your site.' ) }\n\t\t\t\tactions={\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\tlabel={ __( 'Draft a new page' ) }\n\t\t\t\t\t\tonClick={ () => setShowAddPage( true ) }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ( isLoadingPages || isLoadingTemplates ) && (\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t<Item>{ __( 'Loading pages' ) }</Item>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! ( isLoadingPages || isLoadingTemplates ) && (\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t{ ! pagesAndTemplates?.length && (\n\t\t\t\t\t\t\t\t\t<Item>{ __( 'No page found' ) }</Item>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ isHomePageBlog && homeTemplate && (\n\t\t\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\t\t\tpostType=\"wp_template\"\n\t\t\t\t\t\t\t\t\t\tpostId={ homeTemplate.id }\n\t\t\t\t\t\t\t\t\t\tkey={ homeTemplate.id }\n\t\t\t\t\t\t\t\t\t\ticon={ home }\n\t\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\thomeTemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ reorderedPages?.map( ( { id, title } ) => (\n\t\t\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\t\t\t{ ...getPageProps( id ) }\n\t\t\t\t\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\ttitle?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t{ dynamicPageTemplates?.map( ( item ) => (\n\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\tpostType=\"wp_template\"\n\t\t\t\t\t\t\t\tpostId={ item.id }\n\t\t\t\t\t\t\t\tkey={ item.id }\n\t\t\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\titem.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t<SidebarNavigationItem\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-pages__see-all\"\n\t\t\t\t\t\t\thref=\"edit.php?post_type=page\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tdocument.location = 'edit.php?post_type=page';\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Manage all pages' ) }\n\t\t\t\t\t\t</SidebarNavigationItem>\n\t\t\t\t\t</VStack>\n\t\t\t\t}\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pages/index.js"],"names":["useHistory","routerPrivateApis","PageItem","postType","postId","props","linkInfo","backPath","SidebarNavigationScreenPages","records","pages","isResolving","isLoadingPages","status","per_page","templates","isLoadingTemplates","dynamicPageTemplates","filter","slug","includes","homeTemplate","find","template","getPostsPageTemplate","pagesAndTemplates","concat","frontPage","postsPage","select","getEntityRecord","coreStore","siteSettings","page_on_front","page_for_posts","isHomePageBlog","reorderedPages","length","homePageIndex","findIndex","item","id","homePage","splice","postsPageIndex","blogPage","showAddPage","setShowAddPage","history","handleNewPage","type","push","canvas","getPageProps","itemIcon","page","postsPageTemplateId","home","verse","icon","plus","title","rendered","map","layout","document","location"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalTruncate as Truncate,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { layout, page, home, verse, plus } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarButton from '../sidebar-button';\nimport AddNewPageModal from '../add-new-page';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst PageItem = ( { postType = 'page', postId, ...props } ) => {\n\tconst linkInfo = useLink(\n\t\t{\n\t\t\tpostType,\n\t\t\tpostId,\n\t\t},\n\t\t{\n\t\t\tbackPath: '/page',\n\t\t}\n\t);\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n\nexport default function SidebarNavigationScreenPages() {\n\tconst { records: pages, isResolving: isLoadingPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tstatus: 'any',\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst { records: templates, isResolving: isLoadingTemplates } =\n\t\tuseEntityRecords( 'postType', 'wp_template', {\n\t\t\tper_page: -1,\n\t\t} );\n\n\tconst dynamicPageTemplates = templates?.filter( ( { slug } ) =>\n\t\t[ '404', 'search' ].includes( slug )\n\t);\n\n\tconst homeTemplate =\n\t\ttemplates?.find( ( template ) => template.slug === 'front-page' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'home' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'index' );\n\n\tconst getPostsPageTemplate = () =>\n\t\ttemplates?.find( ( template ) => template.slug === 'home' ) ||\n\t\ttemplates?.find( ( template ) => template.slug === 'index' );\n\n\tconst pagesAndTemplates = pages?.concat( dynamicPageTemplates, [\n\t\thomeTemplate,\n\t] );\n\n\tconst { frontPage, postsPage } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\treturn {\n\t\t\tfrontPage: siteSettings?.page_on_front,\n\t\t\tpostsPage: siteSettings?.page_for_posts,\n\t\t};\n\t}, [] );\n\n\tconst isHomePageBlog = frontPage === postsPage;\n\n\tconst reorderedPages = pages && [ ...pages ];\n\n\tif ( ! isHomePageBlog && reorderedPages?.length ) {\n\t\tconst homePageIndex = reorderedPages.findIndex(\n\t\t\t( item ) => item.id === frontPage\n\t\t);\n\t\tconst homePage = reorderedPages.splice( homePageIndex, 1 );\n\t\treorderedPages?.splice( 0, 0, ...homePage );\n\n\t\tconst postsPageIndex = reorderedPages.findIndex(\n\t\t\t( item ) => item.id === postsPage\n\t\t);\n\n\t\tconst blogPage = reorderedPages.splice( postsPageIndex, 1 );\n\n\t\treorderedPages.splice( 1, 0, ...blogPage );\n\t}\n\n\tconst [ showAddPage, setShowAddPage ] = useState( false );\n\n\tconst history = useHistory();\n\n\tconst handleNewPage = ( { type, id } ) => {\n\t\t// Navigate to the created template editor.\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tsetShowAddPage( false );\n\t};\n\n\tconst getPageProps = ( id ) => {\n\t\tlet itemIcon = page;\n\t\tconst postsPageTemplateId =\n\t\t\tpostsPage && postsPage === id ? getPostsPageTemplate()?.id : null;\n\n\t\tswitch ( id ) {\n\t\t\tcase frontPage:\n\t\t\t\titemIcon = home;\n\t\t\t\tbreak;\n\t\t\tcase postsPage:\n\t\t\t\titemIcon = verse;\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn {\n\t\t\ticon: itemIcon,\n\t\t\tpostType: postsPageTemplateId ? 'wp_template' : 'page',\n\t\t\tpostId: postsPageTemplateId || id,\n\t\t};\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ showAddPage && (\n\t\t\t\t<AddNewPageModal\n\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\tonClose={ () => setShowAddPage( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<SidebarNavigationScreen\n\t\t\t\ttitle={ __( 'Pages' ) }\n\t\t\t\tdescription={ __( 'Browse and edit pages on your site.' ) }\n\t\t\t\tactions={\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\tlabel={ __( 'Draft a new page' ) }\n\t\t\t\t\t\tonClick={ () => setShowAddPage( true ) }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ( isLoadingPages || isLoadingTemplates ) && (\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t<Item>{ __( 'Loading pages' ) }</Item>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! ( isLoadingPages || isLoadingTemplates ) && (\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t{ ! pagesAndTemplates?.length && (\n\t\t\t\t\t\t\t\t\t<Item>{ __( 'No page found' ) }</Item>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ isHomePageBlog && homeTemplate && (\n\t\t\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\t\t\tpostType=\"wp_template\"\n\t\t\t\t\t\t\t\t\t\tpostId={ homeTemplate.id }\n\t\t\t\t\t\t\t\t\t\tkey={ homeTemplate.id }\n\t\t\t\t\t\t\t\t\t\ticon={ home }\n\t\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\thomeTemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ reorderedPages?.map( ( { id, title } ) => (\n\t\t\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\t\t\t{ ...getPageProps( id ) }\n\t\t\t\t\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\ttitle?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t{ dynamicPageTemplates?.map( ( item ) => (\n\t\t\t\t\t\t\t<PageItem\n\t\t\t\t\t\t\t\tpostType=\"wp_template\"\n\t\t\t\t\t\t\t\tpostId={ item.id }\n\t\t\t\t\t\t\t\tkey={ item.id }\n\t\t\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\titem.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t</PageItem>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t<SidebarNavigationItem\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-pages__see-all\"\n\t\t\t\t\t\t\thref=\"edit.php?post_type=page\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tdocument.location = 'edit.php?post_type=page';\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Manage all pages' ) }\n\t\t\t\t\t\t</SidebarNavigationItem>\n\t\t\t\t\t</VStack>\n\t\t\t\t}\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}
@@ -34,7 +34,7 @@ function TemplatePartNavigationMenu({
34
34
  size: "11",
35
35
  upperCase: true,
36
36
  weight: 500
37
- }, title?.rendered || title || (0, _i18n.__)('Navigation')), (0, _element.createElement)(_navigationMenuEditor.default, {
37
+ }, title || (0, _i18n.__)('Navigation')), (0, _element.createElement)(_navigationMenuEditor.default, {
38
38
  navigationMenuId: id
39
39
  }));
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js"],"names":["TemplatePartNavigationMenu","id","title","rendered"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,0BAAT,CAAqC;AAAEC,EAAAA;AAAF,CAArC,EAA8C;AAC5D,QAAM,CAAEC,KAAF,IAAY,6BAAe,UAAf,EAA2B,eAA3B,EAA4C,OAA5C,EAAqDD,EAArD,CAAlB;AAEA,MAAK,CAAEA,EAAP,EAAY,OAAO,IAAP;AAEZ,SACC,qDACC,4BAAC,iCAAD;AACC,IAAA,SAAS,EAAC,0EADX;AAEC,IAAA,IAAI,EAAC,IAFN;AAGC,IAAA,SAAS,EAAG,IAHb;AAIC,IAAA,MAAM,EAAG;AAJV,KAMGC,KAAK,EAAEC,QAAP,IAAmBD,KAAnB,IAA4B,cAAI,YAAJ,CAN/B,CADD,EASC,4BAAC,6BAAD;AAAsB,IAAA,gBAAgB,EAAGD;AAAzC,IATD,CADD;AAaA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport NavigationMenuEditor from '../sidebar-navigation-screen-navigation-menu/navigation-menu-editor';\n\nexport default function TemplatePartNavigationMenu( { id } ) {\n\tconst [ title ] = useEntityProp( 'postType', 'wp_navigation', 'title', id );\n\n\tif ( ! id ) return null;\n\n\treturn (\n\t\t<>\n\t\t\t<Heading\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template-part-navigation-menu__title\"\n\t\t\t\tsize=\"11\"\n\t\t\t\tupperCase={ true }\n\t\t\t\tweight={ 500 }\n\t\t\t>\n\t\t\t\t{ title?.rendered || title || __( 'Navigation' ) }\n\t\t\t</Heading>\n\t\t\t<NavigationMenuEditor navigationMenuId={ id } />\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js"],"names":["TemplatePartNavigationMenu","id","title"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,0BAAT,CAAqC;AAAEC,EAAAA;AAAF,CAArC,EAA8C;AAC5D,QAAM,CAAEC,KAAF,IAAY,6BAAe,UAAf,EAA2B,eAA3B,EAA4C,OAA5C,EAAqDD,EAArD,CAAlB;AAEA,MAAK,CAAEA,EAAP,EAAY,OAAO,IAAP;AAEZ,SACC,qDACC,4BAAC,iCAAD;AACC,IAAA,SAAS,EAAC,0EADX;AAEC,IAAA,IAAI,EAAC,IAFN;AAGC,IAAA,SAAS,EAAG,IAHb;AAIC,IAAA,MAAM,EAAG;AAJV,KAMGC,KAAK,IAAI,cAAI,YAAJ,CANZ,CADD,EASC,4BAAC,6BAAD;AAAsB,IAAA,gBAAgB,EAAGD;AAAzC,IATD,CADD;AAaA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport NavigationMenuEditor from '../sidebar-navigation-screen-navigation-menu/navigation-menu-editor';\n\nexport default function TemplatePartNavigationMenu( { id } ) {\n\tconst [ title ] = useEntityProp( 'postType', 'wp_navigation', 'title', id );\n\n\tif ( ! id ) return null;\n\n\treturn (\n\t\t<>\n\t\t\t<Heading\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template-part-navigation-menu__title\"\n\t\t\t\tsize=\"11\"\n\t\t\t\tupperCase={ true }\n\t\t\t\tweight={ 500 }\n\t\t\t>\n\t\t\t\t{ title || __( 'Navigation' ) }\n\t\t\t</Heading>\n\t\t\t<NavigationMenuEditor navigationMenuId={ id } />\n\t\t</>\n\t);\n}\n"]}
@@ -9,10 +9,16 @@ exports.default = useNavigationMenuContent;
9
9
 
10
10
  var _element = require("@wordpress/element");
11
11
 
12
+ var _blocks2 = require("@wordpress/blocks");
13
+
12
14
  var _templatePartNavigationMenus = _interopRequireDefault(require("./template-part-navigation-menus"));
13
15
 
14
16
  var _useEditedEntityRecord = _interopRequireDefault(require("../use-edited-entity-record"));
15
17
 
18
+ /**
19
+ * WordPress dependencies
20
+ */
21
+
16
22
  /**
17
23
  * Internal dependencies
18
24
  */
@@ -68,7 +74,8 @@ function useNavigationMenuContent(postType, postId) {
68
74
  return;
69
75
  }
70
76
 
71
- const navigationBlocks = getBlocksOfTypeFromBlocks('core/navigation', record?.blocks);
77
+ const blocks = record?.content && typeof record.content !== 'function' ? (0, _blocks2.parse)(record.content) : [];
78
+ const navigationBlocks = getBlocksOfTypeFromBlocks('core/navigation', blocks);
72
79
 
73
80
  if (!navigationBlocks.length) {
74
81
  return;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js"],"names":["getBlocksOfTypeFromBlocks","targetBlockType","blocks","length","findInBlocks","_blocks","navigationBlocks","block","name","push","innerBlocks","innerNavigationBlocks","useNavigationMenuContent","postType","postId","record","navigationMenuIds","map","attributes","ref","uniqueNavigationMenuIds","Set","filter","menuId"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,yBAAT,CAAoCC,eAApC,EAAqDC,MAArD,EAA8D;AAC7D,MAAK,CAAED,eAAF,IAAqB,CAAEC,MAAM,EAAEC,MAApC,EAA6C;AAC5C,WAAO,EAAP;AACA;;AAED,QAAMC,YAAY,GAAKC,OAAF,IAAe;AACnC,QAAK,CAAEA,OAAP,EAAiB;AAChB,aAAO,EAAP;AACA;;AAED,UAAMC,gBAAgB,GAAG,EAAzB;;AAEA,SAAM,MAAMC,KAAZ,IAAqBF,OAArB,EAA+B;AAC9B,UAAKE,KAAK,CAACC,IAAN,KAAeP,eAApB,EAAsC;AACrCK,QAAAA,gBAAgB,CAACG,IAAjB,CAAuBF,KAAvB;AACA;;AAED,UAAKA,KAAK,EAAEG,WAAZ,EAA0B;AACzB,cAAMC,qBAAqB,GAAGP,YAAY,CAAEG,KAAK,CAACG,WAAR,CAA1C;;AAEA,YAAKC,qBAAqB,CAACR,MAA3B,EAAoC;AACnCG,UAAAA,gBAAgB,CAACG,IAAjB,CAAuB,GAAGE,qBAA1B;AACA;AACD;AACD;;AAED,WAAOL,gBAAP;AACA,GAtBD;;AAwBA,SAAOF,YAAY,CAAEF,MAAF,CAAnB;AACA;;AAEc,SAASU,wBAAT,CAAmCC,QAAnC,EAA6CC,MAA7C,EAAsD;AACpE,QAAM;AAAEC,IAAAA;AAAF,MAAa,oCAAuBF,QAAvB,EAAiCC,MAAjC,CAAnB,CADoE,CAGpE;AACA;AACA;;AACA,MAAKD,QAAQ,KAAK,kBAAlB,EAAuC;AACtC;AACA;;AAED,QAAMP,gBAAgB,GAAGN,yBAAyB,CACjD,iBADiD,EAEjDe,MAAM,EAAEb,MAFyC,CAAlD;;AAKA,MAAK,CAAEI,gBAAgB,CAACH,MAAxB,EAAiC;AAChC;AACA;;AAED,QAAMa,iBAAiB,GAAGV,gBAAgB,EAAEW,GAAlB,CACvBV,KAAF,IAAaA,KAAK,CAACW,UAAN,CAAiBC,GADL,CAA1B,CAnBoE,CAuBpE;AACA;;AACA,QAAMC,uBAAuB,GAAG,CAAE,GAAG,IAAIC,GAAJ,CAASL,iBAAT,CAAL,EAAoCM,MAApC,CAC7BC,MAAF,IAAcA,MADiB,CAAhC;;AAIA,MAAK,CAAEH,uBAAuB,EAAEjB,MAAhC,EAAyC;AACxC;AACA;;AAED,SAAO,4BAAC,oCAAD;AAA6B,IAAA,KAAK,EAAGiB;AAArC,IAAP;AACA","sourcesContent":["/**\n * Internal dependencies\n */\nimport TemplatePartNavigationMenus from './template-part-navigation-menus';\nimport useEditedEntityRecord from '../use-edited-entity-record';\n\n/**\n * Retrieves a list of specific blocks from a given tree of blocks.\n *\n * @param {string} targetBlockType The name of the block type to find.\n * @param {Array} blocks A list of blocks from a template part entity.\n *\n * @return {Array} A list of any navigation blocks found in the blocks.\n */\nfunction getBlocksOfTypeFromBlocks( targetBlockType, blocks ) {\n\tif ( ! targetBlockType || ! blocks?.length ) {\n\t\treturn [];\n\t}\n\n\tconst findInBlocks = ( _blocks ) => {\n\t\tif ( ! _blocks ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst navigationBlocks = [];\n\n\t\tfor ( const block of _blocks ) {\n\t\t\tif ( block.name === targetBlockType ) {\n\t\t\t\tnavigationBlocks.push( block );\n\t\t\t}\n\n\t\t\tif ( block?.innerBlocks ) {\n\t\t\t\tconst innerNavigationBlocks = findInBlocks( block.innerBlocks );\n\n\t\t\t\tif ( innerNavigationBlocks.length ) {\n\t\t\t\t\tnavigationBlocks.push( ...innerNavigationBlocks );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn navigationBlocks;\n\t};\n\n\treturn findInBlocks( blocks );\n}\n\nexport default function useNavigationMenuContent( postType, postId ) {\n\tconst { record } = useEditedEntityRecord( postType, postId );\n\n\t// Only managing navigation menus in template parts is supported\n\t// to match previous behaviour. This could potentially be expanded\n\t// to patterns as well.\n\tif ( postType !== 'wp_template_part' ) {\n\t\treturn;\n\t}\n\n\tconst navigationBlocks = getBlocksOfTypeFromBlocks(\n\t\t'core/navigation',\n\t\trecord?.blocks\n\t);\n\n\tif ( ! navigationBlocks.length ) {\n\t\treturn;\n\t}\n\n\tconst navigationMenuIds = navigationBlocks?.map(\n\t\t( block ) => block.attributes.ref\n\t);\n\n\t// Dedupe the Navigation blocks, as you can have multiple navigation blocks in the template.\n\t// Also, filter out undefined values, as blocks don't have an id when initially added.\n\tconst uniqueNavigationMenuIds = [ ...new Set( navigationMenuIds ) ].filter(\n\t\t( menuId ) => menuId\n\t);\n\n\tif ( ! uniqueNavigationMenuIds?.length ) {\n\t\treturn;\n\t}\n\n\treturn <TemplatePartNavigationMenus menus={ uniqueNavigationMenuIds } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js"],"names":["getBlocksOfTypeFromBlocks","targetBlockType","blocks","length","findInBlocks","_blocks","navigationBlocks","block","name","push","innerBlocks","innerNavigationBlocks","useNavigationMenuContent","postType","postId","record","content","navigationMenuIds","map","attributes","ref","uniqueNavigationMenuIds","Set","filter","menuId"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,yBAAT,CAAoCC,eAApC,EAAqDC,MAArD,EAA8D;AAC7D,MAAK,CAAED,eAAF,IAAqB,CAAEC,MAAM,EAAEC,MAApC,EAA6C;AAC5C,WAAO,EAAP;AACA;;AAED,QAAMC,YAAY,GAAKC,OAAF,IAAe;AACnC,QAAK,CAAEA,OAAP,EAAiB;AAChB,aAAO,EAAP;AACA;;AAED,UAAMC,gBAAgB,GAAG,EAAzB;;AAEA,SAAM,MAAMC,KAAZ,IAAqBF,OAArB,EAA+B;AAC9B,UAAKE,KAAK,CAACC,IAAN,KAAeP,eAApB,EAAsC;AACrCK,QAAAA,gBAAgB,CAACG,IAAjB,CAAuBF,KAAvB;AACA;;AAED,UAAKA,KAAK,EAAEG,WAAZ,EAA0B;AACzB,cAAMC,qBAAqB,GAAGP,YAAY,CAAEG,KAAK,CAACG,WAAR,CAA1C;;AAEA,YAAKC,qBAAqB,CAACR,MAA3B,EAAoC;AACnCG,UAAAA,gBAAgB,CAACG,IAAjB,CAAuB,GAAGE,qBAA1B;AACA;AACD;AACD;;AAED,WAAOL,gBAAP;AACA,GAtBD;;AAwBA,SAAOF,YAAY,CAAEF,MAAF,CAAnB;AACA;;AAEc,SAASU,wBAAT,CAAmCC,QAAnC,EAA6CC,MAA7C,EAAsD;AACpE,QAAM;AAAEC,IAAAA;AAAF,MAAa,oCAAuBF,QAAvB,EAAiCC,MAAjC,CAAnB,CADoE,CAGpE;AACA;AACA;;AACA,MAAKD,QAAQ,KAAK,kBAAlB,EAAuC;AACtC;AACA;;AAED,QAAMX,MAAM,GACXa,MAAM,EAAEC,OAAR,IAAmB,OAAOD,MAAM,CAACC,OAAd,KAA0B,UAA7C,GACG,oBAAOD,MAAM,CAACC,OAAd,CADH,GAEG,EAHJ;AAKA,QAAMV,gBAAgB,GAAGN,yBAAyB,CACjD,iBADiD,EAEjDE,MAFiD,CAAlD;;AAKA,MAAK,CAAEI,gBAAgB,CAACH,MAAxB,EAAiC;AAChC;AACA;;AAED,QAAMc,iBAAiB,GAAGX,gBAAgB,EAAEY,GAAlB,CACvBX,KAAF,IAAaA,KAAK,CAACY,UAAN,CAAiBC,GADL,CAA1B,CAxBoE,CA4BpE;AACA;;AACA,QAAMC,uBAAuB,GAAG,CAAE,GAAG,IAAIC,GAAJ,CAASL,iBAAT,CAAL,EAAoCM,MAApC,CAC7BC,MAAF,IAAcA,MADiB,CAAhC;;AAIA,MAAK,CAAEH,uBAAuB,EAAElB,MAAhC,EAAyC;AACxC;AACA;;AAED,SAAO,4BAAC,oCAAD;AAA6B,IAAA,KAAK,EAAGkB;AAArC,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartNavigationMenus from './template-part-navigation-menus';\nimport useEditedEntityRecord from '../use-edited-entity-record';\n\n/**\n * Retrieves a list of specific blocks from a given tree of blocks.\n *\n * @param {string} targetBlockType The name of the block type to find.\n * @param {Array} blocks A list of blocks from a template part entity.\n *\n * @return {Array} A list of any navigation blocks found in the blocks.\n */\nfunction getBlocksOfTypeFromBlocks( targetBlockType, blocks ) {\n\tif ( ! targetBlockType || ! blocks?.length ) {\n\t\treturn [];\n\t}\n\n\tconst findInBlocks = ( _blocks ) => {\n\t\tif ( ! _blocks ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst navigationBlocks = [];\n\n\t\tfor ( const block of _blocks ) {\n\t\t\tif ( block.name === targetBlockType ) {\n\t\t\t\tnavigationBlocks.push( block );\n\t\t\t}\n\n\t\t\tif ( block?.innerBlocks ) {\n\t\t\t\tconst innerNavigationBlocks = findInBlocks( block.innerBlocks );\n\n\t\t\t\tif ( innerNavigationBlocks.length ) {\n\t\t\t\t\tnavigationBlocks.push( ...innerNavigationBlocks );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn navigationBlocks;\n\t};\n\n\treturn findInBlocks( blocks );\n}\n\nexport default function useNavigationMenuContent( postType, postId ) {\n\tconst { record } = useEditedEntityRecord( postType, postId );\n\n\t// Only managing navigation menus in template parts is supported\n\t// to match previous behaviour. This could potentially be expanded\n\t// to patterns as well.\n\tif ( postType !== 'wp_template_part' ) {\n\t\treturn;\n\t}\n\n\tconst blocks =\n\t\trecord?.content && typeof record.content !== 'function'\n\t\t\t? parse( record.content )\n\t\t\t: [];\n\n\tconst navigationBlocks = getBlocksOfTypeFromBlocks(\n\t\t'core/navigation',\n\t\tblocks\n\t);\n\n\tif ( ! navigationBlocks.length ) {\n\t\treturn;\n\t}\n\n\tconst navigationMenuIds = navigationBlocks?.map(\n\t\t( block ) => block.attributes.ref\n\t);\n\n\t// Dedupe the Navigation blocks, as you can have multiple navigation blocks in the template.\n\t// Also, filter out undefined values, as blocks don't have an id when initially added.\n\tconst uniqueNavigationMenuIds = [ ...new Set( navigationMenuIds ) ].filter(\n\t\t( menuId ) => menuId\n\t);\n\n\tif ( ! uniqueNavigationMenuIds?.length ) {\n\t\treturn;\n\t}\n\n\treturn <TemplatePartNavigationMenus menus={ uniqueNavigationMenuIds } />;\n}\n"]}