@wordpress/edit-site 5.12.0 → 5.12.1

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 (883) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/build/components/add-new-pattern/index.js +99 -0
  3. package/build/components/add-new-pattern/index.js.map +1 -0
  4. package/build/components/add-new-template/add-custom-template-modal-content.js +9 -23
  5. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  6. package/build/components/add-new-template/index.js +2 -10
  7. package/build/components/add-new-template/index.js.map +1 -1
  8. package/build/components/add-new-template/new-template.js +6 -8
  9. package/build/components/add-new-template/new-template.js.map +1 -1
  10. package/build/components/app/index.js +2 -2
  11. package/build/components/app/index.js.map +1 -1
  12. package/build/components/block-editor/back-button.js +5 -3
  13. package/build/components/block-editor/back-button.js.map +1 -1
  14. package/build/components/block-editor/constants.js +9 -0
  15. package/build/components/block-editor/constants.js.map +1 -0
  16. package/build/components/block-editor/editor-canvas.js +8 -8
  17. package/build/components/block-editor/editor-canvas.js.map +1 -1
  18. package/build/components/block-editor/get-block-editor-provider.js +42 -0
  19. package/build/components/block-editor/get-block-editor-provider.js.map +1 -0
  20. package/build/components/block-editor/index.js +6 -132
  21. package/build/components/block-editor/index.js.map +1 -1
  22. package/build/components/block-editor/providers/default-block-editor-provider.js +58 -0
  23. package/build/components/block-editor/providers/default-block-editor-provider.js.map +1 -0
  24. package/build/components/block-editor/providers/navigation-block-editor-provider.js +117 -0
  25. package/build/components/block-editor/providers/navigation-block-editor-provider.js.map +1 -0
  26. package/build/components/block-editor/site-editor-canvas.js +137 -0
  27. package/build/components/block-editor/site-editor-canvas.js.map +1 -0
  28. package/build/components/block-editor/use-site-editor-settings.js +82 -0
  29. package/build/components/block-editor/use-site-editor-settings.js.map +1 -0
  30. package/build/components/canvas-spinner/index.js +18 -1
  31. package/build/components/canvas-spinner/index.js.map +1 -1
  32. package/build/components/create-pattern-modal/index.js +125 -0
  33. package/build/components/create-pattern-modal/index.js.map +1 -0
  34. package/build/components/create-template-part-modal/index.js +49 -5
  35. package/build/components/create-template-part-modal/index.js.map +1 -1
  36. package/build/components/editor/index.js +23 -13
  37. package/build/components/editor/index.js.map +1 -1
  38. package/build/components/editor-canvas-container/index.js +22 -4
  39. package/build/components/editor-canvas-container/index.js.map +1 -1
  40. package/build/components/global-styles/color-indicator-wrapper.js +4 -5
  41. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  42. package/build/components/global-styles/color-palette-panel.js +2 -2
  43. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  44. package/build/components/global-styles/dimensions-panel.js +2 -2
  45. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  46. package/build/components/global-styles/global-styles-provider.js +12 -16
  47. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  48. package/build/components/global-styles/gradients-palette-panel.js +2 -2
  49. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  50. package/build/components/global-styles/hooks.js +3 -3
  51. package/build/components/global-styles/hooks.js.map +1 -1
  52. package/build/components/global-styles/icon-with-current-color.js +4 -5
  53. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  54. package/build/components/global-styles/navigation-button.js +10 -11
  55. package/build/components/global-styles/navigation-button.js.map +1 -1
  56. package/build/components/global-styles/palette.js +3 -3
  57. package/build/components/global-styles/palette.js.map +1 -1
  58. package/build/components/global-styles/preview.js +2 -2
  59. package/build/components/global-styles/preview.js.map +1 -1
  60. package/build/components/global-styles/root-menu.js +2 -2
  61. package/build/components/global-styles/root-menu.js.map +1 -1
  62. package/build/components/global-styles/screen-block-list.js +2 -2
  63. package/build/components/global-styles/screen-block-list.js.map +1 -1
  64. package/build/components/global-styles/screen-block.js +2 -2
  65. package/build/components/global-styles/screen-block.js.map +1 -1
  66. package/build/components/global-styles/screen-colors.js +2 -2
  67. package/build/components/global-styles/screen-colors.js.map +1 -1
  68. package/build/components/global-styles/screen-css.js +2 -2
  69. package/build/components/global-styles/screen-css.js.map +1 -1
  70. package/build/components/global-styles/screen-layout.js +2 -2
  71. package/build/components/global-styles/screen-layout.js.map +1 -1
  72. package/build/components/global-styles/screen-revisions/index.js +4 -4
  73. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  74. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +2 -2
  75. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  76. package/build/components/global-styles/screen-root.js +2 -2
  77. package/build/components/global-styles/screen-root.js.map +1 -1
  78. package/build/components/global-styles/screen-typography.js +2 -2
  79. package/build/components/global-styles/screen-typography.js.map +1 -1
  80. package/build/components/global-styles/style-variations-container.js +11 -3
  81. package/build/components/global-styles/style-variations-container.js.map +1 -1
  82. package/build/components/global-styles/typography-panel.js +2 -2
  83. package/build/components/global-styles/typography-panel.js.map +1 -1
  84. package/build/components/global-styles/typography-preview.js +2 -2
  85. package/build/components/global-styles/typography-preview.js.map +1 -1
  86. package/build/components/global-styles/ui.js +90 -36
  87. package/build/components/global-styles/ui.js.map +1 -1
  88. package/build/components/global-styles-renderer/index.js +2 -2
  89. package/build/components/global-styles-renderer/index.js.map +1 -1
  90. package/build/components/header-edit-mode/document-actions/index.js +55 -22
  91. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  92. package/build/components/header-edit-mode/index.js +6 -8
  93. package/build/components/header-edit-mode/index.js.map +1 -1
  94. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +4 -7
  95. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  96. package/build/components/header-edit-mode/undo-redo/redo.js +2 -6
  97. package/build/components/header-edit-mode/undo-redo/redo.js.map +1 -1
  98. package/build/components/header-edit-mode/undo-redo/undo.js +2 -6
  99. package/build/components/header-edit-mode/undo-redo/undo.js.map +1 -1
  100. package/build/components/keyboard-shortcut-help-modal/index.js +2 -1
  101. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  102. package/build/components/keyboard-shortcuts/edit-mode.js +7 -2
  103. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  104. package/build/components/keyboard-shortcuts/index.js +7 -2
  105. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  106. package/build/components/keyboard-shortcuts/register.js +1 -1
  107. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  108. package/build/components/layout/hooks.js +21 -0
  109. package/build/components/layout/hooks.js.map +1 -1
  110. package/build/components/layout/index.js +40 -22
  111. package/build/components/layout/index.js.map +1 -1
  112. package/build/components/list/index.js +2 -2
  113. package/build/components/list/index.js.map +1 -1
  114. package/build/components/page/header.js +41 -0
  115. package/build/components/page/header.js.map +1 -0
  116. package/build/components/page/index.js +49 -0
  117. package/build/components/page/index.js.map +1 -0
  118. package/build/components/page-content-focus-manager/back-to-page-notification.js +67 -0
  119. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +1 -0
  120. package/build/components/page-content-focus-manager/constants.js +9 -0
  121. package/build/components/page-content-focus-manager/constants.js.map +1 -0
  122. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +60 -0
  123. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -0
  124. package/build/components/page-content-focus-manager/edit-template-notification.js +121 -0
  125. package/build/components/page-content-focus-manager/edit-template-notification.js.map +1 -0
  126. package/build/components/page-content-focus-manager/index.js +37 -0
  127. package/build/components/page-content-focus-manager/index.js.map +1 -0
  128. package/build/components/page-library/grid-item.js +165 -0
  129. package/build/components/page-library/grid-item.js.map +1 -0
  130. package/build/components/page-library/grid.js +49 -0
  131. package/build/components/page-library/grid.js.map +1 -0
  132. package/build/components/page-library/index.js +61 -0
  133. package/build/components/page-library/index.js.map +1 -0
  134. package/build/components/page-library/no-patterns.js +20 -0
  135. package/build/components/page-library/no-patterns.js.map +1 -0
  136. package/build/components/page-library/patterns-list.js +108 -0
  137. package/build/components/page-library/patterns-list.js.map +1 -0
  138. package/build/components/page-library/search-items.js +172 -0
  139. package/build/components/page-library/search-items.js.map +1 -0
  140. package/build/components/page-library/use-library-settings.js +53 -0
  141. package/build/components/page-library/use-library-settings.js.map +1 -0
  142. package/build/components/page-library/use-patterns.js +194 -0
  143. package/build/components/page-library/use-patterns.js.map +1 -0
  144. package/build/components/page-library/utils.js +30 -0
  145. package/build/components/page-library/utils.js.map +1 -0
  146. package/build/components/page-main/index.js +46 -0
  147. package/build/components/page-main/index.js.map +1 -0
  148. package/build/components/page-templates/index.js +101 -0
  149. package/build/components/page-templates/index.js.map +1 -0
  150. package/build/components/preferences-modal/enable-feature.js +4 -7
  151. package/build/components/preferences-modal/enable-feature.js.map +1 -1
  152. package/build/components/resizable-frame/index.js +6 -4
  153. package/build/components/resizable-frame/index.js.map +1 -1
  154. package/build/components/revisions/index.js +2 -2
  155. package/build/components/revisions/index.js.map +1 -1
  156. package/build/components/routes/link.js +7 -10
  157. package/build/components/routes/link.js.map +1 -1
  158. package/build/components/routes/use-title.js +2 -2
  159. package/build/components/routes/use-title.js.map +1 -1
  160. package/build/components/save-button/index.js +15 -11
  161. package/build/components/save-button/index.js.map +1 -1
  162. package/build/components/save-hub/index.js +2 -2
  163. package/build/components/save-hub/index.js.map +1 -1
  164. package/build/components/save-panel/index.js +5 -7
  165. package/build/components/save-panel/index.js.map +1 -1
  166. package/build/components/secondary-sidebar/inserter-sidebar.js +4 -8
  167. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  168. package/build/components/secondary-sidebar/list-view-sidebar.js +47 -10
  169. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  170. package/build/components/sidebar/index.js +12 -8
  171. package/build/components/sidebar/index.js.map +1 -1
  172. package/build/components/sidebar-button/index.js +2 -4
  173. package/build/components/sidebar-button/index.js.map +1 -1
  174. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +22 -8
  175. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  176. package/build/components/sidebar-edit-mode/index.js +5 -5
  177. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  178. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +84 -0
  179. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -0
  180. package/build/components/sidebar-edit-mode/page-panels/index.js +51 -38
  181. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  182. package/build/components/sidebar-edit-mode/page-panels/page-content.js +35 -0
  183. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -0
  184. package/build/components/sidebar-edit-mode/page-panels/page-status.js +192 -0
  185. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -0
  186. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +45 -0
  187. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -0
  188. package/build/components/sidebar-edit-mode/page-panels/publish-date.js +98 -0
  189. package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +1 -0
  190. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +4 -7
  191. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  192. package/build/components/sidebar-edit-mode/settings-header/index.js +19 -6
  193. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  194. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js +2 -2
  195. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +1 -1
  196. package/build/components/sidebar-edit-mode/template-panel/index.js +10 -6
  197. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  198. package/build/components/sidebar-navigation-item/index.js +11 -7
  199. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  200. package/build/components/sidebar-navigation-screen/index.js +18 -7
  201. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  202. package/build/components/sidebar-navigation-screen-details-footer/index.js +36 -0
  203. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -0
  204. package/build/components/sidebar-navigation-screen-details-panel/index.js +58 -0
  205. package/build/components/sidebar-navigation-screen-details-panel/index.js.map +1 -0
  206. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +22 -0
  207. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -0
  208. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +35 -0
  209. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -0
  210. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +22 -0
  211. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -0
  212. package/build/components/sidebar-navigation-screen-global-styles/index.js +13 -13
  213. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  214. package/build/components/sidebar-navigation-screen-library/category-item.js +48 -0
  215. package/build/components/sidebar-navigation-screen-library/category-item.js.map +1 -0
  216. package/build/components/sidebar-navigation-screen-library/index.js +112 -0
  217. package/build/components/sidebar-navigation-screen-library/index.js.map +1 -0
  218. package/build/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +36 -0
  219. package/build/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +1 -0
  220. package/build/components/sidebar-navigation-screen-library/use-pattern-categories.js +76 -0
  221. package/build/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +1 -0
  222. package/build/components/sidebar-navigation-screen-library/use-template-part-areas.js +41 -0
  223. package/build/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +1 -0
  224. package/build/components/sidebar-navigation-screen-library/use-theme-patterns.js +40 -0
  225. package/build/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +1 -0
  226. package/build/components/sidebar-navigation-screen-main/index.js +12 -13
  227. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  228. package/build/components/sidebar-navigation-screen-navigation-item/index.js +2 -2
  229. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -1
  230. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +42 -0
  231. package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +1 -0
  232. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +41 -0
  233. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -0
  234. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +47 -92
  235. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  236. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +84 -0
  237. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -0
  238. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +71 -0
  239. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -0
  240. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +54 -0
  241. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -0
  242. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +49 -0
  243. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -0
  244. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +163 -0
  245. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -0
  246. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  247. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  248. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +46 -7
  249. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  250. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +57 -10
  251. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  252. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +21 -50
  253. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  254. package/build/components/sidebar-navigation-screen-page/index.js +14 -34
  255. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  256. package/build/components/sidebar-navigation-screen-page/page-details.js +29 -27
  257. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  258. package/build/components/sidebar-navigation-screen-page/status-label.js +8 -7
  259. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  260. package/build/components/sidebar-navigation-screen-pages/index.js +9 -8
  261. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  262. package/build/components/sidebar-navigation-screen-pattern/index.js +66 -0
  263. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -0
  264. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +41 -0
  265. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -0
  266. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +33 -0
  267. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -0
  268. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +40 -0
  269. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -0
  270. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +47 -0
  271. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -0
  272. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +82 -0
  273. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -0
  274. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +80 -0
  275. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -0
  276. package/build/components/sidebar-navigation-screen-template/home-template-details.js +212 -0
  277. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -0
  278. package/build/components/sidebar-navigation-screen-template/index.js +21 -7
  279. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  280. package/build/components/sidebar-navigation-screen-templates/index.js +11 -11
  281. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  282. package/build/components/site-hub/index.js +10 -12
  283. package/build/components/site-hub/index.js.map +1 -1
  284. package/build/components/style-book/index.js +10 -11
  285. package/build/components/style-book/index.js.map +1 -1
  286. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +14 -4
  287. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  288. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +4 -4
  289. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  290. package/build/components/sync-state-with-url/use-sync-path-with-url.js +12 -2
  291. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  292. package/build/components/table/index.js +29 -0
  293. package/build/components/table/index.js.map +1 -0
  294. package/build/components/template-part-converter/convert-to-template-part.js +3 -21
  295. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  296. package/build/components/welcome-guide/editor.js +1 -1
  297. package/build/components/welcome-guide/editor.js.map +1 -1
  298. package/build/components/welcome-guide/styles.js +4 -3
  299. package/build/components/welcome-guide/styles.js.map +1 -1
  300. package/build/hooks/commands/use-common-commands.js +190 -0
  301. package/build/hooks/commands/use-common-commands.js.map +1 -0
  302. package/build/hooks/commands/use-edit-mode-commands.js +67 -23
  303. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  304. package/build/hooks/index.js +2 -0
  305. package/build/hooks/index.js.map +1 -1
  306. package/build/hooks/navigation-menu-edit.js +95 -0
  307. package/build/hooks/navigation-menu-edit.js.map +1 -0
  308. package/build/hooks/push-changes-to-global-styles/index.js +5 -3
  309. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  310. package/build/hooks/template-part-edit.js +6 -9
  311. package/build/hooks/template-part-edit.js.map +1 -1
  312. package/build/{private-apis.js → lock-unlock.js} +1 -1
  313. package/build/lock-unlock.js.map +1 -0
  314. package/build/store/actions.js +45 -9
  315. package/build/store/actions.js.map +1 -1
  316. package/build/store/index.js +3 -3
  317. package/build/store/index.js.map +1 -1
  318. package/build/store/reducer.js +7 -6
  319. package/build/store/reducer.js.map +1 -1
  320. package/build/store/selectors.js +40 -16
  321. package/build/store/selectors.js.map +1 -1
  322. package/build/utils/get-is-list-page.js +12 -5
  323. package/build/utils/get-is-list-page.js.map +1 -1
  324. package/build/utils/is-previewing-theme.js +2 -2
  325. package/build/utils/is-previewing-theme.js.map +1 -1
  326. package/build/utils/use-activate-theme.js +3 -3
  327. package/build/utils/use-activate-theme.js.map +1 -1
  328. package/build/utils/use-debounced-input.js +26 -0
  329. package/build/utils/use-debounced-input.js.map +1 -0
  330. package/build-module/components/add-new-pattern/index.js +82 -0
  331. package/build-module/components/add-new-pattern/index.js.map +1 -0
  332. package/build-module/components/add-new-template/add-custom-template-modal-content.js +7 -20
  333. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  334. package/build-module/components/add-new-template/index.js +2 -8
  335. package/build-module/components/add-new-template/index.js.map +1 -1
  336. package/build-module/components/add-new-template/new-template.js +4 -5
  337. package/build-module/components/add-new-template/new-template.js.map +1 -1
  338. package/build-module/components/app/index.js +1 -1
  339. package/build-module/components/app/index.js.map +1 -1
  340. package/build-module/components/block-editor/back-button.js +4 -2
  341. package/build-module/components/block-editor/back-button.js.map +1 -1
  342. package/build-module/components/block-editor/constants.js +2 -0
  343. package/build-module/components/block-editor/constants.js.map +1 -0
  344. package/build-module/components/block-editor/editor-canvas.js +6 -5
  345. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  346. package/build-module/components/block-editor/get-block-editor-provider.js +31 -0
  347. package/build-module/components/block-editor/get-block-editor-provider.js.map +1 -0
  348. package/build-module/components/block-editor/index.js +9 -127
  349. package/build-module/components/block-editor/index.js.map +1 -1
  350. package/build-module/components/block-editor/providers/default-block-editor-provider.js +42 -0
  351. package/build-module/components/block-editor/providers/default-block-editor-provider.js.map +1 -0
  352. package/build-module/components/block-editor/providers/navigation-block-editor-provider.js +102 -0
  353. package/build-module/components/block-editor/providers/navigation-block-editor-provider.js.map +1 -0
  354. package/build-module/components/block-editor/site-editor-canvas.js +115 -0
  355. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -0
  356. package/build-module/components/block-editor/use-site-editor-settings.js +67 -0
  357. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -0
  358. package/build-module/components/canvas-spinner/index.js +15 -1
  359. package/build-module/components/canvas-spinner/index.js.map +1 -1
  360. package/build-module/components/create-pattern-modal/index.js +113 -0
  361. package/build-module/components/create-pattern-modal/index.js.map +1 -0
  362. package/build-module/components/create-template-part-modal/index.js +46 -6
  363. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  364. package/build-module/components/editor/index.js +23 -13
  365. package/build-module/components/editor/index.js.map +1 -1
  366. package/build-module/components/editor-canvas-container/index.js +19 -2
  367. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  368. package/build-module/components/global-styles/color-indicator-wrapper.js +4 -4
  369. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  370. package/build-module/components/global-styles/color-palette-panel.js +1 -1
  371. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  372. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  373. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  374. package/build-module/components/global-styles/global-styles-provider.js +10 -15
  375. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  376. package/build-module/components/global-styles/gradients-palette-panel.js +1 -1
  377. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  378. package/build-module/components/global-styles/hooks.js +1 -1
  379. package/build-module/components/global-styles/hooks.js.map +1 -1
  380. package/build-module/components/global-styles/icon-with-current-color.js +4 -4
  381. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  382. package/build-module/components/global-styles/navigation-button.js +10 -8
  383. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  384. package/build-module/components/global-styles/palette.js +2 -2
  385. package/build-module/components/global-styles/palette.js.map +1 -1
  386. package/build-module/components/global-styles/preview.js +1 -1
  387. package/build-module/components/global-styles/preview.js.map +1 -1
  388. package/build-module/components/global-styles/root-menu.js +1 -1
  389. package/build-module/components/global-styles/root-menu.js.map +1 -1
  390. package/build-module/components/global-styles/screen-block-list.js +1 -1
  391. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  392. package/build-module/components/global-styles/screen-block.js +1 -1
  393. package/build-module/components/global-styles/screen-block.js.map +1 -1
  394. package/build-module/components/global-styles/screen-colors.js +1 -1
  395. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  396. package/build-module/components/global-styles/screen-css.js +1 -1
  397. package/build-module/components/global-styles/screen-css.js.map +1 -1
  398. package/build-module/components/global-styles/screen-layout.js +1 -1
  399. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  400. package/build-module/components/global-styles/screen-revisions/index.js +1 -1
  401. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  402. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -1
  403. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  404. package/build-module/components/global-styles/screen-root.js +1 -1
  405. package/build-module/components/global-styles/screen-root.js.map +1 -1
  406. package/build-module/components/global-styles/screen-typography.js +1 -1
  407. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  408. package/build-module/components/global-styles/style-variations-container.js +11 -3
  409. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  410. package/build-module/components/global-styles/typography-panel.js +1 -1
  411. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  412. package/build-module/components/global-styles/typography-preview.js +1 -1
  413. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  414. package/build-module/components/global-styles/ui.js +89 -35
  415. package/build-module/components/global-styles/ui.js.map +1 -1
  416. package/build-module/components/global-styles-renderer/index.js +1 -1
  417. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  418. package/build-module/components/header-edit-mode/document-actions/index.js +55 -22
  419. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  420. package/build-module/components/header-edit-mode/index.js +4 -6
  421. package/build-module/components/header-edit-mode/index.js.map +1 -1
  422. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +4 -4
  423. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -1
  424. package/build-module/components/header-edit-mode/undo-redo/redo.js +2 -3
  425. package/build-module/components/header-edit-mode/undo-redo/redo.js.map +1 -1
  426. package/build-module/components/header-edit-mode/undo-redo/undo.js +2 -3
  427. package/build-module/components/header-edit-mode/undo-redo/undo.js.map +1 -1
  428. package/build-module/components/keyboard-shortcut-help-modal/index.js +2 -1
  429. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  430. package/build-module/components/keyboard-shortcuts/edit-mode.js +7 -2
  431. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  432. package/build-module/components/keyboard-shortcuts/index.js +7 -2
  433. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  434. package/build-module/components/keyboard-shortcuts/register.js +1 -1
  435. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  436. package/build-module/components/layout/hooks.js +21 -0
  437. package/build-module/components/layout/hooks.js.map +1 -1
  438. package/build-module/components/layout/index.js +33 -16
  439. package/build-module/components/layout/index.js.map +1 -1
  440. package/build-module/components/list/index.js +1 -1
  441. package/build-module/components/list/index.js.map +1 -1
  442. package/build-module/components/page/header.js +33 -0
  443. package/build-module/components/page/header.js.map +1 -0
  444. package/build-module/components/page/index.js +37 -0
  445. package/build-module/components/page/index.js.map +1 -0
  446. package/build-module/components/page-content-focus-manager/back-to-page-notification.js +53 -0
  447. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +1 -0
  448. package/build-module/components/page-content-focus-manager/constants.js +2 -0
  449. package/build-module/components/page-content-focus-manager/constants.js.map +1 -0
  450. package/build-module/components/{page-content-lock/use-disable-non-content-blocks.js → page-content-focus-manager/disable-non-page-content-blocks.js} +18 -9
  451. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -0
  452. package/build-module/components/page-content-focus-manager/edit-template-notification.js +110 -0
  453. package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +1 -0
  454. package/build-module/components/page-content-focus-manager/index.js +23 -0
  455. package/build-module/components/page-content-focus-manager/index.js.map +1 -0
  456. package/build-module/components/page-library/grid-item.js +145 -0
  457. package/build-module/components/page-library/grid-item.js.map +1 -0
  458. package/build-module/components/page-library/grid.js +38 -0
  459. package/build-module/components/page-library/grid.js.map +1 -0
  460. package/build-module/components/page-library/index.js +43 -0
  461. package/build-module/components/page-library/index.js.map +1 -0
  462. package/build-module/components/page-library/no-patterns.js +12 -0
  463. package/build-module/components/page-library/no-patterns.js.map +1 -0
  464. package/build-module/components/page-library/patterns-list.js +87 -0
  465. package/build-module/components/page-library/patterns-list.js.map +1 -0
  466. package/build-module/components/page-library/search-items.js +156 -0
  467. package/build-module/components/page-library/search-items.js.map +1 -0
  468. package/build-module/components/page-library/use-library-settings.js +40 -0
  469. package/build-module/components/page-library/use-library-settings.js.map +1 -0
  470. package/build-module/components/page-library/use-patterns.js +176 -0
  471. package/build-module/components/page-library/use-patterns.js.map +1 -0
  472. package/build-module/components/page-library/utils.js +13 -0
  473. package/build-module/components/page-library/utils.js.map +1 -0
  474. package/build-module/components/page-main/index.js +32 -0
  475. package/build-module/components/page-main/index.js.map +1 -0
  476. package/build-module/components/page-templates/index.js +80 -0
  477. package/build-module/components/page-templates/index.js.map +1 -0
  478. package/build-module/components/preferences-modal/enable-feature.js +4 -4
  479. package/build-module/components/preferences-modal/enable-feature.js.map +1 -1
  480. package/build-module/components/resizable-frame/index.js +5 -3
  481. package/build-module/components/resizable-frame/index.js.map +1 -1
  482. package/build-module/components/revisions/index.js +1 -1
  483. package/build-module/components/revisions/index.js.map +1 -1
  484. package/build-module/components/routes/link.js +6 -6
  485. package/build-module/components/routes/link.js.map +1 -1
  486. package/build-module/components/routes/use-title.js +1 -1
  487. package/build-module/components/routes/use-title.js.map +1 -1
  488. package/build-module/components/save-button/index.js +15 -11
  489. package/build-module/components/save-button/index.js.map +1 -1
  490. package/build-module/components/save-hub/index.js +1 -1
  491. package/build-module/components/save-hub/index.js.map +1 -1
  492. package/build-module/components/save-panel/index.js +3 -4
  493. package/build-module/components/save-panel/index.js.map +1 -1
  494. package/build-module/components/secondary-sidebar/inserter-sidebar.js +4 -5
  495. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  496. package/build-module/components/secondary-sidebar/list-view-sidebar.js +44 -10
  497. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  498. package/build-module/components/sidebar/index.js +10 -7
  499. package/build-module/components/sidebar/index.js.map +1 -1
  500. package/build-module/components/sidebar-button/index.js +2 -3
  501. package/build-module/components/sidebar-button/index.js.map +1 -1
  502. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +19 -6
  503. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  504. package/build-module/components/sidebar-edit-mode/index.js +5 -5
  505. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  506. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +71 -0
  507. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -0
  508. package/build-module/components/sidebar-edit-mode/page-panels/index.js +51 -40
  509. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  510. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +23 -0
  511. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -0
  512. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +176 -0
  513. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -0
  514. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +33 -0
  515. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -0
  516. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +85 -0
  517. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +1 -0
  518. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +4 -4
  519. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  520. package/build-module/components/sidebar-edit-mode/settings-header/index.js +20 -7
  521. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  522. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js +1 -1
  523. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +1 -1
  524. package/build-module/components/sidebar-edit-mode/template-panel/index.js +9 -6
  525. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  526. package/build-module/components/sidebar-navigation-item/index.js +11 -7
  527. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  528. package/build-module/components/sidebar-navigation-screen/index.js +18 -7
  529. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  530. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +27 -0
  531. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -0
  532. package/build-module/components/sidebar-navigation-screen-details-panel/index.js +30 -0
  533. package/build-module/components/sidebar-navigation-screen-details-panel/index.js.map +1 -0
  534. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +14 -0
  535. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -0
  536. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +24 -0
  537. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -0
  538. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +14 -0
  539. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -0
  540. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +9 -8
  541. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  542. package/build-module/components/sidebar-navigation-screen-library/category-item.js +37 -0
  543. package/build-module/components/sidebar-navigation-screen-library/category-item.js.map +1 -0
  544. package/build-module/components/sidebar-navigation-screen-library/index.js +87 -0
  545. package/build-module/components/sidebar-navigation-screen-library/index.js.map +1 -0
  546. package/build-module/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +25 -0
  547. package/build-module/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +1 -0
  548. package/build-module/components/sidebar-navigation-screen-library/use-pattern-categories.js +61 -0
  549. package/build-module/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +1 -0
  550. package/build-module/components/sidebar-navigation-screen-library/use-template-part-areas.js +34 -0
  551. package/build-module/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +1 -0
  552. package/build-module/components/sidebar-navigation-screen-library/use-theme-patterns.js +27 -0
  553. package/build-module/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +1 -0
  554. package/build-module/components/sidebar-navigation-screen-main/index.js +13 -13
  555. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  556. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +1 -1
  557. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -1
  558. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +33 -0
  559. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +1 -0
  560. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +26 -0
  561. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -0
  562. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +45 -90
  563. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  564. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +70 -0
  565. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -0
  566. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +58 -0
  567. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -0
  568. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +46 -0
  569. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -0
  570. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +35 -0
  571. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -0
  572. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +151 -0
  573. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -0
  574. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  575. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  576. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +45 -7
  577. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  578. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +55 -7
  579. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  580. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +22 -50
  581. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  582. package/build-module/components/sidebar-navigation-screen-page/index.js +14 -34
  583. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  584. package/build-module/components/sidebar-navigation-screen-page/page-details.js +28 -28
  585. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  586. package/build-module/components/sidebar-navigation-screen-page/status-label.js +9 -8
  587. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  588. package/build-module/components/sidebar-navigation-screen-pages/index.js +8 -6
  589. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  590. package/build-module/components/sidebar-navigation-screen-pattern/index.js +46 -0
  591. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -0
  592. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +28 -0
  593. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -0
  594. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +22 -0
  595. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -0
  596. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +27 -0
  597. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -0
  598. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +34 -0
  599. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -0
  600. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +71 -0
  601. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -0
  602. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +64 -0
  603. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -0
  604. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +192 -0
  605. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -0
  606. package/build-module/components/sidebar-navigation-screen-template/index.js +18 -6
  607. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  608. package/build-module/components/sidebar-navigation-screen-templates/index.js +11 -10
  609. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  610. package/build-module/components/site-hub/index.js +8 -9
  611. package/build-module/components/site-hub/index.js.map +1 -1
  612. package/build-module/components/style-book/index.js +9 -9
  613. package/build-module/components/style-book/index.js.map +1 -1
  614. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +13 -3
  615. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  616. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  617. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  618. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +11 -1
  619. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  620. package/build-module/components/table/index.js +21 -0
  621. package/build-module/components/table/index.js.map +1 -0
  622. package/build-module/components/template-part-converter/convert-to-template-part.js +4 -20
  623. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  624. package/build-module/components/welcome-guide/editor.js +1 -1
  625. package/build-module/components/welcome-guide/editor.js.map +1 -1
  626. package/build-module/components/welcome-guide/styles.js +5 -3
  627. package/build-module/components/welcome-guide/styles.js.map +1 -1
  628. package/build-module/hooks/commands/use-common-commands.js +172 -0
  629. package/build-module/hooks/commands/use-common-commands.js.map +1 -0
  630. package/build-module/hooks/commands/use-edit-mode-commands.js +68 -24
  631. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  632. package/build-module/hooks/index.js +1 -0
  633. package/build-module/hooks/index.js.map +1 -1
  634. package/build-module/hooks/navigation-menu-edit.js +77 -0
  635. package/build-module/hooks/navigation-menu-edit.js.map +1 -0
  636. package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
  637. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  638. package/build-module/hooks/template-part-edit.js +5 -5
  639. package/build-module/hooks/template-part-edit.js.map +1 -1
  640. package/build-module/{private-apis.js → lock-unlock.js} +1 -1
  641. package/build-module/lock-unlock.js.map +1 -0
  642. package/build-module/store/actions.js +39 -7
  643. package/build-module/store/actions.js.map +1 -1
  644. package/build-module/store/index.js +1 -1
  645. package/build-module/store/index.js.map +1 -1
  646. package/build-module/store/reducer.js +6 -5
  647. package/build-module/store/reducer.js.map +1 -1
  648. package/build-module/store/selectors.js +35 -14
  649. package/build-module/store/selectors.js.map +1 -1
  650. package/build-module/utils/get-is-list-page.js +12 -5
  651. package/build-module/utils/get-is-list-page.js.map +1 -1
  652. package/build-module/utils/is-previewing-theme.js +2 -2
  653. package/build-module/utils/is-previewing-theme.js.map +1 -1
  654. package/build-module/utils/use-activate-theme.js +2 -2
  655. package/build-module/utils/use-activate-theme.js.map +1 -1
  656. package/build-module/utils/use-debounced-input.js +17 -0
  657. package/build-module/utils/use-debounced-input.js.map +1 -0
  658. package/build-style/style-rtl.css +323 -29
  659. package/build-style/style.css +323 -29
  660. package/package.json +44 -40
  661. package/src/components/add-new-pattern/index.js +94 -0
  662. package/src/components/add-new-template/add-custom-template-modal-content.js +1 -13
  663. package/src/components/add-new-template/index.js +0 -3
  664. package/src/components/add-new-template/new-template.js +1 -2
  665. package/src/components/app/index.js +1 -1
  666. package/src/components/block-editor/back-button.js +5 -2
  667. package/src/components/block-editor/constants.js +1 -0
  668. package/src/components/block-editor/editor-canvas.js +1 -1
  669. package/src/components/block-editor/get-block-editor-provider.js +29 -0
  670. package/src/components/block-editor/index.js +15 -199
  671. package/src/components/block-editor/providers/default-block-editor-provider.js +44 -0
  672. package/src/components/block-editor/providers/navigation-block-editor-provider.js +114 -0
  673. package/src/components/block-editor/site-editor-canvas.js +155 -0
  674. package/src/components/block-editor/style.scss +6 -0
  675. package/src/components/block-editor/use-site-editor-settings.js +91 -0
  676. package/src/components/canvas-spinner/index.js +11 -1
  677. package/src/components/create-pattern-modal/index.js +134 -0
  678. package/src/components/create-pattern-modal/style.scss +3 -0
  679. package/src/components/create-template-part-modal/index.js +63 -3
  680. package/src/components/editor/index.js +24 -15
  681. package/src/components/editor-canvas-container/index.js +21 -4
  682. package/src/components/global-styles/color-palette-panel.js +1 -1
  683. package/src/components/global-styles/dimensions-panel.js +1 -1
  684. package/src/components/global-styles/global-styles-provider.js +10 -14
  685. package/src/components/global-styles/gradients-palette-panel.js +1 -1
  686. package/src/components/global-styles/hooks.js +1 -1
  687. package/src/components/global-styles/palette.js +2 -2
  688. package/src/components/global-styles/preview.js +1 -1
  689. package/src/components/global-styles/root-menu.js +1 -1
  690. package/src/components/global-styles/screen-block-list.js +1 -1
  691. package/src/components/global-styles/screen-block.js +1 -1
  692. package/src/components/global-styles/screen-colors.js +1 -1
  693. package/src/components/global-styles/screen-css.js +1 -1
  694. package/src/components/global-styles/screen-layout.js +1 -1
  695. package/src/components/global-styles/screen-revisions/index.js +1 -1
  696. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +1 -1
  697. package/src/components/global-styles/screen-root.js +1 -1
  698. package/src/components/global-styles/screen-typography.js +1 -1
  699. package/src/components/global-styles/stories/index.js +1 -1
  700. package/src/components/global-styles/style-variations-container.js +13 -3
  701. package/src/components/global-styles/style.scss +11 -0
  702. package/src/components/global-styles/typography-panel.js +1 -1
  703. package/src/components/global-styles/typography-preview.js +1 -1
  704. package/src/components/global-styles/ui.js +105 -46
  705. package/src/components/global-styles-renderer/index.js +1 -1
  706. package/src/components/header-edit-mode/document-actions/index.js +51 -26
  707. package/src/components/header-edit-mode/document-actions/style.scss +9 -5
  708. package/src/components/header-edit-mode/index.js +4 -4
  709. package/src/components/keyboard-shortcuts/edit-mode.js +5 -1
  710. package/src/components/keyboard-shortcuts/index.js +5 -1
  711. package/src/components/keyboard-shortcuts/register.js +1 -1
  712. package/src/components/layout/hooks.js +21 -0
  713. package/src/components/layout/index.js +92 -64
  714. package/src/components/layout/style.scss +7 -0
  715. package/src/components/list/index.js +1 -1
  716. package/src/components/page/header.js +38 -0
  717. package/src/components/page/index.js +38 -0
  718. package/src/components/page/style.scss +38 -0
  719. package/src/components/page-content-focus-manager/back-to-page-notification.js +65 -0
  720. package/src/components/{page-content-lock → page-content-focus-manager}/constants.js +1 -1
  721. package/src/components/{page-content-lock/use-disable-non-content-blocks.js → page-content-focus-manager/disable-non-page-content-blocks.js} +15 -7
  722. package/src/components/page-content-focus-manager/edit-template-notification.js +108 -0
  723. package/src/components/page-content-focus-manager/index.js +26 -0
  724. package/src/components/page-library/grid-item.js +179 -0
  725. package/src/components/page-library/grid.js +39 -0
  726. package/src/components/page-library/index.js +39 -0
  727. package/src/components/page-library/no-patterns.js +12 -0
  728. package/src/components/page-library/patterns-list.js +114 -0
  729. package/src/components/page-library/search-items.js +171 -0
  730. package/src/components/page-library/style.scss +105 -0
  731. package/src/components/page-library/use-library-settings.js +51 -0
  732. package/src/components/page-library/use-patterns.js +238 -0
  733. package/src/components/page-library/utils.js +21 -0
  734. package/src/components/page-main/index.js +27 -0
  735. package/src/components/page-templates/index.js +104 -0
  736. package/src/components/resizable-frame/index.js +3 -1
  737. package/src/components/revisions/index.js +1 -1
  738. package/src/components/routes/link.js +2 -2
  739. package/src/components/routes/use-title.js +1 -1
  740. package/src/components/save-button/index.js +14 -11
  741. package/src/components/save-hub/index.js +1 -1
  742. package/src/components/save-panel/index.js +1 -1
  743. package/src/components/secondary-sidebar/list-view-sidebar.js +53 -6
  744. package/src/components/sidebar/index.js +11 -7
  745. package/src/components/sidebar-edit-mode/global-styles-sidebar.js +42 -29
  746. package/src/components/sidebar-edit-mode/index.js +5 -5
  747. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +69 -0
  748. package/src/components/sidebar-edit-mode/page-panels/index.js +53 -53
  749. package/src/components/sidebar-edit-mode/page-panels/page-content.js +27 -0
  750. package/src/components/sidebar-edit-mode/page-panels/page-status.js +233 -0
  751. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +35 -0
  752. package/src/components/sidebar-edit-mode/page-panels/publish-date.js +94 -0
  753. package/src/components/sidebar-edit-mode/page-panels/style.scss +31 -0
  754. package/src/components/sidebar-edit-mode/settings-header/index.js +18 -9
  755. package/src/components/sidebar-edit-mode/sidebar-fixed-bottom.js +1 -1
  756. package/src/components/sidebar-edit-mode/template-panel/index.js +9 -6
  757. package/src/components/sidebar-navigation-item/index.js +6 -2
  758. package/src/components/sidebar-navigation-item/style.scss +7 -0
  759. package/src/components/sidebar-navigation-screen/index.js +19 -7
  760. package/src/components/sidebar-navigation-screen/style.scss +28 -8
  761. package/src/components/sidebar-navigation-screen-details-footer/index.js +45 -0
  762. package/src/components/sidebar-navigation-screen-details-footer/style.scss +5 -0
  763. package/src/components/sidebar-navigation-screen-details-panel/index.js +40 -0
  764. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js +14 -0
  765. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +29 -0
  766. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js +14 -0
  767. package/src/components/sidebar-navigation-screen-details-panel/style.scss +25 -0
  768. package/src/components/sidebar-navigation-screen-global-styles/index.js +9 -3
  769. package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -3
  770. package/src/components/sidebar-navigation-screen-library/category-item.js +43 -0
  771. package/src/components/sidebar-navigation-screen-library/index.js +136 -0
  772. package/src/components/sidebar-navigation-screen-library/style.scss +7 -0
  773. package/src/components/sidebar-navigation-screen-library/use-default-pattern-categories.js +32 -0
  774. package/src/components/sidebar-navigation-screen-library/use-pattern-categories.js +64 -0
  775. package/src/components/sidebar-navigation-screen-library/use-template-part-areas.js +33 -0
  776. package/src/components/sidebar-navigation-screen-library/use-theme-patterns.js +44 -0
  777. package/src/components/sidebar-navigation-screen-main/index.js +11 -14
  778. package/src/components/sidebar-navigation-screen-navigation-item/index.js +1 -1
  779. package/src/components/sidebar-navigation-screen-navigation-menu/delete-modal.js +45 -0
  780. package/src/components/sidebar-navigation-screen-navigation-menu/edit-button.js +24 -0
  781. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +50 -96
  782. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +89 -0
  783. package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +51 -0
  784. package/src/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +51 -0
  785. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +39 -0
  786. package/src/components/sidebar-navigation-screen-navigation-menu/style.scss +15 -0
  787. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +175 -0
  788. package/src/components/sidebar-navigation-screen-navigation-menus/constants.js +3 -1
  789. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +43 -7
  790. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +61 -2
  791. package/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +25 -47
  792. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +4 -0
  793. package/src/components/sidebar-navigation-screen-page/index.js +19 -58
  794. package/src/components/sidebar-navigation-screen-page/page-details.js +42 -39
  795. package/src/components/sidebar-navigation-screen-page/status-label.js +23 -19
  796. package/src/components/sidebar-navigation-screen-page/style.scss +1 -18
  797. package/src/components/sidebar-navigation-screen-pages/index.js +30 -29
  798. package/src/components/sidebar-navigation-screen-pattern/index.js +44 -0
  799. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +28 -0
  800. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js +21 -0
  801. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +30 -0
  802. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +33 -0
  803. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +71 -0
  804. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +86 -0
  805. package/src/components/sidebar-navigation-screen-template/home-template-details.js +230 -0
  806. package/src/components/sidebar-navigation-screen-template/index.js +19 -5
  807. package/src/components/sidebar-navigation-screen-template/style.scss +23 -0
  808. package/src/components/sidebar-navigation-screen-templates/index.js +18 -25
  809. package/src/components/site-hub/index.js +13 -9
  810. package/src/components/style-book/index.js +1 -1
  811. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +16 -3
  812. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  813. package/src/components/sync-state-with-url/use-sync-path-with-url.js +11 -1
  814. package/src/components/table/index.js +33 -0
  815. package/src/components/table/style.scss +37 -0
  816. package/src/components/template-part-converter/convert-to-template-part.js +4 -27
  817. package/src/components/welcome-guide/editor.js +1 -1
  818. package/src/components/welcome-guide/styles.js +5 -3
  819. package/src/hooks/commands/use-common-commands.js +167 -0
  820. package/src/hooks/commands/use-edit-mode-commands.js +61 -25
  821. package/src/hooks/index.js +1 -0
  822. package/src/hooks/navigation-menu-edit.js +95 -0
  823. package/src/hooks/push-changes-to-global-styles/index.js +1 -1
  824. package/src/hooks/template-part-edit.js +1 -1
  825. package/src/store/actions.js +40 -8
  826. package/src/store/index.js +1 -1
  827. package/src/store/reducer.js +6 -5
  828. package/src/store/selectors.js +34 -9
  829. package/src/store/test/actions.js +8 -8
  830. package/src/store/test/reducer.js +11 -11
  831. package/src/store/test/selectors.js +8 -8
  832. package/src/style.scss +12 -2
  833. package/src/utils/get-is-list-page.js +16 -4
  834. package/src/utils/is-previewing-theme.js +4 -2
  835. package/src/utils/use-activate-theme.js +3 -2
  836. package/src/utils/use-debounced-input.js +17 -0
  837. package/build/components/add-new-template/new-template-part.js +0 -113
  838. package/build/components/add-new-template/new-template-part.js.map +0 -1
  839. package/build/components/page-content-lock/constants.js +0 -9
  840. package/build/components/page-content-lock/constants.js.map +0 -1
  841. package/build/components/page-content-lock/index.js +0 -29
  842. package/build/components/page-content-lock/index.js.map +0 -1
  843. package/build/components/page-content-lock/use-disable-non-content-blocks.js +0 -49
  844. package/build/components/page-content-lock/use-disable-non-content-blocks.js.map +0 -1
  845. package/build/components/page-content-lock/use-page-content-lock-notifications.js +0 -112
  846. package/build/components/page-content-lock/use-page-content-lock-notifications.js.map +0 -1
  847. package/build/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -79
  848. package/build/components/sidebar-edit-mode/page-panels/content-blocks-list.js.map +0 -1
  849. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -52
  850. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +0 -1
  851. package/build/components/sidebar-navigation-screen-template-part/index.js +0 -105
  852. package/build/components/sidebar-navigation-screen-template-part/index.js.map +0 -1
  853. package/build/components/sidebar-navigation-subtitle/index.js +0 -17
  854. package/build/components/sidebar-navigation-subtitle/index.js.map +0 -1
  855. package/build/private-apis.js.map +0 -1
  856. package/build-module/components/add-new-template/new-template-part.js +0 -93
  857. package/build-module/components/add-new-template/new-template-part.js.map +0 -1
  858. package/build-module/components/page-content-lock/constants.js +0 -2
  859. package/build-module/components/page-content-lock/constants.js.map +0 -1
  860. package/build-module/components/page-content-lock/index.js +0 -14
  861. package/build-module/components/page-content-lock/index.js.map +0 -1
  862. package/build-module/components/page-content-lock/use-disable-non-content-blocks.js.map +0 -1
  863. package/build-module/components/page-content-lock/use-page-content-lock-notifications.js +0 -98
  864. package/build-module/components/page-content-lock/use-page-content-lock-notifications.js.map +0 -1
  865. package/build-module/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -67
  866. package/build-module/components/sidebar-edit-mode/page-panels/content-blocks-list.js.map +0 -1
  867. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -39
  868. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +0 -1
  869. package/build-module/components/sidebar-navigation-screen-template-part/index.js +0 -86
  870. package/build-module/components/sidebar-navigation-screen-template-part/index.js.map +0 -1
  871. package/build-module/components/sidebar-navigation-subtitle/index.js +0 -9
  872. package/build-module/components/sidebar-navigation-subtitle/index.js.map +0 -1
  873. package/build-module/private-apis.js.map +0 -1
  874. package/src/components/add-new-template/new-template-part.js +0 -109
  875. package/src/components/page-content-lock/index.js +0 -14
  876. package/src/components/page-content-lock/use-page-content-lock-notifications.js +0 -128
  877. package/src/components/sidebar-edit-mode/page-panels/content-blocks-list.js +0 -77
  878. package/src/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +0 -47
  879. package/src/components/sidebar-navigation-screen-template-part/index.js +0 -103
  880. package/src/components/sidebar-navigation-screen-templates/style.scss +0 -4
  881. package/src/components/sidebar-navigation-subtitle/index.js +0 -5
  882. package/src/components/sidebar-navigation-subtitle/style.scss +0 -7
  883. /package/src/{private-apis.js → lock-unlock.js} +0 -0
@@ -0,0 +1,64 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { store as coreStore } from '@wordpress/core-data';
5
+ import { useSelect } from '@wordpress/data';
6
+ import { useMemo } from '@wordpress/element';
7
+ import { __ } from '@wordpress/i18n';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import useDefaultPatternCategories from './use-default-pattern-categories';
13
+ import useThemePatterns from './use-theme-patterns';
14
+
15
+ export default function usePatternCategories() {
16
+ const defaultCategories = useDefaultPatternCategories();
17
+ const themePatterns = useThemePatterns();
18
+ const userPatterns = useSelect( ( select ) =>
19
+ select( coreStore ).getEntityRecords( 'postType', 'wp_block', {
20
+ per_page: -1,
21
+ } )
22
+ );
23
+
24
+ const patternCategories = useMemo( () => {
25
+ const categoryMap = {};
26
+ const categoriesWithCounts = [];
27
+
28
+ // Create a map for easier counting of patterns in categories.
29
+ defaultCategories.forEach( ( category ) => {
30
+ if ( ! categoryMap[ category.name ] ) {
31
+ categoryMap[ category.name ] = { ...category, count: 0 };
32
+ }
33
+ } );
34
+
35
+ // Update the category counts to reflect theme registered patterns.
36
+ themePatterns.forEach( ( pattern ) => {
37
+ pattern.categories?.forEach( ( category ) => {
38
+ if ( categoryMap[ category ] ) {
39
+ categoryMap[ category ].count += 1;
40
+ }
41
+ } );
42
+ } );
43
+
44
+ // Filter categories so we only have those containing patterns.
45
+ defaultCategories.forEach( ( category ) => {
46
+ if ( categoryMap[ category.name ].count ) {
47
+ categoriesWithCounts.push( categoryMap[ category.name ] );
48
+ }
49
+ } );
50
+
51
+ // Add "Your Patterns" category for user patterns if there are any.
52
+ if ( userPatterns?.length ) {
53
+ categoriesWithCounts.push( {
54
+ count: userPatterns.length || 0,
55
+ name: 'custom-patterns',
56
+ label: __( 'Custom patterns' ),
57
+ } );
58
+ }
59
+
60
+ return categoriesWithCounts;
61
+ }, [ defaultCategories, themePatterns, userPatterns ] );
62
+
63
+ return { patternCategories, hasPatterns: !! patternCategories.length };
64
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useEntityRecords } from '@wordpress/core-data';
5
+
6
+ const getTemplatePartAreas = ( items ) => {
7
+ const allItems = items || [];
8
+
9
+ const groupedByArea = allItems.reduce(
10
+ ( accumulator, item ) => {
11
+ const key = accumulator[ item.area ] ? item.area : 'uncategorized';
12
+ accumulator[ key ].push( item );
13
+ return accumulator;
14
+ },
15
+ { header: [], footer: [], sidebar: [], uncategorized: [] }
16
+ );
17
+
18
+ return groupedByArea;
19
+ };
20
+
21
+ export default function useTemplatePartAreas() {
22
+ const { records: templateParts, isResolving: isLoading } = useEntityRecords(
23
+ 'postType',
24
+ 'wp_template_part',
25
+ { per_page: -1 }
26
+ );
27
+
28
+ return {
29
+ hasTemplateParts: templateParts ? !! templateParts.length : false,
30
+ isLoading,
31
+ templatePartAreas: getTemplatePartAreas( templateParts ),
32
+ };
33
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { store as coreStore } from '@wordpress/core-data';
5
+ import { useSelect } from '@wordpress/data';
6
+ import { useMemo } from '@wordpress/element';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import {
12
+ CORE_PATTERN_SOURCES,
13
+ filterOutDuplicatesByName,
14
+ } from '../page-library/utils';
15
+ import { unlock } from '../../lock-unlock';
16
+ import { store as editSiteStore } from '../../store';
17
+
18
+ export default function useThemePatterns() {
19
+ const blockPatterns = useSelect( ( select ) => {
20
+ const { getSettings } = unlock( select( editSiteStore ) );
21
+
22
+ return (
23
+ getSettings().__experimentalAdditionalBlockPatterns ??
24
+ getSettings().__experimentalBlockPatterns
25
+ );
26
+ } );
27
+
28
+ const restBlockPatterns = useSelect( ( select ) =>
29
+ select( coreStore ).getBlockPatterns()
30
+ );
31
+
32
+ const patterns = useMemo(
33
+ () =>
34
+ [ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]
35
+ .filter(
36
+ ( pattern ) =>
37
+ ! CORE_PATTERN_SOURCES.includes( pattern.source )
38
+ )
39
+ .filter( filterOutDuplicatesByName ),
40
+ [ blockPatterns, restBlockPatterns ]
41
+ );
42
+
43
+ return patterns;
44
+ }
@@ -4,10 +4,11 @@
4
4
  import {
5
5
  __experimentalItemGroup as ItemGroup,
6
6
  __experimentalNavigatorButton as NavigatorButton,
7
+ __experimentalUseNavigator as useNavigator,
7
8
  } from '@wordpress/components';
8
9
  import { __ } from '@wordpress/i18n';
9
10
  import { layout, symbol, navigation, styles, page } from '@wordpress/icons';
10
- import { useDispatch, useSelect } from '@wordpress/data';
11
+ import { useDispatch } from '@wordpress/data';
11
12
 
12
13
  import { useEffect } from '@wordpress/element';
13
14
 
@@ -17,25 +18,21 @@ import { useEffect } from '@wordpress/element';
17
18
  import SidebarNavigationScreen from '../sidebar-navigation-screen';
18
19
  import SidebarNavigationItem from '../sidebar-navigation-item';
19
20
  import { SidebarNavigationItemGlobalStyles } from '../sidebar-navigation-screen-global-styles';
20
- import { unlock } from '../../private-apis';
21
+ import { unlock } from '../../lock-unlock';
21
22
  import { store as editSiteStore } from '../../store';
22
- import SidebarNavigationScreenNavigationMenuButton from '../sidebar-navigation-screen-navigation-menus/navigator-button';
23
23
 
24
24
  export default function SidebarNavigationScreenMain() {
25
- const editorCanvasContainerView = useSelect( ( select ) => {
26
- return unlock( select( editSiteStore ) ).getEditorCanvasContainerView();
27
- }, [] );
28
-
25
+ const { location } = useNavigator();
29
26
  const { setEditorCanvasContainerView } = unlock(
30
27
  useDispatch( editSiteStore )
31
28
  );
32
29
 
33
30
  // Clear the editor canvas container view when accessing the main navigation screen.
34
31
  useEffect( () => {
35
- if ( editorCanvasContainerView ) {
32
+ if ( location?.path === '/' ) {
36
33
  setEditorCanvasContainerView( undefined );
37
34
  }
38
- }, [ editorCanvasContainerView, setEditorCanvasContainerView ] );
35
+ }, [ setEditorCanvasContainerView, location?.path ] );
39
36
 
40
37
  return (
41
38
  <SidebarNavigationScreen
@@ -46,14 +43,14 @@ export default function SidebarNavigationScreenMain() {
46
43
  ) }
47
44
  content={
48
45
  <ItemGroup>
49
- <SidebarNavigationScreenNavigationMenuButton
46
+ <NavigatorButton
47
+ as={ SidebarNavigationItem }
48
+ path="/navigation"
50
49
  withChevron
51
50
  icon={ navigation }
52
- as={ SidebarNavigationItem }
53
51
  >
54
52
  { __( 'Navigation' ) }
55
- </SidebarNavigationScreenNavigationMenuButton>
56
-
53
+ </NavigatorButton>
57
54
  <SidebarNavigationItemGlobalStyles
58
55
  withChevron
59
56
  icon={ styles }
@@ -78,7 +75,7 @@ export default function SidebarNavigationScreenMain() {
78
75
  </NavigatorButton>
79
76
  <NavigatorButton
80
77
  as={ SidebarNavigationItem }
81
- path="/wp_template_part"
78
+ path="/library"
82
79
  withChevron
83
80
  icon={ symbol }
84
81
  >
@@ -15,7 +15,7 @@ import { pencil } from '@wordpress/icons';
15
15
  * Internal dependencies
16
16
  */
17
17
  import SidebarNavigationScreen from '../sidebar-navigation-screen';
18
- import { unlock } from '../../private-apis';
18
+ import { unlock } from '../../lock-unlock';
19
19
  import { store as editSiteStore } from '../../store';
20
20
  import SidebarButton from '../sidebar-button';
21
21
 
@@ -0,0 +1,45 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import {
5
+ __experimentalHStack as HStack,
6
+ __experimentalVStack as VStack,
7
+ Button,
8
+ Modal,
9
+ } from '@wordpress/components';
10
+ import { __ } from '@wordpress/i18n';
11
+
12
+ export default function RenameModal( { onClose, onConfirm } ) {
13
+ return (
14
+ <Modal title={ __( 'Delete' ) } onRequestClose={ onClose }>
15
+ <form>
16
+ <VStack spacing="3">
17
+ <p>
18
+ { __(
19
+ 'Are you sure you want to delete this Navigation menu?'
20
+ ) }
21
+ </p>
22
+ <HStack justify="right">
23
+ <Button variant="tertiary" onClick={ onClose }>
24
+ { __( 'Cancel' ) }
25
+ </Button>
26
+
27
+ <Button
28
+ variant="primary"
29
+ type="submit"
30
+ onClick={ ( e ) => {
31
+ e.preventDefault();
32
+ onConfirm();
33
+
34
+ // Immediate close avoids ability to hit delete multiple times.
35
+ onClose();
36
+ } }
37
+ >
38
+ { __( 'Delete' ) }
39
+ </Button>
40
+ </HStack>
41
+ </VStack>
42
+ </form>
43
+ </Modal>
44
+ );
45
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { useDispatch } from '@wordpress/data';
6
+ import { pencil } from '@wordpress/icons';
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import { store as editSiteStore } from '../../store';
11
+ import SidebarButton from '../sidebar-button';
12
+ import { unlock } from '../../lock-unlock';
13
+
14
+ export default function EditButton() {
15
+ const { setCanvasMode } = unlock( useDispatch( editSiteStore ) );
16
+
17
+ return (
18
+ <SidebarButton
19
+ onClick={ () => setCanvasMode( 'edit' ) }
20
+ label={ __( 'Edit' ) }
21
+ icon={ pencil }
22
+ />
23
+ );
24
+ }
@@ -1,48 +1,68 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { useEntityRecord } from '@wordpress/core-data';
4
+ import { useEntityRecord, store as coreStore } from '@wordpress/core-data';
5
5
  import {
6
6
  __experimentalUseNavigator as useNavigator,
7
7
  Spinner,
8
8
  } from '@wordpress/components';
9
9
  import { __ } from '@wordpress/i18n';
10
- import { useCallback, useMemo } from '@wordpress/element';
11
10
  import { useSelect } from '@wordpress/data';
12
- import { privateApis as routerPrivateApis } from '@wordpress/router';
13
- import { BlockEditorProvider } from '@wordpress/block-editor';
14
- import { createBlock } from '@wordpress/blocks';
15
11
  import { decodeEntities } from '@wordpress/html-entities';
16
12
 
17
13
  /**
18
14
  * Internal dependencies
19
15
  */
20
- import { unlock } from '../../private-apis';
21
- import { store as editSiteStore } from '../../store';
22
- import {
23
- isPreviewingTheme,
24
- currentlyPreviewingTheme,
25
- } from '../../utils/is-previewing-theme';
26
16
  import { SidebarNavigationScreenWrapper } from '../sidebar-navigation-screen-navigation-menus';
27
- import NavigationMenuContent from '../sidebar-navigation-screen-navigation-menus/navigation-menu-content';
17
+ import ScreenNavigationMoreMenu from './more-menu';
18
+ import SingleNavigationMenu from './single-navigation-menu';
19
+ import useNavigationMenuHandlers from './use-navigation-menu-handlers';
28
20
 
29
- const { useHistory } = unlock( routerPrivateApis );
30
- const noop = () => {};
21
+ export const postType = `wp_navigation`;
31
22
 
32
23
  export default function SidebarNavigationScreenNavigationMenu() {
33
- const postType = `wp_navigation`;
34
24
  const {
35
25
  params: { postId },
36
26
  } = useNavigator();
37
27
 
38
- const { record: navigationMenu, isResolving: isLoading } = useEntityRecord(
28
+ const { record: navigationMenu, isResolving } = useEntityRecord(
39
29
  'postType',
40
30
  postType,
41
31
  postId
42
32
  );
43
33
 
34
+ const { isSaving, isDeleting } = useSelect(
35
+ ( select ) => {
36
+ const {
37
+ isSavingEntityRecord,
38
+ isDeletingEntityRecord,
39
+ getEditedEntityRecord: getEditedEntityRecordSelector,
40
+ } = select( coreStore );
41
+
42
+ return {
43
+ isSaving: isSavingEntityRecord( 'postType', postType, postId ),
44
+ isDeleting: isDeletingEntityRecord(
45
+ 'postType',
46
+ postType,
47
+ postId
48
+ ),
49
+ getEditedEntityRecord: getEditedEntityRecordSelector,
50
+ };
51
+ },
52
+ [ postId ]
53
+ );
54
+
55
+ const isLoading = isResolving || isSaving || isDeleting;
56
+
44
57
  const menuTitle = navigationMenu?.title?.rendered || navigationMenu?.slug;
45
58
 
59
+ const { handleSave, handleDelete, handleDuplicate } =
60
+ useNavigationMenuHandlers();
61
+
62
+ const _handleDelete = () => handleDelete( navigationMenu );
63
+ const _handleSave = () => handleSave( navigationMenu );
64
+ const _handleDuplicate = () => handleDuplicate( navigationMenu );
65
+
46
66
  if ( isLoading ) {
47
67
  return (
48
68
  <SidebarNavigationScreenWrapper
@@ -66,6 +86,14 @@ export default function SidebarNavigationScreenNavigationMenu() {
66
86
  if ( ! navigationMenu?.content?.raw ) {
67
87
  return (
68
88
  <SidebarNavigationScreenWrapper
89
+ actions={
90
+ <ScreenNavigationMoreMenu
91
+ menuTitle={ decodeEntities( menuTitle ) }
92
+ onDelete={ _handleDelete }
93
+ onSave={ _handleSave }
94
+ onDuplicate={ _handleDuplicate }
95
+ />
96
+ }
69
97
  title={ decodeEntities( menuTitle ) }
70
98
  description={ __( 'This Navigation Menu is empty.' ) }
71
99
  />
@@ -73,85 +101,11 @@ export default function SidebarNavigationScreenNavigationMenu() {
73
101
  }
74
102
 
75
103
  return (
76
- <SidebarNavigationScreenWrapper
77
- title={ decodeEntities( menuTitle ) }
78
- description={ __(
79
- 'Navigation menus are a curated collection of blocks that allow visitors to get around your site.'
80
- ) }
81
- >
82
- <NavigationMenuEditor navigationMenu={ navigationMenu } />
83
- </SidebarNavigationScreenWrapper>
84
- );
85
- }
86
-
87
- function NavigationMenuEditor( { navigationMenu } ) {
88
- const history = useHistory();
89
-
90
- const onSelect = useCallback(
91
- ( selectedBlock ) => {
92
- const { attributes, name } = selectedBlock;
93
- if (
94
- attributes.kind === 'post-type' &&
95
- attributes.id &&
96
- attributes.type &&
97
- history
98
- ) {
99
- history.push( {
100
- postType: attributes.type,
101
- postId: attributes.id,
102
- ...( isPreviewingTheme() && {
103
- theme_preview: currentlyPreviewingTheme(),
104
- } ),
105
- } );
106
- }
107
- if ( name === 'core/page-list-item' && attributes.id && history ) {
108
- history.push( {
109
- postType: 'page',
110
- postId: attributes.id,
111
- ...( isPreviewingTheme() && {
112
- theme_preview: currentlyPreviewingTheme(),
113
- } ),
114
- } );
115
- }
116
- },
117
- [ history ]
118
- );
119
-
120
- const { storedSettings } = useSelect( ( select ) => {
121
- const { getSettings } = unlock( select( editSiteStore ) );
122
-
123
- return {
124
- storedSettings: getSettings( false ),
125
- };
126
- }, [] );
127
-
128
- const blocks = useMemo( () => {
129
- if ( ! NavigationMenuEditor ) {
130
- return [];
131
- }
132
-
133
- return [
134
- createBlock( 'core/navigation', { ref: navigationMenu?.id } ),
135
- ];
136
- }, [ navigationMenu ] );
137
-
138
- if ( ! navigationMenu || ! blocks?.length ) {
139
- return null;
140
- }
141
-
142
- return (
143
- <BlockEditorProvider
144
- settings={ storedSettings }
145
- value={ blocks }
146
- onChange={ noop }
147
- onInput={ noop }
148
- >
149
- <div className="edit-site-sidebar-navigation-screen-navigation-menus__content">
150
- <NavigationMenuContent
151
- rootClientId={ blocks[ 0 ].clientId }
152
- onSelect={ onSelect }
153
- />
154
- </div>
155
- </BlockEditorProvider>
104
+ <SingleNavigationMenu
105
+ navigationMenu={ navigationMenu }
106
+ handleDelete={ _handleDelete }
107
+ handleSave={ _handleSave }
108
+ handleDuplicate={ _handleDuplicate }
109
+ />
156
110
  );
157
111
  }
@@ -0,0 +1,89 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';
5
+ import { moreVertical } from '@wordpress/icons';
6
+ import { __ } from '@wordpress/i18n';
7
+ import { useState } from '@wordpress/element';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import RenameModal from './rename-modal';
13
+ import DeleteModal from './delete-modal';
14
+
15
+ const POPOVER_PROPS = {
16
+ position: 'bottom right',
17
+ };
18
+
19
+ export default function ScreenNavigationMoreMenu( props ) {
20
+ const { onDelete, onSave, onDuplicate, menuTitle } = props;
21
+
22
+ const [ renameModalOpen, setRenameModalOpen ] = useState( false );
23
+ const [ deleteModalOpen, setDeleteModalOpen ] = useState( false );
24
+
25
+ const closeModals = () => {
26
+ setRenameModalOpen( false );
27
+ setDeleteModalOpen( false );
28
+ };
29
+ const openRenameModal = () => setRenameModalOpen( true );
30
+ const openDeleteModal = () => setDeleteModalOpen( true );
31
+
32
+ return (
33
+ <>
34
+ <DropdownMenu
35
+ className="sidebar-navigation__more-menu"
36
+ icon={ moreVertical }
37
+ popoverProps={ POPOVER_PROPS }
38
+ >
39
+ { ( { onClose } ) => (
40
+ <div>
41
+ <MenuGroup>
42
+ <MenuItem
43
+ onClick={ () => {
44
+ openRenameModal();
45
+ // Close the dropdown after opening the modal.
46
+ onClose();
47
+ } }
48
+ >
49
+ { __( 'Rename' ) }
50
+ </MenuItem>
51
+ <MenuItem
52
+ onClick={ () => {
53
+ onDuplicate();
54
+ onClose();
55
+ } }
56
+ >
57
+ { __( 'Duplicate' ) }
58
+ </MenuItem>
59
+ </MenuGroup>
60
+ <MenuGroup>
61
+ <MenuItem
62
+ onClick={ () => {
63
+ openDeleteModal();
64
+
65
+ // Close the dropdown after opening the modal.
66
+ onClose();
67
+ } }
68
+ >
69
+ { __( 'Delete' ) }
70
+ </MenuItem>
71
+ </MenuGroup>
72
+ </div>
73
+ ) }
74
+ </DropdownMenu>
75
+
76
+ { deleteModalOpen && (
77
+ <DeleteModal onClose={ closeModals } onConfirm={ onDelete } />
78
+ ) }
79
+
80
+ { renameModalOpen && (
81
+ <RenameModal
82
+ onClose={ closeModals }
83
+ menuTitle={ menuTitle }
84
+ onSave={ onSave }
85
+ />
86
+ ) }
87
+ </>
88
+ );
89
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useMemo } from '@wordpress/element';
5
+ import { useSelect } from '@wordpress/data';
6
+ import { BlockEditorProvider } from '@wordpress/block-editor';
7
+ import { createBlock } from '@wordpress/blocks';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import { unlock } from '../../lock-unlock';
13
+ import { store as editSiteStore } from '../../store';
14
+ import NavigationMenuContent from '../sidebar-navigation-screen-navigation-menus/navigation-menu-content';
15
+
16
+ const noop = () => {};
17
+
18
+ export default function NavigationMenuEditor( { navigationMenuId } ) {
19
+ const { storedSettings } = useSelect( ( select ) => {
20
+ const { getSettings } = unlock( select( editSiteStore ) );
21
+
22
+ return {
23
+ storedSettings: getSettings( false ),
24
+ };
25
+ }, [] );
26
+
27
+ const blocks = useMemo( () => {
28
+ if ( ! navigationMenuId ) {
29
+ return [];
30
+ }
31
+
32
+ return [ createBlock( 'core/navigation', { ref: navigationMenuId } ) ];
33
+ }, [ navigationMenuId ] );
34
+
35
+ if ( ! navigationMenuId || ! blocks?.length ) {
36
+ return null;
37
+ }
38
+
39
+ return (
40
+ <BlockEditorProvider
41
+ settings={ storedSettings }
42
+ value={ blocks }
43
+ onChange={ noop }
44
+ onInput={ noop }
45
+ >
46
+ <div className="edit-site-sidebar-navigation-screen-navigation-menus__content">
47
+ <NavigationMenuContent rootClientId={ blocks[ 0 ].clientId } />
48
+ </div>
49
+ </BlockEditorProvider>
50
+ );
51
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import {
5
+ __experimentalHStack as HStack,
6
+ __experimentalVStack as VStack,
7
+ Button,
8
+ TextControl,
9
+ Modal,
10
+ } from '@wordpress/components';
11
+ import { __ } from '@wordpress/i18n';
12
+ import { useState } from '@wordpress/element';
13
+
14
+ export default function RenameModal( { menuTitle, onClose, onSave } ) {
15
+ const [ editedMenuTitle, setEditedMenuTitle ] = useState( menuTitle );
16
+
17
+ return (
18
+ <Modal title={ __( 'Rename' ) } onRequestClose={ onClose }>
19
+ <form className="sidebar-navigation__rename-modal-form">
20
+ <VStack spacing="3">
21
+ <TextControl
22
+ __nextHasNoMarginBottom
23
+ value={ editedMenuTitle }
24
+ placeholder={ __( 'Navigation title' ) }
25
+ onChange={ setEditedMenuTitle }
26
+ />
27
+ <HStack justify="right">
28
+ <Button variant="tertiary" onClick={ onClose }>
29
+ { __( 'Cancel' ) }
30
+ </Button>
31
+
32
+ <Button
33
+ disabled={ editedMenuTitle === menuTitle }
34
+ variant="primary"
35
+ type="submit"
36
+ onClick={ ( e ) => {
37
+ e.preventDefault();
38
+ onSave( { title: editedMenuTitle } );
39
+
40
+ // Immediate close avoids ability to hit save multiple times.
41
+ onClose();
42
+ } }
43
+ >
44
+ { __( 'Save' ) }
45
+ </Button>
46
+ </HStack>
47
+ </VStack>
48
+ </form>
49
+ </Modal>
50
+ );
51
+ }