@wordpress/edit-site 5.0.0 → 5.2.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 (262) hide show
  1. package/CHANGELOG.md +14 -1
  2. package/LICENSE.md +1 -1
  3. package/build/components/add-new-template/new-template-part.js +21 -1
  4. package/build/components/add-new-template/new-template-part.js.map +1 -1
  5. package/build/components/add-new-template/utils.js +9 -1
  6. package/build/components/add-new-template/utils.js.map +1 -1
  7. package/build/components/block-editor/editor-canvas.js +0 -1
  8. package/build/components/block-editor/editor-canvas.js.map +1 -1
  9. package/build/components/block-editor/index.js +17 -52
  10. package/build/components/block-editor/index.js.map +1 -1
  11. package/build/components/block-editor/resize-handle.js +2 -1
  12. package/build/components/block-editor/resize-handle.js.map +1 -1
  13. package/build/components/editor/index.js +5 -17
  14. package/build/components/editor/index.js.map +1 -1
  15. package/build/components/global-styles/block-preview-panel.js +27 -6
  16. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  17. package/build/components/global-styles/border-panel.js +5 -5
  18. package/build/components/global-styles/border-panel.js.map +1 -1
  19. package/build/components/global-styles/context-menu.js +9 -1
  20. package/build/components/global-styles/context-menu.js.map +1 -1
  21. package/build/components/global-styles/custom-css.js +1 -0
  22. package/build/components/global-styles/custom-css.js.map +1 -1
  23. package/build/components/global-styles/dimensions-panel.js +16 -11
  24. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  25. package/build/components/global-styles/global-styles-provider.js +3 -2
  26. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  27. package/build/components/global-styles/screen-background-color.js +6 -6
  28. package/build/components/global-styles/screen-background-color.js.map +1 -1
  29. package/build/components/global-styles/screen-block-list.js +4 -1
  30. package/build/components/global-styles/screen-block-list.js.map +1 -1
  31. package/build/components/global-styles/screen-block.js +2 -6
  32. package/build/components/global-styles/screen-block.js.map +1 -1
  33. package/build/components/global-styles/screen-border.js +12 -2
  34. package/build/components/global-styles/screen-border.js.map +1 -1
  35. package/build/components/global-styles/screen-button-color.js +3 -4
  36. package/build/components/global-styles/screen-button-color.js.map +1 -1
  37. package/build/components/global-styles/screen-colors.js +53 -25
  38. package/build/components/global-styles/screen-colors.js.map +1 -1
  39. package/build/components/global-styles/screen-heading-color.js +9 -10
  40. package/build/components/global-styles/screen-heading-color.js.map +1 -1
  41. package/build/components/global-styles/screen-layout.js +12 -2
  42. package/build/components/global-styles/screen-layout.js.map +1 -1
  43. package/build/components/global-styles/screen-link-color.js +8 -8
  44. package/build/components/global-styles/screen-link-color.js.map +1 -1
  45. package/build/components/global-styles/screen-root.js +7 -2
  46. package/build/components/global-styles/screen-root.js.map +1 -1
  47. package/build/components/global-styles/screen-text-color.js +4 -4
  48. package/build/components/global-styles/screen-text-color.js.map +1 -1
  49. package/build/components/global-styles/screen-typography.js +11 -1
  50. package/build/components/global-styles/screen-typography.js.map +1 -1
  51. package/build/components/global-styles/screen-variations.js +71 -0
  52. package/build/components/global-styles/screen-variations.js.map +1 -0
  53. package/build/components/global-styles/typography-panel.js +9 -8
  54. package/build/components/global-styles/typography-panel.js.map +1 -1
  55. package/build/components/global-styles/typography-utils.js +17 -5
  56. package/build/components/global-styles/typography-utils.js.map +1 -1
  57. package/build/components/global-styles/ui.js +85 -18
  58. package/build/components/global-styles/ui.js.map +1 -1
  59. package/build/components/global-styles/use-global-styles-output.js +119 -33
  60. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  61. package/build/components/global-styles/utils.js +60 -3
  62. package/build/components/global-styles/utils.js.map +1 -1
  63. package/build/components/global-styles/variations-panel.js +85 -0
  64. package/build/components/global-styles/variations-panel.js.map +1 -0
  65. package/build/components/header-edit-mode/document-actions/index.js +10 -41
  66. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  67. package/build/components/layout/index.js +129 -87
  68. package/build/components/layout/index.js.map +1 -1
  69. package/build/components/sidebar/index.js +5 -1
  70. package/build/components/sidebar/index.js.map +1 -1
  71. package/build/components/sidebar-edit-mode/index.js +3 -1
  72. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  73. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js +2 -0
  74. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js.map +1 -1
  75. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +10 -0
  76. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js.map +1 -1
  77. package/build/components/sidebar-navigation-screen-main/index.js +1 -31
  78. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  79. package/build/components/sidebar-navigation-screen-templates/index.js +3 -22
  80. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  81. package/build/components/site-hub/index.js +149 -0
  82. package/build/components/site-hub/index.js.map +1 -0
  83. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +54 -0
  84. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -0
  85. package/build/components/template-details/edit-template-title.js +1 -0
  86. package/build/components/template-details/edit-template-title.js.map +1 -1
  87. package/build/components/template-details/template-part-area-selector.js +1 -0
  88. package/build/components/template-details/template-part-area-selector.js.map +1 -1
  89. package/build/components/use-edited-entity-record/index.js +60 -0
  90. package/build/components/use-edited-entity-record/index.js.map +1 -0
  91. package/build/hooks/index.js +2 -0
  92. package/build/hooks/index.js.map +1 -1
  93. package/build/hooks/push-changes-to-global-styles/index.js +144 -0
  94. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -0
  95. package/build/index.js +5 -0
  96. package/build/index.js.map +1 -1
  97. package/build/store/reducer.js +1 -1
  98. package/build/store/reducer.js.map +1 -1
  99. package/build-module/components/add-new-template/new-template-part.js +20 -1
  100. package/build-module/components/add-new-template/new-template-part.js.map +1 -1
  101. package/build-module/components/add-new-template/utils.js +5 -0
  102. package/build-module/components/add-new-template/utils.js.map +1 -1
  103. package/build-module/components/block-editor/editor-canvas.js +0 -1
  104. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  105. package/build-module/components/block-editor/index.js +19 -50
  106. package/build-module/components/block-editor/index.js.map +1 -1
  107. package/build-module/components/block-editor/resize-handle.js +2 -1
  108. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  109. package/build-module/components/editor/index.js +2 -13
  110. package/build-module/components/editor/index.js.map +1 -1
  111. package/build-module/components/global-styles/block-preview-panel.js +26 -6
  112. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  113. package/build-module/components/global-styles/border-panel.js +5 -5
  114. package/build-module/components/global-styles/border-panel.js.map +1 -1
  115. package/build-module/components/global-styles/context-menu.js +7 -1
  116. package/build-module/components/global-styles/context-menu.js.map +1 -1
  117. package/build-module/components/global-styles/custom-css.js +1 -0
  118. package/build-module/components/global-styles/custom-css.js.map +1 -1
  119. package/build-module/components/global-styles/dimensions-panel.js +16 -11
  120. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  121. package/build-module/components/global-styles/global-styles-provider.js +3 -2
  122. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  123. package/build-module/components/global-styles/screen-background-color.js +6 -6
  124. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  125. package/build-module/components/global-styles/screen-block-list.js +3 -1
  126. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  127. package/build-module/components/global-styles/screen-block.js +2 -5
  128. package/build-module/components/global-styles/screen-block.js.map +1 -1
  129. package/build-module/components/global-styles/screen-border.js +10 -2
  130. package/build-module/components/global-styles/screen-border.js.map +1 -1
  131. package/build-module/components/global-styles/screen-button-color.js +3 -4
  132. package/build-module/components/global-styles/screen-button-color.js.map +1 -1
  133. package/build-module/components/global-styles/screen-colors.js +51 -25
  134. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  135. package/build-module/components/global-styles/screen-heading-color.js +9 -10
  136. package/build-module/components/global-styles/screen-heading-color.js.map +1 -1
  137. package/build-module/components/global-styles/screen-layout.js +10 -2
  138. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  139. package/build-module/components/global-styles/screen-link-color.js +8 -8
  140. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  141. package/build-module/components/global-styles/screen-root.js +8 -3
  142. package/build-module/components/global-styles/screen-root.js.map +1 -1
  143. package/build-module/components/global-styles/screen-text-color.js +4 -4
  144. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  145. package/build-module/components/global-styles/screen-typography.js +9 -1
  146. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  147. package/build-module/components/global-styles/screen-variations.js +54 -0
  148. package/build-module/components/global-styles/screen-variations.js.map +1 -0
  149. package/build-module/components/global-styles/typography-panel.js +9 -8
  150. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  151. package/build-module/components/global-styles/typography-utils.js +17 -5
  152. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  153. package/build-module/components/global-styles/ui.js +84 -19
  154. package/build-module/components/global-styles/ui.js.map +1 -1
  155. package/build-module/components/global-styles/use-global-styles-output.js +121 -35
  156. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  157. package/build-module/components/global-styles/utils.js +56 -3
  158. package/build-module/components/global-styles/utils.js.map +1 -1
  159. package/build-module/components/global-styles/variations-panel.js +68 -0
  160. package/build-module/components/global-styles/variations-panel.js.map +1 -0
  161. package/build-module/components/header-edit-mode/document-actions/index.js +10 -38
  162. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  163. package/build-module/components/layout/index.js +129 -88
  164. package/build-module/components/layout/index.js.map +1 -1
  165. package/build-module/components/sidebar/index.js +4 -1
  166. package/build-module/components/sidebar/index.js.map +1 -1
  167. package/build-module/components/sidebar-edit-mode/index.js +3 -1
  168. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  169. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js +2 -0
  170. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js.map +1 -1
  171. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +11 -1
  172. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js.map +1 -1
  173. package/build-module/components/sidebar-navigation-screen-main/index.js +2 -27
  174. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  175. package/build-module/components/sidebar-navigation-screen-templates/index.js +5 -23
  176. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  177. package/build-module/components/site-hub/index.js +127 -0
  178. package/build-module/components/site-hub/index.js.map +1 -0
  179. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +43 -0
  180. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -0
  181. package/build-module/components/template-details/edit-template-title.js +1 -0
  182. package/build-module/components/template-details/edit-template-title.js.map +1 -1
  183. package/build-module/components/template-details/template-part-area-selector.js +1 -0
  184. package/build-module/components/template-details/template-part-area-selector.js.map +1 -1
  185. package/build-module/components/use-edited-entity-record/index.js +48 -0
  186. package/build-module/components/use-edited-entity-record/index.js.map +1 -0
  187. package/build-module/hooks/index.js +1 -0
  188. package/build-module/hooks/index.js.map +1 -1
  189. package/build-module/hooks/push-changes-to-global-styles/index.js +132 -0
  190. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -0
  191. package/build-module/index.js +4 -0
  192. package/build-module/index.js.map +1 -1
  193. package/build-module/store/reducer.js +1 -1
  194. package/build-module/store/reducer.js.map +1 -1
  195. package/build-style/style-rtl.css +190 -125
  196. package/build-style/style.css +190 -125
  197. package/package.json +30 -29
  198. package/src/components/add-new-template/new-template-part.js +23 -1
  199. package/src/components/add-new-template/utils.js +14 -0
  200. package/src/components/block-editor/editor-canvas.js +0 -1
  201. package/src/components/block-editor/index.js +14 -59
  202. package/src/components/block-editor/resize-handle.js +6 -2
  203. package/src/components/block-editor/style.scss +43 -7
  204. package/src/components/editor/index.js +2 -17
  205. package/src/components/global-styles/block-preview-panel.js +37 -10
  206. package/src/components/global-styles/border-panel.js +8 -5
  207. package/src/components/global-styles/context-menu.js +6 -0
  208. package/src/components/global-styles/custom-css.js +1 -0
  209. package/src/components/global-styles/dimensions-panel.js +32 -15
  210. package/src/components/global-styles/global-styles-provider.js +11 -5
  211. package/src/components/global-styles/screen-background-color.js +12 -6
  212. package/src/components/global-styles/screen-block-list.js +6 -1
  213. package/src/components/global-styles/screen-block.js +1 -4
  214. package/src/components/global-styles/screen-border.js +8 -3
  215. package/src/components/global-styles/screen-button-color.js +2 -4
  216. package/src/components/global-styles/screen-colors.js +84 -20
  217. package/src/components/global-styles/screen-heading-color.js +8 -10
  218. package/src/components/global-styles/screen-layout.js +11 -3
  219. package/src/components/global-styles/screen-link-color.js +19 -8
  220. package/src/components/global-styles/screen-root.js +34 -27
  221. package/src/components/global-styles/screen-text-color.js +7 -4
  222. package/src/components/global-styles/screen-typography.js +13 -3
  223. package/src/components/global-styles/screen-variations.js +47 -0
  224. package/src/components/global-styles/style.scss +9 -0
  225. package/src/components/global-styles/test/typography-utils.js +72 -23
  226. package/src/components/global-styles/test/use-global-styles-output.js +1 -1
  227. package/src/components/global-styles/typography-panel.js +31 -8
  228. package/src/components/global-styles/typography-utils.js +24 -4
  229. package/src/components/global-styles/ui.js +101 -13
  230. package/src/components/global-styles/use-global-styles-output.js +137 -14
  231. package/src/components/global-styles/utils.js +56 -3
  232. package/src/components/global-styles/variations-panel.js +78 -0
  233. package/src/components/header-edit-mode/document-actions/index.js +18 -37
  234. package/src/components/header-edit-mode/style.scss +1 -0
  235. package/src/components/layout/index.js +217 -172
  236. package/src/components/layout/style.scss +98 -66
  237. package/src/components/list/style.scss +1 -8
  238. package/src/components/sidebar/index.js +4 -1
  239. package/src/components/sidebar-edit-mode/index.js +1 -1
  240. package/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js +2 -0
  241. package/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +10 -0
  242. package/src/components/sidebar-edit-mode/navigation-menu-sidebar/style.scss +4 -0
  243. package/src/components/sidebar-navigation-screen/style.scss +2 -4
  244. package/src/components/sidebar-navigation-screen-main/index.js +1 -29
  245. package/src/components/sidebar-navigation-screen-templates/index.js +9 -27
  246. package/src/components/site-hub/index.js +161 -0
  247. package/src/components/site-hub/style.scss +31 -0
  248. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +40 -0
  249. package/src/components/template-details/edit-template-title.js +1 -0
  250. package/src/components/template-details/template-part-area-selector.js +1 -0
  251. package/src/components/use-edited-entity-record/index.js +37 -0
  252. package/src/hooks/index.js +1 -0
  253. package/src/hooks/push-changes-to-global-styles/index.js +162 -0
  254. package/src/hooks/push-changes-to-global-styles/style.scss +4 -0
  255. package/src/index.js +2 -0
  256. package/src/store/reducer.js +1 -1
  257. package/src/style.scss +2 -0
  258. package/build/components/site-title/index.js +0 -55
  259. package/build/components/site-title/index.js.map +0 -1
  260. package/build-module/components/site-title/index.js +0 -43
  261. package/build-module/components/site-title/index.js.map +0 -1
  262. package/src/components/site-title/index.js +0 -39
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/index.js"],"names":["createSlotFill","PanelBody","isRTL","__","drawerLeft","drawerRight","useEffect","Fragment","useSelect","useDispatch","store","interfaceStore","blockEditorStore","DefaultSidebar","GlobalStylesSidebar","NavigationMenuSidebar","STORE_NAME","SettingsHeader","TemplateCard","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","editSiteStore","Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","supportsGlobalStyles","select","_sidebar","getActiveComplementaryArea","_isEditorSidebarOpened","includes","settings","getSettings","getBlockSelectionStart","supportsTemplatePartsMode","enableComplementaryArea","sidebarName","MaybeNavigationMenuSidebar","process","env","IS_GUTENBERG_PLUGIN"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { useEffect, Fragment } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport NavigationMenuSidebar from './navigation-menu-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport TemplateCard from './template-card';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\nimport { store as editSiteStore } from '../../store';\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nexport function SidebarComplementaryAreaFills() {\n\tconst {\n\t\tsidebar,\n\t\tisEditorSidebarOpened,\n\t\thasBlockSelection,\n\t\tsupportsGlobalStyles,\n\t} = useSelect( ( select ) => {\n\t\tconst _sidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( STORE_NAME );\n\t\tconst _isEditorSidebarOpened = [\n\t\t\tSIDEBAR_BLOCK,\n\t\t\tSIDEBAR_TEMPLATE,\n\t\t].includes( _sidebar );\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tsidebar: _sidebar,\n\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\thasBlockSelection:\n\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\tsupportsGlobalStyles: ! settings?.supportsTemplatePartsMode,\n\t\t};\n\t}, [] );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( ! isEditorSidebarOpened ) return;\n\t\tif ( hasBlockSelection ) {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [ hasBlockSelection, isEditorSidebarOpened ] );\n\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\n\t// Conditionally include NavMenu sidebar in Plugin only.\n\t// Optimise for dead code elimination.\n\t// See https://github.com/WordPress/gutenberg/blob/trunk/docs/how-to-guides/feature-flags.md#dead-code-elimination.\n\tlet MaybeNavigationMenuSidebar = Fragment;\n\n\tif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\t\tMaybeNavigationMenuSidebar = NavigationMenuSidebar;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\t\tcloseLabel={ __( 'Close settings sidebar' ) }\n\t\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\t\theaderClassName=\"edit-site-sidebar-edit-mode__panel-tabs\"\n\t\t\t>\n\t\t\t\t{ sidebarName === SIDEBAR_TEMPLATE && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TemplateCard />\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ sidebarName === SIDEBAR_BLOCK && (\n\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t) }\n\t\t\t</DefaultSidebar>\n\t\t\t{ supportsGlobalStyles && <GlobalStylesSidebar /> }\n\t\t\t<MaybeNavigationMenuSidebar />\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/index.js"],"names":["createSlotFill","PanelBody","isRTL","__","drawerLeft","drawerRight","useEffect","Fragment","useSelect","useDispatch","store","interfaceStore","blockEditorStore","DefaultSidebar","GlobalStylesSidebar","NavigationMenuSidebar","STORE_NAME","SettingsHeader","TemplateCard","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","editSiteStore","Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","supportsGlobalStyles","select","_sidebar","getActiveComplementaryArea","_isEditorSidebarOpened","includes","settings","getSettings","getBlockSelectionStart","supportsTemplatePartsMode","enableComplementaryArea","sidebarName","MaybeNavigationMenuSidebar","window","__experimentalEnableOffCanvasNavigationEditor"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { useEffect, Fragment } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport NavigationMenuSidebar from './navigation-menu-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport TemplateCard from './template-card';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\nimport { store as editSiteStore } from '../../store';\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nexport function SidebarComplementaryAreaFills() {\n\tconst {\n\t\tsidebar,\n\t\tisEditorSidebarOpened,\n\t\thasBlockSelection,\n\t\tsupportsGlobalStyles,\n\t} = useSelect( ( select ) => {\n\t\tconst _sidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( STORE_NAME );\n\t\tconst _isEditorSidebarOpened = [\n\t\t\tSIDEBAR_BLOCK,\n\t\t\tSIDEBAR_TEMPLATE,\n\t\t].includes( _sidebar );\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tsidebar: _sidebar,\n\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\thasBlockSelection:\n\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\tsupportsGlobalStyles: ! settings?.supportsTemplatePartsMode,\n\t\t};\n\t}, [] );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( ! isEditorSidebarOpened ) return;\n\t\tif ( hasBlockSelection ) {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [ hasBlockSelection, isEditorSidebarOpened ] );\n\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\n\t// Conditionally include NavMenu sidebar in Plugin only.\n\t// Optimise for dead code elimination.\n\t// See https://github.com/WordPress/gutenberg/blob/trunk/docs/how-to-guides/feature-flags.md#dead-code-elimination.\n\tlet MaybeNavigationMenuSidebar = Fragment;\n\n\tif ( window?.__experimentalEnableOffCanvasNavigationEditor === true ) {\n\t\tMaybeNavigationMenuSidebar = NavigationMenuSidebar;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\t\tcloseLabel={ __( 'Close settings sidebar' ) }\n\t\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\t\theaderClassName=\"edit-site-sidebar-edit-mode__panel-tabs\"\n\t\t\t>\n\t\t\t\t{ sidebarName === SIDEBAR_TEMPLATE && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TemplateCard />\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ sidebarName === SIDEBAR_BLOCK && (\n\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t) }\n\t\t\t</DefaultSidebar>\n\t\t\t{ supportsGlobalStyles && <GlobalStylesSidebar /> }\n\t\t\t<MaybeNavigationMenuSidebar />\n\t\t</>\n\t);\n}\n"]}
@@ -143,6 +143,8 @@ export default function NavigationInspector() {
143
143
  }, __('There are no Navigation Menus.')), !hasResolvedNavigationMenus && createElement("div", {
144
144
  className: "edit-site-navigation-inspector__placeholder"
145
145
  }), hasResolvedNavigationMenus && hasMoreThanOneNavigationMenu && createElement(SelectControl, {
146
+ __nextHasNoMarginBottom: true,
147
+ className: "edit-site-navigation-inspector__select-menu",
146
148
  "aria-controls": // aria-controls should only apply when referenced element is in DOM
147
149
  hasLoadedInnerBlocks ? navMenuListId : undefined,
148
150
  value: currentMenuId || defaultNavigationMenuId,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js"],"names":["useSelect","useState","useEffect","SelectControl","store","coreStore","useEntityBlockEditor","blockEditorStore","BlockEditorProvider","speak","useInstanceId","__","NavigationMenu","NAVIGATION_MENUS_QUERY","per_page","status","NavigationInspector","selectedNavigationBlockId","clientIdToRef","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","firstNavigationBlockId","select","__experimentalGetActiveBlockIdByBlockNames","__experimentalGetGlobalBlocksByName","getBlock","getEntityRecords","hasFinishedResolution","isResolving","navigationMenusQuery","selectedNavId","navBlockIds","idToRef","forEach","id","attributes","ref","navMenuListId","firstNavRefInTemplate","firstNavigationMenuRef","defaultNavigationMenuId","currentMenuId","setCurrentMenuId","options","map","title","value","label","rendered","innerBlocks","onInput","onChange","isLoadingInnerBlocks","hasLoadedInnerBlocks","isLoading","hasMoreThanOneNavigationMenu","length","hasNavigationMenus","publishedInnerBlocks","hasInnerBlocks","undefined","newMenuId","Number"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useEffect } from '@wordpress/element';\nimport { SelectControl } from '@wordpress/components';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tstore as blockEditorStore,\n\tBlockEditorProvider,\n} from '@wordpress/block-editor';\nimport { speak } from '@wordpress/a11y';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport NavigationMenu from './navigation-menu';\n\nconst NAVIGATION_MENUS_QUERY = [ { per_page: -1, status: 'publish' } ];\n\nexport default function NavigationInspector() {\n\tconst {\n\t\tselectedNavigationBlockId,\n\t\tclientIdToRef,\n\t\tnavigationMenus,\n\t\tisResolvingNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tfirstNavigationBlockId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetActiveBlockIdByBlockNames,\n\t\t\t__experimentalGetGlobalBlocksByName,\n\t\t\tgetBlock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst { getEntityRecords, hasFinishedResolution, isResolving } =\n\t\t\tselect( coreStore );\n\n\t\tconst navigationMenusQuery = [\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tNAVIGATION_MENUS_QUERY[ 0 ],\n\t\t];\n\n\t\t// Get the active Navigation block (if present).\n\t\tconst selectedNavId =\n\t\t\t__experimentalGetActiveBlockIdByBlockNames( 'core/navigation' );\n\n\t\t// Get all Navigation blocks currently within the editor canvas.\n\t\tconst navBlockIds =\n\t\t\t__experimentalGetGlobalBlocksByName( 'core/navigation' );\n\t\tconst idToRef = {};\n\t\tnavBlockIds.forEach( ( id ) => {\n\t\t\tidToRef[ id ] = getBlock( id )?.attributes?.ref;\n\t\t} );\n\t\treturn {\n\t\t\tselectedNavigationBlockId: selectedNavId,\n\t\t\tfirstNavigationBlockId: navBlockIds?.[ 0 ],\n\t\t\tclientIdToRef: idToRef,\n\t\t\tnavigationMenus: getEntityRecords( ...navigationMenusQuery ),\n\t\t\tisResolvingNavigationMenus: isResolving(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tnavigationMenusQuery\n\t\t\t),\n\t\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tnavigationMenusQuery\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst navMenuListId = useInstanceId(\n\t\tNavigationMenu,\n\t\t'edit-site-navigation-inspector-menu'\n\t);\n\n\tconst firstNavRefInTemplate = clientIdToRef[ firstNavigationBlockId ];\n\tconst firstNavigationMenuRef = navigationMenus?.[ 0 ]?.id;\n\n\t// Default Navigation Menu is either:\n\t// - the Navigation Menu referenced by the first Nav block within the template.\n\t// - the first of the available Navigation Menus (`wp_navigation`) posts.\n\tconst defaultNavigationMenuId =\n\t\tfirstNavRefInTemplate || firstNavigationMenuRef;\n\n\t// The Navigation Menu manually selected by the user within the Nav inspector.\n\tconst [ currentMenuId, setCurrentMenuId ] = useState(\n\t\tfirstNavRefInTemplate\n\t);\n\n\t// If a Nav block is selected within the canvas then set the\n\t// Navigation Menu referenced by it's `ref` attribute to be\n\t// active within the Navigation sidebar.\n\tuseEffect( () => {\n\t\tif ( selectedNavigationBlockId ) {\n\t\t\tsetCurrentMenuId( clientIdToRef[ selectedNavigationBlockId ] );\n\t\t}\n\t}, [ selectedNavigationBlockId ] );\n\n\tlet options = [];\n\tif ( navigationMenus ) {\n\t\toptions = navigationMenus.map( ( { id, title } ) => ( {\n\t\t\tvalue: id,\n\t\t\tlabel: title.rendered,\n\t\t} ) );\n\t}\n\n\tconst [ innerBlocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t{ id: currentMenuId || defaultNavigationMenuId }\n\t);\n\n\tconst { isLoadingInnerBlocks, hasLoadedInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isResolving, hasFinishedResolution } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisLoadingInnerBlocks: isResolving( 'getEntityRecord', [\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_navigation',\n\t\t\t\t\tcurrentMenuId || defaultNavigationMenuId,\n\t\t\t\t] ),\n\t\t\t\thasLoadedInnerBlocks: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecord',\n\t\t\t\t\t[\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'wp_navigation',\n\t\t\t\t\t\tcurrentMenuId || defaultNavigationMenuId,\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ currentMenuId, defaultNavigationMenuId ]\n\t);\n\n\tconst isLoading = ! ( hasResolvedNavigationMenus && hasLoadedInnerBlocks );\n\n\tconst hasMoreThanOneNavigationMenu = navigationMenus?.length > 1;\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\t// Entity block editor will return entities that are not currently published.\n\t// Guard by only allowing their usage if there are published Nav Menus.\n\tconst publishedInnerBlocks = hasNavigationMenus ? innerBlocks : [];\n\n\tconst hasInnerBlocks = !! publishedInnerBlocks?.length;\n\n\tuseEffect( () => {\n\t\tif ( isResolvingNavigationMenus ) {\n\t\t\tspeak( 'Loading Navigation sidebar menus.' );\n\t\t}\n\n\t\tif ( hasResolvedNavigationMenus ) {\n\t\t\tspeak( 'Navigation sidebar menus have loaded.' );\n\t\t}\n\t}, [ isResolvingNavigationMenus, hasResolvedNavigationMenus ] );\n\n\tuseEffect( () => {\n\t\tif ( isLoadingInnerBlocks ) {\n\t\t\tspeak( 'Loading Navigation sidebar selected menu items.' );\n\t\t}\n\n\t\tif ( hasLoadedInnerBlocks ) {\n\t\t\tspeak( 'Navigation sidebar selected menu items have loaded.' );\n\t\t}\n\t}, [ isLoadingInnerBlocks, hasLoadedInnerBlocks ] );\n\n\treturn (\n\t\t<div className=\"edit-site-navigation-inspector\">\n\t\t\t{ hasResolvedNavigationMenus && ! hasNavigationMenus && (\n\t\t\t\t<p className=\"edit-site-navigation-inspector__empty-msg\">\n\t\t\t\t\t{ __( 'There are no Navigation Menus.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\n\t\t\t{ ! hasResolvedNavigationMenus && (\n\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder\" />\n\t\t\t) }\n\t\t\t{ hasResolvedNavigationMenus && hasMoreThanOneNavigationMenu && (\n\t\t\t\t<SelectControl\n\t\t\t\t\taria-controls={\n\t\t\t\t\t\t// aria-controls should only apply when referenced element is in DOM\n\t\t\t\t\t\thasLoadedInnerBlocks ? navMenuListId : undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ currentMenuId || defaultNavigationMenuId }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tonChange={ ( newMenuId ) =>\n\t\t\t\t\t\tsetCurrentMenuId( Number( newMenuId ) )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ isLoading && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ hasInnerBlocks && ! isLoading && (\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ publishedInnerBlocks }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t>\n\t\t\t\t\t<NavigationMenu\n\t\t\t\t\t\tid={ navMenuListId }\n\t\t\t\t\t\tinnerBlocks={ publishedInnerBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</BlockEditorProvider>\n\t\t\t) }\n\n\t\t\t{ ! hasInnerBlocks && ! isLoading && (\n\t\t\t\t<p className=\"edit-site-navigation-inspector__empty-msg\">\n\t\t\t\t\t{ __( 'Navigation Menu is empty.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js"],"names":["useSelect","useState","useEffect","SelectControl","store","coreStore","useEntityBlockEditor","blockEditorStore","BlockEditorProvider","speak","useInstanceId","__","NavigationMenu","NAVIGATION_MENUS_QUERY","per_page","status","NavigationInspector","selectedNavigationBlockId","clientIdToRef","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","firstNavigationBlockId","select","__experimentalGetActiveBlockIdByBlockNames","__experimentalGetGlobalBlocksByName","getBlock","getEntityRecords","hasFinishedResolution","isResolving","navigationMenusQuery","selectedNavId","navBlockIds","idToRef","forEach","id","attributes","ref","navMenuListId","firstNavRefInTemplate","firstNavigationMenuRef","defaultNavigationMenuId","currentMenuId","setCurrentMenuId","options","map","title","value","label","rendered","innerBlocks","onInput","onChange","isLoadingInnerBlocks","hasLoadedInnerBlocks","isLoading","hasMoreThanOneNavigationMenu","length","hasNavigationMenus","publishedInnerBlocks","hasInnerBlocks","undefined","newMenuId","Number"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useEffect } from '@wordpress/element';\nimport { SelectControl } from '@wordpress/components';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tstore as blockEditorStore,\n\tBlockEditorProvider,\n} from '@wordpress/block-editor';\nimport { speak } from '@wordpress/a11y';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport NavigationMenu from './navigation-menu';\n\nconst NAVIGATION_MENUS_QUERY = [ { per_page: -1, status: 'publish' } ];\n\nexport default function NavigationInspector() {\n\tconst {\n\t\tselectedNavigationBlockId,\n\t\tclientIdToRef,\n\t\tnavigationMenus,\n\t\tisResolvingNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tfirstNavigationBlockId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetActiveBlockIdByBlockNames,\n\t\t\t__experimentalGetGlobalBlocksByName,\n\t\t\tgetBlock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst { getEntityRecords, hasFinishedResolution, isResolving } =\n\t\t\tselect( coreStore );\n\n\t\tconst navigationMenusQuery = [\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tNAVIGATION_MENUS_QUERY[ 0 ],\n\t\t];\n\n\t\t// Get the active Navigation block (if present).\n\t\tconst selectedNavId =\n\t\t\t__experimentalGetActiveBlockIdByBlockNames( 'core/navigation' );\n\n\t\t// Get all Navigation blocks currently within the editor canvas.\n\t\tconst navBlockIds =\n\t\t\t__experimentalGetGlobalBlocksByName( 'core/navigation' );\n\t\tconst idToRef = {};\n\t\tnavBlockIds.forEach( ( id ) => {\n\t\t\tidToRef[ id ] = getBlock( id )?.attributes?.ref;\n\t\t} );\n\t\treturn {\n\t\t\tselectedNavigationBlockId: selectedNavId,\n\t\t\tfirstNavigationBlockId: navBlockIds?.[ 0 ],\n\t\t\tclientIdToRef: idToRef,\n\t\t\tnavigationMenus: getEntityRecords( ...navigationMenusQuery ),\n\t\t\tisResolvingNavigationMenus: isResolving(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tnavigationMenusQuery\n\t\t\t),\n\t\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t\t'getEntityRecords',\n\t\t\t\tnavigationMenusQuery\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst navMenuListId = useInstanceId(\n\t\tNavigationMenu,\n\t\t'edit-site-navigation-inspector-menu'\n\t);\n\n\tconst firstNavRefInTemplate = clientIdToRef[ firstNavigationBlockId ];\n\tconst firstNavigationMenuRef = navigationMenus?.[ 0 ]?.id;\n\n\t// Default Navigation Menu is either:\n\t// - the Navigation Menu referenced by the first Nav block within the template.\n\t// - the first of the available Navigation Menus (`wp_navigation`) posts.\n\tconst defaultNavigationMenuId =\n\t\tfirstNavRefInTemplate || firstNavigationMenuRef;\n\n\t// The Navigation Menu manually selected by the user within the Nav inspector.\n\tconst [ currentMenuId, setCurrentMenuId ] = useState(\n\t\tfirstNavRefInTemplate\n\t);\n\n\t// If a Nav block is selected within the canvas then set the\n\t// Navigation Menu referenced by it's `ref` attribute to be\n\t// active within the Navigation sidebar.\n\tuseEffect( () => {\n\t\tif ( selectedNavigationBlockId ) {\n\t\t\tsetCurrentMenuId( clientIdToRef[ selectedNavigationBlockId ] );\n\t\t}\n\t}, [ selectedNavigationBlockId ] );\n\n\tlet options = [];\n\tif ( navigationMenus ) {\n\t\toptions = navigationMenus.map( ( { id, title } ) => ( {\n\t\t\tvalue: id,\n\t\t\tlabel: title.rendered,\n\t\t} ) );\n\t}\n\n\tconst [ innerBlocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t{ id: currentMenuId || defaultNavigationMenuId }\n\t);\n\n\tconst { isLoadingInnerBlocks, hasLoadedInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isResolving, hasFinishedResolution } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisLoadingInnerBlocks: isResolving( 'getEntityRecord', [\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_navigation',\n\t\t\t\t\tcurrentMenuId || defaultNavigationMenuId,\n\t\t\t\t] ),\n\t\t\t\thasLoadedInnerBlocks: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecord',\n\t\t\t\t\t[\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'wp_navigation',\n\t\t\t\t\t\tcurrentMenuId || defaultNavigationMenuId,\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ currentMenuId, defaultNavigationMenuId ]\n\t);\n\n\tconst isLoading = ! ( hasResolvedNavigationMenus && hasLoadedInnerBlocks );\n\n\tconst hasMoreThanOneNavigationMenu = navigationMenus?.length > 1;\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\t// Entity block editor will return entities that are not currently published.\n\t// Guard by only allowing their usage if there are published Nav Menus.\n\tconst publishedInnerBlocks = hasNavigationMenus ? innerBlocks : [];\n\n\tconst hasInnerBlocks = !! publishedInnerBlocks?.length;\n\n\tuseEffect( () => {\n\t\tif ( isResolvingNavigationMenus ) {\n\t\t\tspeak( 'Loading Navigation sidebar menus.' );\n\t\t}\n\n\t\tif ( hasResolvedNavigationMenus ) {\n\t\t\tspeak( 'Navigation sidebar menus have loaded.' );\n\t\t}\n\t}, [ isResolvingNavigationMenus, hasResolvedNavigationMenus ] );\n\n\tuseEffect( () => {\n\t\tif ( isLoadingInnerBlocks ) {\n\t\t\tspeak( 'Loading Navigation sidebar selected menu items.' );\n\t\t}\n\n\t\tif ( hasLoadedInnerBlocks ) {\n\t\t\tspeak( 'Navigation sidebar selected menu items have loaded.' );\n\t\t}\n\t}, [ isLoadingInnerBlocks, hasLoadedInnerBlocks ] );\n\n\treturn (\n\t\t<div className=\"edit-site-navigation-inspector\">\n\t\t\t{ hasResolvedNavigationMenus && ! hasNavigationMenus && (\n\t\t\t\t<p className=\"edit-site-navigation-inspector__empty-msg\">\n\t\t\t\t\t{ __( 'There are no Navigation Menus.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\n\t\t\t{ ! hasResolvedNavigationMenus && (\n\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder\" />\n\t\t\t) }\n\t\t\t{ hasResolvedNavigationMenus && hasMoreThanOneNavigationMenu && (\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"edit-site-navigation-inspector__select-menu\"\n\t\t\t\t\taria-controls={\n\t\t\t\t\t\t// aria-controls should only apply when referenced element is in DOM\n\t\t\t\t\t\thasLoadedInnerBlocks ? navMenuListId : undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ currentMenuId || defaultNavigationMenuId }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tonChange={ ( newMenuId ) =>\n\t\t\t\t\t\tsetCurrentMenuId( Number( newMenuId ) )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ isLoading && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t\t<div className=\"edit-site-navigation-inspector__placeholder is-child\" />\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ hasInnerBlocks && ! isLoading && (\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ publishedInnerBlocks }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t>\n\t\t\t\t\t<NavigationMenu\n\t\t\t\t\t\tid={ navMenuListId }\n\t\t\t\t\t\tinnerBlocks={ publishedInnerBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</BlockEditorProvider>\n\t\t\t) }\n\n\t\t\t{ ! hasInnerBlocks && ! isLoading && (\n\t\t\t\t<p className=\"edit-site-navigation-inspector__empty-msg\">\n\t\t\t\t\t{ __( 'Navigation Menu is empty.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
@@ -3,7 +3,7 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { __experimentalListView as ListView, store as blockEditorStore } from '@wordpress/block-editor';
6
+ import { __experimentalListView as ListView, __experimentalOffCanvasEditor as OffCanvasEditor, store as blockEditorStore } from '@wordpress/block-editor';
7
7
  import { useEffect } from '@wordpress/element';
8
8
  import { useDispatch } from '@wordpress/data';
9
9
  const ALLOWED_BLOCKS = {
@@ -13,6 +13,8 @@ const ALLOWED_BLOCKS = {
13
13
  'core/navigation-link': ['core/navigation-link', 'core/navigation-submenu']
14
14
  };
15
15
  export default function NavigationMenu(_ref) {
16
+ var _window;
17
+
16
18
  let {
17
19
  innerBlocks,
18
20
  id
@@ -34,6 +36,14 @@ export default function NavigationMenu(_ref) {
34
36
  }
35
37
  });
36
38
  }, [updateBlockListSettings, innerBlocks]);
39
+
40
+ if ((_window = window) !== null && _window !== void 0 && _window.__experimentalEnableOffCanvasNavigationEditor) {
41
+ return createElement(OffCanvasEditor, {
42
+ blocks: innerBlocks,
43
+ selectBlockInCanvas: false
44
+ });
45
+ }
46
+
37
47
  return createElement(ListView, {
38
48
  id: id
39
49
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js"],"names":["__experimentalListView","ListView","store","blockEditorStore","useEffect","useDispatch","ALLOWED_BLOCKS","NavigationMenu","innerBlocks","id","updateBlockListSettings","allowedBlocks","forEach","block","name","clientId"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,sBAAsB,IAAIC,QAD3B,EAECC,KAAK,IAAIC,gBAFV,QAGO,yBAHP;AAIA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,WAAT,QAA4B,iBAA5B;AAEA,MAAMC,cAAc,GAAG;AACtB,qBAAmB,CAClB,sBADkB,EAElB,aAFkB,EAGlB,mBAHkB,EAIlB,gBAJkB,EAKlB,aALkB,EAMlB,gBANkB,EAOlB,iBAPkB,EAQlB,gBARkB,EASlB,yBATkB,CADG;AAYtB,uBAAqB,CAAE,kBAAF,CAZC;AAatB,6BAA2B,CAC1B,sBAD0B,EAE1B,yBAF0B,CAbL;AAiBtB,0BAAwB,CACvB,sBADuB,EAEvB,yBAFuB;AAjBF,CAAvB;AAuBA,eAAe,SAASC,cAAT,OAA+C;AAAA,MAAtB;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,GAAsB;AAC7D,QAAM;AAAEC,IAAAA;AAAF,MAA8BL,WAAW,CAAEF,gBAAF,CAA/C,CAD6D,CAG7D;AACA;;AACAC,EAAAA,SAAS,CAAE,MAAM;AAChBM,IAAAA,uBAAuB,CAAE,EAAF,EAAM;AAC5BC,MAAAA,aAAa,EAAEL,cAAc,CAAE,iBAAF;AADD,KAAN,CAAvB;AAGAE,IAAAA,WAAW,CAACI,OAAZ,CAAuBC,KAAF,IAAa;AACjC,UAAKP,cAAc,CAAEO,KAAK,CAACC,IAAR,CAAnB,EAAoC;AACnCJ,QAAAA,uBAAuB,CAAEG,KAAK,CAACE,QAAR,EAAkB;AACxCJ,UAAAA,aAAa,EAAEL,cAAc,CAAEO,KAAK,CAACC,IAAR;AADW,SAAlB,CAAvB;AAGA;AACD,KAND;AAOA,GAXQ,EAWN,CAAEJ,uBAAF,EAA2BF,WAA3B,CAXM,CAAT;AAYA,SAAO,cAAC,QAAD;AAAU,IAAA,EAAE,EAAGC;AAAf,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalListView as ListView,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\n\nconst ALLOWED_BLOCKS = {\n\t'core/navigation': [\n\t\t'core/navigation-link',\n\t\t'core/search',\n\t\t'core/social-links',\n\t\t'core/page-list',\n\t\t'core/spacer',\n\t\t'core/home-link',\n\t\t'core/site-title',\n\t\t'core/site-logo',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/social-links': [ 'core/social-link' ],\n\t'core/navigation-submenu': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/navigation-link': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n};\n\nexport default function NavigationMenu( { innerBlocks, id } ) {\n\tconst { updateBlockListSettings } = useDispatch( blockEditorStore );\n\n\t//TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList\n\t//Think through a better way of doing this, possible with adding allowed blocks to block library metadata\n\tuseEffect( () => {\n\t\tupdateBlockListSettings( '', {\n\t\t\tallowedBlocks: ALLOWED_BLOCKS[ 'core/navigation' ],\n\t\t} );\n\t\tinnerBlocks.forEach( ( block ) => {\n\t\t\tif ( ALLOWED_BLOCKS[ block.name ] ) {\n\t\t\t\tupdateBlockListSettings( block.clientId, {\n\t\t\t\t\tallowedBlocks: ALLOWED_BLOCKS[ block.name ],\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}, [ updateBlockListSettings, innerBlocks ] );\n\treturn <ListView id={ id } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js"],"names":["__experimentalListView","ListView","__experimentalOffCanvasEditor","OffCanvasEditor","store","blockEditorStore","useEffect","useDispatch","ALLOWED_BLOCKS","NavigationMenu","innerBlocks","id","updateBlockListSettings","allowedBlocks","forEach","block","name","clientId","window","__experimentalEnableOffCanvasNavigationEditor"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,sBAAsB,IAAIC,QAD3B,EAECC,6BAA6B,IAAIC,eAFlC,EAGCC,KAAK,IAAIC,gBAHV,QAIO,yBAJP;AAKA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,WAAT,QAA4B,iBAA5B;AAEA,MAAMC,cAAc,GAAG;AACtB,qBAAmB,CAClB,sBADkB,EAElB,aAFkB,EAGlB,mBAHkB,EAIlB,gBAJkB,EAKlB,aALkB,EAMlB,gBANkB,EAOlB,iBAPkB,EAQlB,gBARkB,EASlB,yBATkB,CADG;AAYtB,uBAAqB,CAAE,kBAAF,CAZC;AAatB,6BAA2B,CAC1B,sBAD0B,EAE1B,yBAF0B,CAbL;AAiBtB,0BAAwB,CACvB,sBADuB,EAEvB,yBAFuB;AAjBF,CAAvB;AAuBA,eAAe,SAASC,cAAT,OAA+C;AAAA;;AAAA,MAAtB;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,GAAsB;AAC7D,QAAM;AAAEC,IAAAA;AAAF,MAA8BL,WAAW,CAAEF,gBAAF,CAA/C,CAD6D,CAG7D;AACA;;AACAC,EAAAA,SAAS,CAAE,MAAM;AAChBM,IAAAA,uBAAuB,CAAE,EAAF,EAAM;AAC5BC,MAAAA,aAAa,EAAEL,cAAc,CAAE,iBAAF;AADD,KAAN,CAAvB;AAGAE,IAAAA,WAAW,CAACI,OAAZ,CAAuBC,KAAF,IAAa;AACjC,UAAKP,cAAc,CAAEO,KAAK,CAACC,IAAR,CAAnB,EAAoC;AACnCJ,QAAAA,uBAAuB,CAAEG,KAAK,CAACE,QAAR,EAAkB;AACxCJ,UAAAA,aAAa,EAAEL,cAAc,CAAEO,KAAK,CAACC,IAAR;AADW,SAAlB,CAAvB;AAGA;AACD,KAND;AAOA,GAXQ,EAWN,CAAEJ,uBAAF,EAA2BF,WAA3B,CAXM,CAAT;;AAaA,iBAAKQ,MAAL,oCAAK,QAAQC,6CAAb,EAA6D;AAC5D,WACC,cAAC,eAAD;AACC,MAAA,MAAM,EAAGT,WADV;AAEC,MAAA,mBAAmB,EAAG;AAFvB,MADD;AAMA;;AACD,SAAO,cAAC,QAAD;AAAU,IAAA,EAAE,EAAGC;AAAf,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalListView as ListView,\n\t__experimentalOffCanvasEditor as OffCanvasEditor,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\n\nconst ALLOWED_BLOCKS = {\n\t'core/navigation': [\n\t\t'core/navigation-link',\n\t\t'core/search',\n\t\t'core/social-links',\n\t\t'core/page-list',\n\t\t'core/spacer',\n\t\t'core/home-link',\n\t\t'core/site-title',\n\t\t'core/site-logo',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/social-links': [ 'core/social-link' ],\n\t'core/navigation-submenu': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/navigation-link': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n};\n\nexport default function NavigationMenu( { innerBlocks, id } ) {\n\tconst { updateBlockListSettings } = useDispatch( blockEditorStore );\n\n\t//TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList\n\t//Think through a better way of doing this, possible with adding allowed blocks to block library metadata\n\tuseEffect( () => {\n\t\tupdateBlockListSettings( '', {\n\t\t\tallowedBlocks: ALLOWED_BLOCKS[ 'core/navigation' ],\n\t\t} );\n\t\tinnerBlocks.forEach( ( block ) => {\n\t\t\tif ( ALLOWED_BLOCKS[ block.name ] ) {\n\t\t\t\tupdateBlockListSettings( block.clientId, {\n\t\t\t\t\tallowedBlocks: ALLOWED_BLOCKS[ block.name ],\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}, [ updateBlockListSettings, innerBlocks ] );\n\n\tif ( window?.__experimentalEnableOffCanvasNavigationEditor ) {\n\t\treturn (\n\t\t\t<OffCanvasEditor\n\t\t\t\tblocks={ innerBlocks }\n\t\t\t\tselectBlockInCanvas={ false }\n\t\t\t/>\n\t\t);\n\t}\n\treturn <ListView id={ id } />;\n}\n"]}
@@ -3,44 +3,19 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack, __experimentalNavigatorButton as NavigatorButton, Button } from '@wordpress/components';
6
+ import { __experimentalItemGroup as ItemGroup, __experimentalNavigatorButton as NavigatorButton } from '@wordpress/components';
7
7
  import { __ } from '@wordpress/i18n';
8
8
  import { layout, symbolFilled } from '@wordpress/icons';
9
- import { useDispatch } from '@wordpress/data';
10
- import { useViewportMatch } from '@wordpress/compose';
11
9
  /**
12
10
  * Internal dependencies
13
11
  */
14
12
 
15
13
  import SidebarNavigationScreen from '../sidebar-navigation-screen';
16
14
  import SidebarNavigationItem from '../sidebar-navigation-item';
17
- import { useLocation } from '../routes';
18
- import { store as editSiteStore } from '../../store';
19
- import getIsListPage from '../../utils/get-is-list-page';
20
15
  export default function SidebarNavigationScreenMain() {
21
- const {
22
- params
23
- } = useLocation();
24
- const isListPage = getIsListPage(params);
25
- const isEditorPage = !isListPage;
26
- const {
27
- __unstableSetCanvasMode
28
- } = useDispatch(editSiteStore);
29
- const isMobileViewport = useViewportMatch('medium', '<');
30
16
  return createElement(SidebarNavigationScreen, {
31
17
  path: "/",
32
- title: createElement(HStack, {
33
- justify: "space-between",
34
- style: {
35
- minHeight: 36
36
- }
37
- }, createElement("div", null, __('Design')), !isMobileViewport && isEditorPage && createElement(Button, {
38
- className: "edit-site-layout__edit-button",
39
- label: __('Open the editor'),
40
- onClick: () => {
41
- __unstableSetCanvasMode('edit');
42
- }
43
- }, __('Edit'))),
18
+ title: __('Design'),
44
19
  content: createElement(ItemGroup, null, createElement(NavigatorButton, {
45
20
  as: SidebarNavigationItem,
46
21
  path: "/templates",
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-main/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalNavigatorButton","NavigatorButton","Button","__","layout","symbolFilled","useDispatch","useViewportMatch","SidebarNavigationScreen","SidebarNavigationItem","useLocation","store","editSiteStore","getIsListPage","SidebarNavigationScreenMain","params","isListPage","isEditorPage","__unstableSetCanvasMode","isMobileViewport","minHeight"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAD5B,EAECC,oBAAoB,IAAIC,MAFzB,EAGCC,6BAA6B,IAAIC,eAHlC,EAICC,MAJD,QAKO,uBALP;AAMA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,MAAT,EAAiBC,YAAjB,QAAqC,kBAArC;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SAASC,gBAAT,QAAiC,oBAAjC;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,8BAApC;AACA,OAAOC,qBAAP,MAAkC,4BAAlC;AACA,SAASC,WAAT,QAA4B,WAA5B;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,OAAOC,aAAP,MAA0B,8BAA1B;AAEA,eAAe,SAASC,2BAAT,GAAuC;AACrD,QAAM;AAAEC,IAAAA;AAAF,MAAaL,WAAW,EAA9B;AACA,QAAMM,UAAU,GAAGH,aAAa,CAAEE,MAAF,CAAhC;AACA,QAAME,YAAY,GAAG,CAAED,UAAvB;AACA,QAAM;AAAEE,IAAAA;AAAF,MAA8BZ,WAAW,CAAEM,aAAF,CAA/C;AACA,QAAMO,gBAAgB,GAAGZ,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AAEA,SACC,cAAC,uBAAD;AACC,IAAA,IAAI,EAAC,GADN;AAEC,IAAA,KAAK,EACJ,cAAC,MAAD;AAAQ,MAAA,OAAO,EAAC,eAAhB;AAAgC,MAAA,KAAK,EAAG;AAAEa,QAAAA,SAAS,EAAE;AAAb;AAAxC,OACC,2BAAOjB,EAAE,CAAE,QAAF,CAAT,CADD,EAEG,CAAEgB,gBAAF,IAAsBF,YAAtB,IACD,cAAC,MAAD;AACC,MAAA,SAAS,EAAC,+BADX;AAEC,MAAA,KAAK,EAAGd,EAAE,CAAE,iBAAF,CAFX;AAGC,MAAA,OAAO,EAAG,MAAM;AACfe,QAAAA,uBAAuB,CAAE,MAAF,CAAvB;AACA;AALF,OAOGf,EAAE,CAAE,MAAF,CAPL,CAHF,CAHF;AAkBC,IAAA,OAAO,EACN,cAAC,SAAD,QACC,cAAC,eAAD;AACC,MAAA,EAAE,EAAGM,qBADN;AAEC,MAAA,IAAI,EAAC,YAFN;AAGC,MAAA,WAAW,MAHZ;AAIC,MAAA,IAAI,EAAGL;AAJR,OAMGD,EAAE,CAAE,WAAF,CANL,CADD,EASC,cAAC,eAAD;AACC,MAAA,EAAE,EAAGM,qBADN;AAEC,MAAA,IAAI,EAAC,iBAFN;AAGC,MAAA,WAAW,MAHZ;AAIC,MAAA,IAAI,EAAGJ;AAJR,OAMGF,EAAE,CAAE,gBAAF,CANL,CATD;AAnBF,IADD;AAyCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalNavigatorButton as NavigatorButton,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { layout, symbolFilled } from '@wordpress/icons';\nimport { useDispatch } from '@wordpress/data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { useLocation } from '../routes';\nimport { store as editSiteStore } from '../../store';\nimport getIsListPage from '../../utils/get-is-list-page';\n\nexport default function SidebarNavigationScreenMain() {\n\tconst { params } = useLocation();\n\tconst isListPage = getIsListPage( params );\n\tconst isEditorPage = ! isListPage;\n\tconst { __unstableSetCanvasMode } = useDispatch( editSiteStore );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tpath=\"/\"\n\t\t\ttitle={\n\t\t\t\t<HStack justify=\"space-between\" style={ { minHeight: 36 } }>\n\t\t\t\t\t<div>{ __( 'Design' ) }</div>\n\t\t\t\t\t{ ! isMobileViewport && isEditorPage && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__edit-button\"\n\t\t\t\t\t\t\tlabel={ __( 'Open the editor' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t__unstableSetCanvasMode( 'edit' );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t<NavigatorButton\n\t\t\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\t\t\tpath=\"/templates\"\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Templates' ) }\n\t\t\t\t\t</NavigatorButton>\n\t\t\t\t\t<NavigatorButton\n\t\t\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\t\t\tpath=\"/template-parts\"\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ symbolFilled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Template Parts' ) }\n\t\t\t\t\t</NavigatorButton>\n\t\t\t\t</ItemGroup>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-main/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalNavigatorButton","NavigatorButton","__","layout","symbolFilled","SidebarNavigationScreen","SidebarNavigationItem","SidebarNavigationScreenMain"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAD5B,EAECC,6BAA6B,IAAIC,eAFlC,QAGO,uBAHP;AAIA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,MAAT,EAAiBC,YAAjB,QAAqC,kBAArC;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,8BAApC;AACA,OAAOC,qBAAP,MAAkC,4BAAlC;AAEA,eAAe,SAASC,2BAAT,GAAuC;AACrD,SACC,cAAC,uBAAD;AACC,IAAA,IAAI,EAAC,GADN;AAEC,IAAA,KAAK,EAAGL,EAAE,CAAE,QAAF,CAFX;AAGC,IAAA,OAAO,EACN,cAAC,SAAD,QACC,cAAC,eAAD;AACC,MAAA,EAAE,EAAGI,qBADN;AAEC,MAAA,IAAI,EAAC,YAFN;AAGC,MAAA,WAAW,MAHZ;AAIC,MAAA,IAAI,EAAGH;AAJR,OAMGD,EAAE,CAAE,WAAF,CANL,CADD,EASC,cAAC,eAAD;AACC,MAAA,EAAE,EAAGI,qBADN;AAEC,MAAA,IAAI,EAAC,iBAFN;AAGC,MAAA,WAAW,MAHZ;AAIC,MAAA,IAAI,EAAGF;AAJR,OAMGF,EAAE,CAAE,gBAAF,CANL,CATD;AAJF,IADD;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalNavigatorButton as NavigatorButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { layout, symbolFilled } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\n\nexport default function SidebarNavigationScreenMain() {\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tpath=\"/\"\n\t\t\ttitle={ __( 'Design' ) }\n\t\t\tcontent={\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t<NavigatorButton\n\t\t\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\t\t\tpath=\"/templates\"\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Templates' ) }\n\t\t\t\t\t</NavigatorButton>\n\t\t\t\t\t<NavigatorButton\n\t\t\t\t\t\tas={ SidebarNavigationItem }\n\t\t\t\t\t\tpath=\"/template-parts\"\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ symbolFilled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Template Parts' ) }\n\t\t\t\t\t</NavigatorButton>\n\t\t\t\t</ItemGroup>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
@@ -4,9 +4,9 @@ import { createElement, Fragment } from "@wordpress/element";
4
4
  /**
5
5
  * WordPress dependencies
6
6
  */
7
- import { __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack, Button } from '@wordpress/components';
7
+ import { __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack } from '@wordpress/components';
8
8
  import { __ } from '@wordpress/i18n';
9
- import { useDispatch, useSelect } from '@wordpress/data';
9
+ import { useSelect } from '@wordpress/data';
10
10
  import { useEntityRecords } from '@wordpress/core-data';
11
11
  import { decodeEntities } from '@wordpress/html-entities';
12
12
  import { useViewportMatch } from '@wordpress/compose';
@@ -19,7 +19,6 @@ import { useLink } from '../routes/link';
19
19
  import SidebarNavigationItem from '../sidebar-navigation-item';
20
20
  import { useLocation } from '../routes';
21
21
  import { store as editSiteStore } from '../../store';
22
- import getIsListPage from '../../utils/get-is-list-page';
23
22
  import AddNewTemplate from '../add-new-template';
24
23
 
25
24
  function omit(object, keys) {
@@ -67,12 +66,7 @@ export default function SidebarNavigationScreenTemplates(_ref3) {
67
66
  const {
68
67
  params
69
68
  } = useLocation();
70
- const {
71
- __unstableSetCanvasMode
72
- } = useDispatch(editSiteStore);
73
- const isMobileViewport = useViewportMatch('medium', '<');
74
- const isListPage = getIsListPage(params);
75
- const isEditorPage = !isListPage; // Ideally the URL params would be enough.
69
+ const isMobileViewport = useViewportMatch('medium', '<'); // Ideally the URL params would be enough.
76
70
  // Loading the editor should ideally redirect to the home page
77
71
  // instead of fetching the edited entity here.
78
72
 
@@ -125,29 +119,17 @@ export default function SidebarNavigationScreenTemplates(_ref3) {
125
119
  path: config[postType].path,
126
120
  parentTitle: __('Design'),
127
121
  title: createElement(HStack, {
128
- style: {
129
- minHeight: 36
130
- },
131
122
  justify: "space-between"
132
123
  }, createElement("div", {
133
124
  style: {
134
125
  flexShrink: 0
135
126
  }
136
- }, config[postType].labels.title), !isMobileViewport && createElement(HStack, {
137
- spacing: 2,
138
- justify: "right"
139
- }, createElement(AddNewTemplate, {
127
+ }, config[postType].labels.title), !isMobileViewport && createElement(AddNewTemplate, {
140
128
  templateType: postType,
141
129
  toggleProps: {
142
130
  className: 'edit-site-sidebar-navigation-screen-templates__add-button'
143
131
  }
144
- }), isEditorPage && createElement(Button, {
145
- className: "edit-site-layout__edit-button",
146
- label: __('Open the editor'),
147
- onClick: () => {
148
- __unstableSetCanvasMode('edit');
149
- }
150
- }, __('Edit')))),
132
+ })),
151
133
  content: createElement(Fragment, null, createElement(ItemGroup, null, items.map((item, index) => createElement(Item, {
152
134
  item: item,
153
135
  key: index
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-templates/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","Button","__","useDispatch","useSelect","useEntityRecords","decodeEntities","useViewportMatch","SidebarNavigationScreen","useLink","SidebarNavigationItem","useLocation","store","editSiteStore","getIsListPage","AddNewTemplate","omit","object","keys","Object","fromEntries","entries","filter","key","includes","Item","item","linkInfo","params","props","config","wp_template","path","labels","title","loading","notFound","manage","wp_template_part","SidebarNavigationScreenTemplates","postType","__unstableSetCanvasMode","isMobileViewport","isListPage","isEditorPage","editedPostId","editedPostType","select","getEditedPostType","getEditedPostId","records","templates","isResolving","isLoading","per_page","items","children","map","template","postId","id","rendered","slug","undefined","minHeight","flexShrink","className","index"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { useLocation } from '../routes';\nimport { store as editSiteStore } from '../../store';\nimport getIsListPage from '../../utils/get-is-list-page';\nimport AddNewTemplate from '../add-new-template';\n\nfunction omit( object, keys ) {\n\treturn Object.fromEntries(\n\t\tObject.entries( object ).filter( ( [ key ] ) => ! keys.includes( key ) )\n\t);\n}\n\nconst Item = ( { item } ) => {\n\tconst linkInfo = useLink( item.params );\n\tconst props = item.params\n\t\t? { ...omit( item, 'params' ), ...linkInfo }\n\t\t: item;\n\treturn <SidebarNavigationItem { ...props } />;\n};\n\nconst config = {\n\twp_template: {\n\t\tpath: '/templates',\n\t\tlabels: {\n\t\t\ttitle: __( 'Templates' ),\n\t\t\tloading: __( 'Loading templates' ),\n\t\t\tnotFound: __( 'No templates found' ),\n\t\t\tmanage: __( 'Manage all templates' ),\n\t\t},\n\t},\n\twp_template_part: {\n\t\tpath: '/template-parts',\n\t\tlabels: {\n\t\t\ttitle: __( 'Template parts' ),\n\t\t\tloading: __( 'Loading template parts' ),\n\t\t\tnotFound: __( 'No template parts found' ),\n\t\t\tmanage: __( 'Manage all template parts' ),\n\t\t},\n\t},\n};\n\nexport default function SidebarNavigationScreenTemplates( {\n\tpostType = 'wp_template',\n} ) {\n\tconst { params } = useLocation();\n\tconst { __unstableSetCanvasMode } = useDispatch( editSiteStore );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isListPage = getIsListPage( params );\n\tconst isEditorPage = ! isListPage;\n\n\t// Ideally the URL params would be enough.\n\t// Loading the editor should ideally redirect to the home page\n\t// instead of fetching the edited entity here.\n\tconst { editedPostId, editedPostType } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\treturn {\n\t\t\teditedPostId: getEditedPostId(),\n\t\t\teditedPostType: getEditedPostType(),\n\t\t};\n\t}, [] );\n\n\tconst { records: templates, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\tpostType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tlet items = [];\n\tif ( isLoading ) {\n\t\titems = [\n\t\t\t{\n\t\t\t\tchildren: config[ postType ].labels.loading,\n\t\t\t},\n\t\t];\n\t} else if ( ! templates && ! isLoading ) {\n\t\titems = [\n\t\t\t{\n\t\t\t\tchildren: config[ postType ].labels.notFound,\n\t\t\t},\n\t\t];\n\t} else {\n\t\titems = templates?.map( ( template ) => ( {\n\t\t\tparams: {\n\t\t\t\tpostType,\n\t\t\t\tpostId: template.id,\n\t\t\t},\n\t\t\tchildren: decodeEntities(\n\t\t\t\ttemplate.title?.rendered || template.slug\n\t\t\t),\n\t\t\t'aria-current':\n\t\t\t\t( params.postType === postType &&\n\t\t\t\t\tparams.postId === template.id ) ||\n\t\t\t\t// This is a special case for the home page.\n\t\t\t\t( editedPostId === template.id &&\n\t\t\t\t\teditedPostType === postType &&\n\t\t\t\t\t!! params.postId )\n\t\t\t\t\t? 'page'\n\t\t\t\t\t: undefined,\n\t\t} ) );\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tpath={ config[ postType ].path }\n\t\t\tparentTitle={ __( 'Design' ) }\n\t\t\ttitle={\n\t\t\t\t<HStack style={ { minHeight: 36 } } justify=\"space-between\">\n\t\t\t\t\t<div style={ { flexShrink: 0 } }>\n\t\t\t\t\t\t{ config[ postType ].labels.title }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t<HStack spacing={ 2 } justify=\"right\">\n\t\t\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\t\t\ttemplateType={ postType }\n\t\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t\t'edit-site-sidebar-navigation-screen-templates__add-button',\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{ isEditorPage && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__edit-button\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open the editor' ) }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t__unstableSetCanvasMode( 'edit' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t{ items.map( ( item, index ) => (\n\t\t\t\t\t\t\t<Item item={ item } key={ index } />\n\t\t\t\t\t\t) ) }\n\n\t\t\t\t\t\t<SidebarNavigationItem\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-templates__see-all\"\n\t\t\t\t\t\t\t{ ...useLink( {\n\t\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\t\tpostId: undefined,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\t\tparams.postType === postType && ! params.postId\n\t\t\t\t\t\t\t\t\t? 'page'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchildren={ config[ postType ].labels.manage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\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-templates/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__","useSelect","useEntityRecords","decodeEntities","useViewportMatch","SidebarNavigationScreen","useLink","SidebarNavigationItem","useLocation","store","editSiteStore","AddNewTemplate","omit","object","keys","Object","fromEntries","entries","filter","key","includes","Item","item","linkInfo","params","props","config","wp_template","path","labels","title","loading","notFound","manage","wp_template_part","SidebarNavigationScreenTemplates","postType","isMobileViewport","editedPostId","editedPostType","select","getEditedPostType","getEditedPostId","records","templates","isResolving","isLoading","per_page","items","children","map","template","postId","id","rendered","slug","undefined","flexShrink","className","index"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { useLocation } from '../routes';\nimport { store as editSiteStore } from '../../store';\nimport AddNewTemplate from '../add-new-template';\n\nfunction omit( object, keys ) {\n\treturn Object.fromEntries(\n\t\tObject.entries( object ).filter( ( [ key ] ) => ! keys.includes( key ) )\n\t);\n}\n\nconst Item = ( { item } ) => {\n\tconst linkInfo = useLink( item.params );\n\tconst props = item.params\n\t\t? { ...omit( item, 'params' ), ...linkInfo }\n\t\t: item;\n\treturn <SidebarNavigationItem { ...props } />;\n};\n\nconst config = {\n\twp_template: {\n\t\tpath: '/templates',\n\t\tlabels: {\n\t\t\ttitle: __( 'Templates' ),\n\t\t\tloading: __( 'Loading templates' ),\n\t\t\tnotFound: __( 'No templates found' ),\n\t\t\tmanage: __( 'Manage all templates' ),\n\t\t},\n\t},\n\twp_template_part: {\n\t\tpath: '/template-parts',\n\t\tlabels: {\n\t\t\ttitle: __( 'Template parts' ),\n\t\t\tloading: __( 'Loading template parts' ),\n\t\t\tnotFound: __( 'No template parts found' ),\n\t\t\tmanage: __( 'Manage all template parts' ),\n\t\t},\n\t},\n};\n\nexport default function SidebarNavigationScreenTemplates( {\n\tpostType = 'wp_template',\n} ) {\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\t// Ideally the URL params would be enough.\n\t// Loading the editor should ideally redirect to the home page\n\t// instead of fetching the edited entity here.\n\tconst { editedPostId, editedPostType } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\treturn {\n\t\t\teditedPostId: getEditedPostId(),\n\t\t\teditedPostType: getEditedPostType(),\n\t\t};\n\t}, [] );\n\n\tconst { records: templates, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\tpostType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tlet items = [];\n\tif ( isLoading ) {\n\t\titems = [\n\t\t\t{\n\t\t\t\tchildren: config[ postType ].labels.loading,\n\t\t\t},\n\t\t];\n\t} else if ( ! templates && ! isLoading ) {\n\t\titems = [\n\t\t\t{\n\t\t\t\tchildren: config[ postType ].labels.notFound,\n\t\t\t},\n\t\t];\n\t} else {\n\t\titems = templates?.map( ( template ) => ( {\n\t\t\tparams: {\n\t\t\t\tpostType,\n\t\t\t\tpostId: template.id,\n\t\t\t},\n\t\t\tchildren: decodeEntities(\n\t\t\t\ttemplate.title?.rendered || template.slug\n\t\t\t),\n\t\t\t'aria-current':\n\t\t\t\t( params.postType === postType &&\n\t\t\t\t\tparams.postId === template.id ) ||\n\t\t\t\t// This is a special case for the home page.\n\t\t\t\t( editedPostId === template.id &&\n\t\t\t\t\teditedPostType === postType &&\n\t\t\t\t\t!! params.postId )\n\t\t\t\t\t? 'page'\n\t\t\t\t\t: undefined,\n\t\t} ) );\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tpath={ config[ postType ].path }\n\t\t\tparentTitle={ __( 'Design' ) }\n\t\t\ttitle={\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<div style={ { flexShrink: 0 } }>\n\t\t\t\t\t\t{ config[ postType ].labels.title }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ ! isMobileViewport && (\n\t\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\t\ttemplateType={ postType }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'edit-site-sidebar-navigation-screen-templates__add-button',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t{ items.map( ( item, index ) => (\n\t\t\t\t\t\t\t<Item item={ item } key={ index } />\n\t\t\t\t\t\t) ) }\n\n\t\t\t\t\t\t<SidebarNavigationItem\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-templates__see-all\"\n\t\t\t\t\t\t\t{ ...useLink( {\n\t\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\t\tpostId: undefined,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\t\tparams.postType === postType && ! params.postId\n\t\t\t\t\t\t\t\t\t? 'page'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchildren={ config[ postType ].labels.manage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
@@ -0,0 +1,127 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { createElement } from "@wordpress/element";
3
+
4
+ /**
5
+ * External dependencies
6
+ */
7
+ import classnames from 'classnames';
8
+ /**
9
+ * WordPress dependencies
10
+ */
11
+
12
+ import { useSelect, useDispatch } from '@wordpress/data';
13
+ import { Button, __unstableMotion as motion, __experimentalHStack as HStack, __experimentalVStack as VStack } from '@wordpress/components';
14
+ import { useReducedMotion, useViewportMatch } from '@wordpress/compose';
15
+ import { __ } from '@wordpress/i18n';
16
+ import { store as blockEditorStore } from '@wordpress/block-editor';
17
+ import { store as coreStore } from '@wordpress/core-data';
18
+ import { forwardRef } from '@wordpress/element';
19
+ /**
20
+ * Internal dependencies
21
+ */
22
+
23
+ import { store as editSiteStore } from '../../store';
24
+ import { useLocation } from '../routes';
25
+ import getIsListPage from '../../utils/get-is-list-page';
26
+ import SiteIcon from '../site-icon';
27
+ import useEditedEntityRecord from '../use-edited-entity-record';
28
+ const HUB_ANIMATION_DURATION = 0.3;
29
+ const SiteHub = forwardRef((_ref, ref) => {
30
+ let {
31
+ isMobileCanvasVisible,
32
+ setIsMobileCanvasVisible,
33
+ ...props
34
+ } = _ref;
35
+ const {
36
+ params
37
+ } = useLocation();
38
+ const isListPage = getIsListPage(params);
39
+ const isEditorPage = !isListPage;
40
+ const {
41
+ canvasMode,
42
+ dashboardLink,
43
+ entityConfig
44
+ } = useSelect(select => {
45
+ select(editSiteStore).getEditedPostType();
46
+ const {
47
+ __unstableGetCanvasMode,
48
+ getSettings,
49
+ getEditedPostType
50
+ } = select(editSiteStore);
51
+ return {
52
+ canvasMode: __unstableGetCanvasMode(),
53
+ dashboardLink: getSettings().__experimentalDashboardLink,
54
+ entityConfig: select(coreStore).getEntityConfig('postType', getEditedPostType())
55
+ };
56
+ }, []);
57
+ const disableMotion = useReducedMotion();
58
+ const isMobileViewport = useViewportMatch('medium', '<');
59
+ const {
60
+ __unstableSetCanvasMode
61
+ } = useDispatch(editSiteStore);
62
+ const {
63
+ clearSelectedBlock
64
+ } = useDispatch(blockEditorStore);
65
+ const showEditButton = isEditorPage && canvasMode === 'view' && !isMobileViewport || isMobileViewport && canvasMode === 'view' && isMobileCanvasVisible;
66
+ const isBackToDashboardButton = !isMobileViewport && canvasMode === 'view' || isMobileViewport && !isMobileCanvasVisible;
67
+ const showLabels = canvasMode !== 'edit';
68
+ const siteIconButtonProps = isBackToDashboardButton ? {
69
+ href: dashboardLink || 'index.php',
70
+ 'aria-label': __('Go back to the dashboard')
71
+ } : {
72
+ label: __('Open Navigation Sidebar'),
73
+ onClick: () => {
74
+ clearSelectedBlock();
75
+ setIsMobileCanvasVisible(false);
76
+
77
+ __unstableSetCanvasMode('view');
78
+ }
79
+ };
80
+ const {
81
+ getTitle
82
+ } = useEditedEntityRecord();
83
+ return createElement(motion.div, _extends({
84
+ ref: ref
85
+ }, props, {
86
+ className: classnames('edit-site-site-hub', props.className),
87
+ layout: true,
88
+ transition: {
89
+ type: 'tween',
90
+ duration: disableMotion ? 0 : HUB_ANIMATION_DURATION,
91
+ ease: 'easeOut'
92
+ }
93
+ }), createElement(HStack, {
94
+ justify: "flex-start",
95
+ className: "edit-site-site-hub__text-content"
96
+ }, createElement(motion.div, {
97
+ className: "edit-site-site-hub__view-mode-toggle-container",
98
+ layout: true,
99
+ transition: {
100
+ type: 'tween',
101
+ duration: disableMotion ? 0 : HUB_ANIMATION_DURATION,
102
+ ease: 'easeOut'
103
+ }
104
+ }, createElement(Button, _extends({}, siteIconButtonProps, {
105
+ className: "edit-site-layout__view-mode-toggle"
106
+ }), createElement(SiteIcon, {
107
+ className: "edit-site-layout__view-mode-toggle-icon"
108
+ }))), showLabels && createElement(VStack, {
109
+ spacing: 0
110
+ }, createElement("div", {
111
+ className: "edit-site-site-hub__title"
112
+ }, getTitle()), createElement("div", {
113
+ className: "edit-site-site-hub__post-type"
114
+ }, entityConfig === null || entityConfig === void 0 ? void 0 : entityConfig.label))), showEditButton && createElement(Button, {
115
+ className: "edit-site-site-hub__edit-button",
116
+ label: __('Open the editor'),
117
+ onClick: () => {
118
+ __unstableSetCanvasMode('edit');
119
+ },
120
+ variant: "primary"
121
+ }, __('Edit')), isMobileViewport && !isMobileCanvasVisible && createElement(Button, {
122
+ onClick: () => setIsMobileCanvasVisible(true),
123
+ variant: "primary"
124
+ }, __('View Editor')));
125
+ });
126
+ export default SiteHub;
127
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"names":["classnames","useSelect","useDispatch","Button","__unstableMotion","motion","__experimentalHStack","HStack","__experimentalVStack","VStack","useReducedMotion","useViewportMatch","__","store","blockEditorStore","coreStore","forwardRef","editSiteStore","useLocation","getIsListPage","SiteIcon","useEditedEntityRecord","HUB_ANIMATION_DURATION","SiteHub","ref","isMobileCanvasVisible","setIsMobileCanvasVisible","props","params","isListPage","isEditorPage","canvasMode","dashboardLink","entityConfig","select","getEditedPostType","__unstableGetCanvasMode","getSettings","__experimentalDashboardLink","getEntityConfig","disableMotion","isMobileViewport","__unstableSetCanvasMode","clearSelectedBlock","showEditButton","isBackToDashboardButton","showLabels","siteIconButtonProps","href","label","onClick","getTitle","className","type","duration","ease"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useReducedMotion, useViewportMatch } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { useLocation } from '../routes';\nimport getIsListPage from '../../utils/get-is-list-page';\nimport SiteIcon from '../site-icon';\nimport useEditedEntityRecord from '../use-edited-entity-record';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef(\n\t( { isMobileCanvasVisible, setIsMobileCanvasVisible, ...props }, ref ) => {\n\t\tconst { params } = useLocation();\n\t\tconst isListPage = getIsListPage( params );\n\t\tconst isEditorPage = ! isListPage;\n\t\tconst { canvasMode, dashboardLink, entityConfig } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tselect( editSiteStore ).getEditedPostType();\n\t\t\t\tconst {\n\t\t\t\t\t__unstableGetCanvasMode,\n\t\t\t\t\tgetSettings,\n\t\t\t\t\tgetEditedPostType,\n\t\t\t\t} = select( editSiteStore );\n\t\t\t\treturn {\n\t\t\t\t\tcanvasMode: __unstableGetCanvasMode(),\n\t\t\t\t\tdashboardLink: getSettings().__experimentalDashboardLink,\n\t\t\t\t\tentityConfig: select( coreStore ).getEntityConfig(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tgetEditedPostType()\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst disableMotion = useReducedMotion();\n\t\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\t\tconst { __unstableSetCanvasMode } = useDispatch( editSiteStore );\n\t\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\t\tconst showEditButton =\n\t\t\t( isEditorPage && canvasMode === 'view' && ! isMobileViewport ) ||\n\t\t\t( isMobileViewport &&\n\t\t\t\tcanvasMode === 'view' &&\n\t\t\t\tisMobileCanvasVisible );\n\t\tconst isBackToDashboardButton =\n\t\t\t( ! isMobileViewport && canvasMode === 'view' ) ||\n\t\t\t( isMobileViewport && ! isMobileCanvasVisible );\n\t\tconst showLabels = canvasMode !== 'edit';\n\t\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t\t? {\n\t\t\t\t\thref: dashboardLink || 'index.php',\n\t\t\t\t\t'aria-label': __( 'Go back to the dashboard' ),\n\t\t\t }\n\t\t\t: {\n\t\t\t\t\tlabel: __( 'Open Navigation Sidebar' ),\n\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetIsMobileCanvasVisible( false );\n\t\t\t\t\t\t__unstableSetCanvasMode( 'view' );\n\t\t\t\t\t},\n\t\t\t };\n\t\tconst { getTitle } = useEditedEntityRecord();\n\n\t\treturn (\n\t\t\t<motion.div\n\t\t\t\tref={ ref }\n\t\t\t\t{ ...props }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'edit-site-site-hub',\n\t\t\t\t\tprops.className\n\t\t\t\t) }\n\t\t\t\tlayout\n\t\t\t\ttransition={ {\n\t\t\t\t\ttype: 'tween',\n\t\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\t\tease: 'easeOut',\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"edit-site-site-hub__view-mode-toggle-container\"\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t{ showLabels && (\n\t\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t\t<div className=\"edit-site-site-hub__title\">\n\t\t\t\t\t\t\t\t{ getTitle() }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"edit-site-site-hub__post-type\">\n\t\t\t\t\t\t\t\t{ entityConfig?.label }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\n\t\t\t\t{ showEditButton && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-site-hub__edit-button\"\n\t\t\t\t\t\tlabel={ __( 'Open the editor' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t__unstableSetCanvasMode( 'edit' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t{ isMobileViewport && ! isMobileCanvasVisible && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ () => setIsMobileCanvasVisible( true ) }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'View Editor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</motion.div>\n\t\t);\n\t}\n);\n\nexport default SiteHub;\n"]}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useEffect, useRef } from '@wordpress/element';
5
+ import { useSelect, useDispatch } from '@wordpress/data';
6
+ /**
7
+ * Internal dependencies
8
+ */
9
+
10
+ import { store as editSiteStore } from '../../store';
11
+ import { useLocation, useHistory } from '../routes';
12
+ export default function useSyncCanvasModeWithURL() {
13
+ const history = useHistory();
14
+ const {
15
+ params
16
+ } = useLocation();
17
+ const canvasMode = useSelect(select => select(editSiteStore).__unstableGetCanvasMode(), []);
18
+ const {
19
+ __unstableSetCanvasMode
20
+ } = useDispatch(editSiteStore);
21
+ const currentCanvasMode = useRef(canvasMode);
22
+ const {
23
+ canvas: canvasInUrl = 'view'
24
+ } = params;
25
+ const currentCanvasInUrl = useRef(canvasInUrl);
26
+ useEffect(() => {
27
+ currentCanvasMode.current = canvasMode;
28
+
29
+ if (currentCanvasMode !== currentCanvasInUrl) {
30
+ history.push({ ...params,
31
+ canvas: canvasMode
32
+ });
33
+ }
34
+ }, [canvasMode]);
35
+ useEffect(() => {
36
+ currentCanvasInUrl.current = canvasInUrl;
37
+
38
+ if (canvasInUrl !== currentCanvasMode.current) {
39
+ __unstableSetCanvasMode(canvasInUrl);
40
+ }
41
+ }, [canvasInUrl]);
42
+ }
43
+ //# sourceMappingURL=use-sync-canvas-mode-with-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js"],"names":["useEffect","useRef","useSelect","useDispatch","store","editSiteStore","useLocation","useHistory","useSyncCanvasModeWithURL","history","params","canvasMode","select","__unstableGetCanvasMode","__unstableSetCanvasMode","currentCanvasMode","canvas","canvasInUrl","currentCanvasInUrl","current","push"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,MAApB,QAAkC,oBAAlC;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,SAASC,WAAT,EAAsBC,UAAtB,QAAwC,WAAxC;AAEA,eAAe,SAASC,wBAAT,GAAoC;AAClD,QAAMC,OAAO,GAAGF,UAAU,EAA1B;AACA,QAAM;AAAEG,IAAAA;AAAF,MAAaJ,WAAW,EAA9B;AACA,QAAMK,UAAU,GAAGT,SAAS,CACzBU,MAAF,IAAcA,MAAM,CAAEP,aAAF,CAAN,CAAwBQ,uBAAxB,EADa,EAE3B,EAF2B,CAA5B;AAIA,QAAM;AAAEC,IAAAA;AAAF,MAA8BX,WAAW,CAAEE,aAAF,CAA/C;AACA,QAAMU,iBAAiB,GAAGd,MAAM,CAAEU,UAAF,CAAhC;AACA,QAAM;AAAEK,IAAAA,MAAM,EAAEC,WAAW,GAAG;AAAxB,MAAmCP,MAAzC;AACA,QAAMQ,kBAAkB,GAAGjB,MAAM,CAAEgB,WAAF,CAAjC;AACAjB,EAAAA,SAAS,CAAE,MAAM;AAChBe,IAAAA,iBAAiB,CAACI,OAAlB,GAA4BR,UAA5B;;AACA,QAAKI,iBAAiB,KAAKG,kBAA3B,EAAgD;AAC/CT,MAAAA,OAAO,CAACW,IAAR,CAAc,EACb,GAAGV,MADU;AAEbM,QAAAA,MAAM,EAAEL;AAFK,OAAd;AAIA;AACD,GARQ,EAQN,CAAEA,UAAF,CARM,CAAT;AAUAX,EAAAA,SAAS,CAAE,MAAM;AAChBkB,IAAAA,kBAAkB,CAACC,OAAnB,GAA6BF,WAA7B;;AACA,QAAKA,WAAW,KAAKF,iBAAiB,CAACI,OAAvC,EAAiD;AAChDL,MAAAA,uBAAuB,CAAEG,WAAF,CAAvB;AACA;AACD,GALQ,EAKN,CAAEA,WAAF,CALM,CAAT;AAMA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { useLocation, useHistory } from '../routes';\n\nexport default function useSyncCanvasModeWithURL() {\n\tconst history = useHistory();\n\tconst { params } = useLocation();\n\tconst canvasMode = useSelect(\n\t\t( select ) => select( editSiteStore ).__unstableGetCanvasMode(),\n\t\t[]\n\t);\n\tconst { __unstableSetCanvasMode } = useDispatch( editSiteStore );\n\tconst currentCanvasMode = useRef( canvasMode );\n\tconst { canvas: canvasInUrl = 'view' } = params;\n\tconst currentCanvasInUrl = useRef( canvasInUrl );\n\tuseEffect( () => {\n\t\tcurrentCanvasMode.current = canvasMode;\n\t\tif ( currentCanvasMode !== currentCanvasInUrl ) {\n\t\t\thistory.push( {\n\t\t\t\t...params,\n\t\t\t\tcanvas: canvasMode,\n\t\t\t} );\n\t\t}\n\t}, [ canvasMode ] );\n\n\tuseEffect( () => {\n\t\tcurrentCanvasInUrl.current = canvasInUrl;\n\t\tif ( canvasInUrl !== currentCanvasMode.current ) {\n\t\t\t__unstableSetCanvasMode( canvasInUrl );\n\t\t}\n\t}, [ canvasInUrl ] );\n}\n"]}
@@ -14,6 +14,7 @@ export default function EditTemplateTitle(_ref) {
14
14
  const [forceEmpty, setForceEmpty] = useState(false);
15
15
  const [title, setTitle] = useEntityProp('postType', template.type, 'title', template.id);
16
16
  return createElement(TextControl, {
17
+ __nextHasNoMarginBottom: true,
17
18
  label: __('Title'),
18
19
  value: forceEmpty ? '' : title,
19
20
  help: template.type !== 'wp_template_part' ? __('Give the template a title that indicates its purpose, e.g. "Full Width".') : null,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/edit-template-title.js"],"names":["__","TextControl","useEntityProp","useState","EditTemplateTitle","template","forceEmpty","setForceEmpty","title","setTitle","type","id","newTitle"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,uBAA5B;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,QAAT,QAAyB,oBAAzB;AAEA,eAAe,SAASC,iBAAT,OAA2C;AAAA,MAAf;AAAEC,IAAAA;AAAF,GAAe;AACzD,QAAM,CAAEC,UAAF,EAAcC,aAAd,IAAgCJ,QAAQ,CAAE,KAAF,CAA9C;AACA,QAAM,CAAEK,KAAF,EAASC,QAAT,IAAsBP,aAAa,CACxC,UADwC,EAExCG,QAAQ,CAACK,IAF+B,EAGxC,OAHwC,EAIxCL,QAAQ,CAACM,EAJ+B,CAAzC;AAOA,SACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGX,EAAE,CAAE,OAAF,CADX;AAEC,IAAA,KAAK,EAAGM,UAAU,GAAG,EAAH,GAAQE,KAF3B;AAGC,IAAA,IAAI,EACHH,QAAQ,CAACK,IAAT,KAAkB,kBAAlB,GACGV,EAAE,CACF,0EADE,CADL,GAIG,IARL;AAUC,IAAA,QAAQ,EAAKY,QAAF,IAAgB;AAC1B,UAAK,CAAEA,QAAF,IAAc,CAAEN,UAArB,EAAkC;AACjCC,QAAAA,aAAa,CAAE,IAAF,CAAb;AACA;AACA;;AACDA,MAAAA,aAAa,CAAE,KAAF,CAAb;AACAE,MAAAA,QAAQ,CAAEG,QAAF,CAAR;AACA,KAjBF;AAkBC,IAAA,MAAM,EAAG,MAAML,aAAa,CAAE,KAAF;AAlB7B,IADD;AAsBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { TextControl } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\n\nexport default function EditTemplateTitle( { template } ) {\n\tconst [ forceEmpty, setForceEmpty ] = useState( false );\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\ttemplate.type,\n\t\t'title',\n\t\ttemplate.id\n\t);\n\n\treturn (\n\t\t<TextControl\n\t\t\tlabel={ __( 'Title' ) }\n\t\t\tvalue={ forceEmpty ? '' : title }\n\t\t\thelp={\n\t\t\t\ttemplate.type !== 'wp_template_part'\n\t\t\t\t\t? __(\n\t\t\t\t\t\t\t'Give the template a title that indicates its purpose, e.g. \"Full Width\".'\n\t\t\t\t\t )\n\t\t\t\t\t: null\n\t\t\t}\n\t\t\tonChange={ ( newTitle ) => {\n\t\t\t\tif ( ! newTitle && ! forceEmpty ) {\n\t\t\t\t\tsetForceEmpty( true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tsetForceEmpty( false );\n\t\t\t\tsetTitle( newTitle );\n\t\t\t} }\n\t\t\tonBlur={ () => setForceEmpty( false ) }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/edit-template-title.js"],"names":["__","TextControl","useEntityProp","useState","EditTemplateTitle","template","forceEmpty","setForceEmpty","title","setTitle","type","id","newTitle"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,uBAA5B;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,QAAT,QAAyB,oBAAzB;AAEA,eAAe,SAASC,iBAAT,OAA2C;AAAA,MAAf;AAAEC,IAAAA;AAAF,GAAe;AACzD,QAAM,CAAEC,UAAF,EAAcC,aAAd,IAAgCJ,QAAQ,CAAE,KAAF,CAA9C;AACA,QAAM,CAAEK,KAAF,EAASC,QAAT,IAAsBP,aAAa,CACxC,UADwC,EAExCG,QAAQ,CAACK,IAF+B,EAGxC,OAHwC,EAIxCL,QAAQ,CAACM,EAJ+B,CAAzC;AAOA,SACC,cAAC,WAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGX,EAAE,CAAE,OAAF,CAFX;AAGC,IAAA,KAAK,EAAGM,UAAU,GAAG,EAAH,GAAQE,KAH3B;AAIC,IAAA,IAAI,EACHH,QAAQ,CAACK,IAAT,KAAkB,kBAAlB,GACGV,EAAE,CACF,0EADE,CADL,GAIG,IATL;AAWC,IAAA,QAAQ,EAAKY,QAAF,IAAgB;AAC1B,UAAK,CAAEA,QAAF,IAAc,CAAEN,UAArB,EAAkC;AACjCC,QAAAA,aAAa,CAAE,IAAF,CAAb;AACA;AACA;;AACDA,MAAAA,aAAa,CAAE,KAAF,CAAb;AACAE,MAAAA,QAAQ,CAAEG,QAAF,CAAR;AACA,KAlBF;AAmBC,IAAA,MAAM,EAAG,MAAML,aAAa,CAAE,KAAF;AAnB7B,IADD;AAuBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { TextControl } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\n\nexport default function EditTemplateTitle( { template } ) {\n\tconst [ forceEmpty, setForceEmpty ] = useState( false );\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\ttemplate.type,\n\t\t'title',\n\t\ttemplate.id\n\t);\n\n\treturn (\n\t\t<TextControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Title' ) }\n\t\t\tvalue={ forceEmpty ? '' : title }\n\t\t\thelp={\n\t\t\t\ttemplate.type !== 'wp_template_part'\n\t\t\t\t\t? __(\n\t\t\t\t\t\t\t'Give the template a title that indicates its purpose, e.g. \"Full Width\".'\n\t\t\t\t\t )\n\t\t\t\t\t: null\n\t\t\t}\n\t\t\tonChange={ ( newTitle ) => {\n\t\t\t\tif ( ! newTitle && ! forceEmpty ) {\n\t\t\t\t\tsetForceEmpty( true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tsetForceEmpty( false );\n\t\t\t\tsetTitle( newTitle );\n\t\t\t} }\n\t\t\tonBlur={ () => setForceEmpty( false ) }\n\t\t/>\n\t);\n}\n"]}
@@ -25,6 +25,7 @@ export default function TemplatePartAreaSelector(_ref) {
25
25
  };
26
26
  });
27
27
  return createElement(SelectControl, {
28
+ __nextHasNoMarginBottom: true,
28
29
  label: __('Area'),
29
30
  labelPosition: "top",
30
31
  options: areaOptions,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/template-part-area-selector.js"],"names":["__","SelectControl","useEntityProp","useSelect","store","editorStore","TemplatePartAreaSelector","id","area","setArea","definedAreas","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,aAAT,QAA8B,uBAA9B;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;AAEA,eAAe,SAASC,wBAAT,OAA4C;AAAA,MAAT;AAAEC,IAAAA;AAAF,GAAS;AAC1D,QAAM,CAAEC,IAAF,EAAQC,OAAR,IAAoBP,aAAa,CACtC,UADsC,EAEtC,kBAFsC,EAGtC,MAHsC,EAItCK,EAJsC,CAAvC;AAOA,QAAMG,YAAY,GAAGP,SAAS,CAC3BQ,MAAF,IACCA,MAAM,CAAEN,WAAF,CAAN,CAAsBO,yCAAtB,EAF4B,EAG7B,EAH6B,CAA9B;AAMA,QAAMC,WAAW,GAAGH,YAAY,CAACI,GAAb,CAAkB;AAAA,QAAE;AAAEC,MAAAA,KAAF;AAASP,MAAAA,IAAI,EAAEQ;AAAf,KAAF;AAAA,WAAgC;AACrED,MAAAA,KADqE;AAErEE,MAAAA,KAAK,EAAED;AAF8D,KAAhC;AAAA,GAAlB,CAApB;AAKA,SACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGhB,EAAE,CAAE,MAAF,CADX;AAEC,IAAA,aAAa,EAAC,KAFf;AAGC,IAAA,OAAO,EAAGa,WAHX;AAIC,IAAA,KAAK,EAAGL,IAJT;AAKC,IAAA,QAAQ,EAAGC;AALZ,IADD;AASA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { SelectControl } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\nexport default function TemplatePartAreaSelector( { id } ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\tid\n\t);\n\n\tconst definedAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Area' ) }\n\t\t\tlabelPosition=\"top\"\n\t\t\toptions={ areaOptions }\n\t\t\tvalue={ area }\n\t\t\tonChange={ setArea }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/template-part-area-selector.js"],"names":["__","SelectControl","useEntityProp","useSelect","store","editorStore","TemplatePartAreaSelector","id","area","setArea","definedAreas","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,aAAT,QAA8B,uBAA9B;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;AAEA,eAAe,SAASC,wBAAT,OAA4C;AAAA,MAAT;AAAEC,IAAAA;AAAF,GAAS;AAC1D,QAAM,CAAEC,IAAF,EAAQC,OAAR,IAAoBP,aAAa,CACtC,UADsC,EAEtC,kBAFsC,EAGtC,MAHsC,EAItCK,EAJsC,CAAvC;AAOA,QAAMG,YAAY,GAAGP,SAAS,CAC3BQ,MAAF,IACCA,MAAM,CAAEN,WAAF,CAAN,CAAsBO,yCAAtB,EAF4B,EAG7B,EAH6B,CAA9B;AAMA,QAAMC,WAAW,GAAGH,YAAY,CAACI,GAAb,CAAkB;AAAA,QAAE;AAAEC,MAAAA,KAAF;AAASP,MAAAA,IAAI,EAAEQ;AAAf,KAAF;AAAA,WAAgC;AACrED,MAAAA,KADqE;AAErEE,MAAAA,KAAK,EAAED;AAF8D,KAAhC;AAAA,GAAlB,CAApB;AAKA,SACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGhB,EAAE,CAAE,MAAF,CAFX;AAGC,IAAA,aAAa,EAAC,KAHf;AAIC,IAAA,OAAO,EAAGa,WAJX;AAKC,IAAA,KAAK,EAAGL,IALT;AAMC,IAAA,QAAQ,EAAGC;AANZ,IADD;AAUA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { SelectControl } from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\nexport default function TemplatePartAreaSelector( { id } ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\tid\n\t);\n\n\tconst definedAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<SelectControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Area' ) }\n\t\t\tlabelPosition=\"top\"\n\t\t\toptions={ areaOptions }\n\t\t\tvalue={ area }\n\t\t\tonChange={ setArea }\n\t\t/>\n\t);\n}\n"]}